~ K A L I ~
UNAME : Linux web63.extendcp.co.uk 4.18.0-553.56.1.el8_10.x86_64 #1 SMP Tue Jun 10 05:00:59 EDT 2025 x86_64SERVER IP : 10.0.187.63 -________-
CLIENT IP : 216.73.216.230 MINI SHELL D ZAB '
Current File : //usr/share/maxscale/gui/js/npm.monaco-editor~a0249eb0.01e3704e.js |
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["npm.monaco-editor~a0249eb0"],{"0254":function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));class i{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function r(e,t,n,i,r){let s;for(r.spacesDiff=0,r.looksLikeAlignment=!1,s=0;s<t&&s<i;s++){const t=e.charCodeAt(s),i=n.charCodeAt(s);if(t!==i)break}let a=0,l=0;for(let c=s;c<t;c++){const t=e.charCodeAt(c);32===t?a++:l++}let o=0,h=0;for(let c=s;c<i;c++){const e=n.charCodeAt(c);32===e?o++:h++}if(a>0&&l>0)return;if(o>0&&h>0)return;const f=Math.abs(l-h),u=Math.abs(a-o);if(0===f)return r.spacesDiff=u,void(u>0&&0<=o-1&&o-1<e.length&&o<n.length&&32!==n.charCodeAt(o)&&32===e.charCodeAt(o-1)&&44===e.charCodeAt(e.length-1)&&(r.looksLikeAlignment=!0));u%f!==0||(r.spacesDiff=u/f)}function s(e,t,n){const s=Math.min(e.getLineCount(),1e4);let a=0,l=0,o="",h=0;const f=[2,4,6,8,3,5,7],u=8,c=[0,0,0,0,0,0,0,0,0],d=new i;for(let i=1;i<=s;i++){const s=e.getLineLength(i),f=e.getLineContent(i),g=s<=65536;let p=!1,m=0,_=0,b=0;for(let t=0,n=s;t<n;t++){const n=g?f.charCodeAt(t):e.getLineCharCode(i,t);if(9===n)b++;else{if(32!==n){p=!0,m=t;break}_++}}if(!p)continue;if(b>0?a++:_>1&&l++,r(o,h,f,m,d),d.looksLikeAlignment&&(!n||t!==d.spacesDiff))continue;const C=d.spacesDiff;C<=u&&c[C]++,o=f,h=m}let g=n;a!==l&&(g=a<l);let p=t;if(g){let e=g?0:.1*s;f.forEach(t=>{const n=c[t];n>e&&(e=n,p=t)}),4===p&&c[4]>0&&c[2]>0&&c[2]>=c[4]/2&&(p=2)}return{insertSpaces:g,tabSize:p}}},"2cb5":function(e,t,n){"use strict";function i(e){return(1&e.metadata)>>>0}function r(e,t){e.metadata=254&e.metadata|t<<0}function s(e){return(2&e.metadata)>>>1===1}function a(e,t){e.metadata=253&e.metadata|(t?1:0)<<1}function l(e){return(4&e.metadata)>>>2===1}function o(e,t){e.metadata=251&e.metadata|(t?1:0)<<2}function h(e){return(24&e.metadata)>>>3}function f(e,t){e.metadata=231&e.metadata|t<<3}function u(e){return(32&e.metadata)>>>5===1}function c(e,t){e.metadata=223&e.metadata|(t?1:0)<<5}n.d(t,"a",(function(){return d})),n.d(t,"b",(function(){return p})),n.d(t,"c",(function(){return M}));class d{constructor(e,t,n){this.metadata=0,this.parent=this,this.left=this,this.right=this,r(this,1),this.start=t,this.end=n,this.delta=0,this.maxEnd=n,this.id=e,this.ownerId=0,this.options=null,o(this,!1),f(this,1),c(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=n,this.range=null,a(this,!1)}reset(e,t,n,i){this.start=t,this.end=n,this.maxEnd=n,this.cachedVersionId=e,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=n,this.range=i}setOptions(e){this.options=e;const t=this.options.className;o(this,"squiggly-error"===t||"squiggly-warning"===t||"squiggly-info"===t),f(this,this.options.stickiness),c(this,this.options.collapseOnReplaceEdit)}setCachedOffsets(e,t,n){this.cachedVersionId!==n&&(this.range=null),this.cachedVersionId=n,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=t}detach(){this.parent=null,this.left=null,this.right=null}}const g=new d(null,0,0);g.parent=g,g.left=g,g.right=g,r(g,0);class p{constructor(){this.root=g,this.requestNormalizeDelta=!1}intervalSearch(e,t,n,i,r){return this.root===g?[]:N(this,e,t,n,i,r)}search(e,t,n){return this.root===g?[]:S(this,e,t,n)}collectNodesFromOwner(e){return I(this,e)}collectNodesPostOrder(){return x(this)}insert(e){v(this,e),this._normalizeDeltaIfNecessary()}delete(e){O(this,e),this._normalizeDeltaIfNecessary()}resolveNode(e,t){const n=e;let i=0;while(e!==this.root)e===e.parent.right&&(i+=e.parent.delta),e=e.parent;const r=n.start+i,s=n.end+i;n.setCachedOffsets(r,s,t)}acceptReplace(e,t,n,i){const r=C(this,e,e+t);for(let s=0,a=r.length;s<a;s++){const e=r[s];O(this,e)}this._normalizeDeltaIfNecessary(),L(this,e,e+t,n),this._normalizeDeltaIfNecessary();for(let s=0,a=r.length;s<a;s++){const a=r[s];a.start=a.cachedAbsoluteStart,a.end=a.cachedAbsoluteEnd,b(a,e,e+t,n,i),a.maxEnd=a.end,v(this,a)}this._normalizeDeltaIfNecessary()}_normalizeDeltaIfNecessary(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,m(this))}}function m(e){let t=e.root,n=0;while(t!==g)t.left===g||s(t.left)?t.right===g||s(t.right)?(t.start=n+t.start,t.end=n+t.end,t.delta=0,M(t),a(t,!0),a(t.left,!1),a(t.right,!1),t===t.parent.right&&(n-=t.parent.delta),t=t.parent):(n+=t.delta,t=t.right):t=t.left;a(e.root,!1)}function _(e,t,n,i){return e<n||!(e>n)&&(1!==i&&(2===i||t))}function b(e,t,n,i,r){const s=h(e),a=0===s||2===s,l=1===s||2===s,o=n-t,f=i,c=Math.min(o,f),d=e.start;let g=!1;const p=e.end;let m=!1;t<=d&&p<=n&&u(e)&&(e.start=t,g=!0,e.end=t,m=!0);{const e=r?1:o>0?2:0;!g&&_(d,a,t,e)&&(g=!0),!m&&_(p,l,t,e)&&(m=!0)}if(c>0&&!r){const e=o>f?2:0;!g&&_(d,a,t+c,e)&&(g=!0),!m&&_(p,l,t+c,e)&&(m=!0)}{const i=r?1:0;!g&&_(d,a,n,i)&&(e.start=t+f,g=!0),!m&&_(p,l,n,i)&&(e.end=t+f,m=!0)}const b=f-o;g||(e.start=Math.max(0,d+b)),m||(e.end=Math.max(0,p+b)),e.start>e.end&&(e.end=e.start)}function C(e,t,n){let i=e.root,r=0,l=0,o=0,h=0;const f=[];let u=0;while(i!==g)if(s(i))a(i.left,!1),a(i.right,!1),i===i.parent.right&&(r-=i.parent.delta),i=i.parent;else{if(!s(i.left)){if(l=r+i.maxEnd,l<t){a(i,!0);continue}if(i.left!==g){i=i.left;continue}}o=r+i.start,o>n?a(i,!0):(h=r+i.end,h>=t&&(i.setCachedOffsets(o,h,0),f[u++]=i),a(i,!0),i.right===g||s(i.right)||(r+=i.delta,i=i.right))}return a(e.root,!1),f}function L(e,t,n,i){let r=e.root,l=0,o=0,h=0;const f=i-(n-t);while(r!==g)if(s(r))a(r.left,!1),a(r.right,!1),r===r.parent.right&&(l-=r.parent.delta),M(r),r=r.parent;else{if(!s(r.left)){if(o=l+r.maxEnd,o<t){a(r,!0);continue}if(r.left!==g){r=r.left;continue}}h=l+r.start,h>n?(r.start+=f,r.end+=f,r.delta+=f,(r.delta<-1073741824||r.delta>1073741824)&&(e.requestNormalizeDelta=!0),a(r,!0)):(a(r,!0),r.right===g||s(r.right)||(l+=r.delta,r=r.right))}a(e.root,!1)}function I(e,t){let n=e.root;const i=[];let r=0;while(n!==g)s(n)?(a(n.left,!1),a(n.right,!1),n=n.parent):n.left===g||s(n.left)?(n.ownerId===t&&(i[r++]=n),a(n,!0),n.right===g||s(n.right)||(n=n.right)):n=n.left;return a(e.root,!1),i}function x(e){let t=e.root;const n=[];let i=0;while(t!==g)s(t)?(a(t.left,!1),a(t.right,!1),t=t.parent):t.left===g||s(t.left)?t.right===g||s(t.right)?(n[i++]=t,a(t,!0)):t=t.right:t=t.left;return a(e.root,!1),n}function S(e,t,n,i){let r=e.root,o=0,h=0,f=0;const u=[];let c=0;while(r!==g){if(s(r)){a(r.left,!1),a(r.right,!1),r===r.parent.right&&(o-=r.parent.delta),r=r.parent;continue}if(r.left!==g&&!s(r.left)){r=r.left;continue}h=o+r.start,f=o+r.end,r.setCachedOffsets(h,f,i);let e=!0;t&&r.ownerId&&r.ownerId!==t&&(e=!1),n&&l(r)&&(e=!1),e&&(u[c++]=r),a(r,!0),r.right===g||s(r.right)||(o+=r.delta,r=r.right)}return a(e.root,!1),u}function N(e,t,n,i,r,o){let h=e.root,f=0,u=0,c=0,d=0;const p=[];let m=0;while(h!==g)if(s(h))a(h.left,!1),a(h.right,!1),h===h.parent.right&&(f-=h.parent.delta),h=h.parent;else{if(!s(h.left)){if(u=f+h.maxEnd,u<t){a(h,!0);continue}if(h.left!==g){h=h.left;continue}}if(c=f+h.start,c>n)a(h,!0);else{if(d=f+h.end,d>=t){h.setCachedOffsets(c,d,o);let e=!0;i&&h.ownerId&&h.ownerId!==i&&(e=!1),r&&l(h)&&(e=!1),e&&(p[m++]=h)}a(h,!0),h.right===g||s(h.right)||(f+=h.delta,h=h.right)}}return a(e.root,!1),p}function v(e,t){if(e.root===g)return t.parent=g,t.left=g,t.right=g,r(t,0),e.root=t,e.root;w(e,t),V(t.parent);let n=t;while(n!==e.root&&1===i(n.parent))if(n.parent===n.parent.parent.left){const t=n.parent.parent.right;1===i(t)?(r(n.parent,0),r(t,0),r(n.parent.parent,1),n=n.parent.parent):(n===n.parent.right&&(n=n.parent,B(e,n)),r(n.parent,0),r(n.parent.parent,1),k(e,n.parent.parent))}else{const t=n.parent.parent.left;1===i(t)?(r(n.parent,0),r(t,0),r(n.parent.parent,1),n=n.parent.parent):(n===n.parent.left&&(n=n.parent,k(e,n)),r(n.parent,0),r(n.parent.parent,1),B(e,n.parent.parent))}return r(e.root,0),t}function w(e,t){let n=0,i=e.root;const s=t.start,a=t.end;while(1){const e=z(s,a,i.start+n,i.end+n);if(e<0){if(i.left===g){t.start-=n,t.end-=n,t.maxEnd-=n,i.left=t;break}i=i.left}else{if(i.right===g){t.start-=n+i.delta,t.end-=n+i.delta,t.maxEnd-=n+i.delta,i.right=t;break}n+=i.delta,i=i.right}}t.parent=i,t.left=g,t.right=g,r(t,1)}function O(e,t){let n,s;if(t.left===g?(n=t.right,s=t,n.delta+=t.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0),n.start+=t.delta,n.end+=t.delta):t.right===g?(n=t.left,s=t):(s=E(t.right),n=s.right,n.start+=s.delta,n.end+=s.delta,n.delta+=s.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0),s.start+=t.delta,s.end+=t.delta,s.delta=t.delta,(s.delta<-1073741824||s.delta>1073741824)&&(e.requestNormalizeDelta=!0)),s===e.root)return e.root=n,r(n,0),t.detach(),A(),M(n),void(e.root.parent=g);const a=1===i(s);if(s===s.parent.left?s.parent.left=n:s.parent.right=n,s===t?n.parent=s.parent:(s.parent===t?n.parent=s:n.parent=s.parent,s.left=t.left,s.right=t.right,s.parent=t.parent,r(s,i(t)),t===e.root?e.root=s:t===t.parent.left?t.parent.left=s:t.parent.right=s,s.left!==g&&(s.left.parent=s),s.right!==g&&(s.right.parent=s)),t.detach(),a)return V(n.parent),s!==t&&(V(s),V(s.parent)),void A();let l;V(n),V(n.parent),s!==t&&(V(s),V(s.parent));while(n!==e.root&&0===i(n))n===n.parent.left?(l=n.parent.right,1===i(l)&&(r(l,0),r(n.parent,1),B(e,n.parent),l=n.parent.right),0===i(l.left)&&0===i(l.right)?(r(l,1),n=n.parent):(0===i(l.right)&&(r(l.left,0),r(l,1),k(e,l),l=n.parent.right),r(l,i(n.parent)),r(n.parent,0),r(l.right,0),B(e,n.parent),n=e.root)):(l=n.parent.left,1===i(l)&&(r(l,0),r(n.parent,1),k(e,n.parent),l=n.parent.left),0===i(l.left)&&0===i(l.right)?(r(l,1),n=n.parent):(0===i(l.left)&&(r(l.right,0),r(l,1),B(e,l),l=n.parent.left),r(l,i(n.parent)),r(n.parent,0),r(l.left,0),k(e,n.parent),n=e.root));r(n,0),A()}function E(e){while(e.left!==g)e=e.left;return e}function A(){g.parent=g,g.delta=0,g.start=0,g.end=0}function B(e,t){const n=t.right;n.delta+=t.delta,(n.delta<-1073741824||n.delta>1073741824)&&(e.requestNormalizeDelta=!0),n.start+=t.delta,n.end+=t.delta,t.right=n.left,n.left!==g&&(n.left.parent=t),n.parent=t.parent,t.parent===g?e.root=n:t===t.parent.left?t.parent.left=n:t.parent.right=n,n.left=t,t.parent=n,M(t),M(n)}function k(e,t){const n=t.left;t.delta-=n.delta,(t.delta<-1073741824||t.delta>1073741824)&&(e.requestNormalizeDelta=!0),t.start-=n.delta,t.end-=n.delta,t.left=n.right,n.right!==g&&(n.right.parent=t),n.parent=t.parent,t.parent===g?e.root=n:t===t.parent.right?t.parent.right=n:t.parent.left=n,n.right=t,t.parent=n,M(t),M(n)}function R(e){let t=e.end;if(e.left!==g){const n=e.left.maxEnd;n>t&&(t=n)}if(e.right!==g){const n=e.right.maxEnd+e.delta;n>t&&(t=n)}return t}function M(e){e.maxEnd=R(e)}function V(e){while(e!==g){const t=R(e);if(e.maxEnd===t)return;e.maxEnd=t,e=e.parent}}function z(e,t,n,i){return e===n?t-i:e-n}},"4ff5":function(e,t,n){"use strict";n.d(t,"b",(function(){return s})),n.d(t,"a",(function(){return a}));var i=n("e8e3"),r=n("099d");class s{constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=Object(r["a"])(e);const n=this.values,i=this.prefixSum,s=t.length;return 0!==s&&(this.values=new Uint32Array(n.length+s),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e),e+s),this.values.set(t,e),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSum=new Uint32Array(this.values.length),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(i.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=Object(r["a"])(e),t=Object(r["a"])(t),this.values[e]!==t&&(this.values[e]=t,e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),!0)}removeValues(e,t){e=Object(r["a"])(e),t=Object(r["a"])(t);const n=this.values,i=this.prefixSum;if(e>=n.length)return!1;const s=n.length-e;return t>=s&&(t=s),0!==t&&(this.values=new Uint32Array(n.length-t),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(i.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return 0===this.values.length?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=Object(r["a"])(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;0===t&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let n=t;n<=e;n++)this.prefixSum[n]=this.prefixSum[n-1]+this.values[n];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,n=this.values.length-1,i=0,r=0,s=0;while(t<=n)if(i=t+(n-t)/2|0,r=this.prefixSum[i],s=r-this.values[i],e<s)n=i-1;else{if(!(e>=r))break;t=i+1}return new l(i,e-s)}}class a{constructor(e){this._values=e,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(e){return this._ensureValid(),0===e?0:this._prefixSum[e-1]}getIndexOf(e){this._ensureValid();const t=this._indexBySum[e],n=t>0?this._prefixSum[t-1]:0;return new l(t,e-n)}removeValues(e,t){this._values.splice(e,t),this._invalidate(e)}insertValues(e,t){this._values=Object(i["b"])(this._values,e,t),this._invalidate(e)}_invalidate(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)}_ensureValid(){if(!this._isValid){for(let e=this._validEndIndex+1,t=this._values.length;e<t;e++){const t=this._values[e],n=e>0?this._prefixSum[e-1]:0;this._prefixSum[e]=n+t;for(let i=0;i<t;i++)this._indexBySum[n+i]=e}this._prefixSum.length=this._values.length,this._indexBySum.length=this._prefixSum[this._prefixSum.length-1],this._isValid=!0,this._validEndIndex=this._values.length-1}}setValue(e,t){this._values[e]!==t&&(this._values[e]=t,this._invalidate(e))}}class l{constructor(e,t){this.index=e,this.remainder=t,this._prefixSumIndexOfResultBrand=void 0,this.index=e,this.remainder=t}}},5320:function(e,t,n){"use strict";n.d(t,"d",(function(){return S})),n.d(t,"c",(function(){return N})),n.d(t,"b",(function(){return w})),n.d(t,"a",(function(){return A}));var i=n("7061"),r=n("6a89"),s=n("3352");class a{constructor(e,t){this.piece=e,this.color=t,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==l)return o(this.right);let e=this;while(e.parent!==l){if(e.parent.left===e)break;e=e.parent}return e.parent===l?l:e.parent}prev(){if(this.left!==l)return h(this.left);let e=this;while(e.parent!==l){if(e.parent.right===e)break;e=e.parent}return e.parent===l?l:e.parent}detach(){this.parent=null,this.left=null,this.right=null}}const l=new a(null,0);function o(e){while(e.left!==l)e=e.left;return e}function h(e){while(e.right!==l)e=e.right;return e}function f(e){return e===l?0:e.size_left+e.piece.length+f(e.right)}function u(e){return e===l?0:e.lf_left+e.piece.lineFeedCnt+u(e.right)}function c(){l.parent=l}function d(e,t){const n=t.right;n.size_left+=t.size_left+(t.piece?t.piece.length:0),n.lf_left+=t.lf_left+(t.piece?t.piece.lineFeedCnt:0),t.right=n.left,n.left!==l&&(n.left.parent=t),n.parent=t.parent,t.parent===l?e.root=n:t.parent.left===t?t.parent.left=n:t.parent.right=n,n.left=t,t.parent=n}function g(e,t){const n=t.left;t.left=n.right,n.right!==l&&(n.right.parent=t),n.parent=t.parent,t.size_left-=n.size_left+(n.piece?n.piece.length:0),t.lf_left-=n.lf_left+(n.piece?n.piece.lineFeedCnt:0),t.parent===l?e.root=n:t===t.parent.right?t.parent.right=n:t.parent.left=n,n.right=t,t.parent=n}function p(e,t){let n,i;if(t.left===l?(i=t,n=i.right):t.right===l?(i=t,n=i.left):(i=o(t.right),n=i.right),i===e.root)return e.root=n,n.color=0,t.detach(),c(),void(e.root.parent=l);const r=1===i.color;if(i===i.parent.left?i.parent.left=n:i.parent.right=n,i===t?(n.parent=i.parent,b(e,n)):(i.parent===t?n.parent=i:n.parent=i.parent,b(e,n),i.left=t.left,i.right=t.right,i.parent=t.parent,i.color=t.color,t===e.root?e.root=i:t===t.parent.left?t.parent.left=i:t.parent.right=i,i.left!==l&&(i.left.parent=i),i.right!==l&&(i.right.parent=i),i.size_left=t.size_left,i.lf_left=t.lf_left,b(e,i)),t.detach(),n.parent.left===n){const t=f(n),i=u(n);if(t!==n.parent.size_left||i!==n.parent.lf_left){const r=t-n.parent.size_left,s=i-n.parent.lf_left;n.parent.size_left=t,n.parent.lf_left=i,_(e,n.parent,r,s)}}if(b(e,n.parent),r)return void c();let s;while(n!==e.root&&0===n.color)n===n.parent.left?(s=n.parent.right,1===s.color&&(s.color=0,n.parent.color=1,d(e,n.parent),s=n.parent.right),0===s.left.color&&0===s.right.color?(s.color=1,n=n.parent):(0===s.right.color&&(s.left.color=0,s.color=1,g(e,s),s=n.parent.right),s.color=n.parent.color,n.parent.color=0,s.right.color=0,d(e,n.parent),n=e.root)):(s=n.parent.left,1===s.color&&(s.color=0,n.parent.color=1,g(e,n.parent),s=n.parent.left),0===s.left.color&&0===s.right.color?(s.color=1,n=n.parent):(0===s.left.color&&(s.right.color=0,s.color=1,d(e,s),s=n.parent.left),s.color=n.parent.color,n.parent.color=0,s.left.color=0,g(e,n.parent),n=e.root));n.color=0,c()}function m(e,t){b(e,t);while(t!==e.root&&1===t.parent.color)if(t.parent===t.parent.parent.left){const n=t.parent.parent.right;1===n.color?(t.parent.color=0,n.color=0,t.parent.parent.color=1,t=t.parent.parent):(t===t.parent.right&&(t=t.parent,d(e,t)),t.parent.color=0,t.parent.parent.color=1,g(e,t.parent.parent))}else{const n=t.parent.parent.left;1===n.color?(t.parent.color=0,n.color=0,t.parent.parent.color=1,t=t.parent.parent):(t===t.parent.left&&(t=t.parent,g(e,t)),t.parent.color=0,t.parent.parent.color=1,d(e,t.parent.parent))}e.root.color=0}function _(e,t,n,i){while(t!==e.root&&t!==l)t.parent.left===t&&(t.parent.size_left+=n,t.parent.lf_left+=i),t=t.parent}function b(e,t){let n=0,i=0;if(t!==e.root){while(t!==e.root&&t===t.parent.right)t=t.parent;if(t!==e.root){t=t.parent,n=f(t.left)-t.size_left,i=u(t.left)-t.lf_left,t.size_left+=n,t.lf_left+=i;while(t!==e.root&&(0!==n||0!==i))t.parent.left===t&&(t.parent.size_left+=n,t.parent.lf_left+=i),t=t.parent}}}l.parent=l,l.left=l,l.right=l,l.color=0;var C=n("8c02");const L=65535;function I(e){let t;return t=e[e.length-1]<65536?new Uint16Array(e.length):new Uint32Array(e.length),t.set(e,0),t}class x{constructor(e,t,n,i,r){this.lineStarts=e,this.cr=t,this.lf=n,this.crlf=i,this.isBasicASCII=r}}function S(e,t=!0){const n=[0];let i=1;for(let r=0,s=e.length;r<s;r++){const t=e.charCodeAt(r);13===t?r+1<s&&10===e.charCodeAt(r+1)?(n[i++]=r+2,r++):n[i++]=r+1:10===t&&(n[i++]=r+1)}return t?I(n):n}function N(e,t){e.length=0,e[0]=0;let n=1,i=0,r=0,s=0,a=!0;for(let o=0,h=t.length;o<h;o++){const l=t.charCodeAt(o);13===l?o+1<h&&10===t.charCodeAt(o+1)?(s++,e[n++]=o+2,o++):(i++,e[n++]=o+1):10===l?(r++,e[n++]=o+1):a&&9!==l&&(l<32||l>126)&&(a=!1)}const l=new x(I(e),i,r,s,a);return e.length=0,l}class v{constructor(e,t,n,i,r){this.bufferIndex=e,this.start=t,this.end=n,this.lineFeedCnt=i,this.length=r}}class w{constructor(e,t){this.buffer=e,this.lineStarts=t}}class O{constructor(e,t){this._pieces=[],this._tree=e,this._BOM=t,this._index=0,e.root!==l&&e.iterate(e.root,e=>(e!==l&&this._pieces.push(e.piece),!0))}read(){return 0===this._pieces.length?0===this._index?(this._index++,this._BOM):null:this._index>this._pieces.length-1?null:0===this._index?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class E{constructor(e){this._limit=e,this._cache=[]}get(e){for(let t=this._cache.length-1;t>=0;t--){const n=this._cache[t];if(n.nodeStartOffset<=e&&n.nodeStartOffset+n.node.piece.length>=e)return n}return null}get2(e){for(let t=this._cache.length-1;t>=0;t--){const n=this._cache[t];if(n.nodeStartLineNumber&&n.nodeStartLineNumber<e&&n.nodeStartLineNumber+n.node.piece.lineFeedCnt>=e)return n}return null}set(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)}validate(e){let t=!1;const n=this._cache;for(let i=0;i<n.length;i++){const r=n[i];(null===r.node.parent||r.nodeStartOffset>=e)&&(n[i]=null,t=!0)}if(t){const e=[];for(const t of n)null!==t&&e.push(t);this._cache=e}}}class A{constructor(e,t,n){this.create(e,t,n)}create(e,t,n){this._buffers=[new w("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=l,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=n;let i=null;for(let r=0,s=e.length;r<s;r++)if(e[r].buffer.length>0){e[r].lineStarts||(e[r].lineStarts=S(e[r].buffer));const t=new v(r+1,{line:0,column:0},{line:e[r].lineStarts.length-1,column:e[r].buffer.length-e[r].lineStarts[e[r].lineStarts.length-1]},e[r].lineStarts.length-1,e[r].buffer.length);this._buffers.push(e[r]),i=this.rbInsertRight(i,t)}this._searchCache=new E(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(e){const t=L,n=t-Math.floor(t/3),i=2*n;let r="",s=0;const a=[];if(this.iterate(this.root,t=>{const l=this.getNodeContent(t),o=l.length;if(s<=n||s+o<i)return r+=l,s+=o,!0;const h=r.replace(/\r\n|\r|\n/g,e);return a.push(new w(h,S(h))),r=l,s=o,!0}),s>0){const t=r.replace(/\r\n|\r|\n/g,e);a.push(new w(t,S(t)))}this.create(a,e,!0)}getEOL(){return this._EOL}setEOL(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)}createSnapshot(e){return new O(this,e)}getOffsetAt(e,t){let n=0,i=this.root;while(i!==l)if(i.left!==l&&i.lf_left+1>=e)i=i.left;else{if(i.lf_left+i.piece.lineFeedCnt+1>=e){n+=i.size_left;const r=this.getAccumulatedValue(i,e-i.lf_left-2);return n+(r+t-1)}e-=i.lf_left+i.piece.lineFeedCnt,n+=i.size_left+i.piece.length,i=i.right}return n}getPositionAt(e){e=Math.floor(e),e=Math.max(0,e);let t=this.root,n=0;const r=e;while(t!==l)if(0!==t.size_left&&t.size_left>=e)t=t.left;else{if(t.size_left+t.piece.length>=e){const s=this.getIndexOf(t,e-t.size_left);if(n+=t.lf_left+s.index,0===s.index){const e=this.getOffsetAt(n+1,1),t=r-e;return new i["a"](n+1,t+1)}return new i["a"](n+1,s.remainder+1)}if(e-=t.size_left+t.piece.length,n+=t.lf_left+t.piece.lineFeedCnt,t.right===l){const t=this.getOffsetAt(n+1,1),s=r-e-t;return new i["a"](n+1,s+1)}t=t.right}return new i["a"](1,1)}getValueInRange(e,t){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";const n=this.nodeAt2(e.startLineNumber,e.startColumn),i=this.nodeAt2(e.endLineNumber,e.endColumn),r=this.getValueInRange2(n,i);return t?t===this._EOL&&this._EOLNormalized&&t===this.getEOL()&&this._EOLNormalized?r:r.replace(/\r\n|\r|\n/g,t):r}getValueInRange2(e,t){if(e.node===t.node){const n=e.node,i=this._buffers[n.piece.bufferIndex].buffer,r=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);return i.substring(r+e.remainder,r+t.remainder)}let n=e.node;const i=this._buffers[n.piece.bufferIndex].buffer,r=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);let s=i.substring(r+e.remainder,r+n.piece.length);n=n.next();while(n!==l){const e=this._buffers[n.piece.bufferIndex].buffer,i=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);if(n===t.node){s+=e.substring(i,i+t.remainder);break}s+=e.substr(i,n.piece.length),n=n.next()}return s}getLinesContent(){const e=[];let t=0,n="",i=!1;return this.iterate(this.root,r=>{if(r===l)return!0;const s=r.piece;let a=s.length;if(0===a)return!0;const o=this._buffers[s.bufferIndex].buffer,h=this._buffers[s.bufferIndex].lineStarts,f=s.start.line,u=s.end.line;let c=h[f]+s.start.column;if(i&&(10===o.charCodeAt(c)&&(c++,a--),e[t++]=n,n="",i=!1,0===a))return!0;if(f===u)return this._EOLNormalized||13!==o.charCodeAt(c+a-1)?n+=o.substr(c,a):(i=!0,n+=o.substr(c,a-1)),!0;n+=this._EOLNormalized?o.substring(c,Math.max(c,h[f+1]-this._EOLLength)):o.substring(c,h[f+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=n;for(let i=f+1;i<u;i++)n=this._EOLNormalized?o.substring(h[i],h[i+1]-this._EOLLength):o.substring(h[i],h[i+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=n;return this._EOLNormalized||13!==o.charCodeAt(h[u]+s.end.column-1)?n=o.substr(h[u],s.end.column):(i=!0,0===s.end.column?t--:n=o.substr(h[u],s.end.column-1)),!0}),i&&(e[t++]=n,n=""),e[t++]=n,e}getLength(){return this._length}getLineCount(){return this._lineCnt}getLineContent(e){return this._lastVisitedLine.lineNumber===e||(this._lastVisitedLine.lineNumber=e,e===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(e):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(e,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(e).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value}_getCharCode(e){if(e.remainder===e.node.piece.length){const t=e.node.next();if(!t)return 0;const n=this._buffers[t.piece.bufferIndex],i=this.offsetInBuffer(t.piece.bufferIndex,t.piece.start);return n.buffer.charCodeAt(i)}{const t=this._buffers[e.node.piece.bufferIndex],n=this.offsetInBuffer(e.node.piece.bufferIndex,e.node.piece.start),i=n+e.remainder;return t.buffer.charCodeAt(i)}}getLineCharCode(e,t){const n=this.nodeAt2(e,t+1);return this._getCharCode(n)}getLineLength(e){if(e===this.getLineCount()){const t=this.getOffsetAt(e,1);return this.getLength()-t}return this.getOffsetAt(e+1,1)-this.getOffsetAt(e,1)-this._EOLLength}findMatchesInNode(e,t,n,i,s,a,l,o,h,f,u){const c=this._buffers[e.piece.bufferIndex],d=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start),g=this.offsetInBuffer(e.piece.bufferIndex,s),p=this.offsetInBuffer(e.piece.bufferIndex,a);let m;const _={line:0,column:0};let b,L;t._wordSeparators?(b=c.buffer.substring(g,p),L=e=>e+g,t.reset(0)):(b=c.buffer,L=e=>e,t.reset(g));do{if(m=t.next(b),m){if(L(m.index)>=p)return f;this.positionInBuffer(e,L(m.index)-d,_);const t=this.getLineFeedCnt(e.piece.bufferIndex,s,_),a=_.line===s.line?_.column-s.column+i:_.column+1,l=a+m[0].length;if(u[f++]=Object(C["d"])(new r["a"](n+t,a,n+t,l),m,o),L(m.index)+m[0].length>=p)return f;if(f>=h)return f}}while(m);return f}findMatchesLineByLine(e,t,n,i){const r=[];let s=0;const a=new C["b"](t.wordSeparators,t.regex);let l=this.nodeAt2(e.startLineNumber,e.startColumn);if(null===l)return[];const o=this.nodeAt2(e.endLineNumber,e.endColumn);if(null===o)return[];let h=this.positionInBuffer(l.node,l.remainder);const f=this.positionInBuffer(o.node,o.remainder);if(l.node===o.node)return this.findMatchesInNode(l.node,a,e.startLineNumber,e.startColumn,h,f,t,n,i,s,r),r;let u=e.startLineNumber,c=l.node;while(c!==o.node){const o=this.getLineFeedCnt(c.piece.bufferIndex,h,c.piece.end);if(o>=1){const l=this._buffers[c.piece.bufferIndex].lineStarts,f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start),d=l[h.line+o],g=u===e.startLineNumber?e.startColumn:1;if(s=this.findMatchesInNode(c,a,u,g,h,this.positionInBuffer(c,d-f),t,n,i,s,r),s>=i)return r;u+=o}const f=u===e.startLineNumber?e.startColumn-1:0;if(u===e.endLineNumber){const l=this.getLineContent(u).substring(f,e.endColumn-1);return s=this._findMatchesInLine(t,a,l,e.endLineNumber,f,s,r,n,i),r}if(s=this._findMatchesInLine(t,a,this.getLineContent(u).substr(f),u,f,s,r,n,i),s>=i)return r;u++,l=this.nodeAt2(u,1),c=l.node,h=this.positionInBuffer(l.node,l.remainder)}if(u===e.endLineNumber){const l=u===e.startLineNumber?e.startColumn-1:0,o=this.getLineContent(u).substring(l,e.endColumn-1);return s=this._findMatchesInLine(t,a,o,e.endLineNumber,l,s,r,n,i),r}const d=u===e.startLineNumber?e.startColumn:1;return s=this.findMatchesInNode(o.node,a,u,d,h,f,t,n,i,s,r),r}_findMatchesInLine(e,t,n,i,a,l,o,h,f){const u=e.wordSeparators;if(!h&&e.simpleSearch){const t=e.simpleSearch,h=t.length,c=n.length;let d=-h;while(-1!==(d=n.indexOf(t,d+h)))if((!u||Object(C["e"])(u,n,c,d,h))&&(o[l++]=new s["b"](new r["a"](i,d+1+a,i,d+1+h+a),null),l>=f))return l;return l}let c;t.reset(0);do{if(c=t.next(n),c&&(o[l++]=Object(C["d"])(new r["a"](i,c.index+1+a,i,c.index+1+c[0].length+a),c,h),l>=f))return l}while(c);return l}insert(e,t,n=!1){if(this._EOLNormalized=this._EOLNormalized&&n,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==l){const{node:n,remainder:i,nodeStartOffset:r}=this.nodeAt(e),s=n.piece,a=s.bufferIndex,l=this.positionInBuffer(n,i);if(0===n.piece.bufferIndex&&s.end.line===this._lastChangeBufferPos.line&&s.end.column===this._lastChangeBufferPos.column&&r+s.length===e&&t.length<L)return this.appendToNode(n,t),void this.computeBufferMetadata();if(r===e)this.insertContentToNodeLeft(t,n),this._searchCache.validate(e);else if(r+n.piece.length>e){const e=[];let r=new v(s.bufferIndex,l,s.end,this.getLineFeedCnt(s.bufferIndex,l,s.end),this.offsetInBuffer(a,s.end)-this.offsetInBuffer(a,l));if(this.shouldCheckCRLF()&&this.endWithCR(t)){const e=this.nodeCharCodeAt(n,i);if(10===e){const e={line:r.start.line+1,column:0};r=new v(r.bufferIndex,e,r.end,this.getLineFeedCnt(r.bufferIndex,e,r.end),r.length-1),t+="\n"}}if(this.shouldCheckCRLF()&&this.startWithLF(t)){const r=this.nodeCharCodeAt(n,i-1);if(13===r){const r=this.positionInBuffer(n,i-1);this.deleteNodeTail(n,r),t="\r"+t,0===n.piece.length&&e.push(n)}else this.deleteNodeTail(n,l)}else this.deleteNodeTail(n,l);const o=this.createNewPieces(t);r.length>0&&this.rbInsertRight(n,r);let h=n;for(let t=0;t<o.length;t++)h=this.rbInsertRight(h,o[t]);this.deleteNodes(e)}else this.insertContentToNodeRight(t,n)}else{const e=this.createNewPieces(t);let n=this.rbInsertLeft(null,e[0]);for(let t=1;t<e.length;t++)n=this.rbInsertRight(n,e[t])}this.computeBufferMetadata()}delete(e,t){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",t<=0||this.root===l)return;const n=this.nodeAt(e),i=this.nodeAt(e+t),r=n.node,s=i.node;if(r===s){const s=this.positionInBuffer(r,n.remainder),a=this.positionInBuffer(r,i.remainder);if(n.nodeStartOffset===e){if(t===r.piece.length){const e=r.next();return p(this,r),this.validateCRLFWithPrevNode(e),void this.computeBufferMetadata()}return this.deleteNodeHead(r,a),this._searchCache.validate(e),this.validateCRLFWithPrevNode(r),void this.computeBufferMetadata()}return n.nodeStartOffset+r.piece.length===e+t?(this.deleteNodeTail(r,s),this.validateCRLFWithNextNode(r),void this.computeBufferMetadata()):(this.shrinkNode(r,s,a),void this.computeBufferMetadata())}const a=[],o=this.positionInBuffer(r,n.remainder);this.deleteNodeTail(r,o),this._searchCache.validate(e),0===r.piece.length&&a.push(r);const h=this.positionInBuffer(s,i.remainder);this.deleteNodeHead(s,h),0===s.piece.length&&a.push(s);const f=r.next();for(let c=f;c!==l&&c!==s;c=c.next())a.push(c);const u=0===r.piece.length?r.prev():r;this.deleteNodes(a),this.validateCRLFWithNextNode(u),this.computeBufferMetadata()}insertContentToNodeLeft(e,t){const n=[];if(this.shouldCheckCRLF()&&this.endWithCR(e)&&this.startWithLF(t)){const i=t.piece,r={line:i.start.line+1,column:0},s=new v(i.bufferIndex,r,i.end,this.getLineFeedCnt(i.bufferIndex,r,i.end),i.length-1);t.piece=s,e+="\n",_(this,t,-1,-1),0===t.piece.length&&n.push(t)}const i=this.createNewPieces(e);let r=this.rbInsertLeft(t,i[i.length-1]);for(let s=i.length-2;s>=0;s--)r=this.rbInsertLeft(r,i[s]);this.validateCRLFWithPrevNode(r),this.deleteNodes(n)}insertContentToNodeRight(e,t){this.adjustCarriageReturnFromNext(e,t)&&(e+="\n");const n=this.createNewPieces(e),i=this.rbInsertRight(t,n[0]);let r=i;for(let s=1;s<n.length;s++)r=this.rbInsertRight(r,n[s]);this.validateCRLFWithPrevNode(i)}positionInBuffer(e,t,n){const i=e.piece,r=e.piece.bufferIndex,s=this._buffers[r].lineStarts,a=s[i.start.line]+i.start.column,l=a+t;let o=i.start.line,h=i.end.line,f=0,u=0,c=0;while(o<=h){if(f=o+(h-o)/2|0,c=s[f],f===h)break;if(u=s[f+1],l<c)h=f-1;else{if(!(l>=u))break;o=f+1}}return n?(n.line=f,n.column=l-c,null):{line:f,column:l-c}}getLineFeedCnt(e,t,n){if(0===n.column)return n.line-t.line;const i=this._buffers[e].lineStarts;if(n.line===i.length-1)return n.line-t.line;const r=i[n.line+1],s=i[n.line]+n.column;if(r>s+1)return n.line-t.line;const a=s-1,l=this._buffers[e].buffer;return 13===l.charCodeAt(a)?n.line-t.line+1:n.line-t.line}offsetInBuffer(e,t){const n=this._buffers[e].lineStarts;return n[t.line]+t.column}deleteNodes(e){for(let t=0;t<e.length;t++)p(this,e[t])}createNewPieces(e){if(e.length>L){const t=[];while(e.length>L){const n=e.charCodeAt(L-1);let i;13===n||n>=55296&&n<=56319?(i=e.substring(0,L-1),e=e.substring(L-1)):(i=e.substring(0,L),e=e.substring(L));const r=S(i);t.push(new v(this._buffers.length,{line:0,column:0},{line:r.length-1,column:i.length-r[r.length-1]},r.length-1,i.length)),this._buffers.push(new w(i,r))}const n=S(e);return t.push(new v(this._buffers.length,{line:0,column:0},{line:n.length-1,column:e.length-n[n.length-1]},n.length-1,e.length)),this._buffers.push(new w(e,n)),t}let t=this._buffers[0].buffer.length;const n=S(e,!1);let i=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===t&&0!==t&&this.startWithLF(e)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},i=this._lastChangeBufferPos;for(let e=0;e<n.length;e++)n[e]+=t+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(n.slice(1)),this._buffers[0].buffer+="_"+e,t+=1}else{if(0!==t)for(let e=0;e<n.length;e++)n[e]+=t;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(n.slice(1)),this._buffers[0].buffer+=e}const r=this._buffers[0].buffer.length,s=this._buffers[0].lineStarts.length-1,a=r-this._buffers[0].lineStarts[s],l={line:s,column:a},o=new v(0,i,l,this.getLineFeedCnt(0,i,l),r-t);return this._lastChangeBufferPos=l,[o]}getLineRawContent(e,t=0){let n=this.root,i="";const r=this._searchCache.get2(e);if(r){n=r.node;const s=this.getAccumulatedValue(n,e-r.nodeStartLineNumber-1),a=this._buffers[n.piece.bufferIndex].buffer,l=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);if(r.nodeStartLineNumber+n.piece.lineFeedCnt!==e){const i=this.getAccumulatedValue(n,e-r.nodeStartLineNumber);return a.substring(l+s,l+i-t)}i=a.substring(l+s,l+n.piece.length)}else{let r=0;const s=e;while(n!==l)if(n.left!==l&&n.lf_left>=e-1)n=n.left;else{if(n.lf_left+n.piece.lineFeedCnt>e-1){const i=this.getAccumulatedValue(n,e-n.lf_left-2),a=this.getAccumulatedValue(n,e-n.lf_left-1),l=this._buffers[n.piece.bufferIndex].buffer,o=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);return r+=n.size_left,this._searchCache.set({node:n,nodeStartOffset:r,nodeStartLineNumber:s-(e-1-n.lf_left)}),l.substring(o+i,o+a-t)}if(n.lf_left+n.piece.lineFeedCnt===e-1){const t=this.getAccumulatedValue(n,e-n.lf_left-2),r=this._buffers[n.piece.bufferIndex].buffer,s=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);i=r.substring(s+t,s+n.piece.length);break}e-=n.lf_left+n.piece.lineFeedCnt,r+=n.size_left+n.piece.length,n=n.right}}n=n.next();while(n!==l){const e=this._buffers[n.piece.bufferIndex].buffer;if(n.piece.lineFeedCnt>0){const r=this.getAccumulatedValue(n,0),s=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);return i+=e.substring(s,s+r-t),i}{const t=this.offsetInBuffer(n.piece.bufferIndex,n.piece.start);i+=e.substr(t,n.piece.length)}n=n.next()}return i}computeBufferMetadata(){let e=this.root,t=1,n=0;while(e!==l)t+=e.lf_left+e.piece.lineFeedCnt,n+=e.size_left+e.piece.length,e=e.right;this._lineCnt=t,this._length=n,this._searchCache.validate(this._length)}getIndexOf(e,t){const n=e.piece,i=this.positionInBuffer(e,t),r=i.line-n.start.line;if(this.offsetInBuffer(n.bufferIndex,n.end)-this.offsetInBuffer(n.bufferIndex,n.start)===t){const t=this.getLineFeedCnt(e.piece.bufferIndex,n.start,i);if(t!==r)return{index:t,remainder:0}}return{index:r,remainder:i.column}}getAccumulatedValue(e,t){if(t<0)return 0;const n=e.piece,i=this._buffers[n.bufferIndex].lineStarts,r=n.start.line+t+1;return r>n.end.line?i[n.end.line]+n.end.column-i[n.start.line]-n.start.column:i[r]-i[n.start.line]-n.start.column}deleteNodeTail(e,t){const n=e.piece,i=n.lineFeedCnt,r=this.offsetInBuffer(n.bufferIndex,n.end),s=t,a=this.offsetInBuffer(n.bufferIndex,s),l=this.getLineFeedCnt(n.bufferIndex,n.start,s),o=l-i,h=a-r,f=n.length+h;e.piece=new v(n.bufferIndex,n.start,s,l,f),_(this,e,h,o)}deleteNodeHead(e,t){const n=e.piece,i=n.lineFeedCnt,r=this.offsetInBuffer(n.bufferIndex,n.start),s=t,a=this.getLineFeedCnt(n.bufferIndex,s,n.end),l=this.offsetInBuffer(n.bufferIndex,s),o=a-i,h=r-l,f=n.length+h;e.piece=new v(n.bufferIndex,s,n.end,a,f),_(this,e,h,o)}shrinkNode(e,t,n){const i=e.piece,r=i.start,s=i.end,a=i.length,l=i.lineFeedCnt,o=t,h=this.getLineFeedCnt(i.bufferIndex,i.start,o),f=this.offsetInBuffer(i.bufferIndex,t)-this.offsetInBuffer(i.bufferIndex,r);e.piece=new v(i.bufferIndex,i.start,o,h,f),_(this,e,f-a,h-l);const u=new v(i.bufferIndex,n,s,this.getLineFeedCnt(i.bufferIndex,n,s),this.offsetInBuffer(i.bufferIndex,s)-this.offsetInBuffer(i.bufferIndex,n)),c=this.rbInsertRight(e,u);this.validateCRLFWithPrevNode(c)}appendToNode(e,t){this.adjustCarriageReturnFromNext(t,e)&&(t+="\n");const n=this.shouldCheckCRLF()&&this.startWithLF(t)&&this.endWithCR(e),i=this._buffers[0].buffer.length;this._buffers[0].buffer+=t;const r=S(t,!1);for(let c=0;c<r.length;c++)r[c]+=i;if(n){const e=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:i-e}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(r.slice(1));const s=this._buffers[0].lineStarts.length-1,a=this._buffers[0].buffer.length-this._buffers[0].lineStarts[s],l={line:s,column:a},o=e.piece.length+t.length,h=e.piece.lineFeedCnt,f=this.getLineFeedCnt(0,e.piece.start,l),u=f-h;e.piece=new v(e.piece.bufferIndex,e.piece.start,l,f,o),this._lastChangeBufferPos=l,_(this,e,t.length,u)}nodeAt(e){let t=this.root;const n=this._searchCache.get(e);if(n)return{node:n.node,nodeStartOffset:n.nodeStartOffset,remainder:e-n.nodeStartOffset};let i=0;while(t!==l)if(t.size_left>e)t=t.left;else{if(t.size_left+t.piece.length>=e){i+=t.size_left;const n={node:t,remainder:e-t.size_left,nodeStartOffset:i};return this._searchCache.set(n),n}e-=t.size_left+t.piece.length,i+=t.size_left+t.piece.length,t=t.right}return null}nodeAt2(e,t){let n=this.root,i=0;while(n!==l)if(n.left!==l&&n.lf_left>=e-1)n=n.left;else{if(n.lf_left+n.piece.lineFeedCnt>e-1){const r=this.getAccumulatedValue(n,e-n.lf_left-2),s=this.getAccumulatedValue(n,e-n.lf_left-1);return i+=n.size_left,{node:n,remainder:Math.min(r+t-1,s),nodeStartOffset:i}}if(n.lf_left+n.piece.lineFeedCnt===e-1){const r=this.getAccumulatedValue(n,e-n.lf_left-2);if(r+t-1<=n.piece.length)return{node:n,remainder:r+t-1,nodeStartOffset:i};t-=n.piece.length-r;break}e-=n.lf_left+n.piece.lineFeedCnt,i+=n.size_left+n.piece.length,n=n.right}n=n.next();while(n!==l){if(n.piece.lineFeedCnt>0){const e=this.getAccumulatedValue(n,0),i=this.offsetOfNode(n);return{node:n,remainder:Math.min(t-1,e),nodeStartOffset:i}}if(n.piece.length>=t-1){const e=this.offsetOfNode(n);return{node:n,remainder:t-1,nodeStartOffset:e}}t-=n.piece.length,n=n.next()}return null}nodeCharCodeAt(e,t){if(e.piece.lineFeedCnt<1)return-1;const n=this._buffers[e.piece.bufferIndex],i=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start)+t;return n.buffer.charCodeAt(i)}offsetOfNode(e){if(!e)return 0;let t=e.size_left;while(e!==this.root)e.parent.right===e&&(t+=e.parent.size_left+e.parent.piece.length),e=e.parent;return t}shouldCheckCRLF(){return!(this._EOLNormalized&&"\n"===this._EOL)}startWithLF(e){if("string"===typeof e)return 10===e.charCodeAt(0);if(e===l||0===e.piece.lineFeedCnt)return!1;const t=e.piece,n=this._buffers[t.bufferIndex].lineStarts,i=t.start.line,r=n[i]+t.start.column;if(i===n.length-1)return!1;const s=n[i+1];return!(s>r+1)&&10===this._buffers[t.bufferIndex].buffer.charCodeAt(r)}endWithCR(e){return"string"===typeof e?13===e.charCodeAt(e.length-1):e!==l&&0!==e.piece.lineFeedCnt&&13===this.nodeCharCodeAt(e,e.piece.length-1)}validateCRLFWithPrevNode(e){if(this.shouldCheckCRLF()&&this.startWithLF(e)){const t=e.prev();this.endWithCR(t)&&this.fixCRLF(t,e)}}validateCRLFWithNextNode(e){if(this.shouldCheckCRLF()&&this.endWithCR(e)){const t=e.next();this.startWithLF(t)&&this.fixCRLF(e,t)}}fixCRLF(e,t){const n=[],i=this._buffers[e.piece.bufferIndex].lineStarts;let r;r=0===e.piece.end.column?{line:e.piece.end.line-1,column:i[e.piece.end.line]-i[e.piece.end.line-1]-1}:{line:e.piece.end.line,column:e.piece.end.column-1};const s=e.piece.length-1,a=e.piece.lineFeedCnt-1;e.piece=new v(e.piece.bufferIndex,e.piece.start,r,a,s),_(this,e,-1,-1),0===e.piece.length&&n.push(e);const l={line:t.piece.start.line+1,column:0},o=t.piece.length-1,h=this.getLineFeedCnt(t.piece.bufferIndex,l,t.piece.end);t.piece=new v(t.piece.bufferIndex,l,t.piece.end,h,o),_(this,t,-1,-1),0===t.piece.length&&n.push(t);const f=this.createNewPieces("\r\n");this.rbInsertRight(e,f[0]);for(let u=0;u<n.length;u++)p(this,n[u])}adjustCarriageReturnFromNext(e,t){if(this.shouldCheckCRLF()&&this.endWithCR(e)){const n=t.next();if(this.startWithLF(n)){if(e+="\n",1===n.piece.length)p(this,n);else{const e=n.piece,t={line:e.start.line+1,column:0},i=e.length-1,r=this.getLineFeedCnt(e.bufferIndex,t,e.end);n.piece=new v(e.bufferIndex,t,e.end,r,i),_(this,n,-1,-1)}return!0}}return!1}iterate(e,t){if(e===l)return t(l);const n=this.iterate(e.left,t);return n?t(e)&&this.iterate(e.right,t):n}getNodeContent(e){if(e===l)return"";const t=this._buffers[e.piece.bufferIndex];let n;const i=e.piece,r=this.offsetInBuffer(i.bufferIndex,i.start),s=this.offsetInBuffer(i.bufferIndex,i.end);return n=t.buffer.substring(r,s),n}getPieceContent(e){const t=this._buffers[e.bufferIndex],n=this.offsetInBuffer(e.bufferIndex,e.start),i=this.offsetInBuffer(e.bufferIndex,e.end),r=t.buffer.substring(n,i);return r}rbInsertRight(e,t){const n=new a(t,1);n.left=l,n.right=l,n.parent=l,n.size_left=0,n.lf_left=0;const i=this.root;if(i===l)this.root=n,n.color=0;else if(e.right===l)e.right=n,n.parent=e;else{const t=o(e.right);t.left=n,n.parent=t}return m(this,n),n}rbInsertLeft(e,t){const n=new a(t,1);if(n.left=l,n.right=l,n.parent=l,n.size_left=0,n.lf_left=0,this.root===l)this.root=n,n.color=0;else if(e.left===l)e.left=n,n.parent=e;else{const t=h(e.left);t.right=n,n.parent=t}return m(this,n),n}}},a054:function(e,t,n){"use strict";n.d(t,"b",(function(){return p})),n.d(t,"a",(function(){return m}));var i=n("dff7"),r=n("fdcc"),s=n("8025"),a=n("6d8e"),l=n("8d17"),o=n("1e93"),h=n("82c9");function f(e){return e.toString()}class u{constructor(e,t,n,i,r,s,a){this.beforeVersionId=e,this.afterVersionId=t,this.beforeEOL=n,this.afterEOL=i,this.beforeCursorState=r,this.afterCursorState=s,this.changes=a}static create(e,t){const n=e.getAlternativeVersionId(),i=g(e);return new u(n,n,i,i,t,t,[])}append(e,t,n,i,r){t.length>0&&(this.changes=Object(l["b"])(this.changes,t)),this.afterEOL=n,this.afterVersionId=i,this.afterCursorState=r}static _writeSelectionsSize(e){return 4+16*(e?e.length:0)}static _writeSelections(e,t,n){if(o["f"](e,t?t.length:0,n),n+=4,t)for(const i of t)o["f"](e,i.selectionStartLineNumber,n),n+=4,o["f"](e,i.selectionStartColumn,n),n+=4,o["f"](e,i.positionLineNumber,n),n+=4,o["f"](e,i.positionColumn,n),n+=4;return n}static _readSelections(e,t,n){const i=o["c"](e,t);t+=4;for(let r=0;r<i;r++){const i=o["c"](e,t);t+=4;const r=o["c"](e,t);t+=4;const a=o["c"](e,t);t+=4;const l=o["c"](e,t);t+=4,n.push(new s["a"](i,r,a,l))}return t}serialize(){let e=10+u._writeSelectionsSize(this.beforeCursorState)+u._writeSelectionsSize(this.afterCursorState)+4;for(const i of this.changes)e+=i.writeSize();const t=new Uint8Array(e);let n=0;o["f"](t,this.beforeVersionId,n),n+=4,o["f"](t,this.afterVersionId,n),n+=4,o["g"](t,this.beforeEOL,n),n+=1,o["g"](t,this.afterEOL,n),n+=1,n=u._writeSelections(t,this.beforeCursorState,n),n=u._writeSelections(t,this.afterCursorState,n),o["f"](t,this.changes.length,n),n+=4;for(const i of this.changes)n=i.write(t,n);return t.buffer}static deserialize(e){const t=new Uint8Array(e);let n=0;const i=o["c"](t,n);n+=4;const r=o["c"](t,n);n+=4;const s=o["d"](t,n);n+=1;const a=o["d"](t,n);n+=1;const h=[];n=u._readSelections(t,n,h);const f=[];n=u._readSelections(t,n,f);const c=o["c"](t,n);n+=4;const d=[];for(let o=0;o<c;o++)n=l["a"].read(t,n,d);return new u(i,r,s,a,h,f,d)}}class c{constructor(e,t){this.model=e,this._data=u.create(e,t)}get type(){return 0}get resource(){return a["a"].isUri(this.model)?this.model:this.model.uri}get label(){return i["a"]("edit","Typing")}toString(){const e=this._data instanceof u?this._data:u.deserialize(this._data);return e.changes.map(e=>e.toString()).join(", ")}matchesResource(e){const t=a["a"].isUri(this.model)?this.model:this.model.uri;return t.toString()===e.toString()}setModel(e){this.model=e}canAppend(e){return this.model===e&&this._data instanceof u}append(e,t,n,i,r){this._data instanceof u&&this._data.append(e,t,n,i,r)}close(){this._data instanceof u&&(this._data=this._data.serialize())}open(){this._data instanceof u||(this._data=u.deserialize(this._data))}undo(){if(a["a"].isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof u&&(this._data=this._data.serialize());const e=u.deserialize(this._data);this.model._applyUndo(e.changes,e.beforeEOL,e.beforeVersionId,e.beforeCursorState)}redo(){if(a["a"].isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof u&&(this._data=this._data.serialize());const e=u.deserialize(this._data);this.model._applyRedo(e.changes,e.afterEOL,e.afterVersionId,e.afterCursorState)}heapSize(){return this._data instanceof u&&(this._data=this._data.serialize()),this._data.byteLength+168}}class d{constructor(e,t){this.type=1,this.label=e,this._isOpen=!0,this._editStackElementsArr=t.slice(0),this._editStackElementsMap=new Map;for(const n of this._editStackElementsArr){const e=f(n.resource);this._editStackElementsMap.set(e,n)}this._delegate=null}get resources(){return this._editStackElementsArr.map(e=>e.resource)}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(e){const t=f(e);return this._editStackElementsMap.has(t)}setModel(e){const t=f(a["a"].isUri(e)?e:e.uri);this._editStackElementsMap.has(t)&&this._editStackElementsMap.get(t).setModel(e)}canAppend(e){if(!this._isOpen)return!1;const t=f(e.uri);if(this._editStackElementsMap.has(t)){const n=this._editStackElementsMap.get(t);return n.canAppend(e)}return!1}append(e,t,n,i,r){const s=f(e.uri),a=this._editStackElementsMap.get(s);a.append(e,t,n,i,r)}close(){this._isOpen=!1}open(){}undo(){this._isOpen=!1;for(const e of this._editStackElementsArr)e.undo()}redo(){for(const e of this._editStackElementsArr)e.redo()}heapSize(e){const t=f(e);if(this._editStackElementsMap.has(t)){const e=this._editStackElementsMap.get(t);return e.heapSize()}return 0}split(){return this._editStackElementsArr}toString(){let e=[];for(const t of this._editStackElementsArr)e.push(`${Object(h["b"])(t.resource)}: ${t}`);return`{${e.join(", ")}}`}}function g(e){const t=e.getEOL();return"\n"===t?0:1}function p(e){return!!e&&(e instanceof c||e instanceof d)}class m{constructor(e,t){this._model=e,this._undoRedoService=t}pushStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);p(e)&&e.close()}popStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);p(e)&&e.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(e){const t=this._undoRedoService.getLastElement(this._model.uri);if(p(t)&&t.canAppend(this._model))return t;const n=new c(this._model,e);return this._undoRedoService.pushElement(n),n}pushEOL(e){const t=this._getOrCreateEditStackElement(null);this._model.setEOL(e),t.append(this._model,[],g(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(e,t,n){const i=this._getOrCreateEditStackElement(e),r=this._model.applyEdits(t,!0),s=m._computeCursorState(n,r),a=r.map((e,t)=>({index:t,textChange:e.textChange}));return a.sort((e,t)=>e.textChange.oldPosition===t.textChange.oldPosition?e.index-t.index:e.textChange.oldPosition-t.textChange.oldPosition),i.append(this._model,a.map(e=>e.textChange),g(this._model),this._model.getAlternativeVersionId(),s),s}static _computeCursorState(e,t){try{return e?e(t):null}catch(n){return Object(r["g"])(n),null}}}},a411:function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var i=n("3742"),r=n("7061"),s=n("4ff5");class a{constructor(e,t,n,i){this._uri=e,this._lines=t,this._eol=n,this._versionId=i,this._lineStarts=null,this._cachedTextValue=null}dispose(){this._lines.length=0}get version(){return this._versionId}getText(){return null===this._cachedTextValue&&(this._cachedTextValue=this._lines.join(this._eol)),this._cachedTextValue}onEvents(e){e.eol&&e.eol!==this._eol&&(this._eol=e.eol,this._lineStarts=null);const t=e.changes;for(const n of t)this._acceptDeleteRange(n.range),this._acceptInsertText(new r["a"](n.range.startLineNumber,n.range.startColumn),n.text);this._versionId=e.versionId,this._cachedTextValue=null}_ensureLineStarts(){if(!this._lineStarts){const e=this._eol.length,t=this._lines.length,n=new Uint32Array(t);for(let i=0;i<t;i++)n[i]=this._lines[i].length+e;this._lineStarts=new s["b"](n)}}_setLineText(e,t){this._lines[e]=t,this._lineStarts&&this._lineStarts.setValue(e,this._lines[e].length+this._eol.length)}_acceptDeleteRange(e){if(e.startLineNumber!==e.endLineNumber)this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.endLineNumber-1].substring(e.endColumn-1)),this._lines.splice(e.startLineNumber,e.endLineNumber-e.startLineNumber),this._lineStarts&&this._lineStarts.removeValues(e.startLineNumber,e.endLineNumber-e.startLineNumber);else{if(e.startColumn===e.endColumn)return;this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.startLineNumber-1].substring(e.endColumn-1))}}_acceptInsertText(e,t){if(0===t.length)return;const n=Object(i["R"])(t);if(1===n.length)return void this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+n[0]+this._lines[e.lineNumber-1].substring(e.column-1));n[n.length-1]+=this._lines[e.lineNumber-1].substring(e.column-1),this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+n[0]);const r=new Uint32Array(n.length-1);for(let i=1;i<n.length;i++)this._lines.splice(e.lineNumber+i-1,0,n[i]),r[i-1]=n[i].length+this._eol.length;this._lineStarts&&this._lineStarts.insertValues(e.lineNumber,r)}}},b884:function(e,t,n){"use strict";n.d(t,"a",(function(){return u}));var i=n("308f"),r=n("3742"),s=n("6a89"),a=n("3352"),l=n("5320"),o=n("0ac5"),h=n("8d17"),f=n("a666");class u extends f["a"]{constructor(e,t,n,r,s,a,o){super(),this._onDidChangeContent=this._register(new i["b"]),this._BOM=t,this._mightContainNonBasicASCII=!a,this._mightContainRTL=r,this._mightContainUnusualLineTerminators=s,this._pieceTree=new l["a"](e,n,o)}mightContainRTL(){return this._mightContainRTL}mightContainUnusualLineTerminators(){return this._mightContainUnusualLineTerminators}resetMightContainUnusualLineTerminators(){this._mightContainUnusualLineTerminators=!1}mightContainNonBasicASCII(){return this._mightContainNonBasicASCII}getBOM(){return this._BOM}getEOL(){return this._pieceTree.getEOL()}createSnapshot(e){return this._pieceTree.createSnapshot(e?this._BOM:"")}getOffsetAt(e,t){return this._pieceTree.getOffsetAt(e,t)}getPositionAt(e){return this._pieceTree.getPositionAt(e)}getRangeAt(e,t){const n=e+t,i=this.getPositionAt(e),r=this.getPositionAt(n);return new s["a"](i.lineNumber,i.column,r.lineNumber,r.column)}getValueInRange(e,t=0){if(e.isEmpty())return"";const n=this._getEndOfLine(t);return this._pieceTree.getValueInRange(e,n)}getValueLengthInRange(e,t=0){if(e.isEmpty())return 0;if(e.startLineNumber===e.endLineNumber)return e.endColumn-e.startColumn;const n=this.getOffsetAt(e.startLineNumber,e.startColumn),i=this.getOffsetAt(e.endLineNumber,e.endColumn);return i-n}getCharacterCountInRange(e,t=0){if(this._mightContainNonBasicASCII){let n=0;const i=e.startLineNumber,s=e.endLineNumber;for(let t=i;t<=s;t++){const a=this.getLineContent(t),l=t===i?e.startColumn-1:0,o=t===s?e.endColumn-1:a.length;for(let e=l;e<o;e++)r["E"](a.charCodeAt(e))?(n+=1,e+=1):n+=1}return n+=this._getEndOfLine(t).length*(s-i),n}return this.getValueLengthInRange(e,t)}getLength(){return this._pieceTree.getLength()}getLineCount(){return this._pieceTree.getLineCount()}getLinesContent(){return this._pieceTree.getLinesContent()}getLineContent(e){return this._pieceTree.getLineContent(e)}getLineCharCode(e,t){return this._pieceTree.getLineCharCode(e,t)}getLineLength(e){return this._pieceTree.getLineLength(e)}getLineFirstNonWhitespaceColumn(e){const t=r["u"](this.getLineContent(e));return-1===t?0:t+1}getLineLastNonWhitespaceColumn(e){const t=r["I"](this.getLineContent(e));return-1===t?0:t+2}_getEndOfLine(e){switch(e){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL();default:throw new Error("Unknown EOL preference")}}setEOL(e){this._pieceTree.setEOL(e)}applyEdits(e,t,n){let i=this._mightContainRTL,s=this._mightContainUnusualLineTerminators,l=this._mightContainNonBasicASCII,f=!0,c=[];for(let a=0;a<e.length;a++){const t=e[a];f&&t._isTracked&&(f=!1);const n=t.range;if(t.text){let e=!0;l||(e=!r["A"](t.text),l=e),!i&&e&&(i=r["m"](t.text)),!s&&e&&(s=r["n"](t.text))}let h="",u=0,d=0,g=0;if(t.text){let e;[u,d,g,e]=Object(o["a"])(t.text);const n=this.getEOL(),i="\r\n"===n?2:1;h=0===e||e===i?t.text:t.text.replace(/\r\n|\r|\n/g,n)}c[a]={sortIndex:a,identifier:t.identifier||null,range:n,rangeOffset:this.getOffsetAt(n.startLineNumber,n.startColumn),rangeLength:this.getValueLengthInRange(n),text:h,eolCount:u,firstLineLength:d,lastLineLength:g,forceMoveMarkers:Boolean(t.forceMoveMarkers),isAutoWhitespaceEdit:t.isAutoWhitespaceEdit||!1}}c.sort(u._sortOpsAscending);let d=!1;for(let r=0,a=c.length-1;r<a;r++){const e=c[r].range.getEndPosition(),t=c[r+1].range.getStartPosition();if(t.isBeforeOrEqual(e)){if(t.isBefore(e))throw new Error("Overlapping ranges are not allowed!");d=!0}}f&&(c=this._reduceOperations(c));const g=n||t?u._getInverseEditRanges(c):[],p=[];if(t)for(let a=0;a<c.length;a++){const e=c[a],t=g[a];if(e.isAutoWhitespaceEdit&&e.range.isEmpty())for(let n=t.startLineNumber;n<=t.endLineNumber;n++){let i="";n===t.startLineNumber&&(i=this.getLineContent(e.range.startLineNumber),-1!==r["u"](i))||p.push({lineNumber:n,oldContent:i})}}let m=null;if(n){let e=0;m=[];for(let t=0;t<c.length;t++){const n=c[t],i=g[t],r=this.getValueInRange(n.range),s=n.rangeOffset+e;e+=n.text.length-r.length,m[t]={sortIndex:n.sortIndex,identifier:n.identifier,range:i,text:r,textChange:new h["a"](n.rangeOffset,r,s,n.text)}}d||m.sort((e,t)=>e.sortIndex-t.sortIndex)}this._mightContainRTL=i,this._mightContainUnusualLineTerminators=s,this._mightContainNonBasicASCII=l;const _=this._doApplyEdits(c);let b=null;if(t&&p.length>0){p.sort((e,t)=>t.lineNumber-e.lineNumber),b=[];for(let e=0,t=p.length;e<t;e++){const t=p[e].lineNumber;if(e>0&&p[e-1].lineNumber===t)continue;const n=p[e].oldContent,i=this.getLineContent(t);0!==i.length&&i!==n&&-1===r["u"](i)&&b.push(t)}}return this._onDidChangeContent.fire(),new a["a"](m,_,b)}_reduceOperations(e){return e.length<1e3?e:[this._toSingleEditOperation(e)]}_toSingleEditOperation(e){let t=!1;const n=e[0].range,i=e[e.length-1].range,r=new s["a"](n.startLineNumber,n.startColumn,i.endLineNumber,i.endColumn);let a=n.startLineNumber,l=n.startColumn;const h=[];for(let o=0,g=e.length;o<g;o++){const n=e[o],i=n.range;t=t||n.forceMoveMarkers,h.push(this.getValueInRange(new s["a"](a,l,i.startLineNumber,i.startColumn))),n.text.length>0&&h.push(n.text),a=i.endLineNumber,l=i.endColumn}const f=h.join(""),[u,c,d]=Object(o["a"])(f);return{sortIndex:0,identifier:e[0].identifier,range:r,rangeOffset:this.getOffsetAt(r.startLineNumber,r.startColumn),rangeLength:this.getValueLengthInRange(r,0),text:f,eolCount:u,firstLineLength:c,lastLineLength:d,forceMoveMarkers:t,isAutoWhitespaceEdit:!1}}_doApplyEdits(e){e.sort(u._sortOpsDescending);const t=[];for(let n=0;n<e.length;n++){const i=e[n],r=i.range.startLineNumber,a=i.range.startColumn,l=i.range.endLineNumber,o=i.range.endColumn;if(r===l&&a===o&&0===i.text.length)continue;i.text?(this._pieceTree.delete(i.rangeOffset,i.rangeLength),this._pieceTree.insert(i.rangeOffset,i.text,!0)):this._pieceTree.delete(i.rangeOffset,i.rangeLength);const h=new s["a"](r,a,l,o);t.push({range:h,rangeLength:i.rangeLength,text:i.text,rangeOffset:i.rangeOffset,forceMoveMarkers:i.forceMoveMarkers})}return t}findMatchesLineByLine(e,t,n,i){return this._pieceTree.findMatchesLineByLine(e,t,n,i)}static _getInverseEditRanges(e){const t=[];let n=0,i=0,r=null;for(let a=0,l=e.length;a<l;a++){const l=e[a];let o,h,f;if(r?r.range.endLineNumber===l.range.startLineNumber?(o=n,h=i+(l.range.startColumn-r.range.endColumn)):(o=n+(l.range.startLineNumber-r.range.endLineNumber),h=l.range.startColumn):(o=l.range.startLineNumber,h=l.range.startColumn),l.text.length>0){const e=l.eolCount+1;f=1===e?new s["a"](o,h,o,h+l.firstLineLength):new s["a"](o,h,o+e-1,l.lastLineLength+1)}else f=new s["a"](o,h,o,h);n=f.endLineNumber,i=f.endColumn,t.push(f),r=l}return t}static _sortOpsAscending(e,t){const n=s["a"].compareRangesUsingEnds(e.range,t.range);return 0===n?e.sortIndex-t.sortIndex:n}static _sortOpsDescending(e,t){const n=s["a"].compareRangesUsingEnds(e.range,t.range);return 0===n?t.sortIndex-e.sortIndex:-n}}},be83:function(e,t,n){"use strict";n.d(t,"a",(function(){return l}));var i=n("3742"),r=n("5320"),s=n("b884");class a{constructor(e,t,n,i,r,s,a,l,o){this._chunks=e,this._bom=t,this._cr=n,this._lf=i,this._crlf=r,this._containsRTL=s,this._containsUnusualLineTerminators=a,this._isBasicASCII=l,this._normalizeEOL=o}_getEOL(e){const t=this._cr+this._lf+this._crlf,n=this._cr+this._crlf;return 0===t?1===e?"\n":"\r\n":n>t/2?"\r\n":"\n"}create(e){const t=this._getEOL(e),n=this._chunks;if(this._normalizeEOL&&("\r\n"===t&&(this._cr>0||this._lf>0)||"\n"===t&&(this._cr>0||this._crlf>0)))for(let s=0,a=n.length;s<a;s++){const e=n[s].buffer.replace(/\r\n|\r|\n/g,t),i=Object(r["d"])(e);n[s]=new r["b"](e,i)}const i=new s["a"](n,this._bom,t,this._containsRTL,this._containsUnusualLineTerminators,this._isBasicASCII,this._normalizeEOL);return{textBuffer:i,disposable:i}}}class l{constructor(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.containsUnusualLineTerminators=!1,this.isBasicASCII=!0}acceptChunk(e){if(0===e.length)return;0===this.chunks.length&&i["T"](e)&&(this.BOM=i["e"],e=e.substr(1));const t=e.charCodeAt(e.length-1);13===t||t>=55296&&t<=56319?(this._acceptChunk1(e.substr(0,e.length-1),!1),this._hasPreviousChar=!0,this._previousChar=t):(this._acceptChunk1(e,!1),this._hasPreviousChar=!1,this._previousChar=t)}_acceptChunk1(e,t){(t||0!==e.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+e):this._acceptChunk2(e))}_acceptChunk2(e){const t=Object(r["c"])(this._tmpLineStarts,e);this.chunks.push(new r["b"](e,t.lineStarts)),this.cr+=t.cr,this.lf+=t.lf,this.crlf+=t.crlf,this.isBasicASCII&&(this.isBasicASCII=t.isBasicASCII),this.isBasicASCII||this.containsRTL||(this.containsRTL=i["m"](e)),this.isBasicASCII||this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=i["n"](e))}finish(e=!0){return this._finish(),new a(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,e)}_finish(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;const e=this.chunks[this.chunks.length-1];e.buffer+=String.fromCharCode(this._previousChar);const t=Object(r["d"])(e.buffer);e.lineStarts=t,13===this._previousChar&&this.cr++}}}},e9aa:function(e,t,n){"use strict";n.d(t,"b",(function(){return f})),n.d(t,"a",(function(){return u}));var i=n("e8e3"),r=n("3742"),s=n("24b7"),a=n("6a89"),l=n("8fda"),o=n("d7a2"),h=n("d428");class f extends l["a"]{constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t}getLanguageConfiguration(e){return this.languageConfigurationService.getLanguageConfiguration(e)}_computeIndentLevel(e){return Object(o["a"])(this.textModel.getLineContent(e+1),this.textModel.getOptions().tabSize)}getActiveIndentGuide(e,t,n){this.assertNotDisposed();const i=this.textModel.getLineCount();if(e<1||e>i)throw new Error("Illegal value for lineNumber");const r=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,s=Boolean(r&&r.offSide);let a=-2,l=-1,o=-2,h=-1;const f=e=>{if(-1!==a&&(-2===a||a>e-1)){a=-1,l=-1;for(let t=e-2;t>=0;t--){const e=this._computeIndentLevel(t);if(e>=0){a=t,l=e;break}}}if(-2===o){o=-1,h=-1;for(let t=e;t<i;t++){const e=this._computeIndentLevel(t);if(e>=0){o=t,h=e;break}}}};let u=-2,c=-1,d=-2,g=-1;const p=e=>{if(-2===u){u=-1,c=-1;for(let t=e-2;t>=0;t--){const e=this._computeIndentLevel(t);if(e>=0){u=t,c=e;break}}}if(-1!==d&&(-2===d||d<e-1)){d=-1,g=-1;for(let t=e;t<i;t++){const e=this._computeIndentLevel(t);if(e>=0){d=t,g=e;break}}}};let m=0,_=!0,b=0,C=!0,L=0,I=0;for(let x=0;_||C;x++){const r=e-x,a=e+x;x>1&&(r<1||r<t)&&(_=!1),x>1&&(a>i||a>n)&&(C=!1),x>5e4&&(_=!1,C=!1);let d=-1;if(_&&r>=1){const e=this._computeIndentLevel(r-1);e>=0?(o=r-1,h=e,d=Math.ceil(e/this.textModel.getOptions().indentSize)):(f(r),d=this._getIndentLevelForWhitespaceLine(s,l,h))}let S=-1;if(C&&a<=i){const e=this._computeIndentLevel(a-1);e>=0?(u=a-1,c=e,S=Math.ceil(e/this.textModel.getOptions().indentSize)):(p(a),S=this._getIndentLevelForWhitespaceLine(s,c,g))}if(0!==x){if(1===x){if(a<=i&&S>=0&&I+1===S){_=!1,m=a,b=a,L=S;continue}if(r>=1&&d>=0&&d-1===I){C=!1,m=r,b=r,L=d;continue}if(m=e,b=e,L=I,0===L)return{startLineNumber:m,endLineNumber:b,indent:L}}_&&(d>=L?m=r:_=!1),C&&(S>=L?b=a:C=!1)}else I=d}return{startLineNumber:m,endLineNumber:b,indent:L}}getLinesBracketGuides(e,t,n,s){var l,o,f,c,d;const g=[],p=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new a["a"](e,1,t,this.textModel.getLineMaxColumn(t)));let m=void 0;if(n&&p.length>0){const r=e<=n.lineNumber&&n.lineNumber<=t?p.filter(e=>a["a"].strictContainsPosition(e.range,n)):this.textModel.bracketPairs.getBracketPairsInRange(a["a"].fromPositions(n));m=null===(l=Object(i["j"])(r,e=>e.range.startLineNumber!==e.range.endLineNumber))||void 0===l?void 0:l.range}const _=new i["a"](p),b=new Array,C=new Array,L=new u;for(let i=e;i<=t;i++){let e=new Array;C.length>0&&(e=e.concat(C),C.length=0),g.push(e);for(const n of _.takeWhile(e=>e.openingBracketRange.startLineNumber<=i)||[]){if(n.range.startLineNumber===n.range.endLineNumber)continue;const e=Math.min(this.getVisibleColumnFromPosition(n.openingBracketRange.getStartPosition()),this.getVisibleColumnFromPosition(null!==(f=null===(o=n.closingBracketRange)||void 0===o?void 0:o.getStartPosition())&&void 0!==f?f:n.range.getEndPosition()),n.minVisibleColumnIndentation+1);let t=!1;if(n.closingBracketRange){const e=r["u"](this.textModel.getLineContent(n.closingBracketRange.startLineNumber));e<n.closingBracketRange.startColumn-1&&(t=!0)}const i=n.openingBracketRange.getStartPosition(),s=null!==(d=null===(c=n.closingBracketRange)||void 0===c?void 0:c.getStartPosition())&&void 0!==d?d:n.range.getEndPosition();void 0===n.closingBracketRange?b[n.nestingLevel]=null:b[n.nestingLevel]={nestingLevel:n.nestingLevel,guideVisibleColumn:e,start:i,visibleStartColumn:this.getVisibleColumnFromPosition(i),end:s,visibleEndColumn:this.getVisibleColumnFromPosition(s),bracketPair:n,renderHorizontalEndLineAtTheBottom:t}}for(const n of b){if(!n)continue;const t=m&&n.bracketPair.range.equalsRange(m),r=L.getInlineClassNameOfLevel(n.nestingLevel)+(s.highlightActive&&t?" "+L.activeClassName:"");(t&&s.horizontalGuides!==h["a"].Disabled||s.includeInactive&&s.horizontalGuides===h["a"].Enabled)&&(n.start.lineNumber===i&&n.guideVisibleColumn<n.visibleStartColumn&&e.push(new h["b"](n.guideVisibleColumn,r,new h["c"](!1,n.start.column))),n.end.lineNumber===i+1&&n.guideVisibleColumn<n.visibleEndColumn&&C.push(new h["b"](n.guideVisibleColumn,r,new h["c"](!n.renderHorizontalEndLineAtTheBottom,n.end.column))))}let t=Number.MAX_SAFE_INTEGER;for(let n=b.length-1;n>=0;n--){const r=b[n];if(!r)continue;const a=s.highlightActive&&m&&r.bracketPair.range.equalsRange(m),l=L.getInlineClassNameOfLevel(r.nestingLevel)+(a?" "+L.activeClassName:"");(a||s.includeInactive)&&r.renderHorizontalEndLineAtTheBottom&&r.end.lineNumber===i+1&&C.push(new h["b"](r.guideVisibleColumn,l,null)),r.end.lineNumber<=i||r.start.lineNumber>=i||(r.guideVisibleColumn>=t&&!a||(t=r.guideVisibleColumn,(a||s.includeInactive)&&e.push(new h["b"](r.guideVisibleColumn,l,null))))}e.sort((e,t)=>e.visibleColumn-t.visibleColumn)}return g}getVisibleColumnFromPosition(e){return s["a"].visibleColumnFromColumn(this.textModel.getLineContent(e.lineNumber),e.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(e,t){this.assertNotDisposed();const n=this.textModel.getLineCount();if(e<1||e>n)throw new Error("Illegal value for startLineNumber");if(t<1||t>n)throw new Error("Illegal value for endLineNumber");const i=this.textModel.getOptions(),r=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,s=Boolean(r&&r.offSide),a=new Array(t-e+1);let l=-2,o=-1,h=-2,f=-1;for(let u=e;u<=t;u++){const t=u-e,r=this._computeIndentLevel(u-1);if(r>=0)l=u-1,o=r,a[t]=Math.ceil(r/i.indentSize);else{if(-2===l){l=-1,o=-1;for(let e=u-2;e>=0;e--){const t=this._computeIndentLevel(e);if(t>=0){l=e,o=t;break}}}if(-1!==h&&(-2===h||h<u-1)){h=-1,f=-1;for(let e=u;e<n;e++){const t=this._computeIndentLevel(e);if(t>=0){h=e,f=t;break}}}a[t]=this._getIndentLevelForWhitespaceLine(s,o,f)}}return a}_getIndentLevelForWhitespaceLine(e,t,n){const i=this.textModel.getOptions();return-1===t||-1===n?0:t<n?1+Math.floor(t/i.indentSize):t===n||e?Math.ceil(n/i.indentSize):1+Math.floor(n/i.indentSize)}}class u{constructor(){this.activeClassName="indent-active"}getInlineClassNameOfLevel(e){return"bracket-indent-guide lvl-"+e%30}}}}]);
Coded by KALI :v Greetz to DR HARD ../ kali.zbi@hotmail.com