{"code":"(window[\"webpackJsonp\"]=window[\"webpackJsonp\"]||[]).push([[\"chunk-2d0c8f68\"],{\"56b3\":function(e,t,r){(function(t,r){e.exports=r()})(0,(function(){\"use strict\";var e=navigator.userAgent,t=navigator.platform,r=/gecko\\/\\d/i.test(e),n=/MSIE \\d/.test(e),i=/Trident\\/(?:[7-9]|\\d{2,})\\..*rv:(\\d+)/.exec(e),o=/Edge\\/(\\d+)/.exec(e),l=n||i||o,s=l&&(n?document.documentMode||6:+(o||i)[1]),a=!o&&/WebKit\\//.test(e),u=a&&/Qt\\/\\d+\\.\\d+/.test(e),c=!o&&/Chrome\\/(\\d+)/.exec(e),h=c&&+c[1],f=/Opera\\//.test(e),d=/Apple Computer/.test(navigator.vendor),p=/Mac OS X 1\\d\\D([8-9]|\\d\\d)\\D/.test(e),g=/PhantomJS/.test(e),v=d&&(/Mobile\\/\\w+/.test(e)||navigator.maxTouchPoints>2),m=/Android/.test(e),y=v||m||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(e),b=v||/Mac/.test(t),w=/\\bCrOS\\b/.test(e),x=/win/i.test(t),C=f&&e.match(/Version\\/(\\d*\\.\\d*)/);C&&(C=Number(C[1])),C&&C>=15&&(f=!1,a=!0);var S=b&&(u||f&&(null==C||C<12.11)),L=r||l&&s>=9;function k(e){return new RegExp(\"(^|\\\\s)\"+e+\"(?:$|\\\\s)\\\\s*\")}var T,M=function(e,t){var r=e.className,n=k(t).exec(r);if(n){var i=r.slice(n.index+n[0].length);e.className=r.slice(0,n.index)+(i?n[1]+i:\"\")}};function N(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function O(e,t){return N(e).appendChild(t)}function A(e,t,r,n){var i=document.createElement(e);if(r&&(i.className=r),n&&(i.style.cssText=n),\"string\"==typeof t)i.appendChild(document.createTextNode(t));else if(t)for(var o=0;o=t)return l+(t-o);l+=s-o,l+=r-l%r,o=s+1}}v?E=function(e){e.selectionStart=0,e.selectionEnd=e.value.length}:l&&(E=function(e){try{e.select()}catch(t){}});var K=function(){this.id=null,this.f=null,this.time=0,this.handler=G(this.onTimeout,this)};function j(e,t){for(var r=0;r=t)return n+Math.min(l,t-i);if(i+=o-n,i+=r-i%r,n=o+1,i>=t)return n}}var J=[\"\"];function Q(e){while(J.length<=e)J.push(ee(J)+\" \");return J[e]}function ee(e){return e[e.length-1]}function te(e,t){for(var r=[],n=0;n\"€\"&&(e.toUpperCase()!=e.toLowerCase()||oe.test(e))}function se(e,t){return t?!!(t.source.indexOf(\"\\\\w\")>-1&&le(e))||t.test(e):le(e)}function ae(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var ue=/[\\u0300-\\u036f\\u0483-\\u0489\\u0591-\\u05bd\\u05bf\\u05c1\\u05c2\\u05c4\\u05c5\\u05c7\\u0610-\\u061a\\u064b-\\u065e\\u0670\\u06d6-\\u06dc\\u06de-\\u06e4\\u06e7\\u06e8\\u06ea-\\u06ed\\u0711\\u0730-\\u074a\\u07a6-\\u07b0\\u07eb-\\u07f3\\u0816-\\u0819\\u081b-\\u0823\\u0825-\\u0827\\u0829-\\u082d\\u0900-\\u0902\\u093c\\u0941-\\u0948\\u094d\\u0951-\\u0955\\u0962\\u0963\\u0981\\u09bc\\u09be\\u09c1-\\u09c4\\u09cd\\u09d7\\u09e2\\u09e3\\u0a01\\u0a02\\u0a3c\\u0a41\\u0a42\\u0a47\\u0a48\\u0a4b-\\u0a4d\\u0a51\\u0a70\\u0a71\\u0a75\\u0a81\\u0a82\\u0abc\\u0ac1-\\u0ac5\\u0ac7\\u0ac8\\u0acd\\u0ae2\\u0ae3\\u0b01\\u0b3c\\u0b3e\\u0b3f\\u0b41-\\u0b44\\u0b4d\\u0b56\\u0b57\\u0b62\\u0b63\\u0b82\\u0bbe\\u0bc0\\u0bcd\\u0bd7\\u0c3e-\\u0c40\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55\\u0c56\\u0c62\\u0c63\\u0cbc\\u0cbf\\u0cc2\\u0cc6\\u0ccc\\u0ccd\\u0cd5\\u0cd6\\u0ce2\\u0ce3\\u0d3e\\u0d41-\\u0d44\\u0d4d\\u0d57\\u0d62\\u0d63\\u0dca\\u0dcf\\u0dd2-\\u0dd4\\u0dd6\\u0ddf\\u0e31\\u0e34-\\u0e3a\\u0e47-\\u0e4e\\u0eb1\\u0eb4-\\u0eb9\\u0ebb\\u0ebc\\u0ec8-\\u0ecd\\u0f18\\u0f19\\u0f35\\u0f37\\u0f39\\u0f71-\\u0f7e\\u0f80-\\u0f84\\u0f86\\u0f87\\u0f90-\\u0f97\\u0f99-\\u0fbc\\u0fc6\\u102d-\\u1030\\u1032-\\u1037\\u1039\\u103a\\u103d\\u103e\\u1058\\u1059\\u105e-\\u1060\\u1071-\\u1074\\u1082\\u1085\\u1086\\u108d\\u109d\\u135f\\u1712-\\u1714\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17b7-\\u17bd\\u17c6\\u17c9-\\u17d3\\u17dd\\u180b-\\u180d\\u18a9\\u1920-\\u1922\\u1927\\u1928\\u1932\\u1939-\\u193b\\u1a17\\u1a18\\u1a56\\u1a58-\\u1a5e\\u1a60\\u1a62\\u1a65-\\u1a6c\\u1a73-\\u1a7c\\u1a7f\\u1b00-\\u1b03\\u1b34\\u1b36-\\u1b3a\\u1b3c\\u1b42\\u1b6b-\\u1b73\\u1b80\\u1b81\\u1ba2-\\u1ba5\\u1ba8\\u1ba9\\u1c2c-\\u1c33\\u1c36\\u1c37\\u1cd0-\\u1cd2\\u1cd4-\\u1ce0\\u1ce2-\\u1ce8\\u1ced\\u1dc0-\\u1de6\\u1dfd-\\u1dff\\u200c\\u200d\\u20d0-\\u20f0\\u2cef-\\u2cf1\\u2de0-\\u2dff\\u302a-\\u302f\\u3099\\u309a\\ua66f-\\ua672\\ua67c\\ua67d\\ua6f0\\ua6f1\\ua802\\ua806\\ua80b\\ua825\\ua826\\ua8c4\\ua8e0-\\ua8f1\\ua926-\\ua92d\\ua947-\\ua951\\ua980-\\ua982\\ua9b3\\ua9b6-\\ua9b9\\ua9bc\\uaa29-\\uaa2e\\uaa31\\uaa32\\uaa35\\uaa36\\uaa43\\uaa4c\\uaab0\\uaab2-\\uaab4\\uaab7\\uaab8\\uaabe\\uaabf\\uaac1\\uabe5\\uabe8\\uabed\\udc00-\\udfff\\ufb1e\\ufe00-\\ufe0f\\ufe20-\\ufe26\\uff9e\\uff9f]/;function ce(e){return e.charCodeAt(0)>=768&&ue.test(e)}function he(e,t,r){while((r<0?t>0:tr?-1:1;;){if(t==r)return t;var i=(t+r)/2,o=n<0?Math.ceil(i):Math.floor(i);if(o==t)return e(o)?t:r;e(o)?r=o:t=o+n}}function de(e,t,r,n){if(!e)return n(t,r,\"ltr\",0);for(var i=!1,o=0;ot||t==r&&l.to==t)&&(n(Math.max(l.from,t),Math.min(l.to,r),1==l.level?\"rtl\":\"ltr\",o),i=!0)}i||n(t,r,\"ltr\")}var pe=null;function ge(e,t,r){var n;pe=null;for(var i=0;it)return i;o.to==t&&(o.from!=o.to&&\"before\"==r?n=i:pe=i),o.from==t&&(o.from!=o.to&&\"before\"!=r?n=i:pe=i)}return null!=n?n:pe}var ve=function(){var e=\"bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN\",t=\"nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111\";function r(r){return r<=247?e.charAt(r):1424<=r&&r<=1524?\"R\":1536<=r&&r<=1785?t.charAt(r-1536):1774<=r&&r<=2220?\"r\":8192<=r&&r<=8203?\"w\":8204==r?\"b\":\"L\"}var n=/[\\u0590-\\u05f4\\u0600-\\u06ff\\u0700-\\u08ac]/,i=/[stwN]/,o=/[LRr]/,l=/[Lb1n]/,s=/[1n]/;function a(e,t,r){this.level=e,this.from=t,this.to=r}return function(e,t){var u=\"ltr\"==t?\"L\":\"R\";if(0==e.length||\"ltr\"==t&&!n.test(e))return!1;for(var c=e.length,h=[],f=0;f-1&&(n[t]=i.slice(0,o).concat(i.slice(o+1)))}}}function Ce(e,t){var r=we(e,t);if(r.length)for(var n=Array.prototype.slice.call(arguments,2),i=0;i0}function Te(e){e.prototype.on=function(e,t){be(this,e,t)},e.prototype.off=function(e,t){xe(this,e,t)}}function Me(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Ne(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function Oe(e){return null!=e.defaultPrevented?e.defaultPrevented:0==e.returnValue}function Ae(e){Me(e),Ne(e)}function De(e){return e.target||e.srcElement}function We(e){var t=e.which;return null==t&&(1&e.button?t=1:2&e.button?t=3:4&e.button&&(t=2)),b&&e.ctrlKey&&1==t&&(t=3),t}var He,Fe,Pe=function(){if(l&&s<9)return!1;var e=A(\"div\");return\"draggable\"in e||\"dragDrop\"in e}();function Ee(e){if(null==He){var t=A(\"span\",\"​\");O(e,A(\"span\",[t,document.createTextNode(\"x\")])),0!=e.firstChild.offsetHeight&&(He=t.offsetWidth<=1&&t.offsetHeight>2&&!(l&&s<8))}var r=He?A(\"span\",\"​\"):A(\"span\",\" \",null,\"display: inline-block; width: 1px; margin-right: -1px\");return r.setAttribute(\"cm-text\",\"\"),r}function Re(e){if(null!=Fe)return Fe;var t=O(e,document.createTextNode(\"AخA\")),r=T(t,0,1).getBoundingClientRect(),n=T(t,1,2).getBoundingClientRect();return N(e),!(!r||r.left==r.right)&&(Fe=n.right-r.right<3)}var ze=3!=\"\\n\\nb\".split(/\\n/).length?function(e){var t=0,r=[],n=e.length;while(t<=n){var i=e.indexOf(\"\\n\",t);-1==i&&(i=e.length);var o=e.slice(t,\"\\r\"==e.charAt(i-1)?i-1:i),l=o.indexOf(\"\\r\");-1!=l?(r.push(o.slice(0,l)),t+=l+1):(r.push(o),t=i+1)}return r}:function(e){return e.split(/\\r\\n?|\\n/)},Ie=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch(t){return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch(r){}return!(!t||t.parentElement()!=e)&&0!=t.compareEndPoints(\"StartToEnd\",t)},Be=function(){var e=A(\"div\");return\"oncopy\"in e||(e.setAttribute(\"oncopy\",\"return;\"),\"function\"==typeof e.oncopy)}(),Ge=null;function Ue(e){if(null!=Ge)return Ge;var t=O(e,A(\"span\",\"x\")),r=t.getBoundingClientRect(),n=T(t,0,1).getBoundingClientRect();return Ge=Math.abs(r.left-n.left)>1}var Ve={},Ke={};function je(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),Ve[e]=t}function Xe(e,t){Ke[e]=t}function Ye(e){if(\"string\"==typeof e&&Ke.hasOwnProperty(e))e=Ke[e];else if(e&&\"string\"==typeof e.name&&Ke.hasOwnProperty(e.name)){var t=Ke[e.name];\"string\"==typeof t&&(t={name:t}),e=ie(t,e),e.name=t.name}else{if(\"string\"==typeof e&&/^[\\w\\-]+\\/[\\w\\-]+\\+xml$/.test(e))return Ye(\"application/xml\");if(\"string\"==typeof e&&/^[\\w\\-]+\\/[\\w\\-]+\\+json$/.test(e))return Ye(\"application/json\")}return\"string\"==typeof e?{name:e}:e||{name:\"null\"}}function $e(e,t){t=Ye(t);var r=Ve[t.name];if(!r)return $e(e,\"text/plain\");var n=r(e,t);if(_e.hasOwnProperty(t.name)){var i=_e[t.name];for(var o in i)i.hasOwnProperty(o)&&(n.hasOwnProperty(o)&&(n[\"_\"+o]=n[o]),n[o]=i[o])}if(n.name=t.name,t.helperType&&(n.helperType=t.helperType),t.modeProps)for(var l in t.modeProps)n[l]=t.modeProps[l];return n}var _e={};function qe(e,t){var r=_e.hasOwnProperty(e)?_e[e]:_e[e]={};U(t,r)}function Ze(e,t){if(!0===t)return t;if(e.copyState)return e.copyState(t);var r={};for(var n in t){var i=t[n];i instanceof Array&&(i=i.concat([])),r[n]=i}return r}function Je(e,t){var r;while(e.innerMode){if(r=e.innerMode(t),!r||r.mode==e)break;t=r.state,e=r.mode}return r||{mode:e,state:t}}function Qe(e,t,r){return!e.startState||e.startState(t,r)}var et=function(e,t,r){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=r};function tt(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error(\"There is no line \"+(t+e.first)+\" in the document.\");var r=e;while(!r.lines)for(var n=0;;++n){var i=r.children[n],o=i.chunkSize();if(t=e.first&&tr?ut(r,tt(e,r).text.length):mt(t,tt(e,t.line).text.length)}function mt(e,t){var r=e.ch;return null==r||r>t?ut(e.line,t):r<0?ut(e.line,0):e}function yt(e,t){for(var r=[],n=0;n=this.string.length},et.prototype.sol=function(){return this.pos==this.lineStart},et.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},et.prototype.next=function(){if(this.post},et.prototype.eatSpace=function(){var e=this.pos;while(/[\\s\\u00a0]/.test(this.string.charAt(this.pos)))++this.pos;return this.pos>e},et.prototype.skipToEnd=function(){this.pos=this.string.length},et.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},et.prototype.backUp=function(e){this.pos-=e},et.prototype.column=function(){return this.lastColumnPos0?null:(n&&!1!==t&&(this.pos+=n[0].length),n)}var i=function(e){return r?e.toLowerCase():e},o=this.string.substr(this.pos,e.length);if(i(o)==i(e))return!1!==t&&(this.pos+=e.length),!0},et.prototype.current=function(){return this.string.slice(this.start,this.pos)},et.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},et.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},et.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};var bt=function(e,t){this.state=e,this.lookAhead=t},wt=function(e,t,r,n){this.state=t,this.doc=e,this.line=r,this.maxLookAhead=n||0,this.baseTokens=null,this.baseTokenPos=1};function xt(e,t,r,n){var i=[e.state.modeGen],o={};At(e,t.text,e.doc.mode,r,(function(e,t){return i.push(e,t)}),o,n);for(var l=r.state,s=function(n){r.baseTokens=i;var s=e.state.overlays[n],a=1,u=0;r.state=!0,At(e,t.text,s.mode,r,(function(e,t){var r=a;while(ue&&i.splice(a,1,e,i[a+1],n),a+=2,u=Math.min(e,n)}if(t)if(s.opaque)i.splice(r,a-r,e,\"overlay \"+t),a=r+2;else for(;re.options.maxHighlightLength&&Ze(e.doc.mode,n.state),o=xt(e,t,n);i&&(n.state=i),t.stateAfter=n.save(!i),t.styles=o.styles,o.classes?t.styleClasses=o.classes:t.styleClasses&&(t.styleClasses=null),r===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function St(e,t,r){var n=e.doc,i=e.display;if(!n.mode.startState)return new wt(n,!0,t);var o=Dt(e,t,r),l=o>n.first&&tt(n,o-1).stateAfter,s=l?wt.fromSaved(n,l,o):new wt(n,Qe(n.mode),o);return n.iter(o,t,(function(r){Lt(e,r.text,s);var n=s.line;r.stateAfter=n==t-1||n%5==0||n>=i.viewFrom&&nt.start)return o}throw new Error(\"Mode \"+e.name+\" failed to advance stream.\")}wt.prototype.lookAhead=function(e){var t=this.doc.getLine(this.line+e);return null!=t&&e>this.maxLookAhead&&(this.maxLookAhead=e),t},wt.prototype.baseToken=function(e){if(!this.baseTokens)return null;while(this.baseTokens[this.baseTokenPos]<=e)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,\"\"),size:this.baseTokens[this.baseTokenPos]-e}},wt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},wt.fromSaved=function(e,t,r){return t instanceof bt?new wt(e,Ze(e.mode,t.state),r,t.lookAhead):new wt(e,Ze(e.mode,t),r)},wt.prototype.save=function(e){var t=!1!==e?Ze(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new bt(t,this.maxLookAhead):t};var Mt=function(e,t,r){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=r};function Nt(e,t,r,n){var i,o=e.doc,l=o.mode;t=vt(o,t);var s,a=tt(o,t.line),u=St(e,t.line,r),c=new et(a.text,e.options.tabSize,u);n&&(s=[]);while((n||c.pose.options.maxHighlightLength?(s=!1,l&&Lt(e,t,n,h.pos),h.pos=t.length,a=null):a=Ot(Tt(r,h,n.state,f),o),f){var d=f[0].name;d&&(a=\"m-\"+(a?d+\" \"+a:d))}if(!s||c!=a){while(ul;--s){if(s<=o.first)return o.first;var a=tt(o,s-1),u=a.stateAfter;if(u&&(!r||s+(u instanceof bt?u.lookAhead:0)<=o.modeFrontier))return s;var c=V(a.text,null,e.options.tabSize);(null==i||n>c)&&(i=s-1,n=c)}return i}function Wt(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontierr;n--){var i=tt(e,n).stateAfter;if(i&&(!(i instanceof bt)||n+i.lookAhead=t:o.to>t);(n||(n=[])).push(new Rt(l,o.from,a?null:o.to))}}return n}function Ut(e,t,r){var n;if(e)for(var i=0;i=t:o.to>t);if(s||o.from==t&&\"bookmark\"==l.type&&(!r||o.marker.insertLeft)){var a=null==o.from||(l.inclusiveLeft?o.from<=t:o.from0&&s)for(var w=0;w0)){var c=[a,1],h=ct(u.from,s.from),f=ct(u.to,s.to);(h<0||!l.inclusiveLeft&&!h)&&c.push({from:u.from,to:s.from}),(f>0||!l.inclusiveRight&&!f)&&c.push({from:s.to,to:u.to}),i.splice.apply(i,c),a+=c.length-3}}return i}function Xt(e){var t=e.markedSpans;if(t){for(var r=0;rt)&&(!r||qt(r,o.marker)<0)&&(r=o.marker)}return r}function tr(e,t,r,n,i){var o=tt(e,t),l=Ft&&o.markedSpans;if(l)for(var s=0;s=0&&h<=0||c<=0&&h>=0)&&(c<=0&&(a.marker.inclusiveRight&&i.inclusiveLeft?ct(u.to,r)>=0:ct(u.to,r)>0)||c>=0&&(a.marker.inclusiveRight&&i.inclusiveLeft?ct(u.from,n)<=0:ct(u.from,n)<0)))return!0}}}function rr(e){var t;while(t=Jt(e))e=t.find(-1,!0).line;return e}function nr(e){var t;while(t=Qt(e))e=t.find(1,!0).line;return e}function ir(e){var t,r;while(t=Qt(e))e=t.find(1,!0).line,(r||(r=[])).push(e);return r}function or(e,t){var r=tt(e,t),n=rr(r);return r==n?t:ot(n)}function lr(e,t){if(t>e.lastLine())return t;var r,n=tt(e,t);if(!sr(e,n))return t;while(r=Qt(n))n=r.find(1,!0).line;return ot(n)+1}function sr(e,t){var r=Ft&&t.markedSpans;if(r)for(var n=void 0,i=0;it.maxLineLength&&(t.maxLineLength=r,t.maxLine=e)}))}var fr=function(e,t,r){this.text=e,Yt(this,t),this.height=r?r(this):1};function dr(e,t,r,n){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),null!=e.order&&(e.order=null),Xt(e),Yt(e,r);var i=n?n(e):1;i!=e.height&&it(e,i)}function pr(e){e.parent=null,Xt(e)}fr.prototype.lineNo=function(){return ot(this)},Te(fr);var gr={},vr={};function mr(e,t){if(!e||/^\\s*$/.test(e))return null;var r=t.addModeClass?vr:gr;return r[e]||(r[e]=e.replace(/\\S+/g,\"cm-$&\"))}function yr(e,t){var r=D(\"span\",null,null,a?\"padding-right: .1px\":null),n={pre:D(\"pre\",[r],\"CodeMirror-line\"),content:r,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption(\"lineWrapping\")};t.measure={};for(var i=0;i<=(t.rest?t.rest.length:0);i++){var o=i?t.rest[i-1]:t.line,l=void 0;n.pos=0,n.addToken=wr,Re(e.display.measure)&&(l=me(o,e.doc.direction))&&(n.addToken=Cr(n.addToken,l)),n.map=[];var s=t!=e.display.externalMeasured&&ot(o);Lr(o,n,Ct(e,o,s)),o.styleClasses&&(o.styleClasses.bgClass&&(n.bgClass=P(o.styleClasses.bgClass,n.bgClass||\"\")),o.styleClasses.textClass&&(n.textClass=P(o.styleClasses.textClass,n.textClass||\"\"))),0==n.map.length&&n.map.push(0,0,n.content.appendChild(Ee(e.display.measure))),0==i?(t.measure.map=n.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(n.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(a){var u=n.content.lastChild;(/\\bcm-tab\\b/.test(u.className)||u.querySelector&&u.querySelector(\".cm-tab\"))&&(n.content.className=\"cm-tab-wrap-hack\")}return Ce(e,\"renderLine\",e,t.line,n.pre),n.pre.className&&(n.textClass=P(n.pre.className,n.textClass||\"\")),n}function br(e){var t=A(\"span\",\"•\",\"cm-invalidchar\");return t.title=\"\\\\u\"+e.charCodeAt(0).toString(16),t.setAttribute(\"aria-label\",t.title),t}function wr(e,t,r,n,i,o,a){if(t){var u,c=e.splitSpaces?xr(t,e.trailingSpace):t,h=e.cm.state.specialChars,f=!1;if(h.test(t)){u=document.createDocumentFragment();var d=0;while(1){h.lastIndex=d;var p=h.exec(t),g=p?p.index-d:t.length-d;if(g){var v=document.createTextNode(c.slice(d,d+g));l&&s<9?u.appendChild(A(\"span\",[v])):u.appendChild(v),e.map.push(e.pos,e.pos+g,v),e.col+=g,e.pos+=g}if(!p)break;d+=g+1;var m=void 0;if(\"\\t\"==p[0]){var y=e.cm.options.tabSize,b=y-e.col%y;m=u.appendChild(A(\"span\",Q(b),\"cm-tab\")),m.setAttribute(\"role\",\"presentation\"),m.setAttribute(\"cm-text\",\"\\t\"),e.col+=b}else\"\\r\"==p[0]||\"\\n\"==p[0]?(m=u.appendChild(A(\"span\",\"\\r\"==p[0]?\"␍\":\"␤\",\"cm-invalidchar\")),m.setAttribute(\"cm-text\",p[0]),e.col+=1):(m=e.cm.options.specialCharPlaceholder(p[0]),m.setAttribute(\"cm-text\",p[0]),l&&s<9?u.appendChild(A(\"span\",[m])):u.appendChild(m),e.col+=1);e.map.push(e.pos,e.pos+1,m),e.pos++}}else e.col+=t.length,u=document.createTextNode(c),e.map.push(e.pos,e.pos+t.length,u),l&&s<9&&(f=!0),e.pos+=t.length;if(e.trailingSpace=32==c.charCodeAt(t.length-1),r||n||i||f||o||a){var w=r||\"\";n&&(w+=n),i&&(w+=i);var x=A(\"span\",[u],w,o);if(a)for(var C in a)a.hasOwnProperty(C)&&\"style\"!=C&&\"class\"!=C&&x.setAttribute(C,a[C]);return e.content.appendChild(x)}e.content.appendChild(u)}}function xr(e,t){if(e.length>1&&!/ /.test(e))return e;for(var r=t,n=\"\",i=0;iu&&h.from<=u)break;if(h.to>=c)return e(r,n,i,o,l,s,a);e(r,n.slice(0,h.to-u),i,o,null,s,a),o=null,n=n.slice(h.to-u),u=h.to}}}function Sr(e,t,r,n){var i=!n&&r.widgetNode;i&&e.map.push(e.pos,e.pos+t,i),!n&&e.cm.display.input.needsContentAttribute&&(i||(i=e.content.appendChild(document.createElement(\"span\"))),i.setAttribute(\"cm-marker\",r.id)),i&&(e.cm.display.input.setUneditable(i),e.content.appendChild(i)),e.pos+=t,e.trailingSpace=!1}function Lr(e,t,r){var n=e.markedSpans,i=e.text,o=0;if(n)for(var l,s,a,u,c,h,f,d=i.length,p=0,g=1,v=\"\",m=0;;){if(m==p){a=u=c=s=\"\",f=null,h=null,m=1/0;for(var y=[],b=void 0,w=0;wp||C.collapsed&&x.to==p&&x.from==p)){if(null!=x.to&&x.to!=p&&m>x.to&&(m=x.to,u=\"\"),C.className&&(a+=\" \"+C.className),C.css&&(s=(s?s+\";\":\"\")+C.css),C.startStyle&&x.from==p&&(c+=\" \"+C.startStyle),C.endStyle&&x.to==m&&(b||(b=[])).push(C.endStyle,x.to),C.title&&((f||(f={})).title=C.title),C.attributes)for(var S in C.attributes)(f||(f={}))[S]=C.attributes[S];C.collapsed&&(!h||qt(h.marker,C)<0)&&(h=x)}else x.from>p&&m>x.from&&(m=x.from)}if(b)for(var L=0;L=d)break;var T=Math.min(d,m);while(1){if(v){var M=p+v.length;if(!h){var N=M>T?v.slice(0,T-p):v;t.addToken(t,N,l?l+a:a,c,p+N.length==m?u:\"\",s,f)}if(M>=T){v=v.slice(T-p),p=T;break}p=M,c=\"\"}v=i.slice(o,o=r[g++]),l=mr(r[g++],t.cm.options)}}else for(var O=1;O2&&o.push((a.bottom+u.top)/2-r.top)}}o.push(r.bottom-r.top)}}function tn(e,t,r){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var n=0;nr)return{map:e.measure.maps[i],cache:e.measure.caches[i],before:!0}}}function rn(e,t){t=rr(t);var r=ot(t),n=e.display.externalMeasured=new kr(e.doc,t,r);n.lineN=r;var i=n.built=yr(e,n);return n.text=i.pre,O(e.display.lineMeasure,i.pre),n}function nn(e,t,r,n){return sn(e,ln(e,t),r,n)}function on(e,t){if(t>=e.display.viewFrom&&t=r.lineN&&tt)&&(o=a-s,i=o-1,t>=a&&(l=\"right\")),null!=i){if(n=e[u+2],s==a&&r==(n.insertLeft?\"left\":\"right\")&&(l=r),\"left\"==r&&0==i)while(u&&e[u-2]==e[u-3]&&e[u-1].insertLeft)n=e[2+(u-=3)],l=\"left\";if(\"right\"==r&&i==a-s)while(u=0;i--)if((r=e[i]).left!=r.right)break;return r}function fn(e,t,r,n){var i,o=cn(t.map,r,n),a=o.node,u=o.start,c=o.end,h=o.collapse;if(3==a.nodeType){for(var f=0;f<4;f++){while(u&&ce(t.line.text.charAt(o.coverStart+u)))--u;while(o.coverStart+c0&&(h=n=\"right\"),i=e.options.lineWrapping&&(d=a.getClientRects()).length>1?d[\"right\"==n?d.length-1:0]:a.getBoundingClientRect()}if(l&&s<9&&!u&&(!i||!i.left&&!i.right)){var p=a.parentNode.getClientRects()[0];i=p?{left:p.left,right:p.left+Fn(e.display),top:p.top,bottom:p.bottom}:un}for(var g=i.top-t.rect.top,v=i.bottom-t.rect.top,m=(g+v)/2,y=t.view.measure.heights,b=0;b=n.text.length?(a=n.text.length,u=\"before\"):a<=0&&(a=0,u=\"after\"),!s)return l(\"before\"==u?a-1:a,\"before\"==u);function c(e,t,r){var n=s[t],i=1==n.level;return l(r?e-1:e,i!=r)}var h=ge(s,a,u),f=pe,d=c(a,h,\"before\"==u);return null!=f&&(d.other=c(a,f,\"before\"!=u)),d}function Ln(e,t){var r=0;t=vt(e.doc,t),e.options.lineWrapping||(r=Fn(e.display)*t.ch);var n=tt(e.doc,t.line),i=ur(n)+$r(e.display);return{left:r,right:r,top:i,bottom:i+n.height}}function kn(e,t,r,n,i){var o=ut(e,t,r);return o.xRel=i,n&&(o.outside=n),o}function Tn(e,t,r){var n=e.doc;if(r+=e.display.viewOffset,r<0)return kn(n.first,0,null,-1,-1);var i=lt(n,r),o=n.first+n.size-1;if(i>o)return kn(n.first+n.size-1,tt(n,o).text.length,null,1,1);t<0&&(t=0);for(var l=tt(n,i);;){var s=An(e,l,i,t,r),a=er(l,s.ch+(s.xRel>0||s.outside>0?1:0));if(!a)return s;var u=a.find(1);if(u.line==i)return u;l=tt(n,i=u.line)}}function Mn(e,t,r,n){n-=bn(t);var i=t.text.length,o=fe((function(t){return sn(e,r,t-1).bottom<=n}),i,0);return i=fe((function(t){return sn(e,r,t).top>n}),o,i),{begin:o,end:i}}function Nn(e,t,r,n){r||(r=ln(e,t));var i=wn(e,t,sn(e,r,n),\"line\").top;return Mn(e,t,r,i)}function On(e,t,r,n){return!(e.bottom<=r)&&(e.top>r||(n?e.left:e.right)>t)}function An(e,t,r,n,i){i-=ur(t);var o=ln(e,t),l=bn(t),s=0,a=t.text.length,u=!0,c=me(t,e.doc.direction);if(c){var h=(e.options.lineWrapping?Wn:Dn)(e,t,r,o,c,n,i);u=1!=h.level,s=u?h.from:h.to-1,a=u?h.to:h.from-1}var f,d,p=null,g=null,v=fe((function(t){var r=sn(e,o,t);return r.top+=l,r.bottom+=l,!!On(r,n,i,!1)&&(r.top<=i&&r.left<=n&&(p=t,g=r),!0)}),s,a),m=!1;if(g){var y=n-g.left=w.bottom?1:0}return v=he(t.text,v,1),kn(r,v,d,m,n-f)}function Dn(e,t,r,n,i,o,l){var s=fe((function(s){var a=i[s],u=1!=a.level;return On(Sn(e,ut(r,u?a.to:a.from,u?\"before\":\"after\"),\"line\",t,n),o,l,!0)}),0,i.length-1),a=i[s];if(s>0){var u=1!=a.level,c=Sn(e,ut(r,u?a.from:a.to,u?\"after\":\"before\"),\"line\",t,n);On(c,o,l,!0)&&c.top>l&&(a=i[s-1])}return a}function Wn(e,t,r,n,i,o,l){var s=Mn(e,t,n,l),a=s.begin,u=s.end;/\\s/.test(t.text.charAt(u-1))&&u--;for(var c=null,h=null,f=0;f=u||d.to<=a)){var p=1!=d.level,g=sn(e,n,p?Math.min(u,d.to)-1:Math.max(a,d.from)).right,v=gv)&&(c=d,h=v)}}return c||(c=i[i.length-1]),c.fromu&&(c={from:c.from,to:u,level:c.level}),c}function Hn(e){if(null!=e.cachedTextHeight)return e.cachedTextHeight;if(null==an){an=A(\"pre\",null,\"CodeMirror-line-like\");for(var t=0;t<49;++t)an.appendChild(document.createTextNode(\"x\")),an.appendChild(A(\"br\"));an.appendChild(document.createTextNode(\"x\"))}O(e.measure,an);var r=an.offsetHeight/50;return r>3&&(e.cachedTextHeight=r),N(e.measure),r||1}function Fn(e){if(null!=e.cachedCharWidth)return e.cachedCharWidth;var t=A(\"span\",\"xxxxxxxxxx\"),r=A(\"pre\",[t],\"CodeMirror-line-like\");O(e.measure,r);var n=t.getBoundingClientRect(),i=(n.right-n.left)/10;return i>2&&(e.cachedCharWidth=i),i||10}function Pn(e){for(var t=e.display,r={},n={},i=t.gutters.clientLeft,o=t.gutters.firstChild,l=0;o;o=o.nextSibling,++l){var s=e.display.gutterSpecs[l].className;r[s]=o.offsetLeft+o.clientLeft+i,n[s]=o.clientWidth}return{fixedPos:En(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:r,gutterWidth:n,wrapperWidth:t.wrapper.clientWidth}}function En(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function Rn(e){var t=Hn(e.display),r=e.options.lineWrapping,n=r&&Math.max(5,e.display.scroller.clientWidth/Fn(e.display)-3);return function(i){if(sr(e.doc,i))return 0;var o=0;if(i.widgets)for(var l=0;l0&&(a=tt(e.doc,u.line).text).length==u.ch){var c=V(a,a.length,e.options.tabSize)-a.length;u=ut(u.line,Math.max(0,Math.round((o-qr(e.display).left)/Fn(e.display))-c))}return u}function Bn(e,t){if(t>=e.display.viewTo)return null;if(t-=e.display.viewFrom,t<0)return null;for(var r=e.display.view,n=0;nt)&&(i.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=i.viewTo)Ft&&or(e.doc,t)i.viewFrom?Vn(e):(i.viewFrom+=n,i.viewTo+=n);else if(t<=i.viewFrom&&r>=i.viewTo)Vn(e);else if(t<=i.viewFrom){var o=Kn(e,r,r+n,1);o?(i.view=i.view.slice(o.index),i.viewFrom=o.lineN,i.viewTo+=n):Vn(e)}else if(r>=i.viewTo){var l=Kn(e,t,t,-1);l?(i.view=i.view.slice(0,l.index),i.viewTo=l.lineN):Vn(e)}else{var s=Kn(e,t,t,-1),a=Kn(e,r,r+n,1);s&&a?(i.view=i.view.slice(0,s.index).concat(Tr(e,s.lineN,a.lineN)).concat(i.view.slice(a.index)),i.viewTo+=n):Vn(e)}var u=i.externalMeasured;u&&(r=i.lineN&&t=n.viewTo)){var o=n.view[Bn(e,t)];if(null!=o.node){var l=o.changes||(o.changes=[]);-1==j(l,r)&&l.push(r)}}}function Vn(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function Kn(e,t,r,n){var i,o=Bn(e,t),l=e.display.view;if(!Ft||r==e.doc.first+e.doc.size)return{index:o,lineN:r};for(var s=e.display.viewFrom,a=0;a0){if(o==l.length-1)return null;i=s+l[o].size-t,o++}else i=s-t;t+=i,r+=i}while(or(e.doc,r)!=r){if(o==(n<0?0:l.length-1))return null;r+=n*l[o-(n<0?1:0)].size,o+=n}return{index:o,lineN:r}}function jn(e,t,r){var n=e.display,i=n.view;0==i.length||t>=n.viewTo||r<=n.viewFrom?(n.view=Tr(e,t,r),n.viewFrom=t):(n.viewFrom>t?n.view=Tr(e,t,n.viewFrom).concat(n.view):n.viewFromr&&(n.view=n.view.slice(0,Bn(e,r)))),n.viewTo=r}function Xn(e){for(var t=e.display.view,r=0,n=0;n=e.display.viewTo||a.to().line0?l:e.defaultCharWidth())+\"px\"}if(n.other){var s=r.appendChild(A(\"div\",\" \",\"CodeMirror-cursor CodeMirror-secondarycursor\"));s.style.display=\"\",s.style.left=n.other.left+\"px\",s.style.top=n.other.top+\"px\",s.style.height=.85*(n.other.bottom-n.other.top)+\"px\"}}function qn(e,t){return e.top-t.top||e.left-t.left}function Zn(e,t,r){var n=e.display,i=e.doc,o=document.createDocumentFragment(),l=qr(e.display),s=l.left,a=Math.max(n.sizerWidth,Jr(e)-n.sizer.offsetLeft)-l.right,u=\"ltr\"==i.direction;function c(e,t,r,n){t<0&&(t=0),t=Math.round(t),n=Math.round(n),o.appendChild(A(\"div\",null,\"CodeMirror-selected\",\"position: absolute; left: \"+e+\"px;\\n top: \"+t+\"px; width: \"+(null==r?a-e:r)+\"px;\\n height: \"+(n-t)+\"px\"))}function h(t,r,n){var o,l,h=tt(i,t),f=h.text.length;function d(r,n){return Cn(e,ut(t,r),\"div\",h,n)}function p(t,r,n){var i=Nn(e,h,null,t),o=\"ltr\"==r==(\"after\"==n)?\"left\":\"right\",l=\"after\"==n?i.begin:i.end-(/\\s/.test(h.text.charAt(i.end-1))?2:1);return d(l,o)[o]}var g=me(h,i.direction);return de(g,r||0,null==n?f:n,(function(e,t,i,h){var v=\"ltr\"==i,m=d(e,v?\"left\":\"right\"),y=d(t-1,v?\"right\":\"left\"),b=null==r&&0==e,w=null==n&&t==f,x=0==h,C=!g||h==g.length-1;if(y.top-m.top<=3){var S=(u?b:w)&&x,L=(u?w:b)&&C,k=S?s:(v?m:y).left,T=L?a:(v?y:m).right;c(k,m.top,T-k,m.bottom)}else{var M,N,O,A;v?(M=u&&b&&x?s:m.left,N=u?a:p(e,i,\"before\"),O=u?s:p(t,i,\"after\"),A=u&&w&&C?a:y.right):(M=u?p(e,i,\"before\"):s,N=!u&&b&&x?a:m.right,O=!u&&w&&C?s:y.left,A=u?p(t,i,\"after\"):a),c(M,m.top,N-M,m.bottom),m.bottom0?t.blinker=setInterval((function(){e.hasFocus()||ri(e),t.cursorDiv.style.visibility=(r=!r)?\"\":\"hidden\"}),e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility=\"hidden\")}}function Qn(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||ti(e))}function ei(e){e.state.delayingBlurEvent=!0,setTimeout((function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&ri(e))}),100)}function ti(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),\"nocursor\"!=e.options.readOnly&&(e.state.focused||(Ce(e,\"focus\",e,t),e.state.focused=!0,F(e.display.wrapper,\"CodeMirror-focused\"),e.curOp||e.display.selForContextMenu==e.doc.sel||(e.display.input.reset(),a&&setTimeout((function(){return e.display.input.reset(!0)}),20)),e.display.input.receivedFocus()),Jn(e))}function ri(e,t){e.state.delayingBlurEvent||(e.state.focused&&(Ce(e,\"blur\",e,t),e.state.focused=!1,M(e.display.wrapper,\"CodeMirror-focused\")),clearInterval(e.display.blinker),setTimeout((function(){e.state.focused||(e.display.shift=!1)}),150))}function ni(e){for(var t=e.display,r=t.lineDiv.offsetTop,n=Math.max(0,t.scroller.getBoundingClientRect().top),i=t.lineDiv.getBoundingClientRect().top,o=0,a=0;a.005||g<-.005)&&(ie.display.sizerWidth){var m=Math.ceil(f/Fn(e.display));m>e.display.maxLineLength&&(e.display.maxLineLength=m,e.display.maxLine=u.line,e.display.maxLineChanged=!0)}}}Math.abs(o)>2&&(t.scroller.scrollTop+=o)}function ii(e){if(e.widgets)for(var t=0;t=l&&(o=lt(t,ur(tt(t,a))-e.wrapper.clientHeight),l=a)}return{from:o,to:Math.max(l,o+1)}}function li(e,t){if(!Se(e,\"scrollCursorIntoView\")){var r=e.display,n=r.sizer.getBoundingClientRect(),i=null,o=r.wrapper.ownerDocument;if(t.top+n.top<0?i=!0:t.bottom+n.top>(o.defaultView.innerHeight||o.documentElement.clientHeight)&&(i=!1),null!=i&&!g){var l=A(\"div\",\"​\",null,\"position: absolute;\\n top: \"+(t.top-r.viewOffset-$r(e.display))+\"px;\\n height: \"+(t.bottom-t.top+Zr(e)+r.barHeight)+\"px;\\n left: \"+t.left+\"px; width: \"+Math.max(2,t.right-t.left)+\"px;\");e.display.lineSpace.appendChild(l),l.scrollIntoView(i),e.display.lineSpace.removeChild(l)}}}function si(e,t,r,n){var i;null==n&&(n=0),e.options.lineWrapping||t!=r||(r=\"before\"==t.sticky?ut(t.line,t.ch+1,\"before\"):t,t=t.ch?ut(t.line,\"before\"==t.sticky?t.ch-1:t.ch,\"after\"):t);for(var o=0;o<5;o++){var l=!1,s=Sn(e,t),a=r&&r!=t?Sn(e,r):s;i={left:Math.min(s.left,a.left),top:Math.min(s.top,a.top)-n,right:Math.max(s.left,a.left),bottom:Math.max(s.bottom,a.bottom)+n};var u=ui(e,i),c=e.doc.scrollTop,h=e.doc.scrollLeft;if(null!=u.scrollTop&&(vi(e,u.scrollTop),Math.abs(e.doc.scrollTop-c)>1&&(l=!0)),null!=u.scrollLeft&&(yi(e,u.scrollLeft),Math.abs(e.doc.scrollLeft-h)>1&&(l=!0)),!l)break}return i}function ai(e,t){var r=ui(e,t);null!=r.scrollTop&&vi(e,r.scrollTop),null!=r.scrollLeft&&yi(e,r.scrollLeft)}function ui(e,t){var r=e.display,n=Hn(e.display);t.top<0&&(t.top=0);var i=e.curOp&&null!=e.curOp.scrollTop?e.curOp.scrollTop:r.scroller.scrollTop,o=Qr(e),l={};t.bottom-t.top>o&&(t.bottom=t.top+o);var s=e.doc.height+_r(r),a=t.tops-n;if(t.topi+o){var c=Math.min(t.top,(u?s:t.bottom)-o);c!=i&&(l.scrollTop=c)}var h=e.options.fixedGutter?0:r.gutters.offsetWidth,f=e.curOp&&null!=e.curOp.scrollLeft?e.curOp.scrollLeft:r.scroller.scrollLeft-h,d=Jr(e)-r.gutters.offsetWidth,p=t.right-t.left>d;return p&&(t.right=t.left+d),t.left<10?l.scrollLeft=0:t.leftd+f-3&&(l.scrollLeft=t.right+(p?0:10)-d),l}function ci(e,t){null!=t&&(pi(e),e.curOp.scrollTop=(null==e.curOp.scrollTop?e.doc.scrollTop:e.curOp.scrollTop)+t)}function hi(e){pi(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function fi(e,t,r){null==t&&null==r||pi(e),null!=t&&(e.curOp.scrollLeft=t),null!=r&&(e.curOp.scrollTop=r)}function di(e,t){pi(e),e.curOp.scrollToPos=t}function pi(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var r=Ln(e,t.from),n=Ln(e,t.to);gi(e,r,n,t.margin)}}function gi(e,t,r,n){var i=ui(e,{left:Math.min(t.left,r.left),top:Math.min(t.top,r.top)-n,right:Math.max(t.right,r.right),bottom:Math.max(t.bottom,r.bottom)+n});fi(e,i.scrollLeft,i.scrollTop)}function vi(e,t){Math.abs(e.doc.scrollTop-t)<2||(r||Yi(e,{top:t}),mi(e,t,!0),r&&Yi(e),Ii(e,100))}function mi(e,t,r){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),(e.display.scroller.scrollTop!=t||r)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function yi(e,t,r,n){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),(r?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!n||(e.doc.scrollLeft=t,Zi(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function bi(e){var t=e.display,r=t.gutters.offsetWidth,n=Math.round(e.doc.height+_r(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?r:0,docHeight:n,scrollHeight:n+Zr(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:r}}var wi=function(e,t,r){this.cm=r;var n=this.vert=A(\"div\",[A(\"div\",null,null,\"min-width: 1px\")],\"CodeMirror-vscrollbar\"),i=this.horiz=A(\"div\",[A(\"div\",null,null,\"height: 100%; min-height: 1px\")],\"CodeMirror-hscrollbar\");n.tabIndex=i.tabIndex=-1,e(n),e(i),be(n,\"scroll\",(function(){n.clientHeight&&t(n.scrollTop,\"vertical\")})),be(i,\"scroll\",(function(){i.clientWidth&&t(i.scrollLeft,\"horizontal\")})),this.checkedZeroWidth=!1,l&&s<8&&(this.horiz.style.minHeight=this.vert.style.minWidth=\"18px\")};wi.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,r=e.scrollHeight>e.clientHeight+1,n=e.nativeBarWidth;if(r){this.vert.style.display=\"block\",this.vert.style.bottom=t?n+\"px\":\"0\";var i=e.viewHeight-(t?n:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+i)+\"px\"}else this.vert.scrollTop=0,this.vert.style.display=\"\",this.vert.firstChild.style.height=\"0\";if(t){this.horiz.style.display=\"block\",this.horiz.style.right=r?n+\"px\":\"0\",this.horiz.style.left=e.barLeft+\"px\";var o=e.viewWidth-e.barLeft-(r?n:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+o)+\"px\"}else this.horiz.style.display=\"\",this.horiz.firstChild.style.width=\"0\";return!this.checkedZeroWidth&&e.clientHeight>0&&(0==n&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:r?n:0,bottom:t?n:0}},wi.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,\"horiz\")},wi.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,\"vert\")},wi.prototype.zeroWidthHack=function(){var e=b&&!p?\"12px\":\"18px\";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.visibility=this.vert.style.visibility=\"hidden\",this.disableHoriz=new K,this.disableVert=new K},wi.prototype.enableZeroWidthBar=function(e,t,r){function n(){var i=e.getBoundingClientRect(),o=\"vert\"==r?document.elementFromPoint(i.right-1,(i.top+i.bottom)/2):document.elementFromPoint((i.right+i.left)/2,i.bottom-1);o!=e?e.style.visibility=\"hidden\":t.set(1e3,n)}e.style.visibility=\"\",t.set(1e3,n)},wi.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var xi=function(){};function Ci(e,t){t||(t=bi(e));var r=e.display.barWidth,n=e.display.barHeight;Si(e,t);for(var i=0;i<4&&r!=e.display.barWidth||n!=e.display.barHeight;i++)r!=e.display.barWidth&&e.options.lineWrapping&&ni(e),Si(e,bi(e)),r=e.display.barWidth,n=e.display.barHeight}function Si(e,t){var r=e.display,n=r.scrollbars.update(t);r.sizer.style.paddingRight=(r.barWidth=n.right)+\"px\",r.sizer.style.paddingBottom=(r.barHeight=n.bottom)+\"px\",r.heightForcer.style.borderBottom=n.bottom+\"px solid transparent\",n.right&&n.bottom?(r.scrollbarFiller.style.display=\"block\",r.scrollbarFiller.style.height=n.bottom+\"px\",r.scrollbarFiller.style.width=n.right+\"px\"):r.scrollbarFiller.style.display=\"\",n.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(r.gutterFiller.style.display=\"block\",r.gutterFiller.style.height=n.bottom+\"px\",r.gutterFiller.style.width=t.gutterWidth+\"px\"):r.gutterFiller.style.display=\"\"}xi.prototype.update=function(){return{bottom:0,right:0}},xi.prototype.setScrollLeft=function(){},xi.prototype.setScrollTop=function(){},xi.prototype.clear=function(){};var Li={native:wi,null:xi};function ki(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&M(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new Li[e.options.scrollbarStyle]((function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),be(t,\"mousedown\",(function(){e.state.focused&&setTimeout((function(){return e.display.input.focus()}),0)})),t.setAttribute(\"cm-not-content\",\"true\")}),(function(t,r){\"horizontal\"==r?yi(e,t):vi(e,t)}),e),e.display.scrollbars.addClass&&F(e.display.wrapper,e.display.scrollbars.addClass)}var Ti=0;function Mi(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++Ti,markArrays:null},Nr(e.curOp)}function Ni(e){var t=e.curOp;t&&Ar(t,(function(e){for(var t=0;t=r.viewTo)||r.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new Gi(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function Di(e){e.updatedDisplay=e.mustUpdate&&ji(e.cm,e.update)}function Wi(e){var t=e.cm,r=t.display;e.updatedDisplay&&ni(t),e.barMeasure=bi(t),r.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=nn(t,r.maxLine,r.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(r.scroller.clientWidth,r.sizer.offsetLeft+e.adjustWidthTo+Zr(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,r.sizer.offsetLeft+e.adjustWidthTo-Jr(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=r.input.prepareSelection())}function Hi(e){var t=e.cm;null!=e.adjustWidthTo&&(t.display.sizer.style.minWidth=e.adjustWidthTo+\"px\",e.maxScrollLeft=e.display.viewTo)){var r=+new Date+e.options.workTime,n=St(e,t.highlightFrontier),i=[];t.iter(n.line,Math.min(t.first+t.size,e.display.viewTo+500),(function(o){if(n.line>=e.display.viewFrom){var l=o.styles,s=o.text.length>e.options.maxHighlightLength?Ze(t.mode,n.state):null,a=xt(e,o,n,!0);s&&(n.state=s),o.styles=a.styles;var u=o.styleClasses,c=a.classes;c?o.styleClasses=c:u&&(o.styleClasses=null);for(var h=!l||l.length!=o.styles.length||u!=c&&(!u||!c||u.bgClass!=c.bgClass||u.textClass!=c.textClass),f=0;!h&&fr)return Ii(e,e.options.workDelay),!0})),t.highlightFrontier=n.line,t.modeFrontier=Math.max(t.modeFrontier,n.line),i.length&&Pi(e,(function(){for(var t=0;t=r.viewFrom&&t.visible.to<=r.viewTo&&(null==r.updateLineNumbers||r.updateLineNumbers>=r.viewTo)&&r.renderedView==r.view&&0==Xn(e))return!1;Ji(e)&&(Vn(e),t.dims=Pn(e));var i=n.first+n.size,o=Math.max(t.visible.from-e.options.viewportMargin,n.first),l=Math.min(i,t.visible.to+e.options.viewportMargin);r.viewFroml&&r.viewTo-l<20&&(l=Math.min(i,r.viewTo)),Ft&&(o=or(e.doc,o),l=lr(e.doc,l));var s=o!=r.viewFrom||l!=r.viewTo||r.lastWrapHeight!=t.wrapperHeight||r.lastWrapWidth!=t.wrapperWidth;jn(e,o,l),r.viewOffset=ur(tt(e.doc,r.viewFrom)),e.display.mover.style.top=r.viewOffset+\"px\";var a=Xn(e);if(!s&&0==a&&!t.force&&r.renderedView==r.view&&(null==r.updateLineNumbers||r.updateLineNumbers>=r.viewTo))return!1;var u=Vi(e);return a>4&&(r.lineDiv.style.display=\"none\"),$i(e,r.updateLineNumbers,t.dims),a>4&&(r.lineDiv.style.display=\"\"),r.renderedView=r.view,Ki(u),N(r.cursorDiv),N(r.selectionDiv),r.gutters.style.height=r.sizer.style.minHeight=0,s&&(r.lastWrapHeight=t.wrapperHeight,r.lastWrapWidth=t.wrapperWidth,Ii(e,400)),r.updateLineNumbers=null,!0}function Xi(e,t){for(var r=t.viewport,n=!0;;n=!1){if(n&&e.options.lineWrapping&&t.oldDisplayWidth!=Jr(e))n&&(t.visible=oi(e.display,e.doc,r));else if(r&&null!=r.top&&(r={top:Math.min(e.doc.height+_r(e.display)-Qr(e),r.top)}),t.visible=oi(e.display,e.doc,r),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break;if(!ji(e,t))break;ni(e);var i=bi(e);Yn(e),Ci(e,i),qi(e,i),t.force=!1}t.signal(e,\"update\",e),e.display.viewFrom==e.display.reportedViewFrom&&e.display.viewTo==e.display.reportedViewTo||(t.signal(e,\"viewportChange\",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function Yi(e,t){var r=new Gi(e,t);if(ji(e,r)){ni(e),Xi(e,r);var n=bi(e);Yn(e),Ci(e,n),qi(e,n),r.finish()}}function $i(e,t,r){var n=e.display,i=e.options.lineNumbers,o=n.lineDiv,l=o.firstChild;function s(t){var r=t.nextSibling;return a&&b&&e.display.currentWheelTarget==t?t.style.display=\"none\":t.parentNode.removeChild(t),r}for(var u=n.view,c=n.viewFrom,h=0;h-1&&(d=!1),Fr(e,f,c,r)),d&&(N(f.lineNumber),f.lineNumber.appendChild(document.createTextNode(at(e.options,c)))),l=f.node.nextSibling}else{var p=Ur(e,f,c,r);o.insertBefore(p,l)}c+=f.size}while(l)l=s(l)}function _i(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+\"px\",Wr(e,\"gutterChanged\",e)}function qi(e,t){e.display.sizer.style.minHeight=t.docHeight+\"px\",e.display.heightForcer.style.top=t.docHeight+\"px\",e.display.gutters.style.height=t.docHeight+e.display.barHeight+Zr(e)+\"px\"}function Zi(e){var t=e.display,r=t.view;if(t.alignWidgets||t.gutters.firstChild&&e.options.fixedGutter){for(var n=En(t)-t.scroller.scrollLeft+e.doc.scrollLeft,i=t.gutters.offsetWidth,o=n+\"px\",l=0;l=105&&(o.wrapper.style.clipPath=\"inset(0px)\"),o.wrapper.setAttribute(\"translate\",\"no\"),l&&s<8&&(o.gutters.style.zIndex=-1,o.scroller.style.paddingRight=0),a||r&&y||(o.scroller.draggable=!0),e&&(e.appendChild?e.appendChild(o.wrapper):e(o.wrapper)),o.viewFrom=o.viewTo=t.first,o.reportedViewFrom=o.reportedViewTo=t.first,o.view=[],o.renderedView=null,o.externalMeasured=null,o.viewOffset=0,o.lastWrapHeight=o.lastWrapWidth=0,o.updateLineNumbers=null,o.nativeBarWidth=o.barHeight=o.barWidth=0,o.scrollbarsClipped=!1,o.lineNumWidth=o.lineNumInnerWidth=o.lineNumChars=null,o.alignWidgets=!1,o.cachedCharWidth=o.cachedTextHeight=o.cachedPaddingH=null,o.maxLine=null,o.maxLineLength=0,o.maxLineChanged=!1,o.wheelDX=o.wheelDY=o.wheelStartX=o.wheelStartY=null,o.shift=!1,o.selForContextMenu=null,o.activeTouch=null,o.gutterSpecs=Qi(i.gutters,i.lineNumbers),eo(o),n.init(o)}Gi.prototype.signal=function(e,t){ke(e,t)&&this.events.push(arguments)},Gi.prototype.finish=function(){for(var e=0;eu.clientWidth,p=u.scrollHeight>u.clientHeight;if(i&&d||o&&p){if(o&&b&&a)e:for(var g=t.target,v=s.view;g!=u;g=g.parentNode)for(var m=0;m=0&&ct(e,n.to())<=0)return r}return-1};var uo=function(e,t){this.anchor=e,this.head=t};function co(e,t,r){var n=e&&e.options.selectionsMayTouch,i=t[r];t.sort((function(e,t){return ct(e.from(),t.from())})),r=j(t,i);for(var o=1;o0:a>=0){var u=pt(s.from(),l.from()),c=dt(s.to(),l.to()),h=s.empty()?l.from()==l.head:s.from()==s.head;o<=r&&--r,t.splice(--o,2,new uo(h?c:u,h?u:c))}}return new ao(t,r)}function ho(e,t){return new ao([new uo(e,t||e)],0)}function fo(e){return e.text?ut(e.from.line+e.text.length-1,ee(e.text).length+(1==e.text.length?e.from.ch:0)):e.to}function po(e,t){if(ct(e,t.from)<0)return e;if(ct(e,t.to)<=0)return fo(t);var r=e.line+t.text.length-(t.to.line-t.from.line)-1,n=e.ch;return e.line==t.to.line&&(n+=fo(t).ch-t.to.ch),ut(r,n)}function go(e,t){for(var r=[],n=0;n1&&e.remove(s.line+1,p-1),e.insert(s.line+1,m)}Wr(e,\"change\",e,t)}function Co(e,t,r){function n(e,i,o){if(e.linked)for(var l=0;l1&&!e.done[e.done.length-2].ranges?(e.done.pop(),ee(e.done)):void 0}function Ao(e,t,r,n){var i=e.history;i.undone.length=0;var o,l,s=+new Date;if((i.lastOp==n||i.lastOrigin==t.origin&&t.origin&&(\"+\"==t.origin.charAt(0)&&i.lastModTime>s-(e.cm?e.cm.options.historyEventDelay:500)||\"*\"==t.origin.charAt(0)))&&(o=Oo(i,i.lastOp==n)))l=ee(o.changes),0==ct(t.from,t.to)&&0==ct(t.from,l.to)?l.to=fo(t):o.changes.push(Mo(e,t));else{var a=ee(i.done);a&&a.ranges||Ho(e.sel,i.done),o={changes:[Mo(e,t)],generation:i.generation},i.done.push(o);while(i.done.length>i.undoDepth)i.done.shift(),i.done[0].ranges||i.done.shift()}i.done.push(r),i.generation=++i.maxGeneration,i.lastModTime=i.lastSelTime=s,i.lastOp=i.lastSelOp=n,i.lastOrigin=i.lastSelOrigin=t.origin,l||Ce(e,\"historyAdded\")}function Do(e,t,r,n){var i=t.charAt(0);return\"*\"==i||\"+\"==i&&r.ranges.length==n.ranges.length&&r.somethingSelected()==n.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}function Wo(e,t,r,n){var i=e.history,o=n&&n.origin;r==i.lastSelOp||o&&i.lastSelOrigin==o&&(i.lastModTime==i.lastSelTime&&i.lastOrigin==o||Do(e,o,ee(i.done),t))?i.done[i.done.length-1]=t:Ho(t,i.done),i.lastSelTime=+new Date,i.lastSelOrigin=o,i.lastSelOp=r,n&&!1!==n.clearRedo&&No(i.undone)}function Ho(e,t){var r=ee(t);r&&r.ranges&&r.equals(e)||t.push(e)}function Fo(e,t,r,n){var i=t[\"spans_\"+e.id],o=0;e.iter(Math.max(e.first,r),Math.min(e.first+e.size,n),(function(r){r.markedSpans&&((i||(i=t[\"spans_\"+e.id]={}))[o]=r.markedSpans),++o}))}function Po(e){if(!e)return null;for(var t,r=0;r-1&&(ee(s)[h]=u[h],delete u[h])}}}return n}function Io(e,t,r,n){if(n){var i=e.anchor;if(r){var o=ct(t,i)<0;o!=ct(r,i)<0?(i=t,t=r):o!=ct(t,r)<0&&(t=r)}return new uo(i,t)}return new uo(r||t,t)}function Bo(e,t,r,n,i){null==i&&(i=e.cm&&(e.cm.display.shift||e.extend)),Xo(e,new ao([Io(e.sel.primary(),t,r,i)],0),n)}function Go(e,t,r){for(var n=[],i=e.cm&&(e.cm.display.shift||e.extend),o=0;o=t.ch:s.to>t.ch))){if(i&&(Ce(a,\"beforeCursorEnter\"),a.explicitlyCleared)){if(o.markedSpans){--l;continue}break}if(!a.atomic)continue;if(r){var h=a.find(n<0?1:-1),f=void 0;if((n<0?c:u)&&(h=Qo(e,h,-n,h&&h.line==t.line?o:null)),h&&h.line==t.line&&(f=ct(h,r))&&(n<0?f<0:f>0))return Zo(e,h,t,n,i)}var d=a.find(n<0?-1:1);return(n<0?u:c)&&(d=Qo(e,d,n,d.line==t.line?o:null)),d?Zo(e,d,t,n,i):null}}return t}function Jo(e,t,r,n,i){var o=n||1,l=Zo(e,t,r,o,i)||!i&&Zo(e,t,r,o,!0)||Zo(e,t,r,-o,i)||!i&&Zo(e,t,r,-o,!0);return l||(e.cantEdit=!0,ut(e.first,0))}function Qo(e,t,r,n){return r<0&&0==t.ch?t.line>e.first?vt(e,ut(t.line-1)):null:r>0&&t.ch==(n||tt(e,t.line)).text.length?t.line=0;--i)nl(e,{from:n[i].from,to:n[i].to,text:i?[\"\"]:t.text,origin:t.origin});else nl(e,t)}}function nl(e,t){if(1!=t.text.length||\"\"!=t.text[0]||0!=ct(t.from,t.to)){var r=go(e,t);Ao(e,t,r,e.cm?e.cm.curOp.id:NaN),ll(e,t,r,Vt(e,t));var n=[];Co(e,(function(e,r){r||-1!=j(n,e.history)||(hl(e.history,t),n.push(e.history)),ll(e,t,null,Vt(e,t))}))}}function il(e,t,r){var n=e.cm&&e.cm.state.suppressEdits;if(!n||r){for(var i,o=e.history,l=e.sel,s=\"undo\"==t?o.done:o.undone,a=\"undo\"==t?o.undone:o.done,u=0;u=0;--d){var p=f(d);if(p)return p.v}}}}function ol(e,t){if(0!=t&&(e.first+=t,e.sel=new ao(te(e.sel.ranges,(function(e){return new uo(ut(e.anchor.line+t,e.anchor.ch),ut(e.head.line+t,e.head.ch))})),e.sel.primIndex),e.cm)){Gn(e.cm,e.first,e.first-t,t);for(var r=e.cm.display,n=r.viewFrom;ne.lastLine())){if(t.from.lineo&&(t={from:t.from,to:ut(o,tt(e,o).text.length),text:[t.text[0]],origin:t.origin}),t.removed=rt(e,t.from,t.to),r||(r=go(e,t)),e.cm?sl(e.cm,t,n):xo(e,t,n),Yo(e,r,$),e.cantEdit&&Jo(e,ut(e.firstLine(),0))&&(e.cantEdit=!1)}}function sl(e,t,r){var n=e.doc,i=e.display,o=t.from,l=t.to,s=!1,a=o.line;e.options.lineWrapping||(a=ot(rr(tt(n,o.line))),n.iter(a,l.line+1,(function(e){if(e==i.maxLine)return s=!0,!0}))),n.sel.contains(t.from,t.to)>-1&&Le(e),xo(n,t,r,Rn(e)),e.options.lineWrapping||(n.iter(a,o.line+t.text.length,(function(e){var t=cr(e);t>i.maxLineLength&&(i.maxLine=e,i.maxLineLength=t,i.maxLineChanged=!0,s=!1)})),s&&(e.curOp.updateMaxLine=!0)),Wt(n,o.line),Ii(e,400);var u=t.text.length-(l.line-o.line)-1;t.full?Gn(e):o.line!=l.line||1!=t.text.length||wo(e.doc,t)?Gn(e,o.line,l.line+1,u):Un(e,o.line,\"text\");var c=ke(e,\"changes\"),h=ke(e,\"change\");if(h||c){var f={from:o,to:l,text:t.text,removed:t.removed,origin:t.origin};h&&Wr(e,\"change\",e,f),c&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(f)}e.display.selForContextMenu=null}function al(e,t,r,n,i){var o;n||(n=r),ct(n,r)<0&&(o=[n,r],r=o[0],n=o[1]),\"string\"==typeof t&&(t=e.splitLines(t)),rl(e,{from:r,to:n,text:t,origin:i})}function ul(e,t,r,n){r1||!(this.children[0]instanceof dl))){var s=[];this.collapse(s),this.children=[new dl(s)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t50){for(var l=i.lines.length%25+25,s=l;s10);e.parent.maybeSpill()}},iterN:function(e,t,r){for(var n=0;n0||0==l&&!1!==o.clearWhenEmpty)return o;if(o.replacedWith&&(o.collapsed=!0,o.widgetNode=D(\"span\",[o.replacedWith],\"CodeMirror-widget\"),n.handleMouseEvents||o.widgetNode.setAttribute(\"cm-ignore-events\",\"true\"),n.insertLeft&&(o.widgetNode.insertLeft=!0)),o.collapsed){if(tr(e,t.line,t,r,o)||t.line!=r.line&&tr(e,r.line,t,r,o))throw new Error(\"Inserting collapsed marker partially overlapping an existing one\");Et()}o.addToHistory&&Ao(e,{from:t,to:r,origin:\"markText\"},e.sel,NaN);var s,a=t.line,u=e.cm;if(e.iter(a,r.line+1,(function(n){u&&o.collapsed&&!u.options.lineWrapping&&rr(n)==u.display.maxLine&&(s=!0),o.collapsed&&a!=t.line&&it(n,0),Bt(n,new Rt(o,a==t.line?t.ch:null,a==r.line?r.ch:null),e.cm&&e.cm.curOp),++a})),o.collapsed&&e.iter(t.line,r.line+1,(function(t){sr(e,t)&&it(t,0)})),o.clearOnEnter&&be(o,\"beforeCursorEnter\",(function(){return o.clear()})),o.readOnly&&(Pt(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),o.collapsed&&(o.id=++yl,o.atomic=!0),u){if(s&&(u.curOp.updateMaxLine=!0),o.collapsed)Gn(u,t.line,r.line+1);else if(o.className||o.startStyle||o.endStyle||o.css||o.attributes||o.title)for(var c=t.line;c<=r.line;c++)Un(u,c,\"text\");o.atomic&&_o(u.doc),Wr(u,\"markerAdded\",u,o)}return o}bl.prototype.clear=function(){if(!this.explicitlyCleared){var e=this.doc.cm,t=e&&!e.curOp;if(t&&Mi(e),ke(this,\"clear\")){var r=this.find();r&&Wr(this,\"clear\",r.from,r.to)}for(var n=null,i=null,o=0;oe.display.maxLineLength&&(e.display.maxLine=u,e.display.maxLineLength=c,e.display.maxLineChanged=!0)}null!=n&&e&&this.collapsed&&Gn(e,n,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&_o(e.doc)),e&&Wr(e,\"markerCleared\",e,this,n,i),t&&Ni(e),this.parent&&this.parent.clear()}},bl.prototype.find=function(e,t){var r,n;null==e&&\"bookmark\"==this.type&&(e=1);for(var i=0;i=0;a--)rl(this,n[a]);s?jo(this,s):this.cm&&hi(this.cm)})),undo:zi((function(){il(this,\"undo\")})),redo:zi((function(){il(this,\"redo\")})),undoSelection:zi((function(){il(this,\"undo\",!0)})),redoSelection:zi((function(){il(this,\"redo\",!0)})),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,r=0,n=0;n=e.ch)&&t.push(i.marker.parent||i.marker)}return t},findMarks:function(e,t,r){e=vt(this,e),t=vt(this,t);var n=[],i=e.line;return this.iter(e.line,t.line+1,(function(o){var l=o.markedSpans;if(l)for(var s=0;s=a.to||null==a.from&&i!=e.line||null!=a.from&&i==t.line&&a.from>=t.ch||r&&!r(a.marker)||n.push(a.marker.parent||a.marker)}++i})),n},getAllMarks:function(){var e=[];return this.iter((function(t){var r=t.markedSpans;if(r)for(var n=0;ne)return t=e,!0;e-=o,++r})),vt(this,ut(r,t))},indexFromPos:function(e){e=vt(this,e);var t=e.ch;if(e.linet&&(t=e.from),null!=e.to&&e.to-1)return t.state.draggingText(e),void setTimeout((function(){return t.display.input.focus()}),20);try{var h=e.dataTransfer.getData(\"Text\");if(h){var f;if(t.state.draggingText&&!t.state.draggingText.copy&&(f=t.listSelections()),Yo(t.doc,ho(r,r)),f)for(var d=0;d=0;t--)al(e.doc,\"\",n[t].from,n[t].to,\"+delete\");hi(e)}))}function Zl(e,t,r){var n=he(e.text,t+r,r);return n<0||n>e.text.length?null:n}function Jl(e,t,r){var n=Zl(e,t.ch,r);return null==n?null:new ut(t.line,n,r<0?\"after\":\"before\")}function Ql(e,t,r,n,i){if(e){\"rtl\"==t.doc.direction&&(i=-i);var o=me(r,t.doc.direction);if(o){var l,s=i<0?ee(o):o[0],a=i<0==(1==s.level),u=a?\"after\":\"before\";if(s.level>0||\"rtl\"==t.doc.direction){var c=ln(t,r);l=i<0?r.text.length-1:0;var h=sn(t,c,l).top;l=fe((function(e){return sn(t,c,e).top==h}),i<0==(1==s.level)?s.from:s.to-1,l),\"before\"==u&&(l=Zl(r,l,1))}else l=i<0?s.to:s.from;return new ut(n,l,u)}}return new ut(n,i<0?r.text.length:0,i<0?\"before\":\"after\")}function es(e,t,r,n){var i=me(t,e.doc.direction);if(!i)return Jl(t,r,n);r.ch>=t.text.length?(r.ch=t.text.length,r.sticky=\"before\"):r.ch<=0&&(r.ch=0,r.sticky=\"after\");var o=ge(i,r.ch,r.sticky),l=i[o];if(\"ltr\"==e.doc.direction&&l.level%2==0&&(n>0?l.to>r.ch:l.from=l.from&&f>=c.begin)){var d=h?\"before\":\"after\";return new ut(r.line,f,d)}}var p=function(e,t,n){for(var o=function(e,t){return t?new ut(r.line,a(e,1),\"before\"):new ut(r.line,e,\"after\")};e>=0&&e0==(1!=l.level),u=s?n.begin:a(n.end,-1);if(l.from<=u&&u0?c.end:a(c.begin,-1);return null==v||n>0&&v==t.text.length||(g=p(n>0?0:i.length-1,n,u(v)),!g)?null:g}Ul.basic={Left:\"goCharLeft\",Right:\"goCharRight\",Up:\"goLineUp\",Down:\"goLineDown\",End:\"goLineEnd\",Home:\"goLineStartSmart\",PageUp:\"goPageUp\",PageDown:\"goPageDown\",Delete:\"delCharAfter\",Backspace:\"delCharBefore\",\"Shift-Backspace\":\"delCharBefore\",Tab:\"defaultTab\",\"Shift-Tab\":\"indentAuto\",Enter:\"newlineAndIndent\",Insert:\"toggleOverwrite\",Esc:\"singleSelection\"},Ul.pcDefault={\"Ctrl-A\":\"selectAll\",\"Ctrl-D\":\"deleteLine\",\"Ctrl-Z\":\"undo\",\"Shift-Ctrl-Z\":\"redo\",\"Ctrl-Y\":\"redo\",\"Ctrl-Home\":\"goDocStart\",\"Ctrl-End\":\"goDocEnd\",\"Ctrl-Up\":\"goLineUp\",\"Ctrl-Down\":\"goLineDown\",\"Ctrl-Left\":\"goGroupLeft\",\"Ctrl-Right\":\"goGroupRight\",\"Alt-Left\":\"goLineStart\",\"Alt-Right\":\"goLineEnd\",\"Ctrl-Backspace\":\"delGroupBefore\",\"Ctrl-Delete\":\"delGroupAfter\",\"Ctrl-S\":\"save\",\"Ctrl-F\":\"find\",\"Ctrl-G\":\"findNext\",\"Shift-Ctrl-G\":\"findPrev\",\"Shift-Ctrl-F\":\"replace\",\"Shift-Ctrl-R\":\"replaceAll\",\"Ctrl-[\":\"indentLess\",\"Ctrl-]\":\"indentMore\",\"Ctrl-U\":\"undoSelection\",\"Shift-Ctrl-U\":\"redoSelection\",\"Alt-U\":\"redoSelection\",fallthrough:\"basic\"},Ul.emacsy={\"Ctrl-F\":\"goCharRight\",\"Ctrl-B\":\"goCharLeft\",\"Ctrl-P\":\"goLineUp\",\"Ctrl-N\":\"goLineDown\",\"Ctrl-A\":\"goLineStart\",\"Ctrl-E\":\"goLineEnd\",\"Ctrl-V\":\"goPageDown\",\"Shift-Ctrl-V\":\"goPageUp\",\"Ctrl-D\":\"delCharAfter\",\"Ctrl-H\":\"delCharBefore\",\"Alt-Backspace\":\"delWordBefore\",\"Ctrl-K\":\"killLine\",\"Ctrl-T\":\"transposeChars\",\"Ctrl-O\":\"openLine\"},Ul.macDefault={\"Cmd-A\":\"selectAll\",\"Cmd-D\":\"deleteLine\",\"Cmd-Z\":\"undo\",\"Shift-Cmd-Z\":\"redo\",\"Cmd-Y\":\"redo\",\"Cmd-Home\":\"goDocStart\",\"Cmd-Up\":\"goDocStart\",\"Cmd-End\":\"goDocEnd\",\"Cmd-Down\":\"goDocEnd\",\"Alt-Left\":\"goGroupLeft\",\"Alt-Right\":\"goGroupRight\",\"Cmd-Left\":\"goLineLeft\",\"Cmd-Right\":\"goLineRight\",\"Alt-Backspace\":\"delGroupBefore\",\"Ctrl-Alt-Backspace\":\"delGroupAfter\",\"Alt-Delete\":\"delGroupAfter\",\"Cmd-S\":\"save\",\"Cmd-F\":\"find\",\"Cmd-G\":\"findNext\",\"Shift-Cmd-G\":\"findPrev\",\"Cmd-Alt-F\":\"replace\",\"Shift-Cmd-Alt-F\":\"replaceAll\",\"Cmd-[\":\"indentLess\",\"Cmd-]\":\"indentMore\",\"Cmd-Backspace\":\"delWrappedLineLeft\",\"Cmd-Delete\":\"delWrappedLineRight\",\"Cmd-U\":\"undoSelection\",\"Shift-Cmd-U\":\"redoSelection\",\"Ctrl-Up\":\"goDocStart\",\"Ctrl-Down\":\"goDocEnd\",fallthrough:[\"basic\",\"emacsy\"]},Ul[\"default\"]=b?Ul.macDefault:Ul.pcDefault;var ts={selectAll:el,singleSelection:function(e){return e.setSelection(e.getCursor(\"anchor\"),e.getCursor(\"head\"),$)},killLine:function(e){return ql(e,(function(t){if(t.empty()){var r=tt(e.doc,t.head.line).text.length;return t.head.ch==r&&t.head.line0)i=new ut(i.line,i.ch+1),e.replaceRange(o.charAt(i.ch-1)+o.charAt(i.ch-2),ut(i.line,i.ch-2),i,\"+transpose\");else if(i.line>e.doc.first){var l=tt(e.doc,i.line-1).text;l&&(i=new ut(i.line,1),e.replaceRange(o.charAt(0)+e.doc.lineSeparator()+l.charAt(l.length-1),ut(i.line-1,l.length-1),i,\"+transpose\"))}r.push(new uo(i,i))}e.setSelections(r)}))},newlineAndIndent:function(e){return Pi(e,(function(){for(var t=e.listSelections(),r=t.length-1;r>=0;r--)e.replaceRange(e.doc.lineSeparator(),t[r].anchor,t[r].head,\"+input\");t=e.listSelections();for(var n=0;n-1&&(ct((i=s.ranges[i]).from(),t)<0||t.xRel>0)&&(ct(i.to(),t)>0||t.xRel<0)?Ts(e,n,t,o):Ns(e,n,t,o)}function Ts(e,t,r,n){var i=e.display,o=!1,u=Ei(e,(function(t){a&&(i.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:ei(e)),xe(i.wrapper.ownerDocument,\"mouseup\",u),xe(i.wrapper.ownerDocument,\"mousemove\",c),xe(i.scroller,\"dragstart\",h),xe(i.scroller,\"drop\",u),o||(Me(t),n.addNew||Bo(e.doc,r,null,null,n.extend),a&&!d||l&&9==s?setTimeout((function(){i.wrapper.ownerDocument.body.focus({preventScroll:!0}),i.input.focus()}),20):i.input.focus())})),c=function(e){o=o||Math.abs(t.clientX-e.clientX)+Math.abs(t.clientY-e.clientY)>=10},h=function(){return o=!0};a&&(i.scroller.draggable=!0),e.state.draggingText=u,u.copy=!n.moveOnDrag,be(i.wrapper.ownerDocument,\"mouseup\",u),be(i.wrapper.ownerDocument,\"mousemove\",c),be(i.scroller,\"dragstart\",h),be(i.scroller,\"drop\",u),e.state.delayingBlurEvent=!0,setTimeout((function(){return i.input.focus()}),20),i.scroller.dragDrop&&i.scroller.dragDrop()}function Ms(e,t,r){if(\"char\"==r)return new uo(t,t);if(\"word\"==r)return e.findWordAt(t);if(\"line\"==r)return new uo(ut(t.line,0),vt(e.doc,ut(t.line+1,0)));var n=r(e,t);return new uo(n.from,n.to)}function Ns(e,t,r,n){l&&ei(e);var i=e.display,o=e.doc;Me(t);var s,a,u=o.sel,c=u.ranges;if(n.addNew&&!n.extend?(a=o.sel.contains(r),s=a>-1?c[a]:new uo(r,r)):(s=o.sel.primary(),a=o.sel.primIndex),\"rectangle\"==n.unit)n.addNew||(s=new uo(r,r)),r=In(e,t,!0,!0),a=-1;else{var h=Ms(e,r,n.unit);s=n.extend?Io(s,h.anchor,h.head,n.extend):h}n.addNew?-1==a?(a=c.length,Xo(o,co(e,c.concat([s]),a),{scroll:!1,origin:\"*mouse\"})):c.length>1&&c[a].empty()&&\"char\"==n.unit&&!n.extend?(Xo(o,co(e,c.slice(0,a).concat(c.slice(a+1)),0),{scroll:!1,origin:\"*mouse\"}),u=o.sel):Uo(o,a,s,_):(a=0,Xo(o,new ao([s],0),_),u=o.sel);var f=r;function d(t){if(0!=ct(f,t))if(f=t,\"rectangle\"==n.unit){for(var i=[],l=e.options.tabSize,c=V(tt(o,r.line).text,r.ch,l),h=V(tt(o,t.line).text,t.ch,l),d=Math.min(c,h),p=Math.max(c,h),g=Math.min(r.line,t.line),v=Math.min(e.lastLine(),Math.max(r.line,t.line));g<=v;g++){var m=tt(o,g).text,y=Z(m,d,l);d==p?i.push(new uo(ut(g,y),ut(g,y))):m.length>y&&i.push(new uo(ut(g,y),ut(g,Z(m,p,l))))}i.length||i.push(new uo(r,r)),Xo(o,co(e,u.ranges.slice(0,a).concat(i),a),{origin:\"*mouse\",scroll:!1}),e.scrollIntoView(t)}else{var b,w=s,x=Ms(e,t,n.unit),C=w.anchor;ct(x.anchor,C)>0?(b=x.head,C=pt(w.from(),x.anchor)):(b=x.anchor,C=dt(w.to(),x.head));var S=u.ranges.slice(0);S[a]=Os(e,new uo(vt(o,C),b)),Xo(o,co(e,S,a),_)}}var p=i.wrapper.getBoundingClientRect(),g=0;function v(t){var r=++g,l=In(e,t,!0,\"rectangle\"==n.unit);if(l)if(0!=ct(l,f)){e.curOp.focus=H(z(e)),d(l);var s=oi(i,o);(l.line>=s.to||l.linep.bottom?20:0;a&&setTimeout(Ei(e,(function(){g==r&&(i.scroller.scrollTop+=a,v(t))})),50)}}function m(t){e.state.selectingText=!1,g=1/0,t&&(Me(t),i.input.focus()),xe(i.wrapper.ownerDocument,\"mousemove\",y),xe(i.wrapper.ownerDocument,\"mouseup\",b),o.history.lastSelOrigin=null}var y=Ei(e,(function(e){0!==e.buttons&&We(e)?v(e):m(e)})),b=Ei(e,m);e.state.selectingText=b,be(i.wrapper.ownerDocument,\"mousemove\",y),be(i.wrapper.ownerDocument,\"mouseup\",b)}function Os(e,t){var r=t.anchor,n=t.head,i=tt(e.doc,r.line);if(0==ct(r,n)&&r.sticky==n.sticky)return t;var o=me(i);if(!o)return t;var l=ge(o,r.ch,r.sticky),s=o[l];if(s.from!=r.ch&&s.to!=r.ch)return t;var a,u=l+(s.from==r.ch==(1!=s.level)?0:1);if(0==u||u==o.length)return t;if(n.line!=r.line)a=(n.line-r.line)*(\"ltr\"==e.doc.direction?1:-1)>0;else{var c=ge(o,n.ch,n.sticky),h=c-l||(n.ch-r.ch)*(1==s.level?-1:1);a=c==u-1||c==u?h<0:h>0}var f=o[u+(a?-1:0)],d=a==(1==f.level),p=d?f.from:f.to,g=d?\"after\":\"before\";return r.ch==p&&r.sticky==g?t:new uo(new ut(r.line,p,g),n)}function As(e,t,r,n){var i,o;if(t.touches)i=t.touches[0].clientX,o=t.touches[0].clientY;else try{i=t.clientX,o=t.clientY}catch(f){return!1}if(i>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;n&&Me(t);var l=e.display,s=l.lineDiv.getBoundingClientRect();if(o>s.bottom||!ke(e,r))return Oe(t);o-=s.top-l.viewOffset;for(var a=0;a=i){var c=lt(e.doc,o),h=e.display.gutterSpecs[a];return Ce(e,r,e,c,h.className,t),Oe(t)}}}function Ds(e,t){return As(e,t,\"gutterClick\",!0)}function Ws(e,t){Yr(e.display,t)||Hs(e,t)||Se(e,t,\"contextmenu\")||L||e.display.input.onContextMenu(t)}function Hs(e,t){return!!ke(e,\"gutterContextMenu\")&&As(e,t,\"gutterContextMenu\",!1)}function Fs(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\\s*cm-s-\\S+/g,\"\")+e.options.theme.replace(/(^|\\s)\\s*/g,\" cm-s-\"),vn(e)}ws.prototype.compare=function(e,t,r){return this.time+bs>e&&0==ct(t,this.pos)&&r==this.button};var Ps={toString:function(){return\"CodeMirror.Init\"}},Es={},Rs={};function zs(e){var t=e.optionHandlers;function r(r,n,i,o){e.defaults[r]=n,i&&(t[r]=o?function(e,t,r){r!=Ps&&i(e,t,r)}:i)}e.defineOption=r,e.Init=Ps,r(\"value\",\"\",(function(e,t){return e.setValue(t)}),!0),r(\"mode\",null,(function(e,t){e.doc.modeOption=t,yo(e)}),!0),r(\"indentUnit\",2,yo,!0),r(\"indentWithTabs\",!1),r(\"smartIndent\",!0),r(\"tabSize\",4,(function(e){bo(e),vn(e),Gn(e)}),!0),r(\"lineSeparator\",null,(function(e,t){if(e.doc.lineSep=t,t){var r=[],n=e.doc.first;e.doc.iter((function(e){for(var i=0;;){var o=e.text.indexOf(t,i);if(-1==o)break;i=o+t.length,r.push(ut(n,o))}n++}));for(var i=r.length-1;i>=0;i--)al(e.doc,t,r[i],ut(r[i].line,r[i].ch+t.length))}})),r(\"specialChars\",/[\\u0000-\\u001f\\u007f-\\u009f\\u00ad\\u061c\\u200b\\u200e\\u200f\\u2028\\u2029\\u202d\\u202e\\u2066\\u2067\\u2069\\ufeff\\ufff9-\\ufffc]/g,(function(e,t,r){e.state.specialChars=new RegExp(t.source+(t.test(\"\\t\")?\"\":\"|\\t\"),\"g\"),r!=Ps&&e.refresh()})),r(\"specialCharPlaceholder\",br,(function(e){return e.refresh()}),!0),r(\"electricChars\",!0),r(\"inputStyle\",y?\"contenteditable\":\"textarea\",(function(){throw new Error(\"inputStyle can not (yet) be changed in a running editor\")}),!0),r(\"spellcheck\",!1,(function(e,t){return e.getInputField().spellcheck=t}),!0),r(\"autocorrect\",!1,(function(e,t){return e.getInputField().autocorrect=t}),!0),r(\"autocapitalize\",!1,(function(e,t){return e.getInputField().autocapitalize=t}),!0),r(\"rtlMoveVisually\",!x),r(\"wholeLineUpdateBefore\",!0),r(\"theme\",\"default\",(function(e){Fs(e),to(e)}),!0),r(\"keyMap\",\"default\",(function(e,t,r){var n=_l(t),i=r!=Ps&&_l(r);i&&i.detach&&i.detach(e,n),n.attach&&n.attach(e,i||null)})),r(\"extraKeys\",null),r(\"configureMouse\",null),r(\"lineWrapping\",!1,Bs,!0),r(\"gutters\",[],(function(e,t){e.display.gutterSpecs=Qi(t,e.options.lineNumbers),to(e)}),!0),r(\"fixedGutter\",!0,(function(e,t){e.display.gutters.style.left=t?En(e.display)+\"px\":\"0\",e.refresh()}),!0),r(\"coverGutterNextToScrollbar\",!1,(function(e){return Ci(e)}),!0),r(\"scrollbarStyle\",\"native\",(function(e){ki(e),Ci(e),e.display.scrollbars.setScrollTop(e.doc.scrollTop),e.display.scrollbars.setScrollLeft(e.doc.scrollLeft)}),!0),r(\"lineNumbers\",!1,(function(e,t){e.display.gutterSpecs=Qi(e.options.gutters,t),to(e)}),!0),r(\"firstLineNumber\",1,to,!0),r(\"lineNumberFormatter\",(function(e){return e}),to,!0),r(\"showCursorWhenSelecting\",!1,Yn,!0),r(\"resetSelectionOnContextMenu\",!0),r(\"lineWiseCopyCut\",!0),r(\"pasteLinesPerSelection\",!0),r(\"selectionsMayTouch\",!1),r(\"readOnly\",!1,(function(e,t){\"nocursor\"==t&&(ri(e),e.display.input.blur()),e.display.input.readOnlyChanged(t)})),r(\"screenReaderLabel\",null,(function(e,t){t=\"\"===t?null:t,e.display.input.screenReaderLabelChanged(t)})),r(\"disableInput\",!1,(function(e,t){t||e.display.input.reset()}),!0),r(\"dragDrop\",!0,Is),r(\"allowDropFileTypes\",null),r(\"cursorBlinkRate\",530),r(\"cursorScrollMargin\",0),r(\"cursorHeight\",1,Yn,!0),r(\"singleCursorHeightPerLine\",!0,Yn,!0),r(\"workTime\",100),r(\"workDelay\",100),r(\"flattenSpans\",!0,bo,!0),r(\"addModeClass\",!1,bo,!0),r(\"pollInterval\",100),r(\"undoDepth\",200,(function(e,t){return e.doc.history.undoDepth=t})),r(\"historyEventDelay\",1250),r(\"viewportMargin\",10,(function(e){return e.refresh()}),!0),r(\"maxHighlightLength\",1e4,bo,!0),r(\"moveInputWithCursor\",!0,(function(e,t){t||e.display.input.resetPosition()})),r(\"tabindex\",null,(function(e,t){return e.display.input.getField().tabIndex=t||\"\"})),r(\"autofocus\",null),r(\"direction\",\"ltr\",(function(e,t){return e.doc.setDirection(t)}),!0),r(\"phrases\",null)}function Is(e,t,r){var n=r&&r!=Ps;if(!t!=!n){var i=e.display.dragFunctions,o=t?be:xe;o(e.display.scroller,\"dragstart\",i.start),o(e.display.scroller,\"dragenter\",i.enter),o(e.display.scroller,\"dragover\",i.over),o(e.display.scroller,\"dragleave\",i.leave),o(e.display.scroller,\"drop\",i.drop)}}function Bs(e){e.options.lineWrapping?(F(e.display.wrapper,\"CodeMirror-wrap\"),e.display.sizer.style.minWidth=\"\",e.display.sizerWidth=null):(M(e.display.wrapper,\"CodeMirror-wrap\"),hr(e)),zn(e),Gn(e),vn(e),setTimeout((function(){return Ci(e)}),100)}function Gs(e,t){var r=this;if(!(this instanceof Gs))return new Gs(e,t);this.options=t=t?U(t):{},U(Es,t,!1);var n=t.value;\"string\"==typeof n?n=new Ml(n,t.mode,null,t.lineSeparator,t.direction):t.mode&&(n.modeOption=t.mode),this.doc=n;var i=new Gs.inputStyles[t.inputStyle](this),o=this.display=new ro(e,n,i,t);for(var u in o.wrapper.CodeMirror=this,Fs(this),t.lineWrapping&&(this.display.wrapper.className+=\" CodeMirror-wrap\"),ki(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new K,keySeq:null,specialChars:null},t.autofocus&&!y&&o.input.focus(),l&&s<11&&setTimeout((function(){return r.display.input.reset(!0)}),20),Us(this),Pl(),Mi(this),this.curOp.forceUpdate=!0,So(this,n),t.autofocus&&!y||this.hasFocus()?setTimeout((function(){r.hasFocus()&&!r.state.focused&&ti(r)}),20):ri(this),Rs)Rs.hasOwnProperty(u)&&Rs[u](this,t[u],Ps);Ji(this),t.finishInit&&t.finishInit(this);for(var c=0;c400}be(t.scroller,\"touchstart\",(function(i){if(!Se(e,i)&&!o(i)&&!Ds(e,i)){t.input.ensurePolled(),clearTimeout(r);var l=+new Date;t.activeTouch={start:l,moved:!1,prev:l-n.end<=300?n:null},1==i.touches.length&&(t.activeTouch.left=i.touches[0].pageX,t.activeTouch.top=i.touches[0].pageY)}})),be(t.scroller,\"touchmove\",(function(){t.activeTouch&&(t.activeTouch.moved=!0)})),be(t.scroller,\"touchend\",(function(r){var n=t.activeTouch;if(n&&!Yr(t,r)&&null!=n.left&&!n.moved&&new Date-n.start<300){var o,l=e.coordsChar(t.activeTouch,\"page\");o=!n.prev||a(n,n.prev)?new uo(l,l):!n.prev.prev||a(n,n.prev.prev)?e.findWordAt(l):new uo(ut(l.line,0),vt(e.doc,ut(l.line+1,0))),e.setSelection(o.anchor,o.head),e.focus(),Me(r)}i()})),be(t.scroller,\"touchcancel\",i),be(t.scroller,\"scroll\",(function(){t.scroller.clientHeight&&(vi(e,t.scroller.scrollTop),yi(e,t.scroller.scrollLeft,!0),Ce(e,\"scroll\",e))})),be(t.scroller,\"mousewheel\",(function(t){return so(e,t)})),be(t.scroller,\"DOMMouseScroll\",(function(t){return so(e,t)})),be(t.wrapper,\"scroll\",(function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0})),t.dragFunctions={enter:function(t){Se(e,t)||Ae(t)},over:function(t){Se(e,t)||(Dl(e,t),Ae(t))},start:function(t){return Al(e,t)},drop:Ei(e,Ol),leave:function(t){Se(e,t)||Wl(e)}};var u=t.input.getField();be(u,\"keyup\",(function(t){return gs.call(e,t)})),be(u,\"keydown\",Ei(e,ds)),be(u,\"keypress\",Ei(e,vs)),be(u,\"focus\",(function(t){return ti(e,t)})),be(u,\"blur\",(function(t){return ri(e,t)}))}Gs.defaults=Es,Gs.optionHandlers=Rs;var Vs=[];function Ks(e,t,r,n){var i,o=e.doc;null==r&&(r=\"add\"),\"smart\"==r&&(o.mode.indent?i=St(e,t).state:r=\"prev\");var l=e.options.tabSize,s=tt(o,t),a=V(s.text,null,l);s.stateAfter&&(s.stateAfter=null);var u,c=s.text.match(/^\\s*/)[0];if(n||/\\S/.test(s.text)){if(\"smart\"==r&&(u=o.mode.indent(i,s.text.slice(c.length),s.text),u==Y||u>150)){if(!n)return;r=\"prev\"}}else u=0,r=\"not\";\"prev\"==r?u=t>o.first?V(tt(o,t-1).text,null,l):0:\"add\"==r?u=a+e.options.indentUnit:\"subtract\"==r?u=a-e.options.indentUnit:\"number\"==typeof r&&(u=a+r),u=Math.max(0,u);var h=\"\",f=0;if(e.options.indentWithTabs)for(var d=Math.floor(u/l);d;--d)f+=l,h+=\"\\t\";if(fl,a=ze(t),u=null;if(s&&n.ranges.length>1)if(js&&js.text.join(\"\\n\")==t){if(n.ranges.length%js.text.length==0){u=[];for(var c=0;c=0;f--){var d=n.ranges[f],p=d.from(),g=d.to();d.empty()&&(r&&r>0?p=ut(p.line,p.ch-r):e.state.overwrite&&!s?g=ut(g.line,Math.min(tt(o,g.line).text.length,g.ch+ee(a).length)):s&&js&&js.lineWise&&js.text.join(\"\\n\")==a.join(\"\\n\")&&(p=g=ut(p.line,0)));var v={from:p,to:g,text:u?u[f%u.length]:a,origin:i||(s?\"paste\":e.state.cutIncoming>l?\"cut\":\"+input\")};rl(e.doc,v),Wr(e,\"inputRead\",e,v)}t&&!s&&_s(e,t),hi(e),e.curOp.updateInput<2&&(e.curOp.updateInput=h),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function $s(e,t){var r=e.clipboardData&&e.clipboardData.getData(\"Text\");if(r)return e.preventDefault(),t.isReadOnly()||t.options.disableInput||!t.hasFocus()||Pi(t,(function(){return Ys(t,r,0,null,\"paste\")})),!0}function _s(e,t){if(e.options.electricChars&&e.options.smartIndent)for(var r=e.doc.sel,n=r.ranges.length-1;n>=0;n--){var i=r.ranges[n];if(!(i.head.ch>100||n&&r.ranges[n-1].head.line==i.head.line)){var o=e.getModeAt(i.head),l=!1;if(o.electricChars){for(var s=0;s-1){l=Ks(e,i.head.line,\"smart\");break}}else o.electricInput&&o.electricInput.test(tt(e.doc,i.head.line).text.slice(0,i.head.ch))&&(l=Ks(e,i.head.line,\"smart\"));l&&Wr(e,\"electricInput\",e,i.head.line)}}}function qs(e){for(var t=[],r=[],n=0;nr&&(Ks(this,i.head.line,e,!0),r=i.head.line,n==this.doc.sel.primIndex&&hi(this));else{var o=i.from(),l=i.to(),s=Math.max(r,o.line);r=Math.min(this.lastLine(),l.line-(l.ch?0:1))+1;for(var a=s;a0&&Uo(this.doc,n,new uo(o,u[n].to()),$)}}})),getTokenAt:function(e,t){return Nt(this,e,t)},getLineTokens:function(e,t){return Nt(this,ut(e),t,!0)},getTokenTypeAt:function(e){e=vt(this.doc,e);var t,r=Ct(this,tt(this.doc,e.line)),n=0,i=(r.length-1)/2,o=e.ch;if(0==o)t=r[2];else for(;;){var l=n+i>>1;if((l?r[2*l-1]:0)>=o)i=l;else{if(!(r[2*l+1]o&&(e=o,i=!0),n=tt(this.doc,e)}else n=e;return wn(this,n,{top:0,left:0},t||\"page\",r||i).top+(i?this.doc.height-ur(n):0)},defaultTextHeight:function(){return Hn(this.display)},defaultCharWidth:function(){return Fn(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(e,t,r,n,i){var o=this.display;e=Sn(this,vt(this.doc,e));var l=e.bottom,s=e.left;if(t.style.position=\"absolute\",t.setAttribute(\"cm-ignore-events\",\"true\"),this.display.input.setUneditable(t),o.sizer.appendChild(t),\"over\"==n)l=e.top;else if(\"above\"==n||\"near\"==n){var a=Math.max(o.wrapper.clientHeight,this.doc.height),u=Math.max(o.sizer.clientWidth,o.lineSpace.clientWidth);(\"above\"==n||e.bottom+t.offsetHeight>a)&&e.top>t.offsetHeight?l=e.top-t.offsetHeight:e.bottom+t.offsetHeight<=a&&(l=e.bottom),s+t.offsetWidth>u&&(s=u-t.offsetWidth)}t.style.top=l+\"px\",t.style.left=t.style.right=\"\",\"right\"==i?(s=o.sizer.clientWidth-t.offsetWidth,t.style.right=\"0px\"):(\"left\"==i?s=0:\"middle\"==i&&(s=(o.sizer.clientWidth-t.offsetWidth)/2),t.style.left=s+\"px\"),r&&ai(this,{left:s,top:l,right:s+t.offsetWidth,bottom:l+t.offsetHeight})},triggerOnKeyDown:Ri(ds),triggerOnKeyPress:Ri(vs),triggerOnKeyUp:gs,triggerOnMouseDown:Ri(Cs),execCommand:function(e){if(ts.hasOwnProperty(e))return ts[e].call(null,this)},triggerElectric:Ri((function(e){_s(this,e)})),findPosH:function(e,t,r,n){var i=1;t<0&&(i=-1,t=-t);for(var o=vt(this.doc,e),l=0;l0&&s(r.charAt(n-1)))--n;while(i.5||this.options.lineWrapping)&&zn(this),Ce(this,\"refresh\",this)})),swapDoc:Ri((function(e){var t=this.doc;return t.cm=null,this.state.selectingText&&this.state.selectingText(),So(this,e),vn(this),this.display.input.reset(),fi(this,e.scrollLeft,e.scrollTop),this.curOp.forceScroll=!0,Wr(this,\"swapDoc\",this,t),t})),phrase:function(e){var t=this.options.phrases;return t&&Object.prototype.hasOwnProperty.call(t,e)?t[e]:e},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},Te(e),e.registerHelper=function(t,n,i){r.hasOwnProperty(t)||(r[t]=e[t]={_global:[]}),r[t][n]=i},e.registerGlobalHelper=function(t,n,i,o){e.registerHelper(t,n,o),r[t]._global.push({pred:i,val:o})}}function ea(e,t,r,n,i){var o=t,l=r,s=tt(e,t.line),a=i&&\"rtl\"==e.direction?-r:r;function u(){var r=t.line+a;return!(r=e.first+e.size)&&(t=new ut(r,t.ch,t.sticky),s=tt(e,r))}function c(o){var l;if(\"codepoint\"==n){var c=s.text.charCodeAt(t.ch+(r>0?0:-1));if(isNaN(c))l=null;else{var h=r>0?c>=55296&&c<56320:c>=56320&&c<57343;l=new ut(t.line,Math.max(0,Math.min(s.text.length,t.ch+r*(h?2:1))),-r)}}else l=i?es(e.cm,s,t,r):Jl(s,t,r);if(null==l){if(o||!u())return!1;t=Ql(i,e.cm,s,t.line,a)}else t=l;return!0}if(\"char\"==n||\"codepoint\"==n)c();else if(\"column\"==n)c(!0);else if(\"word\"==n||\"group\"==n)for(var h=null,f=\"group\"==n,d=e.cm&&e.cm.getHelper(t,\"wordChars\"),p=!0;;p=!1){if(r<0&&!c(!p))break;var g=s.text.charAt(t.ch)||\"\\n\",v=se(g,d)?\"w\":f&&\"\\n\"==g?\"n\":!f||/\\s/.test(g)?null:\"p\";if(!f||p||v||(v=\"s\"),h&&h!=v){r<0&&(r=1,c(),t.sticky=\"after\");break}if(v&&(h=v),r>0&&!c(!p))break}var m=Jo(e,t,o,l,!0);return ht(o,m)&&(m.hitSide=!0),m}function ta(e,t,r,n){var i,o,l=e.doc,s=t.left;if(\"page\"==n){var a=Math.min(e.display.wrapper.clientHeight,B(e).innerHeight||l(e).documentElement.clientHeight),u=Math.max(a-.5*Hn(e.display),3);i=(r>0?t.bottom:t.top)+r*u}else\"line\"==n&&(i=r>0?t.bottom+3:t.top-3);for(;;){if(o=Tn(e,s,i),!o.outside)break;if(r<0?i<=0:i>=l.height){o.hitSide=!0;break}i+=5*r}return o}var ra=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new K,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};function na(e,t){var r=on(e,t.line);if(!r||r.hidden)return null;var n=tt(e.doc,t.line),i=tn(r,n,t.line),o=me(n,e.doc.direction),l=\"left\";if(o){var s=ge(o,t.ch);l=s%2?\"right\":\"left\"}var a=cn(i.map,t.ch,l);return a.offset=\"right\"==a.collapse?a.end:a.start,a}function ia(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function oa(e,t){return t&&(e.bad=!0),e}function la(e,t,r,n,i){var o=\"\",l=!1,s=e.doc.lineSeparator(),a=!1;function u(e){return function(t){return t.id==e}}function c(){l&&(o+=s,a&&(o+=s),l=a=!1)}function h(e){e&&(c(),o+=e)}function f(t){if(1==t.nodeType){var r=t.getAttribute(\"cm-text\");if(r)return void h(r);var o,d=t.getAttribute(\"cm-marker\");if(d){var p=e.findMarks(ut(n,0),ut(i+1,0),u(+d));return void(p.length&&(o=p[0].find(0))&&h(rt(e.doc,o.from,o.to).join(s)))}if(\"false\"==t.getAttribute(\"contenteditable\"))return;var g=/^(pre|div|p|li|table|br)$/i.test(t.nodeName);if(!/^br$/i.test(t.nodeName)&&0==t.textContent.length)return;g&&c();for(var v=0;v=t.display.viewTo||o.line=t.display.viewFrom&&na(t,i)||{node:a[0].measure.map[2],offset:0},c=o.linen.firstLine()&&(l=ut(l.line-1,tt(n.doc,l.line-1).length)),s.ch==tt(n.doc,s.line).text.length&&s.linei.viewTo-1)return!1;l.line==i.viewFrom||0==(e=Bn(n,l.line))?(t=ot(i.view[0].line),r=i.view[0].node):(t=ot(i.view[e].line),r=i.view[e-1].node.nextSibling);var a,u,c=Bn(n,s.line);if(c==i.view.length-1?(a=i.viewTo-1,u=i.lineDiv.lastChild):(a=ot(i.view[c+1].line)-1,u=i.view[c+1].node.previousSibling),!r)return!1;var h=n.doc.splitLines(la(n,r,u,t,a)),f=rt(n.doc,ut(t,0),ut(a,tt(n.doc,a).text.length));while(h.length>1&&f.length>1)if(ee(h)==ee(f))h.pop(),f.pop(),a--;else{if(h[0]!=f[0])break;h.shift(),f.shift(),t++}var d=0,p=0,g=h[0],v=f[0],m=Math.min(g.length,v.length);while(dl.ch&&y.charCodeAt(y.length-p-1)==b.charCodeAt(b.length-p-1))d--,p++;h[h.length-1]=y.slice(0,y.length-p).replace(/^\\u200b+/,\"\"),h[0]=h[0].slice(d).replace(/\\u200b+$/,\"\");var x=ut(t,d),C=ut(a,f.length?ee(f).length-p:0);return h.length>1||h[0]||ct(x,C)?(al(n.doc,h,x,C,\"+input\"),!0):void 0},ra.prototype.ensurePolled=function(){this.forceCompositionEnd()},ra.prototype.reset=function(){this.forceCompositionEnd()},ra.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},ra.prototype.readFromDOMSoon=function(){var e=this;null==this.readDOMTimeout&&(this.readDOMTimeout=setTimeout((function(){if(e.readDOMTimeout=null,e.composing){if(!e.composing.done)return;e.composing=null}e.updateFromDOM()}),80))},ra.prototype.updateFromDOM=function(){var e=this;!this.cm.isReadOnly()&&this.pollContent()||Pi(this.cm,(function(){return Gn(e.cm)}))},ra.prototype.setUneditable=function(e){e.contentEditable=\"false\"},ra.prototype.onKeyPress=function(e){0==e.charCode||this.composing||(e.preventDefault(),this.cm.isReadOnly()||Ei(this.cm,Ys)(this.cm,String.fromCharCode(null==e.charCode?e.keyCode:e.charCode),0))},ra.prototype.readOnlyChanged=function(e){this.div.contentEditable=String(\"nocursor\"!=e)},ra.prototype.onContextMenu=function(){},ra.prototype.resetPosition=function(){},ra.prototype.needsContentAttribute=!0;var ua=function(e){this.cm=e,this.prevInput=\"\",this.pollingFast=!1,this.polling=new K,this.hasSelection=!1,this.composing=null,this.resetting=!1};function ca(e,t){if(t=t?U(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),null==t.autofocus){var r=H(I(e));t.autofocus=r==e||null!=e.getAttribute(\"autofocus\")&&r==document.body}function n(){e.value=s.getValue()}var i;if(e.form&&(be(e.form,\"submit\",n),!t.leaveSubmitMethodAlone)){var o=e.form;i=o.submit;try{var l=o.submit=function(){n(),o.submit=i,o.submit(),o.submit=l}}catch(a){}}t.finishInit=function(r){r.save=n,r.getTextArea=function(){return e},r.toTextArea=function(){r.toTextArea=isNaN,n(),e.parentNode.removeChild(r.getWrapperElement()),e.style.display=\"\",e.form&&(xe(e.form,\"submit\",n),t.leaveSubmitMethodAlone||\"function\"!=typeof e.form.submit||(e.form.submit=i))}},e.style.display=\"none\";var s=Gs((function(t){return e.parentNode.insertBefore(t,e.nextSibling)}),t);return s}function ha(e){e.off=xe,e.on=be,e.wheelEventPixels=lo,e.Doc=Ml,e.splitLines=ze,e.countColumn=V,e.findColumn=Z,e.isWordChar=le,e.Pass=Y,e.signal=Ce,e.Line=fr,e.changeEnd=fo,e.scrollbarModel=Li,e.Pos=ut,e.cmpPos=ct,e.modes=Ve,e.mimeModes=Ke,e.resolveMode=Ye,e.getMode=$e,e.modeExtensions=_e,e.extendMode=qe,e.copyState=Ze,e.startState=Qe,e.innerMode=Je,e.commands=ts,e.keyMap=Ul,e.keyName=$l,e.isModifierKey=Xl,e.lookupKey=jl,e.normalizeKeyMap=Kl,e.StringStream=et,e.SharedTextMarker=xl,e.TextMarker=bl,e.LineWidget=gl,e.e_preventDefault=Me,e.e_stopPropagation=Ne,e.e_stop=Ae,e.addClass=F,e.contains=W,e.rmClass=M,e.keyNames=zl}ua.prototype.init=function(e){var t=this,r=this,n=this.cm;this.createField(e);var i=this.textarea;function o(e){if(!Se(n,e)){if(n.somethingSelected())Xs({lineWise:!1,text:n.getSelections()});else{if(!n.options.lineWiseCopyCut)return;var t=qs(n);Xs({lineWise:!0,text:t.text}),\"cut\"==e.type?n.setSelections(t.ranges,null,$):(r.prevInput=\"\",i.value=t.text.join(\"\\n\"),E(i))}\"cut\"==e.type&&(n.state.cutIncoming=+new Date)}}e.wrapper.insertBefore(this.wrapper,e.wrapper.firstChild),v&&(i.style.width=\"0px\"),be(i,\"input\",(function(){l&&s>=9&&t.hasSelection&&(t.hasSelection=null),r.poll()})),be(i,\"paste\",(function(e){Se(n,e)||$s(e,n)||(n.state.pasteIncoming=+new Date,r.fastPoll())})),be(i,\"cut\",o),be(i,\"copy\",o),be(e.scroller,\"paste\",(function(t){if(!Yr(e,t)&&!Se(n,t)){if(!i.dispatchEvent)return n.state.pasteIncoming=+new Date,void r.focus();var o=new Event(\"paste\");o.clipboardData=t.clipboardData,i.dispatchEvent(o)}})),be(e.lineSpace,\"selectstart\",(function(t){Yr(e,t)||Me(t)})),be(i,\"compositionstart\",(function(){var e=n.getCursor(\"from\");r.composing&&r.composing.range.clear(),r.composing={start:e,range:n.markText(e,n.getCursor(\"to\"),{className:\"CodeMirror-composing\"})}})),be(i,\"compositionend\",(function(){r.composing&&(r.poll(),r.composing.range.clear(),r.composing=null)}))},ua.prototype.createField=function(e){this.wrapper=Js(),this.textarea=this.wrapper.firstChild;var t=this.cm.options;Zs(this.textarea,t.spellcheck,t.autocorrect,t.autocapitalize)},ua.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute(\"aria-label\",e):this.textarea.removeAttribute(\"aria-label\")},ua.prototype.prepareSelection=function(){var e=this.cm,t=e.display,r=e.doc,n=$n(e);if(e.options.moveInputWithCursor){var i=Sn(e,r.sel.primary().head,\"div\"),o=t.wrapper.getBoundingClientRect(),l=t.lineDiv.getBoundingClientRect();n.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,i.top+l.top-o.top)),n.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,i.left+l.left-o.left))}return n},ua.prototype.showSelection=function(e){var t=this.cm,r=t.display;O(r.cursorDiv,e.cursors),O(r.selectionDiv,e.selection),null!=e.teTop&&(this.wrapper.style.top=e.teTop+\"px\",this.wrapper.style.left=e.teLeft+\"px\")},ua.prototype.reset=function(e){if(!(this.contextMenuPending||this.composing&&e)){var t=this.cm;if(this.resetting=!0,t.somethingSelected()){this.prevInput=\"\";var r=t.getSelection();this.textarea.value=r,t.state.focused&&E(this.textarea),l&&s>=9&&(this.hasSelection=r)}else e||(this.prevInput=this.textarea.value=\"\",l&&s>=9&&(this.hasSelection=null));this.resetting=!1}},ua.prototype.getField=function(){return this.textarea},ua.prototype.supportsTouch=function(){return!1},ua.prototype.focus=function(){if(\"nocursor\"!=this.cm.options.readOnly&&(!y||H(I(this.textarea))!=this.textarea))try{this.textarea.focus()}catch(e){}},ua.prototype.blur=function(){this.textarea.blur()},ua.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},ua.prototype.receivedFocus=function(){this.slowPoll()},ua.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,(function(){e.poll(),e.cm.state.focused&&e.slowPoll()}))},ua.prototype.fastPoll=function(){var e=!1,t=this;function r(){var n=t.poll();n||e?(t.pollingFast=!1,t.slowPoll()):(e=!0,t.polling.set(60,r))}t.pollingFast=!0,t.polling.set(20,r)},ua.prototype.poll=function(){var e=this,t=this.cm,r=this.textarea,n=this.prevInput;if(this.contextMenuPending||this.resetting||!t.state.focused||Ie(r)&&!n&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var i=r.value;if(i==n&&!t.somethingSelected())return!1;if(l&&s>=9&&this.hasSelection===i||b&&/[\\uf700-\\uf7ff]/.test(i))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var o=i.charCodeAt(0);if(8203!=o||n||(n=\"​\"),8666==o)return this.reset(),this.cm.execCommand(\"undo\")}var a=0,u=Math.min(n.length,i.length);while(a1e3||i.indexOf(\"\\n\")>-1?r.value=e.prevInput=\"\":e.prevInput=i,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor(\"to\"),{className:\"CodeMirror-composing\"}))})),!0},ua.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},ua.prototype.onKeyPress=function(){l&&s>=9&&(this.hasSelection=null),this.fastPoll()},ua.prototype.onContextMenu=function(e){var t=this,r=t.cm,n=r.display,i=t.textarea;t.contextMenuPending&&t.contextMenuPending();var o=In(r,e),u=n.scroller.scrollTop;if(o&&!f){var c=r.options.resetSelectionOnContextMenu;c&&-1==r.doc.sel.contains(o)&&Ei(r,Xo)(r.doc,ho(o),$);var h,d=i.style.cssText,p=t.wrapper.style.cssText,g=t.wrapper.offsetParent.getBoundingClientRect();if(t.wrapper.style.cssText=\"position: static\",i.style.cssText=\"position: absolute; width: 30px; height: 30px;\\n top: \"+(e.clientY-g.top-5)+\"px; left: \"+(e.clientX-g.left-5)+\"px;\\n z-index: 1000; background: \"+(l?\"rgba(255, 255, 255, .05)\":\"transparent\")+\";\\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);\",a&&(h=i.ownerDocument.defaultView.scrollY),n.input.focus(),a&&i.ownerDocument.defaultView.scrollTo(null,h),n.input.reset(),r.somethingSelected()||(i.value=t.prevInput=\" \"),t.contextMenuPending=y,n.selForContextMenu=r.doc.sel,clearTimeout(n.detectingSelectAll),l&&s>=9&&m(),L){Ae(e);var v=function(){xe(window,\"mouseup\",v),setTimeout(y,20)};be(window,\"mouseup\",v)}else setTimeout(y,50)}function m(){if(null!=i.selectionStart){var e=r.somethingSelected(),o=\"​\"+(e?i.value:\"\");i.value=\"⇚\",i.value=o,t.prevInput=e?\"\":\"​\",i.selectionStart=1,i.selectionEnd=o.length,n.selForContextMenu=r.doc.sel}}function y(){if(t.contextMenuPending==y&&(t.contextMenuPending=!1,t.wrapper.style.cssText=p,i.style.cssText=d,l&&s<9&&n.scrollbars.setScrollTop(n.scroller.scrollTop=u),null!=i.selectionStart)){(!l||l&&s<9)&&m();var e=0,o=function(){n.selForContextMenu==r.doc.sel&&0==i.selectionStart&&i.selectionEnd>0&&\"​\"==t.prevInput?Ei(r,el)(r):e++<10?n.detectingSelectAll=setTimeout(o,500):(n.selForContextMenu=null,n.input.reset())};n.detectingSelectAll=setTimeout(o,200)}}},ua.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled=\"nocursor\"==e,this.textarea.readOnly=!!e},ua.prototype.setUneditable=function(){},ua.prototype.needsContentAttribute=!1,zs(Gs),Qs(Gs);var fa=\"iter insert remove copy getEditor constructor\".split(\" \");for(var da in Ml.prototype)Ml.prototype.hasOwnProperty(da)&&j(fa,da)<0&&(Gs.prototype[da]=function(e){return function(){return e.apply(this.doc,arguments)}}(Ml.prototype[da]));return Te(Ml),Gs.inputStyles={textarea:ua,contenteditable:ra},Gs.defineMode=function(e){Gs.defaults.mode||\"null\"==e||(Gs.defaults.mode=e),je.apply(this,arguments)},Gs.defineMIME=Xe,Gs.defineMode(\"null\",(function(){return{token:function(e){return e.skipToEnd()}}})),Gs.defineMIME(\"text/plain\",\"null\"),Gs.defineExtension=function(e,t){Gs.prototype[e]=t},Gs.defineDocExtension=function(e,t){Ml.prototype[e]=t},Gs.fromTextArea=ca,ha(Gs),Gs.version=\"5.65.18\",Gs}))}}]);","extractedComments":[]}