X-Git-Url: https://scm.cri.ensmp.fr/git/ckeditor.git/blobdiff_plain/dd55f919fd97b1bdedb9b1465db672a11f916d2c..1c760f8ef98dbf02e660ae4d758aae7952026b6f:/skins/ckeditor/plugins/codemirror/js/codemirror.min.js diff --git a/skins/ckeditor/plugins/codemirror/js/codemirror.min.js b/skins/ckeditor/plugins/codemirror/js/codemirror.min.js new file mode 100755 index 0000000..b785052 --- /dev/null +++ b/skins/ckeditor/plugins/codemirror/js/codemirror.min.js @@ -0,0 +1 @@ +window.CodeMirror=(function(){var bB=/gecko\/\d/i.test(navigator.userAgent);var cs=/MSIE \d/.test(navigator.userAgent);var by=cs&&(document.documentMode==null||document.documentMode<8);var bx=cs&&(document.documentMode==null||document.documentMode<9);var dr=/Trident\/([7-9]|\d{2,})\./.test(navigator.userAgent);var b1=/WebKit\//.test(navigator.userAgent);var cv=b1&&/Qt\/\d+\.\d+/.test(navigator.userAgent);var b8=/Chrome\//.test(navigator.userAgent);var dQ=/Opera\//.test(navigator.userAgent);var ad=/Apple Computer/.test(navigator.vendor);var aC=/KHTML\//.test(navigator.userAgent);var bM=/Mac OS X 1\d\D([7-9]|\d\d)\D/.test(navigator.userAgent);var b5=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(navigator.userAgent);var dN=/PhantomJS/.test(navigator.userAgent);var dm=/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent);var cM=dm||/Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(navigator.userAgent);var bk=dm||/Mac/.test(navigator.platform);var al=/win/i.test(navigator.platform);var cY=dQ&&navigator.userAgent.match(/Version\/(\d*\.\d*)/);if(cY){cY=Number(cY[1])}if(cY&&cY>=15){dQ=false;b1=true}var ba=bk&&(cv||dQ&&(cY==null||cY<12.11));var bQ=bB||(cs&&!bx);var ef=false,ay=false;function y(el,em){if(!(this instanceof y)){return new y(el,em)}this.options=em=em||{};for(var en in dp){if(!em.hasOwnProperty(en)&&dp.hasOwnProperty(en)){em[en]=dp[en]}}bs(em);var er=typeof em.value=="string"?0:em.value.first;var eq=this.display=f(el,er);eq.wrapper.CodeMirror=this;cI(this);if(em.autofocus&&!cM){c1(this)}this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:false,focused:false,suppressEdits:false,pasteIncoming:false,draggingText:false,highlight:new ek()};bV(this);if(em.lineWrapping){this.display.wrapper.className+=" CodeMirror-wrap"}var ep=em.value;if(typeof ep=="string"){ep=new X(em.value,em.mode)}b2(this,cH)(this,ep);if(cs){setTimeout(bH(dJ,this,true),20)}d3(this);var es;try{es=(document.activeElement==eq.input)}catch(eo){}if(es||(em.autofocus&&!cM)){setTimeout(bH(bL,this),20)}else{aq(this)}b2(this,function(){for(var eu in aF){if(aF.propertyIsEnumerable(eu)){aF[eu](this,em[eu],bq)}}for(var et=0;eten.maxLineLength){en.maxLineLength=eo;en.maxLine=ep}})}function bs(el){var em=cd(el.gutters,"CodeMirror-linenumbers");if(em==-1&&el.lineNumbers){el.gutters=el.gutters.concat(["CodeMirror-linenumbers"])}else{if(em>-1&&!el.lineNumbers){el.gutters=el.gutters.slice(0);el.gutters.splice(em,1)}}}function dk(el){var er=el.display,em=el.doc.height;var eo=em+a3(er);er.sizer.style.minHeight=er.heightForcer.style.top=eo+"px";er.gutters.style.height=Math.max(eo,er.scroller.clientHeight-aJ)+"px";var ep=Math.max(eo,er.scroller.scrollHeight);var eq=er.scroller.scrollWidth>(er.scroller.clientWidth+1);var en=ep>(er.scroller.clientHeight+1);if(en){er.scrollbarV.style.display="block";er.scrollbarV.style.bottom=eq?i(er.measure)+"px":"0";er.scrollbarV.firstChild.style.height=(ep-er.scroller.clientHeight+er.scrollbarV.clientHeight)+"px"}else{er.scrollbarV.style.display="";er.scrollbarV.firstChild.style.height="0"}if(eq){er.scrollbarH.style.display="block";er.scrollbarH.style.right=en?i(er.measure)+"px":"0";er.scrollbarH.firstChild.style.width=(er.scroller.scrollWidth-er.scroller.clientWidth+er.scrollbarH.clientWidth)+"px"}else{er.scrollbarH.style.display="";er.scrollbarH.firstChild.style.width="0"}if(eq&&en){er.scrollbarFiller.style.display="block";er.scrollbarFiller.style.height=er.scrollbarFiller.style.width=i(er.measure)+"px"}else{er.scrollbarFiller.style.display=""}if(eq&&el.options.coverGutterNextToScrollbar&&el.options.fixedGutter){er.gutterFiller.style.display="block";er.gutterFiller.style.height=i(er.measure)+"px";er.gutterFiller.style.width=er.gutters.offsetWidth+"px"}else{er.gutterFiller.style.display=""}if(bM&&i(er.measure)===0){er.scrollbarV.style.minWidth=er.scrollbarH.style.minHeight=b5?"18px":"12px";er.scrollbarV.style.pointerEvents=er.scrollbarH.style.pointerEvents="none"}}function bj(eq,ep,eo){var en=eq.scroller.scrollTop,el=eq.wrapper.clientHeight;if(typeof eo=="number"){en=eo}else{if(eo){en=eo.top;el=eo.bottom-eo.top}}en=Math.floor(en-ds(eq));var em=Math.ceil(en+el);return{from:a1(ep,en),to:a1(ep,em)}}function c5(el){var er=el.display;if(!er.alignWidgets&&(!er.gutters.firstChild||!el.options.fixedGutter)){return}var eo=cA(er)-er.scroller.scrollLeft+el.doc.scrollLeft;var eq=er.gutters.offsetWidth,en=eo+"px";for(var es=er.lineDiv.firstChild;es;es=es.nextSibling){if(es.alignable){for(var ep=0,em=es.alignable;ep=eq.display.showingFrom&&el.to<=eq.display.showingTo){break}}if(eo){L(eq,"update",eq);if(eq.display.showingFrom!=es||eq.display.showingTo!=er){L(eq,"viewportChange",eq,eq.display.showingFrom,eq.display.showingTo)}}return eo}function cb(ep,eD,em,eB){var ev=ep.display,eE=ep.doc;if(!ev.wrapper.clientWidth){ev.showingFrom=ev.showingTo=eE.first;ev.viewOffset=0;return}if(!eB&&eD.length==0&&em.from>ev.showingFrom&&em.toel&&ev.showingTo-el<20){el=Math.min(eo,ev.showingTo)}if(ay){eu=a8(s(eE,dy(eE,eu)));while(el=ey[0].to){ey=[]}else{ey=dI(ey,eD)}if(ay){for(var ew=0;ewer.from){er.to=eC}else{ey.splice(ew--,1);break}}}}var et=0;for(var ew=0;ewel){er.to=el}if(er.from>=er.to){ey.splice(ew--,1)}else{et+=er.to-er.from}}if(!eB&&et==el-eu&&eu==ev.showingFrom&&el==ev.showingTo){h(ep);return}ey.sort(function(eG,eF){return eG.from-eF.from});try{var eq=document.activeElement}catch(ex){}if(et<(el-eu)*0.7){ev.lineDiv.style.display="none"}bz(ep,eu,el,ey,en);ev.lineDiv.style.display="";if(eq&&document.activeElement!=eq&&eq.offsetHeight){eq.focus()}var es=eu!=ev.showingFrom||el!=ev.showingTo||ev.lastSizeC!=ev.wrapper.clientHeight;if(es){ev.lastSizeC=ev.wrapper.clientHeight;cL(ep,400)}ev.showingFrom=eu;ev.showingTo=el;aA(ep);h(ep);return true}function aA(et){var eq=et.display;var em=eq.lineDiv.offsetTop;for(var el=eq.lineDiv.firstChild,eu;el;el=el.nextSibling){if(el.lineObj){if(by){var ep=el.offsetTop+el.offsetHeight;eu=ep-em;em=ep}else{var eo=ak(el);eu=eo.bottom-eo.top}var es=el.lineObj.height-eu;if(eu<2){eu=at(eq)}if(es>0.001||es<-0.001){ed(el.lineObj,eu);var er=el.lineObj.widgets;if(er){for(var en=0;en=eq.to){el.push(eq)}else{if(er.from>eq.from){el.push({from:eq.from,to:er.from})}if(er.toeo){while(ev.lineObj!=eH){ev=ep(ev)}if(ew&&em<=eo&&ev.lineNumber){m(ev.lineNumber,cT(eu.options,eo))}ev=ev.nextSibling}else{if(eH.widgets){for(var eB=0,eG=ev,eD;eG&&eB<20;++eB,eG=eG.nextSibling){if(eG.lineObj==eH&&/div/i.test(eG.nodeName)){eD=eG;break}}}var ey=af(eu,eH,eo,et,eD);if(ey!=eD){el.insertBefore(ey,ev)}else{while(ev!=eD){ev=ep(ev)}ev=ev.nextSibling}ey.lineObj=eH}}++eo});while(ev){ev=ep(ev)}}function af(es,eu,ev,ey,en){var er=de(es,eu),eE=er.pre;var eH=eu.gutterMarkers,eF=es.display,et;var em=er.bgClass?er.bgClass+" "+(eu.bgClass||""):eu.bgClass;if(!es.options.lineNumbers&&!eH&&!em&&!eu.wrapClass&&!eu.widgets){return eE}if(en){en.alignable=null;var eI=true,eq=0,eo=null;for(var eA=en.firstChild,ez;eA;eA=ez){ez=eA.nextSibling;if(!/\bCodeMirror-linewidget\b/.test(eA.className)){en.removeChild(eA)}else{for(var eG=0;eG3){ey(eM,eK.top,null,eK.bottom);eM=en;if(eK.bottomez.bottom||eL.bottom==ez.bottom&&eL.right>ez.right){ez=eL}if(eM0){en.blinker=setInterval(function(){en.cursor.style.visibility=en.otherCursor.style.visibility=(em=!em)?"":"hidden"},el.options.cursorBlinkRate)}}function cL(el,em){if(el.doc.mode.startState&&el.doc.frontier=el.display.showingTo){return}var em=+new Date+el.options.workTime;var en=bi(eo.mode,co(el,eo.frontier));var eq=[],ep;eo.iter(eo.frontier,Math.min(eo.first+eo.size,el.display.showingTo+500),function(er){if(eo.frontier>=el.display.showingFrom){var et=er.styles;er.styles=dT(el,er,en,true);var eu=!et||et.length!=er.styles.length;for(var es=0;!eu&&esem){cL(el,el.options.workDelay);return true}});if(eq.length){b2(el,function(){for(var er=0;eren;--eu){if(eu<=eq.first){return eq.first}var et=dy(eq,eu-1);if(et.stateAfter&&(!eo||eu<=eq.frontier)){return eu}var es=bb(et.text,null,er.options.tabSize);if(ep==null||em>es){ep=eu-1;em=es}}return ep}function co(el,er,em){var ep=el.doc,eo=el.display;if(!ep.mode.startState){return true}var eq=bJ(el,er,em),en=eq>ep.first&&dy(ep,eq-1).stateAfter;if(!en){en=bh(ep.mode)}else{en=bi(ep.mode,en)}ep.iter(eq,er,function(es){cm(el,es.text,en);var et=eq==er-1||eq%5==0||eq>=eo.showingFrom&&eqem?"left":erem?el.left:el.right,top:el.top,bottom:el.bottom}}function dq(el,em){var eo=el.display.measureLineCache;for(var ep=0;ep=es.options.crudeMeasuringFrom){return d9(es,eu)}var eA=es.display,eq=R(eu.text.length);var ex=de(es,eu,eq,true).pre;if(cs&&!by&&!es.options.lineWrapping&&ex.childNodes.length>100){var en=document.createDocumentFragment();var ev=10,ey=ex.childNodes.length;for(var eC=0,ew=Math.ceil(ey/ev);eCeE){eM=eE}if(eK<0){eK=0}for(var eH=el.length-2;eH>=0;eH-=2){var eJ=el[eH],eL=el[eH+1];if(eJ>eM||eL=eM||eK<=eJ&&eM>=eL||Math.min(eM,eL)-Math.max(eK,eJ)>=(eM-eK)>>1){el[eH]=Math.min(eK,eJ);el[eH+1]=Math.max(eM,eL);break}}if(eH<0){eH=el.length;el.push(eK,eM)}return{left:eI.left-em.left,right:eI.right-em.left,top:eH,bottom:null}}function eG(eH){eH.bottom=el[eH.top+1];eH.top=el[eH.top]}for(var eC=0,ep;eC1){eo=eF[eC]=eD(er[0]);eo.rightSide=eD(er[er.length-1])}}if(!eo){eo=eF[eC]=eD(ak(ez))}if(ep.measureRight){eo.right=ak(ep.measureRight).left}if(ep.leftSide){eo.leftSide=eD(ak(ep.leftSide))}}}cB(es.display.measure);for(var eC=0,ep;eC=el.options.crudeMeasuringFrom){return cN(el,en,en.text.length,ep&&ep.measure,"right").right}var er=de(el,en,null,true).pre;var em=er.appendChild(aN(el.display.measure));bc(el.display.measure,er);return ak(em).right-ak(el.display.lineDiv).left}function Q(el){el.display.measureLineCache.length=el.display.measureLineCachePos=0;el.display.cachedCharWidth=el.display.cachedTextHeight=null;if(!el.options.lineWrapping){el.display.maxLineChanged=true}el.display.lineNumChars=null}function bG(){return window.pageXOffset||(document.documentElement||document.body).scrollLeft}function bF(){return window.pageYOffset||(document.documentElement||document.body).scrollTop}function dd(er,eo,eq,em){if(eo.widgets){for(var en=0;enex.from){return ep(ez-1)}return ep(ez,ey)}var er=a(es),el=et.ch;if(!er){return ep(el)}var em=ag(er,el);var eo=ev(el,em);if(dn!=null){eo.other=ev(el,dn)}return eo}function d7(el,em,en,ep){var eo=new H(el,em);eo.xRel=ep;if(en){eo.outside=true}return eo}function d2(es,ep,eo){var er=es.doc;eo+=es.display.viewOffset;if(eo<0){return d7(er.first,0,true,-1)}var em=a1(er,eo),et=er.first+er.size-1;if(em>et){return d7(er.first+er.size-1,dy(er,et).text.length,true,1)}if(ep<0){ep=0}for(;;){var en=dy(er,em);var eu=b0(es,en,em,ep,eo);var eq=cV(en);var el=eq&&eq.find();if(eq&&(eu.ch>el.from.ch||eu.ch==el.from.ch&&eu.xRel>0)){em=el.to.line}else{return eu}}}function b0(ev,en,ey,ex,ew){var eu=ew-a7(ev,en);var er=false,eE=2*ev.display.wrapper.clientWidth;var eD=a4(ev,en);function eI(eK){var eL=cy(ev,H(ey,eK),"line",en,eD);er=true;if(eu>eL.bottom){return eL.left-eE}else{if(euem){return d7(ey,eo,eq,1)}for(;;){if(eA?eo==eF||eo==p(en,eF,1):eo-eF<=1){var ez=exex){eo=eJ;em=ep;if(eq=er){em+=1000}eC=es}else{eF=eJ;eB=ep;el=er;eC-=es}}}var ah;function at(en){if(en.cachedTextHeight!=null){return en.cachedTextHeight}if(ah==null){ah=d8("pre");for(var em=0;em<49;++em){ah.appendChild(document.createTextNode("x"));ah.appendChild(d8("br"))}ah.appendChild(document.createTextNode("x"))}bc(en.measure,ah);var el=ah.offsetHeight/50;if(el>3){en.cachedTextHeight=el}cB(en.measure);return el||1}function cq(eo){if(eo.cachedCharWidth!=null){return eo.cachedCharWidth}var el=d8("span","x");var en=d8("pre",[el]);bc(eo.measure,en);var em=el.offsetWidth;if(em>2){eo.cachedCharWidth=em}return em||10}var cF=0;function bR(el){el.curOp={changes:[],forceUpdate:false,updateInput:null,userSelChange:null,textChanged:null,selectionChanged:false,cursorActivity:false,updateMaxLine:false,updateScrollPos:false,id:++cF};if(!bE++){aO=[]}}function T(ez){var et=ez.curOp,ey=ez.doc,eu=ez.display;ez.curOp=null;if(et.updateMaxLine){eb(ez)}if(eu.maxLineChanged&&!ez.options.lineWrapping&&eu.maxLine){var em=c6(ez,eu.maxLine);eu.sizer.style.minWidth=Math.max(0,em+3+aJ)+"px";eu.maxLineChanged=false;var ew=Math.max(0,eu.sizer.offsetLeft+eu.sizer.offsetWidth-eu.scroller.clientWidth);if(ew1000||ex.indexOf("\n")>-1){er.value=ew.display.prevInput=""}else{ew.display.prevInput=ex}if(en){T(ew)}ew.state.pasteIncoming=false;return true}function dJ(el,en){var em,eo,eq=el.doc;if(!dX(eq.sel.from,eq.sel.to)){el.display.prevInput="";em=b7&&(eq.sel.to.line-eq.sel.from.line>100||(eo=el.getSelection()).length>1000);var ep=em?"-":eo||el.getSelection();el.display.input.value=ep;if(el.state.focused){cu(el.display.input)}if(cs&&!bx){el.display.inputHasSelection=ep}}else{if(en){el.display.prevInput=el.display.input.value="";if(cs&&!bx){el.display.inputHasSelection=null}}}el.display.inaccurateSelection=em}function c1(el){if(el.options.readOnly!="nocursor"&&(!cM||document.activeElement!=el.display.input)){el.display.input.focus()}}function P(el){return el.options.readOnly||el.doc.cantEdit}function d3(em){var er=em.display;bf(er.scroller,"mousedown",b2(em,cU));if(cs){bf(er.scroller,"dblclick",b2(em,function(eu){if(ao(em,eu)){return}var ev=bA(em,eu);if(!ev||j(em,eu)||aB(em.display,eu)){return}bO(eu);var et=Y(dy(em.doc,ev.line).text,ev);d5(em.doc,et.from,et.to)}))}else{bf(er.scroller,"dblclick",function(et){ao(em,et)||bO(et)})}bf(er.lineSpace,"selectstart",function(et){if(!aB(er,et)){bO(et)}});if(!bQ){bf(er.scroller,"contextmenu",function(et){aa(em,et)})}bf(er.scroller,"scroll",function(){if(er.scroller.clientHeight){C(em,er.scroller.scrollTop);aZ(em,er.scroller.scrollLeft,true);ae(em,"scroll",em)}});bf(er.scrollbarV,"scroll",function(){if(er.scroller.clientHeight){C(em,er.scrollbarV.scrollTop)}});bf(er.scrollbarH,"scroll",function(){if(er.scroller.clientHeight){aZ(em,er.scrollbarH.scrollLeft)}});bf(er.scroller,"mousewheel",function(et){b(em,et)});bf(er.scroller,"DOMMouseScroll",function(et){b(em,et)});function es(){if(em.state.focused){setTimeout(bH(c1,em),0)}}bf(er.scrollbarH,"mousedown",es);bf(er.scrollbarV,"mousedown",es);bf(er.wrapper,"scroll",function(){er.wrapper.scrollTop=er.wrapper.scrollLeft=0});var el;function ep(){if(el==null){el=setTimeout(function(){el=null;er.cachedCharWidth=er.cachedTextHeight=cW=null;Q(em);bU(em,bH(N,em))},100)}}bf(window,"resize",ep);function eo(){for(var et=er.wrapper.parentNode;et&&et!=document.body;et=et.parentNode){}if(et){setTimeout(eo,5000)}else{cK(window,"resize",ep)}}setTimeout(eo,5000);bf(er.input,"keyup",b2(em,function(et){if(ao(em,et)||em.options.onKeyEvent&&em.options.onKeyEvent(em,V(et))){return}if(et.keyCode==16){em.doc.sel.shift=false}}));bf(er.input,"input",function(){if(cs&&!bx&&em.display.inputHasSelection){em.display.inputHasSelection=null}t(em)});bf(er.input,"keydown",b2(em,l));bf(er.input,"keypress",b2(em,bI));bf(er.input,"focus",bH(bL,em));bf(er.input,"blur",bH(aq,em));function en(et){if(ao(em,et)||em.options.onDragEvent&&em.options.onDragEvent(em,V(et))){return}cS(et)}if(em.options.dragDrop){bf(er.scroller,"dragstart",function(et){F(em,et)});bf(er.scroller,"dragenter",en);bf(er.scroller,"dragover",en);bf(er.scroller,"drop",b2(em,aI))}bf(er.scroller,"paste",function(et){if(aB(er,et)){return}c1(em);t(em)});bf(er.input,"paste",function(){if(b1&&!em.state.fakedLastChar&&!(new Date-em.state.lastMiddleDown<200)){var eu=er.input.selectionStart,et=er.input.selectionEnd;er.input.value+="$";er.input.selectionStart=eu;er.input.selectionEnd=et;em.state.fakedLastChar=true}em.state.pasteIncoming=true;t(em)});function eq(){if(er.inaccurateSelection){er.prevInput="";er.inaccurateSelection=false;er.input.value=em.getSelection();cu(er.input)}}bf(er.input,"cut",eq);bf(er.input,"copy",eq);if(aC){bf(er.sizer,"mouseup",function(){if(document.activeElement==er.input){er.input.blur()}c1(em)})}}function aB(em,el){for(var en=A(el);en!=em.wrapper;en=en.parentNode){if(!en||en.ignoreEvents||en.parentNode==em.sizer&&en!=em.mover){return true}}}function bA(em,er,eo){var eq=em.display;if(!eo){var ep=A(er);if(ep==eq.scrollbarH||ep==eq.scrollbarH.firstChild||ep==eq.scrollbarV||ep==eq.scrollbarV.firstChild||ep==eq.scrollbarFiller||ep==eq.gutterFiller){return null}}var el,es,en=ak(eq.lineSpace);try{el=er.clientX;es=er.clientY}catch(er){return null}return d2(em,el-en.left,es-en.top)}var cf,b9;function cU(eD){if(ao(this,eD)){return}var eo=this,ey=eo.display,eF=eo.doc,ew=eF.sel;ew.shift=eD.shiftKey;if(aB(ey,eD)){if(!b1){ey.scroller.draggable=false;setTimeout(function(){ey.scroller.draggable=true},100)}return}if(j(eo,eD)){return}var en=bA(eo,eD);switch(d0(eD)){case 3:if(bQ){aa.call(eo,eo,eD)}return;case 2:if(b1){eo.state.lastMiddleDown=+new Date}if(en){d5(eo.doc,en)}setTimeout(bH(c1,eo),20);bO(eD);return}if(!en){if(A(eD)==ey.scroller){bO(eD)}return}if(!eo.state.focused){bL(eo)}var el=+new Date,em="single";if(b9&&b9.time>el-400&&dX(b9.pos,en)){em="triple";bO(eD);setTimeout(bH(c1,eo),20);aL(eo,en.line)}else{if(cf&&cf.time>el-400&&dX(cf.pos,en)){em="double";b9={time:el,pos:en};bO(eD);var eA=Y(dy(eF,en.line).text,en);d5(eo.doc,eA.from,eA.to)}else{cf={time:el,pos:en}}}var ep=en;if(eo.options.dragDrop&&db&&!P(eo)&&!dX(ew.from,ew.to)&&!dz(en,ew.from)&&!dz(ew.to,en)&&em=="single"){var ez=b2(eo,function(eG){if(b1){ey.scroller.draggable=false}eo.state.draggingText=false;cK(document,"mouseup",ez);cK(ey.scroller,"drop",ez);if(Math.abs(eD.clientX-eG.clientX)+Math.abs(eD.clientY-eG.clientY)<10){bO(eG);d5(eo.doc,en);c1(eo)}});if(b1){ey.scroller.draggable=true}eo.state.draggingText=ez;if(ey.scroller.dragDrop){ey.scroller.dragDrop()}bf(document,"mouseup",ez);bf(ey.scroller,"drop",ez);return}bO(eD);if(em=="single"){d5(eo.doc,dY(eF,en))}var eE=ew.from,et=ew.to,ex=en;function eB(eH){if(dX(ex,eH)){return}ex=eH;if(em=="single"){d5(eo.doc,dY(eF,en),eH);return}eE=dY(eF,eE);et=dY(eF,et);if(em=="double"){var eG=Y(dy(eF,eH.line).text,eH);if(dz(eH,eE)){d5(eo.doc,eG.from,et)}else{d5(eo.doc,eE,eG.to)}}else{if(em=="triple"){if(dz(eH,eE)){d5(eo.doc,et,dY(eF,H(eH.line,0)))}else{d5(eo.doc,eE,dY(eF,H(eH.line+1,0)))}}}}var eu=ak(ey.wrapper);var eq=0;function eC(eI){var eG=++eq;var eK=bA(eo,eI,true);if(!eK){return}if(!dX(eK,ep)){if(!eo.state.focused){bL(eo)}ep=eK;eB(eK);var eJ=bj(ey,eF);if(eK.line>=eJ.to||eK.lineeu.bottom?20:0;if(eH){setTimeout(b2(eo,function(){if(eq!=eG){return}ey.scroller.scrollTop+=eH;eC(eI)}),50)}}}function es(eG){eq=Infinity;bO(eG);c1(eo);cK(document,"mousemove",ev);cK(document,"mouseup",er)}var ev=b2(eo,function(eG){if(!cs&&!d0(eG)){es(eG)}else{eC(eG)}});var er=b2(eo,es);bf(document,"mousemove",ev);bf(document,"mouseup",er)}function ej(ew,es,eu,ev,eo){try{var em=es.clientX,el=es.clientY}catch(es){return false}if(em>=Math.floor(ak(ew.display.gutters).right)){return false}if(ev){bO(es)}var et=ew.display;var er=ak(et.lineDiv);if(el>er.bottom||!dE(ew,eu)){return a6(es)}el-=er.top-et.viewOffset;for(var ep=0;ep=em){var ex=a1(ew.doc,el);var en=ew.options.gutters[ep];eo(ew,eu,ew,ex,en,es);return a6(es)}}}function cc(el,em){if(!dE(el,"gutterContextMenu")){return false}return ej(el,em,"gutterContextMenu",false,ae)}function j(el,em){return ej(el,em,"gutterClick",true,L)}var M=0;function aI(er){var et=this;if(ao(et,er)||aB(et.display,er)||(et.options.onDragEvent&&et.options.onDragEvent(et,V(er)))){return}bO(er);if(cs){M=+new Date}var es=bA(et,er,true),el=er.dataTransfer.files;if(!es||P(et)){return}if(el&&el.length&&window.FileReader&&window.File){var en=el.length,ev=Array(en),em=0;var eo=function(ey,ex){var ew=new FileReader;ew.onload=function(){ev[ex]=ew.result;if(++em==en){es=dY(et.doc,es);aG(et.doc,{from:es,to:es,text:av(ev.join("\n")),origin:"paste"},"around")}};ew.readAsText(ey)};for(var ep=0;epeq.clientWidth||et&&eq.scrollHeight>eq.clientHeight)){return}if(et&&bk&&b1){for(var es=em.target;es!=eq;es=es.parentNode){if(es.lineObj){er.display.currentWheelTarget=es;break}}}if(eu&&!bB&&!dQ&&bt!=null){if(et){C(er,Math.max(0,Math.min(eq.scrollTop+et*bt,eq.scrollHeight-eq.clientHeight)))}aZ(er,Math.max(0,Math.min(eq.scrollLeft+eu*bt,eq.scrollWidth-eq.clientWidth)));bO(em);eo.wheelStartX=null;return}if(et&&bt!=null){var el=et*bt;var ep=er.doc.scrollTop,en=ep+eo.wrapper.clientHeight;if(el<0){ep=Math.max(0,ep+el-50)}else{en=Math.min(er.doc.height,en+el+50)}ct(er,[],{top:ep,bottom:en})}if(dF<20){if(eo.wheelStartX==null){eo.wheelStartX=eq.scrollLeft;eo.wheelStartY=eq.scrollTop;eo.wheelDX=eu;eo.wheelDY=et;setTimeout(function(){if(eo.wheelStartX==null){return}var ev=eq.scrollLeft-eo.wheelStartX;var ex=eq.scrollTop-eo.wheelStartY;var ew=(ex&&eo.wheelDY&&ex/eo.wheelDY)||(ev&&eo.wheelDX&&ev/eo.wheelDX);eo.wheelStartX=eo.wheelStartY=null;if(!ew){return}bt=(bt*dF+ew)/(dF+1);++dF},200)}else{eo.wheelDX+=eu;eo.wheelDY+=et}}}function d4(em,ep,el){if(typeof ep=="string"){ep=c3[ep];if(!ep){return false}}if(em.display.pollingFast&&bu(em)){em.display.pollingFast=false}var eq=em.doc,eo=eq.sel.shift,en=false;try{if(P(em)){em.state.suppressEdits=true}if(el){eq.sel.shift=false}en=ep(em)!=bp}finally{eq.sel.shift=eo;em.state.suppressEdits=false}return en}function cj(el){var em=el.state.keyMaps.slice(0);if(el.options.extraKeys){em.push(el.options.extraKeys)}em.push(el.options.keyMap);return em}var W;function dC(el,er){var em=d6(el.options.keyMap),ep=em.auto;clearTimeout(W);if(ep&&!c2(er)){W=setTimeout(function(){if(d6(el.options.keyMap)==em){el.options.keyMap=(ep.call?ep.call(null,el):ep);ei(el)}},50)}var eo=dL(er,true),eq=false;if(!eo){return false}var en=cj(el);if(er.shiftKey){eq=g("Shift-"+eo,en,function(es){return d4(el,es,true)})||g(eo,en,function(es){if(typeof es=="string"?/^go[A-Z]/.test(es):es.motion){return d4(el,es)}})}else{eq=g(eo,en,function(es){return d4(el,es)})}if(eq){bO(er);k(el);if(bx){er.oldKeyCode=er.keyCode;er.keyCode=0}L(el,"keyHandled",el,eo,er)}return eq}function cO(el,eo,em){var en=g("'"+em+"'",cj(el),function(ep){return d4(el,ep,true)});if(en){bO(eo);k(el);L(el,"keyHandled",el,"'"+em+"'",eo)}return en}var ce=null;function l(eo){var el=this;if(!el.state.focused){bL(el)}if(ao(el,eo)||el.options.onKeyEvent&&el.options.onKeyEvent(el,V(eo))){return}if(cs&&eo.keyCode==27){eo.returnValue=false}var em=eo.keyCode;el.doc.sel.shift=em==16||eo.shiftKey;var en=dC(el,eo);if(dQ){ce=en?em:null;if(!en&&em==88&&!b7&&(bk?eo.metaKey:eo.ctrlKey)){el.replaceSelection("")}}}function bI(ep){var el=this;if(ao(el,ep)||el.options.onKeyEvent&&el.options.onKeyEvent(el,V(ep))){return}var eo=ep.keyCode,em=ep.charCode;if(dQ&&eo==ce){ce=null;bO(ep);return}if(((dQ&&(!ep.which||ep.which<10))||aC)&&dC(el,ep)){return}var en=String.fromCharCode(em==null?eo:em);if(this.options.electricChars&&this.doc.mode.electricChars&&this.options.smartIndent&&!P(this)&&this.doc.mode.electricChars.indexOf(en)>-1){setTimeout(b2(el,function(){K(el,el.doc.sel.to.line,"smart")}),75)}if(cO(el,ep,en)){return}if(cs&&!bx){el.display.inputHasSelection=null}t(el)}function bL(el){if(el.options.readOnly=="nocursor"){return}if(!el.state.focused){ae(el,"focus",el);el.state.focused=true;if(el.display.wrapper.className.search(/\bCodeMirror-focused\b/)==-1){el.display.wrapper.className+=" CodeMirror-focused"}if(!el.curOp){dJ(el,true);if(b1){setTimeout(bH(dJ,el,true),0)}}}aM(el);k(el)}function aq(el){if(el.state.focused){ae(el,"blur",el);el.state.focused=false;el.display.wrapper.className=el.display.wrapper.className.replace(" CodeMirror-focused","")}clearInterval(el.display.blinker);setTimeout(function(){if(!el.state.focused){el.doc.sel.shift=false}},150)}var dU;function aa(ev,eq){if(ao(ev,eq,"contextmenu")){return}var es=ev.display,em=ev.doc.sel;if(aB(es,eq)||cc(ev,eq)){return}var eu=bA(ev,eq),el=es.scroller.scrollTop;if(!eu||dQ){return}var ep=ev.options.resetSelectionOnContextMenu;if(ep&&(dX(em.from,em.to)||dz(eu,em.from)||!dz(eu,em.to))){b2(ev,bd)(ev.doc,eu,eu)}var er=es.input.style.cssText;es.inputDiv.style.position="absolute";es.input.style.cssText="position: fixed; width: 30px; height: 30px; top: "+(eq.clientY-5)+"px; left: "+(eq.clientX-5)+"px; z-index: 1000; background: white; outline: none;border-width: 0; outline: none; overflow: hidden; opacity: .05; -ms-opacity: .05; filter: alpha(opacity=5);";c1(ev);dJ(ev,true);if(dX(em.from,em.to)){es.input.value=es.prevInput=" "}function eo(){if(es.input.selectionStart!=null){var ew=es.input.value="\u200b"+(dX(em.from,em.to)?"":es.input.value);es.prevInput="\u200b";es.input.selectionStart=1;es.input.selectionEnd=ew.length}}function et(){es.inputDiv.style.position="relative";es.input.style.cssText=er;if(bx){es.scrollbarV.scrollTop=es.scroller.scrollTop=el}aM(ev);if(es.input.selectionStart!=null){if(!cs||bx){eo()}clearTimeout(dU);var ew=0,ex=function(){if(es.prevInput==" "&&es.input.selectionStart==0){b2(ev,c3.selectAll)(ev)}else{if(ew++<10){dU=setTimeout(ex,500)}else{dJ(ev)}}};dU=setTimeout(ex,200)}}if(cs&&!bx){eo()}if(bQ){cS(eq);var en=function(){cK(window,"mouseup",en);setTimeout(et,20)};bf(window,"mouseup",en)}else{setTimeout(et,50)}}var bY=y.changeEnd=function(el){if(!el.text){return el.to}return H(el.from.line+el.text.length-1,dW(el.text).length+(el.text.length==1?el.from.ch:0))};function c4(ep,er,eq){if(!dz(er.from,eq)){return dY(ep,eq)}var eo=(er.text.length-1)-(er.to.line-er.from.line);if(eq.line>er.to.line+eo){var en=eq.line-eo,em=ep.first+ep.size-1;if(en>em){return H(em,dy(ep,em).text.length)}return dM(eq,dy(ep,en).text.length)}if(eq.line==er.to.line+eo){return dM(eq,dW(er.text).length+(er.text.length==1?er.from.ch:0)+dy(ep,er.to.line).text.length-er.to.ch)}var el=eq.line-er.from.line;return dM(eq,er.text[el].length+(el?0:er.from.ch))}function dD(em,ep,en){if(en&&typeof en=="object"){return{anchor:c4(em,ep,en.anchor),head:c4(em,ep,en.head)}}if(en=="start"){return{anchor:ep.from,head:ep.from}}var el=bY(ep);if(en=="around"){return{anchor:ep.from,head:el}}if(en=="end"){return{anchor:el,head:el}}var eo=function(es){if(dz(es,ep.from)){return es}if(!dz(ep.to,es)){return el}var eq=es.line+ep.text.length-(ep.to.line-ep.from.line)-1,er=es.ch;if(es.line==ep.to.line){er+=el.ch-ep.to.ch}return H(eq,er)};return{anchor:eo(em.sel.anchor),head:eo(em.sel.head)}}function cx(em,eo,en){var el={canceled:false,from:eo.from,to:eo.to,text:eo.text,origin:eo.origin,cancel:function(){this.canceled=true}};if(en){el.update=function(es,er,eq,ep){if(es){this.from=dY(em,es)}if(er){this.to=dY(em,er)}if(eq){this.text=eq}if(ep!==undefined){this.origin=ep}}}ae(em,"beforeChange",em,el);if(em.cm){ae(em.cm,"beforeChange",em.cm,el)}if(el.canceled){return null}return{from:el.from,to:el.to,text:el.text,origin:el.origin}}function aG(eo,eq,ep,en){if(eo.cm){if(!eo.cm.curOp){return b2(eo.cm,aG)(eo,eq,ep,en)}if(eo.cm.state.suppressEdits){return}}if(dE(eo,"beforeChange")||eo.cm&&dE(eo.cm,"beforeChange")){eq=cx(eo,eq,true);if(!eq){return}}var em=ef&&!en&&bP(eo,eq.from,eq.to);if(em){for(var el=em.length-1;el>=1;--el){am(eo,{from:em[el].from,to:em[el].to,text:[""]})}if(em.length){am(eo,{from:em[0].from,to:em[0].to,text:eq.text},ep)}}else{am(eo,eq,ep)}}function am(en,ep,eo){if(ep.text.length==1&&ep.text[0]==""&&dX(ep.from,ep.to)){return}var em=dD(en,ep,eo);c8(en,ep,em,en.cm?en.cm.curOp.id:NaN);cJ(en,ep,em,cP(en,ep));var el=[];cE(en,function(er,eq){if(!eq&&cd(el,er.history)==-1){cr(er.history,ep);el.push(er.history)}cJ(er,ep,null,cP(er,ep))})}function bm(eu,er){if(eu.cm&&eu.cm.state.suppressEdits){return}var eq=eu.history;var em=(er=="undo"?eq.done:eq.undone).pop();if(!em){return}var es={changes:[],anchorBefore:em.anchorAfter,headBefore:em.headAfter,anchorAfter:em.anchorBefore,headAfter:em.headBefore,generation:eq.generation};(er=="undo"?eq.undone:eq.done).push(es);eq.generation=em.generation||++eq.maxGeneration;var en=dE(eu,"beforeChange")||eu.cm&&dE(eu.cm,"beforeChange");for(var eo=em.changes.length-1;eo>=0;--eo){var et=em.changes[eo];et.origin=er;if(en&&!cx(eu,et,false)){(er=="undo"?eq.done:eq.undone).length=0;return}es.changes.push(ck(eu,et));var el=eo?dD(eu,et,null):{anchor:em.anchorBefore,head:em.headBefore};cJ(eu,et,el,cG(eu,et));var ep=[];cE(eu,function(ew,ev){if(!ev&&cd(ep,ew.history)==-1){cr(ew.history,et);ep.push(ew.history)}cJ(ew,et,null,cG(ew,et))})}}function dG(el,en){function em(eo){return H(eo.line+en,eo.ch)}el.first+=en;if(el.cm){N(el.cm,el.first,el.first,en)}el.sel.head=em(el.sel.head);el.sel.anchor=em(el.sel.anchor);el.sel.from=em(el.sel.from);el.sel.to=em(el.sel.to)}function cJ(ep,eq,eo,em){if(ep.cm&&!ep.cm.curOp){return b2(ep.cm,cJ)(ep,eq,eo,em)}if(eq.to.lineep.lastLine()){return}if(eq.from.lineen){eq={from:eq.from,to:H(en,dy(ep,en).text.length),text:[eq.text[0]],origin:eq.origin}}eq.removed=ea(ep,eq.from,eq.to);if(!eo){eo=dD(ep,eq,null)}if(ep.cm){ai(ep.cm,eq,em,eo)}else{dR(ep,eq,em,eo)}}function ai(ev,er,eo,el){var eu=ev.doc,eq=ev.display,es=er.from,et=er.to;var em=false,en=es.line;if(!ev.options.lineWrapping){en=a8(s(eu,dy(eu,es.line)));eu.iter(en,et.line+1,function(ey){if(ey==eq.maxLine){em=true;return true}})}if(!dz(eu.sel.head,er.from)&&!dz(er.to,eu.sel.head)){ev.curOp.cursorActivity=true}dR(eu,er,eo,el,aE(ev));if(!ev.options.lineWrapping){eu.iter(en,es.line+er.text.length,function(ez){var ey=cQ(eu,ez);if(ey>eq.maxLineLength){eq.maxLine=ez;eq.maxLineLength=ey;eq.maxLineChanged=true;em=false}});if(em){ev.curOp.updateMaxLine=true}}eu.frontier=Math.min(eu.frontier,es.line);cL(ev,400);var ex=er.text.length-(et.line-es.line)-1;N(ev,es.line,et.line+1,ex);if(dE(ev,"change")){var ep={from:es,to:et,text:er.text,removed:er.removed,origin:er.origin};if(ev.curOp.textChanged){for(var ew=ev.curOp.textChanged;ew.next;ew=ew.next){}ew.next=ep}else{ev.curOp.textChanged=ep}}}function aw(eo,en,eq,ep,el){if(!ep){ep=eq}if(dz(ep,eq)){var em=ep;ep=eq;eq=em}if(typeof en=="string"){en=av(en)}aG(eo,{from:eq,to:ep,text:en,origin:el},null)}function H(el,em){if(!(this instanceof H)){return new H(el,em)}this.line=el;this.ch=em}y.Pos=H;function dX(em,el){return em.line==el.line&&em.ch==el.ch}function dz(em,el){return em.lineel){return H(el,dy(em,el).text.length)}return dM(en,dy(em,en.line).text.length)}function dM(en,em){var el=en.ch;if(el==null||el>em){return H(en.line,em)}else{if(el<0){return H(en.line,0)}else{return en}}}function bn(em,el){return el>=em.first&&el=en.ch:el.to>en.ch))){if(er){ae(em,"beforeCursorEnter");if(em.explicitlyCleared){if(!ew.markedSpans){break}else{--ep;continue}}}if(!em.atomic){continue}var es=em.find()[eo<0?"from":"to"];if(dX(es,en)){es.ch+=eo;if(es.ch<0){if(es.line>eu.first){es=dY(eu,H(es.line-1))}else{es=null}}else{if(es.ch>ew.text.length){if(es.line(window.innerHeight||document.documentElement.clientHeight)){el=false}}if(el!=null&&!dN){var eo=eq.cursor.style.display=="none";if(eo){eq.cursor.style.display="";eq.cursor.style.left=ep.left+"px";eq.cursor.style.top=(ep.top-eq.viewOffset)+"px"}eq.cursor.scrollIntoView(el);if(eo){eq.cursor.style.display="none"}}}function u(eu,es,ep,eo){if(eo==null){eo=0}for(;;){var eq=false,et=cy(eu,es);var el=!ep||ep==es?et:cy(eu,ep);var en=x(eu,Math.min(et.left,el.left),Math.min(et.top,el.top)-eo,Math.max(et.left,el.left),Math.max(et.bottom,el.bottom)+eo);var er=eu.doc.scrollTop,em=eu.doc.scrollLeft;if(en.scrollTop!=null){C(eu,en.scrollTop);if(Math.abs(eu.doc.scrollTop-er)>1){eq=true}}if(en.scrollLeft!=null){aZ(eu,en.scrollLeft);if(Math.abs(eu.doc.scrollLeft-em)>1){eq=true}}if(!eq){return et}}}function w(el,en,ep,em,eo){var eq=x(el,en,ep,em,eo);if(eq.scrollTop!=null){C(el,eq.scrollTop)}if(eq.scrollLeft!=null){aZ(el,eq.scrollLeft)}}function x(er,ez,eo,ey,en){var ew=er.display,ev=at(er.display);if(eo<0){eo=0}var em=ew.scroller.clientHeight-aJ,eu=ew.scroller.scrollTop,et={};var eB=er.doc.height+a3(ew);var eC=eoeB-ev;if(eoeu+em){var es=Math.min(eo,(ex?eB:en)-em);if(es!=eu){et.scrollTop=es}}}var eq=ew.scroller.clientWidth-aJ,el=ew.scroller.scrollLeft;ez+=ew.gutters.offsetWidth;ey+=ew.gutters.offsetWidth;var ep=ew.gutters.offsetWidth;var eA=ezeq+el-3){et.scrollLeft=ey+10-eq}}return et}function v(el,en,em){el.curOp.updateScrollPos={scrollLeft:en==null?el.doc.scrollLeft:en,scrollTop:em==null?el.doc.scrollTop:em}}function bT(em,eo,en){var ep=em.curOp.updateScrollPos||(em.curOp.updateScrollPos={scrollLeft:em.doc.scrollLeft,scrollTop:em.doc.scrollTop});var el=em.display.scroller;ep.scrollTop=Math.max(0,Math.min(el.scrollHeight-el.clientHeight,ep.scrollTop+en));ep.scrollLeft=Math.max(0,Math.min(el.scrollWidth-el.clientWidth,ep.scrollLeft+eo))}function K(ex,eo,ew,en){var ev=ex.doc;if(ew==null){ew="add"}if(ew=="smart"){if(!ex.doc.mode.indent){ew="prev"}else{var em=co(ex,eo)}}var er=ex.options.tabSize;var ey=dy(ev,eo),eq=bb(ey.text,null,er);var el=ey.text.match(/^\s*/)[0],et;if(ew=="smart"){et=ex.doc.mode.indent(em,ey.text.slice(el.length),ey.text);if(et==bp){if(!en){return}ew="prev"}}if(ew=="prev"){if(eo>ev.first){et=bb(dy(ev,eo-1).text,null,er)}else{et=0}}else{if(ew=="add"){et=eq+ex.options.indentUnit}else{if(ew=="subtract"){et=eq-ex.options.indentUnit}else{if(typeof ew=="number"){et=eq+ew}}}}et=Math.max(0,et);var eu="",es=0;if(ex.options.indentWithTabs){for(var ep=Math.floor(et/er);ep;--ep){es+=er;eu+="\t"}}if(es=eC.first+eC.size){return(ez=false)}et=eD;return el=dy(eC,eD)}function ey(eE){var eD=(eq?p:O)(el,eu,ew,true);if(eD==null){if(!eE&&eA()){if(eq){eu=(ew<0?bX:bN)(el)}else{eu=ew<0?el.text.length:0}}else{return(ez=false)}}else{eu=eD}return true}if(ev=="char"){ey()}else{if(ev=="column"){ey(true)}else{if(ev=="word"||ev=="group"){var ex=null,er=ev=="group";for(var ep=true;;ep=false){if(ew<0&&!ey(!ep)){break}var em=el.text.charAt(eu)||"\n";var en=bK(em)?"w":!er?null:/\s/.test(em)?null:"p";if(ex&&ex!=en){if(ew<0){ew=1;ey()}break}if(en){ex=en}if(ew>0&&!ey(!ep)){break}}}}}var es=be(eC,H(et,eu),eB,true);if(!ez){es.hitSide=true}return es}function aQ(et,eo,el,es){var er=et.doc,eq=eo.left,ep;if(es=="page"){var en=Math.min(et.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight);ep=eo.top+el*(en-(el<0?1.5:0.5)*at(et.display))}else{if(es=="line"){ep=el>0?eo.bottom+3:eo.top-3}}for(;;){var em=d2(et,eq,ep);if(!em.outside){break}if(el<0?ep<=0:ep>=er.height){em.hitSide=true;break}ep+=el*5}return em}function Y(eo,eq){var ep=eq.ch,en=eq.ch;if(eo){if((eq.xRel<0||en==eo.length)&&ep){--ep}else{++en}var em=eo.charAt(ep);var el=bK(em)?bK:/\s/.test(em)?function(er){return/\s/.test(er)}:function(er){return !/\s/.test(er)&&!bK(er)};while(ep>0&&el(eo.charAt(ep-1))){--ep}while(en>1;if((el?en[el*2-1]:0)>=em){ep=el}else{if(en[el*2+1]eo){em=eo;el=true}}var en=dy(this.doc,em);return dd(this,dy(this.doc,em),{top:0,left:0},ep||"page").top+(el?en.height:0)},defaultTextHeight:function(){return at(this.display)},defaultCharWidth:function(){return cq(this.display)},setGutterMarker:b2(null,function(el,em,en){return cZ(this,el,function(eo){var ep=eo.gutterMarkers||(eo.gutterMarkers={});ep[em]=en;if(!en&&dh(ep)){eo.gutterMarkers=null}return true})}),clearGutter:b2(null,function(en){var el=this,eo=el.doc,em=eo.first;eo.iter(function(ep){if(ep.gutterMarkers&&ep.gutterMarkers[en]){ep.gutterMarkers[en]=null;N(el,em,em+1);if(dh(ep.gutterMarkers)){ep.gutterMarkers=null}}++em})}),addLineClass:b2(null,function(en,em,el){return cZ(this,en,function(eo){var ep=em=="text"?"textClass":em=="background"?"bgClass":"wrapClass";if(!eo[ep]){eo[ep]=el}else{if(new RegExp("(?:^|\\s)"+el+"(?:$|\\s)").test(eo[ep])){return false}else{eo[ep]+=" "+el}}return true})}),removeLineClass:b2(null,function(en,em,el){return cZ(this,en,function(ep){var es=em=="text"?"textClass":em=="background"?"bgClass":"wrapClass";var er=ep[es];if(!er){return false}else{if(el==null){ep[es]=null}else{var eq=er.match(new RegExp("(?:^|\\s+)"+el+"(?:$|\\s+)"));if(!eq){return false}var eo=eq.index+eq[0].length;ep[es]=er.slice(0,eq.index)+(!eq.index||eo==er.length?"":" ")+er.slice(eo)||null}}return true})}),addLineWidget:b2(null,function(en,em,el){return a2(this,en,em,el)}),removeLineWidget:function(el){el.clear()},lineInfo:function(el){if(typeof el=="number"){if(!bn(this.doc,el)){return null}var em=el;el=dy(this.doc,el);if(!el){return null}}else{var em=a8(el);if(em==null){return null}}return{line:em,handle:el,text:el.text,gutterMarkers:el.gutterMarkers,textClass:el.textClass,bgClass:el.bgClass,wrapClass:el.wrapClass,widgets:el.widgets}},getViewport:function(){return{from:this.display.showingFrom,to:this.display.showingTo}},addWidget:function(eq,en,es,eo,eu){var ep=this.display;eq=cy(this,dY(this.doc,eq));var er=eq.bottom,em=eq.left;en.style.position="absolute";ep.sizer.appendChild(en);if(eo=="over"){er=eq.top}else{if(eo=="above"||eo=="near"){var el=Math.max(ep.wrapper.clientHeight,this.doc.height),et=Math.max(ep.sizer.clientWidth,ep.lineSpace.clientWidth);if((eo=="above"||eq.bottom+en.offsetHeight>el)&&eq.top>en.offsetHeight){er=eq.top-en.offsetHeight}else{if(eq.bottom+en.offsetHeight<=el){er=eq.bottom}}if(em+en.offsetWidth>et){em=et-en.offsetWidth}}}en.style.top=er+"px";en.style.left=en.style.right="";if(eu=="right"){em=ep.sizer.clientWidth-en.offsetWidth;en.style.right="0px"}else{if(eu=="left"){em=0}else{if(eu=="middle"){em=(ep.sizer.clientWidth-en.offsetWidth)/2}}en.style.left=em+"px"}if(es){w(this,em,er,em+en.offsetWidth,er+en.offsetHeight)}},triggerOnKeyDown:b2(null,l),execCommand:function(el){return c3[el](this)},findPosH:function(er,eo,ep,em){var el=1;if(eo<0){el=-1;eo=-eo}for(var en=0,eq=dY(this.doc,er);en2){en.dependencies=[];for(var em=2;em0&&en.ch=this.string.length},sol:function(){return this.pos==0},peek:function(){return this.string.charAt(this.pos)||undefined},next:function(){if(this.posem},eatSpace:function(){var el=this.pos;while(/[\s\u00a0]/.test(this.string.charAt(this.pos))){++this.pos}return this.pos>el},skipToEnd:function(){this.pos=this.string.length},skipTo:function(el){var em=this.string.indexOf(el,this.pos);if(em>-1){this.pos=em;return true}},backUp:function(el){this.pos-=el},column:function(){if(this.lastColumnPos0){return null}if(en&&em!==false){this.pos+=en[0].length}return en}},current:function(){return this.string.slice(this.start,this.pos)}};y.StringStream=dg;function E(em,el){this.lines=[];this.type=el;this.doc=em}y.TextMarker=E;aV(E);E.prototype.clear=function(){if(this.explicitlyCleared){return}var es=this.doc.cm,em=es&&!es.curOp;if(em){bR(es)}if(dE(this,"clear")){var et=this.find();if(et){L(this,"clear",et.from,et.to)}}var en=null,eq=null;for(var eo=0;eoes.display.maxLineLength){es.display.maxLine=el;es.display.maxLineLength=ep;es.display.maxLineChanged=true}}}if(en!=null&&es){N(es,en,eq+1)}this.lines.length=0;this.explicitlyCleared=true;if(this.atomic&&this.doc.cantEdit){this.doc.cantEdit=false;if(es){cX(es)}}if(em){T(es)}};E.prototype.find=function(){var eq,ep;for(var em=0;em=el.display.showingFrom&&eo.line=en:et.to>en);(es||(es=[])).push({from:et.from,to:eo?null:et.to,marker:eq})}}}return es}function ac(em,eo,er){if(em){for(var ep=0,es;ep=eo:et.to>eo);if(en||eq.type=="bookmark"&&et.from==eo&&(!er||et.marker.insertLeft)){var el=et.from==null||(eq.inclusiveLeft?et.from<=eo:et.from0&&er){for(var eo=0;eoeo)&&(!eq||eq.widtheu.options.maxHighlightLength){en=false;if(eo){cm(eu,ew,em,ev.pos)}ev.pos=ew.length;el=null}else{el=ep.token(ev,em)}if(!en||er!=el){if(eseu){es.splice(eq,1,eu,es[eq+1],ev)}eq+=2;en=Math.min(eu,ev)}if(!ew){return}if(ep.opaque){es.splice(ey,eq-ey,eu,ew);eq=ey+2}else{for(;ey="\ud800"&&el<"\udbff"&&eqep)){if(eC.to!=null&&eH>eC.to){eH=eC.to;eG=""}if(ez.className){el+=" "+ez.className}if(ez.startStyle&&eC.from==ep){ex+=" "+ez.startStyle}if(ez.endStyle&&eC.to==eH){eG+=" "+ez.endStyle}if(ez.title&&!eI){eI=ez.title}if(ez.collapsed&&(!en||en.marker.sizeep&&eH>eC.from){eH=eC.from}}if(ez.type=="bookmark"&&eC.from==ep&&ez.replacedWith){er.push(ez)}}if(en&&(en.from||0)==ep){J(eA,(en.to==null?eE:en.to)-ep,en.marker,en.from==null);if(en.to==null){return en.marker.find()}}if(!en&&er.length){for(var eB=0;eB=eE){break}var ev=Math.min(eE,eH);while(true){if(ew){var em=ep+ew.length;if(!en){var eo=em>ev?ew.slice(0,ev-ep):ew;eA.addToken(eA,eo,eF?eF+el:el,ex,ep+eo.length==eH?eG:"",eI)}if(em>=ev){ew=ew.slice(ev-ep);ep=ev;break}ep=em;ex=""}ew=es.slice(ey,ey=et[eD++]);eF=di(et[eD++],eA)}}}function dR(eC,et,ep,ex,er){function eo(eD){return ep?ep[eD]:null}function es(eD,eF,eE){cR(eD,eF,eE,er);L(eD,"change",eD,et)}var ey=et.from,em=et.to,ev=et.text;var eu=dy(eC,ey.line),el=dy(eC,em.line);var en=dW(ev),eA=eo(ev.length-1),ew=em.line-ey.line;if(ey.ch==0&&em.ch==0&&en==""&&(!eC.cm||eC.cm.options.wholeLineUpdateBefore)){for(var ez=0,eB=ev.length-1,eq=[];ez1){eC.remove(ey.line+1,ew-1)}eC.insert(ey.line+1,eq)}}}L(eC,"change",eC,et);bd(eC,ex.anchor,ex.head,null,true)}function dl(em){this.lines=em;this.parent=null;for(var en=0,eo=em.length,el=0;en50){while(el.lines.length>50){var eo=el.lines.splice(el.lines.length-25,25);var er=new dl(eo);el.height-=er.height;this.children.splice(en+1,0,er);er.parent=this}this.maybeSpill()}break}em-=eq}},maybeSpill:function(){if(this.children.length<=10){return}var eo=this;do{var em=eo.children.splice(eo.children.length-5,5);var en=new dP(em);if(!eo.parent){var ep=new dP(eo.children);ep.parent=eo;eo.children=[ep,en];eo=ep}else{eo.size-=en.size;eo.height-=en.height;var el=cd(eo.parent.children,eo);eo.parent.children.splice(el+1,0,en)}en.parent=eo.parent}while(eo.children.length>10);eo.parent.maybeSpill()},iterN:function(el,es,er){for(var em=0,ep=this.children.length;em=ep.ch)){eo.push(en.marker.parent||en.marker)}}}return eo},getAllMarks:function(){var el=[];this.iter(function(en){var em=en.markedSpans;if(em){for(var eo=0;eoem){el=em;return true}em-=ep;++en});return dY(this,H(en,el))},indexFromPos:function(em){em=dY(this,em);var el=em.ch;if(em.lineeo){eo=el.from}if(el.to!=null&&el.toen-eq.cm.options.historyEventDelay)||es.origin.charAt(0)=="*"))){var em=dW(er.changes);if(dX(es.from,es.to)&&dX(es.from,em.to)){em.to=bY(es)}else{er.changes.push(ck(eq,es))}er.anchorAfter=ep.anchor;er.headAfter=ep.head}else{er={changes:[ck(eq,es)],generation:eo.generation,anchorBefore:eq.sel.anchor,headBefore:eq.sel.head,anchorAfter:ep.anchor,headAfter:ep.head};eo.done.push(er);eo.generation=++eo.maxGeneration;while(eo.done.length>eo.undoDepth){eo.done.shift()}}eo.lastTime=en;eo.lastOp=el;eo.lastOrigin=es.origin}function aK(en){if(!en){return null}for(var em=0,el;em-1){dW(eu)[el]=es[el];delete es[el]}}}}}}return em}function dj(eo,en,em,el){if(em0}y.on=bf;y.off=cK;y.signal=ae;function aV(el){el.prototype.on=function(em,en){bf(this,em,en)};el.prototype.off=function(em,en){cK(this,em,en)}}var aJ=30;var bp=y.Pass={toString:function(){return"CodeMirror.Pass"}};function ek(){this.id=null}ek.prototype={set:function(el,em){clearTimeout(this.id);this.id=setTimeout(em,el)}};function bb(en,el,ep,eq,em){if(el==null){el=en.search(/[^\s\u00a0]/);if(el==-1){el=en.length}}for(var eo=eq||0,er=em||0;eo"\x80"&&(el.toUpperCase()!=el.toLowerCase()||aD.test(el))}function dh(el){for(var em in el){if(el.hasOwnProperty(em)&&el[em]){return false}}return true}var dK=/[\u0300-\u036F\u0483-\u0487\u0488-\u0489\u0591-\u05BD\u05BF\u05C1-\u05C2\u05C4-\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7-\u06E8\u06EA-\u06ED\uA66F\u1DC0–\u1DFF\u20D0–\u20FF\uA670-\uA672\uA674-\uA67D\uA69F\udc00-\udfff\uFE20–\uFE2F]/;function d8(el,ep,eo,en){var eq=document.createElement(el);if(eo){eq.className=eo}if(en){eq.style.cssText=en}if(typeof ep=="string"){m(eq,ep)}else{if(ep){for(var em=0;em0;--el){em.removeChild(em.firstChild)}return em}function bc(el,em){return cB(el).appendChild(em)}function m(el,em){if(bx){el.innerHTML="";el.appendChild(document.createTextNode(em))}else{el.textContent=em}}function ak(el){return el.getBoundingClientRect()}y.replaceGetRect=function(el){ak=el};var db=function(){if(bx){return false}var el=d8("div");return"draggable" in el||"dragDrop" in el}();function bo(){return false}if(bB){bo=function(em,el){return em.charCodeAt(el-1)==36&&em.charCodeAt(el)==39}}else{if(ad&&!/Version\/([6-9]|\d\d)\b/.test(navigator.userAgent)){bo=function(em,el){return/\-[^ \-?]|\?[^ !\'\"\),.\-\/:;\?\]\}]/.test(em.slice(el-1,el+1))}}else{if(b1&&/Chrome\/(?:29|[3-9]\d|\d\d\d)\./.test(navigator.userAgent)){bo=function(en,el){var em=en.charCodeAt(el-1);return em>=8208&&em<=8212}}else{if(b1){bo=function(em,el){if(el>1&&em.charCodeAt(el-1)==45){if(/\w/.test(em.charAt(el-2))&&/[^\-?\.]/.test(em.charAt(el))){return true}if(el>2&&/[\d\.,]/.test(em.charAt(el-2))&&/[\d\.,]/.test(em.charAt(el))){return false}}return/[~!#%&*)=+}\]\\|\"\.>,:;][({[<]|-[^\-?\.\u2010-\u201f\u2026]|\?[\w~`@#$%\^&*(_=+{[|><]|…[\w~`@#$%\^&*(_=+{[><]/.test(em.slice(el-1,el+1))}}}}}var cW;function i(el){if(cW!=null){return cW}var em=d8("div",null,null,"width: 50px; height: 50px; overflow-x: scroll");bc(el,em);if(em.offsetWidth){cW=em.offsetHeight-em.clientHeight}return cW||0}var dZ;function aN(el){if(dZ==null){var em=d8("span","\u200b");bc(el,d8("span",[em,document.createTextNode("x")]));if(el.firstChild.offsetHeight!=0){dZ=em.offsetWidth<=1&&em.offsetHeight>2&&!by}}if(dZ){return d8("span","\u200b")}else{return d8("span","\u00a0",null,"display: inline-block; width: 1px; margin-right: -1px")}}var av="\n\nb".split(/\n/).length!=3?function(eq){var er=0,el=[],ep=eq.length;while(er<=ep){var eo=eq.indexOf("\n",er);if(eo==-1){eo=eq.length}var en=eq.slice(er,eq.charAt(eo-1)=="\r"?eo-1:eo);var em=en.indexOf("\r");if(em!=-1){el.push(en.slice(0,em));er+=em+1}else{el.push(en);er=eo+1}}return el}:function(el){return el.split(/\r\n?|\n/)};y.splitLines=av;var aS=window.getSelection?function(em){try{return em.selectionStart!=em.selectionEnd}catch(el){return false}}:function(en){try{var el=en.ownerDocument.selection.createRange()}catch(em){}if(!el||el.parentElement()!=en){return false}return el.compareEndPoints("StartToEnd",el)!=0};var b7=(function(){var el=d8("div");if("oncopy" in el){return true}el.setAttribute("oncopy","return;");return typeof el.oncopy=="function"})();var dA={3:"Enter",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",91:"Mod",92:"Mod",93:"Mod",109:"-",107:"=",127:"Delete",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",63276:"PageUp",63277:"PageDown",63275:"End",63273:"Home",63234:"Left",63232:"Up",63235:"Right",63233:"Down",63302:"Insert",63272:"Delete"};y.keyNames=dA;(function(){for(var el=0;el<10;el++){dA[el+48]=String(el)}for(var el=65;el<=90;el++){dA[el]=String.fromCharCode(el)}for(var el=1;el<=12;el++){dA[el+111]=dA[el+63235]="F"+el}})();function cC(el,er,eq,ep){if(!el){return ep(er,eq,"ltr")}var eo=false;for(var en=0;ener||er==eq&&em.to==er){ep(Math.max(em.from,er),Math.min(em.to,eq),em.level==1?"rtl":"ltr");eo=true}}if(!eo){ep(er,eq,"ltr")}}function cn(el){return el.level%2?el.to:el.from}function eg(el){return el.level%2?el.from:el.to}function bN(em){var el=a(em);return el?cn(el[0]):0}function bX(em){var el=a(em);if(!el){return em.text.length}return eg(dW(el))}function aT(em,ep){var en=dy(em.doc,ep);var eq=s(em.doc,en);if(eq!=en){ep=a8(eq)}var el=a(eq);var eo=!el?0:el[0].level%2?bX(eq):bN(eq);return H(ep,eo)}function cw(en,eq){var em,eo;while(em=cV(eo=dy(en.doc,eq))){eq=em.find().to.line}var el=a(eo);var ep=!el?eo.text.length:el[0].level%2?bN(eo):bX(eo);return H(eq,ep)}function U(em,en,el){var eo=em[0].level;if(en==eo){return true}if(el==eo){return false}return enep){dn=null;return em}if(eo.from==ep||eo.to==ep){if(en==null){en=em}else{if(U(el,eo.level,el[en].level)){dn=en;return em}else{dn=em;return en}}}}dn=null;return en}function dx(el,eo,em,en){if(!en){return eo+em}do{eo+=em}while(eo>0&&dK.test(el.text.charAt(eo)));return eo}function p(el,es,en,eo){var ep=a(el);if(!ep){return O(el,es,en,eo)}var er=ag(ep,es),em=ep[er];var eq=dx(el,es,em.level%2?-en:en,eo);for(;;){if(eq>em.from&&eq0)==em.level%2?em.to:em.from}else{em=ep[er+=en];if(!em){return null}if((en>0)==em.level%2){eq=dx(el,em.to,-1,eo)}else{eq=dx(el,em.from,1,eo)}}}}function O(el,ep,em,en){var eo=ep+em;if(en){while(eo>0&&dK.test(el.text.charAt(eo))){eo+=em}}return eo<0||eo>el.text.length?null:eo}var aH=(function(){var er="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLL";var ep="rrrrrrrrrrrr,rNNmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmrrrrrrrnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmNmmmmrrrrrrrrrrrrrrrrrr";function eo(eu){if(eu<=255){return er.charAt(eu)}else{if(1424<=eu&&eu<=1524){return"R"}else{if(1536<=eu&&eu<=1791){return ep.charAt(eu-1536)}else{if(1792<=eu&&eu<=2220){return"r"}else{return"L"}}}}}var el=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;var et=/[stwN]/,en=/[LRr]/,em=/[Lb1n]/,eq=/[1n]/;var es="L";return function(eE){if(!el.test(eE)){return false}var eK=eE.length,eA=[];for(var eJ=0,ew;eJ