/* CodeMirror - Minified & Bundled Generated with http://codemirror.net/doc/compress.html Version: 5.34.0 CodeMirror Library: - codemirror.js Modes: - css.js - htmlembedded.js - htmlmixed.js - javascript.js - xml.js - php.js - clike.js - sql.js Add-ons: - dialog.js - search.js - searchcursor.js - searchcursor.js - autorefresh.js */ (function(q,I){"object"===typeof exports&&"undefined"!==typeof module?module.exports=I():"function"===typeof define&&define.amd?define(I):q.CodeMirror=I()})(this,function(){function q(a){return new RegExp("(^|\\s)"+a+"(?:$|\\s)\\s*")}function I(a){for(var b=a.childNodes.length;0h||h>=b)return e+(b-d); e+=h-d;e+=c-e%c;d=h+1}}function H(a,b){for(var c=0;c=b)return d+Math.min(l,b-e);e+=h-d;e+=c-e%c;d=h+1;if(e>=b)return d}}function F(a){for(;Yc.length<=a;)Yc.push(g(Yc)+" ");return Yc[a]}function g(a){return a[a.length-1]}function x(a,b){for(var c=[],d=0;dc?0c?-1:1;;){if(b==c)return b;var e=(b+c)/2;e=0>d?Math.ceil(e):Math.floor(e);if(e==b)return a(e)?b:c;a(e)?c=e:b=e+d}}function za(a,b,c){this.input=c;this.scrollbarFiller=t("div",null,"CodeMirror-scrollbar-filler");this.scrollbarFiller.setAttribute("cm-not-content","true");this.gutterFiller=t("div",null,"CodeMirror-gutter-filler");this.gutterFiller.setAttribute("cm-not-content","true");this.lineDiv=w("div",null,"CodeMirror-code");this.selectionDiv=t("div",null, null,"position: relative; z-index: 1");this.cursorDiv=t("div",null,"CodeMirror-cursors");this.measure=t("div",null,"CodeMirror-measure");this.lineMeasure=t("div",null,"CodeMirror-measure");this.lineSpace=w("div",[this.measure,this.lineMeasure,this.selectionDiv,this.cursorDiv,this.lineDiv],null,"position: relative; outline: none");var d=w("div",[this.lineSpace],"CodeMirror-lines");this.mover=t("div",[d],null,"position: relative");this.sizer=t("div",[this.mover],"CodeMirror-sizer");this.sizerWidth= null;this.heightForcer=t("div",null,null,"position: absolute; height: 30px; width: 1px;");this.gutters=t("div",null,"CodeMirror-gutters");this.lineGutter=null;this.scroller=t("div",[this.sizer,this.heightForcer,this.gutters],"CodeMirror-scroll");this.scroller.setAttribute("tabIndex","-1");this.wrapper=t("div",[this.scrollbarFiller,this.gutterFiller,this.scroller],"CodeMirror");R&&8>fa&&(this.gutters.style.zIndex=-1,this.scroller.style.paddingRight=0);va||hb&&gc||(this.scroller.draggable=!0);a&&(a.appendChild? a.appendChild(this.wrapper):a(this.wrapper));this.reportedViewFrom=this.reportedViewTo=this.viewFrom=this.viewTo=b.first;this.view=[];this.externalMeasured=this.renderedView=null;this.lastWrapHeight=this.lastWrapWidth=this.viewOffset=0;this.updateLineNumbers=null;this.nativeBarWidth=this.barHeight=this.barWidth=0;this.scrollbarsClipped=!1;this.lineNumWidth=this.lineNumInnerWidth=this.lineNumChars=null;this.alignWidgets=!1;this.maxLine=this.cachedCharWidth=this.cachedTextHeight=this.cachedPaddingH= null;this.maxLineLength=0;this.maxLineChanged=!1;this.wheelDX=this.wheelDY=this.wheelStartX=this.wheelStartY=null;this.shift=!1;this.activeTouch=this.selForContextMenu=null;c.init(this)}function A(a,b){b-=a.first;if(0>b||b>=a.size)throw Error("There is no line "+(b+a.first)+" in the document.");for(var c=a;!c.lines;)for(var d=0;;++d){var e=c.children[d],h=e.chunkSize();if(b=a.first&&bK(a,b)?b:a}function Va(a,b){return 0>K(a,b)?a:b}function M(a,b){if(b.linec)return z(c,A(a,c).text.length);c=A(a,b.line).text.length;var d=b.ch;c=null==d||d>c?z(b.line,c):0>d?z(b.line,0):b;return c}function cb(a,b){for(var c=[],d=0;d=e:G.to>e);(n||(n=[])).push(new Kb(m,G.from,f?null:G.to))}}c= n;var ba;if(d)for(n=0;n=h:r.to>h)||r.from==h&&"bookmark"==G.type&&(!l||r.marker.insertLeft))m=null==r.from||(G.inclusiveLeft?r.from<=h:r.fromK(l.to,e.from)||0r||!c.inclusiveLeft&&!r)&&n.push({from:l.from,to:e.from});(0E(h,d.marker)))var h=d.marker;return h}function N(a,b,c,d,e){a=A(a,b);if(a=ib&&a.markedSpans)for(b=0;b=r||0>=n&&0<=r)&&(0>=n&&(h.marker.inclusiveRight&&e.inclusiveLeft?0<= K(l.to,c):0=K(l.from,d):0>K(l.from,d))))return!0}}}function Da(a){for(var b;b=Wa(a,!0);)a=b.find(-1,!0).line;return a}function Aa(a,b){var c=A(a,b),d=Da(c);return c==d?b:T(d)}function Zc(a,b){if(b>a.lastLine())return b;var c=A(a,b),d;if(!Ea(a,c))return b;for(;d=Wa(c,!1);)c=d.find(1,!0).line;return T(c)+1}function Ea(a,b){var c=ib&&b.markedSpans;if(c)for(var d,e=0;eb.maxLineLength&&(b.maxLineLength=d,b.maxLine=a)})}function Ed(a,b,c,d){if(!a)return d(b,c,"ltr",0);for(var e=!1,h=0;hb||b==c&&l.to==b)d(Math.max(l.from,b),Math.min(l.to,c),1==l.level?"rtl":"ltr",h),e=!0}e||d(b,c,"ltr")}function Xa(a,b,c){var d;lc=null;for(var e=0;eb)return e;h.to==b&&(h.from!=h.to&&"before"==c?d=e:lc=e);h.from==b&&(h.from!=h.to&&"before"!=c?d=e:lc=e)}return null!= d?d:lc}function Na(a,b){var c=a.order;null==c&&(c=a.order=og(a.text,b));return c}function ja(a,b,c){if(a.removeEventListener)a.removeEventListener(b,c,!1);else if(a.detachEvent)a.detachEvent("on"+b,c);else{var d=(a=a._handlers)&&a[b];d&&(c=H(d,c),-1=b.offsetWidth&&2fa))}a= Fd?t("span","\u200b"):t("span","\u00a0",null,"display: inline-block; width: 1px; margin-right: -1px");a.setAttribute("cm-text","");return a}function Gd(a,b){2a&&e.splice(r,1,a,e[r+1],c);r+=2;m=Math.min(a,c)}if(b)if(n.opaque)e.splice(d,r-d,a,"overlay "+b),r=d+2;else for(;da.options.maxHighlightLength&&db(a.doc.mode,d.state),h=oc(a,b,d);e&&(d.state=e);b.stateAfter=d.save(!e);b.styles=h.styles;h.classes?b.styleClasses=h.classes:b.styleClasses&&(b.styleClasses=null);c===a.doc.highlightFrontier&&(a.doc.modeFrontier=Math.max(a.doc.modeFrontier,++a.doc.highlightFrontier))}return b.styles}function Ja(a,b,c){var d=a.doc,e=a.display;if(!d.mode.startState)return new Ya(d,!0,b);var h=Rb(a,b,c),l=h>d.first&&A(d,h-1).stateAfter,n=l?Ya.fromSaved(d,l,h):new Ya(d, eb(d.mode),h);d.iter(h,b,function(d){ha(a,d.text,n);var c=n.line;d.stateAfter=c==b-1||0==c%5||c>=e.viewFrom&&ce;e++){d&&(d[0]=Qb(a,c).mode);var h=a.token(b,c);if(b.pos>b.start)return h}throw Error("Mode "+a.name+" failed to advance stream.");}function pc(a,b,c,d){var e=a.doc,h=e.mode;b=M(e,b);var l=A(e,b.line);c=Ja(a,b.line,c);a=new la(l.text,a.options.tabSize,c);var n;for(d&&(n=[]);(d||a.posa.options.maxHighlightLength){n=!1;l&&ha(a,b,d,m.pos);m.pos=b.length;var k=null}else k=dd(Tb(c,m,d.state, f),h);if(f){var g=f[0].name;g&&(k="m-"+(k?g+" "+k:g))}if(!n||G!=k){for(;rl;--b){if(b<=h.first)return h.first;var n=A(h,b-1),r=n.stateAfter;if(r&&(!c||b+(r instanceof ed?r.lookAhead:0)<=h.modeFrontier))return b;n=k(n.text,null,a.options.tabSize);if(null==e||d>n)e=b-1,d=n}return e}function Id(a,b){a.modeFrontier= Math.min(a.modeFrontier,b);if(!(a.highlightFrontierc;d--){var e=A(a,d).stateAfter;if(e&&(!(e instanceof ed)||d+e.lookAheadn.right-r.right:!1}l&&(h=Na(e,a.doc.direction))&&(c.addToken=rg(c.addToken,h));c.map=[];var G=b!=a.display.externalMeasured&&T(e);a:{var m=n= r=l=void 0,f=void 0,k=void 0,g=void 0;h=c;G=ub(a,e,G);var p=e.markedSpans,x=e.text,q=0;if(p)for(var S=x.length,N=0,F=1,y="",v=0;;){if(v==N){f=m=n=r=k="";l=null;v=Infinity;for(var Q=[],t=void 0,z=0;zN||Y.collapsed&&A.to==N&&A.from==N)?(null!=A.to&&A.to!=N&&v>A.to&&(v=A.to,m=""),Y.className&&(f+=" "+Y.className),Y.css&&(k=(k?k+";":"")+Y.css),Y.startStyle&&A.from==N&&(n+=" "+Y.startStyle), Y.endStyle&&A.to==v&&(t||(t=[])).push(Y.endStyle,A.to),Y.title&&!r&&(r=Y.title),Y.collapsed&&(!l||0>E(l.marker,Y))&&(l=A)):A.from>N&&v>A.from&&(v=A.from)}if(t)for(z=0;z=S)break;for(Q=Math.min(S,v);;){if(y){t=N+y.length;l||(z=t>Q?y.slice(0,Q-N):y,h.addToken(h,z,g?g+f:f,n,N+z.length==v?m:"", r,k));if(t>=Q){y=y.slice(Q-N);N=Q;break}N=t;n=""}y=x.slice(q,q=G[F++]);g=B(G[F++],h.cm.options)}}else for(l=1;lfa?n.appendChild(t("span",[u])):n.appendChild(u);a.map.push(a.pos, a.pos+g,u);a.col+=g;a.pos+=g}if(!k)break;f+=g+1;"\t"==k[0]?(k=a.cm.options.tabSize,k-=a.col%k,g=n.appendChild(t("span",F(k),"cm-tab")),g.setAttribute("role","presentation"),g.setAttribute("cm-text","\t"),a.col+=k):("\r"==k[0]||"\n"==k[0]?(g=n.appendChild(t("span","\r"==k[0]?"\u240d":"\u2424","cm-invalidchar")),g.setAttribute("cm-text",k[0])):(g=a.cm.options.specialCharPlaceholder(k[0]),g.setAttribute("cm-text",k[0]),R&&9>fa?n.appendChild(t("span",[g])):n.appendChild(g)),a.col+=1);a.map.push(a.pos, a.pos+1,g);a.pos++}}else a.col+=b.length,n=document.createTextNode(r),a.map.push(a.pos,a.pos+b.length,n),R&&9>fa&&(m=!0),a.pos+=b.length;a.trailingSpace=32==r.charCodeAt(b.length-1);if(c||d||e||m||l)return b=c||"",d&&(b+=d),e&&(b+=e),d=t("span",[n],b,l),h&&(d.title=h),a.content.appendChild(d);a.content.appendChild(n)}}function rg(a,b){return function(c,d,e,h,l,n,r){e=e?e+" cm-force-border":"cm-force-border";for(var G=c.pos,m=G+d.length;;){for(var f=void 0,k=0;kG&&f.from<= G);k++);if(f.to>=m)return a(c,d,e,h,l,n,r);a(c,d.slice(0,f.to-G),e,h,null,n,r);h=null;d=d.slice(f.to-G);G=f.to}}}function ye(a,b,c,d){var e=!d&&c.widgetNode;e&&a.map.push(a.pos,a.pos+b,e);!d&&a.cm.display.input.needsContentAttribute&&(e||(e=a.content.appendChild(document.createElement("span"))),e.setAttribute("cm-marker",c.id));e&&(a.cm.display.input.setUneditable(e),a.content.appendChild(e));a.pos+=b;a.trailingSpace=!1}function ze(a,b,c){for(var d=this.line=b,e;d=Wa(d,!1);)d=d.find(1,!0).line,(e|| (e=[])).push(d);this.size=(this.rest=e)?T(g(this.rest))-c+1:1;this.node=this.text=null;this.hidden=Ea(a,b)}function gd(a,b,c){var d=[],e;for(e=b;efa&&(a.node.style.zIndex=2));return a.node}function Be(a,b){var c=a.display.externalMeasured;return c&&c.line==b.line?(a.display.externalMeasured=null,b.measure=c.measure,c.built):fd(a,b)}function Kd(a,b){var c=b.bgClass?b.bgClass+" "+(b.line.bgClass||""):b.line.bgClass;c&&(c+=" CodeMirror-linebackground");if(b.background)c?b.background.className= c:(b.background.parentNode.removeChild(b.background),b.background=null);else if(c){var d=sc(b);b.background=d.insertBefore(t("div",null,c),d.firstChild);a.display.input.setUneditable(b.background)}b.line.wrapClass?sc(b).className=b.line.wrapClass:b.node!=b.text&&(b.node.className="");b.text.className=(b.textClass?b.textClass+" "+(b.line.textClass||""):b.line.textClass)||""}function Ce(a,b,c,d){b.gutter&&(b.node.removeChild(b.gutter),b.gutter=null);b.gutterBackground&&(b.node.removeChild(b.gutterBackground), b.gutterBackground=null);if(b.line.gutterClass){var e=sc(b);b.gutterBackground=t("div",null,"CodeMirror-gutter-background "+b.line.gutterClass,"left: "+(a.options.fixedGutter?d.fixedPos:-d.gutterTotalWidth)+"px; width: "+d.gutterTotalWidth+"px");a.display.input.setUneditable(b.gutterBackground);e.insertBefore(b.gutterBackground,b.text)}e=b.line.gutterMarkers;if(a.options.lineNumbers||e){var h=sc(b),l=b.gutter=t("div",null,"CodeMirror-gutter-wrapper","left: "+(a.options.fixedGutter?d.fixedPos:-d.gutterTotalWidth)+ "px");a.display.input.setUneditable(l);h.insertBefore(l,b.text);b.line.gutterClass&&(l.className+=" "+b.line.gutterClass);!a.options.lineNumbers||e&&e["CodeMirror-linenumbers"]||(b.lineNumber=l.appendChild(t("div",hc(a.options,c),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+d.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+a.display.lineNumInnerWidth+"px")));if(e)for(b=0;bc)return{map:a.measure.maps[b],cache:a.measure.caches[b],before:!0}}function Nd(a,b){if(b>=a.display.viewFrom&&b=c.lineN&&bg;g++){for(;n&&ea(b.line.text.charAt(l.coverStart+n));)--n;for(;l.coverStart+ rfa&&0==n&&r==l.coverEnd-l.coverStart)var u=d.parentNode.getBoundingClientRect();else{u=qc(d,n,r).getClientRects();r=Ie;if("left"==f)for(m=0;mfa&&((g=!window.screen||null==screen.logicalXDPI||screen.logicalXDPI==screen.deviceXDPI)||(null!=Pd?g=Pd:(f=C(a.display.measure,t("span","x")), g=f.getBoundingClientRect(),f=qc(f,0,1).getBoundingClientRect(),g=Pd=1fa)||n||u&&(u.left||u.right)||(u=(u=d.parentNode.getClientRects()[0])?{left:u.left,right:u.left+uc(a.display), top:u.top,bottom:u.bottom}:Ie);d=u.top-b.rect.top;n=u.bottom-b.rect.top;g=(d+n)/2;f=b.view.measure.heights;for(l=0;lb)h=r-n,e=h-1,b>=r&&(l="right");if(null!=e){d=a[m+2];n==r&&c==(d.insertLeft?"left":"right")&&(l=c);if("left"==c&&0==e)for(;m&&a[m-2]==a[m-3]&&a[m-1].insertLeft;)d=a[(m-=3)+2],l="left";if("right"==c&&e==r-n)for(;m=d.text.length?(m=d.text.length,b="before"):0>=m&&(m=0,b="after");if(!r)return l("before"==b?m-1:m,"before"==b);var f=Xa(r,m,b),k=lc;f=n(m,f,"before"== b);null!=k&&(f.other=n(m,k,"before"!=b));return f}function Oe(a,b){var c=0;b=M(a.doc,b);a.options.lineWrapping||(c=uc(a.display)*b.ch);var d=A(a.doc,b.line),e=Ia(d)+a.display.lineSpace.offsetTop;return{left:c,right:c,top:e,bottom:e+d.height}}function Sd(a,b,c,d,e){a=z(a,b,c);a.xRel=e;d&&(a.outside=!0);return a}function Td(a,b,c){var d=a.doc;c+=a.display.viewOffset;if(0>c)return Sd(d.first,0,null,!0,-1);var e=bb(d,c),h=d.first+d.size-1;if(e>h)return Sd(d.first+d.size-1,A(d,h).text.length,null,!0,1); 0>b&&(b=0);for(d=A(d,e);;)if(e=vg(a,d,e,b,c),h=(d=Wa(d,!1))&&d.find(0,!0),d&&(e.ch>h.from.ch||e.ch==h.from.ch&&0d},e,b);return{begin:e,end:b}}function Qe(a,b,c,d){c||(c=xb(a,b));d=jd(a,b,Ra(a,c,d),"line").top;return Pe(a,b,c,d)}function Ud(a,b,c,d){return a.bottom<=c?!1:a.top>c?!0:(d?a.left:a.right)>b}function vg(a,b,c, d,e){e-=Ia(b);var h=xb(a,b),l=Qd(b),n=0,r=b.text.length,m=!0,f=Na(b,a.doc.direction);f&&(f=(a.options.lineWrapping?wg:xg)(a,b,c,h,f,d,e),n=(m=1!=f.level)?f.from:f.to-1,r=m?f.to:f.from-1);var k=null,g=null;f=ma(function(b){var c=Ra(a,h,b);c.top+=l;c.bottom+=l;if(!Ud(c,d,e,!1))return!1;c.top<=e&&c.left<=d&&(k=b,g=c);return!0},n,r);var u=!1;g?(n=d-g.left=u.bottom);f=ab(b.text,f,1);return Sd(c,f,m,u,d-n)}function xg(a,b,c,d,e,h,l){var n=ma(function(n){n=e[n];var r=1!=n.level;return Ud(Sa(a,z(c,r?n.to:n.from,r?"before":"after"),"line",b,d),h,l,!0)},0,e.length-1),r=e[n];if(0l&&(r=e[n-1])}return r}function wg(a,b,c,d,e,h,l){l=Pe(a,b,d,l);c=l.begin;l=l.end;/\s/.test(b.text.charAt(l- 1))&&l--;for(var n=b=null,r=0;r=l||m.to<=c)){var f=Ra(a,d,1!=m.level?Math.min(l,m.to)-1:Math.max(c,m.from)).right;f=ff)b=m,n=f}}b||(b=e[e.length-1]);b.froml&&(b={from:b.from,to:l,level:b.level});return b}function yb(a){if(null!=a.cachedTextHeight)return a.cachedTextHeight;if(null==zb){zb=t("pre");for(var b=0;49>b;++b)zb.appendChild(document.createTextNode("x")),zb.appendChild(t("br"));zb.appendChild(document.createTextNode("x"))}C(a.measure, zb);b=zb.offsetHeight/50;3=a.display.viewTo)return null;b-=a.display.viewFrom;if(0>b)return null;for(var c=a.display.view,d=0;db)return d}function wc(a){a.display.input.showSelection(a.display.input.prepareSelection())}function Se(a,b){void 0===b&&(b=!0);for(var c=a.doc,d={},e=d.cursors=document.createDocumentFragment(),h=d.selection=document.createDocumentFragment(),l=0;l=a.display.viewTo||n.to().lineb&&(b=0);b=Math.round(b);c=Math.round(c);n.appendChild(t("div",null,"CodeMirror-selected","position: absolute; left: "+a+"px;\n top: "+b+"px; width: "+(null==d?f-a:d)+"px;\n height: "+(c-b)+"px"))}function e(b,c,e){function h(d, c){return Rd(a,z(b,d),"div",r,c)}function n(b,d,c){b=Qe(a,r,null,b);d="ltr"==d==("after"==c)?"left":"right";c="after"==c?b.begin:b.end-(/\s/.test(r.text.charAt(b.end-1))?2:1);return h(c,d)[d]}var r=A(l,b),g=r.text.length,G,u,p=Na(r,l.direction);Ed(p,c||0,null==e?g:e,function(a,b,l,r){var ba="ltr"==l,E=h(a,ba?"left":"right"),x=h(b-1,ba?"right":"left"),N=null==c&&0==a,q=null==e&&b==g,Dd=0==r;r=!p||r==p.length-1;3>=x.top-E.top?(b=(k?N:q)&&Dd?m:(ba?E:x).left,d(b,E.top,((k?q:N)&&r?f:(ba?x:E).right)-b, E.bottom)):(ba?(ba=k&&N&&Dd?m:E.left,N=k?f:n(a,l,"before"),a=k?m:n(b,l,"after"),q=k&&q&&r?f:x.right):(ba=k?n(a,l,"before"):m,N=!k&&N&&Dd?f:E.right,a=!k&&q&&r?m:x.left,q=k?n(b,l,"after"):f),d(ba,E.top,N-ba,E.bottom),E.bottomkd(E,G))G=E;0>kd(x,G)&&(G=x);if(!u||0>kd(E,u))u=E;0>kd(x,u)&&(u=x)});return{start:G,end:u}}var h=a.display,l=a.doc,n=document.createDocumentFragment(),r=Fe(a.display),m=r.left,f=Math.max(h.sizerWidth,vb(a)-h.sizer.offsetLeft)- r.right,k="ltr"==l.direction;h=b.from();b=b.to();if(h.line==b.line)e(h.line,h.ch,b.ch);else{var g=A(l,h.line);r=A(l,b.line);r=Da(g)==Da(r);h=e(h.line,h.ch,r?g.text.length+1:null).end;b=e(b.line,r?0:null,b.ch).start;r&&(h.topa.options.cursorBlinkRate&&(b.cursorDiv.style.visibility="hidden")}}function Ue(a){a.state.focused||(a.display.input.focus(),Yd(a))}function Ve(a){a.state.delayingBlurEvent=!0;setTimeout(function(){a.state.delayingBlurEvent&&(a.state.delayingBlurEvent=!1,xc(a))},100)}function Yd(a,b){a.state.delayingBlurEvent&&(a.state.delayingBlurEvent=!1);"nocursor"!= a.options.readOnly&&(a.state.focused||(ca(a,"focus",a,b),a.state.focused=!0,J(a.display.wrapper,"CodeMirror-focused"),a.curOp||a.display.selForContextMenu==a.doc.sel||(a.display.input.reset(),va&&setTimeout(function(){return a.display.input.reset(!0)},20)),a.display.input.receivedFocus()),Xd(a))}function xc(a,b){a.state.delayingBlurEvent||(a.state.focused&&(ca(a,"blur",a,b),a.state.focused=!1,Bb(a.display.wrapper,"CodeMirror-focused")),clearInterval(a.display.blinker),setTimeout(function(){a.state.focused|| (a.display.shift=!1)},150))}function ld(a){a=a.display;for(var b=a.lineDiv.offsetTop,c=0;cfa){var e=d.node.offsetTop+d.node.offsetHeight;var h=e-b;b=e}else h=d.node.getBoundingClientRect(),h=h.bottom-h.top;e=d.line.height-h;2>h&&(h=yb(a));if(.005e)if(Y(d.line,h),We(d.line),d.rest)for(h=0;h=e&&(d=bb(b,Ia(A(b,c))-a.wrapper.clientHeight),e=c)}return{from:d,to:Math.max(e,d+1)}}function Xe(a){var b=a.display,c=b.view;if(b.alignWidgets||b.gutters.firstChild&& a.options.fixedGutter){for(var d=Vd(b)-b.scroller.scrollLeft+a.doc.scrollLeft,e=b.gutters.offsetWidth,h=d+"px",l=0;lb.top&&(b.top=0);var e=a.curOp&&null!= a.curOp.scrollTop?a.curOp.scrollTop:c.scroller.scrollTop,h=Md(a),l={};b.bottom-b.top>h&&(b.bottom=b.top+h);var n=a.doc.height+Ld(c),r=b.topn-d;b.tope+h&&(h=Math.min(b.top,(d?n:b.bottom)-h),h!=e&&(l.scrollTop=h));e=a.curOp&&null!=a.curOp.scrollLeft?a.curOp.scrollLeft:c.scroller.scrollLeft;c=vb(a)-(a.options.fixedGutter?c.gutters.offsetWidth:0);if(h=b.right-b.left>c)b.right=b.left+c;10>b.left?l.scrollLeft=0:b.leftc+e-3&&(l.scrollLeft=b.right+(h?0:10)-c);return l}function md(a,b){null!=b&&(nd(a),a.curOp.scrollTop=(null==a.curOp.scrollTop?a.doc.scrollTop:a.curOp.scrollTop)+b)}function Vb(a){nd(a);var b=a.getCursor();a.curOp.scrollToPos={from:b,to:b,margin:a.options.cursorScrollMargin}}function yc(a,b,c){null==b&&null==c||nd(a);null!=b&&(a.curOp.scrollLeft=b);null!=c&&(a.curOp.scrollTop=c)}function nd(a){var b=a.curOp.scrollToPos;if(b){a.curOp.scrollToPos=null;var c=Oe(a,b.from),d=Oe(a,b.to);Ze(a, c,d,b.margin)}}function Ze(a,b,c,d){b=ae(a,{left:Math.min(b.left,c.left),top:Math.min(b.top,c.top)-d,right:Math.max(b.right,c.right),bottom:Math.max(b.bottom,c.bottom)+d});yc(a,b.scrollLeft,b.scrollTop)}function zc(a,b){2>Math.abs(a.doc.scrollTop-b)||(hb||be(a,{top:b}),$e(a,b,!0),hb&&be(a),Ac(a,100))}function $e(a,b,c){b=Math.min(a.display.scroller.scrollHeight-a.display.scroller.clientHeight,b);if(a.display.scroller.scrollTop!=b||c)a.doc.scrollTop=b,a.display.scrollbars.setScrollTop(b),a.display.scroller.scrollTop!= b&&(a.display.scroller.scrollTop=b)}function Cb(a,b,c,d){b=Math.min(b,a.display.scroller.scrollWidth-a.display.scroller.clientWidth);(c?b==a.doc.scrollLeft:2>Math.abs(a.doc.scrollLeft-b))&&!d||(a.doc.scrollLeft=b,Xe(a),a.display.scroller.scrollLeft!=b&&(a.display.scroller.scrollLeft=b),a.display.scrollbars.setScrollLeft(b))}function Bc(a){var b=a.display,c=b.gutters.offsetWidth,d=Math.round(a.doc.height+Ld(a.display));return{clientHeight:b.scroller.clientHeight,viewHeight:b.wrapper.clientHeight,scrollWidth:b.scroller.scrollWidth, clientWidth:b.scroller.clientWidth,viewWidth:b.wrapper.clientWidth,barLeft:a.options.fixedGutter?c:0,docHeight:d,scrollHeight:d+Za(a)+b.barHeight,nativeBarWidth:b.nativeBarWidth,gutterWidth:c}}function Wb(a,b){b||(b=Bc(a));var c=a.display.barWidth,d=a.display.barHeight;af(a,b);for(var e=0;4>e&&c!=a.display.barWidth||d!=a.display.barHeight;e++)c!=a.display.barWidth&&a.options.lineWrapping&&ld(a),af(a,Bc(a)),c=a.display.barWidth,d=a.display.barHeight}function af(a,b){var c=a.display,d=c.scrollbars.update(b); c.sizer.style.paddingRight=(c.barWidth=d.right)+"px";c.sizer.style.paddingBottom=(c.barHeight=d.bottom)+"px";c.heightForcer.style.borderBottom=d.bottom+"px solid transparent";d.right&&d.bottom?(c.scrollbarFiller.style.display="block",c.scrollbarFiller.style.height=d.bottom+"px",c.scrollbarFiller.style.width=d.right+"px"):c.scrollbarFiller.style.display="";d.bottom&&a.options.coverGutterNextToScrollbar&&a.options.fixedGutter?(c.gutterFiller.style.display="block",c.gutterFiller.style.height=d.bottom+ "px",c.gutterFiller.style.width=b.gutterWidth+"px"):c.gutterFiller.style.display=""}function bf(a){a.display.scrollbars&&(a.display.scrollbars.clear(),a.display.scrollbars.addClass&&Bb(a.display.wrapper,a.display.scrollbars.addClass));a.display.scrollbars=new cf[a.options.scrollbarStyle](function(b){a.display.wrapper.insertBefore(b,a.display.scrollbarFiller);L(b,"mousedown",function(){a.state.focused&&setTimeout(function(){return a.display.input.focus()},0)});b.setAttribute("cm-not-content","true")}, function(b,c){"horizontal"==c?Cb(a,b):zc(a,b)},a);a.display.scrollbars.addClass&&J(a.display.wrapper,a.display.scrollbars.addClass)}function Db(a){a.curOp={cm:a,viewChanged:!1,startHeight:a.doc.height,forceUpdate:!1,updateInput:null,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++zg};a=a.curOp;Ub?Ub.ops.push(a):a.ownsGroup=Ub={ops:[a],delayedCallbacks:[]}}function Eb(a){sg(a.curOp, function(a){for(var b=0;b=h.viewTo)||h.maxLineChanged&&e.options.lineWrapping;d.update=d.mustUpdate&&new od(e,d.mustUpdate&&{top:d.scrollTop,ensure:d.scrollToPos},d.forceUpdate)}for(b=0;bk;k++){var g=!1;n=Sa(e,r);var u=m&&m!=r?Sa(e,m):n;n={left:Math.min(n.left, u.left),top:Math.min(n.top,u.top)-f,right:Math.max(n.left,u.left),bottom:Math.max(n.bottom,u.bottom)+f};u=ae(e,n);var p=e.doc.scrollTop,E=e.doc.scrollLeft;null!=u.scrollTop&&(zc(e,u.scrollTop),1m.top+k.top?r=!0:m.bottom+k.top>(window.innerHeight||document.documentElement.clientHeight)&& (r=!1),null==r||Ag||(m=t("div","\u200b",null,"position: absolute;\n top: "+(m.top-f.viewOffset-e.display.lineSpace.offsetTop)+"px;\n height: "+(m.bottom-m.top+Za(e)+f.barHeight)+"px;\n left: "+m.left+"px; width: "+Math.max(2,m.right-m.left)+"px;"),e.display.lineSpace.appendChild(m),m.scrollIntoView(r),e.display.lineSpace.removeChild(m)))}m=d.maybeHiddenMarkers;r=d.maybeUnhiddenMarkers;if(m)for(f=0;fb)&&(e.updateLineNumbers=b);a.curOp.viewChanged=!0;if(b>=e.viewTo)ib&&Aa(a.doc,b)e.viewFrom?lb(a):(e.viewFrom+=d,e.viewTo+=d);else if(b<=e.viewFrom&&c>=e.viewTo)lb(a);else if(b<=e.viewFrom){var h=pd(a,c,c+d,1);h?(e.view=e.view.slice(h.index),e.viewFrom=h.lineN,e.viewTo+=d):lb(a)}else if(c>=e.viewTo)(h=pd(a,b,b,-1))?(e.view=e.view.slice(0,h.index),e.viewTo=h.lineN):lb(a);else{h=pd(a,b,b,-1);var l=pd(a,c,c+d,1);h&&l?(e.view=e.view.slice(0,h.index).concat(gd(a,h.lineN,l.lineN)).concat(e.view.slice(l.index)),e.viewTo+=d):lb(a)}if(a=e.externalMeasured)c=e.lineN&&b=d.viewTo||(a=d.view[wb(a,b)],null!=a.node&&(a=a.changes||(a.changes=[]),-1==H(a,c)&&a.push(c)))}function lb(a){a.display.viewFrom=a.display.viewTo=a.doc.first;a.display.view=[];a.display.viewOffset=0}function pd(a,b,c,d){var e=wb(a,b),h=a.display.view;if(!ib||c==a.doc.first+a.doc.size)return{index:e, lineN:c};for(var l=a.display.viewFrom,n=0;nd?0:h.length-1))return null;c+=d*h[e-(0>d?1:0)].size;e+=d}return{index:e,lineN:c}}function ef(a){a=a.display.view;for(var b=0,c=0;c= a.display.viewTo)){var c=+new Date+a.options.workTime,d=Ja(a,b.highlightFrontier),e=[];b.iter(d.line,Math.min(b.first+b.size,a.display.viewTo+500),function(h){if(d.line>=a.display.viewFrom){var l=h.styles,n=h.text.length>a.options.maxHighlightLength?db(b.mode,d.state):null,r=oc(a,h,d,!0);n&&(d.state=n);h.styles=r.styles;n=h.styleClasses;(r=r.classes)?h.styleClasses=r:n&&(h.styleClasses=null);r=!l||l.length!=h.styles.length||n!=r&&(!n||!r||n.bgClass!=r.bgClass||n.textClass!=r.textClass);for(n=0;!r&& nc)return Ac(a,a.options.workDelay),!0});b.highlightFrontier=d.line;b.modeFrontier=Math.max(b.modeFrontier,d.line);e.length&&Ga(a,function(){for(var b=0;b=c.viewFrom&& b.visible.to<=c.viewTo&&(null==c.updateLineNumbers||c.updateLineNumbers>=c.viewTo)&&c.renderedView==c.view&&0==ef(a))return!1;Ye(a)&&(lb(a),b.dims=Od(a));var e=d.first+d.size,h=Math.max(b.visible.from-a.options.viewportMargin,d.first),l=Math.min(e,b.visible.to+a.options.viewportMargin);c.viewFromh-c.viewFrom&&(h=Math.max(d.first,c.viewFrom));c.viewTo>l&&20>c.viewTo-l&&(l=Math.min(e,c.viewTo));ib&&(h=Aa(a.doc,h),l=Zc(a.doc,l));d=h!=c.viewFrom||l!=c.viewTo||c.lastWrapHeight!=b.wrapperHeight|| c.lastWrapWidth!=b.wrapperWidth;e=a.display;0==e.view.length||h>=e.viewTo||l<=e.viewFrom?(e.view=gd(a,h,l),e.viewFrom=h):(e.viewFrom>h?e.view=gd(a,h,e.viewFrom).concat(e.view):e.viewFroml&&(e.view=e.view.slice(0,wb(a,l))));e.viewTo=l;c.viewOffset=Ia(A(a.doc,c.viewFrom));a.display.mover.style.top=c.viewOffset+"px";l=ef(a);if(!d&&0==l&&!b.force&&c.renderedView==c.view&&(null==c.updateLineNumbers|| c.updateLineNumbers>=c.viewTo))return!1;a.hasFocus()?h=null:(h=D())&&v(a.display.lineDiv,h)?(h={activeElt:h},window.getSelection&&(e=window.getSelection(),e.anchorNode&&e.extend&&v(a.display.lineDiv,e.anchorNode)&&(h.anchorNode=e.anchorNode,h.anchorOffset=e.anchorOffset,h.focusNode=e.focusNode,h.focusOffset=e.focusOffset))):h=null;4=a.display.viewFrom&&b.visible.to<=a.display.viewTo)break;if(!ce(a,b))break;ld(a);d=Bc(a);wc(a);Wb(a,d);de(a,d);b.force=!1}b.signal(a,"update",a);if(a.display.viewFrom!=a.display.reportedViewFrom||a.display.viewTo!=a.display.reportedViewTo)b.signal(a,"viewportChange",a,a.display.viewFrom,a.display.viewTo),a.display.reportedViewFrom= a.display.viewFrom,a.display.reportedViewTo=a.display.viewTo}function be(a,b){var c=new od(a,b);if(ce(a,c)){ld(a);df(a,c);var d=Bc(a);wc(a);Wb(a,d);de(a,d);c.finish()}}function Cg(a,b,c){function d(b){var d=b.nextSibling;va&&Qa&&a.display.currentWheelTarget==b?b.style.display="none":b.parentNode.removeChild(b);return d}var e=a.display,h=a.options.lineNumbers,l=e.lineDiv,n=l.firstChild,r=e.view;e=e.viewFrom;for(var m=0;mh.clientWidth,n=h.scrollHeight>h.clientHeight;if(d&&l||c&&n){if(c&&Qa&&va){l=b.target;var r=e.view;a:for(;l!=h;l=l.parentNode)for(var m= 0;mn?l=Math.max(0,l+n-50):r=Math.min(a.doc.height,r+n+50),be(a,{top:l,bottom:r})),20>qd&&(null==e.wheelStartX?(e.wheelStartX=h.scrollLeft,e.wheelStartY=h.scrollTop,e.wheelDX=d,e.wheelDY=c,setTimeout(function(){if(null!=e.wheelStartX){var a=h.scrollLeft-e.wheelStartX,b=h.scrollTop-e.wheelStartY;a=b&&e.wheelDY&&b/e.wheelDY||a&&e.wheelDX&&a/ e.wheelDX;e.wheelStartX=e.wheelStartY=null;a&&(Ka=(Ka*qd+a)/(qd+1),++qd)}},200)):(e.wheelDX+=d,e.wheelDY+=c))):(c&&n&&zc(a,Math.max(0,h.scrollTop+c*Ka)),Cb(a,Math.max(0,h.scrollLeft+d*Ka)),(!c||c&&n)&&qa(b),e.wheelStartX=null)}}function Ua(a,b){var c=a[b];a.sort(function(a,b){return K(a.from(),b.from())});b=H(a,c);for(c=1;cK(a,b.from))return a;if(0>=K(a,b.to))return nb(b);var c=a.line+b.text.length-(b.to.line-b.from.line)-1,d=a.ch;a.line==b.to.line&&(d+=nb(b).ch-b.to.ch);return z(c,d)}function fe(a,b){for(var c=[],d=0;dh-a.cm.options.historyEventDelay||"*"==b.origin.charAt(0))){if(e.lastOp==d){pf(e.done);var n=g(e.done)}else e.done.length&&!g(e.done).ranges?n=g(e.done):1e.undoDepth;)e.done.shift(),e.done[0].ranges||e.done.shift();e.done.push(c);e.generation=++e.maxGeneration;e.lastModTime=e.lastSelTime=h;e.lastOp=e.lastSelOp=d;e.lastOrigin=e.lastSelOrigin=b.origin;r||ca(a,"historyAdded")}function sd(a,b){var c=g(b);c&&c.ranges&&c.equals(a)||b.push(a)}function of(a,b,c,d){var e=b["spans_"+a.id],h=0;a.iter(Math.max(a.first,c),Math.min(a.first+a.size,d),function(d){d.markedSpans&&((e||(e=b["spans_"+a.id]={}))[h]=d.markedSpans);++h})}function Fg(a){if(!a)return null; for(var b,c=0;cK(b,a),d!=0>K(c,a)?(a=b,b=c):d!=0>K(b,c)&&(b=c)),new V(a,b)):new V(c||b,b)}function td(a,b,c,d,e){null==e&&(e=a.cm&&(a.cm.display.shift|| a.extend));ua(a,new La([je(a.sel.primary(),b,c,e)],0),d)}function sf(a,b,c){for(var d=[],e=a.cm&&(a.cm.display.shift||a.extend),h=0;hK(b.primary().head,a.sel.primary().head)?-1:1);uf(a,vf(a,b,d,!0));c&&!1===c.scroll||!a.cm||Vb(a.cm)}function uf(a,b){b.equals(a.sel)||(a.sel=b,a.cm&& (a.cm.curOp.updateInput=a.cm.curOp.selectionChanged=!0,mc(a.cm)),ta(a,"cursorActivity",a))}function wf(a){uf(a,vf(a,a.sel,null,!1))}function vf(a,b,c,d){for(var e,h=0;h=b.ch:n.to>b.ch))){if(e&&(ca(r,"beforeCursorEnter"),r.explicitlyCleared))if(h.markedSpans){--l;continue}else break;if(r.atomic){if(c){l=r.find(0>d?1:-1);n=void 0;if(0>d?r.inclusiveRight:r.inclusiveLeft)l=xf(a,l,-d,l&&l.line==b.line?h:null);if(l&&l.line==b.line&&(n=K(l,c))&&(0>d?0>n:0d?-1:1);if(0>d?r.inclusiveLeft:r.inclusiveRight)c=xf(a, c,d,c.line==b.line?h:null);return c?Zb(a,c,b,d,e):null}}}return b}function le(a,b,c,d,e){d=d||1;b=Zb(a,b,c,d,e)||!e&&Zb(a,b,c,d,!0)||Zb(a,b,c,-d,e)||!e&&Zb(a,b,c,-d,!0);return b?b:(a.cantEdit=!0,z(a.first,0))}function xf(a,b,c,d){return 0>c&&0==b.ch?b.line>a.first?M(a,z(b.line-1)):null:0a.lastLine())){if(b.from.linee&&(b={from:b.from,to:z(e,A(a,e).text.length),text:[b.text[0]],origin:b.origin});b.removed=S(a,b.from,b.to);c|| (c=fe(a,b));a.cm?Hg(a.cm,b,d):he(a,b,d);ud(a,c,$a)}}function Hg(a,b,c){var d=a.doc,e=a.display,h=b.from,l=b.to,n=!1,r=h.line;a.options.lineWrapping||(r=T(Da(A(d,h.line))),d.iter(r,l.line+1,function(a){if(a==e.maxLine)return n=!0}));-1e.maxLineLength&&(e.maxLine=a,e.maxLineLength=b,e.maxLineChanged=!0,n=!1)}),n&&(a.curOp.updateMaxLine=!0));Id(d,h.line);Ac(a,400);c=b.text.length- (l.line-h.line)-1;b.full?Ba(a):h.line!=l.line||1!=b.text.length||lf(a.doc,b)?Ba(a,h.line,l.line+1,c):mb(a,h.line,"text");c=wa(a,"changes");if((d=wa(a,"change"))||c)b={from:h,to:l,text:b.text,removed:b.removed,origin:b.origin},d&&ta(a,"change",a,b),c&&(a.curOp.changeObjs||(a.curOp.changeObjs=[])).push(b);a.display.selForContextMenu=null}function ac(a,b,c,d,e){d||(d=c);if(0>K(d,c)){var h=[d,c];c=h[0];d=h[1];h}"string"==typeof b&&(b=a.splitLines(b));$b(a,{from:c,to:d,text:b,origin:e})}function Ef(a, b,c,d){c=K(h.from,g(d).to);){var l=d.pop();if(0>K(l.from,h.from)){h.from=l.from;break}}d.push(h)}Ga(a,function(){for(var b=d.length-1;0<=b;b--)ac(a.doc,"",d[b].from,d[b].to,"+delete");Vb(a)})}function me(a,b,c){b=ab(a.text,b+c, c);return 0>b||b>a.text.length?null:b}function ne(a,b,c){a=me(a,b.ch,c);return null==a?null:new z(b.line,a,0>c?"after":"before")}function oe(a,b,c,d,e){if(a&&(a=Na(c,b.doc.direction))){a=0>e?g(a):a[0];var h=0>e==(1==a.level)?"after":"before";if(0e?c.text.length-1:0;var r=Ra(b,l,n).top;n=ma(function(a){return Ra(b,l,a).top==r},0>e==(1==a.level)?a.from:a.to-1,n);"before"==h&&(n=me(c,n,1))}else n=0>e?a.to:a.from;return new z(d,n,h)}return new z(d, 0>e?c.text.length:0,0>e?"before":"after")}function Qg(a,b,c,d){var e=Na(b,a.doc.direction);if(!e)return ne(b,c,d);c.ch>=b.text.length?(c.ch=b.text.length,c.sticky="before"):0>=c.ch&&(c.ch=0,c.sticky="after");var h=Xa(e,c.ch,c.sticky),l=e[h];if("ltr"==a.doc.direction&&0==l.level%2&&(0c.ch:l.fromd,g=n(c,k?1:-1);if(null!=g&&(k?g<=l.to&&g<=f.end:g>=l.from&&g>=f.begin))return new z(c.line,g,k?"before":"after")}l=function(a,b,d){for(var h=function(a,b){return b?new z(c.line,n(a,1),"before"):new z(c.line,a,"after")};0<=a&&afa&&27==a.keyCode&&(a.returnValue=!1);var b=a.keyCode;this.display.shift=16==b||a.shiftKey;var c=Sf(this,a);Ta&&(pe=c?b:null,!c&&88==b&&!Tg&&(Qa?a.metaKey:a.ctrlKey)&&this.replaceSelection("",null,"cut"));18!=b||/\bCodeMirror-crosshair\b/.test(this.display.lineDiv.className)||Ug(this)}}function Ug(a){function b(a){18!=a.keyCode&&a.altKey||(Bb(c,"CodeMirror-crosshair"),ja(document,"keyup",b),ja(document,"mouseover",b))}var c=a.display.lineDiv; J(c,"CodeMirror-crosshair");L(document,"keyup",b);L(document,"mouseover",b)}function Uf(a){16==a.keyCode&&(this.doc.sel.shift=!1);ka(this,a)}function Vf(a){if(!(fb(this.display,a)||ka(this,a)||a.ctrlKey&&!a.altKey||Qa&&a.metaKey)){var b=a.keyCode,c=a.charCode;if(Ta&&b==pe)pe=null,qa(a);else if(!Ta||a.which&&!(10>a.which)||!Sf(this,a))if(b=String.fromCharCode(null==c?b:c),"\b"!=b&&!Sg(this,a,b))this.display.input.onKeyPress(a)}}function Vg(a,b){var c=+new Date;if(Mc&&Mc.compare(c,a,b))return Nc=Mc= null,"triple";if(Nc&&Nc.compare(c,a,b))return Mc=new qe(c,a,b),Nc=null,"double";Nc=new qe(c,a,b);Mc=null;return"single"}function Wf(a){var b=this.display;if(!(ka(this,a)||b.activeTouch&&b.input.supportsTouch()))if(b.input.ensurePolled(),b.shift=a.shiftKey,fb(b,a))va||(b.scroller.draggable=!1,setTimeout(function(){return b.scroller.draggable=!0},100));else if(!zd(this,a,"gutterClick",!0)){var c=Ab(this,a),d=tb(a),e=c?Vg(c,d):"single";window.focus();1==d&&this.state.selectingText&&this.state.selectingText(a); c&&Wg(this,d,c,e,a)||(1==d?c?Xg(this,c,e,a):(a.target||a.srcElement)==b.scroller&&qa(a):2==d?(c&&td(this.doc,c),setTimeout(function(){return b.input.focus()},20)):3==d&&(re?Xf(this,a):Ve(this)))}}function Wg(a,b,c,d,e){var h="Click";"double"==d?h="Double"+h:"triple"==d&&(h="Triple"+h);return Lc(a,Mf((1==b?"Left":2==b?"Middle":"Right")+h,e),e,function(b){"string"==typeof b&&(b=Kc[b]);if(!b)return!1;var d=!1;try{a.isReadOnly()&&(a.state.suppressEdits=!0),d=b(a,c)!=yd}finally{a.state.suppressEdits=!1}return d})} function Xg(a,b,c,d){R?setTimeout(W(Ue,a),0):a.curOp.focus=D();var e=a.getOption("configureMouse");e=e?e(a,c,d):{};null==e.unit&&(e.unit=(Yg?d.shiftKey&&d.metaKey:d.altKey)?"rectangle":"single"==c?"char":"double"==c?"word":"line");if(null==e.extend||a.doc.extend)e.extend=a.doc.extend||d.shiftKey;null==e.addNew&&(e.addNew=Qa?d.metaKey:d.ctrlKey);null==e.moveOnDrag&&(e.moveOnDrag=!(Qa?d.altKey:d.ctrlKey));var h=a.doc.sel,l;a.options.dragDrop&&Zg&&!a.isReadOnly()&&"single"==c&&-1<(l=h.contains(b))&& (0>K((l=h.ranges[l]).from(),b)||0b.xRel)?$g(a,d,b,e):ah(a,d,b,e)}function $g(a,b,c,d){var e=a.display,h=!1,l=ra(a,function(b){va&&(e.scroller.draggable=!1);a.state.draggingText=!1;ja(document,"mouseup",l);ja(document,"mousemove",n);ja(e.scroller,"dragstart",r);ja(e.scroller,"drop",l);h||(qa(b),d.addNew||td(a.doc,c,null,null,d.extend),va||R&&9==fa?setTimeout(function(){document.body.focus();e.input.focus()},20):e.input.focus())}),n=function(a){h=h||10<=Math.abs(b.clientX- a.clientX)+Math.abs(b.clientY-a.clientY)},r=function(){return h=!0};va&&(e.scroller.draggable=!0);a.state.draggingText=l;l.copy=!d.moveOnDrag;e.scroller.dragDrop&&e.scroller.dragDrop();L(document,"mouseup",l);L(document,"mousemove",n);L(e.scroller,"dragstart",r);L(e.scroller,"drop",l);Ve(a);setTimeout(function(){return e.input.focus()},20)}function Yf(a,b,c){if("char"==c)return new V(b,b);if("word"==c)return a.findWordAt(b);if("line"==c)return new V(z(b.line,0),M(a.doc,z(b.line+1,0)));a=c(a,b);return new V(a.from, a.to)}function ah(a,b,c,d){function e(b){if(0!=K(p,b))if(p=b,"rectangle"==d.unit){var e=[],h=a.options.tabSize,l=k(A(r,c.line).text,c.ch,h),n=k(A(r,b.line).text,b.ch,h),f=Math.min(l,n);l=Math.max(l,n);n=Math.min(c.line,b.line);for(var E=Math.min(a.lastLine(),Math.max(c.line,b.line));n<=E;n++){var x=A(r,n).text,G=U(x,f,h);f==l?e.push(new V(z(n,G),z(n,G))):x.length>G&&e.push(new V(z(n,G),z(n,U(x,l,h))))}e.length||e.push(new V(c,c));ua(r,Ua(m.ranges.slice(0,g).concat(e),g),{origin:"*mouse",scroll:!1}); a.scrollIntoView(b)}else e=u,f=Yf(a,b,d.unit),b=e.anchor,0=m.to||l.lineE.bottom?20:0;f&&setTimeout(ra(a,function(){x==c&&(n.scroller.scrollTop+= f,h(b))}),50)}}function l(b){a.state.selectingText=!1;x=Infinity;qa(b);n.input.focus();ja(document,"mousemove",N);ja(document,"mouseup",q);r.history.lastSelOrigin=null}var n=a.display,r=a.doc;qa(b);var m=r.sel,f=m.ranges;if(d.addNew&&!d.extend){var g=r.sel.contains(c);var u=-1h:0=Math.floor(a.display.gutters.getBoundingClientRect().right))return!1;d&&qa(b);d=a.display;var l=d.lineDiv.getBoundingClientRect();if(h>l.bottom||!wa(a,c))return Nb(b);h-=l.top-d.viewOffset;for(l=0;l=e)return e=bb(a.doc,h),ca(a,c,a,e,a.options.gutters[l],b),Nb(b)}}function Xf(a,b){var c;(c=fb(a.display,b))||(c=wa(a,"gutterContextMenu")?zd(a,b,"gutterContextMenu", !1):!1);if(!c&&!ka(a,b,"contextmenu"))a.display.input.onContextMenu(b)}function Zf(a){a.display.wrapper.className=a.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+a.options.theme.replace(/(^|\s)\s*/g," cm-s-");vc(a)}function Oc(a){ff(a);Ba(a);Xe(a)}function ch(a,b,c){!b!=!(c&&c!=ec)&&(c=a.display.dragFunctions,b=b?L:ja,b(a.display.scroller,"dragstart",c.start),b(a.display.scroller,"dragenter",c.enter),b(a.display.scroller,"dragover",c.over),b(a.display.scroller,"dragleave",c.leave),b(a.display.scroller, "drop",c.drop))}function dh(a){a.options.lineWrapping?(J(a.display.wrapper,"CodeMirror-wrap"),a.display.sizer.style.minWidth="",a.display.sizerWidth=null):(Bb(a.display.wrapper,"CodeMirror-wrap"),kc(a));Wd(a);Ba(a);vc(a);setTimeout(function(){return Wb(a)},100)}function ia(a,b){var c=this;if(!(this instanceof ia))return new ia(a,b);this.options=b=b?y(b):{};y($f,b,!1);ee(b);var d=b.value;"string"==typeof d&&(d=new Ca(d,b.mode,null,b.lineSeparator,b.direction));this.doc=d;var e=new ia.inputStyles[b.inputStyle](this); e=this.display=new za(a,d,e);e.wrapper.CodeMirror=this;ff(this);Zf(this);b.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap");bf(this);this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:!1,cutIncoming:!1,selectingText:!1,draggingText:!1,highlight:new Gb,keySeq:null,specialChars:null};b.autofocus&&!gc&&e.input.focus();R&&11>fa&&setTimeout(function(){return c.display.input.reset(!0)},20);eh(this);ag||(Mg(),ag=!0); Db(this);this.curOp.forceUpdate=!0;mf(this,d);b.autofocus&&!gc||this.hasFocus()?setTimeout(W(Yd,this),20):xc(this);for(var h in Ad)if(Ad.hasOwnProperty(h))Ad[h](c,b[h],ec);Ye(this);b.finishInit&&b.finishInit(this);for(d=0;dfa?L(d.scroller,"dblclick",ra(a,function(b){if(!ka(a,b)){var d=Ab(a,b);!d||zd(a,b,"gutterClick",!0)||fb(a.display,b)||(qa(b),b=a.findWordAt(d),td(a.doc,b.anchor,b.head))}})):L(d.scroller,"dblclick",function(b){return ka(a,b)||qa(b)});re||L(d.scroller,"contextmenu",function(b){return Xf(a,b)});var e,h={end:0};L(d.scroller,"touchstart",function(b){var c; if(c=!ka(a,b))1!=b.touches.length?c=!1:(c=b.touches[0],c=1>=c.radiusX&&1>=c.radiusY),c=!c;c&&!zd(a,b,"gutterClick",!0)&&(d.input.ensurePolled(),clearTimeout(e),c=+new Date,d.activeTouch={start:c,moved:!1,prev:300>=c-h.end?h:null},1==b.touches.length&&(d.activeTouch.left=b.touches[0].pageX,d.activeTouch.top=b.touches[0].pageY))});L(d.scroller,"touchmove",function(){d.activeTouch&&(d.activeTouch.moved=!0)});L(d.scroller,"touchend",function(e){var h=d.activeTouch;if(h&&!fb(d,e)&&null!=h.left&&!h.moved&& 300>new Date-h.start){var l=a.coordsChar(d.activeTouch,"page");h=!h.prev||c(h,h.prev)?new V(l,l):!h.prev.prev||c(h,h.prev.prev)?a.findWordAt(l):new V(z(l.line,0),M(a.doc,z(l.line+1,0)));a.setSelection(h.anchor,h.head);a.focus();qa(e)}b()});L(d.scroller,"touchcancel",b);L(d.scroller,"scroll",function(){d.scroller.clientHeight&&(zc(a,d.scroller.scrollTop),Cb(a,d.scroller.scrollLeft,!0),ca(a,"scroll",a))});L(d.scroller,"mousewheel",function(b){return hf(a,b)});L(d.scroller,"DOMMouseScroll",function(b){return hf(a, b)});L(d.wrapper,"scroll",function(){return d.wrapper.scrollTop=d.wrapper.scrollLeft=0});d.dragFunctions={enter:function(b){ka(a,b)||sb(b)},over:function(b){if(!ka(a,b)){var d=Ab(a,b);if(d){var c=document.createDocumentFragment();Te(a,d,c);a.display.dragCursor||(a.display.dragCursor=t("div",null,"CodeMirror-cursors CodeMirror-dragcursors"),a.display.lineSpace.insertBefore(a.display.dragCursor,a.display.cursorDiv));C(a.display.dragCursor,c)}sb(b)}},start:function(b){if(R&&(!a.state.draggingText||100> +new Date-Jf))sb(b);else if(!ka(a,b)&&!fb(a.display,b)&&(b.dataTransfer.setData("Text",a.getSelection()),b.dataTransfer.effectAllowed="copyMove",b.dataTransfer.setDragImage&&!bg)){var d=t("img",null,null,"position: fixed; left: 0; top: 0;");d.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==";Ta&&(d.width=d.height=1,a.display.wrapper.appendChild(d),d._top=d.offsetTop);b.dataTransfer.setDragImage(d,0,0);Ta&&d.parentNode.removeChild(d)}},drop:ra(a,Lg),leave:function(b){ka(a, b)||If(a)}};var l=d.input.getField();L(l,"keyup",function(b){return Uf.call(a,b)});L(l,"keydown",ra(a,Tf));L(l,"keypress",ra(a,Vf));L(l,"focus",function(b){return Yd(a,b)});L(l,"blur",function(b){return xc(a,b)})}function Pc(a,b,c,d){var e=a.doc,h;null==c&&(c="add");"smart"==c&&(e.mode.indent?h=Ja(a,b).state:c="prev");var l=a.options.tabSize,n=A(e,b),m=k(n.text,null,l);n.stateAfter&&(n.stateAfter=null);var f=n.text.match(/^\s*/)[0];if(!d&&!/\S/.test(n.text)){var g=0;c="not"}else if("smart"==c&&(g= e.mode.indent(h,n.text.slice(f.length),n.text),g==yd||150e.first?k(A(e,b-1).text,null,l):0:"add"==c?g=m+a.options.indentUnit:"subtract"==c?g=m-a.options.indentUnit:"number"==typeof c&&(g=m+c);g=Math.max(0,g);c="";d=0;if(a.options.indentWithTabs)for(a=Math.floor(g/l);a;--a)d+=l,c+="\t";d=a.first+a.size?d=!1:(b=new z(d,b.ch,b.sticky),d=m=A(a,d));if(d)b=oe(e,a.cm,m,b.line,c);else return!1}else b= h;return!0}var l=b,n=c,m=A(a,b.line);if("char"==d)h();else if("column"==d)h(!0);else if("word"==d||"group"==d){var f=null;d="group"==d;for(var g=a.cm&&a.cm.getHelper(b,"wordChars"),k=!0;!(0>c)||h(!k);k=!1){var u=m.text.charAt(b.ch)||"\n";u=Q(u,g)?"w":d&&"\n"==u?"n":!d||/\s/.test(u)?null:"p";!d||k||u||(u="s");if(f&&f!=u){0>c&&(c=1,h(),b.sticky="after");break}u&&(f=u);if(0c?0>=l:l>=e.height){b.hitSide=!0;break}l+=5*c}return b}function ig(a,b){var c=Nd(a,b.line);if(!c||c.hidden)return null;var d=A(a.doc,b.line);c=Ge(c,d,b.line);d=Na(d,a.doc.direction);var e="left";d&&(e=Xa(d,b.ch)%2?"right":"left");c=He(c.map,b.ch,e);c.offset="right"== c.collapse?c.end:c.start;return c}function fh(a){for(;a;a=a.parentNode)if(/CodeMirror-gutter-wrapper/.test(a.className))return!0;return!1}function fc(a,b){b&&(a.bad=!0);return a}function gh(a,b,c,d,e){function h(a){return function(b){return b.id==a}}function l(a){a&&(f&&(m+=g,f=!1),m+=a)}function n(b){if(1==b.nodeType){var c=b.getAttribute("cm-text");if(null!=c)l(c||b.textContent.replace(/\u200b/g,""));else{c=b.getAttribute("cm-marker");var r;if(c)b=a.findMarks(z(d,0),z(e+1,0),h(+c)),b.length&&(r= b[0].find(0))&&l(S(a.doc,r.from,r.to).join(g));else if("false"!=b.getAttribute("contenteditable")){(r=/^(pre|div|p)$/i.test(b.nodeName))&&f&&(m+=g,f=!1);for(c=0;ce?m.map:f[e],l=0;le?a.line:a.rest[e]);e=h[l]+c;if(0>c||n!=b)e=h[l+(c?1:0)];return z(d,e)}}}var e=a.text.firstChild,h=!1;if(!b||!v(e,b))return fc(z(T(a.line),0),!0); if(b==e&&(h=!0,b=e.childNodes[c],c=0,!b))return c=a.rest?g(a.rest):a.line,fc(z(T(c),c.text.length),h);var l=3==b.nodeType?b:null,n=b;l||1!=b.childNodes.length||3!=b.firstChild.nodeType||(l=b.firstChild,c&&(c=l.nodeValue.length));for(;n.parentNode!=e;)n=n.parentNode;var m=a.measure,f=m.maps;if(b=d(l,n,c))return fc(b,h);e=n.nextSibling;for(l=l?l.nodeValue.length-c:0;e;e=e.nextSibling){if(b=d(e,e.firstChild,0))return fc(z(b.line,b.ch-l),h);l+=e.textContent.length}for(n=n.previousSibling;n;n=n.previousSibling){if(b= d(n,n.firstChild,-1))return fc(z(b.line,b.ch+c),h);c+=n.textContent.length}}var ya=navigator.userAgent,jg=navigator.platform,hb=/gecko\/\d/i.test(ya),kg=/MSIE \d/.test(ya),lg=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(ya),Rc=/Edge\/(\d+)/.exec(ya),R=kg||lg||Rc,fa=R&&(kg?document.documentMode||6:+(Rc||lg)[1]),va=!Rc&&/WebKit\//.test(ya),ih=va&&/Qt\/\d+\.\d+/.test(ya),hd=!Rc&&/Chrome\//.test(ya),Ta=/Opera\//.test(ya),bg=/Apple Computer/.test(navigator.vendor),jh=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(ya), Ag=/PhantomJS/.test(ya),Qc=!Rc&&/AppleWebKit/.test(ya)&&/Mobile\/\w+/.test(ya),id=/Android/.test(ya),gc=Qc||id||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(ya),Qa=Qc||/Mac/.test(jg),Yg=/\bCrOS\b/.test(ya),kh=/win/i.test(jg),Hb=Ta&&ya.match(/Version\/(\d*\.\d*)/);Hb&&(Hb=Number(Hb[1]));Hb&&15<=Hb&&(Ta=!1,va=!0);var Nf=Qa&&(ih||Ta&&(null==Hb||12.11>Hb)),re=hb||R&&9<=fa,Bb=function(a,b){var c=a.className,d=q(b).exec(c);if(d){var e=c.slice(d.index+d[0].length);a.className=c.slice(0,d.index)+ (e?d[1]+e:"")}};var qc=document.createRange?function(a,b,c,d){var e=document.createRange();e.setEnd(d||a,c);e.setStart(a,b);return e}:function(a,b,c){var d=document.body.createTextRange();try{d.moveToElementText(a.parentNode)}catch(e){return d}d.collapse(!0);d.moveEnd("character",c);d.moveStart("character",b);return d};var Sc=function(a){a.select()};Qc?Sc=function(a){a.selectionStart=0;a.selectionEnd=a.value.length}:R&&(Sc=function(a){try{a.select()}catch(b){}});var Gb=function(){this.id=null};Gb.prototype.set= function(a,b){clearTimeout(this.id);this.id=setTimeout(b,a)};var yd={toString:function(){return"CodeMirror.Pass"}},$a={scroll:!1},se={origin:"*mouse"},Tc={origin:"+move"},Yc=[""],mg=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,ng=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/, Af=!1,ib=!1,lc=null,og=function(){function a(a){return 247>=a?"bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN".charAt(a):1424<=a&&1524>=a?"R":1536<=a&&1785>=a?"nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111".charAt(a- 1536):1774<=a&&2220>=a?"r":8192<=a&&8203>=a?"w":8204==a?"b":"L"}function b(a,b,d){this.level=a;this.from=b;this.to=d}var c=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,d=/[stwN]/,e=/[LRr]/,h=/[Lb1n]/,l=/[1n]/;return function(n,m){var f="ltr"==m?"L":"R";if(0==n.length||"ltr"==m&&!c.test(n))return!1;for(var r=n.length,k=[],u=0;ufa)return!1;var a=t("div");return"draggable"in a||"dragDrop"in a}(),Fd,Jd,ve=3!="\n\nb".split(/\n/).length?function(a){for(var b=0,c=[],d=a.length;b<=d;){var e=a.indexOf("\n",b);-1==e&&(e=a.length);var h=a.slice(b,"\r"==a.charAt(e-1)?e-1:e),l=h.indexOf("\r");-1!=l?(c.push(h.slice(0,l)),b+= l+1):(c.push(h),b=e+1)}return c}:function(a){return a.split(/\r\n?|\n/)},lh=window.getSelection?function(a){try{return a.selectionStart!=a.selectionEnd}catch(b){return!1}}:function(a){try{var b=a.ownerDocument.selection.createRange()}catch(c){}return b&&b.parentElement()==a?0!=b.compareEndPoints("StartToEnd",b):!1},Tg=function(){var a=t("div");if("oncopy"in a)return!0;a.setAttribute("oncopy","return;");return"function"==typeof a.oncopy}(),Pd=null,Hd={},Ob={},Pb={},la=function(a,b,c){this.pos=this.start= 0;this.string=a;this.tabSize=b||8;this.lineStart=this.lastColumnPos=this.lastColumnValue=0;this.lineOracle=c};la.prototype.eol=function(){return this.pos>=this.string.length};la.prototype.sol=function(){return this.pos==this.lineStart};la.prototype.peek=function(){return this.string.charAt(this.pos)||void 0};la.prototype.next=function(){if(this.posb};la.prototype.eatSpace=function(){for(var a=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>a};la.prototype.skipToEnd=function(){this.pos=this.string.length};la.prototype.skipTo=function(a){a=this.string.indexOf(a,this.pos);if(-1this.maxLookAhead&&(this.maxLookAhead=a);return b};Ya.prototype.baseToken=function(a){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=a;)this.baseTokenPos+=2;var b=this.baseTokens[this.baseTokenPos+ 1];return{type:b&&b.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-a}};Ya.prototype.nextLine=function(){this.line++;0fa&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};Ib.prototype.update=function(a){var b=a.scrollWidth>a.clientWidth+1,c=a.scrollHeight>a.clientHeight+1,d=a.nativeBarWidth;c?(this.vert.style.display="block",this.vert.style.bottom=b?d+"px":"0",this.vert.firstChild.style.height=Math.max(0,a.scrollHeight-a.clientHeight+(a.viewHeight-(b?d:0)))+"px"):(this.vert.style.display= "",this.vert.firstChild.style.height="0");b?(this.horiz.style.display="block",this.horiz.style.right=c?d+"px":"0",this.horiz.style.left=a.barLeft+"px",this.horiz.firstChild.style.width=Math.max(0,a.scrollWidth-a.clientWidth+(a.viewWidth-a.barLeft-(c?d:0)))+"px"):(this.horiz.style.display="",this.horiz.firstChild.style.width="0");!this.checkedZeroWidth&&0=K(a,d.to()))return c}return-1};var V=function(a,b){this.anchor=a;this.head=b};V.prototype.from=function(){return Va(this.anchor, this.head)};V.prototype.to=function(){return pa(this.anchor,this.head)};V.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch};Fc.prototype={chunkSize:function(){return this.lines.length},removeInner:function(a,b){for(var c=a,d=a+b;cthis.size- b&&(1=this.children.length)){var a=this;do{var b=a.children.splice(a.children.length-5,5);b=new Gc(b);if(a.parent){a.size-=b.size;a.height-=b.height;var c=H(a.parent.children,a);a.parent.children.splice(c+1,0,b)}else c=new Gc(a.children),c.parent=a,a.children=[c,b],a=c;b.parent=a.parent}while(10a.display.maxLineLength&&(a.display.maxLine=h,a.display.maxLineLength=l,a.display.maxLineChanged=!0);null!=c&&a&&this.collapsed&&Ba(a,c,d+1);this.lines.length=0;this.explicitlyCleared=!0;this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,a&&wf(a.doc));a&&ta(a,"markerCleared",a,this,c,d);b&&Eb(a);this.parent&&this.parent.clear()}};ob.prototype.find=function(a,b){null== a&&"bookmark"==this.type&&(a=1);for(var c,d,e=0;eK(n.head,n.anchor),a[h]=new V(n?m:l,n?l:m)):a[h]=new V(l,l)}a=new La(a,this.sel.primIndex)}b=a;for(a=d.length-1;0<=a;a--)$b(this,d[a]);b?tf(this,b):this.cm&&Vb(this.cm)}),undo:sa(function(){vd(this, "undo")}),redo:sa(function(){vd(this,"redo")}),undoSelection:sa(function(){vd(this,"undo",!0)}),redoSelection:sa(function(){vd(this,"redo",!0)}),setExtending:function(a){this.extend=a},getExtending:function(){return this.extend},historySize:function(){for(var a=this.history,b=0,c=0,d=0;d=a.ch)&&b.push(e.marker.parent||e.marker)}return b},findMarks:function(a,b,c){a=M(this,a);b=M(this,b);var d=[],e=a.line;this.iter(a.line,b.line+1,function(h){if(h=h.markedSpans)for(var l= 0;l=m.to||null==m.from&&e!=a.line||null!=m.from&&e==b.line&&m.from>=b.ch||c&&!c(m.marker)||d.push(m.marker.parent||m.marker)}++e});return d},getAllMarks:function(){var a=[];this.iter(function(b){if(b=b.markedSpans)for(var c=0;ca)return b=a,!0;a-=e;++c});return M(this, z(c,b))},indexFromPos:function(a){a=M(this,a);var b=a.ch;if(a.linea.ch)return 0;var c=this.lineSeparator().length;this.iter(this.first,a.line,function(a){b+=a.text.length+c});return b},copy:function(a){var b=new Ca(Jb(this,this.first,this.first+this.size),this.modeOption,this.first,this.lineSep,this.direction);b.scrollTop=this.scrollTop;b.scrollLeft=this.scrollLeft;b.sel=this.sel;b.extend=!1;a&&(b.history.undoDepth=this.history.undoDepth,b.setHistory(this.getHistory()));return b},linkedDoc:function(a){a|| (a={});var b=this.first,c=this.first+this.size;null!=a.from&&a.from>b&&(b=a.from);null!=a.to&&a.toVc;Vc++)pb[Vc+48]=pb[Vc+96]=String(Vc);for(var Cd=65;90>=Cd;Cd++)pb[Cd]= String.fromCharCode(Cd);for(var Wc=1;12>=Wc;Wc++)pb[Wc+111]=pb[Wc+63235]="F"+Wc;var Jc={basic:{Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"},pcDefault:{"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo", "Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection", "Alt-U":"redoSelection",fallthrough:"basic"},emacsy:{"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Alt-F":"goWordRight","Alt-B":"goWordLeft","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-D":"delWordAfter","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars","Ctrl-O":"openLine"},macDefault:{"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo", "Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft", "Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]}};Jc["default"]=Qa?Jc.macDefault:Jc.pcDefault;var Kc={selectAll:yf,singleSelection:function(a){return a.setSelection(a.getCursor("anchor"),a.getCursor("head"),$a)},killLine:function(a){return dc(a,function(b){if(b.empty()){var c=A(a.doc,b.head.line).text.length;return b.head.ch==c&&b.head.linea.doc.first){var l=A(a.doc,e.line-1).text;l&&(e=new z(e.line,1),a.replaceRange(h.charAt(0)+a.doc.lineSeparator()+l.charAt(l.length-1),z(e.line-1,l.length-1),e,"+transpose"))}c.push(new V(e,e))}a.setSelections(c)})},newlineAndIndent:function(a){return Ga(a,function(){for(var b=a.listSelections(),c=b.length-1;0<=c;c--)a.replaceRange(a.doc.lineSeparator(),b[c].anchor,b[c].head,"+input"); b=a.listSelections();for(c=0;ca&&0==K(b,this.pos)&&c==this.button};var Nc,Mc,ec={toString:function(){return"CodeMirror.Init"}},$f={},Ad={};ia.defaults=$f;ia.optionHandlers=Ad;var te=[];ia.defineInitHook= function(a){return te.push(a)};var Ha=null,da=function(a){this.cm=a;this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null;this.polling=new Gb;this.composing=null;this.gracePeriod=!1;this.readDOMTimeout=null};da.prototype.init=function(a){function b(a){if(!ka(e,a)){if(e.somethingSelected())Ha={lineWise:!1,text:e.getSelections()},"cut"==a.type&&e.replaceSelection("",null,"cut");else if(e.options.lineWiseCopyCut){var b=eg(e);Ha={lineWise:!0,text:b.text};"cut"==a.type&& e.operation(function(){e.setSelections(b.ranges,0,$a);e.replaceSelection("",null,"cut")})}else return;if(a.clipboardData){a.clipboardData.clearData();var c=Ha.text.join("\n");a.clipboardData.setData("Text",c);if(a.clipboardData.getData("Text")==c){a.preventDefault();return}}var l=gg();a=l.firstChild;e.display.lineSpace.insertBefore(l,e.display.lineSpace.firstChild);a.value=Ha.text.join("\n");var m=document.activeElement;Sc(a);setTimeout(function(){e.display.lineSpace.removeChild(l);m.focus();m==h&& d.showPrimarySelection()},50)}}var c=this,d=this,e=d.cm,h=d.div=a.lineDiv;fg(h,e.options.spellcheck);L(h,"paste",function(a){ka(e,a)||dg(a,e)||11>=fa&&setTimeout(ra(e,function(){return c.updateFromDOM()}),20)});L(h,"compositionstart",function(a){c.composing={data:a.data,done:!1}});L(h,"compositionupdate",function(a){c.composing||(c.composing={data:a.data,done:!1})});L(h,"compositionend",function(a){c.composing&&(a.data!=c.composing.data&&c.readFromDOMSoon(),c.composing.done=!0)});L(h,"touchstart", function(){return d.forceCompositionEnd()});L(h,"input",function(){c.composing||c.readFromDOMSoon()});L(h,"copy",b);L(h,"cut",b)};da.prototype.prepareSelection=function(){var a=Se(this.cm,!1);a.focus=this.cm.state.focused;return a};da.prototype.showSelection=function(a,b){a&&this.cm.display.view.length&&((a.focus||b)&&this.showPrimarySelection(),this.showMultipleSelections(a))};da.prototype.showPrimarySelection=function(){var a=window.getSelection(),b=this.cm,c=b.doc.sel.primary(),d=c.from();c=c.to(); if(b.display.viewTo==b.display.viewFrom||d.line>=b.display.viewTo||c.line=b.display.viewFrom&&ig(b,d)||{node:e[0].measure.map[2],offset:0},c=c.linea.firstLine()&&(d=z(d.line-1,A(a.doc,d.line-1).length));e.ch==A(a.doc,e.line).text.length&&e.lineb.viewTo-1)return!1;var h;d.line==b.viewFrom||0==(h=wb(a,d.line))?(c=T(b.view[0].line),h=b.view[0].node):(c=T(b.view[h].line),h=b.view[h-1].node.nextSibling);var l=wb(a,e.line);l==b.view.length-1?(e=b.viewTo-1,b=b.lineDiv.lastChild): (e=T(b.view[l+1].line)-1,b=b.view[l+1].node.previousSibling);if(!h)return!1;b=a.doc.splitLines(gh(a,h,b,c,e));for(h=S(a.doc,z(c,0),z(e,A(a.doc,e).text.length));1d.ch&&f.charCodeAt(f.length-l-1)==k.charCodeAt(k.length-l-1);)m--,l++;b[b.length-1]=f.slice(0,f.length-l).replace(/^\u200b+/,"");b[0]=b[0].slice(m).replace(/\u200b+$/,"");d=z(c,m);c=z(e,h.length?g(h).length-l:0);if(1fa&&h.scrollbars.setScrollTop(h.scroller.scrollTop=f);if(null!=l.selectionStart){(!R||R&&9>fa)&&b();var a=0,c=function(){h.selForContextMenu==e.doc.sel&&0==l.selectionStart&&0a++?h.detectingSelectAll=setTimeout(c,500):(h.selForContextMenu= null,h.input.reset())};h.detectingSelectAll=setTimeout(c,200)}}var d=this,e=d.cm,h=e.display,l=d.textarea,m=Ab(e,a),f=h.scroller.scrollTop;if(m&&!Ta){e.options.resetSelectionOnContextMenu&&-1==e.doc.sel.contains(m)&&ra(e,ua)(e.doc,gb(m),$a);var k=l.style.cssText,u=d.wrapper.style.cssText;d.wrapper.style.cssText="position: absolute";m=d.wrapper.getBoundingClientRect();l.style.cssText="position: absolute; width: 30px; height: 30px;\n top: "+(a.clientY-m.top-5)+"px; left: "+(a.clientX-m.left-5)+ "px;\n z-index: 1000; background: "+(R?"rgba(255, 255, 255, .05)":"transparent")+";\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);";if(va)var g=window.scrollY;h.input.focus();va&&window.scrollTo(null,g);h.input.reset();e.somethingSelected()||(l.value=d.prevInput=" ");d.contextMenuPending=!0;h.selForContextMenu=e.doc.sel;clearTimeout(h.detectingSelectAll);R&&9<=fa&&b();if(re){sb(a);var p=function(){ja(window,"mouseup",p);setTimeout(c, 20)};L(window,"mouseup",p)}else setTimeout(c,50)}};oa.prototype.readOnlyChanged=function(a){a||this.reset();this.textarea.disabled="nocursor"==a};oa.prototype.setUneditable=function(){};oa.prototype.needsContentAttribute=!1;(function(a){function b(b,e,h,l){a.defaults[b]=e;h&&(c[b]=l?function(a,b,d){d!=ec&&h(a,b,d)}:h)}var c=a.optionHandlers;a.defineOption=b;a.Init=ec;b("value","",function(a,b){return a.setValue(b)},!0);b("mode",null,function(a,b){a.doc.modeOption=b;ge(a)},!0);b("indentUnit",2,ge, !0);b("indentWithTabs",!1);b("smartIndent",!0);b("tabSize",4,function(a){Cc(a);vc(a);Ba(a)},!0);b("lineSeparator",null,function(a,b){if(a.doc.lineSep=b){var c=[],d=a.doc.first;a.doc.iter(function(a){for(var e=0;;){var h=a.text.indexOf(b,e);if(-1==h)break;e=h+b.length;c.push(z(d,h))}d++});for(var e=c.length-1;0<=e;e--)ac(a.doc,b,c[e],z(c[e].line,c[e].ch+b.length))}});b("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b-\u200f\u2028\u2029\ufeff]/g,function(a,b,c){a.state.specialChars=new RegExp(b.source+ (b.test("\t")?"":"|\t"),"g");c!=ec&&a.refresh()});b("specialCharPlaceholder",m,function(a){return a.refresh()},!0);b("electricChars",!0);b("inputStyle",gc?"contenteditable":"textarea",function(){throw Error("inputStyle can not (yet) be changed in a running editor");},!0);b("spellcheck",!1,function(a,b){return a.getInputField().spellcheck=b},!0);b("rtlMoveVisually",!kh);b("wholeLineUpdateBefore",!0);b("theme","default",function(a){Zf(a);Oc(a)},!0);b("keyMap","default",function(a,b,c){b=wd(b);(c=c!= ec&&wd(c))&&c.detach&&c.detach(a,b);b.attach&&b.attach(a,c||null)});b("extraKeys",null);b("configureMouse",null);b("lineWrapping",!1,dh,!0);b("gutters",[],function(a){ee(a.options);Oc(a)},!0);b("fixedGutter",!0,function(a,b){a.display.gutters.style.left=b?Vd(a.display)+"px":"0";a.refresh()},!0);b("coverGutterNextToScrollbar",!1,function(a){return Wb(a)},!0);b("scrollbarStyle","native",function(a){bf(a);Wb(a);a.display.scrollbars.setScrollTop(a.doc.scrollTop);a.display.scrollbars.setScrollLeft(a.doc.scrollLeft)}, !0);b("lineNumbers",!1,function(a){ee(a.options);Oc(a)},!0);b("firstLineNumber",1,Oc,!0);b("lineNumberFormatter",function(a){return a},Oc,!0);b("showCursorWhenSelecting",!1,wc,!0);b("resetSelectionOnContextMenu",!0);b("lineWiseCopyCut",!0);b("pasteLinesPerSelection",!0);b("readOnly",!1,function(a,b){"nocursor"==b&&(xc(a),a.display.input.blur());a.display.input.readOnlyChanged(b)});b("disableInput",!1,function(a,b){b||a.display.input.reset()},!0);b("dragDrop",!0,ch);b("allowDropFileTypes",null);b("cursorBlinkRate", 530);b("cursorScrollMargin",0);b("cursorHeight",1,wc,!0);b("singleCursorHeightPerLine",!0,wc,!0);b("workTime",100);b("workDelay",100);b("flattenSpans",!0,Cc,!0);b("addModeClass",!1,Cc,!0);b("pollInterval",100);b("undoDepth",200,function(a,b){return a.doc.history.undoDepth=b});b("historyEventDelay",1250);b("viewportMargin",10,function(a){return a.refresh()},!0);b("maxHighlightLength",1E4,Cc,!0);b("moveInputWithCursor",!0,function(a,b){b||a.display.input.resetPosition()});b("tabindex",null,function(a, b){return a.display.input.getField().tabIndex=b||""});b("autofocus",null);b("direction","ltr",function(a,b){return a.doc.setDirection(b)},!0)})(ia);(function(a){var b=a.optionHandlers,c=a.helpers={};a.prototype={constructor:a,focus:function(){window.focus();this.display.input.focus()},setOption:function(a,c){var d=this.options,e=d[a];if(d[a]!=c||"mode"==a)d[a]=c,b.hasOwnProperty(a)&&ra(this,b[a])(this,c,e),ca(this,"optionChange",this,a)},getOption:function(a){return this.options[a]},getDoc:function(){return this.doc}, addKeyMap:function(a,b){this.state.keyMaps[b?"push":"unshift"](wd(a))},removeKeyMap:function(a){for(var b=this.state.keyMaps,c=0;cc&&(Pc(this,m.head.line,a,!0),c=m.head.line,d==this.doc.sel.primIndex&& Vb(this));else{var f=m.from();m=m.to();var k=Math.max(c,f.line);c=Math.min(this.lastLine(),m.line-(m.ch?0:1))+1;for(m=k;m>1;if((m? b[2*m-1]:0)>=a)d=m;else if(b[2*m+1]c?b:0==c?null:b.slice(0,c-1)},getModeAt:function(b){var c=this.doc.mode;return c.innerMode?a.innerMode(c,this.getTokenAt(b).state).mode:c},getHelper:function(a,b){return this.getHelpers(a,b)[0]},getHelpers:function(a,b){var d=[];if(!c.hasOwnProperty(b))return d;var e=c[b],m=this.getModeAt(a);if("string"==typeof m[b])e[m[b]]&&d.push(e[m[b]]);else if(m[b])for(var f=0;fe&&(a=e,d=!0);a=A(this.doc,a)}return jd(this,a,{top:0,left:0},b||"page",c||d).top+(d?this.doc.height-Ia(a):0)}, defaultTextHeight:function(){return yb(this.display)},defaultCharWidth:function(){return uc(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(a,b,c,l,m){var d=this.display;a=Sa(this,M(this.doc,a));var e=a.bottom,h=a.left;b.style.position="absolute";b.setAttribute("cm-ignore-events","true");this.display.input.setUneditable(b);d.sizer.appendChild(b);if("over"==l)e=a.top;else if("above"==l||"near"==l){var f=Math.max(d.wrapper.clientHeight, this.doc.height),n=Math.max(d.sizer.clientWidth,d.lineSpace.clientWidth);("above"==l||a.bottom+b.offsetHeight>f)&&a.top>b.offsetHeight?e=a.top-b.offsetHeight:a.bottom+b.offsetHeight<=f&&(e=a.bottom);h+b.offsetWidth>n&&(h=n-b.offsetWidth)}b.style.top=e+"px";b.style.left=b.style.right="";"right"==m?(h=d.sizer.clientWidth-b.offsetWidth,b.style.right="0px"):("left"==m?h=0:"middle"==m&&(h=(d.sizer.clientWidth-b.offsetWidth)/2),b.style.left=h+"px");c&&(a=ae(this,{left:h,top:e,right:h+b.offsetWidth,bottom:e+ b.offsetHeight}),null!=a.scrollTop&&zc(this,a.scrollTop),null!=a.scrollLeft&&Cb(this,a.scrollLeft))},triggerOnKeyDown:xa(Tf),triggerOnKeyPress:xa(Vf),triggerOnKeyUp:Uf,triggerOnMouseDown:xa(Wf),execCommand:function(a){if(Kc.hasOwnProperty(a))return Kc[a].call(null,this)},triggerElectric:xa(function(a){cg(this,a)}),findPosH:function(a,b,c,l){var d=1;0>b&&(d=-1,b=-b);a=M(this.doc,a);for(var e=0;ea?d.from():d.to()},Tc)}),deleteH:xa(function(a,b){var c=this.doc;this.doc.sel.somethingSelected()?c.replaceSelection("",null,"+delete"):dc(this,function(d){var e=we(c,d.head,a,b,!1);return 0>a?{from:e,to:d.head}:{from:d.head,to:e}})}),findPosV:function(a,b,c,l){var d=1;0>b&&(d=-1,b=-b);var e=M(this.doc,a);for(a=0;aa?h.from():h.to();var l=Sa(c,h.head,"div");null!=h.goalColumn&&(l.left=h.goalColumn);e.push(l.left);var f=hg(c,l,a,b);"page"==b&&h==d.sel.primary()&&md(c,Rd(c,f,"div").top-l.top);return f},Tc);if(e.length)for(var f=0;fH(nh,Xc)&&(ia.prototype[Xc]=function(a){return function(){return a.apply(this.doc,arguments)}}(Ca.prototype[Xc])); Fa(Ca);ia.inputStyles={textarea:oa,contenteditable:da};ia.defineMode=function(a){ia.defaults.mode||"null"==a||(ia.defaults.mode=a);Gd.apply(this,arguments)};ia.defineMIME=function(a,b){Ob[a]=b};ia.defineMode("null",function(){return{token:function(a){return a.skipToEnd()}}});ia.defineMIME("text/plain","null");ia.defineExtension=function(a,b){ia.prototype[a]=b};ia.defineDocExtension=function(a,b){Ca.prototype[a]=b};ia.fromTextArea=function(a,b){function c(){a.value=m.getValue()}b=b?y(b):{};b.value= a.value;!b.tabindex&&a.tabIndex&&(b.tabindex=a.tabIndex);!b.placeholder&&a.placeholder&&(b.placeholder=a.placeholder);if(null==b.autofocus){var d=D();b.autofocus=d==a||null!=a.getAttribute("autofocus")&&d==document.body}if(a.form&&(L(a.form,"submit",c),!b.leaveSubmitMethodAlone)){var e=a.form;var h=e.submit;try{var l=e.submit=function(){c();e.submit=h;e.submit();e.submit=l}}catch(r){}}b.finishInit=function(b){b.save=c;b.getTextArea=function(){return a};b.toTextArea=function(){b.toTextArea=isNaN;c(); a.parentNode.removeChild(b.getWrapperElement());a.style.display="";a.form&&(ja(a.form,"submit",c),"function"==typeof a.form.submit&&(a.form.submit=h))}};a.style.display="none";var m=ia(function(b){return a.parentNode.insertBefore(b,a.nextSibling)},b);return m};(function(a){a.off=ja;a.on=L;a.wheelEventPixels=Dg;a.Doc=Ca;a.splitLines=ve;a.countColumn=k;a.findColumn=U;a.isWordChar=O;a.Pass=yd;a.signal=ca;a.Line=Xb;a.changeEnd=nb;a.scrollbarModel=cf;a.Pos=z;a.cmpPos=K;a.modes=Hd;a.mimeModes=Ob;a.resolveMode= jb;a.getMode=nc;a.modeExtensions=Pb;a.extendMode=cd;a.copyState=db;a.startState=eb;a.innerMode=Qb;a.commands=Kc;a.keyMap=Jc;a.keyName=Of;a.isModifierKey=Lf;a.lookupKey=cc;a.normalizeKeyMap=Pg;a.StringStream=la;a.SharedTextMarker=Ic;a.TextMarker=ob;a.LineWidget=Hc;a.e_preventDefault=qa;a.e_stopPropagation=ad;a.e_stop=sb;a.addClass=J;a.contains=v;a.rmClass=Bb;a.keyNames=pb})(ia);ia.version="5.34.0";return ia}); (function(q){"object"==typeof exports&&"object"==typeof module?q(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){function I(f){for(var k={},g=0;g*\/]/.test(p)?g(null,"select-op"):"."==p&&f.match(/^-?[_a-z][_a-z0-9-]*/i)?g("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(p)?g(null,p):("u"==p||"U"==p)&&f.match(/rl(-prefix)?\(/i)||("d"==p||"D"==p)&&f.match("omain(",!0,!0)||("r"==p||"R"==p)&&f.match("egexp(",!0,!0)?(f.backUp(1),k.tokenize=v,g("property","word")):/[\w\\\-]/.test(p)?(f.eatWhile(/[\w\\\-]/), g("property","word")):g(null,null)}function x(f){return function(k,p){for(var E=!1,x;null!=(x=k.next());){if(x==f&&!E){")"==f&&k.backUp(1);break}E=!E&&"\\"==x}if(x==f||!E&&")"!=f)p.tokenize=null;return g("string","string")}}function v(f,k){f.next();f.match(/\s*["')]/,!1)?k.tokenize=null:k.tokenize=x(")");return g(null,"(")}function t(f,k,g){this.type=f;this.indent=k;this.prev=g}function S(f,k,g,p){f.context=new t(g,k.indentation()+(!1===p?0:aa),f.context);return g}function y(f){f.context.prev&&(f.context= f.context.prev);return f.context.type}function F(f,k,g,p){for(p=p||1;0