@izagood/avcs 0.31.3 → 0.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/dist/api/repo.d.ts +141 -0
- package/dist/api/repo.d.ts.map +1 -1
- package/dist/api/repo.js +375 -12
- package/dist/api/repo.js.map +1 -1
- package/dist/cli.js +75 -5
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +13 -2
- package/dist/mcp/server.js.map +1 -1
- package/dist/merge/merge3.d.ts +16 -1
- package/dist/merge/merge3.d.ts.map +1 -1
- package/dist/merge/merge3.js +24 -6
- package/dist/merge/merge3.js.map +1 -1
- package/dist/reducer/policy.d.ts +1 -1
- package/dist/reducer/reducer.d.ts +61 -0
- package/dist/reducer/reducer.d.ts.map +1 -1
- package/dist/reducer/reducer.js +225 -11
- package/dist/reducer/reducer.js.map +1 -1
- package/package.json +1 -1
package/dist/reducer/reducer.js
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
import { sha256hex, canonicalize } from "../core/canonical.js";
|
|
13
13
|
import { evaluateOp } from "./policy.js";
|
|
14
14
|
import { buildAliasMap, resolvePath } from "./aliases.js";
|
|
15
|
-
import { merge3 } from "../merge/merge3.js";
|
|
15
|
+
import { merge3, diffHunks } from "../merge/merge3.js";
|
|
16
16
|
import { ownersFor } from "../policy/owners.js";
|
|
17
17
|
import { isBinary } from "../core/bytes.js";
|
|
18
18
|
import { Buffer } from "node:buffer";
|
|
@@ -179,7 +179,7 @@ export function detectFileConflicts(ops, result, blobContent) {
|
|
|
179
179
|
options: distinct.map((text, i) => ({ sides: [i], text })),
|
|
180
180
|
},
|
|
181
181
|
];
|
|
182
|
-
out.push({ file, ops: ordered.map((o) => o.oid), regions });
|
|
182
|
+
out.push({ file, ops: ordered.map((o) => o.oid), regions, atomic: true });
|
|
183
183
|
continue;
|
|
184
184
|
}
|
|
185
185
|
const base = baseBuf.toString("utf8");
|
|
@@ -190,6 +190,64 @@ export function detectFileConflicts(ops, result, blobContent) {
|
|
|
190
190
|
}
|
|
191
191
|
return out;
|
|
192
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Arbitrate the regions {@link detectFileConflicts} found — the authoritative pass, and the
|
|
195
|
+
* one place where side → op is exact: `FileConflict.ops` is the file's concurrent frontier in
|
|
196
|
+
* canonical order and `region.options[].sides` index straight into it.
|
|
197
|
+
*
|
|
198
|
+
* A decided region leaves the conflict set (policy decided it, so it is no longer a question
|
|
199
|
+
* for a human) and is recorded as an `AutoDecision` — an automatic decision without an audit
|
|
200
|
+
* trail is not allowed (docs/00 principle 4, at region granularity). An undecided region
|
|
201
|
+
* stays exactly as it was: the tree holds the deterministic fallback content and the conflict
|
|
202
|
+
* still reaches the release gate.
|
|
203
|
+
*
|
|
204
|
+
* Scores are lazy and memoized per op, so only the ops of a file that actually contended are
|
|
205
|
+
* ever evaluated (docs/22 R-c).
|
|
206
|
+
*/
|
|
207
|
+
export function arbitrateFileConflicts(fileConflicts, input) {
|
|
208
|
+
if (fileConflicts.length === 0)
|
|
209
|
+
return { remaining: [], decisions: [] };
|
|
210
|
+
const scoreOf = buildOpScorer(input);
|
|
211
|
+
const remaining = [];
|
|
212
|
+
const decisions = [];
|
|
213
|
+
const seen = new Set(); // idempotent identity: key + region bounds + winner (R-d)
|
|
214
|
+
for (const fc of fileConflicts) {
|
|
215
|
+
if (fc.atomic) {
|
|
216
|
+
remaining.push(fc);
|
|
217
|
+
continue;
|
|
218
|
+
}
|
|
219
|
+
const key = `file:${fc.file}`;
|
|
220
|
+
const open = [];
|
|
221
|
+
for (const region of fc.regions) {
|
|
222
|
+
const sideOps = (side) => {
|
|
223
|
+
const oid = fc.ops[side];
|
|
224
|
+
return oid === undefined ? [] : [oid];
|
|
225
|
+
};
|
|
226
|
+
const v = judgeRegion(region, sideOps, scoreOf);
|
|
227
|
+
if (!v) {
|
|
228
|
+
open.push(region);
|
|
229
|
+
continue;
|
|
230
|
+
}
|
|
231
|
+
const idem = `${key}|${region.baseStart}|${region.baseEnd}|${v.chosen}`;
|
|
232
|
+
if (seen.has(idem))
|
|
233
|
+
continue;
|
|
234
|
+
seen.add(idem);
|
|
235
|
+
decisions.push({
|
|
236
|
+
key,
|
|
237
|
+
conflictId: conflictIdFor(key),
|
|
238
|
+
chosenOp: v.chosen,
|
|
239
|
+
rejectedOps: v.rejected,
|
|
240
|
+
reason: "region-arbitration",
|
|
241
|
+
policyVersion: input.policy.version,
|
|
242
|
+
region: { baseStart: region.baseStart, baseEnd: region.baseEnd },
|
|
243
|
+
optionScores: v.optionScores,
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
if (open.length)
|
|
247
|
+
remaining.push({ ...fc, regions: open });
|
|
248
|
+
}
|
|
249
|
+
return { remaining, decisions };
|
|
250
|
+
}
|
|
193
251
|
export function reduce(input) {
|
|
194
252
|
return snapshotReduce(input).result;
|
|
195
253
|
}
|
|
@@ -275,14 +333,15 @@ function frontier(ops, statuses, anc) {
|
|
|
275
333
|
covered.add(a);
|
|
276
334
|
return [...acceptedIds].filter((id) => !covered.has(id));
|
|
277
335
|
}
|
|
278
|
-
function materializeProjection(ops, statuses, anc, materializeStatuses, blobContent) {
|
|
336
|
+
function materializeProjection(ops, statuses, anc, materializeStatuses, blobContent, scoreOf) {
|
|
279
337
|
const projected = ops.filter((o) => materializeStatuses.has(statuses.get(o.oid)));
|
|
280
338
|
const ordered = kahnOrder(projected, anc);
|
|
281
339
|
const alias = aliasCtxFor(projected, anc);
|
|
282
340
|
const tree = new Map();
|
|
283
341
|
const synthBlobs = new Map();
|
|
342
|
+
const arb = scoreOf ? { scoreOf, prov: new Map() } : undefined;
|
|
284
343
|
for (const op of ordered)
|
|
285
|
-
applyOp(tree, op, blobContent, synthBlobs, alias);
|
|
344
|
+
applyOp(tree, op, blobContent, synthBlobs, alias, arb);
|
|
286
345
|
return { tree, treeHash: treeHashOf(tree), headOps: frontier(ops, statuses, anc), synthBlobs: pruneSynth(tree, synthBlobs) };
|
|
287
346
|
}
|
|
288
347
|
/**
|
|
@@ -295,7 +354,7 @@ function materializeProjection(ops, statuses, anc, materializeStatuses, blobCont
|
|
|
295
354
|
* Replayed ops only ever read/write dirty paths, so a fresh replay tree + clean base
|
|
296
355
|
* entries reconstructs the full tree exactly. Equivalence is enforced by the A0 harness.
|
|
297
356
|
*/
|
|
298
|
-
function materializeIncremental(ops, statuses, anc, materializeStatuses, blobContent, base, dirtyPaths) {
|
|
357
|
+
function materializeIncremental(ops, statuses, anc, materializeStatuses, blobContent, base, dirtyPaths, scoreOf) {
|
|
299
358
|
const projected = ops.filter((o) => materializeStatuses.has(statuses.get(o.oid)));
|
|
300
359
|
const ordered = kahnOrder(projected, anc);
|
|
301
360
|
// The alias map is a function of the WHOLE projected rename set, never of the dirty
|
|
@@ -309,9 +368,10 @@ function materializeIncremental(ops, statuses, anc, materializeStatuses, blobCon
|
|
|
309
368
|
// dropped as dirty. `AVCS_VERIFY_INCREMENTAL=1` and the C22 cases gate it.
|
|
310
369
|
const replayTree = new Map();
|
|
311
370
|
const replaySynth = new Map();
|
|
371
|
+
const arb = scoreOf ? { scoreOf, prov: new Map() } : undefined;
|
|
312
372
|
for (const op of ordered) {
|
|
313
373
|
if (pathsOf(op).some((p) => dirtyPaths.has(p)))
|
|
314
|
-
applyOp(replayTree, op, blobContent, replaySynth, alias);
|
|
374
|
+
applyOp(replayTree, op, blobContent, replaySynth, alias, arb);
|
|
315
375
|
}
|
|
316
376
|
// Final tree = clean base paths (not dirty) + replayed dirty paths.
|
|
317
377
|
const tree = new Map();
|
|
@@ -380,7 +440,7 @@ export function snapshotReduce(input) {
|
|
|
380
440
|
for (const o of ops)
|
|
381
441
|
if (keysOf(o).length === 0 && statuses.get(o.oid) === "proposed")
|
|
382
442
|
statuses.set(o.oid, "accepted");
|
|
383
|
-
const { tree, treeHash, headOps, synthBlobs } = materializeProjection(ops, statuses, anc, materializeStatuses, input.blobContent ?? new Map());
|
|
443
|
+
const { tree, treeHash, headOps, synthBlobs } = materializeProjection(ops, statuses, anc, materializeStatuses, input.blobContent ?? new Map(), scorerFrom(ops, evalOf));
|
|
384
444
|
const result = { tree, treeHash, statuses, conflicts, autoDecisions, fileConflicts: [], headOps, synthBlobs, blockedReasons, untrustedEvidence: 0 };
|
|
385
445
|
const stats = { groupsTotal: groups.size, groupsRecomputed: groups.size, groupsReused: 0, dirtyKeys: groups.size };
|
|
386
446
|
return { input, result, perKey, groupOrder, groupMembers, stats };
|
|
@@ -597,6 +657,18 @@ export function reduceIncremental(snap, next) {
|
|
|
597
657
|
return true; // a delta op became this op's ancestor
|
|
598
658
|
return false;
|
|
599
659
|
};
|
|
660
|
+
// A contended region's winner is a function of the SCORES of the ops writing that path
|
|
661
|
+
// (docs/22 §4.2), so a change to a score INPUT dirties the path even when the projection is
|
|
662
|
+
// untouched: new evidence for an op, or a reliability shift for its actor, can flip which
|
|
663
|
+
// option takes the region. Without this the warm path would keep a region the cold path
|
|
664
|
+
// re-decides, and warm/cold would disagree on the tree — the one thing incremental reduce
|
|
665
|
+
// may never do. Group dirtiness already covers both signals; this carries them to PATHS.
|
|
666
|
+
const newEvidenceFor = new Set();
|
|
667
|
+
for (const e of evidence)
|
|
668
|
+
if (!prevEvIds.has(e.oid))
|
|
669
|
+
for (const oid of e.forOps)
|
|
670
|
+
newEvidenceFor.add(oid);
|
|
671
|
+
const scoreChanged = (o) => newEvidenceFor.has(o.oid) || changedActors.has(o.actor.id);
|
|
600
672
|
const dirtyPaths = new Set();
|
|
601
673
|
for (const o of ops) {
|
|
602
674
|
const oid = o.oid;
|
|
@@ -619,8 +691,12 @@ export function reduceIncremental(snap, next) {
|
|
|
619
691
|
else if (projectedNow(oid) && isCrossPath(o))
|
|
620
692
|
for (const p of pathsOf(o))
|
|
621
693
|
dirtyPaths.add(p);
|
|
694
|
+
// Score-input change (docs/22): the op still projects, but what it is WORTH changed.
|
|
695
|
+
else if (projectedNow(oid) && scoreChanged(o))
|
|
696
|
+
for (const p of pathsOf(o))
|
|
697
|
+
dirtyPaths.add(p);
|
|
622
698
|
}
|
|
623
|
-
const { tree, treeHash, headOps, synthBlobs } = materializeIncremental(ops, statuses, anc, materializeStatuses, next.blobContent ?? new Map(), snap.result, dirtyPaths);
|
|
699
|
+
const { tree, treeHash, headOps, synthBlobs } = materializeIncremental(ops, statuses, anc, materializeStatuses, next.blobContent ?? new Map(), snap.result, dirtyPaths, scorerFrom(ops, evalOf));
|
|
624
700
|
const result = { tree, treeHash, statuses, conflicts, autoDecisions, fileConflicts: [], headOps, synthBlobs, blockedReasons, untrustedEvidence: 0 };
|
|
625
701
|
const stats = { groupsTotal: groups.size, groupsRecomputed: recomputed, groupsReused: reused, dirtyKeys: dirty.size };
|
|
626
702
|
return { input: next, result, perKey, groupOrder, groupMembers, stats };
|
|
@@ -918,6 +994,125 @@ function kahnOrder(ops, anc) {
|
|
|
918
994
|
}
|
|
919
995
|
return order;
|
|
920
996
|
}
|
|
997
|
+
/**
|
|
998
|
+
* The arbitration rule (docs/22 §3.2) — the one place it is written down.
|
|
999
|
+
*
|
|
1000
|
+
* `opsForSide` maps a variant index back to the op(s) that produced it. The caller owns
|
|
1001
|
+
* that mapping because it differs between the pairwise merge inside `applyOp` and the
|
|
1002
|
+
* authoritative N-way merge in `detectFileConflicts`.
|
|
1003
|
+
*
|
|
1004
|
+
* - An option several ops agree on is represented by its HIGHEST-scoring op. An average
|
|
1005
|
+
* would let a low-trust actor dilute an option merely by co-signing it.
|
|
1006
|
+
* - Any excluded op excludes its whole option: conservative on blocking, generous on
|
|
1007
|
+
* score. An option that cannot be auto-accepted cannot win a region either.
|
|
1008
|
+
* - A tie is never broken by recency. It returns `null`, the region stays a conflict and
|
|
1009
|
+
* a human decides. docs/00 principle 6 allows recency as a last tie-break for op
|
|
1010
|
+
* PROMOTION; region content is where meaning diverges, so deciding it quietly is worse
|
|
1011
|
+
* than raising it.
|
|
1012
|
+
*/
|
|
1013
|
+
function judgeRegion(region, opsForSide, scoreOf) {
|
|
1014
|
+
const cands = [];
|
|
1015
|
+
for (const [i, opt] of region.options.entries()) {
|
|
1016
|
+
const oids = [...new Set(opt.sides.flatMap(opsForSide))];
|
|
1017
|
+
if (oids.length === 0)
|
|
1018
|
+
return null; // no op behind an option ⇒ nothing to weigh
|
|
1019
|
+
let excluded = false;
|
|
1020
|
+
let rep;
|
|
1021
|
+
for (const oid of oids) {
|
|
1022
|
+
const v = scoreOf(oid);
|
|
1023
|
+
if (!v)
|
|
1024
|
+
return null; // an op the policy cannot speak about ⇒ abstain, never guess
|
|
1025
|
+
if (v.excluded)
|
|
1026
|
+
excluded = true;
|
|
1027
|
+
if (!rep || v.score > rep.score || (v.score === rep.score && oid < rep.opOid))
|
|
1028
|
+
rep = { opOid: oid, score: v.score };
|
|
1029
|
+
}
|
|
1030
|
+
cands.push({ i, excluded, opOid: rep.opOid, score: rep.score });
|
|
1031
|
+
}
|
|
1032
|
+
const live = cands.filter((c) => !c.excluded);
|
|
1033
|
+
if (live.length === 0)
|
|
1034
|
+
return null; // every option blocked ⇒ a human, and no unverified
|
|
1035
|
+
const topScore = Math.max(...live.map((c) => c.score)); // content takes the region
|
|
1036
|
+
const top = live.filter((c) => c.score === topScore);
|
|
1037
|
+
if (top.length !== 1)
|
|
1038
|
+
return null; // tie ⇒ a human
|
|
1039
|
+
const win = top[0];
|
|
1040
|
+
return {
|
|
1041
|
+
option: win.i,
|
|
1042
|
+
chosen: win.opOid,
|
|
1043
|
+
rejected: cands.filter((c) => c.i !== win.i).map((c) => c.opOid),
|
|
1044
|
+
optionScores: cands.map((c) => ({ opOid: c.opOid, score: c.score, excluded: c.excluded })),
|
|
1045
|
+
};
|
|
1046
|
+
}
|
|
1047
|
+
/**
|
|
1048
|
+
* side → op for `applyOp`'s PAIRWISE merge, which is not the clean mapping docs/22 §3.2
|
|
1049
|
+
* assumed. Side 1 is the op being applied, but side 0 is the ACCUMULATED tree content —
|
|
1050
|
+
* the composition of every content op already applied at that path.
|
|
1051
|
+
*
|
|
1052
|
+
* So the incumbent side is attributed per REGION: only the contributors whose own change
|
|
1053
|
+
* (measured against this merge's base, so the coordinates match the region's) touches the
|
|
1054
|
+
* contested span may speak for it, and among those the strongest represents the option —
|
|
1055
|
+
* the same rule agreement uses. Without the span filter, a high-trust edit to an unrelated
|
|
1056
|
+
* part of the file would defend a low-trust edit's region, and the tree would disagree with
|
|
1057
|
+
* the authoritative N-way pass, which sees every op separately.
|
|
1058
|
+
*
|
|
1059
|
+
* The per-contributor diff is lazy and memoized per merge, so a file with no contended
|
|
1060
|
+
* region pays nothing at all and a contended one pays at most one line-diff per contributor
|
|
1061
|
+
* that a region actually asks about (docs/22 R-c). The trail only ever holds the ops still
|
|
1062
|
+
* projected at that path — a sequential edit chain is superseded before it gets here — so it
|
|
1063
|
+
* is the concurrent frontier's size, not the file's history, that bounds this.
|
|
1064
|
+
*/
|
|
1065
|
+
function pairwiseArbiter(baseText, incumbents, self, contentOf, scoreOf) {
|
|
1066
|
+
const baseLines = baseText.split("\n");
|
|
1067
|
+
const spans = new Map();
|
|
1068
|
+
const spansOf = (op) => {
|
|
1069
|
+
const oid = op.oid;
|
|
1070
|
+
let s = spans.get(oid);
|
|
1071
|
+
if (!s) {
|
|
1072
|
+
s = diffHunks(baseLines, contentOf(op).split("\n"));
|
|
1073
|
+
spans.set(oid, s);
|
|
1074
|
+
}
|
|
1075
|
+
return s;
|
|
1076
|
+
};
|
|
1077
|
+
const touches = (op, start, end) => spansOf(op).some((h) => (h.start === h.end ? h.start >= start && h.start <= end : h.start < end && h.end > start));
|
|
1078
|
+
const selfOid = self.oid;
|
|
1079
|
+
return (region) => {
|
|
1080
|
+
const opsForSide = (side) => {
|
|
1081
|
+
if (side !== 0)
|
|
1082
|
+
return [selfOid];
|
|
1083
|
+
const hit = incumbents.filter((o) => touches(o, region.baseStart, region.baseEnd));
|
|
1084
|
+
// No contributor claims the span (a composition whose hunks shifted): fall back to
|
|
1085
|
+
// the whole trail rather than inventing an attribution.
|
|
1086
|
+
return (hit.length ? hit : incumbents).map((o) => o.oid);
|
|
1087
|
+
};
|
|
1088
|
+
return judgeRegion(region, opsForSide, scoreOf)?.option ?? null;
|
|
1089
|
+
};
|
|
1090
|
+
}
|
|
1091
|
+
/** Wrap a reduce's memoized `evalOf` as an {@link OpScorer}. Arbitration REUSES the scores
|
|
1092
|
+
* the group decision already computed — never a recomputation per region (docs/22 R-c). A
|
|
1093
|
+
* contended region IS a conflict, so ops are evaluated with `inConflict = true`, the same
|
|
1094
|
+
* flag their contended group used. */
|
|
1095
|
+
function scorerFrom(ops, evalOf) {
|
|
1096
|
+
const byId = new Map(ops.map((o) => [o.oid, o]));
|
|
1097
|
+
return (oid) => {
|
|
1098
|
+
const op = byId.get(oid);
|
|
1099
|
+
if (!op)
|
|
1100
|
+
return undefined;
|
|
1101
|
+
const ev = evalOf(op, true);
|
|
1102
|
+
return { score: ev.score, excluded: ev.blocked || ev.requiresHuman };
|
|
1103
|
+
};
|
|
1104
|
+
}
|
|
1105
|
+
/**
|
|
1106
|
+
* Build an {@link OpScorer} from a bare `ReduceInput`, for a caller outside `reduce` — the
|
|
1107
|
+
* authoritative post-reduce pass (`detectFileConflicts` → {@link arbitrateFileConflicts}).
|
|
1108
|
+
* Evaluation is lazy and memoized per op, so only the ops of a file that actually contended
|
|
1109
|
+
* are ever scored.
|
|
1110
|
+
*/
|
|
1111
|
+
export function buildOpScorer(input) {
|
|
1112
|
+
const evidence = [...input.evidence].sort((a, b) => cmp(a.createdAt, b.createdAt) || cmp(a.oid, b.oid));
|
|
1113
|
+
const evalOf = makeEvalOf(input.policy, input.intents, buildEvByOp(evidence), input.reliability ?? new Map());
|
|
1114
|
+
return scorerFrom(input.ops, evalOf);
|
|
1115
|
+
}
|
|
921
1116
|
/**
|
|
922
1117
|
* Apply one projected op to the tree.
|
|
923
1118
|
*
|
|
@@ -927,14 +1122,16 @@ function kahnOrder(ops, anc) {
|
|
|
927
1122
|
* order put first. With no renames in the op set the alias map is empty, resolution is
|
|
928
1123
|
* the identity, and this function behaves exactly as it did before.
|
|
929
1124
|
*/
|
|
930
|
-
function applyOp(tree, op, blobContent, synthBlobs, alias) {
|
|
1125
|
+
function applyOp(tree, op, blobContent, synthBlobs, alias, arb) {
|
|
931
1126
|
const b = op.body;
|
|
932
1127
|
const resolve = (oid) => synthBlobs.get(oid) ?? blobContent.get(oid) ?? Buffer.alloc(0);
|
|
933
1128
|
const at = (declared) => resolvedPath(op, declared, alias);
|
|
934
1129
|
switch (b.kind) {
|
|
935
1130
|
case "put_file":
|
|
936
|
-
if (b.path && b.blobOid)
|
|
1131
|
+
if (b.path && b.blobOid) {
|
|
937
1132
|
tree.set(at(b.path), b.blobOid);
|
|
1133
|
+
arb?.prov.set(at(b.path), [op]); // a whole-content write restarts the trail
|
|
1134
|
+
}
|
|
938
1135
|
break;
|
|
939
1136
|
case "edit_file": {
|
|
940
1137
|
if (!b.path || !b.blobOid)
|
|
@@ -953,21 +1150,32 @@ function applyOp(tree, op, blobContent, synthBlobs, alias) {
|
|
|
953
1150
|
const synthOid = `blob_${sha256hex(opNew).slice(0, 32)}`;
|
|
954
1151
|
synthBlobs.set(synthOid, opNew);
|
|
955
1152
|
tree.set(path, synthOid);
|
|
1153
|
+
arb?.prov.set(path, [op]);
|
|
956
1154
|
break;
|
|
957
1155
|
}
|
|
958
1156
|
// Apply this op's patch (opBase→opNew) onto the accumulated content. Disjoint
|
|
959
1157
|
// line changes compose (order-independent); an overlap with a prior concurrent op
|
|
960
1158
|
// keeps `current` (deterministic incumbent) — the overlap is reported separately
|
|
961
1159
|
// by detectFileConflicts over the full op set. Language-neutral: pure text.
|
|
962
|
-
|
|
1160
|
+
// An overlap is no longer settled by which op got here first: the injected arbiter
|
|
1161
|
+
// asks the policy which option wins the region (docs/22 §3.2). It abstains — leaving
|
|
1162
|
+
// the incumbent and the conflict — whenever policy cannot separate the options.
|
|
1163
|
+
const incumbents = arb?.prov.get(path) ?? [];
|
|
1164
|
+
const arbitrate = arb && incumbents.length
|
|
1165
|
+
? pairwiseArbiter(opBase.toString("utf8"), incumbents, op, (o) => resolve(o.body.blobOid ?? "").toString("utf8"), arb.scoreOf)
|
|
1166
|
+
: undefined;
|
|
1167
|
+
const m = merge3(opBase.toString("utf8"), [current.toString("utf8"), opNew.toString("utf8")], { onConflict: "first", arbitrate });
|
|
963
1168
|
const mergedBuf = Buffer.from(m.merged, "utf8");
|
|
964
1169
|
const synthOid = `blob_${sha256hex(mergedBuf).slice(0, 32)}`;
|
|
965
1170
|
synthBlobs.set(synthOid, mergedBuf);
|
|
966
1171
|
tree.set(path, synthOid);
|
|
1172
|
+
if (arb)
|
|
1173
|
+
arb.prov.set(path, [...incumbents, op]);
|
|
967
1174
|
break;
|
|
968
1175
|
}
|
|
969
1176
|
case "delete_file":
|
|
970
1177
|
tree.delete(at(b.path ?? op.target.entityId));
|
|
1178
|
+
arb?.prov.delete(at(b.path ?? op.target.entityId));
|
|
971
1179
|
break;
|
|
972
1180
|
case "rename_file": {
|
|
973
1181
|
if (!b.fromPath || !b.path)
|
|
@@ -987,6 +1195,12 @@ function applyOp(tree, op, blobContent, synthBlobs, alias) {
|
|
|
987
1195
|
if (blob !== undefined) {
|
|
988
1196
|
tree.delete(b.fromPath);
|
|
989
1197
|
tree.set(b.path, blob);
|
|
1198
|
+
if (arb) {
|
|
1199
|
+
const trail = arb.prov.get(b.fromPath);
|
|
1200
|
+
arb.prov.delete(b.fromPath);
|
|
1201
|
+
if (trail)
|
|
1202
|
+
arb.prov.set(b.path, trail); // the content moved, and so does its trail
|
|
1203
|
+
}
|
|
990
1204
|
}
|
|
991
1205
|
break;
|
|
992
1206
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reducer.js","sourceRoot":"","sources":["../../src/reducer/reducer.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,EAAE;AACF,sDAAsD;AACtD,EAAE;AACF,wEAAwE;AACxE,EAAE;AACF,iFAAiF;AACjF,gFAAgF;AAChF,mFAAmF;AACnF,gFAAgF;AAChF,kFAAkF;AAElF,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAS/D,OAAO,EAAE,UAAU,EAAqB,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,WAAW,EAAiB,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,MAAM,EAAuB,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAkFrC,iFAAiF;AACjF,sDAAsD;AACtD,MAAM,UAAU,GAA2B;IACzC,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,cAAc,EAAE,CAAC;IACjB,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,WAAW,EAAE,CAAC;CACf,CAAC;AACF,SAAS,QAAQ,CAAC,CAAkB,EAAE,CAAkB;IACtD,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,MAAM,CAAC,EAAa;IAClC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;IAClB,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,UAAU,CAAC;QAChB,KAAK,WAAW,CAAC;QACjB,KAAK,aAAa;YAChB,gFAAgF;YAChF,mFAAmF;YACnF,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClD,KAAK,aAAa;YAChB,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9F,KAAK,MAAM;YACT,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,oFAAoF;AACpF,SAAS,QAAQ,CAAC,GAAgB;IAChC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,EAAU,EAAe,EAAE;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAC1B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,uDAAuD;QAC1E,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,EAAE,EAAE,CAAC;YACP,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;gBAChC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC7B,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACb,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC;oBAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,KAAK,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,sEAAsE;AACtE,SAAS,eAAe,CAAC,EAAa,EAAE,OAA4B;IAClE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,mFAAmF;IACnF,IAAI,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,eAAe;QAC5F,OAAO,KAAK,CAAC;IACf,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IACtD,MAAM,eAAe,GACnB,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;QAClB,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IAClG,IAAI,eAAe,IAAI,EAAE,CAAC,OAAO,EAAE,eAAe;QAAE,OAAO,KAAK,CAAC;IACjE,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,UAAU,CACjB,SAAqB,EACrB,SAA+B;IAG/B,MAAM,MAAM,GAAG,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAgD,CAAC;IACrE,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,CAAsB,EAAE,GAAQ,EAAE,EAAE;QACjE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAClE,CAAC,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC9C,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,WAAW;YAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9E,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,SAAS;YAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,mEAAmE;IACnE,OAAO,YAAY,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACnD,CAAC;AAUD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAgB,EAChB,MAAuB,EACvB,WAAgC;IAEhC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC1B,wFAAwF;IACxF,kCAAkC;IAClC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,KAAK,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;IACvG,MAAM,OAAO,GAAG,CAAC,GAAuB,EAAU,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvH,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW;YAAE,SAAS;QAC1C,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,KAAK,UAAU;YAAE,SAAS;QAClE,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC;QAClC,+EAA+E;QAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAC1B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CACpF,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS,CAAC,8CAA8C;QACjF,MAAM,OAAO,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACzF,gFAAgF;QAChF,gFAAgF;QAChF,0CAA0C;QAC1C,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3F,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACjC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAChE,oFAAoF;QACpF,kFAAkF;QAClF,8BAA8B;QAC9B,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;YACpG,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS,CAAC,8CAA8C;YACjF,MAAM,OAAO,GAAqB;gBAChC;oBACE,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM;oBAChC,IAAI;oBACJ,WAAW,EAAE,CAAC;oBACd,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;iBAC3D;aACF,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;YACtE,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjC,IAAI,CAAC,CAAC,CAAC,KAAK;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IACnG,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAgCD,MAAM,UAAU,MAAM,CAAC,KAAkB;IACvC,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;AACtC,CAAC;AAED,4DAA4D;AAC5D,SAAS,WAAW,CAAC,QAAoB;IACvC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,QAAQ;QACtB,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,MAAM;YAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7F,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,yEAAyE;AACzE,SAAS,UAAU,CACjB,MAAc,EACd,OAA4B,EAC5B,MAA+B,EAC/B,WAAgC;IAEhC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAwB,CAAC;IAClD,OAAO,CAAC,EAAE,EAAE,UAAU,EAAE,EAAE;QACxB,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,UAAU,EAAE,CAAC;QAC3C,IAAI,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAa,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5I,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,oFAAoF;AACpF,SAAS,OAAO,CAAC,EAAa;IAC5B,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;IAClB,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,UAAU,CAAC;QAChB,KAAK,WAAW,CAAC;QACjB,KAAK,aAAa;YAChB,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxC,KAAK,aAAa;YAChB,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1E,KAAK,MAAM;YACT,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AACD,0EAA0E;AAC1E,SAAS,WAAW,CAAC,EAAa;IAChC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC;AACxC,CAAC;AAED,6EAA6E;AAC7E,MAAM,aAAa,GAAG,IAAI,GAAG,CAAS,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;AAWhF;;iEAEiE;AACjE,SAAS,WAAW,CAAC,SAAsB,EAAE,GAA6B;IACxE,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,SAAiB,EAAW,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;IAClH,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,CAAS,EAAW,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/G,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC;AAC/E,CAAC;AAED,gEAAgE;AAChE,SAAS,YAAY,CAAC,EAAa,EAAE,QAAgB,EAAE,KAA2B;IAChF,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAC;IAC5B,OAAO,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAa,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;AAC1F,CAAC;AAGD;;uFAEuF;AACvF,SAAS,UAAU,CAAC,IAAyB,EAAE,KAA0B;IACvE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QAChC,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,SAAS;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,IAAyB,EAAU,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAExH;;sFAEsF;AACtF,SAAS,QAAQ,CAAC,GAAgB,EAAE,QAAsC,EAAE,GAA6B;IACvG,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,KAAK,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;IACzH,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,EAAE,IAAI,WAAW;QAAE,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE;YAAE,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxG,OAAO,CAAC,GAAG,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,qBAAqB,CAC5B,GAAgB,EAChB,QAAsC,EACtC,GAA6B,EAC7B,mBAAyC,EACzC,WAAgC;IAEhC,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAE,CAAC,CAAC,CAAC;IAC7F,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,KAAK,MAAM,EAAE,IAAI,OAAO;QAAE,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IAC5E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;AAC/H,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,sBAAsB,CAC7B,GAAgB,EAChB,QAAsC,EACtC,GAA6B,EAC7B,mBAAyC,EACzC,WAAgC,EAChC,IAAqB,EACrB,UAAuB;IAEvB,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAE,CAAC,CAAC,CAAC;IAC7F,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC1C,oFAAoF;IACpF,mFAAmF;IACnF,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC1C,yFAAyF;IACzF,wFAAwF;IACxF,wFAAwF;IACxF,oFAAoF;IACpF,sFAAsF;IACtF,2EAA2E;IAC3E,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;IAC3G,CAAC;IACD,oEAAoE;IACpE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI;QAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3E,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,UAAU;QAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACpD,sFAAsF;IACtF,MAAM,eAAe,GAAG,IAAI,GAAG,CAAiB,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IACtF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,CAAC;AACpI,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAkB;IAC/C,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAClC,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAkB,KAAK,CAAC,mBAAmB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAEhG,4EAA4E;IAC5E,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACtF,MAAM,SAAS,GAAG,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1G,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAExG,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAC;IACpD,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;IAE/D,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAErC,mFAAmF;IACnF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAChD,KAAK,MAAM,CAAC,IAAI,EAAE;YAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,IAAI,GAAG,EAAkB,CAAC;IACnE,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAEhE,kFAAkF;IAClF,qFAAqF;IACrF,qFAAqF;IACrF,+BAA+B;IAC/B,MAAM,SAAS,GAAe,EAAE,CAAC;IACjC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IACjD,MAAM,aAAa,GAAmB,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IACjD,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IACjD,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAC;QACrC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;QAC5D,MAAM,EAAE,GAAe,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAmB,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;QAChG,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7D,KAAK,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,KAAK;YAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;QAChG,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACtB,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5B,CAAC;IACD,mFAAmF;IACnF,qFAAqF;IACrF,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,CAAC,MAAM;YAAE,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,+EAA+E;IAC/E,KAAK,MAAM,CAAC,IAAI,GAAG;QACjB,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,KAAK,UAAU;YACxE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;IAE9C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,qBAAqB,CACnE,GAAG,EACH,QAAQ,EACR,GAAG,EACH,mBAAmB,EACnB,KAAK,CAAC,WAAW,IAAI,IAAI,GAAG,EAAkB,CAC/C,CAAC;IAEF,MAAM,MAAM,GAAoB,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACrK,MAAM,KAAK,GAAqB,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;IACrI,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;AACpE,CAAC;AAED;;;uDAGuD;AACvD,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,YAAY,MAAc;QACxB,KAAK,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED,SAAS,aAAa,CAAC,CAAgC,EAAE,CAAgC;IACvF,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACtC,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACtC,IAAI,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IACjD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,CAAkC,EAAE,CAAkC;IAC3F,MAAM,EAAE,GAAG,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IAC1B,MAAM,EAAE,GAAG,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACnD,KAAK,MAAM,CAAC,IAAI,IAAI;QAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IAC9E,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAoB,EAAE,IAAiB;IACvE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;IACxB,sEAAsE;IACtE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAAE,MAAM,IAAI,mBAAmB,CAAC,6BAA6B,CAAC,CAAC;IACrI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC;QAAE,MAAM,IAAI,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;IACvG,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,MAAiB,CAAC,KAAK,YAAY,CAAC,IAAI,CAAC,MAAiB,CAAC,EAAE,CAAC;QACjH,MAAM,IAAI,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAkB,IAAI,CAAC,mBAAmB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/F,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACrF,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzG,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAEvG,2EAA2E;IAC3E,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;IAC3D,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG;QAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC;YAAE,MAAM,IAAI,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;IAClH,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;IAClE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS;QAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC;YAAE,MAAM,IAAI,mBAAmB,CAAC,wBAAwB,CAAC,CAAC;IAC9H,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;IAChE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ;QAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC;YAAE,MAAM,IAAI,mBAAmB,CAAC,yBAAyB,CAAC,CAAC;IAE7H,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAC;IACpD,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;IAE/D,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,GAAG,EAAkB,CAAC;IAClE,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7D,yEAAyE;IACzE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAChD,KAAK,MAAM,CAAC,IAAI,EAAE;YAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,uBAAuB;IACvB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;IACrE,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,GAAG,EAAkB,CAAC;IAC9D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEhF,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,aAAa,GAAG,CAAC,GAAW,EAAQ,EAAE;QAC1C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,EAAE,CAAC,MAAM;YAAE,KAAK,MAAM,CAAC,IAAI,EAAE;gBAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;YAC3C,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IAC9B,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;IAC3G,KAAK,MAAM,GAAG,IAAI,UAAU;QAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU;IAC5D,yFAAyF;IACzF,uFAAuF;IACvF,uFAAuF;IACvF,0FAA0F;IAC1F,IAAI,UAAU,CAAC,IAAI;QACjB,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;YACpB,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC;YACnC,IAAI,CAAC,CAAC;gBAAE,SAAS;YACjB,KAAK,MAAM,CAAC,IAAI,UAAU;gBACxB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBAAC,aAAa,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC;oBAAC,MAAM;gBAAC,CAAC;QAC5D,CAAC;IACH,KAAK,MAAM,CAAC,IAAI,SAAS;QACvB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC;YAAE,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC;gBAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAgB;IAClI,KAAK,MAAM,CAAC,IAAI,QAAQ;QACtB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC;YAAE,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,MAAM;gBAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,eAAe;IACtG,qEAAqE;IACrE,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,MAAM,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;YAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QAC7C,IAAI,WAAW,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;YAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QACtE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;QACzD,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QACvE,IAAI,aAAa,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,2EAA2E;IAC3E,MAAM,SAAS,GAAe,EAAE,CAAC;IACjC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IACjD,MAAM,aAAa,GAAmB,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IACjD,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IACjD,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAC;QACrC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;QAC5D,IAAI,GAAmB,CAAC;QACxB,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,EAAE,GAAe,EAAE,CAAC;YAC1B,MAAM,EAAE,GAAmB,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;YACrG,GAAG,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;YAClD,UAAU,EAAE,CAAC;QACf,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,CAAC,qDAAqD;YAClF,MAAM,EAAE,CAAC;QACX,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrB,KAAK,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK;YAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;QACpG,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;QACjC,aAAa,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,CAAC,MAAM;YAAE,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,GAAG;QACjB,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,KAAK,UAAU;YACxE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;IAE9C,qFAAqF;IACrF,uFAAuF;IACvF,oFAAoF;IACpF,MAAM,YAAY,GAAG,CAAC,GAAW,EAAW,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,CAAC;IAC3F,MAAM,aAAa,GAAG,CAAC,GAAW,EAAW,EAAE;QAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxC,OAAO,CAAC,KAAK,SAAS,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC;IACF,MAAM,gBAAgB,GAAG,CAAC,GAAW,EAAW,EAAE;QAChD,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QACrB,KAAK,MAAM,CAAC,IAAI,UAAU;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC,CAAC,uCAAuC;QAC9F,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAAC,CAAC,GAAa,CAAC;QAC5B,oFAAoF;QACpF,mFAAmF;QACnF,mFAAmF;QACnF,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,aAAa,CAAC,GAAG,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC;YAAE,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC;gBAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACrH,oFAAoF;QACpF,oFAAoF;QACpF,qFAAqF;QACrF,sFAAsF;QACtF,oFAAoF;QACpF,qFAAqF;QACrF,uFAAuF;QACvF,qFAAqF;QACrF,uFAAuF;QACvF,qDAAqD;aAChD,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC;YAAE,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC;gBAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,sBAAsB,CACpE,GAAG,EACH,QAAQ,EACR,GAAG,EACH,mBAAmB,EACnB,IAAI,CAAC,WAAW,IAAI,IAAI,GAAG,EAAkB,EAC7C,IAAI,CAAC,MAAM,EACX,UAAU,CACX,CAAC;IAEF,MAAM,MAAM,GAAoB,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACrK,MAAM,KAAK,GAAqB,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;IACxI,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;AAC1E,CAAC;AASD,MAAM,YAAY,GAAG,CAAI,CAAiB,EAAc,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAClE,MAAM,YAAY,GAAG,CAAI,CAAa,EAAkB,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;AAEtE,MAAM,UAAU,iBAAiB,CAAC,IAAoB;IACpD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,OAAO;QACL,CAAC,EAAE,CAAC;QACJ,KAAK,EAAE;YACL,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC;YACxC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC;YACpD,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC;YAClD,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,WAAW,IAAI,IAAI,GAAG,EAAE,CAAC;YACvD,SAAS,EAAE,YAAY,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,GAAG,EAAE,CAAC;YACnD,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,mBAAmB,EAAE,GAAG,CAAC,mBAAmB,IAAI,IAAI;SACrD;QACD,MAAM,EAAE;YACN,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;YAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC;YAClC,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;SACvC;QACD,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QACvI,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,GAAY;IAC9C,MAAM,CAAC,GAAG,GAAiE,CAAC;IAC5E,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC;IACpB,0EAA0E;IAC1E,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAyB,CAAC;IAChE,MAAM,KAAK,GAAgB;QACzB,GAAG,EAAG,GAAG,CAAC,GAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;QACpC,SAAS,EAAG,GAAG,CAAC,SAAsB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAwB,CAAC;QACrF,QAAQ,EAAG,GAAG,CAAC,QAAqB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAwB,CAAC;QACnF,OAAO,EAAE,IAAI,GAAG,EAAE;QAClB,MAAM,EAAE,GAAG,CAAC,MAAgB;QAC5B,mBAAmB,EAAG,GAAG,CAAC,mBAAgD,IAAI,SAAS;QACvF,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,WAA8B,CAAC;QAC7D,SAAS,EAAE,YAAY,CAAC,GAAG,CAAC,SAA4B,CAAC;KAC1D,CAAC;IACF,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACnB,MAAM,MAAM,GAAoB;QAC9B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,IAAuB,CAAC;QAC7C,QAAQ,EAAE,CAAC,CAAC,QAAkB;QAC9B,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,QAAoC,CAAC;QAC9D,SAAS,EAAE,CAAC,CAAC,SAAuB;QACpC,aAAa,EAAE,CAAC,CAAC,aAA+B;QAChD,aAAa,EAAE,CAAC,CAAC,aAAiD;QAClE,OAAO,EAAE,CAAC,CAAC,OAAmB;QAC9B,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,UAA6B,CAAC;QACzD,cAAc,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,EAAE,CAAoB,CAAC;QACzE,iBAAiB,EAAG,CAAC,CAAC,iBAAwC,IAAI,CAAC;KACpE,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,GAAG,CACnB,CAAC,CAAC,MAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAC7I,CAAC;IACF,MAAM,KAAK,GAAqB,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IAC3H,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAsB,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,YAAiC,CAAC,EAAE,KAAK,EAAE,CAAC;AACjJ,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAS,eAAe,CAAC,CAAY,EAAE,QAAqB,EAAE,GAA6B;IACzF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAClD,MAAM,GAAG,GAAG,CAAC,CAAC,GAAa,CAAC;IAC5B,MAAM,YAAY,GAAG,CAAC,CAAY,EAAE,EAAU,EAAW,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC;IACvG,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC;YAAE,SAAS;QACvD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS;QAClD,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,GAAa,CAAC,CACrG,CAAC;QACF,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC;IAC9B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,kBAAkB,CAAC,GAAW,EAAE,MAAmB;IAC1D,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;IACpE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACzF,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACtE,OAAO,MAAM,CAAC,KAAK,CACjB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,CACrH,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAClB,GAAW,EACX,QAAqB,EACrB,GAA6B,EAC7B,QAA0C,EAC1C,MAA4D,EAC5D,MAAc,EACd,SAAqB,EACrB,aAA6B,EAC7B,cAAmC;IAEnC,MAAM,GAAG,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC/C,yFAAyF;IACzF,sFAAsF;IACtF,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAClC,KAAK,MAAM,KAAK,IAAI,QAAQ;YAAE,IAAI,KAAK,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAa,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC;gBAAE,OAAO,KAAK,CAAC;QAClH,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,qFAAqF;IACrF,wFAAwF;IACxF,sFAAsF;IACtF,KAAK,MAAM,CAAC,IAAI,QAAQ;QACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAElH,mFAAmF;IACnF,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,KAAK,QAAQ,CAAC,CAAC;IACrF,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,KAAK,QAAQ,CAAC,CAAC;IACrF,KAAK,MAAM,CAAC,IAAI,YAAY;QAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;IACnE,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,IAAI,YAAY;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;QACnE,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;QAC3F,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IAEvC,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAExC,8BAA8B;IAC9B,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC;QACzB,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7B,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACf,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;YACtC,IAAI,EAAE,CAAC,aAAa;gBAAE,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,GAAa,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;QAC/E,CAAC;aACI,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;YAC1B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAa,EAAE,gBAAgB,CAAC,CAAC;YAC5C,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7G,CAAC;;YAAM,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;QAC7C,OAAO,GAAG,CAAC;IACb,CAAC;IAED,kCAAkC;IAClC,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC;IACvE,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,aAAa,CAAC;QAChD,IAAI,GAAG;YAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7D,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,aAAa,CAAC,CAAC;IAE3E,oFAAoF;IACpF,kFAAkF;IAClF,qFAAqF;IACrF,kFAAkF;IAClF,mFAAmF;IACnF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC;QACzF,KAAK,MAAM,CAAC,IAAI,MAAM;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC;IACb,CAAC;IAED,oFAAoF;IACpF,oFAAoF;IACpF,uFAAuF;IACvF,2DAA2D;IAC3D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;QACxE,KAAK,MAAM,CAAC,IAAI,MAAM;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC;QACpE,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACtB,OAAO,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,8BAA8B;IACnF,CAAC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACjE,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAEtF,IAAI,CAAC,GAAG,IAAI,UAAU,IAAI,GAAG,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,MAAM;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,gBAAgB,CAAC,CAAC;QACnE,SAAS,CAAC,IAAI,CACZ,YAAY,CACV,GAAG,EACH,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,kBAAkB,EAC/C,MAAM,EACN,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,EAC5B,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,EAC/B,UAAU,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,cAAc,CACvG,CACF,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IAED,kEAAkE;IAClE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAa,EAAE,UAAU,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC;IAC3E,KAAK,MAAM,EAAE,IAAI,MAAM;QAAE,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IACjD,aAAa,CAAC,IAAI,CAAC;QACjB,GAAG;QACH,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC;QAC9B,QAAQ,EAAE,GAAG,CAAC,GAAa;QAC3B,WAAW,EAAE,MAAM;QACnB,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,sBAAsB;QAC1E,aAAa,EAAE,MAAM,CAAC,OAAO;KAC9B,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,YAAY,CACnB,GAAW,EACX,IAAsB,EACtB,GAAgB,EAChB,MAAuC,EACvC,WAA6B,EAC7B,MAAc;IAEd,OAAO;QACL,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC;QACtB,GAAG;QACH,IAAI;QACJ,MAAM;QACN,aAAa,EAAE,WAAW,CAAC,CAAC,CAAE,WAAW,CAAC,GAAc,CAAC,CAAC,CAAC,IAAI;QAC/D,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACrB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACrB,OAAO;gBACL,KAAK,EAAE,CAAC,CAAC,GAAa;gBACtB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE;gBACjB,OAAO,EAAE,CAAC,CAAC,eAAe;gBAC1B,QAAQ,EAAE,EAAE,CAAC,KAAK;gBAClB,KAAK,EAAE,EAAE,CAAC,KAAK;gBACf,OAAO,EAAE,EAAE,CAAC,OAAO;gBACnB,aAAa,EAAE,EAAE,CAAC,aAAa;aAChC,CAAC;QACJ,CAAC,CAAC;KACH,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,SAAS,SAAS,CAAC,GAAgB,EAAE,GAA6B;IAChE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAC,CAAC,mBAAmB;IAC9D,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,KAAK,MAAM,CAAC,IAAI,IAAI;YAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,KAAK,GAAG,GAAG;SACd,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAa,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;SACtD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YACpD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACpC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACZ,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;gBACzB,sCAAsC;gBACtC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAC;gBACvI,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IACD,sEAAsE;IACtE,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;YACjF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,OAAO,CACd,IAAyB,EACzB,EAAa,EACb,WAAgC,EAChC,UAA+B,EAC/B,KAAgB;IAEhB,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;IAClB,MAAM,OAAO,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxG,MAAM,EAAE,GAAG,CAAC,QAAgB,EAAU,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC3E,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,UAAU;YACb,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO;gBAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACzD,MAAM;QACR,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO;gBAAE,MAAM;YACjC,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACxE,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACxE,mFAAmF;YACnF,oFAAoF;YACpF,kFAAkF;YAClF,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7D,IAAI,UAAU,KAAK,SAAS;oBAAE,MAAM,CAAC,kCAAkC;gBACvE,MAAM,QAAQ,GAAG,QAAQ,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;gBACzD,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBAChC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACzB,MAAM;YACR,CAAC;YACD,8EAA8E;YAC9E,kFAAkF;YAClF,iFAAiF;YACjF,4EAA4E;YAC5E,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;YACvH,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,QAAQ,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YAC7D,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACzB,MAAM;QACR,CAAC;QACD,KAAK,aAAa;YAChB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC9C,MAAM;QACR,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,IAAI;gBAAE,MAAM;YAClC,kFAAkF;YAClF,kFAAkF;YAClF,oFAAoF;YACpF,oFAAoF;YACpF,mFAAmF;YACnF,EAAE;YACF,8EAA8E;YAC9E,iFAAiF;YACjF,iEAAiE;YACjE,IAAI,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAAE,MAAM;YAChD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACxB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzB,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,MAAM;YACT,MAAM;IACV,CAAC;AACH,CAAC;AAED,SAAS,GAAG,CAAC,CAAqB,EAAE,CAAqB;IACvD,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAClB,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAClB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC"}
|
|
1
|
+
{"version":3,"file":"reducer.js","sourceRoot":"","sources":["../../src/reducer/reducer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@izagood/avcs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.33.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Agentic Version Control System — an AI-native VCS where intent, session, operation, evidence and decision are first-class objects and code is a materialized projection of an operation graph.",
|
|
6
6
|
"license": "Apache-2.0",
|