a+h-3&&(m.scrollLeft=d+(f?0:10)-a);return m}function rc(a,b,c){null==b&&null==c||sc(a);null!=b&&(a.curOp.scrollLeft=(null==a.curOp.scrollLeft?a.doc.scrollLeft:
+a.curOp.scrollLeft)+b);null!=c&&(a.curOp.scrollTop=(null==a.curOp.scrollTop?a.doc.scrollTop:a.curOp.scrollTop)+c)}function Xa(a){sc(a);var b=a.getCursor(),c=b,d=b;a.options.lineWrapping||(c=b.ch?q(b.line,b.ch-1):b,d=q(b.line,b.ch+1));a.curOp.scrollToPos={from:c,to:d,margin:a.options.cursorScrollMargin,isCursor:!0}}function sc(a){var b=a.curOp.scrollToPos;if(b){a.curOp.scrollToPos=null;var c=xe(a,b.from),d=xe(a,b.to),b=hc(a,Math.min(c.left,d.left),Math.min(c.top,d.top)-b.margin,Math.max(c.right,d.right),
+Math.max(c.bottom,d.bottom)+b.margin);a.scrollTo(b.scrollLeft,b.scrollTop)}}function ub(a,b,c,d){var e=a.doc,f;null==c&&(c="add");"smart"==c&&(e.mode.indent?f=yb(a,b):c="prev");var g=a.options.tabSize,h=w(e,b),k=ha(h.text,null,g);h.stateAfter&&(h.stateAfter=null);var m=h.text.match(/^\s*/)[0],p;if(!d&&!/\S/.test(h.text))p=0,c="not";else if("smart"==c&&(p=e.mode.indent(f,h.text.slice(m.length),h.text),p==Je||150e.first?ha(w(e,b-1).text,null,g):0:"add"==c?p=
+k+a.options.indentUnit:"subtract"==c?p=k-a.options.indentUnit:"number"==typeof c&&(p=k+c);p=Math.max(0,p);c="";d=0;if(a.options.indentWithTabs)for(a=Math.floor(p/g);a;--a)d+=g,c+="\t";d
=t(f.from,C(d).to);){var g=d.pop();if(0>t(g.from,f.from)){f.from=g.from;break}}d.push(f)}X(a,function(){for(var b=d.length-1;0<=b;b--)bb(a.doc,"",d[b].from,d[b].to,"+delete");Xa(a)})}function vd(a,b,c,d,e){function f(b){var d=(e?kd:We)(m,h,c,!0);if(null==d){if(b=!b)b=g+c,b=a.first+a.size?b=!1:(g=b,b=m=w(a,b));if(b)h=
+e?(0>c?gc:fc)(m):0>c?m.text.length:0;else return!1}else h=d;return!0}var g=b.line,h=b.ch,k=c,m=w(a,g);if("char"==d)f();else if("column"==d)f(!0);else if("word"==d||"group"==d){var p=null;d="group"==d;for(var u=a.cm&&a.cm.getHelper(b,"wordChars"),n=!0;!(0>c)||f(!n);n=!1){var l=m.text.charAt(h)||"\n",l=uc(l,u)?"w":d&&"\n"==l?"n":!d||/\s/.test(l)?null:"p";!d||n||l||(l="s");if(p&&p!=l){0>c&&(c=1,f());break}l&&(p=l);if(0c?0>=g:g>=e.height){b.hitSide=!0;break}g+=5*c}return b}function x(a,b,c,d){l.defaults[a]=b;c&&(Sa[a]=d?function(a,b,d){d!=Jd&&c(a,b,d)}:c)}function gg(a){var b=a.split(/-(?!$)/);a=b[b.length-1];for(var c,d,e,f,g=0;g=a:k.to>a);(h||(h=[])).push(new wc(m,k.from,p?null:k.to))}}var c=h,l;if(d)for(h=0;h=e:g.to>e)||g.from==e&&"bookmark"==k.type&&(!f||g.marker.insertLeft))m=null==g.from||(k.inclusiveLeft?g.from<=e:g.fromt(g.to,e.from)||0k||!c.inclusiveLeft&&!k)&&h.push({from:g.from,to:e.from});(0cf(c,d.marker))&&(c=d.marker);return c}function Ye(a,b,c,d,e){a=w(a,b);if(a=ya&&a.markedSpans)for(b=0;b=k||0>=h&&0<=k)&&(0>=h&&(f.marker.inclusiveRight&&e.inclusiveLeft?0<=t(g.to,c):0=t(g.from,d):0>t(g.from,d))))return!0}}}function pa(a){for(var b;b=Ea(a,!0);)a=b.find(-1,!0).line;return a}function Sc(a,b){a=w(a,b);var c=pa(a);return a==c?b:F(c)}function Od(a,b){if(b>a.lastLine())return b;
+var c=w(a,b);if(!Da(a,c))return b;for(;a=Ea(c,!1);)c=a.find(1,!0).line;return F(c)+1}function Da(a,b){var c=ya&&b.markedSpans;if(c)for(var d,e=0;ee;e++){d&&(d[0]=l.innerMode(a,c).mode);var f=a.token(b,c);if(b.pos>b.start)return f}throw Error("Mode "+a.name+" failed to advance stream.");}function ff(a,b,c,d){function e(a){return{start:p.start,
+end:p.pos,string:p.current(),type:h||null,state:a?za(f.mode,m):m}}var f=a.doc,g=f.mode,h;b=z(f,b);var k=w(f,b.line),m=yb(a,b.line,c),p=new zc(k.text,a.options.tabSize),l;for(d&&(l=[]);(d||p.posa.options.maxHighlightLength?
+(h=!1,g&&ed(a,b,d,p.pos),p.pos=b.length,l=null):l=df(yd(c,p,d,n),f);if(n){var q=n[0].name;q&&(l="m-"+(l?q+" "+l:q))}if(!h||m!=l){for(;ka&&e.splice(h,
+1,a,e[h+1],d);h+=2;k=Math.min(a,d)}if(b)if(g.opaque)e.splice(c,h-c,a,"cm-overlay "+b),h=c+2;else for(;ca.options.maxHighlightLength?za(a.doc.mode,d):d);b.stateAfter=d;b.styles=e.styles;e.classes?b.styleClasses=e.classes:b.styleClasses&&(b.styleClasses=null);c===a.doc.frontier&&a.doc.frontier++}return b.styles}
+function ed(a,b,c,d){var e=a.doc.mode;a=new zc(b,a.options.tabSize);a.start=a.pos=d||0;for(""==b&&ef(e,c);!a.eol();)yd(e,a,c),a.start=a.pos}function jf(a,b){if(!a||/^\s*$/.test(a))return null;b=b.addModeClass?lg:mg;return b[a]||(b[a]=a.replace(/\S+/g,"cm-$&"))}function Vd(a,b){var c=r("span",null,null,M?"padding-right: .1px":null),c={pre:r("pre",[c],"CodeMirror-line"),content:c,col:0,pos:0,cm:a,trailingSpace:!1,splitSpaces:(B||M)&&a.getOption("lineWrapping")};b.measure={};for(var d=0;d<=(b.rest?b.rest.length:
+0);d++){var e=d?b.rest[d-1]:b.line,f;c.pos=0;c.addToken=ng;var g;g=a.display.measure;if(null!=zd)g=zd;else{var h=Y(g,document.createTextNode("A\u062eA")),k=$a(h,0,1).getBoundingClientRect(),h=$a(h,1,2).getBoundingClientRect();wa(g);g=k&&k.left!=k.right?zd=3>h.right-k.right:!1}g&&(f=fa(e))&&(c.addToken=og(c.addToken,f));c.map=[];k=b!=a.display.externalMeasured&&F(e);a:{g=c;var k=hf(a,e,k),h=e.markedSpans,m=e.text,p=0;if(h)for(var l=m.length,n=0,q=1,v="",w=void 0,x=void 0,t=0,y=void 0,z=void 0,C=void 0,
+G=void 0,A=void 0;;){if(t==n){for(var y=z=C=G=x="",A=null,t=Infinity,H=[],I,D=0;Dn||E.collapsed&&J.to==n&&J.from==n)?(null!=J.to&&J.to!=n&&t>J.to&&(t=J.to,z=""),E.className&&(y+=" "+E.className),E.css&&(x=(x?x+";":"")+E.css),E.startStyle&&J.from==n&&(C+=" "+E.startStyle),E.endStyle&&J.to==t&&(I||(I=[])).push(E.endStyle,J.to),E.title&&!G&&(G=E.title),E.collapsed&&(!A||0>cf(A.marker,
+E))&&(A=J)):J.from>n&&t>J.from&&(t=J.from)}if(I)for(D=0;D=l)break;for(H=Math.min(l,t);;){if(v){D=n+v.length;A||(J=D>H?v.slice(0,H-n):v,g.addToken(g,J,w?w+y:y,C,n+J.length==t?z:"",G,x));if(D>=H){v=v.slice(H-n);n=H;break}n=D;C=""}v=m.slice(p,p=k[q++]);w=jf(k[q++],g.cm.options)}}else for(var q=
+1;qA?h.appendChild(r("span",[v])):h.appendChild(v);a.map.push(a.pos,a.pos+q,v);a.col+=q;a.pos+=q}if(!n)break;l+=q+1;"\t"==n[0]?(v=a.cm.options.tabSize,n=v-a.col%v,v=h.appendChild(r("span",ud(n),"cm-tab")),v.setAttribute("role","presentation"),v.setAttribute("cm-text","\t"),a.col+=n):("\r"==n[0]||"\n"==n[0]?(v=h.appendChild(r("span",
+"\r"==n[0]?"\u240d":"\u2424","cm-invalidchar")),v.setAttribute("cm-text",n[0])):(v=a.cm.options.specialCharPlaceholder(n[0]),v.setAttribute("cm-text",n[0]),B&&9>A?h.appendChild(r("span",[v])):h.appendChild(v)),a.col+=1);a.map.push(a.pos,a.pos+1,v);a.pos++}}else a.col+=b.length,h=document.createTextNode(k),a.map.push(a.pos,a.pos+b.length,h),B&&9>A&&(p=!0),a.pos+=b.length;a.trailingSpace=32==k.charCodeAt(b.length-1);if(c||d||e||p||g)return b=c||"",d&&(b+=d),e&&(b+=e),d=r("span",[h],b,g),f&&(d.title=
+f),a.content.appendChild(d);a.content.appendChild(h)}}function og(a,b){return function(c,d,e,f,g,h,k){e=e?e+" cm-force-border":"cm-force-border";for(var m=c.pos,p=m+d.length;;){for(var l=0;lm&&n.from<=m)break}if(n.to>=p)return a(c,d,e,f,g,h,k);a(c,d.slice(0,n.to-m),e,f,null,h,k);f=null;d=d.slice(n.to-m);m=n.to}}}function kf(a,b,c,d){var e=!d&&c.widgetNode;e&&a.map.push(a.pos,a.pos+b,e);!d&&a.cm.display.input.needsContentAttribute&&(e||(e=a.content.appendChild(document.createElement("span"))),
+e.setAttribute("cm-marker",c.id));e&&(a.cm.display.input.setUneditable(e),a.content.appendChild(e));a.pos+=b;a.trailingSpace=!1}function Ve(a,b){return 0==b.from.ch&&0==b.to.ch&&""==C(b.text)&&(!a.cm||a.cm.options.wholeLineUpdateBefore)}function td(a,b,c,d){function e(a,c,e){a.text=c;a.stateAfter&&(a.stateAfter=null);a.styles&&(a.styles=null);null!=a.order&&(a.order=null);af(a);bf(a,e);c=d?d(a):1;c!=a.height&&ja(a,c);V(a,"change",a,b)}function f(a,b){for(var e=[];ab||b>=a.size)throw Error("There is no line "+(b+a.first)+" in the document.");for(;!a.lines;)for(var c=
+0;;++c){var d=a.children[c],e=d.chunkSize();if(bf-a.cm.options.historyEventDelay||"*"==b.origin.charAt(0)))e.lastOp==d?(ie(e.done),g=C(e.done)):e.done.length&&!C(e.done).ranges?g=C(e.done):1e.undoDepth;)e.done.shift(),e.done[0].ranges||e.done.shift();e.done.push(c);e.generation=++e.maxGeneration;e.lastModTime=e.lastSelTime=f;e.lastOp=e.lastSelOp=d;e.lastOrigin=e.lastSelOrigin=b.origin;k||L(a,"historyAdded")}function ac(a,b){var c=C(b);c&&c.ranges&&c.equals(a)||b.push(a)}function lf(a,b,c,d){var e=b["spans_"+a.id],f=0;a.iter(Math.max(a.first,c),Math.min(a.first+
+a.size,d),function(c){c.markedSpans&&((e||(e=b["spans_"+a.id]={}))[f]=c.markedSpans);++f})}function jg(a){if(!a)return null;for(var b=0,c;b=b.offsetWidth&&2A))}a=Cd?r("span","\u200b"):r("span","\u00a0",null,"display: inline-block; width: 1px; margin-right: -1px");a.setAttribute("cm-text","");return a}function Jf(a,b,c,d){if(!a)return d(b,c,"ltr");for(var e=!1,f=0;fb||b==c&&g.to==b)d(Math.max(g.from,b),Math.min(g.to,c),1==g.level?"rtl":
+"ltr"),e=!0}e||d(b,c,"ltr")}function hd(a){return a.level%2?a.to:a.from}function id(a){return a.level%2?a.from:a.to}function fc(a){return(a=fa(a))?hd(a[0]):0}function gc(a){var b=fa(a);return b?id(C(b)):a.text.length}function tf(a,b){var c=w(a.doc,b);a=pa(c);a!=c&&(b=F(a));a=(c=fa(a))?c[0].level%2?gc(a):fc(a):0;return q(b,a)}function uf(a,b){var c=tf(a,b.line);a=w(a.doc,c.line);var d=fa(a);return d&&0!=d[0].level?c:(a=Math.max(0,a.text.search(/\S/)),q(c.line,b.line==c.line&&b.ch<=a&&b.ch?0:a))}function Xb(a,
+b){Bb=null;for(var c=0,d;cb)return c;if(e.from==b||e.to==b)if(null==d)d=c;else{b=e.level;var f=a[d].level;a=a[0].level;a=b==a?!0:f==a?!1:bg.from&&bb||b>a.text.length?null:b}var W=navigator.userAgent,vf=navigator.platform,va=/gecko\/\d/i.test(W),wf=/MSIE \d/.test(W),xf=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(W),B=wf||xf,A=B&&(wf?document.documentMode||6:xf[1]),M=/WebKit\//.test(W),ug=M&&/Qt\/\d+\.\d+/.test(W),
+vg=/Chrome\//.test(W),ia=/Opera\//.test(W),Be=/Apple Computer/.test(navigator.vendor),wg=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(W),Pf=/PhantomJS/.test(W),vb=/AppleWebKit/.test(W)&&/Mobile\/\w+/.test(W),ib=vb||/Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(W),ea=vb||/Mac/.test(vf),Yf=/\bCrOS\b/.test(W),xg=/win/i.test(vf),Oa=ia&&W.match(/Version\/(\d*\.\d*)/);Oa&&(Oa=Number(Oa[1]));Oa&&15<=Oa&&(ia=!1,M=!0);var yf=ea&&(ug||ia&&(null==Oa||12.11>Oa)),md=va||B&&9<=A,Pe=!1,ya=!1;Lc.prototype=
+da({update:function(a){var b=a.scrollWidth>a.clientWidth+1,c=a.scrollHeight>a.clientHeight+1,d=a.nativeBarWidth;c?(this.vert.style.display="block",this.vert.style.bottom=b?d+"px":"0",this.vert.firstChild.style.height=Math.max(0,a.scrollHeight-a.clientHeight+(a.viewHeight-(b?d:0)))+"px"):(this.vert.style.display="",this.vert.firstChild.style.height="0");b?(this.horiz.style.display="block",this.horiz.style.right=c?d+"px":"0",this.horiz.style.left=a.barLeft+"px",this.horiz.firstChild.style.width=a.scrollWidth-
+a.clientWidth+(a.viewWidth-a.barLeft-(c?d:0))+"px"):(this.horiz.style.display="",this.horiz.firstChild.style.width="0");!this.checkedZeroWidth&&0A&&f.scrollbars.setScrollTop(f.scroller.scrollTop=k);if(null!=g.selectionStart){(!B||B&&9>A)&&b();var a=0,c=function(){f.selForContextMenu==e.doc.sel&&0==g.selectionStart&&0a++?f.detectingSelectAll=setTimeout(c,
+500):f.input.reset()};f.detectingSelectAll=setTimeout(c,200)}}var d=this,e=d.cm,f=e.display,g=d.textarea,h=Ka(e,a),k=f.scroller.scrollTop;if(h&&!ia){e.options.resetSelectionOnContextMenu&&-1==e.doc.sel.contains(h)&&H(e,E)(e.doc,na(h),oa);var m=g.style.cssText,p=d.wrapper.style.cssText;d.wrapper.style.cssText="position: absolute";h=d.wrapper.getBoundingClientRect();g.style.cssText="position: absolute; width: 30px; height: 30px; top: "+(a.clientY-h.top-5)+"px; left: "+(a.clientX-h.left-5)+"px; z-index: 1000; background: "+
+(B?"rgba(255, 255, 255, .05)":"transparent")+"; outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);";if(M)var l=window.scrollY;f.input.focus();M&&window.scrollTo(null,l);f.input.reset();e.somethingSelected()||(g.value=d.prevInput=" ");d.contextMenuPending=!0;f.selForContextMenu=e.doc.sel;clearTimeout(f.detectingSelectAll);B&&9<=A&&b();if(md){jc(a);var n=function(){qa(window,"mouseup",n);setTimeout(c,20)};y(window,"mouseup",n)}else setTimeout(c,
+50)}},readOnlyChanged:function(a){a||this.reset()},setUneditable:Jb,needsContentAttribute:!1},Yc.prototype);Zc.prototype=da({init:function(a){function b(a){if(!D(d,a)){if(d.somethingSelected())T={lineWise:!1,text:d.getSelections()},"cut"==a.type&&d.replaceSelection("",null,"cut");else if(d.options.lineWiseCopyCut){var b=$d(d);T={lineWise:!0,text:b.text};"cut"==a.type&&d.operation(function(){d.setSelections(b.ranges,0,oa);d.replaceSelection("",null,"cut")})}else return;if(a.clipboardData){a.clipboardData.clearData();
+var f=T.text.join("\n");a.clipboardData.setData("Text",f);if(a.clipboardData.getData("Text")==f){a.preventDefault();return}}var k=be();a=k.firstChild;d.display.lineSpace.insertBefore(k,d.display.lineSpace.firstChild);a.value=T.text.join("\n");var m=document.activeElement;gb(a);setTimeout(function(){d.display.lineSpace.removeChild(k);m.focus();m==e&&c.showPrimarySelection()},50)}}var c=this,d=c.cm,e=c.div=a.lineDiv;ae(e,d.options.spellcheck);y(e,"paste",function(a){D(d,a)||Zd(a,d)||11>=A&&setTimeout(H(d,
+function(){c.pollContent()||P(d)}),20)});y(e,"compositionstart",function(a){a=a.data;c.composing={sel:d.doc.sel,data:a,startData:a};if(a){var b=d.doc.sel.primary(),e=d.getLine(b.head.line).indexOf(a,Math.max(0,b.head.ch-a.length));-1b.viewTo-
+1)return!1;var e;d.line==b.viewFrom||0==(e=Ha(a,d.line))?(d=F(b.view[0].line),e=b.view[0].node):(d=F(b.view[e].line),e=b.view[e-1].node.nextSibling);var f=Ha(a,c.line);f==b.view.length-1?(c=b.viewTo-1,b=b.lineDiv.lastChild):(c=F(b.view[f+1].line)-1,b=b.view[f+1].node.previousSibling);b=a.doc.splitLines(Gf(a,e,b,d,c));for(e=Ia(a.doc,q(d,0),q(c,w(a.doc,c).text.length));1=t(a,d.to()))return c}return-1}};G.prototype={from:function(){return Ub(this.anchor,this.head)},to:function(){return Tb(this.anchor,this.head)},empty:function(){return this.head.line==
+this.anchor.line&&this.head.ch==this.anchor.ch}};var te={left:0,right:0,top:0,bottom:0},Ja,ab=null,Of=0,lc,kc,Ae=0,mc=0,Z=null;B?Z=-.53:va?Z=15:vg?Z=-.7:Be&&(Z=-1/3);var Ie=function(a){var b=a.wheelDeltaX,c=a.wheelDeltaY;null==b&&a.detail&&a.axis==a.HORIZONTAL_AXIS&&(b=a.detail);null==c&&a.detail&&a.axis==a.VERTICAL_AXIS?c=a.detail:null==c&&(c=a.wheelDelta);return{x:b,y:c}};l.wheelEventPixels=function(a){a=Ie(a);a.x*=Z;a.y*=Z;return a};var ag=new Ba,pd=null,La=l.changeEnd=function(a){return a.text?
+q(a.from.line+a.text.length-1,C(a.text).length+(1==a.text.length?a.from.ch:0)):a.to};l.prototype={constructor:l,focus:function(){window.focus();this.display.input.focus()},setOption:function(a,b){var c=this.options,d=c[a];if(c[a]!=b||"mode"==a)c[a]=b,Sa.hasOwnProperty(a)&&H(this,Sa[a])(this,b,d)},getOption:function(a){return this.options[a]},getDoc:function(){return this.doc},addKeyMap:function(a,b){this.state.keyMaps[b?"push":"unshift"](vc(a))},removeKeyMap:function(a){for(var b=this.state.keyMaps,
+c=0;cc&&(ub(this,e.head.line,a,!0),c=e.head.line,d==this.doc.sel.primIndex&&Xa(this));else{for(var f=e.from(),e=e.to(),g=Math.max(c,f.line),c=Math.min(this.lastLine(),e.line-
+(e.ch?0:1))+1,e=g;e>1;if((e?b[2*e-1]:0)>=a)d=e;else if(b[2*e+1]c?b:0==c?null:b.slice(0,c-1)},getModeAt:function(a){var b=this.doc.mode;return b.innerMode?l.innerMode(b,this.getTokenAt(a).state).mode:b},getHelper:function(a,b){return this.getHelpers(a,b)[0]},getHelpers:function(a,b){var c=[];if(!hb.hasOwnProperty(b))return c;var d=hb[b];a=this.getModeAt(a);if("string"==typeof a[b])d[a[b]]&&c.push(d[a[b]]);else if(a[b])for(var e=0;ed&&(a=d,c=!0);a=w(this.doc,a)}return gd(this,a,{top:0,left:0},b||"page").top+(c?this.doc.height-la(a):0)},defaultTextHeight:function(){return Ca(this.display)},defaultCharWidth:function(){return lb(this.display)},setGutterMarker:O(function(a,
+b,c){return tc(this.doc,a,"gutter",function(a){var d=a.gutterMarkers||(a.gutterMarkers={});d[b]=c;!c&&rf(d)&&(a.gutterMarkers=null);return!0})}),clearGutter:O(function(a){var b=this,c=b.doc,d=c.first;c.iter(function(c){c.gutterMarkers&&c.gutterMarkers[a]&&(c.gutterMarkers[a]=null,ta(b,d,"gutter"),rf(c.gutterMarkers)&&(c.gutterMarkers=null));++d})}),lineInfo:function(a){if("number"==typeof a){if(!wb(this.doc,a))return null;var b=a;a=w(this.doc,a);if(!a)return null}else if(b=F(a),null==b)return null;
+return{line:b,handle:a,text:a.text,gutterMarkers:a.gutterMarkers,textClass:a.textClass,bgClass:a.bgClass,wrapClass:a.wrapClass,widgets:a.widgets}},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(a,b,c,d,e){var f=this.display;a=sa(this,z(this.doc,a));var g=a.bottom,h=a.left;b.style.position="absolute";b.setAttribute("cm-ignore-events","true");this.display.input.setUneditable(b);f.sizer.appendChild(b);if("over"==d)g=a.top;else if("above"==d||"near"==
+d){var k=Math.max(f.wrapper.clientHeight,this.doc.height),m=Math.max(f.sizer.clientWidth,f.lineSpace.clientWidth);("above"==d||a.bottom+b.offsetHeight>k)&&a.top>b.offsetHeight?g=a.top-b.offsetHeight:a.bottom+b.offsetHeight<=k&&(g=a.bottom);h+b.offsetWidth>m&&(h=m-b.offsetWidth)}b.style.top=g+"px";b.style.left=b.style.right="";"right"==e?(h=f.sizer.clientWidth-b.offsetWidth,b.style.right="0px"):("left"==e?h=0:"middle"==e&&(h=(f.sizer.clientWidth-b.offsetWidth)/2),b.style.left=h+"px");c&&(a=hc(this,
+h,g,h+b.offsetWidth,g+b.offsetHeight),null!=a.scrollTop&&qb(this,a.scrollTop),null!=a.scrollLeft&&Ua(this,a.scrollLeft))},triggerOnKeyDown:O(Ee),triggerOnKeyPress:O(Fe),triggerOnKeyUp:De,execCommand:function(a){if(oc.hasOwnProperty(a))return oc[a].call(null,this)},triggerElectric:O(function(a){Yd(this,a)}),findPosH:function(a,b,c,d){var e=1;0>b&&(e=-1,b=-b);var f=0;for(a=z(this.doc,a);fa?d.from():d.to()},Lb)}),deleteH:O(function(a,b){var c=this.doc;this.doc.sel.somethingSelected()?c.replaceSelection("",null,"+delete"):cb(this,function(d){var e=vd(c,d.head,a,b,!1);return 0>a?{from:e,to:d.head}:{from:d.head,to:e}})}),findPosV:function(a,b,c,d){var e=1;0>b&&(e=-1,b=-b);var f=0;for(a=z(this.doc,a);fa?g.from():g.to();var h=sa(c,g.head,"div");null!=g.goalColumn&&(h.left=g.goalColumn);e.push(h.left);var m=Xe(c,h,a,b);"page"==b&&g==d.sel.primary()&&rc(c,null,bc(c,m,"div").top-h.top);return m},Lb);if(e.length)for(var g=0;ga.xRel||d==b.length)&&c?--c:++d;for(var f=b.charAt(c),f=uc(f,e)?function(a){return uc(a,e)}:/\s/.test(f)?function(a){return/\s/.test(a)}:function(a){return!/\s/.test(a)&&!uc(a)};0a.doc.first){var g=w(a.doc,e.line-1).text;g&&a.replaceRange(f.charAt(0)+a.doc.lineSeparator()+g.charAt(g.length-1),q(e.line-1,g.length-1),q(e.line,1),"+transpose")}c.push(new G(e,
+e))}a.setSelections(c)})},newlineAndIndent:function(a){X(a,function(){for(var b=a.listSelections().length,c=0;c=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){if(this.posb},eatSpace:function(){for(var a=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>a},skipToEnd:function(){this.pos=this.string.length},skipTo:function(a){a=this.string.indexOf(a,this.pos);if(-1a.display.maxLineLength&&(a.display.maxLine=f,a.display.maxLineLength=g,a.display.maxLineChanged=!0);null!=c&&a&&this.collapsed&&P(a,c,d+1);this.lines.length=0;this.explicitlyCleared=!0;this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,a&&me(a.doc));a&&V(a,"markerCleared",a,this);b&&Ta(a);this.parent&&this.parent.clear()}};Na.prototype.find=function(a,b){null==a&&"bookmark"==this.type&&(a=1);for(var c,d,e=0;ethis.size-b&&(1=this.children.length)){var a=this;do{var b=a.children.splice(a.children.length-
+5,5),b=new Hb(b);if(a.parent){a.size-=b.size;a.height-=b.height;var c=N(a.parent.children,a);a.parent.children.splice(c+1,0,b)}else c=new Hb(a.children),c.parent=a,a.children=[c,b],a=c;b.parent=a.parent}while(10t(h.head,h.anchor),f[e]=new G(h?k:g,h?g:k)):f[e]=new G(g,g)}f=new ra(f,this.sel.primIndex)}b=f;for(f=d.length-1;0<=f;f--)Wa(this,d[f]);b?he(this,b):this.cm&&Xa(this.cm)}),undo:Q(function(){qc(this,"undo")}),
+redo:Q(function(){qc(this,"redo")}),undoSelection:Q(function(){qc(this,"undo",!0)}),redoSelection:Q(function(){qc(this,"redo",!0)}),setExtending:function(a){this.extend=a},getExtending:function(){return this.extend},historySize:function(){for(var a=this.history,b=0,c=0,d=0;d=a.ch)&&b.push(e.marker.parent||e.marker)}return b},findMarks:function(a,b,c){a=z(this,a);b=z(this,b);var d=[],e=a.line;this.iter(a.line,b.line+1,function(f){if(f=f.markedSpans)for(var g=0;g=h.to||null==h.from&&e!=a.line||null!=h.from&&e==b.line&&h.from>=b.ch||c&&!c(h.marker)||
+d.push(h.marker.parent||h.marker)}++e});return d},getAllMarks:function(){var a=[];this.iter(function(b){if(b=b.markedSpans)for(var c=0;c