var CodeMirror=(function(){function q(aD,aA){var bN={},a9=q.defaults;for(var ap in a9){if(a9.hasOwnProperty(ap)){bN[ap]=(aA&&aA.hasOwnProperty(ap)?aA:a9)[ap]}}var cy=bN.document;var au=cy.createElement("div");au.className="CodeMirror"+(bN.lineWrapping?" CodeMirror-wrap":"");au.innerHTML='
 
';if(aD.appendChild){aD.appendChild(au)}else{aD(au)}var bK=au.firstChild,bc=bK.firstChild,ba=au.lastChild,bA=ba.firstChild,b2=bA.firstChild,ay=b2.firstChild,aQ=ay.firstChild,bk=ay.nextSibling.firstChild,al=bk.firstChild,a3=al.nextSibling,a7=a3.nextSibling,ah=a7.nextSibling;cp();if(o){bc.style.width="0px"}if(!e){bk.draggable=true}bk.style.outline="none";if(bN.tabindex!=null){bc.tabIndex=bN.tabindex}if(!bN.gutter&&!bN.lineNumbers){ay.style.display="none"}try{cf("x")}catch(bU){if(bU.message.match(/runtime/i)){bU=new Error("A CodeMirror inside a P-style element does not work in Internet Explorer. (innerHTML bug)")}throw bU}var bT=new v(),am=new v(),cC;var bX,ck=new g([new Z([new d("")])]),b3,b5;bG();var cK={from:{line:0,ch:0},to:{line:0,ch:0},inverted:false};var b4,bf,aR,bt=0,a2,b9=false,cd=false;var cb,bS,ar,cA,aG,a6,aJ,cm;var a4=0,cD=0,bz=0,bB=0;var bQ;var br="",aw,bj=aN();ai(function(){aO(bN.value||"");cb=false})();var a0=new i();n(ba,"mousedown",ai(b6));n(ba,"dblclick",ai(bJ));n(bk,"dragstart",az);n(bk,"selectstart",N);if(!H){n(ba,"contextmenu",aT)}n(ba,"scroll",function(){bt=ba.scrollTop;bZ([]);if(bN.fixedGutter){ay.style.left=ba.scrollLeft+"px"}if(bN.onScroll){bN.onScroll(bV)}});n(window,"resize",function(){bZ(true)});n(bc,"keyup",ai(b7));n(bc,"input",aH);n(bc,"keydown",ai(bY));n(bc,"keypress",ai(bd));n(bc,"focus",cH);n(bc,"blur",av);n(ba,"dragenter",s);n(ba,"dragover",s);n(ba,"drop",ai(af));n(ba,"paste",function(){bp();aH()});n(bc,"paste",aH);n(bc,"cut",ai(function(){if(!bN.readOnly){bh("")}}));var ci;try{ci=(cy.activeElement==bc)}catch(bU){}if(ci){setTimeout(cH,20)}else{av()}function bg(cN){return cN>=0&&cNcN&&cR.y>cP.offsetHeight){cS=cR.y-cP.offsetHeight}if(cO+cP.offsetWidth>cU){cO=cU-cP.offsetWidth}}}cP.style.top=(cS+ce())+"px";cP.style.left=cP.style.right="";if(cV=="right"){cO=bA.clientWidth-cP.offsetWidth;cP.style.right="0px"}else{if(cV=="left"){cO=0}else{if(cV=="middle"){cO=(bA.clientWidth-cP.offsetWidth)/2}}cP.style.left=(cO+aX())+"px"}if(cT){aq(cO,cS,cO+cP.offsetWidth,cS+cP.offsetHeight)}},lineCount:function(){return ck.size},clipPos:aK,getCursor:function(cN){if(cN==null){cN=cK.inverted}return U(cN?cK.from:cK.to)},somethingSelected:function(){return !W(cK.from,cK.to)},setCursor:ai(function(cN,cP,cO){if(cP==null&&typeof cN.line=="number"){aY(cN.line,cN.ch,cO)}else{aY(cN,cP,cO)}}),setSelection:ai(function(cP,cO,cN){(cN?bn:bm)(aK(cP),aK(cO||cP))}),getLine:function(cN){if(bg(cN)){return cr(cN).text}},getLineHandle:function(cN){if(bg(cN)){return cr(cN)}},setLine:ai(function(cN,cO){if(bg(cN)){bD(cO,{line:cN,ch:0},{line:cN,ch:cr(cN).text.length})}}),removeLine:ai(function(cN){if(bg(cN)){bD("",{line:cN,ch:0},aK({line:cN+1,ch:0}))}}),replaceRange:ai(bD),getRange:function(cO,cN){return cB(aK(cO),aK(cN))},execCommand:function(cN){return F[cN](bV)},moveH:ai(cq),deleteH:ai(b8),moveV:ai(cj),toggleOverwrite:function(){b9=!b9},posFromIndex:function(cO){var cP=0,cN;ck.iter(0,ck.size,function(cQ){var cR=cQ.text.length+1;if(cR>cO){cN=cO;return true}cO-=cR;++cP});return aK({line:cP,ch:cN})},indexFromPos:function(cO){if(cO.line<0||cO.ch<0){return 0}var cN=cO.ch;ck.iter(0,cO.line,function(cP){cN+=cP.text.length+1});return cN},scrollTo:function(cN,cO){if(cN!=null){ba.scrollTop=cN}if(cO!=null){ba.scrollLeft=cO}bZ([])},operation:function(cN){return ai(cN)()},refresh:function(){bZ(true);if(ba.scrollHeight>bt){ba.scrollTop=bt}},getInputField:function(){return bc},getWrapperElement:function(){return au},getScrollerElement:function(){return ba},getGutterElement:function(){return ay}};function cr(cN){return x(ck,cN)}function aV(cO,cN){aJ=true;var cP=cN-cO.height;for(var cQ=cO;cQ;cQ=cQ.parent){cQ.height+=cP}}function aO(cN){var cO={line:0,ch:0};aF(cO,{line:ck.size-1,ch:cr(ck.size-1).text.length},w(cN),cO,cO);cb=true}function bO(cN){var cO=[];ck.iter(0,ck.size,function(cP){cO.push(cP.text)});return cO.join("\n")}function b6(cT){aW(u(cT,"shiftKey"));for(var cQ=h(cT);cQ!=au;cQ=cQ.parentNode){if(cQ.parentNode==bA&&cQ!=b2){return}}for(var cQ=h(cT);cQ!=au;cQ=cQ.parentNode){if(cQ.parentNode==aQ){if(bN.onGutterClick){bN.onGutterClick(bV,m(aQ.childNodes,cQ)+cD,cT)}return N(cT)}}var cN=aU(cT);switch(t(cT)){case 3:if(H&&!G){aT(cT)}return;case 2:if(cN){aY(cN.line,cN.ch,true)}return}if(!cN){if(h(cT)==ba){N(cT)}return}if(!b5){cH()}var cO=+new Date;if(aR&&aR.time>cO-400&&W(aR.pos,cN)){N(cT);setTimeout(bp,20);return aB(cN.line)}else{if(bf&&bf.time>cO-400&&W(bf.pos,cN)){aR={time:cO,pos:cN};N(cT);return bw(cN)}else{bf={time:cO,pos:cN}}}var cV=cN,cP;if(z&&!bN.readOnly&&!W(cK.from,cK.to)&&!T(cN,cK.from)&&!T(cK.to,cN)){if(e){bk.draggable=true}var cS=n(cy,"mouseup",ai(function(cW){if(e){bk.draggable=false}a2=false;cS();if(Math.abs(cT.clientX-cW.clientX)+Math.abs(cT.clientY-cW.clientY)<10){N(cW);aY(cN.line,cN.ch,true);bp()}}),true);a2=true;return}N(cT);aY(cN.line,cN.ch,true);function cU(cW){var cY=aU(cW,true);if(cY&&!W(cY,cV)){if(!b5){cH()}cV=cY;bn(cN,cY);cb=false;var cX=bq();if(cY.line>=cX.to||cY.line-1){setTimeout(ai(function(){bo(cK.to.line,"smart")}),75)}}aH()}function b7(cN){if(bN.onKeyEvent&&bN.onKeyEvent(bV,I(cN))){return}if(u(cN,"keyCode")==16){b4=null}}function cH(){if(bN.readOnly=="nocursor"){return}if(!b5){if(bN.onFocus){bN.onFocus(bV)}b5=true;if(au.className.search(/\bCodeMirror-focused\b/)==-1){au.className+=" CodeMirror-focused"}if(!a6){co(true)}}ae();cz()}function av(){if(b5){if(bN.onBlur){bN.onBlur(bV)}b5=false;if(bQ){ai(function(){if(bQ){bQ();bQ=null}})()}au.className=au.className.replace(" CodeMirror-focused","")}clearInterval(cC);setTimeout(function(){if(!b5){b4=null}},150)}function aF(cS,cR,cQ,cO,cN){if(cd){return}if(a0){var cP=[];ck.iter(cS.line,cR.line+1,function(cT){cP.push(cT.text)});a0.addChange(cS.line,cQ.length,cP);while(a0.done.length>bN.undoDepth){a0.done.shift()}}aj(cS,cR,cQ,cO,cN)}function bW(cV,cW,cN){var cX=cV.pop(),cR=cX?cX.length:0,cP=[];for(var cQ=cN>0?0:cR-1,cS=cN>0?cR:-1;cQ!=cS;cQ+=cN){var cU=cX[cQ];var cY=[],cO=cU.start+cU.added;ck.iter(cU.start,cO,function(cZ){cY.push(cZ.text)});cP.push({start:cU.start,added:cU.old.length,old:cY});var cT=aK({line:cU.start+cU.old.length-1,ch:Q(cY[cY.length-1],cU.old[cU.old.length-1])});aj({line:cU.start,ch:0},{line:cO-1,ch:cr(cO-1).text.length},cU.old,cT,cT)}cb=true;cW.push(cP)}function cG(){bW(a0.done,a0.undone,-1)}function cv(){bW(a0.undone,a0.done,1)}function aj(c2,cR,c8,cN,c9){if(cd){return}var c7=false,cQ=br.length;if(!bN.lineWrapping){ck.iter(c2.line,cR.line,function(da){if(da.text.length==cQ){c7=true;return true}})}if(c2.line!=cR.line||c8.length>1){aJ=true}var cZ=cR.line-c2.line,cY=cr(c2.line),cO=cr(cR.line);if(c2.ch==0&&cR.ch==0&&c8[c8.length-1]==""){var cW=[],cX=null;if(c2.line){cX=cr(c2.line-1);cX.fixMarkEnds(cO)}else{cO.fixMarkStarts()}for(var c4=0,c6=c8.length-1;c41){ck.remove(c2.line+1,cZ-1,cm)}ck.insert(c2.line+1,cW)}}}if(bN.lineWrapping){var cT=ba.clientWidth/a8()-3;ck.iter(c2.line,c2.line+c8.length,function(da){if(da.hidden){return}var db=Math.ceil(da.text.length/cT)||1;if(db!=da.height){aV(da,db)}})}else{ck.iter(c2.line,c4+c8.length,function(db){var da=db.text;if(da.length>cQ){br=da;cQ=da.length;aw=null;c7=false}});if(c7){cQ=0;br="";aw=null;ck.iter(0,ck.size,function(db){var da=db.text;if(da.length>cQ){cQ=da.length;br=da}})}}var cP=[],cV=c8.length-cZ-1;for(var c4=0,c1=b3.length;c4cR.line){cP.push(c5+cV)}}}var c3=c2.line+Math.min(c8.length,500);ct(c2.line,c3);cP.push(c3);b3=cP;bu(100);ar.push({from:c2.line,to:cR.line+1,diff:cV});var cU={from:c2,to:cR,text:c8};if(cA){for(var cS=cA;cS.next;cS=cS.next){}cS.next=cU}else{cA=cU}function c0(da){return da<=Math.min(cR.line,cR.line+cV)?da:da+cV}bm(cN,c9,c0(cK.from.line),c0(cK.to.line));if(ba.clientHeight){bA.style.height=(ck.height*bC()+2*ce())+"px"}}function bD(cO,cR,cQ){cR=aK(cR);if(!cQ){cQ=cR}else{cQ=aK(cQ)}cO=w(cO);function cP(cU){if(T(cU,cR)){return cU}if(!T(cQ,cU)){return cN}var cS=cU.line+cO.length-(cQ.line-cR.line)-1;var cT=cU.ch;if(cU.line==cQ.line){cT+=cO[cO.length-1].length-(cQ.ch-(cQ.line==cR.line?cR.ch:0))}return{line:cS,ch:cT}}var cN;at(cO,cR,cQ,function(cS){cN=cS;return{from:cP(cK.from),to:cP(cK.to)}});return cN}function bh(cN,cO){at(w(cN),cK.from,cK.to,function(cP){if(cO=="end"){return{from:cP,to:cP}}else{if(cO=="start"){return{from:cK.from,to:cK.from}}else{return{from:cK.from,to:cP}}}})}function at(cQ,cS,cR,cN){var cP=cQ.length==1?cQ[0].length+cS.ch:cQ[cQ.length-1].length;var cO=cN({line:cS.line+cQ.length-1,ch:cP});aF(cS,cR,cQ,cO.from,cO.to)}function cB(cR,cQ){var cO=cR.line,cN=cQ.line;if(cO==cN){return cr(cO).text.slice(cR.ch,cQ.ch)}var cP=[cr(cO).text.slice(cR.ch)];ck.iter(cO+1,cN,function(cS){cP.push(cS.text)});cP.push(cr(cN).text.slice(0,cQ.ch));return cP.join("\n")}function bP(){return cB(cK.from,cK.to)}var bi=false;function ae(){if(bi){return}bT.set(bN.pollInterval,function(){aE();by();if(b5){ae()}ao()})}function aH(){var cN=false;bi=true;function cO(){aE();var cP=by();if(!cP&&!cN){cN=true;bT.set(60,cO)}else{bi=false;ae()}ao()}bT.set(20,cO)}var a1="";function by(){if(a6||!b5||X(bc)||bN.readOnly){return false}var cO=bc.value;if(cO==a1){return false}b4=null;var cP=0,cN=Math.min(a1.length,cO.length);while(cPcO){a3.scrollIntoView()}}function b1(){var cO=cE(cK.inverted?cK.from:cK.to);var cN=bN.lineWrapping?Math.min(cO.x,bk.offsetWidth):cO.x;return aq(cN,cO.y,cN,cO.yBot)}function aq(cP,cU,cN,cT){var cR=aX(),c0=ce(),cW=bC();cU+=c0;cT+=c0;cP+=cR;cN+=cR;var cX=ba.clientHeight,cQ=ba.scrollTop,cO=false,cZ=true;if(cUcQ+cX){ba.scrollTop=cT+cW-cX;cO=true}}var cV=ba.clientWidth,cY=ba.scrollLeft;var cS=bN.fixedGutter?ay.clientWidth:0;if(cPcV+cY-3){ba.scrollLeft=cN+10-cV;cO=true;if(cN>bA.clientWidth){cZ=false}}}if(cO&&bN.onScroll){bN.onScroll(bV)}return cZ}function bq(){var cO=bC(),cQ=ba.scrollTop-ce();var cN=Math.max(0,Math.floor(cQ/cO));var cP=Math.ceil((cQ+ba.clientHeight)/cO);return{from:R(ck,cN),to:R(ck,cP)}}function bZ(cX,cS){if(!ba.clientWidth){cD=bz=a4=0;return}var cQ=bq();if(cX!==true&&cX.length==0&&cQ.from>cD&&cQ.tocZ&&bz-cZ<20){cZ=Math.min(ck.size,bz)}var c0=cX===true?[]:bM([{from:cD,to:bz,domStart:0}],cX);var cW=0;for(var cT=0;cTcZ){cU.to=cZ}if(cU.from>=cU.to){c0.splice(cT--,1)}else{cW+=cU.to-cU.from}}if(cW==cZ-cY){return}c0.sort(function(c2,c1){return c2.domStart-c1.domStart});var cP=bC(),cN=ay.style.display;ah.style.display="none";aI(cY,cZ,c0);ah.style.display=ay.style.display="";var cO=cY!=cD||cZ!=bz||bB!=ba.clientHeight+cP;if(cO){bB=ba.clientHeight+cP}cD=cY;bz=cZ;a4=f(ck,cY);b2.style.top=(a4*cP)+"px";if(ba.clientHeight){bA.style.height=(ck.height*cP+2*ce())+"px"}if(ah.childNodes.length!=bz-cD){throw new Error("BAD PATCH! "+JSON.stringify(c0)+" size="+(bz-cD)+" nodes="+ah.childNodes.length)}if(bN.lineWrapping){aw=ba.clientWidth;var cR=ah.firstChild,cV=false;ck.iter(cD,bz,function(c2){if(!c2.hidden){var c1=Math.round(cR.offsetHeight/cP)||1;if(c2.height!=c1){aV(c2,c1);aJ=cV=true}}cR=cR.nextSibling});if(cV){bA.style.height=(ck.height*cP+2*ce())+"px"}}else{if(aw==null){aw=cf(br)}if(aw>ba.clientWidth){bk.style.width=aw+"px";bA.style.width="";bA.style.width=ba.scrollWidth+"px"}else{bk.style.width=bA.style.width=""}}ay.style.display=cN;if(cO||aJ){aC()}cJ();if(!cS&&bN.onUpdate){bN.onUpdate(bV)}return true}function bM(cW,cU){for(var cR=0,cP=cU.length||0;cR=cS.to){cN.push(cS)}else{if(cT.from>cS.from){cN.push({from:cS.from,to:cT.from,domStart:cS.domStart})}if(cT.tocS){cQ=cN(cQ);cS++}for(var cR=0,cV=cZ.to-cZ.from;cRcR){if(c1.hidden){var c2=cW.innerHTML="
"}else{var c2="
"+c1.getHTML(bj)+"
";if(c1.className){c2='
 
'+c2+"
"}}cW.innerHTML=c2;ah.insertBefore(cW.firstChild,cQ)}else{cQ=cQ.nextSibling}++cR})}function aC(){if(!bN.gutter&&!bN.lineNumbers){return}var cN=b2.offsetHeight,cU=ba.clientHeight;ay.style.height=(cN-cU<2?cU:cN)+"px";var cP=[],cO=cD;ck.iter(cD,Math.max(bz,cD+1),function(cW){if(cW.hidden){cP.push("
")}else{var cV=cW.gutterMarker;var cY=bN.lineNumbers?cO+bN.firstLineNumber:null;if(cV&&cV.text){cY=cV.text.replace("%N%",cY!=null?cY:"")}else{if(cY==null){cY="\u00a0"}}cP.push((cV&&cV.style?'
':"
"),cY);for(var cX=1;cX ")}cP.push("
")}++cO});ay.style.display="none";aQ.innerHTML=cP.join("");var cT=String(ck.size).length,cR=aQ.firstChild,cS=B(cR),cQ="";while(cS.length+cQ.length'}if(cK.from.ch&&cZ.y>=0){var cW=cX?bk.clientWidth-cV.x:0;cY(cZ.x,cZ.y,cW,cO)}var cR=Math.max(0,cZ.y+(cK.from.ch?cO:0));var cU=Math.min(cV.y,bk.clientHeight)-cR;if(cU>0.2*cO){cY(0,cR,0,cU)}if((!cX||!cK.from.ch)&&cV.ycP||cV>cS.text.length){cV=cS.text.length}return{line:cW,ch:cV}}cW+=cU}}var cN=cr(cR.line);if(!cN.hidden){return cR}if(cR.line>=cO){return cQ(1)||cQ(-1)}else{return cQ(-1)||cQ(1)}}function aY(cN,cP,cO){var cQ=aK({line:cN,ch:cP||0});(cO?bn:bm)(cQ,cQ)}function bL(cN){return Math.max(0,Math.min(cN,ck.size-1))}function aK(cP){if(cP.line<0){return{line:0,ch:0}}if(cP.line>=ck.size){return{line:ck.size-1,ch:cr(ck.size-1).text.length}}var cN=cP.ch,cO=cr(cP.line).text.length;if(cN==null||cN>cO){return{line:cP.line,ch:cO}}else{if(cN<0){return{line:cP.line,ch:0}}else{return cP}}}function ca(cQ,cU){var cR=cK.inverted?cK.from:cK.to,cV=cR.line,cN=cR.ch;var cT=cr(cV);function cO(){for(var cW=cV+cQ,cY=cQ<0?-1:ck.size;cW!=cY;cW+=cQ){var cX=cr(cW);if(!cX.hidden){cV=cW;cT=cX;return true}}}function cS(cW){if(cN==(cQ<0?0:cT.text.length)){if(!cW&&cO()){cN=cQ<0?cT.text.length:0}else{return false}}else{cN+=cQ}return true}if(cU=="char"){cS()}else{if(cU=="column"){cS(true)}else{if(cU=="word"){var cP=false;for(;;){if(cQ<0){if(!cS()){break}}if(Y(cT.text.charAt(cN))){cP=true}else{if(cP){if(cQ<0){cQ=1;cS()}break}}if(cQ>0){if(!cS()){break}}}}}}return{line:cV,ch:cN}}function cq(cN,cO){var cP=cN<0?cK.from:cK.to;if(b4||W(cK.from,cK.to)){cP=ca(cN,cO)}aY(cP.line,cP.ch,true)}function b8(cN,cO){if(!W(cK.from,cK.to)){bD("",cK.from,cK.to)}else{if(cN<0){bD("",ca(cN,cO),cK.to)}else{bD("",cK.from,ca(cN,cO))}}bS=true}var ch=null;function cj(cN,cO){var cQ=0,cR=cE(cK.inverted?cK.from:cK.to,true);if(ch!=null){cR.x=ch}if(cO=="page"){cQ=Math.min(ba.clientHeight,window.innerHeight||document.documentElement.clientHeight)}else{if(cO=="line"){cQ=bC()}}var cP=bv(cR.x,cR.y+cQ*cN+2);aY(cP.line,cP.ch,true);ch=cR.x}function bw(cQ){var cO=cr(cQ.line).text;var cP=cQ.ch,cN=cQ.ch;while(cP>0&&Y(cO.charAt(cP-1))){--cP}while(cNbr.length){br=cQ.text}})}ar.push({from:0,to:ck.size})}function aN(){for(var cO='',cN=0;cN"}function cI(){bj=aN();bZ(true)}function cp(){ba.className=ba.className.replace(/\s*cm-s-\w+/g,"")+bN.theme.replace(/(^|\s)\s*/g," cm-s-")}function cL(){this.set=[]}cL.prototype.clear=ai(function(){var cS=Infinity,cO=-Infinity;for(var cR=0,cU=this.set.length;cR
";return al.firstChild.firstChild.offsetWidth}var cU=0,cS=0,cV=cW.length,cR;var cO=Math.min(cV,Math.ceil(cT/a8()));for(;;){var cP=cX(cO);if(cP<=cT&&cOcR){return cV}cO=Math.floor(cV*0.8);cP=cX(cO);if(cPcT-cS)?cU:cV}var cY=Math.ceil((cU+cV)/2),cN=cX(cY);if(cN>cT){cV=cY;cR=cN}else{cU=cY;cS=cN}}}var cl=Math.floor(Math.random()*16777215).toString(16);function bR(cP,cS){if(cS==0){return{top:0,left:0}}var cN="";if(bN.lineWrapping){var cO=cP.text.indexOf(" ",cS+2);cN=J(cP.text.slice(cS+1,cO<0?cP.text.length:cO+(C?5:0)))}al.innerHTML="
"+cP.getHTML(bj,cS)+''+J(cP.text.charAt(cS)||" ")+""+cN+"
";var cR=document.getElementById("CodeMirror-temp-"+cl);var cU=cR.offsetTop,cT=cR.offsetLeft;if(C&&cU==0&&cT==0){var cQ=document.createElement("span");cQ.innerHTML="x";cR.parentNode.insertBefore(cQ,cR.nextSibling);cU=cQ.offsetTop}return{top:cU,left:cT}}function cE(cS,cQ){var cN,cO=bC(),cR=cO*(f(ck,cS.line)-(cQ?a4:0));if(cS.ch==0){cN=0}else{var cP=bR(cr(cS.line),cS.ch);cN=cP.left;if(bN.lineWrapping){cR+=Math.max(0,cP.top)}}return{x:cN,y:cR,yBot:cR+cO}}function bv(cW,cV){if(cV<0){cV=0}var cT=bC(),cR=a8(),c2=a4+Math.floor(cV/cT);var cX=R(ck,c2);if(cX>=ck.size){return{line:ck.size-1,ch:cr(ck.size-1).text.length}}var cO=cr(cX),cZ=cO.text;var c4=bN.lineWrapping,cU=c4?c2-f(ck,cX):0;if(cW<=0&&cU==0){return{line:cX,ch:0}}function c3(c6){var c7=bR(cO,c6);if(c4){var c8=Math.round(c7.top/cT);return Math.max(0,c7.left+(c8-cU)*ba.clientWidth)}return c7.left}var c1=0,c0=0,cP=cZ.length,cN;var cY=Math.min(cP,Math.ceil((cW+cU*ba.clientWidth*0.9)/cR));for(;;){var cS=c3(cY);if(cS<=cW&&cYcN){return{line:cX,ch:cP}}cY=Math.floor(cP*0.8);cS=c3(cY);if(cScW-c0)?c1:cP}}var c5=Math.ceil((c1+cP)/2),cQ=c3(c5);if(cQ>cW){cP=c5;cN=cQ}else{c1=c5;c0=cQ}}}function ag(cP){var cN=cE(cP,true),cO=ac(bk);return{x:cO.left+cN.x,y:cO.top+cN.y,yBot:cO.top+cN.yBot}}var aS,an,bH;function bC(){if(bH==null){bH="
";for(var cO=0;cO<49;++cO){bH+="x
"}bH+="x
"}var cN=ah.clientHeight;if(cN==an){return aS}an=cN;al.innerHTML=bH;aS=al.firstChild.offsetHeight/50||1;al.innerHTML="";return aS}var cF,bl=0;function a8(){if(ba.clientWidth==bl){return cF}bl=ba.clientWidth;return(cF=cf("x"))}function ce(){return bk.offsetTop}function aX(){return bk.offsetLeft}function aU(cR,cQ){var cP=ac(ba,true),cN,cS;try{cN=cR.clientX;cS=cR.clientY}catch(cR){return null}if(!cQ&&(cN-cP.left>ba.clientWidth||cS-cP.top>ba.clientHeight)){return null}var cO=ac(bk,true);return bv(cN-cO.left,cS-cO.top)}function aT(cO){var cS=aU(cO);if(!cS||window.opera){return}if(W(cK.from,cK.to)||T(cS,cK.from)||!T(cS,cK.to)){ai(aY)(cS.line,cS.ch)}var cR=bc.style.cssText;bK.style.position="absolute";bc.style.cssText="position: fixed; width: 30px; height: 30px; top: "+(cO.clientY-5)+"px; left: "+(cO.clientX-5)+"px; z-index: 1000; background: white; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);";a6=true;var cQ=bc.value=bP();bp();bc.select();function cN(){var cT=w(bc.value).join("\n");if(cT!=cQ){ai(bh)(cT,"end")}bK.style.position="relative";bc.style.cssText=cR;a6=false;co(true);ae()}if(H){s(cO);var cP=n(window,"mouseup",function(){cP();setTimeout(cN,20)},true)}else{setTimeout(cN,50)}}function cz(){clearInterval(cC);var cN=true;a3.style.visibility="";cC=setInterval(function(){a3.style.visibility=(cN=!cN)?"":"hidden"},650)}var be={"(":")>",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<"};function b0(cT){var cN=cK.inverted?cK.from:cK.to,cV=cr(cN.line),cO=cN.ch-1;var cS=(cO>=0&&be[cV.text.charAt(cO)])||be[cV.text.charAt(++cO)];if(!cS){return}var cW=cS.charAt(0),cU=cS.charAt(1)==">",c6=cU?1:-1,c1=cV.styles;for(var c7=cO+1,c3=0,c5=c1.length;c3=de&&dd"==cU){cQ.push(dg)}else{if(cQ.pop()!=db.charAt(0)){return{pos:dd,match:false}}else{if(!cQ.length){return{pos:dd,match:true}}}}}}}}for(var c3=cN.line,c5=cU?Math.min(c3+100,ck.size):Math.max(-1,c3-100);c3!=c5;c3+=c6){var cV=cr(c3),cR=c3==cN.line;var cX=cY(cV,cR&&cU?cO+1:0,cR&&!cU?cO:cV.text.length);if(cX){break}}if(!cX){cX={pos:null,match:false}}var c4=cX.match?"CodeMirror-matchingbracket":"CodeMirror-nonmatchingbracket";var c2=bs({line:cN.line,ch:cO},{line:cN.line,ch:cO+1},c4),cP=cX.pos!=null&&bs({line:c3,ch:cX.pos},{line:c3,ch:cX.pos+1},c4);var cZ=ai(function(){c2.clear();cP&&cP.clear()});if(cT){setTimeout(cZ,800)}else{bQ=cZ}}function aZ(cT){var cS,cP;for(var cO=cT,cQ=cT-40;cO>cQ;--cO){if(cO==0){return 0}var cN=cr(cO-1);if(cN.stateAfter){return cO}var cR=cN.indentation(bN.tabSize);if(cP==null||cS>cR){cP=cO-1;cS=cR}}return cP}function cg(cP){var cO=aZ(cP),cN=cO&&cr(cO-1).stateAfter;if(!cN){cN=P(bX)}else{cN=l(bX,cN)}ck.iter(cO,cP,function(cQ){cQ.highlight(bX,cN,bN.tabSize);cQ.stateAfter=l(bX,cN)});if(cO=ck.size){continue}var cO=aZ(cQ),cN=cO&&cr(cO-1).stateAfter;if(cN){cN=l(bX,cN)}else{cN=P(bX)}var cS=0,cP=bX.compareStates,cV=false,cU=cO,cR=false;ck.iter(cU,ck.size,function(cX){var cY=cX.stateAfter;if(+new Date>cT){b3.push(cU);bu(bN.workDelay);if(cV){ar.push({from:cQ,to:cU+1})}return(cR=true)}var cZ=cX.highlight(bX,cN,bN.tabSize);if(cZ){cV=true}cX.stateAfter=l(bX,cN);if(cP){if(cY&&cP(cY,cN)){return true}}else{if(cZ!==false||!cY){cS=0}else{if(++cS>3&&(!bX.indent||bX.indent(cY,"")==bX.indent(cN,""))){return true}}}++cU});if(cR){return}if(cV){ar.push({from:cQ,to:cU+1})}}if(cW&&bN.onHighlightComplete){bN.onHighlightComplete(bV)}}function bu(cN){if(!b3.length){return}am.set(cN,ai(bF))}function aE(){cb=bS=cA=null;ar=[];aG=false;cm=[]}function ao(){var cR=false,cO;if(aG){cR=!b1()}if(ar.length){cO=bZ(ar,true)}else{if(aG){cJ()}if(aJ){aC()}}if(cR){b1()}if(aG){cM();cz()}if(b5&&!a6&&(cb===true||(cb!==false&&aG))){co(bS)}if(aG&&bN.matchBrackets){setTimeout(ai(function(){if(bQ){bQ();bQ=null}if(W(cK.from,cK.to)){b0(false)}}),20)}var cN=cA,cP=cm;if(aG&&bN.onCursorActivity){bN.onCursorActivity(bV)}if(cN&&bN.onChange&&bV){bN.onChange(bV,cN)}for(var cQ=0;cQ0&&ag.ch=this.string.length},sol:function(){return this.pos==0},peek:function(){return this.string.charAt(this.pos)},next:function(){if(this.posaf},eatSpace:function(){var ae=this.pos;while(/[\s\u00a0]/.test(this.string.charAt(this.pos))){++this.pos}return this.pos>ae},skipToEnd:function(){this.pos=this.string.length},skipTo:function(ae){var af=this.string.indexOf(ae,this.pos);if(af>-1){this.pos=af;return true}},backUp:function(ae){this.pos-=ae},column:function(){return k(this.string,this.start,this.tabSize)},indentation:function(){return k(this.string,null,this.tabSize)},match:function(ah,af,ae){if(typeof ah=="string"){function ai(aj){return ae?aj.toLowerCase():aj}if(ai(this.string).indexOf(ai(ah),this.pos)==this.pos){if(af!==false){this.pos+=ah.length}return true}}else{var ag=this.string.slice(this.pos).match(ah);if(ag&&af!==false){this.pos+=ag[0].length}return ag}},current:function(){return this.string.slice(this.start,this.pos)}};q.StringStream=b;function E(ah,ag,ae,af){this.from=ah;this.to=ag;this.style=ae;this.set=af}E.prototype={attach:function(ae){this.set.push(ae)},detach:function(af){var ae=m(this.set,af);if(ae>-1){this.set.splice(ae,1)}},split:function(ah,ae){if(this.to<=ah&&this.to!=null){return null}var ag=this.from=ai){this.from=Math.max(ah,this.from)+ag}if(this.to!=null&&this.to>ai){this.to=ahthis.from&&(ahthis.from||this.from==null)){this.to=null}},isDead:function(){return this.from!=null&&this.to!=null&&this.from>=this.to},sameSet:function(ae){return this.set==ae.set}};function A(ae){this.from=ae;this.to=ae;this.line=null}A.prototype={attach:function(ae){this.line=ae},detach:function(ae){if(this.line==ae){this.line=null}},split:function(af,ae){if(afthis.to},clipTo:function(af,ai,ae,ah,ag){if((af||aithis.to)){this.from=0;this.to=-1}else{if(this.from>ai){this.from=this.to=Math.max(ah,this.from)+ag}}},sameSet:function(ae){return false},find:function(){if(!this.line||!this.line.parent){return null}return{line:S(this.line),ch:this.from}},clear:function(){if(this.line){var ae=m(this.line.marked,this);if(ae!=-1){this.line.marked.splice(ae,1)}this.line=null}}};function d(af,ae){this.styles=ae||[af,null];this.text=af;this.height=1;this.marked=this.gutterMarker=this.className=this.handlers=null;this.stateAfter=this.parent=this.hidden=null}d.inheritMarks=function(ai,al){var ah=new d(ai),ae=al&&al.marked;if(ae){for(var ag=0;ag5000){ao[al++]=this.text.slice(an.pos);ao[al++]=null;break}}if(ao.length!=al){ao.length=al;ai=true}if(al&&ao[al-2]!=am){ai=true}return ai||(ao.length<5&&this.text.length<10?null:false)},getTokenAt:function(aj,ah,ag){var ae=this.text,ai=new b(ae);while(ai.pos',J(aH).replace(/\t/g,ao),"")}else{ak.push(J(aH).replace(/\t/g,ao))}}var ar=this.styles,aj=this.text,ap=this.marked;var aB=aj.length;if(au!=null){aB=Math.min(au,aB)}function ag(aG){if(!aG){return null}return"cm-"+aG.replace(/ +/g," cm-")}if(!aj&&au==null){ay(" ")}else{if(!ap||!ap.length){for(var az=0,al=0;alaB){at=at.slice(0,aB-al)}al+=av;ay(at,ag(aC))}}else{var ah=0,az=0,an="",aC,aF=0;var aE=ap[0].from||0,ax=[],aD=0;function aA(){var aG;while(aDam?an.slice(0,am-ah):an,ae);if(af>=am){an=an.slice(am-ah);ah=am;break}ah=af}an=ar[az++];aC=ag(ar[az++])}}}}return ak.join("")},cleanUp:function(){this.parent=null;if(this.marked){for(var ae=0,af=this.marked.length;aeak){am.push(ag.slice(ak-aj,Math.min(ag.length,al-aj)),ae[ai+1])}if(ah>=ak){af=1}}else{if(af==1){if(ah>al){am.push(ag.slice(0,al-aj),ae[ai+1])}else{am.push(ag,ae[ai+1])}}}aj=ah}}function Z(af){this.lines=af;this.parent=null;for(var ag=0,ah=af.length,ae=0;ag50){while(ae.lines.length>50){var ah=ae.lines.splice(ae.lines.length-25,25);var ak=new Z(ah);ae.height-=ak.height;this.children.splice(ag+1,0,ak);ak.parent=this}this.maybeSpill()}break}af-=aj}},maybeSpill:function(){if(this.children.length<=10){return}var ah=this;do{var af=ah.children.splice(ah.children.length-5,5);var ag=new g(af);if(!ah.parent){var ai=new g(ah.children);ai.parent=ah;ah.children=[ai,ag];ah=ai}else{ah.size-=ag.size;ah.height-=ag.height;var ae=m(ah.parent.children,ah);ah.parent.children.splice(ae+1,0,ag)}ag.parent=ah.parent}while(ah.children.length>10);ah.parent.maybeSpill()},iter:function(ag,af,ae){this.iterN(ag,af-ag,ae)},iterN:function(ae,al,ak){for(var af=0,ai=this.children.length;af400||!an){this.done.push([{start:ae,added:ak,old:af}])}else{if(an.start>ae+ak||an.start+an.added=0;--ah){an.old.unshift(af[ah])}an.added+=an.start-ae;an.start=ae}else{if(an.start-1){c="\r\n"}}());function k(af,ae,ah){if(ae==null){ae=af.search(/[^\s\u00a0]/);if(ae==-1){ae=af.length}}for(var ag=0,ai=0;ag=0&&ae>=0;--af,--ae){if(ah.charAt(af)!=ag.charAt(ae)){break}}return ae+1}function m(ah,ae){if(ah.indexOf){return ah.indexOf(ae)}for(var af=0,ag=ah.length;af-1){ae.push(ag.slice(ah,ag.charAt(af-1)=="\r"?af-1:af));ah=af+1}ae.push(ag.slice(ah));return ae}:function(ae){return ae.split(/\r?\n/)};q.splitLines=w;var X=window.getSelection?function(af){try{return af.selectionStart!=af.selectionEnd}catch(ae){return false}}:function(ag){try{var ae=ag.ownerDocument.selection.createRange()}catch(af){}if(!ae||ae.parentElement()!=ag){return false}return ae.compareEndPoints("StartToEnd",ae)!=0};q.defineMode("null",function(){return{token:function(ae){ae.skipToEnd()}}});q.defineMIME("text/plain","null");var L={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",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"};q.keyNames=L;(function(){for(var ae=0;ae<10;ae++){L[ae+48]=String(ae)}for(var ae=65;ae<=90;ae++){L[ae]=String.fromCharCode(ae)}for(var ae=1;ae<=12;ae++){L[ae+111]=L[ae+63235]="F"+ae}})();return q})();