物管理前端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

16 lines
282 KiB

  1. function io(e,t=0){return e[e.length-(1+t)]}function ro(e){if(e.length===0)throw new Error("Invalid tail call");return[e.slice(0,e.length-1),e[e.length-1]]}function si(e,t,n=(s,i)=>s===i){if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let s=0,i=e.length;s<i;s++)if(!n(e[s],t[s]))return!1;return!0}function ao(e,t){const n=e.length-1;t<n&&(e[t]=e[n]),e.pop()}function oo(e,t,n){return ii(e.length,s=>n(e[s],t))}function ii(e,t){let n=0,s=e-1;for(;n<=s;){const i=(n+s)/2|0,r=t(i);if(r<0)n=i+1;else if(r>0)s=i-1;else return i}return-(n+1)}function Rn(e,t,n){if(e=e|0,e>=t.length)throw new TypeError("invalid index");const s=t[Math.floor(t.length*Math.random())],i=[],r=[],a=[];for(const l of t){const u=n(l,s);u<0?i.push(l):u>0?r.push(l):a.push(l)}return e<i.length?Rn(e,i,n):e<i.length+a.length?a[0]:Rn(e-(i.length+a.length),r,n)}function lo(e,t){const n=[];let s;for(const i of e.slice(0).sort(t))!s||t(s[0],i)!==0?(s=[i],n.push(s)):s.push(i);return n}function*ri(e,t){let n,s;for(const i of e)s!==void 0&&t(s,i)?n.push(i):(n&&(yield n),n=[i]),s=i;n&&(yield n)}function ai(e,t){for(let n=0;n<=e.length;n++)t(n===0?void 0:e[n-1],n===e.length?void 0:e[n])}function oi(e,t){for(let n=0;n<e.length;n++)t(n===0?void 0:e[n-1],e[n],n+1===e.length?void 0:e[n+1])}function uo(e){return e.filter(t=>!!t)}function co(e){let t=0;for(let n=0;n<e.length;n++)e[n]&&(e[t]=e[n],t+=1);e.length=t}function ho(e){return!Array.isArray(e)||e.length===0}function fo(e){return Array.isArray(e)&&e.length>0}function mo(e,t=n=>n){const n=new Set;return e.filter(s=>{const i=t(s);return n.has(i)?!1:(n.add(i),!0)})}function go(e,t){return e.length>0?e[0]:t}function bo(e,t){let n=typeof t=="number"?e:0;typeof t=="number"?n=e:(n=0,t=e);const s=[];if(n<=t)for(let i=n;i<t;i++)s.push(i);else for(let i=n;i>t;i--)s.push(i);return s}function li(e,t,n){const s=e.slice(0,t),i=e.slice(t);return s.concat(n,i)}function _o(e,t){const n=e.indexOf(t);n>-1&&(e.splice(n,1),e.unshift(t))}function po(e,t){const n=e.indexOf(t);n>-1&&(e.splice(n,1),e.push(t))}function ui(e,t){for(const n of t)e.push(n)}function xo(e){return Array.isArray(e)?e:[e]}function ci(e,t,n){const s=b1(e,t),i=e.length,r=n.length;e.length=i+r;for(let a=i-1;a>=s;a--)e[a+r]=e[a];for(let a=0;a<r;a++)e[a+s]=n[a]}function vo(e,t,n,s){const i=b1(e,t);let r=e.splice(i,n);return r===void 0&&(r=[]),ci(e,i,s),r}function b1(e,t){return t<0?Math.max(t+e.length,0):Math.min(t,e.length)}var it;(function(e){function t(r){return r<0}e.isLessThan=t;function n(r){return r<=0}e.isLessThanOrEqual=n;function s(r){return r>0}e.isGreaterThan=s;function i(r){return r===0}e.isNeitherLessOrGreaterThan=i,e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(it||(it={}));function vt(e,t){return(n,s)=>t(e(n),e(s))}function Lo(...e){return(t,n)=>{for(const s of e){const i=s(t,n);if(!it.isNeitherLessOrGreaterThan(i))return i}return it.neitherLessOrGreaterThan}}const tt=(e,t)=>e-t,wo=(e,t)=>tt(e?1:0,t?1:0);function hi(e){return(t,n)=>-e(t,n)}class No{constructor(t){this.items=t,this.firstIdx=0,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(t){let n=this.firstIdx;for(;n<this.items.length&&t(this.items[n]);)n++;const s=n===this.firstIdx?null:this.items.slice(this.firstIdx,n);return this.firstIdx=n,s}takeFromEndWhile(t){let n=this.lastIdx;for(;n>=0&&t(this.items[n]);)n--;const s=n===this.lastIdx?null:this.items.slice(n+1,this.lastIdx+1);return this.lastIdx=n,s}peek(){if(this.length!==0)return this.items[this.firstIdx]}dequeue(){const t=this.items[this.firstIdx];return this.firstIdx++,t}takeCount(t){const n=this.items.slice(this.firstIdx,this.firstIdx+t);return this.firstIdx+=t,n}}class rt{constructor(t){this.iterate=t}toArray(){const t=[];return this.iterate(n=>(t.push(n),!0)),t}filter(t){return new rt(n=>this.iterate(s=>t(s)?n(s):!0))}map(t){return new rt(n=>this.iterate(s=>n(t(s))))}findLast(t){let n;return this.iterate(s=>(t(s)&&(n=s),!0)),n}findLastMaxBy(t){let n,s=!0;return this.iterate(i=>((s||it.isGreaterThan(t(i,n)))&&(s=!1,n=i),!0)),n}}rt.empty=new rt(e=>{});class Qt{constructor(t){th
  2. `+t.stack):new Error(t.message+`
  3. `+t.stack):t},0)}}emit(t){this.listeners.forEach(n=>{n(t)})}onUnexpectedError(t){this.unexpectedErrorHandler(t),this.emit(t)}onUnexpectedExternalError(t){this.unexpectedErrorHandler(t)}}const R1=new Fi;function nt(e){E1(e)||R1.onUnexpectedError(e)}function jo(e){E1(e)||R1.onUnexpectedExternalError(e)}function kn(e){if(e instanceof Error){const{name:t,message:n}=e,s=e.stacktrace||e.stack;return{$isError:!0,name:t,message:n,stack:s,noTelemetry:We.isErrorNoTelemetry(e)}}return e}const Mt="Canceled";function E1(e){return e instanceof Di?!0:e instanceof Error&&e.name===Mt&&e.message===Mt}class Di extends Error{constructor(){super(Mt),this.name=this.message}}function Qo(){const e=new Error(Mt);return e.name=e.message,e}function Xo(e){return e?new Error(`Illegal argument: ${e}`):new Error("Illegal argument")}function Jo(e){return e?new Error(`Illegal state: ${e}`):new Error("Illegal state")}class Yo extends Error{constructor(t){super("NotSupported"),t&&(this.message=t)}}class We extends Error{constructor(t){super(t),this.name="CodeExpectedError"}static fromError(t){if(t instanceof We)return t;const n=new We;return n.message=t.message,n.stack=t.stack,n}static isErrorNoTelemetry(t){return t.name==="CodeExpectedError"}}class re extends Error{constructor(t){super(t||"An unexpected bug occurred."),Object.setPrototypeOf(this,re.prototype)}}function y1(e,t){const n=this;let s=!1,i;return function(){return s||(s=!0,i=e.apply(n,arguments)),i}}function Zo(e){return e}function Ko(e){return typeof e=="object"&&e!==null&&typeof e.dispose=="function"&&e.dispose.length===0}function bn(e){if(yt.is(e)){const t=[];for(const n of e)if(n)try{n.dispose()}catch(s){t.push(s)}if(t.length===1)throw t[0];if(t.length>1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function Pi(...e){return ot(()=>bn(e))}function ot(e){return{dispose:y1(()=>{e()})}}class je{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{bn(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?je.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}deleteAndLeak(t){t&&this._toDispose.has(t)&&this._toDispose.delete(t)}}je.DISABLE_DISPOSED_WARNING=!1;class ye{constructor(){this._store=new je,this._store}dispose(){this._store.dispose()}_register(t){if(t===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(t)}}ye.None=Object.freeze({dispose(){}});class e0{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(t){var n;this._isDisposed||t===this._value||((n=this._value)===null||n===void 0||n.dispose(),this._value=t)}clear(){this.value=void 0}dispose(){var t;this._isDisposed=!0,(t=this._value)===null||t===void 0||t.dispose(),this._value=void 0}}class t0{constructor(t){this._disposable=t,this._counter=1}acquire(){return this._counter++,this}release(){return--this._counter===0&&this._disposable.dispose(),this}}class n0{constructor(t){this.object=t}dispose(){}}class s0{constructor(){this._store=new Map,this._isDisposed=!1}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{bn(this._store.values())}finally{this._store.clear()}}get(t){return this._store.get(t)}set(t,n,s=!1){var i;this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),s||(i=this._store.get(t))===null||i===void 0||i.dispose(),this._store.set(t,n)}deleteAndDispose(t){var n;(n=this._store.get(t))===null||n===void 0||n.dispose(),this._store.delete(t)}[Symbol.iterator](){return this._store[Symbol.iterator]()}}co
  4. `).slice(2).join(`
  5. `))}}class Vi extends Error{constructor(t,n){super(t),this.name="ListenerLeakError",this.stack=n}}class qi extends Error{constructor(t,n){super(t),this.name="ListenerRefusalError",this.stack=n}}class zt{constructor(t){this.value=t}}const Ui=2;class Z{constructor(t){var n,s,i,r,a,l;this._size=0,this._options=t,this._leakageMon=!((n=this._options)===null||n===void 0)&&n.leakWarningThreshold?new Bi((s=t==null?void 0:t.onListenerError)!==null&&s!==void 0?s:nt,(r=(i=this._options)===null||i===void 0?void 0:i.leakWarningThreshold)!==null&&r!==void 0?r:Ti):void 0,this._perfMon=!((a=this._options)===null||a===void 0)&&a._profName?new Oe(this._options._profName):void 0,this._deliveryQueue=(l=this._options)===null||l===void 0?void 0:l.deliveryQueue}dispose(){var t,n,s,i;this._disposed||(this._disposed=!0,((t=this._deliveryQueue)===null||t===void 0?void 0:t.current)===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),(s=(n=this._options)===null||n===void 0?void 0:n.onDidRemoveLastListener)===null||s===void 0||s.call(n),(i=this._leakageMon)===null||i===void 0||i.dispose())}get event(){var t;return(t=this._event)!==null&&t!==void 0||(this._event=(n,s,i)=>{var r,a,l,u,c,h,f;if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const b=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(b);const v=(r=this._leakageMon.getMostFrequentStack())!==null&&r!==void 0?r:["UNKNOWN stack",-1],w=new qi(`${b}. HINT: Stack shows most frequent listener (${v[1]}-times)`,v[0]);return(((a=this._options)===null||a===void 0?void 0:a.onListenerError)||nt)(w),ye.None}if(this._disposed)return ye.None;s&&(n=n.bind(s));const d=new zt(n);let m;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(d.stack=_n.create(),m=this._leakageMon.check(d.stack,this._size+1)),this._listeners?this._listeners instanceof zt?((f=this._deliveryQueue)!==null&&f!==void 0||(this._deliveryQueue=new M1),this._listeners=[this._listeners,d]):this._listeners.push(d):((u=(l=this._options)===null||l===void 0?void 0:l.onWillAddFirstListener)===null||u===void 0||u.call(l,this),this._listeners=d,(h=(c=this._options)===null||c===void 0?void 0:c.onDidAddFirstListener)===null||h===void 0||h.call(c,this)),this._size++;const g=ot(()=>{m==null||m(),this._removeListener(d)});return i instanceof je?i.add(g):Array.isArray(i)&&i.push(g),g}),this._event}_removeListener(t){var n,s,i,r;if((s=(n=this._options)===null||n===void 0?void 0:n.onWillRemoveListener)===null||s===void 0||s.call(n,this),!this._listeners)return;if(this._size===1){this._listeners=void 0,(r=(i=this._options)===null||i===void 0?void 0:i.onDidRemoveLastListener)===null||r===void 0||r.call(i,this),this._size=0;return}const a=this._listeners,l=a.indexOf(t);if(l===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,a[l]=void 0;const u=this._deliveryQueue.current===this;if(this._size*Ui<=a.length){let c=0;for(let h=0;h<a.length;h++)a[h]?a[c++]=a[h]:u&&(this._deliveryQueue.end--,c<this._deliveryQueue.i&&this._deliveryQueue.i--);a.length=c}}_deliver(t,n){var s;if(!t)return;const i=((s=this._options)===null||s===void 0?void 0:s.onListenerError)||nt;if(!i){t.value(n);return}try{t.value(n)}catch(r){i(r)}}_deliverQueue(t){const n=t.current._listeners;for(;t.i<t.end;)this._deliver(n[t.i++],t.value);t.reset()}fire(t){var n,s,i,r;if(!((n=this._deliveryQueue)===null||n===void 0)&&n.current&&(this._deliverQueue(this._deliveryQueue),(s=this._perfMon)===null||s===void 0||s.stop()),(i=this._perfMon)===null||i===void 0||i.start(this._size),this._listeners)if(this._listeners instanceof zt)this._deliver(this._listeners,t);else{const a=this._deliveryQueue;a.enqueue(this,t,this._listeners.length),this._deliverQueue(a)}(r=this._perfMon)===null||r===void 0||r.stop()}hasListeners(){return this._size>0}}const i0=()=>new M1;class M1{constructor(
  6. `)>=0;let n=null;try{n=vr(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:t,global:!0,unicode:!0})}catch{return null}if(!n)return null;let s=!this.isRegex&&!t;return s&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(s=this.matchCase),new ca(n,this.wordSeparators?ua(this.wordSeparators,[]):null,s?this.searchString:null)}}function fa(e){if(!e||e.length===0)return!1;for(let t=0,n=e.length;t<n;t++){const s=e.charCodeAt(t);if(s===10)return!0;if(s===92){if(t++,t>=n)break;const i=e.charCodeAt(t);if(i===110||i===114||i===87)return!0}}return!1}function Je(e,t,n){if(!n)return new ln(e,null);const s=[];for(let i=0,r=t.length;i<r;i++)s[i]=t[i];return new ln(e,s)}class Js{constructor(t){const n=[];let s=0;for(let i=0,r=t.length;i<r;i++)t.charCodeAt(i)===10&&(n[s++]=i);this._lineFeedsOffsets=n}findLineFeedCountBeforeOffset(t){const n=this._lineFeedsOffsets;let s=0,i=n.length-1;if(i===-1||t<=n[0])return 0;for(;s<i;){const r=s+((i-s)/2>>0);n[r]>=t?i=r-1:n[r+1]>=t?(s=r,i=r):s=r+1}return s+1}}class gl{static findMatches(t,n,s,i,r){const a=n.parseSearchRequest();return a?a.regex.multiline?this._doFindMatchesMultiline(t,s,new et(a.wordSeparators,a.regex),i,r):this._doFindMatchesLineByLine(t,s,a,i,r):[]}static _getMultilineMatchRange(t,n,s,i,r,a){let l,u=0;i?(u=i.findLineFeedCountBeforeOffset(r),l=n+r+u):l=n+r;let c;if(i){const m=i.findLineFeedCountBeforeOffset(r+a.length)-u;c=l+a.length+m}else c=l+a.length;const h=t.getPositionAt(l),f=t.getPositionAt(c);return new E(h.lineNumber,h.column,f.lineNumber,f.column)}static _doFindMatchesMultiline(t,n,s,i,r){const a=t.getOffsetAt(n.getStartPosition()),l=t.getValueInRange(n,1),u=t.getEOL()===`\r
  7. `?new Js(l):null,c=[];let h=0,f;for(s.reset(0);f=s.next(l);)if(c[h++]=Je(this._getMultilineMatchRange(t,a,l,u,f.index,f[0]),f,i),h>=r)return c;return c}static _doFindMatchesLineByLine(t,n,s,i,r){const a=[];let l=0;if(n.startLineNumber===n.endLineNumber){const c=t.getLineContent(n.startLineNumber).substring(n.startColumn-1,n.endColumn-1);return l=this._findMatchesInLine(s,c,n.startLineNumber,n.startColumn-1,l,a,i,r),a}const u=t.getLineContent(n.startLineNumber).substring(n.startColumn-1);l=this._findMatchesInLine(s,u,n.startLineNumber,n.startColumn-1,l,a,i,r);for(let c=n.startLineNumber+1;c<n.endLineNumber&&l<r;c++)l=this._findMatchesInLine(s,t.getLineContent(c),c,0,l,a,i,r);if(l<r){const c=t.getLineContent(n.endLineNumber).substring(0,n.endColumn-1);l=this._findMatchesInLine(s,c,n.endLineNumber,0,l,a,i,r)}return a}static _findMatchesInLine(t,n,s,i,r,a,l,u){const c=t.wordSeparators;if(!l&&t.simpleSearch){const d=t.simpleSearch,m=d.length,g=n.length;let b=-m;for(;(b=n.indexOf(d,b+m))!==-1;)if((!c||Q1(c,n,g,b,m))&&(a[r++]=new ln(new E(s,b+1+i,s,b+1+m+i),null),r>=u))return r;return r}const h=new et(t.wordSeparators,t.regex);let f;h.reset(0);do if(f=h.next(n),f&&(a[r++]=Je(new E(s,f.index+1+i,s,f.index+1+f[0].length+i),f,l),r>=u))return r;while(f);return r}static findNextMatch(t,n,s,i){const r=n.parseSearchRequest();if(!r)return null;const a=new et(r.wordSeparators,r.regex);return r.regex.multiline?this._doFindNextMatchMultiline(t,s,a,i):this._doFindNextMatchLineByLine(t,s,a,i)}static _doFindNextMatchMultiline(t,n,s,i){const r=new O(n.lineNumber,1),a=t.getOffsetAt(r),l=t.getLineCount(),u=t.getValueInRange(new E(r.lineNumber,r.column,l,t.getLineMaxColumn(l)),1),c=t.getEOL()===`\r
  8. `?new Js(u):null;s.reset(n.column-1);const h=s.next(u);return h?Je(this._getMultilineMatchRange(t,a,u,c,h.index,h[0]),h,i):n.lineNumber!==1||n.column!==1?this._doFindNextMatchMultiline(t,new O(1,1),s,i):null}static _doFindNextMatchLineByLine(t,n,s,i){const r=t.getLineCount(),a=n.lineNumber,l=t.getLineContent(a),u=this._findFirstMatchInLine(s,l,a,n.column,i);if(u)return u;for(let c=1;c<=r;c++){const h=(a+c-1)%r,f=t.getLineContent(h+1),d=this._findFirstMatchInLine(s,f,h+1,1,i);if(d)return d}return null}static _findFirstMatchInLine(t,n,s,i,r){t.reset(i-1);const a=t.next(n);return a?Je(new E(s,a.index+1,s,a.index+1+a[0].length),a,r):null}static findPreviousMatch(t,n,s,i){const r=n.parseSearchRequest();if(!r)return null;const a=new et(r.wordSeparators,r.regex);return r.regex.multiline?this._doFindPreviousMatchMultiline(t,s,a,i):this._doFindPreviousMatchLineByLine(t,s,a,i)}static _doFindPreviousMatchMultiline(t,n,s,i){const r=this._doFindMatchesMultiline(t,new E(1,1,n.lineNumber,n.column),s,i,10*ha);if(r.length>0)return r[r.length-1];const a=t.getLineCount();return n.lineNumber!==a||n.column!==t.getLineMaxColumn(a)?this._doFindPreviousMatchMultiline(t,new O(a,t.getLineMaxColumn(a)),s,i):null}static _doFindPreviousMatchLineByLine(t,n,s,i){const r=t.getLineCount(),a=n.lineNumber,l=t.getLineContent(a).substring(0,n.column-1),u=this._findLastMatchInLine(s,l,a,i);if(u)return u;for(let c=1;c<=r;c++){const h=(r+a-c-1)%r,f=t.getLineContent(h+1),d=this._findLastMatchInLine(s,f,h+1,i);if(d)return d}return null}static _findLastMatchInLine(t,n,s,i){let r=null,a;for(t.reset(0);a=t.next(n);)r=Je(new E(s,a.index+1,s,a.index+1+a[0].length),a,i);return r}}function da(e,t,n,s,i){if(s===0)return!0;const r=t.charCodeAt(s-1);if(e.get(r)!==0||r===13||r===10)return!0;if(i>0){const a=t.charCodeAt(s);if(e.get(a)!==0)return!0}return!1}function ma(e,t,n,s,i){if(s+i===n)return!0;const r=t.charCodeAt(s+i);if(e.get(r)!==0||r===13||r===10)return!0;if(i>0){const a=t.charCodeAt(s+i-1);if(e.get(a)!==0)return!0}return!1}function Q1(e,t,n,s,i){return da(e,t,n,s,i)&&ma(e,t,n,s,i)}class et{constructor(t,n){this._wordSeparators=t,this._searchRegex=n,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(t){this._searchRegex.lastIndex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(t){const n=t.length;let s;do{if(this._prevMatchStartIndex+this._prevMatchLength===n||(s=this._searchRegex.exec(t),!s))return null;const i=s.index,r=s[0].length;if(i===this._prevMatchStartIndex&&r===this._prevMatchLength){if(r===0){O1(t,n,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=i,this._prevMatchLength=r,!this._wordSeparators||Q1(this._wordSeparators,t,n,i,r))return s}while(s);return null}}class ga{static computeUnicodeHighlights(t,n,s){const i=s?s.startLineNumber:1,r=s?s.endLineNumber:t.getLineCount(),a=new Ys(n),l=a.getCandidateCodePoints();let u;l==="allNonBasicAscii"?u=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):u=new RegExp(`${ba(Array.from(l))}`,"g");const c=new et(null,u),h=[];let f=!1,d,m=0,g=0,b=0;e:for(let v=i,w=r;v<=w;v++){const S=t.getLineContent(v),p=S.length;c.reset(0);do if(d=c.next(S),d){let N=d.index,x=d.index+d[0].length;if(N>0){const q=S.charCodeAt(N-1);lt(q)&&N--}if(x+1<p){const q=S.charCodeAt(x-1);lt(q)&&x++}const R=S.substring(N,x);let y=gn(N+1,S1,S,0);y&&y.endColumn<=N+1&&(y=null);const M=a.shouldHighlightNonBasicASCII(R,y?y.word:null);if(M!==0){if(M===3?m++:M===2?g++:M===1?b++:Ur(),h.length>=1e3){f=!0;break e}h.push(new E(v,N+1,v,x+1))}}while(d)}return{ranges:h,hasMore:f,ambiguousCharacterCount:m,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:b}}static computeUnicodeHighlightReason(t,n){const s=new Ys(n);switch(s.shouldHighlightNonBasicASCII(t,null)){case 0:return null;case 2:return{kind:1};case 3:{const r=t.codePointAt(0),a=s.ambiguousCharacters.getPrimaryConfusable(r),l=Me.getLocales().filter(u=>!Me.getInstance(new Set([...n.allowedLocales,u])).isAmbiguous(r));return{kind:0,confusableWith:String.fromCodePoint(a),notAmbiguousInLocales:l}}c
  9. `||e===" "}class At{constructor(t,n,s){this.changes=t,this.moves=n,this.hitTimeout=s}}class _a{constructor(t,n){this.lineRangeMapping=t,this.changes=n}}class P{static addRange(t,n){let s=0;for(;s<n.length&&n[s].endExclusive<t.start;)s++;let i=s;for(;i<n.length&&n[i].start<=t.endExclusive;)i++;if(s===i)n.splice(s,0,t);else{const r=Math.min(t.start,n[s].start),a=Math.max(t.endExclusive,n[i-1].endExclusive);n.splice(s,i-s,new P(r,a))}}static tryCreate(t,n){if(!(t>n))return new P(t,n)}static ofLength(t){return new P(0,t)}static ofStartAndLength(t,n){return new P(t,t+n)}constructor(t,n){if(this.start=t,this.endExclusive=n,t>n)throw new re(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(t){return new P(this.start+t,this.endExclusive+t)}deltaStart(t){return new P(this.start+t,this.endExclusive)}deltaEnd(t){return new P(this.start,this.endExclusive+t)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}contains(t){return this.start<=t&&t<this.endExclusive}join(t){return new P(Math.min(this.start,t.start),Math.max(this.endExclusive,t.endExclusive))}intersect(t){const n=Math.max(this.start,t.start),s=Math.min(this.endExclusive,t.endExclusive);if(n<=s)return new P(n,s)}intersects(t){const n=Math.max(this.start,t.start),s=Math.min(this.endExclusive,t.endExclusive);return n<s}isBefore(t){return this.endExclusive<=t.start}isAfter(t){return this.start>=t.endExclusive}slice(t){return t.slice(this.start,this.endExclusive)}substring(t){return t.substring(this.start,this.endExclusive)}clip(t){if(this.isEmpty)throw new re(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,t))}clipCyclic(t){if(this.isEmpty)throw new re(`Invalid clipping range: ${this.toString()}`);return t<this.start?this.endExclusive-(this.start-t)%this.length:t>=this.endExclusive?this.start+(t-this.start)%this.length:t}forEach(t){for(let n=this.start;n<this.endExclusive;n++)t(n)}}class X1{constructor(){this._sortedRanges=[]}addRange(t){let n=0;for(;n<this._sortedRanges.length&&this._sortedRanges[n].endExclusive<t.start;)n++;let s=n;for(;s<this._sortedRanges.length&&this._sortedRanges[s].start<=t.endExclusive;)s++;if(n===s)this._sortedRanges.splice(n,0,t);else{const i=Math.min(t.start,this._sortedRanges[n].start),r=Math.max(t.endExclusive,this._sortedRanges[s-1].endExclusive);this._sortedRanges.splice(n,s-n,new P(i,r))}}toString(){return this._sortedRanges.map(t=>t.toString()).join(", ")}intersectsStrict(t){let n=0;for(;n<this._sortedRanges.length&&this._sortedRanges[n].endExclusive<=t.start;)n++;return n<this._sortedRanges.length&&this._sortedRanges[n].start<t.endExclusive}intersectWithRange(t){const n=new X1;for(const s of this._sortedRanges){const i=s.intersect(t);i&&n.addRange(i)}return n}intersectWithRangeLength(t){return this.intersectWithRange(t).length}get length(){return this._sortedRanges.reduce((t,n)=>t+n.length,0)}}function bl(e,t){const n=pa(e,t);if(n!==-1)return e[n]}function pa(e,t,n=e.length-1){for(let s=n;s>=0;s--){const i=e[s];if(t(i))return s}return-1}function $e(e,t){const n=ht(e,t);return n===-1?void 0:e[n]}function ht(e,t,n=0,s=e.length){let i=n,r=s;for(;i<r;){const a=Math.floor((i+r)/2);t(e[a])?i=a+1:r=a}return i-1}function xa(e,t){const n=un(e,t);return n===e.length?void 0:e[n]}function un(e,t,n=0,s=e.length){let i=n,r=s;for(;i<r;){const a=Math.floor((i+r)/2);t(e[a])?r=a:i=a+1}return i}class gt{constructor(t){this._array=t,this._findLastMonotonousLastIdx=0}findLastMonotonous(t){if(gt.assertInvariants){if(this._prevFindLastPredicate){for(const s of this._array)if(this._prevFindLastPredicate(s)&&!t(s))throw new Error("MonotonousArray: current predicate must be weaker than (or equal to) the previous predicate.")}this._prevFindLastPredicate=t}const n=ht(this._array,t,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=n+1,n===-1?void 0:this._array[n]}}gt.assertInvariants=!1;function va(e,t){if(e.length===0)return;let n=e[0];for(let s=1;s<e.length;s++){const i=e[s];t(i,n)>0&&(n=i)}retu
  10. `?(n++,s=0):s++;return new de(n,s)}constructor(t,n){this.lineCount=t,this.columnCount=n}isGreaterThanOrEqualTo(t){return this.lineCount!==t.lineCount?this.lineCount>t.lineCount:this.columnCount>=t.columnCount}createRange(t){return this.lineCount===0?new E(t.lineNumber,t.column,t.lineNumber,t.column+this.columnCount):new E(t.lineNumber,t.column,t.lineNumber+this.lineCount,this.columnCount+1)}addToPosition(t){return this.lineCount===0?new O(t.lineNumber,t.column+this.columnCount):new O(t.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}}de.zero=new de(0,0);class La{constructor(t){this.text=t,this.lineStartOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let n=0;n<t.length;n++)t.charAt(n)===`
  11. `&&this.lineStartOffsetByLineIdx.push(n+1)}getOffset(t){return this.lineStartOffsetByLineIdx[t.lineNumber-1]+t.column-1}getOffsetRange(t){return new P(this.getOffset(t.getStartPosition()),this.getOffset(t.getEndPosition()))}get textLength(){const t=this.lineStartOffsetByLineIdx.length-1;return new de(t,this.text.length-this.lineStartOffsetByLineIdx[t])}}class Ll{constructor(t){this.edits=t,ct(()=>Cn(t,(n,s)=>n.range.getEndPosition().isBeforeOrEqual(s.range.getStartPosition())))}apply(t){let n="",s=new O(1,1);for(const r of this.edits){const a=r.range,l=a.getStartPosition(),u=a.getEndPosition(),c=Ks(s,l);c.isEmpty()||(n+=t.getValueOfRange(c)),n+=r.text,s=u}const i=Ks(s,t.endPositionExclusive);return i.isEmpty()||(n+=t.getValueOfRange(i)),n}applyToString(t){const n=new Sa(t);return this.apply(n)}getNewRanges(){const t=[];let n=0,s=0,i=0;for(const r of this.edits){const a=de.ofText(r.text),l=O.lift({lineNumber:r.range.startLineNumber+s,column:r.range.startColumn+(r.range.startLineNumber===n?i:0)}),u=a.createRange(l);t.push(u),s=u.endLineNumber-r.range.endLineNumber,i=u.endColumn-r.range.endColumn,n=r.range.endLineNumber}return t}}class wa{constructor(t,n){this.range=t,this.text=n}}function Ks(e,t){if(e.lineNumber===t.lineNumber&&e.column===Number.MAX_SAFE_INTEGER)return E.fromPositions(t,t);if(!e.isBeforeOrEqual(t))throw new re("start must be before end");return new E(e.lineNumber,e.column,t.lineNumber,t.column)}class Na{get endPositionExclusive(){return this.length.addToPosition(new O(1,1))}}class Sa extends Na{constructor(t){super(),this.value=t,this._t=new La(this.value)}getValueOfRange(t){return this._t.getOffsetRange(t).substring(this.value)}get length(){return this._t.textLength}}class le{static inverse(t,n,s){const i=[];let r=1,a=1;for(const u of t){const c=new le(new T(r,u.original.startLineNumber),new T(a,u.modified.startLineNumber));c.modified.isEmpty||i.push(c),r=u.original.endLineNumberExclusive,a=u.modified.endLineNumberExclusive}const l=new le(new T(r,n+1),new T(a,s+1));return l.modified.isEmpty||i.push(l),i}static clip(t,n,s){const i=[];for(const r of t){const a=r.original.intersect(n),l=r.modified.intersect(s);a&&!a.isEmpty&&l&&!l.isEmpty&&i.push(new le(a,l))}return i}constructor(t,n){this.original=t,this.modified=n}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new le(this.modified,this.original)}join(t){return new le(this.original.join(t.original),this.modified.join(t.modified))}toRangeMapping(){const t=this.original.toInclusiveRange(),n=this.modified.toInclusiveRange();if(t&&n)return new Ce(t,n);if(this.original.startLineNumber===1||this.modified.startLineNumber===1){if(!(this.modified.startLineNumber===1&&this.original.startLineNumber===1))throw new re("not a valid diff");return new Ce(new E(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new E(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1))}else return new Ce(new E(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),new E(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER))}}class ge extends le{static fromRangeMappings(t){const n=T.join(t.map(i=>T.fromRangeInclusive(i.originalRange))),s=T.join(t.map(i=>T.fromRangeInclusive(i.modifiedRange)));return new ge(n,s,t)}constructor(t,n,s){super(t,n),this.innerChanges=s}flip(){var t;return new ge(this.modified,this.original,(t=this.innerChanges)===null||t===void 0?void 0:t.map(n=>n.flip()))}withInnerChangesFromLineRanges(){return new ge(this.original,this.modified,[this.toRangeMapping()])}}class Ce{constructor(t,n){this.originalRange=t,this.modifiedRange=n}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}flip(){return new Ce(this.modifiedRange,this.originalRange)}toTextEdit(t){const n=t.getValueOfRange(this.modifiedRange);return new wa(this.originalRange,n)}}const Ca=3;class Aa{computeDiff(t,n,s){var i;const a=new ya(t,n,{maxComputationTime:s.maxC
  12. `);this.histogram[l]=(this.histogram[l]||0)+1}this.totalCount=i}computeSimilarity(t){var n,s;let i=0;const r=Math.max(this.histogram.length,t.histogram.length);for(let a=0;a<r;a++)i+=Math.abs(((n=this.histogram[a])!==null&&n!==void 0?n:0)-((s=t.histogram[a])!==null&&s!==void 0?s:0));return 1-i/(this.totalCount+t.totalCount)}}Ge.chrKeys=new Map;class ka{compute(t,n,s=ft.instance,i){if(t.length===0||n.length===0)return be.trivial(t,n);const r=new Gt(t.length,n.length),a=new Gt(t.length,n.length),l=new Gt(t.length,n.length);for(let g=0;g<t.length;g++)for(let b=0;b<n.length;b++){if(!s.isValid())return be.trivialTimedOut(t,n);const v=g===0?0:r.get(g-1,b),w=b===0?0:r.get(g,b-1);let S;t.getElement(g)===n.getElement(b)?(g===0||b===0?S=0:S=r.get(g-1,b-1),g>0&&b>0&&a.get(g-1,b-1)===3&&(S+=l.get(g-1,b-1)),S+=i?i(g,b):1):S=-1;const p=Math.max(v,w,S);if(p===S){const N=g>0&&b>0?l.get(g-1,b-1):0;l.set(g,b,N+1),a.set(g,b,3)}else p===v?(l.set(g,b,0),a.set(g,b,1)):p===w&&(l.set(g,b,0),a.set(g,b,2));r.set(g,b,p)}const u=[];let c=t.length,h=n.length;function f(g,b){(g+1!==c||b+1!==h)&&u.push(new H(new P(g+1,c),new P(b+1,h))),c=g,h=b}let d=t.length-1,m=n.length-1;for(;d>=0&&m>=0;)a.get(d,m)===3?(f(d,m),d--,m--):a.get(d,m)===1?d--:m--;return f(-1,-1),u.reverse(),new be(u,!1)}}class Y1{compute(t,n,s=ft.instance){if(t.length===0||n.length===0)return be.trivial(t,n);const i=t,r=n;function a(b,v){for(;b<i.length&&v<r.length&&i.getElement(b)===r.getElement(v);)b++,v++;return b}let l=0;const u=new Fa;u.set(0,a(0,0));const c=new Da;c.set(0,u.get(0)===0?null:new n1(null,0,0,u.get(0)));let h=0;e:for(;;){if(l++,!s.isValid())return be.trivialTimedOut(i,r);const b=-Math.min(l,r.length+l%2),v=Math.min(l,i.length+l%2);for(h=b;h<=v;h+=2){const w=h===v?-1:u.get(h+1),S=h===b?-1:u.get(h-1)+1,p=Math.min(Math.max(w,S),i.length),N=p-h;if(p>i.length||N>r.length)continue;const x=a(p,N);u.set(h,x);const R=p===w?c.get(h+1):c.get(h-1);if(c.set(h,x!==p?new n1(R,p,N,x-p):R),u.get(h)===i.length&&u.get(h)-h===r.length)break e}}let f=c.get(h);const d=[];let m=i.length,g=r.length;for(;;){const b=f?f.x+f.length:0,v=f?f.y+f.length:0;if((b!==m||v!==g)&&d.push(new H(new P(b,m),new P(v,g))),!f)break;m=f.x,g=f.y,f=f.prev}return d.reverse(),new be(d,!1)}}class n1{constructor(t,n,s,i){this.prev=t,this.x=n,this.y=s,this.length=i}}class Fa{constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(t){return t<0?(t=-t-1,this.negativeArr[t]):this.positiveArr[t]}set(t,n){if(t<0){if(t=-t-1,t>=this.negativeArr.length){const s=this.negativeArr;this.negativeArr=new Int32Array(s.length*2),this.negativeArr.set(s)}this.negativeArr[t]=n}else{if(t>=this.positiveArr.length){const s=this.positiveArr;this.positiveArr=new Int32Array(s.length*2),this.positiveArr.set(s)}this.positiveArr[t]=n}}}class Da{constructor(){this.positiveArr=[],this.negativeArr=[]}get(t){return t<0?(t=-t-1,this.negativeArr[t]):this.positiveArr[t]}set(t,n){t<0?(t=-t-1,this.negativeArr[t]=n):this.positiveArr[t]=n}}class Tt{constructor(t,n,s){this.lines=t,this.considerWhitespaceChanges=s,this.elements=[],this.firstCharOffsetByLine=[],this.additionalOffsetByLine=[];let i=!1;n.start>0&&n.endExclusive>=t.length&&(n=new P(n.start-1,n.endExclusive),i=!0),this.lineRange=n,this.firstCharOffsetByLine[0]=0;for(let r=this.lineRange.start;r<this.lineRange.endExclusive;r++){let a=t[r],l=0;if(i)l=a.length,a="",i=!1;else if(!s){const u=a.trimStart();l=a.length-u.length,a=u.trimEnd()}this.additionalOffsetByLine.push(l);for(let u=0;u<a.length;u++)this.elements.push(a.charCodeAt(u));r<t.length-1&&(this.elements.push(10),this.firstCharOffsetByLine[r-this.lineRange.start+1]=this.elements.length)}this.additionalOffsetByLine.push(0)}toString(){return`Slice: "${this.text}"`}get text(){return this.getText(new P(0,this.length))}getText(t){return this.elements.slice(t.start,t.endExclusive).map(n=>String.fromCharCode(n)).join("")}getElement(t){return this.elements[t]}get length(){return this.elements.length}getBoundaryScore(t){const n=i1(t>0?this.elements[t-1]:-1),s=i1(t<this.elements.length?this.elements[t]:-1);if(n===7&&s
  13. `).length>=15&&Ta(f,m=>m.length>=2)>=2}),a=Ua(e,a),a}function Ta(e,t){let n=0;for(const s of e)t(s)&&n++;return n}function Ba(e,t,n,s){const i=[],r=e.filter(u=>u.modified.isEmpty&&u.original.length>=3).map(u=>new Ge(u.original,t,u)),a=new Set(e.filter(u=>u.original.isEmpty&&u.modified.length>=3).map(u=>new Ge(u.modified,n,u))),l=new Set;for(const u of r){let c=-1,h;for(const f of a){const d=u.computeSimilarity(f);d>c&&(c=d,h=f)}if(c>.9&&h&&(a.delete(h),i.push(new le(u.range,h.range)),l.add(u.source),l.add(h.source)),!s.isValid())return{moves:i,excludedChanges:l}}return{moves:i,excludedChanges:l}}function Va(e,t,n,s,i,r){const a=[],l=new oa;for(const d of e)for(let m=d.original.startLineNumber;m<d.original.endLineNumberExclusive-2;m++){const g=`${t[m-1]}:${t[m+1-1]}:${t[m+2-1]}`;l.add(g,{range:new T(m,m+3)})}const u=[];e.sort(vt(d=>d.modified.startLineNumber,tt));for(const d of e){let m=[];for(let g=d.modified.startLineNumber;g<d.modified.endLineNumberExclusive-2;g++){const b=`${n[g-1]}:${n[g+1-1]}:${n[g+2-1]}`,v=new T(g,g+3),w=[];l.forEach(b,({range:S})=>{for(const N of m)if(N.originalLineRange.endLineNumberExclusive+1===S.endLineNumberExclusive&&N.modifiedLineRange.endLineNumberExclusive+1===v.endLineNumberExclusive){N.originalLineRange=new T(N.originalLineRange.startLineNumber,S.endLineNumberExclusive),N.modifiedLineRange=new T(N.modifiedLineRange.startLineNumber,v.endLineNumberExclusive),w.push(N);return}const p={modifiedLineRange:v,originalLineRange:S};u.push(p),w.push(p)}),m=w}if(!r.isValid())return[]}u.sort(hi(vt(d=>d.modifiedLineRange.length,tt)));const c=new ce,h=new ce;for(const d of u){const m=d.modifiedLineRange.startLineNumber-d.originalLineRange.startLineNumber,g=c.subtractFrom(d.modifiedLineRange),b=h.subtractFrom(d.originalLineRange).getWithDelta(m),v=g.getIntersection(b);for(const w of v.ranges){if(w.length<3)continue;const S=w,p=w.delta(-m);a.push(new le(p,S)),c.addRange(S),h.addRange(p)}}a.sort(vt(d=>d.original.startLineNumber,tt));const f=new gt(e);for(let d=0;d<a.length;d++){const m=a[d],g=f.findLastMonotonous(R=>R.original.startLineNumber<=m.original.startLineNumber),b=$e(e,R=>R.modified.startLineNumber<=m.modified.startLineNumber),v=Math.max(m.original.startLineNumber-g.original.startLineNumber,m.modified.startLineNumber-b.modified.startLineNumber),w=f.findLastMonotonous(R=>R.original.startLineNumber<m.original.endLineNumberExclusive),S=$e(e,R=>R.modified.startLineNumber<m.modified.endLineNumberExclusive),p=Math.max(w.original.endLineNumberExclusive-m.original.endLineNumberExclusive,S.modified.endLineNumberExclusive-m.modified.endLineNumberExclusive);let N;for(N=0;N<v;N++){const R=m.original.startLineNumber-N-1,y=m.modified.startLineNumber-N-1;if(R>s.length||y>i.length||c.contains(y)||h.contains(R)||!r1(s[R-1],i[y-1],r))break}N>0&&(h.addRange(new T(m.original.startLineNumber-N,m.original.startLineNumber)),c.addRange(new T(m.modified.startLineNumber-N,m.modified.startLineNumber)));let x;for(x=0;x<p;x++){const R=m.original.endLineNumberExclusive+x,y=m.modified.endLineNumberExclusive+x;if(R>s.length||y>i.length||c.contains(y)||h.contains(R)||!r1(s[R-1],i[y-1],r))break}x>0&&(h.addRange(new T(m.original.endLineNumberExclusive,m.original.endLineNumberExclusive+x)),c.addRange(new T(m.modified.endLineNumberExclusive,m.modified.endLineNumberExclusive+x))),(N>0||x>0)&&(a[d]=new le(new T(m.original.startLineNumber-N,m.original.endLineNumberExclusive+x),new T(m.modified.startLineNumber-N,m.modified.endLineNumberExclusive+x)))}return a}function r1(e,t,n){if(e.trim()===t.trim())return!0;if(e.length>300&&t.length>300)return!1;const i=new Y1().compute(new Tt([e],new P(0,1),!1),new Tt([t],new P(0,1),!1),n);let r=0;const a=H.invert(i.diffs,e.length);for(const h of a)h.seq1Range.forEach(f=>{fn(e.charCodeAt(f))||r++});function l(h){let f=0;for(let d=0;d<e.length;d++)fn(h.charCodeAt(d))||f++;return f}const u=l(e.length>t.length?e:t);return r/u>.6&&u>10}function qa(e){if(e.length===0)return e;e.sort(vt(n=>n.original.startLineNumber,tt));const t=[e[0]];for(let n=1;n<e.length;n++){const s=t[t.length-1],i=e[n],r=i.original
  14. `)}isStronglyEqual(t,n){return this.lines[t]===this.lines[n]}}function c1(e){let t=0;for(;t<e.length&&(e.charCodeAt(t)===32||e.charCodeAt(t)===9);)t++;return t}class ja{constructor(){this.dynamicProgrammingDiffing=new ka,this.myersDiffingAlgorithm=new Y1}computeDiff(t,n,s){if(t.length<=1&&si(t,n,(x,R)=>x===R))return new At([],[],!1);if(t.length===1&&t[0].length===0||n.length===1&&n[0].length===0)return new At([new ge(new T(1,t.length+1),new T(1,n.length+1),[new Ce(new E(1,1,t.length,t[t.length-1].length+1),new E(1,1,n.length,n[n.length-1].length+1))])],[],!1);const i=s.maxComputationTimeMs===0?ft.instance:new Ma(s.maxComputationTimeMs),r=!s.ignoreTrimWhitespace,a=new Map;function l(x){let R=a.get(x);return R===void 0&&(R=a.size,a.set(x,R)),R}const u=t.map(x=>l(x.trim())),c=n.map(x=>l(x.trim())),h=new u1(u,t),f=new u1(c,n),d=h.length+f.length<1700?this.dynamicProgrammingDiffing.compute(h,f,i,(x,R)=>t[x]===n[R]?n[R].length===0?.1:1+Math.log(1+n[R].length):.99):this.myersDiffingAlgorithm.compute(h,f,i);let m=d.diffs,g=d.hitTimeout;m=a1(h,f,m),m=$a(h,f,m);const b=[],v=x=>{if(r)for(let R=0;R<x;R++){const y=w+R,M=S+R;if(t[y]!==n[M]){const q=this.refineDiff(t,n,new H(new P(y,y+1),new P(M,M+1)),i,r);for(const G of q.mappings)b.push(G);q.hitTimeout&&(g=!0)}}};let w=0,S=0;for(const x of m){ct(()=>x.seq1Range.start-w===x.seq2Range.start-S);const R=x.seq1Range.start-w;v(R),w=x.seq1Range.endExclusive,S=x.seq2Range.endExclusive;const y=this.refineDiff(t,n,x,i,r);y.hitTimeout&&(g=!0);for(const M of y.mappings)b.push(M)}v(t.length-w);const p=h1(b,t,n);let N=[];return s.computeMoves&&(N=this.computeMoves(p,t,n,u,c,i,r)),ct(()=>{function x(y,M){if(y.lineNumber<1||y.lineNumber>M.length)return!1;const q=M[y.lineNumber-1];return!(y.column<1||y.column>q.length+1)}function R(y,M){return!(y.startLineNumber<1||y.startLineNumber>M.length+1||y.endLineNumberExclusive<1||y.endLineNumberExclusive>M.length+1)}for(const y of p){if(!y.innerChanges)return!1;for(const M of y.innerChanges)if(!(x(M.modifiedRange.getStartPosition(),n)&&x(M.modifiedRange.getEndPosition(),n)&&x(M.originalRange.getStartPosition(),t)&&x(M.originalRange.getEndPosition(),t)))return!1;if(!R(y.modified,n)||!R(y.original,t))return!1}return!0}),new At(p,N,g)}computeMoves(t,n,s,i,r,a,l){return Ia(t,n,s,i,r,a).map(h=>{const f=this.refineDiff(n,s,new H(h.original.toOffsetRange(),h.modified.toOffsetRange()),a,l),d=h1(f.mappings,n,s,!0);return new _a(h,d)})}refineDiff(t,n,s,i,r){const a=new Tt(t,s.seq1Range,r),l=new Tt(n,s.seq2Range,r),u=a.length+l.length<500?this.dynamicProgrammingDiffing.compute(a,l,i):this.myersDiffingAlgorithm.compute(a,l,i);let c=u.diffs;return c=a1(a,l,c),c=Oa(a,l,c),c=Wa(a,l,c),c=Ga(a,l,c),{mappings:c.map(f=>new Ce(a.translateRange(f.seq1Range),l.translateRange(f.seq2Range))),hitTimeout:u.hitTimeout}}}function h1(e,t,n,s=!1){const i=[];for(const r of ri(e.map(a=>Qa(a,t,n)),(a,l)=>a.original.overlapOrTouch(l.original)||a.modified.overlapOrTouch(l.modified))){const a=r[0],l=r[r.length-1];i.push(new ge(a.original.join(l.original),a.modified.join(l.modified),r.map(u=>u.innerChanges[0])))}return ct(()=>!s&&i.length>0&&(i[0].modified.startLineNumber!==i[0].original.startLineNumber||n.length-i[i.length-1].modified.endLineNumberExclusive!==t.length-i[i.length-1].original.endLineNumberExclusive)?!1:Cn(i,(r,a)=>a.original.startLineNumber-r.original.endLineNumberExclusive===a.modified.startLineNumber-r.modified.endLineNumberExclusive&&r.original.endLineNumberExclusive<a.original.startLineNumber&&r.modified.endLineNumberExclusive<a.modified.startLineNumber)),i}function Qa(e,t,n){let s=0,i=0;e.modifiedRange.endColumn===1&&e.originalRange.endColumn===1&&e.originalRange.startLineNumber+s<=e.originalRange.endLineNumber&&e.modifiedRange.startLineNumber+s<=e.modifiedRange.endLineNumber&&(i=-1),e.modifiedRange.startColumn-1>=n[e.modifiedRange.startLineNumber-1].length&&e.originalRange.startColumn-1>=t[e.originalRange.startLineNumber-1].length&&e.originalRange.startLineNumber<=e.originalRange.endLineNumber+i&&e.modifiedRange.startLineNumber<=e.modifiedRange.endLineNumber+i&&(s=1);cons