swagger-editor
Version:
- [Anonymized analytics](#anonymized-analytics) - [Getting started](#getting-started) - [Prerequisites](#prerequisites) - [Installation](#installation) - [Usage](#usage) - [Development](#development) - [Prerequisites](#prerequisites) - [Setting
1,110 lines • 368 kB
JavaScript
import { a as e } from "./chunk-HEgqtunE.js";
//#region node_modules/@vscode/diff/dist/wire.js
var t = class e {
start;
endExclusive;
static ofLength(t) {
return new e(0, t);
}
static ofStartAndLength(t, n) {
return new e(t, t + n);
}
constructor(e, t) {
if (this.start = e, this.endExclusive = t, e > t) throw Error(`Invalid range: [${e}, ${t})`);
}
get isEmpty() {
return this.start === this.endExclusive;
}
get length() {
return this.endExclusive - this.start;
}
delta(t) {
return new e(this.start + t, this.endExclusive + t);
}
deltaStart(t) {
return new e(this.start + t, this.endExclusive);
}
deltaEnd(t) {
return new e(this.start, this.endExclusive + t);
}
equals(e) {
return this.start === e.start && this.endExclusive === e.endExclusive;
}
containsRange(e) {
return this.start <= e.start && e.endExclusive <= this.endExclusive;
}
contains(e) {
return this.start <= e && e < this.endExclusive;
}
join(t) {
return new e(Math.min(this.start, t.start), Math.max(this.endExclusive, t.endExclusive));
}
intersect(t) {
let n = Math.max(this.start, t.start), r = Math.min(this.endExclusive, t.endExclusive);
if (n <= r) return new e(n, r);
}
intersects(e) {
return Math.max(this.start, e.start) < Math.min(this.endExclusive, e.endExclusive);
}
intersectsOrTouches(e) {
return Math.max(this.start, e.start) <= Math.min(this.endExclusive, e.endExclusive);
}
slice(e) {
return e.slice(this.start, this.endExclusive);
}
toString() {
return `[${this.start}, ${this.endExclusive})`;
}
}, n = class e {
static instance = new e();
isValid() {
return !0;
}
}, r = class {
timeout;
startTime = Date.now();
valid = !0;
constructor(e) {
if (this.timeout = e, e <= 0) throw Error("timeout must be positive");
}
isValid() {
return !(Date.now() - this.startTime < this.timeout) && this.valid && (this.valid = !1), this.valid;
}
}, i = class e {
offset1;
offset2;
static zero = new e(0, 0);
static max = new e(2 ** 53 - 1, 2 ** 53 - 1);
constructor(e, t) {
this.offset1 = e, this.offset2 = t;
}
toString() {
return `${this.offset1} <-> ${this.offset2}`;
}
delta(t) {
return t === 0 ? this : new e(this.offset1 + t, this.offset2 + t);
}
equals(e) {
return this.offset1 === e.offset1 && this.offset2 === e.offset2;
}
}, a = class e {
seq1Range;
seq2Range;
static invert(t, n) {
let r = [];
return s(t, (t, a) => {
r.push(e.fromOffsetPairs(t ? t.getEndExclusives() : i.zero, a ? a.getStarts() : new i(n, (t ? t.seq2Range.endExclusive - t.seq1Range.endExclusive : 0) + n)));
}), r;
}
static fromOffsetPairs(n, r) {
return new e(new t(n.offset1, r.offset1), new t(n.offset2, r.offset2));
}
static assertSorted(e) {
let t;
for (let n of e) {
if (t && !(t.seq1Range.endExclusive <= n.seq1Range.start && t.seq2Range.endExclusive <= n.seq2Range.start)) throw Error("Sequence diffs must be sorted");
t = n;
}
}
constructor(e, t) {
this.seq1Range = e, this.seq2Range = t;
}
swap() {
return new e(this.seq2Range, this.seq1Range);
}
toString() {
return `${this.seq1Range} <-> ${this.seq2Range}`;
}
join(t) {
return new e(this.seq1Range.join(t.seq1Range), this.seq2Range.join(t.seq2Range));
}
delta(t) {
return t === 0 ? this : new e(this.seq1Range.delta(t), this.seq2Range.delta(t));
}
deltaStart(t) {
return t === 0 ? this : new e(this.seq1Range.deltaStart(t), this.seq2Range.deltaStart(t));
}
deltaEnd(t) {
return t === 0 ? this : new e(this.seq1Range.deltaEnd(t), this.seq2Range.deltaEnd(t));
}
intersectsOrTouches(e) {
return this.seq1Range.intersectsOrTouches(e.seq1Range) || this.seq2Range.intersectsOrTouches(e.seq2Range);
}
intersect(t) {
let n = this.seq1Range.intersect(t.seq1Range), r = this.seq2Range.intersect(t.seq2Range);
if (!(!n || !r)) return new e(n, r);
}
getStarts() {
return new i(this.seq1Range.start, this.seq2Range.start);
}
getEndExclusives() {
return new i(this.seq1Range.endExclusive, this.seq2Range.endExclusive);
}
}, o = class e {
diffs;
hitTimeout;
static trivial(n, r) {
return new e([new a(t.ofLength(n.length), t.ofLength(r.length))], !1);
}
static trivialTimedOut(n, r) {
return new e([new a(t.ofLength(n.length), t.ofLength(r.length))], !0);
}
constructor(e, t) {
this.diffs = e, this.hitTimeout = t;
}
};
function s(e, t) {
let n;
for (let r of e) t(n, r), n = r;
t(n, void 0);
}
var c = class {
width;
height;
array = [];
constructor(e, t) {
this.width = e, this.height = t, this.array = Array(e * t);
}
get(e, t) {
return this.array[e + t * this.width];
}
set(e, t, n) {
this.array[e + t * this.width] = n;
}
}, l = class {
compute(e, r, i = n.instance, s) {
if (e.length === 0 || r.length === 0) return o.trivial(e, r);
let l = new c(e.length, r.length), u = new c(e.length, r.length), d = new c(e.length, r.length);
for (let t = 0; t < e.length; t++) for (let n = 0; n < r.length; n++) {
if (!i.isValid()) return o.trivialTimedOut(e, r);
let a = t === 0 ? 0 : l.get(t - 1, n), c = n === 0 ? 0 : l.get(t, n - 1), f;
e.getElement(t) === r.getElement(n) ? (f = t === 0 || n === 0 ? 0 : l.get(t - 1, n - 1), t > 0 && n > 0 && u.get(t - 1, n - 1) === 3 && (f += d.get(t - 1, n - 1)), f += s ? s(t, n) : 1) : f = -1;
let p = Math.max(a, c, f);
if (p === f) {
let e = t > 0 && n > 0 ? d.get(t - 1, n - 1) : 0;
d.set(t, n, e + 1), u.set(t, n, 3);
} else p === a ? (d.set(t, n, 0), u.set(t, n, 1)) : p === c && (d.set(t, n, 0), u.set(t, n, 2));
l.set(t, n, p);
}
let f = [], p = e.length, m = r.length;
function h(e, n) {
(e + 1 !== p || n + 1 !== m) && f.push(new a(new t(e + 1, p), new t(n + 1, m))), p = e, m = n;
}
let g = e.length - 1, _ = r.length - 1;
for (; g >= 0 && _ >= 0;) u.get(g, _) === 3 ? (h(g, _), g--, _--) : u.get(g, _) === 1 ? g-- : _--;
return h(-1, -1), f.reverse(), new o(f, !1);
}
}, u = class {
compute(e, r, i = n.instance) {
if (e.length === 0 || r.length === 0) return o.trivial(e, r);
let s = e, c = r;
function l(e, t) {
for (; e < s.length && t < c.length && s.getElement(e) === c.getElement(t);) e++, t++;
return e;
}
let u = 0, m = new f();
m.set(0, l(0, 0));
let h = new p();
h.set(0, m.get(0) === 0 ? null : new d(null, 0, 0, m.get(0)));
let g = 0;
loop: for (;;) {
if (u++, !i.isValid()) return o.trivialTimedOut(s, c);
let e = -Math.min(u, c.length + u % 2), t = Math.min(u, s.length + u % 2);
for (g = e; g <= t; g += 2) {
let n = g === t ? -1 : m.get(g + 1), r = g === e ? -1 : m.get(g - 1) + 1, i = Math.min(Math.max(n, r), s.length), a = i - g;
if (i > s.length || a > c.length) continue;
let o = l(i, a);
m.set(g, o);
let u = i === n ? h.get(g + 1) : h.get(g - 1);
if (h.set(g, o === i ? u : new d(u, i, a, o - i)), m.get(g) === s.length && m.get(g) - g === c.length) break loop;
}
}
let _ = h.get(g), v = [], y = s.length, b = c.length;
for (;;) {
let e = _ ? _.x + _.length : 0, n = _ ? _.y + _.length : 0;
if ((e !== y || n !== b) && v.push(new a(new t(e, y), new t(n, b))), !_) break;
y = _.x, b = _.y, _ = _.prev;
}
return v.reverse(), new o(v, !1);
}
}, d = class {
prev;
x;
y;
length;
constructor(e, t, n, r) {
this.prev = e, this.x = t, this.y = n, this.length = r;
}
}, f = class {
positiveArr = new Int32Array(10);
negativeArr = new Int32Array(10);
get(e) {
return e < 0 ? (e = -e - 1, this.negativeArr[e]) : this.positiveArr[e];
}
set(e, t) {
if (e < 0) {
if (e = -e - 1, e >= this.negativeArr.length) {
let e = this.negativeArr;
this.negativeArr = new Int32Array(e.length * 2), this.negativeArr.set(e);
}
this.negativeArr[e] = t;
} else {
if (e >= this.positiveArr.length) {
let e = this.positiveArr;
this.positiveArr = new Int32Array(e.length * 2), this.positiveArr.set(e);
}
this.positiveArr[e] = t;
}
}
}, p = class {
positiveArr = [];
negativeArr = [];
get(e) {
return e < 0 ? (e = -e - 1, this.negativeArr[e]) : this.positiveArr[e];
}
set(e, t) {
e < 0 ? (e = -e - 1, this.negativeArr[e] = t) : this.positiveArr[e] = t;
}
};
function m(e, t, n) {
let r = n;
return r = h(e, t, r), r = h(e, t, r), r = g(e, t, r), r;
}
function h(e, n, r) {
if (r.length === 0) return r;
let i = [];
i.push(r[0]);
for (let o = 1; o < r.length; o++) {
let s = i[i.length - 1], c = r[o];
if (c.seq1Range.isEmpty || c.seq2Range.isEmpty) {
let r = c.seq1Range.start - s.seq1Range.endExclusive, o;
for (o = 1; o <= r && !(e.getElement(c.seq1Range.start - o) !== e.getElement(c.seq1Range.endExclusive - o) || n.getElement(c.seq2Range.start - o) !== n.getElement(c.seq2Range.endExclusive - o)); o++);
if (o--, o === r) {
i[i.length - 1] = new a(new t(s.seq1Range.start, c.seq1Range.endExclusive - r), new t(s.seq2Range.start, c.seq2Range.endExclusive - r));
continue;
}
c = c.delta(-o);
}
i.push(c);
}
let o = [];
for (let r = 0; r < i.length - 1; r++) {
let s = i[r + 1], c = i[r];
if (c.seq1Range.isEmpty || c.seq2Range.isEmpty) {
let o = s.seq1Range.start - c.seq1Range.endExclusive, l;
for (l = 0; l < o && !(!e.isStronglyEqual(c.seq1Range.start + l, c.seq1Range.endExclusive + l) || !n.isStronglyEqual(c.seq2Range.start + l, c.seq2Range.endExclusive + l)); l++);
if (l === o) {
i[r + 1] = new a(new t(c.seq1Range.start + o, s.seq1Range.endExclusive), new t(c.seq2Range.start + o, s.seq2Range.endExclusive));
continue;
}
l > 0 && (c = c.delta(l));
}
o.push(c);
}
return i.length > 0 && o.push(i[i.length - 1]), o;
}
function g(e, n, r) {
if (!e.getBoundaryScore || !n.getBoundaryScore) return r;
for (let i = 0; i < r.length; i++) {
let a = i > 0 ? r[i - 1] : void 0, o = r[i], s = i + 1 < r.length ? r[i + 1] : void 0, c = new t(a ? a.seq1Range.endExclusive + 1 : 0, s ? s.seq1Range.start - 1 : e.length), l = new t(a ? a.seq2Range.endExclusive + 1 : 0, s ? s.seq2Range.start - 1 : n.length);
o.seq1Range.isEmpty ? r[i] = _(o, e, n, c, l) : o.seq2Range.isEmpty && (r[i] = _(o.swap(), n, e, l, c).swap());
}
return r;
}
function _(e, t, n, r, i) {
let a = 1;
for (; e.seq1Range.start - a >= r.start && e.seq2Range.start - a >= i.start && n.isStronglyEqual(e.seq2Range.start - a, e.seq2Range.endExclusive - a) && a < 100;) a++;
a--;
let o = 0;
for (; e.seq1Range.start + o < r.endExclusive && e.seq2Range.endExclusive + o < i.endExclusive && n.isStronglyEqual(e.seq2Range.start + o, e.seq2Range.endExclusive + o) && o < 100;) o++;
if (a === 0 && o === 0) return e;
let s = 0, c = -1;
for (let r = -a; r <= o; r++) {
let i = e.seq2Range.start + r, a = e.seq2Range.endExclusive + r, o = e.seq1Range.start + r, l = t.getBoundaryScore(o) + n.getBoundaryScore(i) + n.getBoundaryScore(a);
l > c && (c = l, s = r);
}
return e.delta(s);
}
function v(e, t, n) {
let r = [];
for (let e of n) {
let t = r[r.length - 1];
if (!t) {
r.push(e);
continue;
}
e.seq1Range.start - t.seq1Range.endExclusive <= 2 || e.seq2Range.start - t.seq2Range.endExclusive <= 2 ? r[r.length - 1] = new a(t.seq1Range.join(e.seq1Range), t.seq2Range.join(e.seq2Range)) : r.push(e);
}
return r;
}
function y(e, t, n, r, o = !1) {
let s = a.invert(n, e.length), c = [], l = new i(0, 0);
function u(n, i) {
if (n.offset1 < l.offset1 || n.offset2 < l.offset2) return;
let u = r(e, n.offset1), d = r(t, n.offset2);
if (!u || !d) return;
let f = new a(u, d), p = f.intersect(i), m = p.seq1Range.length, h = p.seq2Range.length;
for (; s.length > 0;) {
let n = s[0];
if (!(n.seq1Range.intersects(f.seq1Range) || n.seq2Range.intersects(f.seq2Range))) break;
let i = new a(r(e, n.seq1Range.start), r(t, n.seq2Range.start)), o = i.intersect(n);
if (m += o.seq1Range.length, h += o.seq2Range.length, f = f.join(i), f.seq1Range.endExclusive >= n.seq1Range.endExclusive) s.shift();
else break;
}
(o && m + h < f.seq1Range.length + f.seq2Range.length || m + h < (f.seq1Range.length + f.seq2Range.length) * 2 / 3) && c.push(f), l = f.getEndExclusives();
}
for (; s.length > 0;) {
let e = s.shift();
e.seq1Range.isEmpty || (u(e.getStarts(), e), u(e.getEndExclusives().delta(-1), e));
}
return b(n, c);
}
function b(e, t) {
let n = [];
for (; e.length > 0 || t.length > 0;) {
let r = e[0], i = t[0], a;
a = r && (!i || r.seq1Range.start < i.seq1Range.start) ? e.shift() : t.shift(), n.length > 0 && n[n.length - 1].seq1Range.endExclusive >= a.seq1Range.start ? n[n.length - 1] = n[n.length - 1].join(a) : n.push(a);
}
return n;
}
function ee(e, n, r) {
let i = r;
if (i.length === 0) return i;
let a = 0, o;
do {
o = !1;
let n = [i[0]];
for (let r = 1; r < i.length; r++) {
let a = i[r], s = n[n.length - 1];
function c(n, r) {
let i = new t(s.seq1Range.endExclusive, a.seq1Range.start);
return e.getText(i).replace(/\s/g, "").length <= 4 && (n.seq1Range.length + n.seq2Range.length > 5 || r.seq1Range.length + r.seq2Range.length > 5);
}
c(s, a) ? (o = !0, n[n.length - 1] = n[n.length - 1].join(a)) : n.push(a);
}
i = n;
} while (a++ < 10 && o);
return i;
}
function x(e, n, r) {
let o = r;
if (o.length === 0) return o;
let s = 0, c;
do {
c = !1;
let r = [o[0]];
for (let i = 1; i < o.length; i++) {
let a = o[i], s = r[r.length - 1];
function l(r, i) {
let o = new t(s.seq1Range.endExclusive, a.seq1Range.start);
if (e.countLinesIn(o) > 5 || o.length > 500) return !1;
let c = e.getText(o).trim();
if (c.length > 20 || c.split(/\r\n|\r|\n/).length > 1) return !1;
let l = e.countLinesIn(r.seq1Range), u = r.seq1Range.length, d = n.countLinesIn(r.seq2Range), f = r.seq2Range.length, p = e.countLinesIn(i.seq1Range), m = i.seq1Range.length, h = n.countLinesIn(i.seq2Range), g = i.seq2Range.length;
function _(e) {
return Math.min(e, 130);
}
return (_(l * 40 + u) ** 1.5 + _(d * 40 + f) ** 1.5) ** 1.5 + (_(p * 40 + m) ** 1.5 + _(h * 40 + g) ** 1.5) ** 1.5 > (130 ** 1.5) ** 1.5 * 1.3;
}
l(s, a) ? (c = !0, r[r.length - 1] = r[r.length - 1].join(a)) : r.push(a);
}
o = r;
} while (s++ < 10 && c);
let l = [];
return te(o, (n, r, o) => {
let s = r;
function c(e) {
return e.length > 0 && e.trim().length <= 3 && r.seq1Range.length + r.seq2Range.length > 100;
}
let u = e.extendToFullLines(r.seq1Range), d = e.getText(new t(u.start, r.seq1Range.start));
c(d) && (s = s.deltaStart(-d.length));
let f = e.getText(new t(r.seq1Range.endExclusive, u.endExclusive));
c(f) && (s = s.deltaEnd(f.length));
let p = a.fromOffsetPairs(n ? n.getEndExclusives() : i.zero, o ? o.getStarts() : i.max), m = s.intersect(p);
l.length > 0 && m.getStarts().equals(l[l.length - 1].getEndExclusives()) ? l[l.length - 1] = l[l.length - 1].join(m) : l.push(m);
}), l;
}
function te(e, t) {
for (let n = 0; n < e.length; n++) t(e[n - 1], e[n], e[n + 1]);
}
var ne = {
Space: 32,
Tab: 9
}, re = class {
trimmedHash;
lines;
constructor(e, t) {
this.trimmedHash = e, this.lines = t;
}
getElement(e) {
return this.trimmedHash[e];
}
get length() {
return this.trimmedHash.length;
}
getBoundaryScore(e) {
return 1e3 - ((e === 0 ? 0 : S(this.lines[e - 1])) + (e === this.lines.length ? 0 : S(this.lines[e])));
}
getText(e) {
return this.lines.slice(e.start, e.endExclusive).join("\n");
}
isStronglyEqual(e, t) {
return this.lines[e] === this.lines[t];
}
};
function S(e) {
let t = 0;
for (; t < e.length && (e.charCodeAt(t) === ne.Space || e.charCodeAt(t) === ne.Tab);) t++;
return t;
}
var C = {
LineFeed: 10,
CarriageReturn: 13,
Space: 32,
Tab: 9,
a: 97,
z: 122,
A: 65,
Z: 90,
Digit0: 48,
Digit9: 57,
Comma: 44,
Semicolon: 59
};
function ie(e) {
return e === C.Space || e === C.Tab;
}
var w = class e {
startLineNumber;
startColumn;
endLineNumber;
endColumn;
constructor(e, t, n, r) {
this.startLineNumber = e, this.startColumn = t, this.endLineNumber = n, this.endColumn = r;
}
static fromPositions(t, n) {
return new e(t.lineNumber, t.column, n.lineNumber, n.column);
}
}, T = class {
lineNumber;
column;
constructor(e, t) {
this.lineNumber = e, this.column = t;
}
isBefore(e) {
return this.lineNumber < e.lineNumber ? !0 : e.lineNumber < this.lineNumber ? !1 : this.column < e.column;
}
}, ae = class {
lines;
considerWhitespaceChanges;
elements = [];
firstElementOffsetByLineIdx = [];
lineStartOffsets = [];
trimmedWsLengthsByLineIdx = [];
_range;
constructor(e, t, n) {
this.lines = e, this.considerWhitespaceChanges = n, this._range = t, this.firstElementOffsetByLineIdx.push(0);
for (let t = this._range.startLineNumber; t <= this._range.endLineNumber; t++) {
let r = e[t - 1], i = 0;
t === this._range.startLineNumber && this._range.startColumn > 1 && (i = this._range.startColumn - 1, r = r.substring(i)), this.lineStartOffsets.push(i);
let a = 0;
if (!n) {
let e = r.trimStart();
a = r.length - e.length, r = e.trimEnd();
}
this.trimmedWsLengthsByLineIdx.push(a);
let o = t === this._range.endLineNumber ? Math.min(this._range.endColumn - 1 - i - a, r.length) : r.length;
for (let e = 0; e < o; e++) this.elements.push(r.charCodeAt(e));
t < this._range.endLineNumber && (this.elements.push(10), this.firstElementOffsetByLineIdx.push(this.elements.length));
}
}
toString() {
return `Slice: "${this.text}"`;
}
get text() {
return this.getText(new t(0, this.length));
}
getText(e) {
return this.elements.slice(e.start, e.endExclusive).map((e) => String.fromCharCode(e)).join("");
}
getElement(e) {
return this.elements[e];
}
get length() {
return this.elements.length;
}
getBoundaryScore(e) {
let t = le(e > 0 ? this.elements[e - 1] : -1), n = le(e < this.elements.length ? this.elements[e] : -1);
if (t === 7 && n === 8) return 0;
if (t === 8) return 150;
let r = 0;
return t !== n && (r += 10, t === 0 && n === 1 && (r += 1)), r += ce(t), r += ce(n), r;
}
translateOffset(e, t = "right") {
let n = ue(this.firstElementOffsetByLineIdx, (t) => t <= e), r = e - this.firstElementOffsetByLineIdx[n];
return new T(this._range.startLineNumber + n, 1 + this.lineStartOffsets[n] + r + (r === 0 && t === "left" ? 0 : this.trimmedWsLengthsByLineIdx[n]));
}
translateRange(e) {
let t = this.translateOffset(e.start, "right"), n = this.translateOffset(e.endExclusive, "left");
return n.isBefore(t) ? w.fromPositions(n, n) : w.fromPositions(t, n);
}
findWordContaining(e) {
if (e < 0 || e >= this.elements.length || !E(this.elements[e])) return;
let n = e;
for (; n > 0 && E(this.elements[n - 1]);) n--;
let r = e;
for (; r < this.elements.length && E(this.elements[r]);) r++;
return new t(n, r);
}
findSubWordContaining(e) {
if (e < 0 || e >= this.elements.length || !E(this.elements[e])) return;
let n = e;
for (; n > 0 && E(this.elements[n - 1]) && !oe(this.elements[n]);) n--;
let r = e;
for (; r < this.elements.length && E(this.elements[r]) && !oe(this.elements[r]);) r++;
return new t(n, r);
}
countLinesIn(e) {
return this.translateOffset(e.endExclusive).lineNumber - this.translateOffset(e.start).lineNumber;
}
isStronglyEqual(e, t) {
return this.elements[e] === this.elements[t];
}
extendToFullLines(e) {
return new t(de(this.firstElementOffsetByLineIdx, (t) => t <= e.start) ?? 0, fe(this.firstElementOffsetByLineIdx, (t) => e.endExclusive <= t) ?? this.elements.length);
}
};
function E(e) {
return e >= C.a && e <= C.z || e >= C.A && e <= C.Z || e >= C.Digit0 && e <= C.Digit9;
}
function oe(e) {
return e >= C.A && e <= C.Z;
}
var se = {
0: 0,
1: 0,
2: 0,
3: 10,
4: 2,
5: 30,
6: 3,
7: 10,
8: 10
};
function ce(e) {
return se[e];
}
function le(e) {
return e === C.LineFeed ? 8 : e === C.CarriageReturn ? 7 : ie(e) ? 6 : e >= C.a && e <= C.z ? 0 : e >= C.A && e <= C.Z ? 1 : e >= C.Digit0 && e <= C.Digit9 ? 2 : e === -1 ? 3 : e === C.Comma || e === C.Semicolon ? 5 : 4;
}
function ue(e, t) {
let n = 0, r = e.length - 1;
for (; n <= r;) {
let i = Math.floor((n + r) / 2);
t(e[i]) ? n = i + 1 : r = i - 1;
}
return r;
}
function de(e, t) {
let n = ue(e, t);
return n >= 0 ? e[n] : void 0;
}
function fe(e, t) {
let n = 0, r = e.length - 1;
for (; n <= r;) {
let i = Math.floor((n + r) / 2);
t(e[i]) ? r = i - 1 : n = i + 1;
}
return n < e.length ? e[n] : void 0;
}
var D = class e {
startLineNumber;
endLineNumberExclusive;
constructor(e, t) {
if (this.startLineNumber = e, this.endLineNumberExclusive = t, e > t) throw Error(`Invalid range: ${e} > ${t}`);
}
get isEmpty() {
return this.startLineNumber === this.endLineNumberExclusive;
}
get length() {
return this.endLineNumberExclusive - this.startLineNumber;
}
join(t) {
return new e(Math.min(this.startLineNumber, t.startLineNumber), Math.max(this.endLineNumberExclusive, t.endLineNumberExclusive));
}
intersectsOrTouches(e) {
return this.startLineNumber <= e.endLineNumberExclusive && e.startLineNumber <= this.endLineNumberExclusive;
}
toOffsetRange() {
return new t(this.startLineNumber - 1, this.endLineNumberExclusive - 1);
}
toString() {
return `[${this.startLineNumber}, ${this.endLineNumberExclusive})`;
}
}, O = class {
originalRange;
modifiedRange;
constructor(e, t) {
this.originalRange = e, this.modifiedRange = t;
}
toString() {
return `${pe(this.originalRange)} <-> ${pe(this.modifiedRange)}`;
}
static assertSorted(e) {
for (let t = 1; t < e.length; t++) {
let n = e[t - 1], r = e[t];
if (!(n.originalRange.endLineNumber <= r.originalRange.startLineNumber || n.originalRange.endLineNumber === r.originalRange.startLineNumber && n.originalRange.endColumn <= r.originalRange.startColumn)) throw Error("RangeMappings must be sorted");
}
}
};
function pe(e) {
return `(${e.startLineNumber}:${e.startColumn})-(${e.endLineNumber}:${e.endColumn})`;
}
var k = class {
original;
modified;
constructor(e, t) {
this.original = e, this.modified = t;
}
toString() {
return `${this.original} <-> ${this.modified}`;
}
toRangeMapping2(e, t) {
let n = (e, t) => e >= 1 && e <= t.length, r = (e, t, n) => {
if (e < 1) return new T(1, 1);
if (e > n.length) return new T(n.length, n[n.length - 1].length + 1);
let r = n[e - 1];
return t > r.length + 1 ? new T(e, r.length + 1) : new T(e, t);
};
if (n(this.original.endLineNumberExclusive, e) && n(this.modified.endLineNumberExclusive, t)) return new O(new w(this.original.startLineNumber, 1, this.original.endLineNumberExclusive, 1), new w(this.modified.startLineNumber, 1, this.modified.endLineNumberExclusive, 1));
if (!this.original.isEmpty && !this.modified.isEmpty) return new O(w.fromPositions(new T(this.original.startLineNumber, 1), r(this.original.endLineNumberExclusive - 1, 2 ** 53 - 1, e)), w.fromPositions(new T(this.modified.startLineNumber, 1), r(this.modified.endLineNumberExclusive - 1, 2 ** 53 - 1, t)));
if (this.original.startLineNumber > 1 && this.modified.startLineNumber > 1) return new O(w.fromPositions(r(this.original.startLineNumber - 1, 2 ** 53 - 1, e), r(this.original.endLineNumberExclusive - 1, 2 ** 53 - 1, e)), w.fromPositions(r(this.modified.startLineNumber - 1, 2 ** 53 - 1, t), r(this.modified.endLineNumberExclusive - 1, 2 ** 53 - 1, t)));
throw Error("Invalid diff: cannot convert to range mapping");
}
}, A = class extends k {
innerChanges;
constructor(e, t, n) {
super(e, t), this.innerChanges = n;
}
}, j = class {
changes;
moves;
hitTimeout;
constructor(e, t, n) {
this.changes = e, this.moves = t, this.hitTimeout = n;
}
}, me = class {
lineRangeMapping;
changes;
constructor(e, t) {
this.lineRangeMapping = e, this.changes = t;
}
};
function he(e, t, n, r = !1) {
let i = [];
for (let r of _e(e.map((e) => ge(e, t, n)), (e, t) => e.original.intersectsOrTouches(t.original) || e.modified.intersectsOrTouches(t.modified))) {
let e = r[0], t = r[r.length - 1];
i.push(new A(e.original.join(t.original), e.modified.join(t.modified), r.map((e) => e.innerChanges[0])));
}
if (!r) for (let e = 1; e < i.length; e++) {
let t = i[e - 1], n = i[e];
if (t.original.endLineNumberExclusive > n.original.startLineNumber || t.modified.endLineNumberExclusive > n.modified.startLineNumber) break;
}
return i;
}
function ge(e, t, n) {
let r = 0, i = 0;
return e.modifiedRange.endColumn === 1 && e.originalRange.endColumn === 1 && e.originalRange.startLineNumber + r <= e.originalRange.endLineNumber && e.modifiedRange.startLineNumber + r <= e.modifiedRange.endLineNumber && (i = -1), e.modifiedRange.startColumn - 1 >= (n[e.modifiedRange.startLineNumber - 1]?.length ?? 0) && e.originalRange.startColumn - 1 >= (t[e.originalRange.startLineNumber - 1]?.length ?? 0) && e.originalRange.startLineNumber <= e.originalRange.endLineNumber + i && e.modifiedRange.startLineNumber <= e.modifiedRange.endLineNumber + i && (r = 1), new A(new D(e.originalRange.startLineNumber + r, e.originalRange.endLineNumber + 1 + i), new D(e.modifiedRange.startLineNumber + r, e.modifiedRange.endLineNumber + 1 + i), [e]);
}
function* _e(e, t) {
let n, r;
for (let i of e) r !== void 0 && t(r, i) ? n.push(i) : (n && (yield n), n = [i]), r = i;
n && (yield n);
}
var ve = class {
lines;
constructor(e) {
this.lines = e;
}
get lineCount() {
return this.lines.length;
}
getLineContent(e) {
return this.lines[e - 1];
}
}, ye = class {
_dynamicProgrammingDiffing = new l();
_myersDiffingAlgorithm = new u();
computeDiff(e, i, o) {
if (e.length <= 1 && xe(e, i)) return new j([], [], !1);
if (e.length === 1 && e[0].length === 0 || i.length === 1 && i[0].length === 0) return new j([new A(new D(1, e.length + 1), new D(1, i.length + 1), [new O(new w(1, 1, e.length, e[e.length - 1].length + 1), new w(1, 1, i.length, i[i.length - 1].length + 1))])], [], !1);
let s = o.maxComputationTimeMs === 0 ? n.instance : new r(o.maxComputationTimeMs), c = !o.ignoreTrimWhitespace, l = /* @__PURE__ */ new Map();
function u(e) {
let t = l.get(e);
return t === void 0 && (t = l.size, l.set(e, t)), t;
}
let d = e.map((e) => u(e.trim())), f = i.map((e) => u(e.trim())), p = new re(d, e), h = new re(f, i), g = p.length + h.length < 1700 ? this._dynamicProgrammingDiffing.compute(p, h, s, (t, n) => e[t] === i[n] ? i[n].length === 0 ? .1 : 1 + Math.log(1 + i[n].length) : .99) : this._myersDiffingAlgorithm.compute(p, h, s), _ = g.diffs, v = g.hitTimeout;
_ = m(p, h, _), _ = ee(p, h, _);
let y = [], b = (n) => {
if (c) for (let r = 0; r < n; r++) {
let n = x + r, l = te + r;
if (e[n] !== i[l]) {
let r = this._refineDiff(e, i, new a(new t(n, n + 1), new t(l, l + 1)), s, c, o);
for (let e of r.mappings) y.push(e);
r.hitTimeout && (v = !0);
}
}
}, x = 0, te = 0;
for (let t of _) {
b(t.seq1Range.start - x), x = t.seq1Range.endExclusive, te = t.seq2Range.endExclusive;
let n = this._refineDiff(e, i, t, s, c, o);
n.hitTimeout && (v = !0);
for (let e of n.mappings) y.push(e);
}
b(e.length - x);
let ne = new ve(e), S = new ve(i);
return new j(he(y, ne.lines, S.lines), [], v);
}
_refineDiff(e, t, n, r, i, a) {
let o = be(n).toRangeMapping2(e, t), s = new ae(e, o.originalRange, i), c = new ae(t, o.modifiedRange, i), l = s.length + c.length < 500 ? this._dynamicProgrammingDiffing.compute(s, c, r) : this._myersDiffingAlgorithm.compute(s, c, r), u = l.diffs;
return u = m(s, c, u), u = y(s, c, u, (e, t) => e.findWordContaining(t)), a.extendToSubwords && (u = y(s, c, u, (e, t) => e.findSubWordContaining(t), !0)), u = v(s, c, u), u = x(s, c, u), {
mappings: u.map((e) => new O(s.translateRange(e.seq1Range), c.translateRange(e.seq2Range))),
hitTimeout: l.hitTimeout
};
}
};
function be(e) {
return new k(new D(e.seq1Range.start + 1, e.seq1Range.endExclusive + 1), new D(e.seq2Range.start + 1, e.seq2Range.endExclusive + 1));
}
function xe(e, t) {
if (e.length !== t.length) return !1;
for (let n = 0; n < e.length; n++) if (e[n] !== t[n]) return !1;
return !0;
}
function Se(e, t, n) {
let r = z(e, G.__wbindgen_malloc, G.__wbindgen_realloc), i = W, a = z(t, G.__wbindgen_malloc, G.__wbindgen_realloc), o = W, s = G.computeDiff(r, i, a, o, n);
if (s[2]) throw B(s[1]);
return B(s[0]);
}
function Ce(e, t, n) {
let r = G.computeDiffLines(e, t, n);
if (r[2]) throw B(r[1]);
return B(r[0]);
}
function we() {
G.init();
}
function Te() {
return {
__proto__: null,
"./diff_wasm_bg.js": {
__proto__: null,
__wbg_Error_ef53bc310eb298a0: function(e, t) {
return Error(F(e, t));
},
__wbg_Number_6b506e6536831eaa: function(e) {
return Number(e);
},
__wbg_String_8564e559799eccda: function(e, t) {
let n = z(String(t), G.__wbindgen_malloc, G.__wbindgen_realloc), r = W;
P().setInt32(e + 4, r, !0), P().setInt32(e + 0, n, !0);
},
__wbg___wbindgen_bigint_get_as_i64_38130e98eecd467d: function(e, t) {
let n = t, r = typeof n == "bigint" ? n : void 0;
P().setBigInt64(e + 8, R(r) ? BigInt(0) : r, !0), P().setInt32(e + 0, !R(r), !0);
},
__wbg___wbindgen_boolean_get_1a45e2c38d4d41b9: function(e) {
let t = e, n = typeof t == "boolean" ? t : void 0;
return R(n) ? 16777215 : +!!n;
},
__wbg___wbindgen_debug_string_0accd80f45e5faa2: function(e, t) {
let n = z(M(t), G.__wbindgen_malloc, G.__wbindgen_realloc), r = W;
P().setInt32(e + 4, r, !0), P().setInt32(e + 0, n, !0);
},
__wbg___wbindgen_in_70a403a56e771704: function(e, t) {
return e in t;
},
__wbg___wbindgen_is_bigint_6ffd6468a9bc44b9: function(e) {
return typeof e == "bigint";
},
__wbg___wbindgen_is_function_754e9f305ff6029e: function(e) {
return typeof e == "function";
},
__wbg___wbindgen_is_null_87c3bfe968c6a5ad: function(e) {
return e === null;
},
__wbg___wbindgen_is_object_56732c2bc353f41d: function(e) {
let t = e;
return typeof t == "object" && !!t;
},
__wbg___wbindgen_is_undefined_67b456be8673d3d7: function(e) {
return e === void 0;
},
__wbg___wbindgen_jsval_eq_1068e624fa87f6ab: function(e, t) {
return e === t;
},
__wbg___wbindgen_jsval_loose_eq_2c56564c75129511: function(e, t) {
return e == t;
},
__wbg___wbindgen_number_get_9bb1761122181af2: function(e, t) {
let n = t, r = typeof n == "number" ? n : void 0;
P().setFloat64(e + 8, R(r) ? 0 : r, !0), P().setInt32(e + 0, !R(r), !0);
},
__wbg___wbindgen_string_get_72bdf95d3ae505b1: function(e, t) {
let n = t, r = typeof n == "string" ? n : void 0;
var i = R(r) ? 0 : z(r, G.__wbindgen_malloc, G.__wbindgen_realloc), a = W;
P().setInt32(e + 4, a, !0), P().setInt32(e + 0, i, !0);
},
__wbg___wbindgen_throw_1506f2235d1bdba0: function(e, t) {
throw Error(F(e, t));
},
__wbg_call_8a89609d89f6608a: function() {
return Oe(function(e, t) {
return e.call(t);
}, arguments);
},
__wbg_done_60cf307fcc680536: function(e) {
return e.done;
},
__wbg_error_a6fa202b58aa1cd3: function(e, t) {
let n, r;
try {
n = e, r = t, console.error(F(e, t));
} finally {
G.__wbindgen_free(n, r, 1);
}
},
__wbg_get_1f8f054ddbaa7db2: function() {
return Oe(function(e, t) {
return Reflect.get(e, t);
}, arguments);
},
__wbg_get_unchecked_33f6e5c9e2f2d6b2: function(e, t) {
return e[t >>> 0];
},
__wbg_get_with_ref_key_6412cf3094599694: function(e, t) {
return e[t];
},
__wbg_instanceof_ArrayBuffer_8f49811467741499: function(e) {
let t;
try {
t = e instanceof ArrayBuffer;
} catch {
t = !1;
}
return t;
},
__wbg_instanceof_Uint8Array_86f30649f63ef9c2: function(e) {
let t;
try {
t = e instanceof Uint8Array;
} catch {
t = !1;
}
return t;
},
__wbg_isArray_67c2c9c4313f4448: function(e) {
return Array.isArray(e);
},
__wbg_isSafeInteger_66acec27e09e99a7: function(e) {
return Number.isSafeInteger(e);
},
__wbg_iterator_8732428d309e270e: function() {
return Symbol.iterator;
},
__wbg_length_4a591ecaa01354d9: function(e) {
return e.length;
},
__wbg_length_66f1a4b2e9026940: function(e) {
return e.length;
},
__wbg_new_227d7c05414eb861: function() {
return /* @__PURE__ */ Error();
},
__wbg_new_578aeef4b6b94378: function(e) {
return new Uint8Array(e);
},
__wbg_new_ce1ab61c1c2b300d: function() {
return {};
},
__wbg_new_d90091b82fdf5b91: function() {
return [];
},
__wbg_next_9e03acdf51c4960d: function(e) {
return e.next;
},
__wbg_next_eb8ca7351fa27906: function() {
return Oe(function(e) {
return e.next();
}, arguments);
},
__wbg_prototypesetcall_3249fc62a0fafa30: function(e, t, n) {
Uint8Array.prototype.set.call(De(e, t), n);
},
__wbg_set_6be42768c690e380: function(e, t, n) {
e[t] = n;
},
__wbg_set_dca99999bba88a9a: function(e, t, n) {
e[t >>> 0] = n;
},
__wbg_stack_3b0d974bbf31e44f: function(e, t) {
let n = t.stack, r = z(n, G.__wbindgen_malloc, G.__wbindgen_realloc), i = W;
P().setInt32(e + 4, i, !0), P().setInt32(e + 0, r, !0);
},
__wbg_value_f3625092ee4b37f4: function(e) {
return e.value;
},
__wbindgen_cast_0000000000000001: function(e) {
return e;
},
__wbindgen_cast_0000000000000002: function(e, t) {
return F(e, t);
},
__wbindgen_cast_0000000000000003: function(e) {
return BigInt.asUintN(64, e);
},
__wbindgen_init_externref_table: function() {
let e = G.__wbindgen_externrefs, t = e.grow(4);
e.set(0, void 0), e.set(t + 0, void 0), e.set(t + 1, null), e.set(t + 2, !0), e.set(t + 3, !1);
}
}
};
}
function Ee(e) {
let t = G.__externref_table_alloc();
return G.__wbindgen_externrefs.set(t, e), t;
}
function M(e) {
let t = typeof e;
if (t == "number" || t == "boolean" || e == null) return `${e}`;
if (t == "string") return `"${e}"`;
if (t == "symbol") {
let t = e.description;
return t == null ? "Symbol" : `Symbol(${t})`;
}
if (t == "function") {
let t = e.name;
return typeof t == "string" && t.length > 0 ? `Function(${t})` : "Function";
}
if (Array.isArray(e)) {
let t = e.length, n = "[";
t > 0 && (n += M(e[0]));
for (let r = 1; r < t; r++) n += ", " + M(e[r]);
return n += "]", n;
}
let n = /\[object ([^\]]+)\]/.exec(toString.call(e)), r;
if (n && n.length > 1) r = n[1];
else return toString.call(e);
if (r == "Object") try {
return "Object(" + JSON.stringify(e) + ")";
} catch {
return "Object";
}
return e instanceof Error ? `${e.name}: ${e.message}\n${e.stack}` : r;
}
function De(e, t) {
return e >>>= 0, L().subarray(e / 1, e / 1 + t);
}
var N = null;
function P() {
return (N === null || N.buffer.detached === !0 || N.buffer.detached === void 0 && N.buffer !== G.memory.buffer) && (N = new DataView(G.memory.buffer)), N;
}
function F(e, t) {
return Ae(e >>> 0, t);
}
var I = null;
function L() {
return (I === null || I.byteLength === 0) && (I = new Uint8Array(G.memory.buffer)), I;
}
function Oe(e, t) {
try {
return e.apply(this, t);
} catch (e) {
let t = Ee(e);
G.__wbindgen_exn_store(t);
}
}
function R(e) {
return e == null;
}
function z(e, t, n) {
if (n === void 0) {
let n = U.encode(e), r = t(n.length, 1) >>> 0;
return L().subarray(r, r + n.length).set(n), W = n.length, r;
}
let r = e.length, i = t(r, 1) >>> 0, a = L(), o = 0;
for (; o < r; o++) {
let t = e.charCodeAt(o);
if (t > 127) break;
a[i + o] = t;
}
if (o !== r) {
o !== 0 && (e = e.slice(o)), i = n(i, r, r = o + e.length * 3, 1) >>> 0;
let t = L().subarray(i + o, i + r), a = U.encodeInto(e, t);
o += a.written, i = n(i, r, o, 1) >>> 0;
}
return W = o, i;
}
function B(e) {
let t = G.__wbindgen_externrefs.get(e);
return G.__externref_table_dealloc(e), t;
}
var V = new TextDecoder("utf-8", {
ignoreBOM: !0,
fatal: !0
});
V.decode();
var ke = 2146435072, H = 0;
function Ae(e, t) {
return H += t, H >= ke && (V = new TextDecoder("utf-8", {
ignoreBOM: !0,
fatal: !0
}), V.decode(), H = t), V.decode(L().subarray(e, e + t));
}
var U = new TextEncoder();
"encodeInto" in U || (U.encodeInto = function(e, t) {
let n = U.encode(e);
return t.set(n), {
read: e.length,
written: n.length
};
});
var W = 0, G;
function je(e, t) {
return G = e.exports, N = null, I = null, G.__wbindgen_start(), G;
}
async function Me(e, t) {
if (typeof Response == "function" && e instanceof Response) {
if (typeof WebAssembly.instantiateStreaming == "function") try {
return await WebAssembly.instantiateStreaming(e, t);
} catch (t) {
if (e.ok && n(e.type) && e.headers.get("Content-Type") !== "application/wasm") console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", t);
else throw t;
}
let r = await e.arrayBuffer();
return await WebAssembly.instantiate(r, t);
} else {
let n = await WebAssembly.instantiate(e, t);
return n instanceof WebAssembly.Instance ? {
instance: n,
module: e
} : n;
}
function n(e) {
switch (e) {
case "basic":
case "cors":
case "default": return !0;
}
return !1;
}
}
function Ne(e) {
if (G !== void 0) return G;
e !== void 0 && (Object.getPrototypeOf(e) === Object.prototype ? {module: e} = e : console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));
let t = Te();
return e instanceof WebAssembly.Module || (e = new WebAssembly.Module(e)), je(new WebAssembly.Instance(e, t));
}
async function Pe(e) {
if (G !== void 0) return G;
e !== void 0 && (Object.getPrototypeOf(e) === Object.prototype ? {module_or_path: e} = e : console.warn("using deprecated parameters for the initialization function; pass a single object instead")), e === void 0 && (e = new URL(new URL("data:application/wasm;base64,AGFzbQEAAAAB3AIyYAJ/fwF/YAN/f38Bf2ACf38AYAN/f38AYAF/AGAEf39/fwBgBX9/f39/AGABbwF/YAZ/f39/f38AYAF/AX9gAn9vAGAAAGAEf39/fwF/YAFvAW9gAAFvYAADf39/YAJvbwFvYAJvbwF/YAh/f39/f39/fwBgBX9/f39/AX9gAn9/AW9gAXwBfGAGf39/f39/AX9gBX9/fn9/AGAFf399f38AYAV/f3x/fwBgA29/bwBgAm9/AW9gA29vbwBgA39/bwBgAW8BfGABfAFvYAF+AW9gCX9/f39/f39/fwBgCn9/f39/f39/f38AYAJ/fwF+YAl/f39/f39+fn4AYAABf2ADf35+AGADf39+AGAGf39/fn9/AGAGf39/fX9/AGAGf39/fH9/AGAFf39/f28Df39/YANvb28Df39/YAR/fH9/AGAEf31/fwBgBH9+f38AYAJ8fAF8YAF+AX8CyBMtES4vZGlmZl93YXNtX2JnLmpzGl9fd2JnX3NldF9kY2E5OTk5OWJiYTg4YTlhABoRLi9kaWZmX3dhc21fYmcuanMkX193YmdfZ2V0X3VuY2hlY2tlZF8zM2Y2ZTVjOWUyZjJkNmIyABsRLi9kaWZmX3dhc21fYmcuanMdX193YmdfbGVuZ3RoXzY2ZjFhNGIyZTkwMjY5NDAABxEuL2RpZmZfd2FzbV9iZy5qcxtfX3diZ19uZXh0X2ViOGNhNzM1MWZhMjc5MDYADREuL2RpZmZfd2FzbV9iZy5qcxtfX3diZ19kb25lXzYwY2YzMDdmY2M2ODA1MzYABxEuL2RpZmZfd2FzbV9iZy5qcxxfX3diZ192YWx1ZV9mMzYyNTA5MmVlNGIzN2Y0AA0RLi9kaWZmX3dhc21fYmcuanMnX193YmdfZ2V0X3dpdGhfcmVmX2tleV82NDEyY2YzMDk0NTk5Njk0ABARLi9kaWZmX3dhc21fYmcuanMaX193Ymdfc2V0XzZiZTQyNzY4YzY5MGUzODAAHBEuL2RpZmZfd2FzbV9iZy5qcx1fX3diZ19TdHJpbmdfODU2NGU1NTk3OTllY2NkYQAKES4vZGlmZl93YXNtX2JnLmpzGl9fd2JnX25ld19kOTAwOTFiODJmZGY1YjkxAA4RLi9kaWZmX3dhc21fYmcuanMaX193YmdfbmV3X2NlMWFiNjFjMWMyYjMwMGQADhEuL2RpZmZfd2FzbV9iZy5qcxpfX3diZ19uZXdfNTc4YWVlZjRiNmI5NDM3OAANES4vZGlmZl93YXNtX2JnLmpzHV9fd2JnX2xlbmd0aF80YTU5MWVjYWEwMTM1NGQ5AAcRLi9kaWZmX3dhc21fYmcuanMnX193YmdfcHJvdG90eXBlc2V0Y2FsbF8zMjQ5ZmM2MmEwZmFmYTMwAB0RLi9kaWZmX3dhc21fYmcuanMsX193YmdfaW5zdGFuY2VvZl9VaW50OEFycmF5Xzg2ZjMwNjQ5ZjYzZWY5YzIABxEuL2RpZmZfd2FzbV9iZy5qcy1fX3diZ19pbnN0YW5jZW9mX0FycmF5QnVmZmVyXzhmNDk4MTE0Njc3NDE0OTkABxEuL2RpZmZfd2FzbV9iZy5qcx5fX3diZ19pc0FycmF5XzY3YzJjOWM0MzEzZjQ0NDgABxEuL2RpZmZfd2FzbV9iZy5qcyRfX3diZ19pc1NhZmVJbnRlZ2VyXzY2YWNlYzI3ZTA5ZTk5YTcABxEuL2RpZmZfd2FzbV9iZy5qcx9fX3diZ19pdGVyYXRvcl84NzMyNDI4ZDMwOWUyNzBlAA4RLi9kaWZmX3dhc21fYmcuanMbX193YmdfbmV4dF85ZTAzYWNkZjUxYzQ5NjBkAA0RLi9kaWZmX3dhc21fYmcuanMaX193YmdfZ2V0XzFmOGYwNTRkZGJhYTdkYjIAEBEuL2RpZmZfd2FzbV9iZy5qcxtfX3diZ19jYWxsXzhhODk2MDlkODlmNjYwOGEAEBEuL2RpZmZfd2FzbV9iZy5qcxpfX3diZ19uZXdfMjI3ZDdjMDU0MTRlYjg2MQAOES4vZGlmZl93YXNtX2JnLmpzHF9fd2JnX3N0YWNrXzNiMGQ5NzRiYmYzMWU0NGYAChEuL2RpZmZfd2FzbV9iZy5qcxxfX3diZ19lcnJvcl9hNmZhMjAyYjU4YWExY2QzAAIRLi9kaWZmX3dhc21fYmcuanMsX193YmdfX193YmluZGdlbl9udW1iZXJfZ2V0XzliYjE3NjExMjIxODFhZjIAChEuL2RpZmZfd2FzbV9iZy5qcyRfX3diZ19fX3diaW5kZ2VuX2luXzcwYTQwM2E1NmU3NzE3MDQAEREuL2RpZmZfd2FzbV9iZy5qcydfX3diZ19fX3diaW5kZ2VuX3Rocm93XzE1MDZmMjIzNWQxYmRiYTAAAhEuL2RpZmZfd2FzbV9iZy5qcylfX3diZ19fX3diaW5kZ2VuX2lzX251bGxfODdjM2JmZTk2OGM2YTVhZAAHES4vZGlmZl93YXNtX2JnLmpzKl9fd2JnX19fd2JpbmRnZW5fanN2YWxfZXFfMTA2OGU2MjRmYTg3ZjZhYgARES4vZGlmZl93YXNtX2JnLmpzHV9fd2JnX051bWJlcl82YjUwNmU2NTM2ODMxZWFhAB4RLi9kaWZmX3dhc21fYmcuanMcX193YmdfRXJyb3JfZWY1M2JjMzEwZWIyOThhMAAUES4vZGlmZl93YXNtX2JnLmpzK19fd2JnX19fd2JpbmRnZW5faXNfYmlnaW50XzZmZmQ2NDY4YTliYzQ0YjkABxEuL2RpZmZfd2FzbV9iZy5qcytfX3diZ19fX3diaW5kZ2VuX2lzX29iamVjdF81NjczMmMyYmMzNTNmNDFkAAcRLi9kaWZmX3dhc21fYmcuanMsX193YmdfX193YmluZGdlbl9zdHJpbmdfZ2V0XzcyYmRmOTVkM2FlNTA1YjEAChEuL2RpZmZfd2FzbV9iZy5qcy1fX3diZ19fX3diaW5kZ2VuX2Jvb2xlYW5fZ2V0XzFhNDVlMmMzOGQ0ZDQxYjkABxEuL2RpZmZfd2FzbV9iZy5qcy1fX3diZ19fX3diaW5kZ2VuX2lzX2Z1bmN0aW9uXzc1NGU5ZjMwNWZmNjAyOWUABxEuL2RpZmZfd2FzbV9iZy5qcy5fX3diZ19fX3diaW5kZ2VuX2lzX3VuZGVmaW5lZF82N2I0NTZiZTg2NzNkM2Q3AAcRLi9kaWZmX3dhc21fYmcuanMwX193YmdfX193YmluZGdlbl9qc3ZhbF9sb29zZV9lcV8yYzU2NTY0Yzc1MTI5NTExABERLi9kaWZmX3dhc21fYmcuanMzX193YmdfX193YmluZGdlbl9iaWdpbnRfZ2V0X2FzX2k2NF8zODEzMGU5OGVlY2Q0NjdkAAoRLi9kaWZmX3dhc21fYmcuanMuX193YmdfX193YmluZGdlbl9kZWJ1Z19zdHJpbmdfMGFjY2Q4MGY0NWU1ZmFhMgAKES4vZGlmZl93YXNtX2JnLmpzH19fd2JpbmRnZW5faW5pdF9leHRlcm5yZWZf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uN/AAEGs38AANgIAQbTfwABBrN/AADYCAEHA38AAQbTfwAA2AgBBvN/AAEG038AANgIAQcjfwABBvN/AADYCAEHE38AAQbzfwAA2AgBB0N/AAEHE38AANgIAQczfwABBxN/AADYCAEHY38AAQczfwAA2AgBB1N/AAEHM38AANgIAQeDfwABB1N/AADYCAEHo38AAQdzfwAA2AgBB3N/AAEHU38AANgIAQfDfwABB5N/AADYCAEHk38AAQdzfwAA2AgBB+N/AAEHs38AANgIAQezfwABB5N/AADYCAEGA4MAAQfTfwAA2AgBB9N/AAEHs38AANgIAQYjgwABB/N/AADYCAEH838AAQfTfwAA2AgBBkODAAEGE4MAANgIAQYTgwABB/N/AADYCAEGY4MAAQYzgwAA2AgBBjODAAEGE4MAANgIAQaDgwABBlODAADYCAEGU4MAAQYzgwAA2AgBBqODAAEGc4MAANgIAQZzgwABBlODAADYCAEGw4MAAQaTgwAA2AgBBpODAAEGc4MAANgIAQbjgwABBrODAADYCAEGs4MAAQaTgwAA2AgBBwODAAEG04MAANgIAQbTgwABBrODAADYCAEHI4MAAQbzgwAA2AgBBvODAAEG04MAANgIAQdDgwABBxODAADYCAEHE4MAAQbzgwAA2AgBB2ODAAEHM4MAANgIAQczgwABBxODAADYCAEHw4MAAIAFBD2pBeHEiAEEIayICNgIAQdTgwABBzODAADYCAEHo4MAAIARBKGsiBCABIABrakEIaiIANgIAIAIgAEEBcjYCBCABIARqQSg2AgRB/ODAAEGAgIABNgIADAgLIAIgA0kgASACTXINACAAKAIMIgNBAXENACADQQF2IAdGDQMLQYDhwABBgOHAACgCACIAIAEgACABSRs2AgAgASAEaiEDQcTewAAhAAJAAkADQCADIAAoAgAiBkcEQCAAKAIIIgANAQwCCwsgACgCDCIDQQFxDQAgA0EBdiAHRg0BC0HE3sAAIQADQAJAIAIgACgCACIDTwRAIAIgAyAAKAIEaiIGSQ0BCyAAKAIIIQAMAQsLQfDgwAAgAUEPakF4cSIAQQhrIgM2AgBB6ODAACAEQShrIgkgASAAa2pBCGoiADYCACADIABBAXI2AgQgASAJakEoNgIEQfzgwABBgICAATYCACACIAZBIGtB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