(function(){ shadow$provide[454]=function(wa,W,Ta,I){(function(q,R){"object"===typeof I&&"undefined"!==typeof Ta?Ta.exports=R():"function"===typeof define&&define.amd?define(R):(q=q||self,q.CodeMirror=R())})(this,function(){function q(y){return new RegExp("(^|\\s)"+y+"(?:$|\\s)\\s*")}function R(y){for(var V=y.childNodes.length;0$a||$a>=V)return Fa+(V-ua);Fa+=$a-ua;Fa+=xa-Fa%xa;ua=$a+1}}function k(y,V){for(var xa=0;xa=V)return ua+Math.min(qb,V-Fa);Fa+=$a-ua;Fa+=xa-Fa%xa;ua=$a+1;if(Fa>=V)return ua}}function v(y){for(;zi.length<=y;)zi.push(x(zi)+" ");return zi[y]}function x(y){return y[y.length-1]}function L(y, V){for(var xa=[],ua=0;uaxa?0xa?-1:1;;){if(V==xa)return V;var Fa=(V+xa)/2;Fa=0>ua?Math.ceil(Fa):Math.floor(Fa);if(Fa==V)return y(Fa)?V:xa;y(Fa)?xa=Fa:V=Fa+ua}}function Z(y,V,xa,ua){if(!y)return ua(V,xa,"ltr",0);for(var Fa=!1,$a=0;$aV||V==xa&&qb.to==V)ua(Math.max(qb.from,V),Math.min(qb.to,xa),1==qb.level?"rtl":"ltr", $a),Fa=!0}Fa||ua(V,xa,"ltr")}function E(y,V,xa){var ua;Yi=null;for(var Fa=0;FaV)return Fa;$a.to==V&&($a.from!=$a.to&&"before"==xa?ua=Fa:Yi=Fa);$a.from==V&&($a.from!=$a.to&&"before"!=xa?ua=Fa:Yi=Fa)}return null!=ua?ua:Yi}function aa(y,V){var xa=y.order;null==xa&&(xa=y.order=om(y.text,V));return xa}function M(y,V,xa){if(y.removeEventListener)y.removeEventListener(V,xa,!1);else if(y.detachEvent)y.detachEvent("on"+V,xa);else{var ua=(y=y._handlers)&&y[V]; ua&&(xa=k(ua,xa),-1V||V>=y.size)throw Error("There is no line "+(V+y.first)+" in the document.");for(;!y.lines;)for(var xa= 0;;++xa){var ua=y.children[xa],Fa=ua.chunkSize();if(V=y.first&&Vsa(y,V)?V:y}function Ab(y,V){return 0>sa(y,V)?y:V}function jb(y,V){if(V.linexa)return Ca(xa,Ea(y,xa).text.length);y=Ea(y,V.line).text.length;xa= V.ch;V=null==xa||xa>y?Ca(V.line,y):0>xa?Ca(V.line,0):V;return V}function Ob(y,V){for(var xa=[],ua=0;uaMd&&Fa.splice(Dc,1,Md,Fa[Dc+1],Cf);Dc+=2;Fd=Math.min(Md, Cf)}if(od)if(Cc.opaque)Fa.splice(Ce,Dc-Ce,Md,"overlay "+od),Dc=Ce+2;else for(;Cey.options.maxHighlightLength&&ya(y.doc.mode,ua.state),$a=Wb(y,V,ua);Fa&&(ua.state=Fa);V.stateAfter= ua.save(!Fa);V.styles=$a.styles;$a.classes?V.styleClasses=$a.classes:V.styleClasses&&(V.styleClasses=null);xa===y.doc.highlightFrontier&&(y.doc.modeFrontier=Math.max(y.doc.modeFrontier,++y.doc.highlightFrontier))}return V.styles}function Pa(y,V,xa){var ua=y.doc,Fa=y.display;if(!ua.mode.startState)return new re(ua,!0,V);var $a=Fb(y,V,xa),qb=$a>ua.first&&Ea(ua,$a-1).stateAfter,ub=qb?re.fromSaved(ua,qb,$a):new re(ua,Ua(ua.mode),$a);ua.iter($a,V,function(Xb){ob(y,Xb.text,ub);var Cc=ub.line;Xb.stateAfter= Cc==V-1||0==Cc%5||Cc>=Fa.viewFrom&&CcFa;Fa++){ua&&(ua[0]=Ha(y,xa).mode);var $a=y.token(V, xa);if(V.pos>V.start)return $a}throw Error("Mode "+y.name+" failed to advance stream.");}function Jc(y,V,xa,ua){var Fa=y.doc,$a=Fa.mode;V=jb(Fa,V);var qb=Ea(Fa,V.line);xa=Pa(y,V.line,xa);y=new Ri(qb.text,y.options.tabSize,xa);var ub;for(ua&&(ub=[]);(ua||y.posy.options.maxHighlightLength){ub=!1;qb&&ob(y,V,ua,Dc.pos);Dc.pos=V.length;var Md=null}else Md= ad(Zb(xa,Dc,ua.state,Fd),$a);if(Fd){var od=Fd[0].name;od&&(Md="m-"+(Md?od+" "+Md:od))}if(!ub||Cc!=Md){for(;Xbqb;--V){if(V<=$a.first)return $a.first;var ub=Ea($a,V-1),Xb=ub.stateAfter;if(Xb&&(!xa||V+(Xb instanceof $k?Xb.lookAhead:0)<=$a.modeFrontier))return V;ub=h(ub.text,null,y.options.tabSize); if(null==Fa||ua>ub)Fa=V-1,ua=ub}return Fa}function yc(y,V){y.modeFrontier=Math.min(y.modeFrontier,V);if(!(y.highlightFrontierxa;ua--){var Fa=Ea(y,ua).stateAfter;if(Fa&&(!(Fa instanceof $k)||ua+Fa.lookAhead=y:Xb.to>y);(qb||=[]).push(new Vc(Cc,Xb.from,Dc?null:Xb.to))}}xa=qb;var Fd;if(ua)for(qb=0;qb< ua.length;++qb)if(ub=ua[qb],Xb=ub.marker,null==ub.to||(Xb.inclusiveRight?ub.to>=Fa:ub.to>Fa)||ub.from==Fa&&"bookmark"==Xb.type&&(!$a||ub.marker.insertLeft))Cc=null==ub.from||(Xb.inclusiveLeft?ub.from<=Fa:ub.fromsa(qb.to,Fa.from)||0Xb||!xa.inclusiveLeft&&!Xb)&&ub.push({from:qb.from, to:Fa.from});(0Yd(Fa,xa.marker)))var Fa=xa.marker;return Fa}function Qd(y,V,xa,ua,Fa){y=Ea(y,V);if(y=ff&&y.markedSpans)for(V=0;V=Xb||0>=ub&&0<=Xb)&&(0>=ub&&($a.marker.inclusiveRight&&Fa.inclusiveLeft?0<=sa(qb.to,xa):0=sa(qb.from,ua):0>sa(qb.from,ua))))return!0}}}function ld(y){for(var V;V=td(y,!0);)y=V.find(-1,!0).line;return y}function Sd(y,V){y=Ea(y,V);var xa=ld(y);return y==xa?V:eb(xa)}function Nb(y,V){if(V>y.lastLine())return V;var xa=Ea(y,V);if(!fc(y,xa))return V; for(;y=td(xa,!1);)xa=y.find(1,!0).line;return eb(xa)+1}function fc(y,V){var xa=ff&&V.markedSpans;if(xa)for(var ua,Fa=0;FaV.maxLineLength&&(V.maxLineLength=ua,V.maxLine=xa)})}function uc(y,V){if(!y||/^\s*$/.test(y))return null;V=V.addModeClass?fj:dg;return V[y]||(V[y]=y.replace(/\S+/g,"cm-$\x26"))}function Uc(y, V){var xa=d("span",null,null,Gd?"padding-right: .1px":null);xa={pre:d("pre",[xa],"CodeMirror-line"),content:xa,col:0,pos:0,cm:y,trailingSpace:!1,splitSpaces:y.getOption("lineWrapping")};V.measure={};for(var ua=0;ua<=(V.rest?V.rest.length:0);ua++){var Fa=ua?V.rest[ua-1]:V.line,$a=void 0;xa.pos=0;xa.addToken=Ld;var qb=y.display.measure;if(null!=am)qb=am;else{var ub=A(qb,document.createTextNode("AخA")),Xb=pg(ub,0,1).getBoundingClientRect();ub=pg(ub,1,2).getBoundingClientRect();R(qb);qb=Xb&&Xb.left!= Xb.right?am=3>ub.right-Xb.right:!1}qb&&($a=aa(Fa,y.doc.direction))&&(xa.addToken=be(xa.addToken,$a));xa.map=[];var Cc=V!=y.display.externalMeasured&&eb(Fa);a:{var Dc=ub=Xb=qb=void 0,Fd=void 0,Md=void 0,od=void 0;$a=xa;Cc=hc(y,Fa,Cc);var Ce=Fa.markedSpans,Cf=Fa.text,Ng=0;if(Ce)for(var tj=Cf.length,yg=0,nh=1,ai="",Bi=0;;){if(Bi==yg){Fd=Dc=ub=Md="";Xb=qb=null;Bi=Infinity;for(var Gh=[],ig=void 0,Rf=0;Rfyg||ih.collapsed&&Ch.to==yg&&Ch.from==yg)){null!=Ch.to&&Ch.to!=yg&&Bi>Ch.to&&(Bi=Ch.to,Dc="");ih.className&&(Fd+=" "+ih.className);ih.css&&(Md=(Md?Md+";":"")+ih.css);ih.startStyle&&Ch.from==yg&&(ub+=" "+ih.startStyle);ih.endStyle&&Ch.to==Bi&&(ig||=[]).push(ih.endStyle,Ch.to);ih.title&&((qb||={}).title=ih.title);if(ih.attributes)for(var Cj in ih.attributes)(qb||={})[Cj]=ih.attributes[Cj];ih.collapsed&&(!Xb||0>Yd(Xb.marker,ih))&&(Xb=Ch)}else Ch.from>yg&&Bi>Ch.from&& (Bi=Ch.from)}if(ig)for(Rf=0;Rf=tj)break;for(Gh=Math.min(tj,Bi);;){if(ai){ig=yg+ai.length;Xb||(Rf=ig>Gh?ai.slice(0,Gh-yg):ai,$a.addToken($a,Rf,od?od+Fd:Fd,ub,yg+Rf.length==Bi?Dc:"",Md,qb));if(ig>=Gh){ai=ai.slice(Gh-yg);yg=Gh;break}yg=ig;ub=""}ai=Cf.slice(Ng, Ng=Cc[nh++]);od=uc(Cc[nh++],$a.cm.options)}}else for(qb=1;qb=Dc.offsetWidth&&2Bd))),ub=cn?t("span","​"):t("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px"),ub.setAttribute("cm-text",""),$a.call(Fa,0,0,Xb.call(qb,ub)));0==ua?(V.measure.map=xa.map,V.measure.cache={}):((V.measure.maps||(V.measure.maps=[])).push(xa.map),(V.measure.caches||(V.measure.caches=[])).push({}))}Gd&&(Cj=xa.content.lastChild,/\bcm-tab\b/.test(Cj.className)||Cj.querySelector&&Cj.querySelector(".cm-tab"))&& (xa.content.className="cm-tab-wrap-hack");S(y,"renderLine",y,V.line,xa.pre);xa.pre.className&&(xa.textClass=a(xa.pre.className,xa.textClass||""));return xa}function cd(y){var V=t("span","•","cm-invalidchar");V.title="\\u"+y.charCodeAt(0).toString(16);V.setAttribute("aria-label",V.title);return V}function Ld(y,V,xa,ua,Fa,$a,qb){if(V){if(y.splitSpaces){var ub=y.trailingSpace;if(1Bd?ub.appendChild(t("span",[Ce])):ub.appendChild(Ce);y.map.push(y.pos,y.pos+od,Ce);y.col+=od;y.pos+=od}if(!Md)break;Fd+=od+1;"\t"==Md[0]?(Md=y.cm.options.tabSize,Md-=y.col%Md,od=ub.appendChild(t("span", v(Md),"cm-tab")),od.setAttribute("role","presentation"),od.setAttribute("cm-text","\t"),y.col+=Md):("\r"==Md[0]||"\n"==Md[0]?(od=ub.appendChild(t("span","\r"==Md[0]?"␍":"␤","cm-invalidchar")),od.setAttribute("cm-text",Md[0])):(od=y.cm.options.specialCharPlaceholder(Md[0]),od.setAttribute("cm-text",Md[0]),Ed&&9>Bd?ub.appendChild(t("span",[od])):ub.appendChild(od)),y.col+=1);y.map.push(y.pos,y.pos+1,od);y.pos++}}else y.col+=V.length,ub=document.createTextNode(Xb),y.map.push(y.pos,y.pos+V.length,ub), Ed&&9>Bd&&(Dc=!0),y.pos+=V.length;y.trailingSpace=32==Xb.charCodeAt(V.length-1);if(xa||ua||Fa||Dc||$a||qb){V=xa||"";ua&&(V+=ua);Fa&&(V+=Fa);ua=t("span",[ub],V,$a);if(qb)for(var Cf in qb)qb.hasOwnProperty(Cf)&&"style"!=Cf&&"class"!=Cf&&ua.setAttribute(Cf,qb[Cf]);return y.content.appendChild(ua)}y.content.appendChild(ub)}}function be(y,V){return function(xa,ua,Fa,$a,qb,ub,Xb){Fa=Fa?Fa+" cm-force-border":"cm-force-border";for(var Cc=xa.pos,Dc=Cc+ua.length;;){for(var Fd=void 0,Md=0;MdCc&&Fd.from<=Cc);Md++);if(Fd.to>=Dc)return y(xa,ua,Fa,$a,qb,ub,Xb);y(xa,ua.slice(0,Fd.to-Cc),Fa,$a,null,ub,Xb);$a=null;ua=ua.slice(Fd.to-Cc);Cc=Fd.to}}}function ue(y,V,xa,ua){var Fa=!ua&&xa.widgetNode;Fa&&y.map.push(y.pos,y.pos+V,Fa);!ua&&y.cm.display.input.needsContentAttribute&&(Fa||=y.content.appendChild(document.createElement("span")),Fa.setAttribute("cm-marker",xa.id));Fa&&(y.cm.display.input.setUneditable(Fa),y.content.appendChild(Fa));y.pos+=V;y.trailingSpace=!1}function qd(y,V, xa){for(var ua=this.line=V,Fa;ua=td(ua,!1);)ua=ua.find(1,!0).line,(Fa||=[]).push(ua);this.size=(this.rest=Fa)?eb(x(this.rest))-xa+1:1;this.node=this.text=null;this.hidden=fc(y,V)}function vc(y,V,xa){var ua=[],Fa;for(Fa=V;FaBd&&(y.node.style.zIndex=2));return y.node}function Lc(y,V){var xa=y.display.externalMeasured;return xa&&xa.line==V.line?(y.display.externalMeasured=null, V.measure=xa.measure,xa.built):Uc(y,V)}function Vb(y,V){var xa=V.bgClass?V.bgClass+" "+(V.line.bgClass||""):V.line.bgClass;xa&&(xa+=" CodeMirror-linebackground");if(V.background)xa?V.background.className=xa:(V.background.parentNode.removeChild(V.background),V.background=null);else if(xa){var ua=Sb(V);V.background=ua.insertBefore(t("div",null,xa),ua.firstChild);y.display.input.setUneditable(V.background)}V.line.wrapClass?Sb(V).className=V.line.wrapClass:V.node!=V.text&&(V.node.className="");V.text.className= (V.textClass?V.textClass+" "+(V.line.textClass||""):V.line.textClass)||""}function dd(y,V,xa,ua){V.gutter&&(V.node.removeChild(V.gutter),V.gutter=null);V.gutterBackground&&(V.node.removeChild(V.gutterBackground),V.gutterBackground=null);if(V.line.gutterClass){var Fa=Sb(V);V.gutterBackground=t("div",null,"CodeMirror-gutter-background "+V.line.gutterClass,"left: "+(y.options.fixedGutter?ua.fixedPos:-ua.gutterTotalWidth)+"px; width: "+ua.gutterTotalWidth+"px");y.display.input.setUneditable(V.gutterBackground); Fa.insertBefore(V.gutterBackground,V.text)}Fa=V.line.gutterMarkers;if(y.options.lineNumbers||Fa){var $a=Sb(V),qb=V.gutter=t("div",null,"CodeMirror-gutter-wrapper","left: "+(y.options.fixedGutter?ua.fixedPos:-ua.gutterTotalWidth)+"px");y.display.input.setUneditable(qb);$a.insertBefore(qb,V.text);V.line.gutterClass&&(qb.className+=" "+V.line.gutterClass);!y.options.lineNumbers||Fa&&Fa["CodeMirror-linenumbers"]||(V.lineNumber=qb.appendChild(t("div",oa(y.options,xa),"CodeMirror-linenumber CodeMirror-gutter-elt", "left: "+ua.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+y.display.lineNumInnerWidth+"px")));if(Fa)for(V=0;Vxa)return{map:y.measure.maps[V],cache:y.measure.caches[V],before:!0}}function Ag(y,V){if(V>=y.display.viewFrom&&V=y.lineN&&VMd;Md++){for(;ub&&F(V.line.text.charAt(qb.coverStart+ ub));)--ub;for(;qb.coverStart+XbBd&&0==ub&&Xb==qb.coverEnd-qb.coverStart)var od=ua.parentNode.getBoundingClientRect();else{od=pg(ua,ub,Xb).getClientRects();Xb=$d;if("left"==Dc)for(Cc=0;CcBd&&((Md=!window.screen||null==screen.logicalXDPI||screen.logicalXDPI== screen.deviceXDPI)||(null!=Jh?Md=Jh:(Dc=A(y.display.measure,t("span","x")),Md=Dc.getBoundingClientRect(),Dc=pg(Dc,0,1).getBoundingClientRect(),Md=Jh=1Bd)|| ub||od&&(od.left||od.right)||(od=(od=ua.parentNode.getClientRects()[0])?{left:od.left,right:od.left+kd(y.display),top:od.top,bottom:od.bottom}:$d);ua=od.top-V.rect.top;ub=od.bottom-V.rect.top;Md=(ua+ub)/2;Dc=V.view.measure.heights;for(qb=0;qbV)$a=Xb-ub,Fa=$a-1,V>=Xb&&(qb="right");if(null!=Fa){ua=y[Cc+2];ub==Xb&&xa==(ua.insertLeft?"left":"right")&&(qb=xa);if("left"==xa&&0==Fa)for(;Cc&&y[Cc-2]==y[Cc-3]&&y[Cc-1].insertLeft;)ua=y[(Cc-=3)+2], qb="left";if("right"==xa&&Fa==Xb-ub)for(;Cc=ua.text.length?(Cc=ua.text.length,V="before"):0>=Cc&&(Cc=0,V="after");if(!Xb)return qb("before"==V?Cc-1:Cc,"before"==V);var Dc=E(Xb,Cc,V),Fd=Yi;Dc=ub(Cc,Dc,"before"==V);null!=Fd&&(Dc.other=ub(Cc,Fd,"before"!=V));return Dc}function Eg(y,V){var xa=0;V=jb(y.doc,V);y.options.lineWrapping||(xa=kd(y.display)*V.ch);V=Ea(y.doc, V.line);y=rb(V)+y.display.lineSpace.offsetTop;return{left:xa,right:xa,top:y,bottom:y+V.height}}function uf(y,V,xa,ua,Fa){y=Ca(y,V,xa);y.xRel=Fa;ua&&(y.outside=ua);return y}function zb(y,V,xa){var ua=y.doc;xa+=y.display.viewOffset;if(0>xa)return uf(ua.first,0,null,-1,-1);var Fa=db(ua,xa),$a=ua.first+ua.size-1;if(Fa>$a)return uf(ua.first+ua.size-1,Ea(ua,$a).text.length,null,1,1);0>V&&(V=0);for(var qb=Ea(ua,Fa);;){$a=bb(y,qb,Fa,V,xa);var ub=void 0;var Xb=$a.ch+(0<$a.xRel||0<$a.outside?1:0);if(qb=ff&& qb.markedSpans)for(var Cc=0;CcXb)&&(!ub||0>Yd(ub,Dc.marker))&&(ub=Dc.marker)}if(!ub)return $a;$a=ub.find(1);if($a.line==Fa)return $a;qb=Ea(ua,Fa=$a.line)}}function ta(y,V,xa,ua){ua-=me(V);V=V.text.length;var Fa=T(function($a){return Cb(y,xa,$a-1).bottom<=ua},V,0);V=T(function($a){return Cb(y,xa,$a).top>ua},Fa,V);return{begin:Fa,end:V}}function ra(y,V,xa,ua){xa||=ab(y,V);ua=Xd(y,V,Cb(y,xa,ua),"line").top; return ta(y,V,xa,ua)}function Ia(y,V,xa,ua){return y.bottom<=xa?!1:y.top>xa?!0:(ua?y.left:y.right)>V}function bb(y,V,xa,ua,Fa){Fa-=rb(V);var $a=ab(y,V),qb=me(V),ub=0,Xb=V.text.length,Cc=!0,Dc=aa(V,y.doc.direction);Dc&&(Dc=(y.options.lineWrapping?kc:Ib)(y,V,xa,$a,Dc,ua,Fa),ub=(Cc=1!=Dc.level)?Dc.from:Dc.to-1,Xb=Cc?Dc.to:Dc.from-1);var Fd=null,Md=null;Dc=T(function(Ce){var Cf=Cb(y,$a,Ce);Cf.top+=qb;Cf.bottom+=qb;if(!Ia(Cf,ua,Fa,!1))return!1;Cf.top<=Fa&&Cf.left<=ua&&(Fd=Ce,Md=Cf);return!0},ub,Xb);var od= !1;Md?(ub=ua-Md.left=od.bottom?1:0);Dc=ha(V.text,Dc,1);return uf(xa,Dc,Cc,od,ua-ub)}function Ib(y,V,xa,ua,Fa,$a,qb){var ub=T(function(Dc){Dc=Fa[Dc];var Fd=1!=Dc.level;return Ia(gf(y,Ca(xa,Fd?Dc.to:Dc.from,Fd?"before":"after"), "line",V,ua),$a,qb,!0)},0,Fa.length-1),Xb=Fa[ub];if(0qb&&(Xb=Fa[ub-1])}return Xb}function kc(y,V,xa,ua,Fa,$a,qb){qb=ta(y,V,ua,qb);xa=qb.begin;qb=qb.end;/\s/.test(V.text.charAt(qb-1))&&qb--;for(var ub=V=null,Xb=0;Xb=qb||Cc.to<=xa)){var Dc=Cb(y,ua,1!=Cc.level?Math.min(qb,Cc.to)-1:Math.max(xa,Cc.from)).right;Dc=Dc<$a?$a-Dc+1E9:Dc-$a;if(!V||ub>Dc)V= Cc,ub=Dc}}V||=Fa[Fa.length-1];V.fromqb&&(V={from:V.from,to:qb,level:V.level});return V}function Rc(y){if(null!=y.cachedTextHeight)return y.cachedTextHeight;if(null==Ke){Ke=t("pre",null,"CodeMirror-line-like");for(var V=0;49>V;++V)Ke.appendChild(document.createTextNode("x")),Ke.appendChild(t("br"));Ke.appendChild(document.createTextNode("x"))}A(y.measure,Ke);V=Ke.offsetHeight/50;3=y.display.viewTo)return null;V-=y.display.viewFrom;if(0>V)return null;y=y.display.view;for(var xa=0;xaV)return xa}function Xf(y,V,xa,ua){null==V&&(V=y.doc.first);null==xa&&(xa=y.doc.first+y.doc.size);ua||=0;var Fa=y.display;ua&&xaV)&&(Fa.updateLineNumbers=V);y.curOp.viewChanged=!0;if(V>=Fa.viewTo)ff&&Sd(y.doc,V)Fa.viewFrom?ki(y):(Fa.viewFrom+=ua,Fa.viewTo+=ua);else if(V<=Fa.viewFrom&&xa>=Fa.viewTo)ki(y);else if(V<=Fa.viewFrom){var $a=vh(y,xa,xa+ua,1);$a?(Fa.view=Fa.view.slice($a.index),Fa.viewFrom=$a.lineN,Fa.viewTo+=ua):ki(y)}else if(xa>=Fa.viewTo)($a=vh(y,V,V,-1))?(Fa.view=Fa.view.slice(0,$a.index),Fa.viewTo=$a.lineN):ki(y);else{$a=vh(y,V,V,-1);var qb=vh(y,xa,xa+ua,1);$a&&qb?(Fa.view=Fa.view.slice(0,$a.index).concat(vc(y,$a.lineN,qb.lineN)).concat(Fa.view.slice(qb.index)), Fa.viewTo+=ua):ki(y)}if(y=Fa.externalMeasured)xa=Fa.lineN&&V=ua.viewTo||(y=ua.view[Af(y,V)],null!=y.node&&(y=y.changes||(y.changes=[]),-1==k(y,xa)&&y.push(xa)))}function ki(y){y.display.viewFrom=y.display.viewTo=y.doc.first;y.display.view=[];y.display.viewOffset=0}function vh(y, V,xa,ua){var Fa=Af(y,V),$a=y.display.view;if(!ff||xa==y.doc.first+y.doc.size)return{index:Fa,lineN:xa};for(var qb=y.display.viewFrom,ub=0;ubua?0:$a.length-1))return null;xa+=ua*$a[Fa-(0>ua?1:0)].size;Fa+=ua}return{index:Fa,lineN:xa}}function ri(y){y=y.display.view;for(var V=0,xa=0;xa=y.display.viewTo||ub.to().lineCe&&(Ce=0);Ce=Math.round(Ce);Ng=Math.round(Ng);ub.appendChild(t("div",null,"CodeMirror-selected","position: absolute; left: "+od+"px;\n top: "+Ce+"px; width: "+(null==Cf?Dc-od:Cf)+"px;\n height: "+(Ng-Ce)+"px"))}function Fa(od,Ce,Cf){function Ng(ig,Rf){return we(y,Ca(od,ig),"div",yg,Rf)}function tj(ig,Rf,Ch){ig=ra(y,yg,null,ig);Rf="ltr"==Rf==("after"==Ch)?"left":"right";Ch="after"== Ch?ig.begin:ig.end-(/\s/.test(yg.text.charAt(ig.end-1))?2:1);return Ng(Ch,Rf)[Rf]}var yg=Ea(qb,od),nh=yg.text.length,ai,Bi,Gh=aa(yg,qb.direction);Z(Gh,Ce||0,null==Cf?nh:Cf,function(ig,Rf,Ch,ih){var Cj="ltr"==Ch,li=Ng(ig,Cj?"left":"right"),Xj=Ng(Rf-1,Cj?"right":"left"),Pl=null==Ce&&0==ig,Sk=null==Cf&&Rf==nh,im=0==ih;ih=!Gh||ih==Gh.length-1;3>=Xj.top-li.top?(Rf=(Fd?Pl:Sk)&&im?Cc:(Cj?li:Xj).left,ua(Rf,li.top,((Fd?Sk:Pl)&&ih?Dc:(Cj?Xj:li).right)-Rf,li.bottom)):(Cj?(Cj=Fd&&Pl&&im?Cc:li.left,Pl=Fd?Dc:tj(ig, Ch,"before"),ig=Fd?Cc:tj(Rf,Ch,"after"),Sk=Fd&&Sk&&ih?Dc:Xj.right):(Cj=Fd?tj(ig,Ch,"before"):Cc,Pl=!Fd&&Pl&&im?Dc:li.right,ig=!Fd&&Sk&&ih?Cc:Xj.left,Sk=Fd?tj(Rf,Ch,"after"):Dc),ua(Cj,li.top,Pl-Cj,li.bottom),li.bottombf(li,ai))ai=li;0>bf(Xj,ai)&&(ai=Xj);if(!Bi||0>bf(li,Bi))Bi=li;0>bf(Xj,Bi)&&(Bi=Xj)});return{start:ai,end:Bi}}var $a=y.display,qb=y.doc,ub=document.createDocumentFragment(),Xb=pd(y.display),Cc=Xb.left,Dc=Math.max($a.sizerWidth, Je(y)-$a.sizer.offsetLeft)-Xb.right,Fd="ltr"==qb.direction;$a=V.from();V=V.to();if($a.line==V.line)Fa($a.line,$a.ch,V.ch);else{var Md=Ea(qb,$a.line);Xb=Ea(qb,V.line);Xb=ld(Md)==ld(Xb);$a=Fa($a.line,$a.ch,Xb?Md.text.length+1:null).end;V=Fa(V.line,Xb?0:null,V.ch).start;Xb&&($a.topy.options.cursorBlinkRate&&(V.cursorDiv.style.visibility="hidden")}}function Rl(y){y.state.focused||(y.display.input.focus(),jg(y))}function Gj(y){y.state.delayingBlurEvent=!0;setTimeout(function(){y.state.delayingBlurEvent&&(y.state.delayingBlurEvent=!1,Xg(y))}, 100)}function jg(y,V){y.state.delayingBlurEvent&&(y.state.delayingBlurEvent=!1);"nocursor"!=y.options.readOnly&&(y.state.focused||(S(y,"focus",y,V),y.state.focused=!0,C(y.display.wrapper,"CodeMirror-focused"),y.curOp||y.display.selForContextMenu==y.doc.sel||(y.display.input.reset(),Gd&&setTimeout(function(){return y.display.input.reset(!0)},20)),y.display.input.receivedFocus()),Fi(y))}function Xg(y,V){y.state.delayingBlurEvent||(y.state.focused&&(S(y,"blur",y,V),y.state.focused=!1,Dg(y.display.wrapper, "CodeMirror-focused")),clearInterval(y.display.blinker),setTimeout(function(){y.state.focused||(y.display.shift=!1)},150))}function Ik(y){for(var V=y.display,xa=V.lineDiv.offsetTop,ua=0;uaBd){$a=Fa.node.offsetTop+Fa.node.offsetHeight;var ub=$a-xa;xa=$a}else{var Xb=Fa.node.getBoundingClientRect();ub=Xb.bottom-Xb.top;!$a&&Fa.text.firstChild&&(qb=Fa.text.firstChild.getBoundingClientRect().right-Xb.left-1)}$a= Fa.line.height-ub;if(.005<$a||-.005>$a)if(Ma(Fa.line,ub),Xh(Fa.line),Fa.rest)for(ub=0;uby.display.sizerWidth&&(qb=Math.ceil(qb/kd(y.display)),qb>y.display.maxLineLength&&(y.display.maxLineLength=qb,y.display.maxLine=Fa.line,y.display.maxLineChanged=!0))}}}function Xh(y){if(y.widgets)for(var V=0;V=Fa&&(ua=db(V,rb(Ea(V,xa))-y.wrapper.clientHeight),Fa=xa)}return{from:ua,to:Math.max(Fa,ua+1)}}function ek(y,V){var xa=y.display,ua=Rc(y.display);0>V.top&&(V.top=0);var Fa=y.curOp&&null!=y.curOp.scrollTop?y.curOp.scrollTop: xa.scroller.scrollTop,$a=cg(y),qb={};V.bottom-V.top>$a&&(V.bottom=V.top+$a);var ub=y.doc.height+ee(xa),Xb=V.topub-ua;V.topFa+$a&&($a=Math.min(V.top,(ua?ub:V.bottom)-$a),$a!=Fa&&(qb.scrollTop=$a));Fa=y.curOp&&null!=y.curOp.scrollLeft?y.curOp.scrollLeft:xa.scroller.scrollLeft;y=Je(y)-(y.options.fixedGutter?xa.gutters.offsetWidth:0);if(xa=V.right-V.left>y)V.right=V.left+y;10>V.left?qb.scrollLeft=0:V.lefty+Fa-3&&(qb.scrollLeft=V.right+(xa?0:10)-y);return qb}function Jk(y,V){null!=V&&(Mj(y),y.curOp.scrollTop=(null==y.curOp.scrollTop?y.doc.scrollTop:y.curOp.scrollTop)+V)}function wh(y){Mj(y);var V=y.getCursor();y.curOp.scrollToPos={from:V,to:V,margin:y.options.cursorScrollMargin}}function si(y,V,xa){null==V&&null==xa||Mj(y);null!=V&&(y.curOp.scrollLeft=V);null!=xa&&(y.curOp.scrollTop=xa)}function Mj(y){var V=y.curOp.scrollToPos;if(V){y.curOp.scrollToPos=null;var xa=Eg(y,V.from),ua=Eg(y,V.to); tm(y,xa,ua,V.margin)}}function tm(y,V,xa,ua){V=ek(y,{left:Math.min(V.left,xa.left),top:Math.min(V.top,xa.top)-ua,right:Math.max(V.right,xa.right),bottom:Math.max(V.bottom,xa.bottom)+ua});si(y,V.scrollLeft,V.scrollTop)}function ui(y,V){2>Math.abs(y.doc.scrollTop-V)||(Oc||ik(y,{top:V}),Hj(y,V,!0),Oc&&ik(y),Gi(y,100))}function Hj(y,V,xa){V=Math.max(0,Math.min(y.display.scroller.scrollHeight-y.display.scroller.clientHeight,V));if(y.display.scroller.scrollTop!=V||xa)y.doc.scrollTop=V,y.display.scrollbars.setScrollTop(V), y.display.scroller.scrollTop!=V&&(y.display.scroller.scrollTop=V)}function Nj(y,V,xa,ua){V=Math.max(0,Math.min(V,y.display.scroller.scrollWidth-y.display.scroller.clientWidth));(xa?V==y.doc.scrollLeft:2>Math.abs(y.doc.scrollLeft-V))&&!ua||(y.doc.scrollLeft=V,Th(y),y.display.scroller.scrollLeft!=V&&(y.display.scroller.scrollLeft=V),y.display.scrollbars.setScrollLeft(V))}function Bl(y){var V=y.display,xa=V.gutters.offsetWidth,ua=Math.round(y.doc.height+ee(y.display));return{clientHeight:V.scroller.clientHeight, viewHeight:V.wrapper.clientHeight,scrollWidth:V.scroller.scrollWidth,clientWidth:V.scroller.clientWidth,viewWidth:V.wrapper.clientWidth,barLeft:y.options.fixedGutter?xa:0,docHeight:ua,scrollHeight:ua+mc(y)+V.barHeight,nativeBarWidth:V.nativeBarWidth,gutterWidth:xa}}function pl(y,V){V||=Bl(y);var xa=y.display.barWidth,ua=y.display.barHeight;Sl(y,V);for(V=0;4>V&&xa!=y.display.barWidth||ua!=y.display.barHeight;V++)xa!=y.display.barWidth&&y.options.lineWrapping&&Ik(y),Sl(y,Bl(y)),xa=y.display.barWidth, ua=y.display.barHeight}function Sl(y,V){var xa=y.display,ua=xa.scrollbars.update(V);xa.sizer.style.paddingRight=(xa.barWidth=ua.right)+"px";xa.sizer.style.paddingBottom=(xa.barHeight=ua.bottom)+"px";xa.heightForcer.style.borderBottom=ua.bottom+"px solid transparent";ua.right&&ua.bottom?(xa.scrollbarFiller.style.display="block",xa.scrollbarFiller.style.height=ua.bottom+"px",xa.scrollbarFiller.style.width=ua.right+"px"):xa.scrollbarFiller.style.display="";ua.bottom&&y.options.coverGutterNextToScrollbar&& y.options.fixedGutter?(xa.gutterFiller.style.display="block",xa.gutterFiller.style.height=ua.bottom+"px",xa.gutterFiller.style.width=V.gutterWidth+"px"):xa.gutterFiller.style.display=""}function gk(y){y.display.scrollbars&&(y.display.scrollbars.clear(),y.display.scrollbars.addClass&&Dg(y.display.wrapper,y.display.scrollbars.addClass));y.display.scrollbars=new Ol[y.options.scrollbarStyle](function(V){y.display.wrapper.insertBefore(V,y.display.scrollbarFiller);ug(V,"mousedown",function(){y.state.focused&& setTimeout(function(){return y.display.input.focus()},0)});V.setAttribute("cm-not-content","true")},function(V,xa){"horizontal"==xa?Nj(y,V):ui(y,V)},y);y.display.scrollbars.addClass&&C(y.display.wrapper,y.display.scrollbars.addClass)}function hk(y){y.curOp={cm:y,viewChanged:!1,startHeight:y.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1, id:++pj};y=y.curOp;Fh?Fh.ops.push(y):y.ownsGroup=Fh={ops:[y],delayedCallbacks:[]}}function xk(y){(y=y.curOp)&&Nc(y,function(V){for(var xa=0;xa=$a.viewTo)||$a.maxLineChanged&&Fa.options.lineWrapping;ua.update=ua.mustUpdate&&new Qi(Fa,ua.mustUpdate&&{top:ua.scrollTop,ensure:ua.scrollToPos},ua.forceUpdate)}for(xa=0;xaFd;Fd++){var Md=!1;ub=gf(Fa,Xb);var od=Cc&&Cc!=Xb?gf(Fa,Cc):ub;ub={left:Math.min(ub.left,od.left),top:Math.min(ub.top,od.top)-Dc,right:Math.max(ub.left,od.left),bottom:Math.max(ub.bottom,od.bottom)+Dc};od=ek(Fa,ub);var Ce=Fa.doc.scrollTop,Cf=Fa.doc.scrollLeft;null!=od.scrollTop&&(ui(Fa, od.scrollTop),1Cc.top+Fd.top?Xb=!0:Cc.bottom+Fd.top>(window.innerHeight||document.documentElement.clientHeight)&&(Xb=!1),null==Xb||Oe||(Cc=t("div","​",null,"position: absolute;\n top: "+(Cc.top-Dc.viewOffset-Fa.display.lineSpace.offsetTop)+ "px;\n height: "+(Cc.bottom-Cc.top+mc(Fa)+Dc.barHeight)+"px;\n left: "+Cc.left+"px; width: "+Math.max(2,Cc.right-Cc.left)+"px;"),Fa.display.lineSpace.appendChild(Cc),Cc.scrollIntoView(Xb),Fa.display.lineSpace.removeChild(Cc)))}Cc=ua.maybeHiddenMarkers;Xb=ua.maybeUnhiddenMarkers;if(Cc)for(Dc=0;Dc=y.display.viewTo)){var xa=+new Date+y.options.workTime,ua=Pa(y,V.highlightFrontier),Fa=[];V.iter(ua.line,Math.min(V.first+V.size,y.display.viewTo+500),function($a){if(ua.line>=y.display.viewFrom){var qb=$a.styles,ub=$a.text.length>y.options.maxHighlightLength? ya(V.mode,ua.state):null,Xb=Wb(y,$a,ua,!0);ub&&(ua.state=ub);$a.styles=Xb.styles;ub=$a.styleClasses;(Xb=Xb.classes)?$a.styleClasses=Xb:ub&&($a.styleClasses=null);Xb=!qb||qb.length!=$a.styles.length||ub!=Xb&&(!ub||!Xb||ub.bgClass!=Xb.bgClass||ub.textClass!=Xb.textClass);for(ub=0;!Xb&&ub xa)return Gi(y,y.options.workDelay),!0});V.highlightFrontier=ua.line;V.modeFrontier=Math.max(V.modeFrontier,ua.line);Fa.length&&Ye(y,function(){for(var $a=0;$a=xa.viewFrom&&V.visible.to<=xa.viewTo&&(null==xa.updateLineNumbers||xa.updateLineNumbers>=xa.viewTo)&&xa.renderedView==xa.view&&0==ri(y))return!1;bl(y)&&(ki(y),V.dims=ye(y));var Fa=ua.first+ua.size, $a=Math.max(V.visible.from-y.options.viewportMargin,ua.first),qb=Math.min(Fa,V.visible.to+y.options.viewportMargin);xa.viewFrom<$a&&20>$a-xa.viewFrom&&($a=Math.max(ua.first,xa.viewFrom));xa.viewTo>qb&&20>xa.viewTo-qb&&(qb=Math.min(Fa,xa.viewTo));ff&&($a=Sd(y.doc,$a),qb=Nb(y.doc,qb));ua=$a!=xa.viewFrom||qb!=xa.viewTo||xa.lastWrapHeight!=V.wrapperHeight||xa.lastWrapWidth!=V.wrapperWidth;Fa=y.display;0==Fa.view.length||$a>=Fa.viewTo||qb<=Fa.viewFrom?(Fa.view=vc(y,$a,qb),Fa.viewFrom=$a):(Fa.viewFrom> $a?Fa.view=vc(y,$a,Fa.viewFrom).concat(Fa.view):Fa.viewFrom<$a&&(Fa.view=Fa.view.slice(Af(y,$a))),Fa.viewFrom=$a,Fa.viewToqb&&(Fa.view=Fa.view.slice(0,Af(y,qb))));Fa.viewTo=qb;xa.viewOffset=rb(Ea(y.doc,xa.viewFrom));y.display.mover.style.top=xa.viewOffset+"px";qb=ri(y);if(!ua&&0==qb&&!V.force&&xa.renderedView==xa.view&&(null==xa.updateLineNumbers||xa.updateLineNumbers>=xa.viewTo))return!1;y.hasFocus()?$a=null:($a=B())&&w(y.display.lineDiv,$a)? ($a={activeElt:$a},window.getSelection&&(Fa=window.getSelection(),Fa.anchorNode&&Fa.extend&&w(y.display.lineDiv,Fa.anchorNode)&&($a.anchorNode=Fa.anchorNode,$a.anchorOffset=Fa.anchorOffset,$a.focusNode=Fa.focusNode,$a.focusOffset=Fa.focusOffset))):$a=null;4=y.display.viewFrom&&V.visible.to<=y.display.viewTo)break;if(!di(y,V))break;Ik(y);ua=Bl(y);ci(y);pl(y,ua);Li(y,ua);V.force=!1}V.signal(y,"update",y);if(y.display.viewFrom!=y.display.reportedViewFrom||y.display.viewTo!=y.display.reportedViewTo)V.signal(y,"viewportChange", y,y.display.viewFrom,y.display.viewTo),y.display.reportedViewFrom=y.display.viewFrom,y.display.reportedViewTo=y.display.viewTo}function ik(y,V){V=new Qi(y,V);if(di(y,V)){Ik(y);Gg(y,V);var xa=Bl(y);ci(y);pl(y,xa);Li(y,xa);V.finish()}}function Kk(y,V,xa){function ua(Md){var od=Md.nextSibling;Gd&&Tf&&y.display.currentWheelTarget==Md?Md.style.display="none":Md.parentNode.removeChild(Md);return od}var Fa=y.display,$a=y.options.lineNumbers,qb=Fa.lineDiv,ub=qb.firstChild,Xb=Fa.view;Fa=Fa.viewFrom;for(var Cc= 0;CcBd&&(this.gutters.style.zIndex=-1,this.scroller.style.paddingRight=0);Gd||Oc&&cj||(this.scroller.draggable=!0);y&&(y.appendChild?y.appendChild(this.wrapper):y(this.wrapper));this.reportedViewFrom=this.reportedViewTo=this.viewFrom=this.viewTo=V.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;this.gutterSpecs=yk(ua.gutters,ua.lineNumbers);Oj(this);xa.init(this)}function jk(y){var V=y.wheelDeltaX,xa=y.wheelDeltaY;null==V&&y.detail&&y.axis==y.HORIZONTAL_AXIS&& (V=y.detail);null==xa&&y.detail&&y.axis==y.VERTICAL_AXIS?xa=y.detail:null==xa&&(xa=y.wheelDelta);return{x:V,y:xa}}function Ci(y){y=jk(y);y.x*=Ge;y.y*=Ge;return y}function rj(y,V){var xa=jk(V),ua=xa.x;xa=xa.y;var Fa=y.display,$a=Fa.scroller,qb=$a.scrollWidth>$a.clientWidth,ub=$a.scrollHeight>$a.clientHeight;if(ua&&qb||xa&&ub){if(xa&&Tf&&Gd){qb=V.target;var Xb=Fa.view;a:for(;qb!=$a;qb=qb.parentNode)for(var Cc=0;CcV?ub=Math.max(0,ub+V-50):qb=Math.min(y.doc.height,qb+V+50),ik(y,{top:ub,bottom:qb})),20>Ai&&(null==Fa.wheelStartX?(Fa.wheelStartX=$a.scrollLeft,Fa.wheelStartY=$a.scrollTop,Fa.wheelDX=ua,Fa.wheelDY=xa,setTimeout(function(){if(null!=Fa.wheelStartX){var Dc=$a.scrollLeft-Fa.wheelStartX,Fd=$a.scrollTop-Fa.wheelStartY;Dc=Fd&&Fa.wheelDY&&Fd/Fa.wheelDY||Dc&&Fa.wheelDX&&Dc/Fa.wheelDX;Fa.wheelStartX=Fa.wheelStartY=null; Dc&&(Ge=(Ge*Ai+Dc)/(Ai+1),++Ai)}},200)):(Fa.wheelDX+=ua,Fa.wheelDY+=xa))):(xa&&ub&&ui(y,Math.max(0,$a.scrollTop+xa*Ge)),Nj(y,Math.max(0,$a.scrollLeft+ua*Ge)),(!xa||xa&&ub)&&ba(V),Fa.wheelStartX=null)}}function Yh(y,V,xa){y=y&&y.options.selectionsMayTouch;xa=V[xa];V.sort(function(Xb,Cc){return sa(Xb.from(),Cc.from())});xa=k(V,xa);for(var ua=1;uasa(y,V.from))return y;if(0>=sa(y,V.to))return Ph(V);var xa=y.line+V.text.length-(V.to.line-V.from.line)-1,ua=y.ch;y.line==V.to.line&&(ua+=Ph(V).ch-V.to.ch);return Ca(xa,ua)}function vi(y,V){for(var xa= [],ua=0;ua$a-(y.cm?y.cm.options.historyEventDelay:500)||"*"==V.origin.charAt(0))){if(Fa.lastOp==ua){xj(Fa.done);var ub=x(Fa.done)}else Fa.done.length&&!x(Fa.done).ranges? ub=x(Fa.done):1Fa.undoDepth;)Fa.done.shift(),Fa.done[0].ranges||Fa.done.shift();Fa.done.push(xa);Fa.generation=++Fa.maxGeneration;Fa.lastModTime=Fa.lastSelTime=$a;Fa.lastOp= Fa.lastSelOp=ua;Fa.lastOrigin=Fa.lastSelOrigin=V.origin;Xb||S(y,"historyAdded")}function Nk(y,V){var xa=x(V);xa&&xa.ranges&&xa.equals(y)||V.push(y)}function Cl(y,V,xa,ua){var Fa=V["spans_"+y.id],$a=0;y.iter(Math.max(y.first,xa),Math.min(y.first+y.size,ua),function(qb){qb.markedSpans&&((Fa||=V["spans_"+y.id]={})[$a]=qb.markedSpans);++$a})}function Jm(y,V){var xa;if(xa=V["spans_"+y.id]){for(var ua=[],Fa=0;Fasa(V,y),ua!=0>sa(xa,y)?(y=V,V=xa):ua!=0>sa(V,xa)&&(V=xa)),new kg(y,V)):new kg(xa||V,V)}function em(y,V,xa,ua,Fa){null==Fa&&(Fa=y.cm&&(y.cm.display.shift||y.extend));zg(y,new Kf([Km(y.sel.primary(), V,xa,Fa)],0),ua)}function Ak(y,V,xa){for(var ua=[],Fa=y.cm&&(y.cm.display.shift||y.extend),$a=0;$asa(V.primary().head,y.sel.primary().head)?-1:1);rh(y,Ok(y,V,ua,!0));xa&&!1===xa.scroll||!y.cm|| wh(y.cm)}function rh(y,V){V.equals(y.sel)||(y.sel=V,y.cm&&(y.cm.curOp.updateInput=1,y.cm.curOp.selectionChanged=!0,O(y.cm)),Ie(y,"cursorActivity",y))}function bj(y){rh(y,Ok(y,y.sel,null,!1))}function Ok(y,V,xa,ua){for(var Fa,$a=0;$a=V.ch:ub.to>V.ch))){if(Fa&&(S(Xb,"beforeCursorEnter"),Xb.explicitlyCleared))if($a.markedSpans){--qb;continue}else break;if(Xb.atomic){if(xa){qb=Xb.find(0> ua?1:-1);ub=void 0;if(0>ua?Dc:Cc)qb=kk(y,qb,-ua,qb&&qb.line==V.line?$a:null);if(qb&&qb.line==V.line&&(ub=sa(qb,xa))&&(0>ua?0>ub:0ua?-1:1);if(0>ua?Cc:Dc)xa=kk(y,xa,ua,xa.line==V.line?$a:null);return xa?cf(y,xa,V,ua,Fa):null}}}return V}function jj(y,V,xa,ua,Fa){ua=ua||1;V=cf(y,V,xa,ua,Fa)||!Fa&&cf(y,V,xa,ua,!0)||cf(y,V,xa,-ua,Fa)||!Fa&&cf(y,V,xa,-ua,!0);return V?V:(y.cantEdit=!0,Ca(y.first,0))}function kk(y,V,xa,ua){return 0>xa&&0==V.ch?V.line>y.first?jb(y, Ca(V.line-1)):null:0y.lastLine())){if(V.from.lineFa&&(V={from:V.from,to:Ca(Fa,Ea(y,Fa).text.length),text:[V.text[0]],origin:V.origin});V.removed=Oa(y,V.from,V.to);xa||=vi(y,V);y.cm?yj(y.cm,V,ua):Mi(y, V,ua);um(y,xa,th);y.cantEdit&&jj(y,Ca(y.firstLine(),0))&&(y.cantEdit=!1)}}function yj(y,V,xa){var ua=y.doc,Fa=y.display,$a=V.from,qb=V.to,ub=!1,Xb=$a.line;y.options.lineWrapping||(Xb=eb(ld(Ea(ua,$a.line))),ua.iter(Xb,qb.line+1,function(Cc){if(Cc==Fa.maxLine)return ub=!0}));-1Fa.maxLineLength&&(Fa.maxLine=Cc,Fa.maxLineLength=Dc,Fa.maxLineChanged=!0,ub=!1)}), ub&&(y.curOp.updateMaxLine=!0));yc(ua,$a.line);Gi(y,400);xa=V.text.length-(qb.line-$a.line)-1;V.full?Xf(y):$a.line!=qb.line||1!=V.text.length||Pg(y.doc,V)?Xf(y,$a.line,qb.line+1,xa):Sg(y,$a.line,"text");xa=P(y,"changes");if((ua=P(y,"change"))||xa)V={from:$a,to:qb,text:V.text,removed:V.removed,origin:V.origin},ua&&Ie(y,"change",y,V),xa&&(y.curOp.changeObjs||(y.curOp.changeObjs=[])).push(V);y.display.selForContextMenu=null}function el(y,V,xa,ua,Fa){ua||=xa;0>sa(ua,xa)&&(ua=[ua,xa],xa=ua[0],ua=ua[1]); "string"==typeof V&&(V=y.splitLines(V));rg(y,{from:xa,to:ua,text:V,origin:Fa})}function sg(y,V,xa,ua){xa=sa($a.from,x(ua).to);){var qb= ua.pop();if(0>sa(qb.from,$a.from)){$a.from=qb.from;break}}ua.push($a)}Ye(y,function(){for(var ub=ua.length-1;0<=ub;ub--)el(y.doc,"",ua[ub].from,ua[ub].to,"+delete");wh(y)})}function Aj(y,V,xa){V=ha(y.text,V+xa,xa);return 0>V||V>y.text.length?null:V}function Ul(y,V,xa){y=Aj(y,V.ch,xa);return null==y?null:new Ca(V.line,y,0>xa?"after":"before")}function Jj(y,V,xa,ua,Fa){if(y&&("rtl"==V.doc.direction&&(Fa=-Fa),y=aa(xa,V.doc.direction))){y=0>Fa?x(y):y[0];var $a=0>Fa==(1==y.level)?"after":"before";if(0< y.level||"rtl"==V.doc.direction){var qb=ab(V,xa);var ub=0>Fa?xa.text.length-1:0;var Xb=Cb(V,qb,ub).top;ub=T(function(Cc){return Cb(V,qb,Cc).top==Xb},0>Fa==(1==y.level)?y.from:y.to-1,ub);"before"==$a&&(ub=Aj(xa,ub,1))}else ub=0>Fa?y.to:y.from;return new Ca(ua,ub,$a)}return new Ca(ua,0>Fa?xa.text.length:0,0>Fa?"before":"after")}function zj(y,V,xa,ua){var Fa=aa(V,y.doc.direction);if(!Fa)return Ul(V,xa,ua);xa.ch>=V.text.length?(xa.ch=V.text.length,xa.sticky="before"):0>=xa.ch&&(xa.ch=0,xa.sticky="after"); var $a=E(Fa,xa.ch,xa.sticky),qb=Fa[$a];if("ltr"==y.doc.direction&&0==qb.level%2&&(0xa.ch:qb.fromua,Md=ub(xa,Fd?1:-1);if(null!=Md&&(Fd?Md<=qb.to&&Md<=Dc.end:Md>=qb.from&&Md>=Dc.begin))return new Ca(xa.line, Md,Fd?"before":"after")}qb=function(od,Ce,Cf){for(var Ng=function(ai,Bi){return Bi?new Ca(xa.line,ub(ai,1),"before"):new Ca(xa.line,ai,"after")};0<=od&&odBd&&27==y.keyCode&&(y.returnValue=!1);var V=y.keyCode;this.display.shift=16==V||y.shiftKey;var xa=wl(this,y);xe&&(ao=xa?V:null,!xa&&88==V&&!Ej&&(Tf?y.metaKey:y.ctrlKey)&&this.replaceSelection("",null,"cut"));Oc&&!Tf&&!xa&&46==V&&y.shiftKey&&!y.ctrlKey&&document.execCommand&&document.execCommand("cut");18!=V||/\bCodeMirror-crosshair\b/.test(this.display.lineDiv.className)||Mh(this)}}function Mh(y){function V(ua){18!= ua.keyCode&&ua.altKey||(Dg(xa,"CodeMirror-crosshair"),M(document,"keyup",V),M(document,"mouseover",V))}var xa=y.display.lineDiv;C(xa,"CodeMirror-crosshair");ug(document,"keyup",V);ug(document,"mouseover",V)}function wj(y){16==y.keyCode&&(this.doc.sel.shift=!1);D(this,y)}function pk(y){if(!(y.target&&y.target!=this.display.input.getField()||Hd(this.display,y)||D(this,y)||y.ctrlKey&&!y.altKey||Tf&&y.metaKey)){var V=y.keyCode,xa=y.charCode;if(xe&&V==ao)ao=null,ba(y);else if(!xe||y.which&&!(10>y.which)|| !wl(this,y))if(V=String.fromCharCode(null==xa?V:xa),"\b"!=V&&!ak(this,y,V))this.display.input.onKeyPress(y)}}function wk(y,V){var xa=+new Date;if(Sm&&Sm.compare(xa,y,V))return ei=Sm=null,"triple";if(ei&&ei.compare(xa,y,V))return Sm=new yl(xa,y,V),ei=null,"double";ei=new yl(xa,y,V);Sm=null;return"single"}function zh(y){var V=this.display;if(!(D(this,y)||V.activeTouch&&V.input.supportsTouch()))if(V.input.ensurePolled(),V.shift=y.shiftKey,Hd(V,y))Gd||(V.scroller.draggable=!1,setTimeout(function(){return V.scroller.draggable= !0},100));else if(!Xi(this,y,"gutterClick",!0)){var xa=Lf(this,y),ua=ca(y),Fa=xa?wk(xa,ua):"single";window.focus();1==ua&&this.state.selectingText&&this.state.selectingText(y);if(!xa||!Zg(this,ua,xa,Fa,y))if(1==ua)xa?Ig(this,xa,Fa,y):(y.target||y.srcElement)==V.scroller&&ba(y);else if(2==ua)xa&&em(this.doc,xa),setTimeout(function(){return V.input.focus()},20);else if(3==ua)if(bh)this.display.input.onContextMenu(y);else Gj(this)}}function Zg(y,V,xa,ua,Fa){var $a="Click";"double"==ua?$a="Double"+$a: "triple"==ua&&($a="Triple"+$a);return fl(y,Pk((1==V?"Left":2==V?"Middle":"Right")+$a,Fa),Fa,function(qb){"string"==typeof qb&&(qb=xm[qb]);if(!qb)return!1;var ub=!1;try{y.isReadOnly()&&(y.state.suppressEdits=!0),ub=qb(y,xa)!=aj}finally{y.state.suppressEdits=!1}return ub})}function Ig(y,V,xa,ua){Ed?setTimeout(K(Rl,y),0):y.curOp.focus=B();var Fa=y.getOption("configureMouse");Fa=Fa?Fa(y,xa,ua):{};null==Fa.unit&&(Fa.unit=(og?ua.shiftKey&&ua.metaKey:ua.altKey)?"rectangle":"single"==xa?"char":"double"== xa?"word":"line");if(null==Fa.extend||y.doc.extend)Fa.extend=y.doc.extend||ua.shiftKey;null==Fa.addNew&&(Fa.addNew=Tf?ua.metaKey:ua.ctrlKey);null==Fa.moveOnDrag&&(Fa.moveOnDrag=!(Tf?ua.altKey:ua.ctrlKey));var $a=y.doc.sel,qb;y.options.dragDrop&&dn&&!y.isReadOnly()&&"single"==xa&&-1<(qb=$a.contains(V))&&(0>sa((qb=$a.ranges[qb]).from(),V)||0V.xRel)?fk(y,ua,V,Fa):Wi(y,ua,V,Fa)}function fk(y,V,xa,ua){var Fa=y.display,$a=!1,qb=vg(y,function(Cc){Gd&&(Fa.scroller.draggable= !1);y.state.draggingText=!1;M(Fa.wrapper.ownerDocument,"mouseup",qb);M(Fa.wrapper.ownerDocument,"mousemove",ub);M(Fa.scroller,"dragstart",Xb);M(Fa.scroller,"drop",qb);$a||(ba(Cc),ua.addNew||em(y.doc,xa,null,null,ua.extend),Gd&&!We||Ed&&9==Bd?setTimeout(function(){Fa.wrapper.ownerDocument.body.focus({preventScroll:!0});Fa.input.focus()},20):Fa.input.focus())}),ub=function(Cc){$a=$a||10<=Math.abs(V.clientX-Cc.clientX)+Math.abs(V.clientY-Cc.clientY)},Xb=function(){return $a=!0};Gd&&(Fa.scroller.draggable= !0);y.state.draggingText=qb;qb.copy=!ua.moveOnDrag;Fa.scroller.dragDrop&&Fa.scroller.dragDrop();ug(Fa.wrapper.ownerDocument,"mouseup",qb);ug(Fa.wrapper.ownerDocument,"mousemove",ub);ug(Fa.scroller,"dragstart",Xb);ug(Fa.scroller,"drop",qb);Gj(y);setTimeout(function(){return Fa.input.focus()},20)}function Lh(y,V,xa){if("char"==xa)return new kg(V,V);if("word"==xa)return y.findWordAt(V);if("line"==xa)return new kg(Ca(V.line,0),jb(y.doc,Ca(V.line+1,0)));y=xa(y,V);return new kg(y.from,y.to)}function Wi(y, V,xa,ua){function Fa(yg){if(0!=sa(od,yg))if(od=yg,"rectangle"==ua.unit){var nh=[],ai=y.options.tabSize,Bi=h(Ea(Xb,xa.line).text,xa.ch,ai),Gh=h(Ea(Xb,yg.line).text,yg.ch,ai),ig=Math.min(Bi,Gh);Bi=Math.max(Bi,Gh);Gh=Math.min(xa.line,yg.line);for(var Rf=Math.min(y.lastLine(),Math.max(xa.line,yg.line));Gh<=Rf;Gh++){var Ch=Ea(Xb,Gh).text,ih=f(Ch,ig,ai);ig==Bi?nh.push(new kg(Ca(Gh,ih),Ca(Gh,ih))):Ch.length>ih&&nh.push(new kg(Ca(Gh,ih),Ca(Gh,f(Ch,Bi,ai))))}nh.length||nh.push(new kg(xa,xa));zg(Xb,Yh(y,Cc.ranges.slice(0, Fd).concat(nh),Fd),{origin:"*mouse",scroll:!1});y.scrollIntoView(yg)}else nh=Md,ig=Lh(y,yg,ua.unit),yg=nh.anchor,0=Bi.to||ai.lineCe.bottom?20:0;Gh&&setTimeout(vg(y,function(){Cf==nh&&(ub.scroller.scrollTop+=Gh,$a(yg))}),50)}}function qb(yg){y.state.selectingText=!1;Cf=Infinity;yg&&(ba(yg),ub.input.focus());M(ub.wrapper.ownerDocument,"mousemove",Ng);M(ub.wrapper.ownerDocument,"mouseup",tj);Xb.history.lastSelOrigin=null}var ub=y.display,Xb=y.doc;ba(V);var Cc=Xb.sel,Dc=Cc.ranges;if(ua.addNew&&!ua.extend){var Fd=Xb.sel.contains(xa);var Md=-1$a:0<$a);Fa=Fa[ub+(y?-1:0)];Fa=(ub=y==(1==Fa.level))?Fa.from:Fa.to;ub=ub?"after":"before";return xa.ch==Fa&&xa.sticky==ub?V:new kg(new Ca(xa.line,Fa,ub),ua)}function Xi(y,V,xa,ua){if(V.touches){var Fa=V.touches[0].clientX;var $a=V.touches[0].clientY}else try{Fa=V.clientX,$a=V.clientY}catch(Xb){return!1}if(Fa>=Math.floor(y.display.gutters.getBoundingClientRect().right))return!1; ua&&ba(V);ua=y.display;var qb=ua.lineDiv.getBoundingClientRect();if($a>qb.bottom||!P(y,xa))return ja(V);$a-=qb.top-ua.viewOffset;for(qb=0;qb=Fa)return Fa=db(y.doc,$a),S(y,xa,y,Fa,y.display.gutterSpecs[qb].className,V),ja(V)}}function Wf(y,V){var xa;(xa=Hd(y.display,V))||(xa=P(y,"gutterContextMenu")?Xi(y,V,"gutterContextMenu",!1):!1);if(!xa&&!D(y,V,"contextmenu")&&!bh)y.display.input.onContextMenu(V)} function Mg(y){y.display.wrapper.className=y.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+y.options.theme.replace(/(^|\s)\s*/g," cm-s-");kb(y)}function Bj(y,V,xa){!V!=!(xa&&xa!=mg)&&(xa=y.display.dragFunctions,V=V?ug:M,V(y.display.scroller,"dragstart",xa.start),V(y.display.scroller,"dragenter",xa.enter),V(y.display.scroller,"dragover",xa.over),V(y.display.scroller,"dragleave",xa.leave),V(y.display.scroller,"drop",xa.drop))}function mi(y){y.options.lineWrapping?(C(y.display.wrapper,"CodeMirror-wrap"), y.display.sizer.style.minWidth="",y.display.sizerWidth=null):(Dg(y.display.wrapper,"CodeMirror-wrap"),cc(y));lg(y);Xf(y);kb(y);setTimeout(function(){return pl(y)},100)}function ph(y,V){var xa=this;if(!(this instanceof ph))return new ph(y,V);this.options=V=V?r(V):{};r(yi,V,!1);var ua=V.value;"string"==typeof ua?ua=new Jf(ua,V.mode,null,V.lineSeparator,V.direction):V.mode&&(ua.modeOption=V.mode);this.doc=ua;var Fa=new ph.inputStyles[V.inputStyle](this);y=this.display=new gn(y,ua,Fa,V);y.wrapper.CodeMirror= this;Mg(this);V.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap");gk(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 Qf,keySeq:null,specialChars:null};V.autofocus&&!cj&&y.input.focus();Ed&&11>Bd&&setTimeout(function(){return xa.display.input.reset(!0)},20);xg(this);eg||(hn(),eg=!0);hk(this);this.curOp.forceUpdate=!0;Qj(this,ua);V.autofocus&& !cj||this.hasFocus()?setTimeout(function(){xa.hasFocus()&&!xa.state.focused&&jg(xa)},20):Xg(this);for(var $a in tn)if(tn.hasOwnProperty($a))tn[$a](this,V[$a],mg);bl(this);V.finishInit&&V.finishInit(this);for(ua=0;uaBd?ug(ua.scroller,"dblclick",vg(y,function(ub){if(!D(y,ub)){var Xb=Lf(y,ub);!Xb||Xi(y,ub,"gutterClick",!0)||Hd(y.display,ub)||(ba(ub),ub=y.findWordAt(Xb),em(y.doc,ub.anchor,ub.head))}})):ug(ua.scroller,"dblclick",function(ub){return D(y,ub)||ba(ub)});ug(ua.scroller,"contextmenu",function(ub){return Wf(y,ub)});ug(ua.input.getField(), "contextmenu",function(ub){ua.scroller.contains(ub.target)||Wf(y,ub)});var Fa,$a={end:0};ug(ua.scroller,"touchstart",function(ub){var Xb;if(Xb=!D(y,ub))1!=ub.touches.length?Xb=!1:(Xb=ub.touches[0],Xb=1>=Xb.radiusX&&1>=Xb.radiusY),Xb=!Xb;Xb&&!Xi(y,ub,"gutterClick",!0)&&(ua.input.ensurePolled(),clearTimeout(Fa),Xb=+new Date,ua.activeTouch={start:Xb,moved:!1,prev:300>=Xb-$a.end?$a:null},1==ub.touches.length&&(ua.activeTouch.left=ub.touches[0].pageX,ua.activeTouch.top=ub.touches[0].pageY))});ug(ua.scroller, "touchmove",function(){ua.activeTouch&&(ua.activeTouch.moved=!0)});ug(ua.scroller,"touchend",function(ub){var Xb=ua.activeTouch;if(Xb&&!Hd(ua,ub)&&null!=Xb.left&&!Xb.moved&&300>new Date-Xb.start){var Cc=y.coordsChar(ua.activeTouch,"page");Xb=!Xb.prev||xa(Xb,Xb.prev)?new kg(Cc,Cc):!Xb.prev.prev||xa(Xb,Xb.prev.prev)?y.findWordAt(Cc):new kg(Ca(Cc.line,0),jb(y.doc,Ca(Cc.line+1,0)));y.setSelection(Xb.anchor,Xb.head);y.focus();ba(ub)}V()});ug(ua.scroller,"touchcancel",V);ug(ua.scroller,"scroll",function(){ua.scroller.clientHeight&& (ui(y,ua.scroller.scrollTop),Nj(y,ua.scroller.scrollLeft,!0),S(y,"scroll",y))});ug(ua.scroller,"mousewheel",function(ub){return rj(y,ub)});ug(ua.scroller,"DOMMouseScroll",function(ub){return rj(y,ub)});ug(ua.wrapper,"scroll",function(){return ua.wrapper.scrollTop=ua.wrapper.scrollLeft=0});ua.dragFunctions={enter:function(ub){D(y,ub)||N(ub)},over:function(ub){if(!D(y,ub)){var Xb=Lf(y,ub);if(Xb){var Cc=document.createDocumentFragment();Rh(y,Xb,Cc);y.display.dragCursor||(y.display.dragCursor=t("div", null,"CodeMirror-cursors CodeMirror-dragcursors"),y.display.lineSpace.insertBefore(y.display.dragCursor,y.display.cursorDiv));A(y.display.dragCursor,Cc)}N(ub)}},start:function(ub){if(Ed&&(!y.state.draggingText||100>+new Date-Hl))N(ub);else if(!D(y,ub)&&!Hd(y.display,ub)&&(ub.dataTransfer.setData("Text",y.getSelection()),ub.dataTransfer.effectAllowed="copyMove",ub.dataTransfer.setDragImage&&!We)){var Xb=t("img",null,null,"position: fixed; left: 0; top: 0;");Xb.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw\x3d\x3d"; xe&&(Xb.width=Xb.height=1,y.display.wrapper.appendChild(Xb),Xb._top=Xb.offsetTop);ub.dataTransfer.setDragImage(Xb,0,0);xe&&Xb.parentNode.removeChild(Xb)}},drop:vg(y,Ck),leave:function(ub){D(y,ub)||mk(y)}};var qb=ua.input.getField();ug(qb,"keyup",function(ub){return wj.call(y,ub)});ug(qb,"keydown",vg(y,ok));ug(qb,"keypress",vg(y,pk));ug(qb,"focus",function(ub){return jg(y,ub)});ug(qb,"blur",function(ub){return Xg(y,ub)})}function lh(y,V,xa,ua){var Fa=y.doc,$a;null==xa&&(xa="add");"smart"==xa&&(Fa.mode.indent? $a=Pa(y,V).state:xa="prev");var qb=y.options.tabSize,ub=Ea(Fa,V),Xb=h(ub.text,null,qb);ub.stateAfter&&(ub.stateAfter=null);var Cc=ub.text.match(/^\s*/)[0];if(!ua&&!/\S/.test(ub.text)){var Dc=0;xa="not"}else if("smart"==xa&&(Dc=Fa.mode.indent($a,ub.text.slice(Cc.length),ub.text),Dc==aj||150Fa.first?h(Ea(Fa,V-1).text,null,qb):0:"add"==xa?Dc=Xb+y.options.indentUnit:"subtract"==xa?Dc=Xb-y.options.indentUnit:"number"==typeof xa&&(Dc=Xb+xa);Dc=Math.max(0,Dc); xa="";ua=0;if(y.options.indentWithTabs)for(y=Math.floor(Dc/qb);y;--y)ua+=qb,xa+="\t";uaqb,Xb=Zk(V),Cc=null;if(ub&&1qb?"cut":"+input")};rg(y.doc,Md);Ie(y,"inputRead",y,Md)}V&&!ub&&$i(y,V);wh(y);2>y.curOp.updateInput&&(y.curOp.updateInput=Dc);y.curOp.typing=!0;y.state.pasteIncoming=y.state.cutIncoming=-1}function Ii(y,V){var xa=y.clipboardData&&y.clipboardData.getData("Text");if(xa)return y.preventDefault(),V.isReadOnly()||V.options.disableInput||Ye(V,function(){return Kj(V, xa,0,null,"paste")}),!0}function $i(y,V){if(y.options.electricChars&&y.options.smartIndent)for(var xa=y.doc.sel,ua=xa.ranges.length-1;0<=ua;ua--){var Fa=xa.ranges[ua];if(!(100Ng?2:1))),-xa)}else Ng=Fa?zj(y.cm,Xb,V,xa):Ul(Xb,V,xa);if(null==Ng){if(Cf=!Cf)Cf=V.line+Cc,Cf=y.first+ y.size?Cf=!1:(V=new Ca(Cf,V.ch,V.sticky),Cf=Xb=Ea(y,Cf));if(Cf)V=Jj(Fa,y.cm,Xb,V.line,Cc);else return!1}else V=Ng;return!0}var qb=V,ub=xa,Xb=Ea(y,V.line),Cc=Fa&&"rtl"==y.direction?-xa:xa;if("char"==ua||"codepoint"==ua)$a();else if("column"==ua)$a(!0);else if("word"==ua||"group"==ua)for(var Dc=null,Fd="group"==ua,Md=y.cm&&y.cm.getHelper(V,"wordChars"),od=!0;!(0>xa)||$a(!od);od=!1){var Ce=Xb.text.charAt(V.ch)||"\n";Ce=J(Ce,Md)?"w":Fd&&"\n"==Ce?"n":!Fd||/\s/.test(Ce)?null:"p";!Fd||od||Ce||(Ce="s");if(Dc&& Dc!=Ce){0>xa&&(xa=1,$a(),V.sticky="after");break}Ce&&(Dc=Ce);if(0xa?0>=qb:qb>=Fa.height){V.hitSide=!0;break}qb+= 5*xa}return V}function Ub(y,V){var xa=Ag(y,V.line);if(!xa||xa.hidden)return null;var ua=Ea(y.doc,V.line);xa=af(xa,ua,V.line);y=aa(ua,y.doc.direction);ua="left";y&&(ua=E(y,V.ch)%2?"right":"left");V=cb(xa.map,V.ch,ua);V.offset="right"==V.collapse?V.end:V.start;return V}function vb(y){for(;y;y=y.parentNode)if(/CodeMirror-gutter-wrapper/.test(y.className))return!0;return!1}function yb(y,V){V&&(y.bad=!0);return y}function Qb(y,V,xa,ua,Fa){function $a(od){return function(Ce){return Ce.id==od}}function qb(){Dc&& (Cc+=Fd,Md&&(Cc+=Fd),Dc=Md=!1)}function ub(od){od&&(qb(),Cc+=od)}function Xb(od){if(1==od.nodeType){var Ce=od.getAttribute("cm-text");if(Ce)ub(Ce);else{Ce=od.getAttribute("cm-marker");var Cf;if(Ce)od=y.findMarks(Ca(ua,0),Ca(Fa+1,0),$a(+Ce)),od.length&&(Cf=od[0].find(0))&&ub(Oa(y.doc,Cf.from,Cf.to).join(Fd));else if("false"!=od.getAttribute("contenteditable")&&(Cf=/^(pre|div|p|li|table|br)$/i.test(od.nodeName),/^br$/i.test(od.nodeName)||0!=od.textContent.length)){Cf&&qb();for(Ce=0;Ceod?Xb.map:Cc[od],Cf=0;Cfod?y.line:y.rest[od]);od=Ce[Cf]+Md;if(0>Md||Ng!=Dc)od=Ce[Cf+(Md?1:0)];return Ca(Fd,od)}}}var Fa=y.text.firstChild,$a=!1;if(!V||!w(Fa,V))return yb(Ca(eb(y.line),0),!0);if(V==Fa&&($a=!0,V=Fa.childNodes[xa], xa=0,!V))return xa=y.rest?x(y.rest):y.line,yb(Ca(eb(xa),xa.text.length),$a);var qb=3==V.nodeType?V:null,ub=V;qb||1!=V.childNodes.length||3!=V.firstChild.nodeType||(qb=V.firstChild,xa&&(xa=qb.nodeValue.length));for(;ub.parentNode!=Fa;)ub=ub.parentNode;var Xb=y.measure,Cc=Xb.maps;if(V=ua(qb,ub,xa))return yb(V,$a);Fa=ub.nextSibling;for(qb=qb?qb.nodeValue.length-xa:0;Fa;Fa=Fa.nextSibling){if(V=ua(Fa,Fa.firstChild,0))return yb(Ca(V.line,V.ch-qb),$a);qb+=Fa.textContent.length}for(ub=ub.previousSibling;ub;ub= ub.previousSibling){if(V=ua(ub,ub.firstChild,-1))return yb(Ca(V.line,V.ch+xa),$a);xa+=ub.textContent.length}}var ac=navigator.userAgent,Bc=navigator.platform,Oc=/gecko\/\d/i.test(ac),Sc=/MSIE \d/.test(ac),xd=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(ac),Rd=/Edge\/(\d+)/.exec(ac),Ed=Sc||xd||Rd,Bd=Ed&&(Sc?document.documentMode||6:+(Rd||xd)[1]),Gd=!Rd&&/WebKit\//.test(ac),ze=Gd&&/Qt\/\d+\.\d+/.test(ac),Zf=!Rd&&/Chrome\//.test(ac),xe=/Opera\//.test(ac),We=/Apple Computer/.test(navigator.vendor),Me= /Mac OS X 1\d\D([8-9]|\d\d)\D/.test(ac),Oe=/PhantomJS/.test(ac),tg=!Rd&&/AppleWebKit/.test(ac)&&/Mobile\/\w+/.test(ac),Vf=/Android/.test(ac),cj=tg||Vf||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(ac),Tf=tg||/Mac/.test(Bc),og=/\bCrOS\b/.test(ac),mh=/win/i.test(Bc),Rg=xe&&ac.match(/Version\/(\d*\.\d*)/);Rg&&=Number(Rg[1]);Rg&&15<=Rg&&(xe=!1,Gd=!0);var Tg=Tf&&(ze||xe&&(null==Rg||12.11>Rg)),bh=Oc||Ed&&9<=Bd,Dg=function(y,V){var xa=y.className;if(V=q(V).exec(xa)){var ua=xa.slice(V.index+V[0].length); y.className=xa.slice(0,V.index)+(ua?V[1]+ua:"")}};var pg=document.createRange?function(y,V,xa,ua){var Fa=document.createRange();Fa.setEnd(ua||y,xa);Fa.setStart(y,V);return Fa}:function(y,V,xa){var ua=document.body.createTextRange();try{ua.moveToElementText(y.parentNode)}catch(Fa){return ua}ua.collapse(!0);ua.moveEnd("character",xa);ua.moveStart("character",V);return ua};var ch=function(y){y.select()};tg?ch=function(y){y.selectionStart=0;y.selectionEnd=y.value.length}:Ed&&(ch=function(y){try{y.select()}catch(V){}}); var Qf=function(){this.f=this.id=null;this.time=0;this.handler=K(this.onTimeout,this)};Qf.prototype.onTimeout=function(y){y.id=0;y.time<=+new Date?y.f():setTimeout(y.handler,y.time-+new Date)};Qf.prototype.set=function(y,V){this.f=V;V=+new Date+y;if(!this.id||V=Ce?"bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN".charAt(Ce): 1424<=Ce&&1524>=Ce?"R":1536<=Ce&&1785>=Ce?"nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111".charAt(Ce-1536):1774<=Ce&&2220>=Ce?"r":8192<=Ce&&8203>=Ce?"w":8204==Ce?"b":"L";od.call(Md,Ce)}Fd=0;for(Md=Xb;FdBd)return!1; var y=t("div");return"draggable"in y||"dragDrop"in y}(),cn,am,Zk=3!="\n\nb".split(/\n/).length?function(y){for(var V=0,xa=[],ua=y.length;V<=ua;){var Fa=y.indexOf("\n",V);-1==Fa&&(Fa=y.length);var $a=y.slice(V,"\r"==y.charAt(Fa-1)?Fa-1:Fa),qb=$a.indexOf("\r");-1!=qb?(xa.push($a.slice(0,qb)),V+=qb+1):(xa.push($a),V=Fa+1)}return xa}:function(y){return y.split(/\r\n?|\n/)},Wj=window.getSelection?function(y){try{return y.selectionStart!=y.selectionEnd}catch(V){return!1}}:function(y){try{var V=y.ownerDocument.selection.createRange()}catch(xa){}return V&& V.parentElement()==y?0!=V.compareEndPoints("StartToEnd",V):!1},Ej=function(){var y=t("div");if("oncopy"in y)return!0;y.setAttribute("oncopy","return;");return"function"==typeof y.oncopy}(),Jh=null,oi={},pm={},rm={},Ri=function(y,V,xa){this.pos=this.start=0;this.string=y;this.tabSize=V||8;this.lineStart=this.lastColumnPos=this.lastColumnValue=0;this.lineOracle=xa};Ri.prototype.eol=function(){return this.pos>=this.string.length};Ri.prototype.sol=function(){return this.pos==this.lineStart};Ri.prototype.peek= function(){return this.string.charAt(this.pos)||void 0};Ri.prototype.next=function(){if(this.posV};Ri.prototype.eatSpace=function(){for(var y=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos> y};Ri.prototype.skipToEnd=function(){this.pos=this.string.length};Ri.prototype.skipTo=function(y){y=this.string.indexOf(y,this.pos);if(-1this.maxLookAhead&&(this.maxLookAhead=y);return V};re.prototype.baseToken=function(y){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=y;)this.baseTokenPos+=2;var V=this.baseTokens[this.baseTokenPos+1];return{type:V&&V.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-y}};re.prototype.nextLine=function(){this.line++;0Bd&&(this.horiz.style.minHeight=this.vert.style.minWidth= "18px")};Uf.prototype.update=function(y){var V=y.scrollWidth>y.clientWidth+1,xa=y.scrollHeight>y.clientHeight+1,ua=y.nativeBarWidth;xa?(this.vert.style.display="block",this.vert.style.bottom=V?ua+"px":"0",this.vert.firstChild.style.height=Math.max(0,y.scrollHeight-y.clientHeight+(y.viewHeight-(V?ua:0)))+"px"):(this.vert.style.display="",this.vert.firstChild.style.height="0");V?(this.horiz.style.display="block",this.horiz.style.right=xa?ua+"px":"0",this.horiz.style.left=y.barLeft+"px",this.horiz.firstChild.style.width= Math.max(0,y.scrollWidth-y.clientWidth+(y.viewWidth-y.barLeft-(xa?ua:0)))+"px"):(this.horiz.style.display="",this.horiz.firstChild.style.width="0");!this.checkedZeroWidth&&0=sa(y,ua.to()))return xa}return-1};var kg=function(y,V){this.anchor=y;this.head=V};kg.prototype.from=function(){return Ab(this.anchor,this.head)};kg.prototype.to=function(){return Sa(this.anchor,this.head)};kg.prototype.empty=function(){return this.head.line== this.anchor.line&&this.head.ch==this.anchor.ch};lk.prototype={chunkSize:function(){return this.lines.length},removeInner:function(y,V){for(var xa=y,ua=y+V;xathis.size-V&&(1=this.children.length)){var y=this;do{var V=y.children.splice(y.children.length-5,5);V=new Pj(V);if(y.parent){y.size-=V.size;y.height-=V.height;var xa=k(y.parent.children,y);y.parent.children.splice(xa+1,0,V)}else xa=new Pj(y.children),xa.parent=y,y.children=[xa,V],y=xa;V.parent=y.parent}while(10y.display.maxLineLength&&(y.display.maxLine=$a,y.display.maxLineLength=qb,y.display.maxLineChanged=!0);null!=xa&&y&&this.collapsed&&Xf(y,xa,ua+1);this.lines.length=0;this.explicitlyCleared=!0;this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,y&&bj(y.doc));y&&Ie(y,"markerCleared",y,this,xa,ua);V&&xk(y);this.parent&& this.parent.clear()}};Pf.prototype.find=function(y,V){null==y&&"bookmark"==this.type&&(y=1);for(var xa,ua,Fa=0;Fasa(ub.head,ub.anchor),y[$a]=new kg(ub?Xb:qb,ub?qb:Xb)):y[$a]=new kg(qb,qb)}y=new Kf(y,this.sel.primIndex)}V=y;for(y=ua.length-1;0<=y;y--)rg(this,ua[y]);V?zk(this,V):this.cm&&wh(this.cm)}),undo:Eh(function(){If(this,"undo")}),redo:Eh(function(){If(this,"redo")}),undoSelection:Eh(function(){If(this,"undo",!0)}),redoSelection:Eh(function(){If(this,"redo",!0)}),setExtending:function(y){this.extend=y},getExtending:function(){return this.extend}, historySize:function(){for(var y=this.history,V=0,xa=0,ua=0;ua=y.ch)&&V.push(Fa.marker.parent||Fa.marker)}return V},findMarks:function(y,V,xa){y=jb(this,y);V=jb(this,V);var ua=[],Fa=y.line;this.iter(y.line,V.line+1,function($a){if($a=$a.markedSpans)for(var qb=0;qb<$a.length;qb++){var ub=$a[qb];null!=ub.to&&Fa==y.line&&y.ch>=ub.to||null== ub.from&&Fa!=y.line||null!=ub.from&&Fa==V.line&&ub.from>=V.ch||xa&&!xa(ub.marker)||ua.push(ub.marker.parent||ub.marker)}++Fa});return ua},getAllMarks:function(){var y=[];this.iter(function(V){if(V=V.markedSpans)for(var xa=0;xay)return V=y,!0;y-=Fa;++xa});return jb(this,Ca(xa,V))},indexFromPos:function(y){y=jb(this, y);var V=y.ch;if(y.liney.ch)return 0;var xa=this.lineSeparator().length;this.iter(this.first,y.line,function(ua){V+=ua.text.length+xa});return V},copy:function(y){var V=new Jf(Xa(this,this.first,this.first+this.size),this.modeOption,this.first,this.lineSep,this.direction);V.scrollTop=this.scrollTop;V.scrollLeft=this.scrollLeft;V.sel=this.sel;V.extend=!1;y&&(V.history.undoDepth=this.history.undoDepth,V.setHistory(this.getHistory()));return V},linkedDoc:function(y){y||={};var V=this.first, xa=this.first+this.size;null!=y.from&&y.from>V&&(V=y.from);null!=y.to&&y.toAh;Ah++)pi[Ah+48]=pi[Ah+96]=String(Ah);for(var Ki=65;90>=Ki;Ki++)pi[Ki]= String.fromCharCode(Ki);for(var qh=1;12>=qh;qh++)pi[qh+111]=pi[qh+63235]="F"+qh;var bm={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"]}};bm["default"]=Tf?bm.macDefault:bm.pcDefault;var xm={selectAll:Dk,singleSelection:function(y){return y.setSelection(y.getCursor("anchor"),y.getCursor("head"),th)},killLine:function(y){return Rk(y,function(V){if(V.empty()){var xa=Ea(y.doc,V.head.line).text.length;return V.head.ch==xa&&V.head.liney.doc.first){var qb=Ea(y.doc,Fa.line-1).text;qb&&(Fa=new Ca(Fa.line,1),y.replaceRange($a.charAt(0)+y.doc.lineSeparator()+qb.charAt(qb.length-1),Ca(Fa.line-1,qb.length-1),Fa,"+transpose"))}xa.push(new kg(Fa,Fa))}y.setSelections(xa)})},newlineAndIndent:function(y){return Ye(y,function(){for(var V=y.listSelections(),xa=V.length-1;0<=xa;xa--)y.replaceRange(y.doc.lineSeparator(), V[xa].anchor,V[xa].head,"+input");V=y.listSelections();for(xa=0;xay&&0==sa(V,this.pos)&&xa==this.button};var ei,Sm,mg={toString:function(){return"CodeMirror.Init"}},yi={},tn={};ph.defaults= yi;ph.optionHandlers=tn;var Wl=[];ph.defineInitHook=function(y){return Wl.push(y)};var Fj=null,Yf=function(y){this.cm=y;this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null;this.polling=new Qf;this.composing=null;this.gracePeriod=!1;this.readDOMTimeout=null};Yf.prototype.init=function(y){function V(ub){for(ub=ub.target;ub;ub=ub.parentNode){if(ub==qb)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(ub.className))break}return!1}function xa(ub){if(V(ub)&&!D($a,ub)){if($a.somethingSelected())Fj= {lineWise:!1,text:$a.getSelections()},"cut"==ub.type&&$a.replaceSelection("",null,"cut");else if($a.options.lineWiseCopyCut){var Xb=Rb($a);Fj={lineWise:!0,text:Xb.text};"cut"==ub.type&&$a.operation(function(){$a.setSelections(Xb.ranges,0,th);$a.replaceSelection("",null,"cut")})}else return;if(ub.clipboardData){ub.clipboardData.clearData();var Cc=Fj.text.join("\n");ub.clipboardData.setData("Text",Cc);if(ub.clipboardData.getData("Text")==Cc){ub.preventDefault();return}}var Dc=dc();ub=Dc.firstChild; $a.display.lineSpace.insertBefore(Dc,$a.display.lineSpace.firstChild);ub.value=Fj.text.join("\n");var Fd=document.activeElement;ch(ub);setTimeout(function(){$a.display.lineSpace.removeChild(Dc);Fd.focus();Fd==qb&&Fa.showPrimarySelection()},50)}}var ua=this,Fa=this,$a=Fa.cm,qb=Fa.div=y.lineDiv;ec(qb,$a.options.spellcheck,$a.options.autocorrect,$a.options.autocapitalize);ug(qb,"paste",function(ub){!V(ub)||D($a,ub)||Ii(ub,$a)||11>=Bd&&setTimeout(vg($a,function(){return ua.updateFromDOM()}),20)});ug(qb, "compositionstart",function(ub){ua.composing={data:ub.data,done:!1}});ug(qb,"compositionupdate",function(ub){ua.composing||(ua.composing={data:ub.data,done:!1})});ug(qb,"compositionend",function(ub){ua.composing&&(ub.data!=ua.composing.data&&ua.readFromDOMSoon(),ua.composing.done=!0)});ug(qb,"touchstart",function(){return Fa.forceCompositionEnd()});ug(qb,"input",function(){ua.composing||ua.readFromDOMSoon()});ug(qb,"copy",xa);ug(qb,"cut",xa)};Yf.prototype.screenReaderLabelChanged=function(y){y?this.div.setAttribute("aria-label", y):this.div.removeAttribute("aria-label")};Yf.prototype.prepareSelection=function(){var y=Bg(this.cm,!1);y.focus=document.activeElement==this.div;return y};Yf.prototype.showSelection=function(y,V){y&&this.cm.display.view.length&&((y.focus||V)&&this.showPrimarySelection(),this.showMultipleSelections(y))};Yf.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()};Yf.prototype.showPrimarySelection=function(){var y=this.getSelection(),V=this.cm,xa=V.doc.sel.primary(), ua=xa.from();xa=xa.to();if(V.display.viewTo==V.display.viewFrom||ua.line>=V.display.viewTo||xa.line=V.display.viewFrom&&Ub(V,ua)||{node:Fa[0].measure.map[2],offset:0},xa=xa.liney.firstLine()&&(ua=Ca(ua.line-1,Ea(y.doc,ua.line-1).length));Fa.ch==Ea(y.doc,Fa.line).text.length&&Fa.lineV.viewTo-1)return!1;var $a;ua.line==V.viewFrom||0==($a=Af(y,ua.line))?(xa=eb(V.view[0].line),$a=V.view[0].node):(xa=eb(V.view[$a].line),$a=V.view[$a-1].node.nextSibling); var qb=Af(y,Fa.line);qb==V.view.length-1?(Fa=V.viewTo-1,V=V.lineDiv.lastChild):(Fa=eb(V.view[qb+1].line)-1,V=V.view[qb+1].node.previousSibling);if(!$a)return!1;V=y.doc.splitLines(Qb(y,$a,V,xa,Fa));for($a=Oa(y.doc,Ca(xa,0),Ca(Fa,Ea(y.doc,Fa).text.length));1ua.ch&&Xb.charCodeAt(Xb.length-qb-1)==Cc.charCodeAt(Cc.length-qb-1);)ub--,qb++;V[V.length-1]=Xb.slice(0,Xb.length-qb).replace(/^\u200b+/,"");V[0]=V[0].slice(ub).replace(/\u200b+$/,"");ua=Ca(xa,ub);xa=Ca(Fa,$a.length?x($a).length-qb:0);if(1Bd&&$a.scrollbars.setScrollTop($a.scroller.scrollTop= Xb),null!=qb.selectionStart)){(!Ed||Ed&&9>Bd)&&V();var od=0,Ce=function(){$a.selForContextMenu==Fa.doc.sel&&0==qb.selectionStart&&0od++?$a.detectingSelectAll=setTimeout(Ce,500):($a.selForContextMenu=null,$a.input.reset())};$a.detectingSelectAll=setTimeout(Ce,200)}}var ua=this,Fa=ua.cm,$a=Fa.display,qb=ua.textarea;ua.contextMenuPending&&ua.contextMenuPending();var ub=Lf(Fa,y),Xb=$a.scroller.scrollTop;if(ub&&!xe){Fa.options.resetSelectionOnContextMenu&& -1==Fa.doc.sel.contains(ub)&&vg(Fa,zg)(Fa.doc,Ti(ub),th);var Cc=qb.style.cssText,Dc=ua.wrapper.style.cssText;ub=ua.wrapper.offsetParent.getBoundingClientRect();ua.wrapper.style.cssText="position: static";qb.style.cssText="position: absolute; width: 30px; height: 30px;\n top: "+(y.clientY-ub.top-5)+"px; left: "+(y.clientX-ub.left-5)+"px;\n z-index: 1000; background: "+(Ed?"rgba(255, 255, 255, .05)":"transparent")+";\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity\x3d5);"; if(Gd)var Fd=window.scrollY;$a.input.focus();Gd&&window.scrollTo(null,Fd);$a.input.reset();Fa.somethingSelected()||(qb.value=ua.prevInput=" ");ua.contextMenuPending=xa;$a.selForContextMenu=Fa.doc.sel;clearTimeout($a.detectingSelectAll);Ed&&9<=Bd&&V();if(bh){N(y);var Md=function(){M(window,"mouseup",Md);setTimeout(xa,20)};ug(window,"mouseup",Md)}else setTimeout(xa,50)}};Si.prototype.readOnlyChanged=function(y){y||this.reset();this.textarea.disabled="nocursor"==y;this.textarea.readOnly=!!y};Si.prototype.setUneditable= function(){};Si.prototype.needsContentAttribute=!1;(function(y){function V(ua,Fa,$a,qb){y.defaults[ua]=Fa;$a&&(xa[ua]=qb?function(ub,Xb,Cc){Cc!=mg&&$a(ub,Xb,Cc)}:$a)}var xa=y.optionHandlers;y.defineOption=V;y.Init=mg;V("value","",function(ua,Fa){return ua.setValue(Fa)},!0);V("mode",null,function(ua,Fa){ua.doc.modeOption=Fa;dl(ua)},!0);V("indentUnit",2,dl,!0);V("indentWithTabs",!1);V("smartIndent",!0);V("tabSize",4,function(ua){Ui(ua);kb(ua);Xf(ua)},!0);V("lineSeparator",null,function(ua,Fa){if(ua.doc.lineSep= Fa){var $a=[],qb=ua.doc.first;ua.doc.iter(function(Xb){for(var Cc=0;;){var Dc=Xb.text.indexOf(Fa,Cc);if(-1==Dc)break;Cc=Dc+Fa.length;$a.push(Ca(qb,Dc))}qb++});for(var ub=$a.length-1;0<=ub;ub--)el(ua.doc,Fa,$a[ub],Ca($a[ub].line,$a[ub].ch+Fa.length))}});V("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b-\u200c\u200e\u200f\u2028\u2029\ufeff\ufff9-\ufffc]/g,function(ua,Fa,$a){ua.state.specialChars=new RegExp(Fa.source+(Fa.test("\t")?"":"|\t"),"g");$a!=mg&&ua.refresh()});V("specialCharPlaceholder", cd,function(ua){return ua.refresh()},!0);V("electricChars",!0);V("inputStyle",cj?"contenteditable":"textarea",function(){throw Error("inputStyle can not (yet) be changed in a running editor");},!0);V("spellcheck",!1,function(ua,Fa){return ua.getInputField().spellcheck=Fa},!0);V("autocorrect",!1,function(ua,Fa){return ua.getInputField().autocorrect=Fa},!0);V("autocapitalize",!1,function(ua,Fa){return ua.getInputField().autocapitalize=Fa},!0);V("rtlMoveVisually",!mh);V("wholeLineUpdateBefore",!0);V("theme", "default",function(ua){Mg(ua);ql(ua)},!0);V("keyMap","default",function(ua,Fa,$a){Fa=bk(Fa);($a=$a!=mg&&bk($a))&&$a.detach&&$a.detach(ua,Fa);Fa.attach&&Fa.attach(ua,$a||null)});V("extraKeys",null);V("configureMouse",null);V("lineWrapping",!1,mi,!0);V("gutters",[],function(ua,Fa){ua.display.gutterSpecs=yk(Fa,ua.options.lineNumbers);ql(ua)},!0);V("fixedGutter",!0,function(ua,Fa){ua.display.gutters.style.left=Fa?Se(ua.display)+"px":"0";ua.refresh()},!0);V("coverGutterNextToScrollbar",!1,function(ua){return pl(ua)}, !0);V("scrollbarStyle","native",function(ua){gk(ua);pl(ua);ua.display.scrollbars.setScrollTop(ua.doc.scrollTop);ua.display.scrollbars.setScrollLeft(ua.doc.scrollLeft)},!0);V("lineNumbers",!1,function(ua,Fa){ua.display.gutterSpecs=yk(ua.options.gutters,Fa);ql(ua)},!0);V("firstLineNumber",1,ql,!0);V("lineNumberFormatter",function(ua){return ua},ql,!0);V("showCursorWhenSelecting",!1,ci,!0);V("resetSelectionOnContextMenu",!0);V("lineWiseCopyCut",!0);V("pasteLinesPerSelection",!0);V("selectionsMayTouch", !1);V("readOnly",!1,function(ua,Fa){"nocursor"==Fa&&(Xg(ua),ua.display.input.blur());ua.display.input.readOnlyChanged(Fa)});V("screenReaderLabel",null,function(ua,Fa){ua.display.input.screenReaderLabelChanged(""===Fa?null:Fa)});V("disableInput",!1,function(ua,Fa){Fa||ua.display.input.reset()},!0);V("dragDrop",!0,Bj);V("allowDropFileTypes",null);V("cursorBlinkRate",530);V("cursorScrollMargin",0);V("cursorHeight",1,ci,!0);V("singleCursorHeightPerLine",!0,ci,!0);V("workTime",100);V("workDelay",100); V("flattenSpans",!0,Ui,!0);V("addModeClass",!1,Ui,!0);V("pollInterval",100);V("undoDepth",200,function(ua,Fa){return ua.doc.history.undoDepth=Fa});V("historyEventDelay",1250);V("viewportMargin",10,function(ua){return ua.refresh()},!0);V("maxHighlightLength",1E4,Ui,!0);V("moveInputWithCursor",!0,function(ua,Fa){Fa||ua.display.input.resetPosition()});V("tabindex",null,function(ua,Fa){return ua.display.input.getField().tabIndex=Fa||""});V("autofocus",null);V("direction","ltr",function(ua,Fa){return ua.doc.setDirection(Fa)}, !0);V("phrases",null)})(ph);(function(y){var V=y.optionHandlers,xa=y.helpers={};y.prototype={constructor:y,focus:function(){window.focus();this.display.input.focus()},setOption:function(ua,Fa){var $a=this.options,qb=$a[ua];if($a[ua]!=Fa||"mode"==ua)$a[ua]=Fa,V.hasOwnProperty(ua)&&vg(this,V[ua])(this,Fa,qb),S(this,"optionChange",this,ua)},getOption:function(ua){return this.options[ua]},getDoc:function(){return this.doc},addKeyMap:function(ua,Fa){this.state.keyMaps[Fa?"push":"unshift"](bk(ua))},removeKeyMap:function(ua){for(var Fa= this.state.keyMaps,$a=0;$a$a&&(lh(this,ub.head.line,ua,!0),$a=ub.head.line,qb==this.doc.sel.primIndex&&wh(this)); else{var Xb=ub.from();ub=ub.to();var Cc=Math.max($a,Xb.line);$a=Math.min(this.lastLine(),ub.line-(ub.ch?0:1))+1;for(ub=Cc;ub<$a;++ub)lh(this,ub,ua);ub=this.doc.sel.ranges;0==Xb.ch&&Fa.length==ub.length&&0>1;if((ub?Fa[2*ub-1]:0)>=ua)qb=ub;else if(Fa[2*ub+1]$a?Fa:0==$a?null:Fa.slice(0,$a-1)},getModeAt:function(ua){var Fa=this.doc.mode;return Fa.innerMode?y.innerMode(Fa,this.getTokenAt(ua).state).mode:Fa},getHelper:function(ua,Fa){return this.getHelpers(ua,Fa)[0]},getHelpers:function(ua,Fa){var $a=[];if(!xa.hasOwnProperty(Fa))return $a;var qb=xa[Fa];ua=this.getModeAt(ua);if("string"== typeof ua[Fa])qb[ua[Fa]]&&$a.push(qb[ua[Fa]]);else if(ua[Fa])for(var ub=0;ubub&&(ua=ub,qb=!0);ua=Ea(this.doc,ua)}return Xd(this,ua,{top:0,left:0},Fa||"page",$a||qb).top+(qb?this.doc.height-rb(ua):0)},defaultTextHeight:function(){return Rc(this.display)},defaultCharWidth:function(){return kd(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(ua,Fa,$a,qb,ub){var Xb=this.display;ua=gf(this,jb(this.doc,ua));var Cc=ua.bottom,Dc=ua.left;Fa.style.position= "absolute";Fa.setAttribute("cm-ignore-events","true");this.display.input.setUneditable(Fa);Xb.sizer.appendChild(Fa);if("over"==qb)Cc=ua.top;else if("above"==qb||"near"==qb){var Fd=Math.max(Xb.wrapper.clientHeight,this.doc.height),Md=Math.max(Xb.sizer.clientWidth,Xb.lineSpace.clientWidth);("above"==qb||ua.bottom+Fa.offsetHeight>Fd)&&ua.top>Fa.offsetHeight?Cc=ua.top-Fa.offsetHeight:ua.bottom+Fa.offsetHeight<=Fd&&(Cc=ua.bottom);Dc+Fa.offsetWidth>Md&&(Dc=Md-Fa.offsetWidth)}Fa.style.top=Cc+"px";Fa.style.left= Fa.style.right="";"right"==ub?(Dc=Xb.sizer.clientWidth-Fa.offsetWidth,Fa.style.right="0px"):("left"==ub?Dc=0:"middle"==ub&&(Dc=(Xb.sizer.clientWidth-Fa.offsetWidth)/2),Fa.style.left=Dc+"px");$a&&(ua=ek(this,{left:Dc,top:Cc,right:Dc+Fa.offsetWidth,bottom:Cc+Fa.offsetHeight}),null!=ua.scrollTop&&ui(this,ua.scrollTop),null!=ua.scrollLeft&&Nj(this,ua.scrollLeft))},triggerOnKeyDown:qj(ok),triggerOnKeyPress:qj(pk),triggerOnKeyUp:wj,triggerOnMouseDown:qj(zh),execCommand:function(ua){if(xm.hasOwnProperty(ua))return xm[ua].call(null, this)},triggerElectric:qj(function(ua){$i(this,ua)}),findPosH:function(ua,Fa,$a,qb){var ub=1;0>Fa&&(ub=-1,Fa=-Fa);ua=jb(this.doc,ua);for(var Xb=0;Xbua?qb.from():qb.to()},ck)}),deleteH:qj(function(ua,Fa){var $a=this.doc;this.doc.sel.somethingSelected()?$a.replaceSelection("", null,"+delete"):Rk(this,function(qb){var ub=ka($a,qb.head,ua,Fa,!1);return 0>ua?{from:ub,to:qb.head}:{from:qb.head,to:ub}})}),findPosV:function(ua,Fa,$a,qb){var ub=1;0>Fa&&(ub=-1,Fa=-Fa);var Xb=jb(this.doc,ua);for(ua=0;uaua? Dc.from():Dc.to();var Fd=gf($a,Dc.head,"div");null!=Dc.goalColumn&&(Fd.left=Dc.goalColumn);ub.push(Fd.left);var Md=Eb($a,Fd,ua,Fa);"page"==Fa&&Dc==qb.sel.primary()&&Jk($a,we($a,Md,"div").top-Fd.top);return Md},ck);if(ub.length)for(var Cc=0;Cck(gl,Hm)&&(ph.prototype[Hm]=function(y){return function(){return y.apply(this.doc,arguments)}}(Jf.prototype[Hm]));da(Jf);ph.inputStyles={textarea:Si,contenteditable:Yf};ph.defineMode=function(y){ph.defaults.mode||"null"==y||(ph.defaults.mode=y);ia.apply(this,arguments)};ph.defineMIME=function(y,V){pm[y]=V};ph.defineMode("null",function(){return{token:function(y){return y.skipToEnd()}}});ph.defineMIME("text/plain","null");ph.defineExtension= function(y,V){ph.prototype[y]=V};ph.defineDocExtension=function(y,V){Jf.prototype[y]=V};ph.fromTextArea=function(y,V){function xa(){y.value=ub.getValue()}V=V?r(V):{};V.value=y.value;!V.tabindex&&y.tabIndex&&(V.tabindex=y.tabIndex);!V.placeholder&&y.placeholder&&(V.placeholder=y.placeholder);if(null==V.autofocus){var ua=B();V.autofocus=ua==y||null!=y.getAttribute("autofocus")&&ua==document.body}if(y.form&&(ug(y.form,"submit",xa),!V.leaveSubmitMethodAlone)){var Fa=y.form;var $a=Fa.submit;try{var qb= Fa.submit=function(){xa();Fa.submit=$a;Fa.submit();Fa.submit=qb}}catch(Xb){}}V.finishInit=function(Xb){Xb.save=xa;Xb.getTextArea=function(){return y};Xb.toTextArea=function(){Xb.toTextArea=isNaN;xa();y.parentNode.removeChild(Xb.getWrapperElement());y.style.display="";y.form&&(M(y.form,"submit",xa),V.leaveSubmitMethodAlone||"function"!=typeof y.form.submit||(y.form.submit=$a))}};y.style.display="none";var ub=ph(function(Xb){return y.parentNode.insertBefore(Xb,y.nextSibling)},V);return ub};(function(y){y.off= M;y.on=ug;y.wheelEventPixels=Ci;y.Doc=Jf;y.splitLines=Zk;y.countColumn=h;y.findColumn=f;y.isWordChar=l;y.Pass=aj;y.signal=S;y.Line=Ei;y.changeEnd=Ph;y.scrollbarModel=Ol;y.Pos=Ca;y.cmpPos=sa;y.modes=oi;y.mimeModes=pm;y.resolveMode=ea;y.getMode=qa;y.modeExtensions=rm;y.extendMode=za;y.copyState=ya;y.startState=Ua;y.innerMode=Ha;y.commands=xm;y.keyMap=bm;y.keyName=nk;y.isModifierKey=Sj;y.lookupKey=tl;y.normalizeKeyMap=wm;y.StringStream=Ri;y.SharedTextMarker=ol;y.TextMarker=Pf;y.LineWidget=Ug;y.e_preventDefault= ba;y.e_stopPropagation=H;y.e_stop=N;y.addClass=C;y.contains=w;y.rmClass=Dg;y.keyNames=pi})(ph);ph.version="5.58.1";return ph})}; shadow$provide[455]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){function R(h,k){return"pairs"==k&&"string"==typeof h?h:"object"==typeof h&&null!=h[k]?h[k]:a[k]}function A(h){for(var k=0;kE;E++)h.execCommand("goCharRight");else if("surround"==l){var aa=h.getSelections();for(E=0;Ef))for(L==K.line&&(u=K.ch-(0>r?1:0));u!=m;u+=r){var l=z.charAt(u);if(k.test(l)&&(void 0===h||a.getTokenTypeAt(B(L,u+1))==h)){var J=C[l];if(J&&"\x3e"==J.charAt(1)==0document.documentMode),B=q.Pos,C={"(":")\x3e",")":"(\x3c","[":"]\x3e","]":"[\x3c","{":"}\x3e","}":"{\x3c","\x3c":"\x3e\x3e","\x3e":"\x3c\x3c"};q.defineOption("matchBrackets",!1,function(a,K,r){function h(k){k.state.matchBrackets&&k.state.matchBrackets.currentlyHighlighted&& (k.state.matchBrackets.currentlyHighlighted(),k.state.matchBrackets.currentlyHighlighted=null)}r&&r!=q.Init&&(a.off("cursorActivity",d),a.off("focus",d),a.off("blur",h),h(a));K&&(a.state.matchBrackets="object"==typeof K?K:{},a.on("cursorActivity",d),a.on("focus",d),a.on("blur",h))});q.defineExtension("matchBrackets",function(){t(this,!0)});q.defineExtension("findMatchingBracket",function(a,K,r){if(r||"boolean"==typeof K)r?(r.strict=K,K=r):K=K?{strict:!0}:null;return R(this,a,K)});q.defineExtension("scanForBracket", function(a,K,r,h){return A(this,a,K,r,h)})})}; shadow$provide[457]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){function R(w){for(var B=0;BL.clientHeight+1;var M=f.getScrollInfo(); 0E&&(L.style.height=E-5+"px",L.style.top=(F=u.bottom-J.top-T)+"px",T=f.getCursor(),h.from.ch!=T.ch&&(u=f.cursorCoords(T),L.style.left=(X=u.left-m)+"px",J=L.getBoundingClientRect())));T=J.right-l;0l&&(L.style.width=l-5+"px",T-=J.right-J.left-l),L.style.left=(X=u.left-T-m)+"px");if(Z)for(u=L.firstChild;u;u=u.nextSibling)u.style.paddingRight=f.display.nativeBarWidth+"px";f.addKeyMap(this.keyMap= A(r,{moveFocus:function(D,O){k.changeActive(k.selectedHint+D,O)},setFocus:function(D){k.changeActive(D)},menuSize:function(){return k.screenAmount()},length:z.length,close:function(){r.close()},pick:function(){k.pick()},data:h}));if(r.options.closeOnUnfocus){var S;f.on("blur",this.onBlur=function(){S=setTimeout(function(){r.close()},100)});f.on("focus",this.onFocus=function(){clearTimeout(S)})}f.on("scroll",this.onScroll=function(){var D=f.getScrollInfo(),O=f.getWrapperElement().getBoundingClientRect(), P=F+M.top-D.top,da=P-(x.pageYOffset||(v.documentElement||v.body).scrollTop);ha||(da+=L.offsetHeight);if(da<=O.top||da>=O.bottom)return r.close();L.style.top=P+"px";L.style.left=X+M.left-D.left+"px"});q.on(L,"dblclick",function(D){(D=t(L,D.target||D.srcElement))&&null!=D.hintId&&(k.changeActive(D.hintId),k.pick())});q.on(L,"click",function(D){(D=t(L,D.target||D.srcElement))&&null!=D.hintId&&(k.changeActive(D.hintId),r.options.completeOnSingleClick&&k.pick())});q.on(L,"mousedown",function(){setTimeout(function(){f.focus()}, 20)});this.scrollToActive();q.signal(h,"select",z[this.selectedHint],L.childNodes[this.selectedHint]);return!0}function w(r,h){if(!r.somethingSelected())return h;r=[];for(var k=0;k=this.data.list.length?r=h?this.data.list.length-1:0:0>r&&(r=h?0:this.data.list.length-1);if(this.selectedHint!=r){if(h=this.hints.childNodes[this.selectedHint])h.className=h.className.replace(" CodeMirror-hint-active", "");h=this.hints.childNodes[this.selectedHint=r];h.className+=" CodeMirror-hint-active";this.scrollToActive();q.signal(this.data,"select",this.data.list[this.selectedHint],h)}},scrollToActive:function(){var r=this.completion.options.scrollMargin||0,h=this.hints.childNodes[Math.max(0,this.selectedHint-r)];r=this.hints.childNodes[Math.min(this.data.list.length-1,this.selectedHint+r)];var k=this.hints.firstChild;h.offsetTopthis.hints.scrollTop+this.hints.clientHeight&&(this.hints.scrollTop=r.offsetTop+r.offsetHeight-this.hints.clientHeight+k.offsetTop)},screenAmount:function(){return Math.floor(this.hints.clientHeight/this.hints.firstChild.offsetHeight)||1}};q.registerHelper("hint","auto",{resolve:function(r,h){var k=r.getHelpers(h,"hint"),f;return k.length?(r=function(v,x,L){function z(m){if(m==u.length)return x(null);B(u[m],v,L,function(l){l&&0,]/,closeOnUnfocus:!0,completeOnSingleClick:!0,container:null,customKeys:null,extraKeys:null};q.defineOption("hintOptions",null)})}; shadow$provide[459]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){q.defineMode("apl",function(){var R={".":"innerProduct","\\":"scan","/":"reduce","⌿":"reduce1Axis","⍀":"scan1Axis","¨":"each","⍣":"power"},A={"+":["conjugate","add"],"−":["negate","subtract"],"×":["signOf","multiply"],"÷":["reciprocal","divide"],"⌈":["ceiling","greaterOf"],"⌊":["floor","lesserOf"], "∣":["absolute","residue"],"⍳":["indexGenerate","indexOf"],"?":["roll","deal"],"⋆":["exponentiate","toThePowerOf"],"⍟":["naturalLog","logToTheBase"],"○":["piTimes","circularFuncs"],"!":["factorial","binomial"],"⌹":["matrixInverse","matrixDivide"],"\x3c":[null,"lessThan"],"≤":[null,"lessThanOrEqual"],"\x3d":[null,"equals"],"\x3e":[null,"greaterThan"],"≥":[null,"greaterThanOrEqual"],"≠":[null,"notEqual"],"≡":["depth","match"],"≢":[null,"notMatch"],"∈":["enlist","membership"],"⍷":[null,"find"],"∪":["unique", "union"],"∩":[null,"intersection"],"∼":["not","without"],"∨":[null,"or"],"∧":[null,"and"],"⍱":[null,"nor"],"⍲":[null,"nand"],"⍴":["shapeOf","reshape"],",":["ravel","catenate"],"⍪":[null,"firstAxisCatenate"],"⌽":["reverse","rotate"],"⊖":["axis1Reverse","axis1Rotate"],"⍉":["transpose",null],"↑":["first","take"],"↓":[null,"drop"],"⊂":["enclose","partitionWithAxis"],"⊃":["diclose","pick"],"⌷":[null,"index"],"⍋":["gradeUp",null],"⍒":["gradeDown",null],"⊤":["encode",null],"⊥":["decode",null],"⍕":["format", "formatByExample"],"⍎":["execute",null],"⊣":["stop","left"],"⊢":["pass","right"]},t=/[\.\/⌿⍀¨⍣]/,d=/⍬/,w=/[\+−×÷⌈⌊∣⍳\?⋆⍟○!⌹<≤=>≥≠≡≢∈⍷∪∩∼∨∧⍱⍲⍴,⍪⌽⊖⍉↑↓⊂⊃⌷⍋⍒⊤⊥⍕⍎⊣⊢]/,B=/←/,C=/[⍝#].*$/,a=function(K){var r=!1;return function(h){r=h;return h===K?"\\"===r:!0}};return{startState:function(){return{prev:!1,func:!1,op:!1,string:!1,escape:!1}},token:function(K,r){if(K.eatSpace())return null;var h=K.next();if('"'===h||"'"===h)return K.eatWhile(a(h)),K.next(),r.prev=!0,"string";if(/[\[{\(]/.test(h))return r.prev= !1,null;if(/[\]}\)]/.test(h))return r.prev=!0,null;if(d.test(h))return r.prev=!1,"niladic";if(/[¯\d]/.test(h))return r.func?(r.func=!1,r.prev=!1):r.prev=!0,K.eatWhile(/[\w\.]/),"number";if(t.test(h))return"operator apl-"+R[h];if(B.test(h))return"apl-arrow";if(w.test(h))return K="apl-",null!=A[h]&&(K=r.prev?K+A[h][1]:K+A[h][0]),r.func=!0,r.prev=!1,"function "+K;if(C.test(h))return K.skipToEnd(),"comment";if("∘"===h&&"."===K.peek())return K.next(),"function jot-dot";K.eatWhile(/[\w\$_]/);r.prev=!0; return"keyword"}}});q.defineMIME("text/apl","apl")})}; shadow$provide[460]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){function R(A){var t=A.match(/^\s*\S/);A.skipToEnd();return t?"error":null}q.defineMode("asciiarmor",function(){return{token:function(A,t){var d;if("top"==t.state)return A.sol()&&(d=A.match(/^-----BEGIN (.*)?-----\s*$/))?(t.state="headers",t.type=d[1],"tag"):R(A);if("headers"==t.state){if(A.sol()&& A.match(/^\w+:/))return t.state="header","atom";if(A=R(A))t.state="body";return A}if("header"==t.state)return A.skipToEnd(),t.state="headers","string";if("body"==t.state){if(A.sol()&&(d=A.match(/^-----END (.*)?-----\s*$/))){if(d[1]!=t.type)return"error";t.state="end";return"tag"}if(A.eatWhile(/[A-Za-z0-9+\/=]/))return null;A.next();return"error"}if("end"==t.state)return R(A)},blankLine:function(A){"headers"==A.state&&(A.state="body")},startState:function(){return{state:"top",type:null}}}});q.defineMIME("application/pgp", "asciiarmor");q.defineMIME("application/pgp-encrypted","asciiarmor");q.defineMIME("application/pgp-keys","asciiarmor");q.defineMIME("application/pgp-signature","asciiarmor")})}; shadow$provide[461]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){function R(A){var t={};A=A.split(" ");for(var d=0;d?$/.test(C))return B.extenExten=!0,B.extenStart=!1,"strong";B.extenStart=!1;w.skipToEnd();return"error"}if(B.extenExten)return B.extenExten=!1,B.extenPriority=!0,w.eatWhile(/[^,]/),B.extenInclude&&(w.skipToEnd(),B.extenPriority=!1,B.extenInclude= !1),B.extenSame&&(B.extenPriority=!1,B.extenSame=!1,B.extenApplication=!0),"tag";if(B.extenPriority){B.extenPriority=!1;B.extenApplication=!0;w.next();if(B.extenSame)return null;w.eatWhile(/[^,]/);return"number"}if(B.extenApplication){w.eatWhile(/,/);C=w.current();if(","===C)return null;w.eatWhile(/\w/);C=w.current().toLowerCase();B.extenApplication=!1;if(-1!==d.indexOf(C))return"def strong"}else return R(w,B);return null},blockCommentStart:";--",blockCommentEnd:"--;",lineComment:";"}});q.defineMIME("text/x-asterisk", "asterisk")})}; shadow$provide[463]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){var R="\x3e\x3c+-.,[]".split("");q.defineMode("brainfuck",function(){return{startState:function(){return{commentLine:!1,left:0,right:0,commentLoop:!1}},token:function(A,t){if(A.eatSpace())return null;A.sol()&&(t.commentLine=!1);var d=A.next().toString();if(-1!==R.indexOf(d)){if(!0===t.commentLine)return A.eol()&& (t.commentLine=!1),"comment";if("]"===d||"["===d)return"["===d?t.left++:t.right++,"bracket";if("+"===d||"-"===d)return"keyword";if("\x3c"===d||"\x3e"===d)return"atom";if("."===d||","===d)return"def"}else return t.commentLine=!0,A.eol()&&(t.commentLine=!1),"comment";A.eol()&&(t.commentLine=!1)}}});q.defineMIME("text/x-brainfuck","brainfuck")})}; shadow$provide[464]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){function R(Z,E,aa,M,S,D){this.indented=Z;this.column=E;this.type=aa;this.info=M;this.align=S;this.prev=D}function A(Z,E,aa,M){var S=Z.indented;Z.context&&"statement"==Z.context.type&&"statement"!=aa&&(S=Z.context.indented);return Z.context=new R(S,E,aa,M,null,Z.context)}function t(Z){var E=Z.context.type; if(")"==E||"]"==E||"}"==E)Z.indented=Z.context.indented;return Z.context=Z.context.prev}function d(Z,E,aa){if("variable"==E.prevToken||"type"==E.prevToken||/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(Z.string.slice(0,aa))||E.typeAtEndOfLine&&Z.column()==Z.indentation())return!0}function w(Z){for(;;){if(!Z||"top"==Z.type)return!0;if("}"==Z.type&&"namespace"!=Z.prev.info)return!1;Z=Z.prev}}function B(Z){var E={};Z=Z.split(" ");for(var aa=0;aaZ.length||"_"!=Z[0]?!1:"_"==Z[1]||Z[1]!==Z[1].toLowerCase()}function f(Z){Z.eatWhile(/[\w\.']/);return"number"} function v(Z,E){Z.backUp(1);if(Z.match(/(R|u8R|uR|UR|LR)/)){var aa=Z.match(/"([^\s\\()]{0,16})\(/);if(!aa)return!1;E.cpp11RawStringDelim=aa[1];E.tokenize=z;return z(Z,E)}if(Z.match(/(u8|u|U|L)/))return Z.match(/["']/,!1)?"string":!1;Z.next();return!1}function x(Z){return(Z=/(\w+)::~?(\w+)$/.exec(Z))&&Z[1]==Z[2]}function L(Z,E){for(var aa;null!=(aa=Z.next());)if('"'==aa&&!Z.eat('"')){E.tokenize=null;break}return"string"}function z(Z,E){var aa=E.cpp11RawStringDelim.replace(/[^\w\s]/g,"\\$\x26");Z.match(new RegExp(".*?\\)"+ aa+'"'))?E.tokenize=null:Z.skipToEnd();return"string"}function u(Z,E){function aa(D){if(D)for(var O in D)D.hasOwnProperty(O)&&M.push(O)}"string"==typeof Z&&(Z=[Z]);var M=[];aa(E.keywords);aa(E.types);aa(E.builtin);aa(E.atoms);M.length&&(E.helperType=Z[0],q.registerHelper("hintWords",Z[0],M));for(var S=0;S!?|\/]/,Xa=E.isIdentifierChar||/[\w\$_\xa1-\uffff]/,Ma=E.isReservedIdentifier||!1,eb,db;return{startState:function(Na){return{tokenize:null,context:new R((Na||0)-O,0,"top",null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(Na,oa){var Ca=oa.context;Na.sol()&& (null==Ca.align&&(Ca.align=!1),oa.indented=Na.indentation(),oa.startOfLine=!0);if(Na.eatSpace())return D(Na,oa),null;eb=db=null;var sa=(oa.tokenize||aa)(Na,oa);if("comment"==sa||"meta"==sa)return sa;null==Ca.align&&(Ca.align=!0);if(";"==eb||":"==eb||","==eb&&Na.match(/^\s*(?:\/\/.*)?$/,!1))for(;"statement"==oa.context.type;)t(oa);else if("{"==eb)A(oa,Na.column(),"}");else if("["==eb)A(oa,Na.column(),"]");else if("("==eb)A(oa,Na.column(),")");else if("}"==eb){for(;"statement"==Ca.type;)Ca=t(oa);for("}"== Ca.type&&(Ca=t(oa));"statement"==Ca.type;)Ca=t(oa)}else eb==Ca.type?t(oa):za&&(("}"==Ca.type||"top"==Ca.type)&&";"!=eb||"statement"==Ca.type&&"newstatement"==eb)&&A(oa,Na.column(),"statement",Na.current());"variable"==sa&&("def"==oa.prevToken||E.typeFirstDefinitions&&d(Na,oa,Na.start)&&w(oa.context)&&Na.match(/^\s*\(/,!1))&&(sa="def");ea.token&&(Ca=ea.token(Na,oa,sa),void 0!==Ca&&(sa=Ca));"def"==sa&&!1===E.styleDefs&&(sa="variable");oa.startOfLine=!1;oa.prevToken=db?"def":sa||eb;D(Na,oa);return sa}, indent:function(Na,oa){if(Na.tokenize!=aa&&null!=Na.tokenize||Na.typeAtEndOfLine)return q.Pass;var Ca=Na.context,sa=oa&&oa.charAt(0),Aa=sa==Ca.type;"statement"==Ca.type&&"}"==sa&&(Ca=Ca.prev);if(E.dontIndentStatements)for(;"statement"==Ca.type&&E.dontIndentStatements.test(Ca.info);)Ca=Ca.prev;if(ea.indent&&(Na=ea.indent(Na,Ca,oa,O),"number"==typeof Na))return Na;Na=Ca.prev&&"switch"==Ca.prev.info;if(E.allmanIndentation&&/[{(]/.test(sa)){for(;"top"!=Ca.type&&"}"!=Ca.type;)Ca=Ca.prev;return Ca.indented}return"statement"== Ca.type?Ca.indented+("{"==sa?0:P):!Ca.align||da&&")"==Ca.type?")"!=Ca.type||Aa?Ca.indented+(Aa?0:O)+(Aa||!Na||/^(?:case|default)\b/.test(oa)?0:O):Ca.indented+P:Ca.column+(Aa?0:1)},electricInput:!1!==E.indentSwitch?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:"//",fold:"brace"}});var F=B("int long char short double float unsigned signed void bool"),ha=B("SEL instancetype id Class Protocol BOOL");u(["text/x-csrc", "text/x-c","text/x-chdr"],{name:"clike",keywords:B("auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran"),types:a,blockKeywords:B("case do else for if switch while struct enum union"),defKeywords:B("struct enum union"),typeFirstDefinitions:!0,atoms:B("NULL true false"),isReservedIdentifier:k,hooks:{"#":r,"*":h},modeProps:{fold:["brace","include"]}});u(["text/x-c++src","text/x-c++hdr"], {name:"clike",keywords:B("auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran alignas alignof and and_eq audit axiom bitand bitor catch class compl concept constexpr const_cast decltype delete dynamic_cast explicit export final friend import module mutable namespace new noexcept not not_eq operator or or_eq override private protected public reinterpret_cast requires static_assert static_cast template this thread_local throw try typeid typename using virtual xor xor_eq"), types:a,blockKeywords:B("case do else for if switch while struct enum union class try catch"),defKeywords:B("struct enum union class namespace"),typeFirstDefinitions:!0,atoms:B("true false NULL nullptr"),dontIndentStatements:/^template$/,isIdentifierChar:/[\w\$_~\xa1-\uffff]/,isReservedIdentifier:k,hooks:{"#":r,"*":h,u:v,U:v,L:v,R:v,0:f,1:f,2:f,3:f,4:f,5:f,6:f,7:f,8:f,9:f,token:function(Z,E,aa){if("variable"==aa&&"("==Z.peek()&&(";"==E.prevToken||null==E.prevToken||"}"==E.prevToken)&&x(Z.current()))return"def"}}, namespaceSeparator:"::",modeProps:{fold:["brace","include"]}});u("text/x-java",{name:"clike",keywords:B("abstract assert break case catch class const continue default do else enum extends final finally for goto if implements import instanceof interface native new package private protected public return static strictfp super switch synchronized this throw throws transient try volatile while @interface"),types:B("byte short int long float double boolean char void Boolean Byte Character Double Float Integer Long Number Object Short String StringBuffer StringBuilder Void"), blockKeywords:B("catch class do else finally for if switch try while"),defKeywords:B("class interface enum @interface"),typeFirstDefinitions:!0,atoms:B("true false null"),number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+\.?\d*|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,hooks:{"@":function(Z){if(Z.match("interface",!1))return!1;Z.eatWhile(/[\w\$_]/);return"meta"}},modeProps:{fold:["brace","import"]}});u("text/x-csharp",{name:"clike",keywords:B("abstract as async await base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in interface internal is lock namespace new operator out override params private protected public readonly ref return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"), types:B("Action Boolean Byte Char DateTime DateTimeOffset Decimal Double Func Guid Int16 Int32 Int64 Object SByte Single String Task TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),blockKeywords:B("catch class do else finally for foreach if struct switch try while"),defKeywords:B("class interface namespace struct var"),typeFirstDefinitions:!0,atoms:B("true false null"),hooks:{"@":function(Z,E){if(Z.eat('"'))return E.tokenize= L,L(Z,E);Z.eatWhile(/[\w\$_]/);return"meta"}}});u("text/x-scala",{name:"clike",keywords:B("abstract case catch class def do else extends final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try type val var while with yield _ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble"),types:B("AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Int Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"), multiLineStrings:!0,blockKeywords:B("catch class enum do else finally for forSome if match switch try while"),defKeywords:B("class enum def object package trait type val var"),atoms:B("true false null"),indentStatements:!1,indentSwitch:!1,isOperatorChar:/[+\-*&%=<>!?|\/#:@]/,hooks:{"@":function(Z){Z.eatWhile(/[\w\$_]/);return"meta"},'"':function(Z,E){if(!Z.match('""'))return!1;E.tokenize=m;return E.tokenize(Z,E)},"'":function(Z){Z.eatWhile(/[\w\$_\xa1-\uffff]/);return"atom"},"\x3d":function(Z,E){var aa= E.context;return"}"==aa.type&&aa.align&&Z.eat("\x3e")?(E.context=new R(aa.indented,aa.column,aa.type,aa.info,null,aa.prev),"operator"):!1},"/":function(Z,E){if(!Z.eat("*"))return!1;E.tokenize=l(1);return E.tokenize(Z,E)}},modeProps:{closeBrackets:{pairs:'()[]{}""',triples:'"'}}});u("text/x-kotlin",{name:"clike",keywords:B("package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam"), types:B("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit"),intendSwitch:!1, indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,blockKeywords:B("catch class do else finally for if where try while enum"),defKeywords:B("class val var object interface fun"),atoms:B("true false null this"),hooks:{"@":function(Z){Z.eatWhile(/[\w\$_]/);return"meta"},"*":function(Z,E){return"."==E.prevToken?"variable":"operator"},'"':function(Z,E){E.tokenize=J(Z.match('""'));return E.tokenize(Z,E)},"/":function(Z,E){if(!Z.eat("*"))return!1; E.tokenize=l(1);return E.tokenize(Z,E)},indent:function(Z,E,aa,M){var S=aa&&aa.charAt(0);if(("}"==Z.prevToken||")"==Z.prevToken)&&""==aa)return Z.indented;if("operator"==Z.prevToken&&"}"!=aa&&"}"!=Z.context.type||"variable"==Z.prevToken&&"."==S||("}"==Z.prevToken||")"==Z.prevToken)&&"."==S)return 2*M+E.indented;if(E.align&&"}"==E.type)return E.indented+(Z.context.type==(aa||"").charAt(0)?0:M)}},modeProps:{closeBrackets:{triples:'"'}}});u(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:B("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"), types:B("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:B("for while do if else struct"),builtin:B("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"), atoms:B("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TexureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"), indentSwitch:!1,hooks:{"#":r},modeProps:{fold:["brace","include"]}});u("text/x-nesc",{name:"clike",keywords:B("auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:a,blockKeywords:B("case do else for if switch while struct enum union"), atoms:B("null true false"),hooks:{"#":r},modeProps:{fold:["brace","include"]}});u("text/x-objectivec",{name:"clike",keywords:B("auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran bycopy byref in inout oneway out self super atomic nonatomic retain copy readwrite readonly strong weak assign typeof nullable nonnull null_resettable _cmd @interface @implementation @end @protocol @encode @property @synthesize @dynamic @class @public @package @private @protected @required @optional @try @catch @finally @import @selector @encode @defs @synchronized @autoreleasepool @compatibility_alias @available"), types:K,builtin:B("FOUNDATION_EXPORT FOUNDATION_EXTERN NS_INLINE NS_FORMAT_FUNCTION NS_RETURNS_RETAINEDNS_ERROR_ENUM NS_RETURNS_NOT_RETAINED NS_RETURNS_INNER_POINTER NS_DESIGNATED_INITIALIZER NS_ENUM NS_OPTIONS NS_REQUIRES_NIL_TERMINATION NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_SWIFT_NAME NS_REFINED_FOR_SWIFT"),blockKeywords:B("case do else for if switch while struct enum union @synthesize @try @catch @finally @autoreleasepool @synchronized"),defKeywords:B("struct enum union @interface @implementation @protocol @class"), dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:B("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:k,hooks:{"#":r,"*":h},modeProps:{fold:["brace","include"]}});u("text/x-objectivec++",{name:"clike",keywords:B("auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran bycopy byref in inout oneway out self super atomic nonatomic retain copy readwrite readonly strong weak assign typeof nullable nonnull null_resettable _cmd @interface @implementation @end @protocol @encode @property @synthesize @dynamic @class @public @package @private @protected @required @optional @try @catch @finally @import @selector @encode @defs @synchronized @autoreleasepool @compatibility_alias @available alignas alignof and and_eq audit axiom bitand bitor catch class compl concept constexpr const_cast decltype delete dynamic_cast explicit export final friend import module mutable namespace new noexcept not not_eq operator or or_eq override private protected public reinterpret_cast requires static_assert static_cast template this thread_local throw try typeid typename using virtual xor xor_eq"), types:K,builtin:B("FOUNDATION_EXPORT FOUNDATION_EXTERN NS_INLINE NS_FORMAT_FUNCTION NS_RETURNS_RETAINEDNS_ERROR_ENUM NS_RETURNS_NOT_RETAINED NS_RETURNS_INNER_POINTER NS_DESIGNATED_INITIALIZER NS_ENUM NS_OPTIONS NS_REQUIRES_NIL_TERMINATION NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_SWIFT_NAME NS_REFINED_FOR_SWIFT"),blockKeywords:B("case do else for if switch while struct enum union @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch"),defKeywords:B("struct enum union @interface @implementation @protocol @class class namespace"), dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:B("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:k,hooks:{"#":r,"*":h,u:v,U:v,L:v,R:v,0:f,1:f,2:f,3:f,4:f,5:f,6:f,7:f,8:f,9:f,token:function(Z,E,aa){if("variable"==aa&&"("==Z.peek()&&(";"==E.prevToken||null==E.prevToken||"}"==E.prevToken)&&x(Z.current()))return"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}});u("text/x-squirrel",{name:"clike",keywords:B("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"), types:a,blockKeywords:B("case catch class else for foreach if switch try while"),defKeywords:B("function local class"),typeFirstDefinitions:!0,atoms:B("true false null"),hooks:{"#":r},modeProps:{fold:["brace","include"]}});var T=null;u("text/x-ceylon",{name:"clike",keywords:B("abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while"), types:function(Z){Z=Z.charAt(0);return Z===Z.toUpperCase()&&Z!==Z.toLowerCase()},blockKeywords:B("case catch class dynamic else finally for function if interface module new object switch try while"),defKeywords:B("class dynamic function interface module object package value"),builtin:B("abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable"),isPunctuationChar:/[\[\]{}\(\),;:\.`]/, isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:B("true false null larger smaller equal empty finished"),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(Z){Z.eatWhile(/[\w\$_]/);return"meta"},'"':function(Z,E){E.tokenize=X(Z.match('""')?"triple":"single");return E.tokenize(Z,E)},"`":function(Z,E){if(!T||!Z.match("`"))return!1;E.tokenize= T;T=null;return E.tokenize(Z,E)},"'":function(Z){Z.eatWhile(/[\w\$_\xa1-\uffff]/);return"atom"},token:function(Z,E,aa){if(("variable"==aa||"type"==aa)&&"."==E.prevToken)return"variable-2"}},modeProps:{fold:["brace","import"],closeBrackets:{triples:'"'}}})})}; shadow$provide[465]=function(wa,W,Ta,I){(function(q){"object"===typeof I&&"object"===typeof Ta?q(W(454)):"function"===typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){q.defineMode("clojure",function(R){function A(u,m){if(u.eatSpace()||u.eat(","))return["space",null];if(u.match(x))return[null,"number"];if(u.match(L))return[null,"string-2"];if(u.eat(/^"/))return(m.tokenize=t)(u,m);if(u.eat(/^[(\[{]/))return["open","bracket"];if(u.eat(/^[)\]}]/))return["close", "bracket"];if(u.eat(/^;/))return u.skipToEnd(),["space","comment"];if(u.eat(/^[#'@^`~]/))return[null,"meta"];var l=u.match(z);l=l&&l[0];return l?"comment"===l&&"("===m.lastToken?(m.tokenize=d)(u,m):B(l,r)||":"===l.charAt(0)?["symbol","atom"]:B(l,h)||B(l,k)?["symbol","keyword"]:"("===m.lastToken?["symbol","builtin"]:["symbol","variable"]:(u.next(),u.eatWhile(function(J){return!B(J,v)}),[null,"error"])}function t(u,m){for(var l=!1,J;J=u.next();){if('"'===J&&!l){m.tokenize=A;break}l=!l&&"\\"===J}return[null, "string"]}function d(u,m){for(var l=1,J;J=u.next();)if(")"===J&&l--,"("===J&&l++,0===l){u.backUp(1);m.tokenize=A;break}return["space","comment"]}function w(u){for(var m={},l=0;l=f)h="def";else if(72<=f&&79>=f)h.skipToEnd(),h="header";else if("*"== v&&6==f)h.skipToEnd(),h="comment";else if('"'==v||"'"==v)h=k.mode="string";else if("'"!=v||B.test(h.peek()))if("."==v)h="link";else if(k=v,"0"===k&&h.eat(/x/i)?(h.eatWhile(C),k=!0):("+"!=k&&"-"!=k||!w.test(h.peek())||(h.eat(a),k=h.next()),w.test(k)?(h.eat(k),h.eatWhile(w),"."==h.peek()&&(h.eat("."),h.eatWhile(w)),h.eat(K)&&(h.eat(a),h.eatWhile(w)),k=!0):k=!1),k)h="number";else{if(h.current().match(r))for(;71>f&&void 0!==h.eat(r);)f++;h=t&&t.propertyIsEnumerable(h.current().toUpperCase())?"keyword": d&&d.propertyIsEnumerable(h.current().toUpperCase())?"builtin":A&&A.propertyIsEnumerable(h.current().toUpperCase())?"atom":null}else h="atom"}return h},indent:function(h){return null==h.indentStack?h.indentation:h.indentStack.indent}}});q.defineMIME("text/x-cobol","cobol")})}; shadow$provide[468]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){q.defineMode("coffeescript",function(R,A){function t(m){return new RegExp("^(("+m.join(")|(")+"))\\b")}function d(m,l){if(m.sol()){null===l.scope.align&&(l.scope.align=!1);var J=l.scope.offset;if(m.eatSpace())return m=m.indentation(),m>J&&"coffee"==l.scope.type?"indent":m|=>|\+[+=]?|-[\-=]?|\*[\*=]?|\/[\/=]?|[=!]=|<[><]?=?|>>?=?|%=?|&=?|\|=?|\^=?|~|!|\?|(or|and|\|\||&&|\?)=)/,r=/^(?:[()\[\]{},:`=;]|\.\.?\.?)/,h=/^[_A-Za-z$][_A-Za-z$0-9]*/,k=/^@[_A-Za-z$][_A-Za-z$0-9]*/, f=t("and or not is isnt in instanceof typeof".split(" ")),v="for while loop if unless else switch try catch finally class".split(" "),x=t(v.concat("break by continue debugger delete do in of new return then this @ throw when until extends".split(" ")));v=t(v);var L=/^('{3}|"{3}|['"])/,z=/^(\/{3}|\/)/,u=t("Infinity NaN undefined null true false on off yes no".split(" "));return{startState:function(m){return{tokenize:d,scope:{offset:m||0,type:"coffee",prev:null,align:!1},prop:!1,dedent:0}},token:function(m, l){var J=null===l.scope.align&&l.scope;J&&m.sol()&&(J.align=!1);var X=l.tokenize(m,l);var F=m.current();"return"===F&&(l.dedent=!0);(("-\x3e"===F||"\x3d\x3e"===F)&&m.eol()||"indent"===X)&&C(m,l);var ha="[({".indexOf(F);-1!==ha&&C(m,l,"])}".slice(ha,ha+1));v.exec(F)&&C(m,l);"then"==F&&a(m,l);if("dedent"===X&&a(m,l))X="error";else{ha="])}".indexOf(F);if(-1!==ha){for(;"coffee"==l.scope.type&&l.scope.prev;)l.scope=l.scope.prev;l.scope.type==F&&(l.scope=l.scope.prev)}l.dedent&&m.eol()&&("coffee"==l.scope.type&& l.scope.prev&&(l.scope=l.scope.prev),l.dedent=!1)}X&&"comment"!=X&&(J&&(J.align=!0),l.prop="punctuation"==X&&"."==m.current());return X},indent:function(m,l){if(m.tokenize!=d)return 0;m=m.scope;var J=l&&-1<"])}".indexOf(l.charAt(0));if(J)for(;"coffee"==m.type&&m.prev;)m=m.prev;l=J&&m.type===l.charAt(0);return m.align?m.alignOffset-(l?1:0):(l?m.prev:m).offset},lineComment:"#",fold:"indent"}});q.defineMIME("application/vnd.coffeescript","coffeescript");q.defineMIME("text/x-coffeescript","coffeescript"); q.defineMIME("text/coffeescript","coffeescript")})}; shadow$provide[469]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){q.defineMode("commonlisp",function(R){function A(h){for(var k;k=h.next();)if("\\"==k)h.next();else if(!K.test(k)){h.backUp(1);break}return h.current()}function t(h,k){if(h.eatSpace())return r="ws",null;if(h.match(a))return"number";var f=h.next();"\\"==f&&(f=h.next());if('"'==f)return(k.tokenize=d)(h, k);if("("==f)return r="open","bracket";if(")"==f||"]"==f)return r="close","bracket";if(";"==f)return h.skipToEnd(),r="ws","comment";if(/['`,@]/.test(f))return null;if("|"==f){if(h.skipTo("|"))return h.next(),"symbol";h.skipToEnd();return"error"}if("#"==f)return f=h.next(),"("==f?(r="open","bracket"):/[+\-=\.']/.test(f)||/\d/.test(f)&&h.match(/^\d*#/)?null:"|"==f?(k.tokenize=w)(h,k):":"==f?(A(h),"meta"):"\\"==f?(h.next(),A(h),"string-2"):"error";h=A(h);if("."==h)return null;r="symbol";return"nil"== h||"t"==h||":"==h.charAt(0)?"atom":"open"==k.lastType&&(B.test(h)||C.test(h))?"keyword":"\x26"==h.charAt(0)?"variable-2":"variable"}function d(h,k){for(var f=!1,v;v=h.next();){if('"'==v&&!f){k.tokenize=t;break}f=!f&&"\\"==v}return"string"}function w(h,k){for(var f,v;f=h.next();){if("#"==f&&"|"==v){k.tokenize=t;break}v=f}r="ws";return"comment"}var B=/^(block|let*|return-from|catch|load-time-value|setq|eval-when|locally|symbol-macrolet|flet|macrolet|tagbody|function|multiple-value-call|the|go|multiple-value-prog1|throw|if|progn|unwind-protect|labels|progv|let|quote)$/, C=/^with|^def|^do|^prog|case$|^cond$|bind$|when$|unless$/,a=/^(?:[+\-]?(?:\d+|\d*\.\d+)(?:[efd][+\-]?\d+)?|[+\-]?\d+(?:\/[+\-]?\d+)?|#b[+\-]?[01]+|#o[+\-]?[0-7]+|#x[+\-]?[\da-f]+)/,K=/[^\s'`,@()\[\]";]/,r;return{startState:function(){return{ctx:{prev:null,start:0,indentTo:0},lastType:null,tokenize:t}},token:function(h,k){h.sol()&&"number"!=typeof k.ctx.indentTo&&(k.ctx.indentTo=k.ctx.start+1);r=null;var f=k.tokenize(h,k);"ws"!=r&&(null==k.ctx.indentTo?"symbol"==r&&C.test(h.current())?k.ctx.indentTo= k.ctx.start+R.indentUnit:k.ctx.indentTo="next":"next"==k.ctx.indentTo&&(k.ctx.indentTo=h.column()),k.lastType=r);"open"==r?k.ctx={prev:k.ctx,start:h.column(),indentTo:null}:"close"==r&&(k.ctx=k.ctx.prev||k.ctx);return f},indent:function(h,k){k=h.ctx.indentTo;return"number"==typeof k?k:h.ctx.start+1},closeBrackets:{pairs:'()[]{}""'},lineComment:";;",blockCommentStart:"#|",blockCommentEnd:"|#"}});q.defineMIME("text/x-common-lisp","commonlisp")})}; shadow$provide[470]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){q.defineMode("crystal",function(R){function A(E,aa){return new RegExp((aa?"":"^")+"(?:"+E.join("|")+")"+(aa?"$":"\\b"))}function t(E,aa,M){M.tokenize.push(E);return E(aa,M)}function d(E,aa){if(E.eatSpace())return null;if("\\"!=aa.lastToken&&E.match("{%",!1))return t(B("%","%"),E,aa);if("\\"!=aa.lastToken&& E.match("{{",!1))return t(B("{","}"),E,aa);if("#"==E.peek())return E.skipToEnd(),"comment";if(E.match(x)){E.eat(/[?!]/);var M=E.current();return E.eat(":")?"atom":"."==aa.lastToken?"property":z.test(M)?(m.test(M)?"fun"==M&&0<=aa.blocks.indexOf("lib")||"def"==M&&"abstract"==aa.lastToken||(aa.blocks.push(M),aa.currentIndent+=1):"operator"!=aa.lastStyle&&aa.lastStyle||!l.test(M)?"end"==M&&(aa.blocks.pop(),--aa.currentIndent):(aa.blocks.push(M),aa.currentIndent+=1),T.hasOwnProperty(M)&&aa.tokenize.push(T[M]), "keyword"):u.test(M)?"atom":"variable"}if(E.eat("@")){if("["==E.peek())return t(w("[","]","meta"),E,aa);E.eat("@");E.match(x)||E.match(L);return"variable-2"}if(E.match(L))return"tag";if(E.eat(":")){if(E.eat('"'))return t(K('"',"atom",!1),E,aa);if(E.match(x)||E.match(L)||E.match(h)||E.match(k)||E.match(f))return"atom";E.eat(":");return"operator"}if(E.eat('"'))return t(K('"',"string",!0),E,aa);if("%"==E.peek()){M="string";var S=!0;if(E.match("%r")){M="string-2";var D=E.next()}else if(E.match("%w"))S= !1,D=E.next();else if(E.match("%q"))S=!1,D=E.next();else if(D=E.match(/^%([^\w\s=])/))D=D[1];else return E.match(/^%[a-zA-Z0-9_\u009F-\uFFFF]*/)?"meta":"operator";Z.hasOwnProperty(D)&&(D=Z[D]);return t(K(D,M,S),E,aa)}if(M=E.match(/^<<-('?)([A-Z]\w*)\1/))return t(r(M[2],!M[1]),E,aa);if(E.eat("'"))return E.match(/^(?:[^']|\\(?:[befnrtv0'"]|[0-7]{3}|u(?:[0-9a-fA-F]{4}|\{[0-9a-fA-F]{1,6}\})))/),E.eat("'"),"atom";if(E.eat("0"))return E.eat("x")?E.match(/^[0-9a-fA-F]+/):E.eat("o")?E.match(/^[0-7]+/):E.eat("b")&& E.match(/^[01]+/),"number";if(E.eat(/^\d/))return E.match(/^\d*(?:\.\d+)?(?:[eE][+-]?\d+)?/),"number";if(E.match(h))return E.eat("\x3d"),"operator";if(E.match(k)||E.match(v))return"operator";if(M=E.match(/[({[]/,!1))return M=M[0],t(w(M,Z[M],null),E,aa);if(E.eat("\\"))return E.next(),"meta";E.next();return null}function w(E,aa,M,S){return function(D,O){if(!S&&D.match(E))return O.tokenize[O.tokenize.length-1]=w(E,aa,M,!0),O.currentIndent+=1,M;var P=d(D,O);D.current()===aa&&(O.tokenize.pop(),--O.currentIndent, P=M);return P}}function B(E,aa,M){return function(S,D){return!M&&S.match("{"+E)?(D.currentIndent+=1,D.tokenize[D.tokenize.length-1]=B(E,aa,!0),"meta"):S.match(aa+"}")?(--D.currentIndent,D.tokenize.pop(),"meta"):d(S,D)}}function C(E,aa){if(E.eatSpace())return null;E.match(x)?E.eat(/[!?]/):E.match(h)||E.match(k)||E.match(f);aa.tokenize.pop();return"def"}function a(E,aa){if(E.eatSpace())return null;E.match(L);aa.tokenize.pop();return"def"}function K(E,aa,M){return function(S,D){for(var O=!1;S.peek();)if(O)S.next(), O=!1;else{if(S.match("{%",!1)){D.tokenize.push(B("%","%"));break}if(S.match("{{",!1)){D.tokenize.push(B("{","}"));break}if(M&&S.match("#{",!1)){D.tokenize.push(w("#{","}","meta"));break}O=S.next();if(O==E){D.tokenize.pop();break}O=M&&"\\"==O}return aa}}function r(E,aa){return function(M,S){if(M.sol()&&(M.eatSpace(),M.match(E)))return S.tokenize.pop(),"string";for(var D=!1;M.peek();)if(D)M.next(),D=!1;else{if(M.match("{%",!1)){S.tokenize.push(B("%","%"));break}if(M.match("{{",!1)){S.tokenize.push(B("{", "}"));break}if(aa&&M.match("#{",!1)){S.tokenize.push(w("#{","}","meta"));break}D=aa&&"\\"==M.next()}return"string"}}var h=/^(?:[-+/%|&^]|\*\*?|[<>]{2})/,k=/^(?:[=!]~|===|<=>|[<>=!]=?|[|&]{2}|~)/,f=/^(?:\[\][?=]?)/,v=/^(?:\.(?:\.{2})?|->|[?:])/,x=/^[a-z_\u009F-\uFFFF][a-zA-Z0-9_\u009F-\uFFFF]*/,L=/^[A-Z_\u009F-\uFFFF][a-zA-Z0-9_\u009F-\uFFFF]*/,z=A("abstract alias as asm begin break case class def do else elsif end ensure enum extend for fun if include instance_sizeof lib macro module next of out pointerof private protected rescue return require select sizeof struct super then type typeof uninitialized union unless until when while with yield __DIR__ __END_LINE__ __FILE__ __LINE__".split(" ")), u=A(["true","false","nil","self"]),m=A("def fun macro class module struct lib enum union do for".split(" ")),l=A("if unless case while until begin then".split(" ")),J=["end","else","elsif","rescue","ensure"],X=A(J),F=["\\)","\\}","\\]"],ha=new RegExp("^(?:"+F.join("|")+")$"),T={def:C,fun:C,macro:function(E,aa){if(E.eatSpace())return null;var M;if(M=E.match(x)){if("def"==M)return"keyword";E.eat(/[?!]/)}aa.tokenize.pop();return"def"},"class":a,module:a,struct:a,lib:a,"enum":a,union:a},Z={"[":"]","{":"}", "(":")","\x3c":"\x3e"};return{startState:function(){return{tokenize:[d],currentIndent:0,lastToken:null,lastStyle:null,blocks:[]}},token:function(E,aa){var M=aa.tokenize[aa.tokenize.length-1](E,aa);E=E.current();M&&"comment"!=M&&(aa.lastToken=E,aa.lastStyle=M);return M},indent:function(E,aa){aa=aa.replace(/^\s*(?:\{%)?\s*|\s*(?:%\})?\s*$/g,"");return X.test(aa)||ha.test(aa)?R.indentUnit*(E.currentIndent-1):R.indentUnit*E.currentIndent},fold:"indent",electricInput:A(F.concat(J),!0),lineComment:"#"}}); q.defineMIME("text/x-crystal","crystal")})}; shadow$provide[471]=function(wa,W,Ta,I){(function(q){"object"==typeof I&&"object"==typeof Ta?q(W(454)):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],q):q(CodeMirror)})(function(q){function R(J){for(var X={},F=0;F*\/]/.test(db)?F(null,"select-op"):"."==db&&Ma.match(/^-?[_a-z][_a-z0-9-]*/i)?F("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(db)?F(null,db):Ma.match(/[\w-.]+(?=\()/)?(/^(url(-prefix)?|domain|regexp)$/.test(Ma.current().toLowerCase())&&(eb.tokenize=Z),F("variable callee","variable")): /[\w\\\-]/.test(db)?(Ma.eatWhile(/[\w\\\-]/),F("property","word")):F(null,null)}function T(Ma){return function(eb,db){for(var Na=!1,oa;null!=(oa=eb.next());){if(oa==Ma&&!Na){")"==Ma&&eb.backUp(1);break}Na=!Na&&"\\"==oa}if(oa==Ma||!Na&&")"!=Ma)db.tokenize=null;return F("string","string")}}function Z(Ma,eb){Ma.next();Ma.match(/\s*["')]/,!1)?eb.tokenize=null:eb.tokenize=T(")");return F(null,"(")}function E(Ma,eb,db){this.type=Ma;this.indent=eb;this.prev=db}function aa(Ma,eb,db,Na){Ma.context=new E(db, eb.indentation()+(!1===Na?0:P),Ma.context);return db}function M(Ma){Ma.context.prev&&(Ma.context=Ma.context.prev);return Ma.context.type}function S(Ma,eb,db,Na){for(Na=Na||1;0