@cleocode/core 2026.8.7 → 2026.8.9
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/dist/docs/export-document.js +1 -1
- package/dist/docs/export-document.js.map +1 -1
- package/dist/internal.d.ts +1 -1
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js.map +1 -1
- package/dist/llm/plugin-facade.js +1 -1
- package/dist/llm/plugin-facade.js.map +1 -1
- package/dist/memory/brain-search.d.ts +5 -2
- package/dist/memory/brain-search.d.ts.map +1 -1
- package/dist/memory/brain-search.js +42 -10
- package/dist/memory/brain-search.js.map +1 -1
- package/dist/release/pr-evidence.d.ts +152 -5
- package/dist/release/pr-evidence.d.ts.map +1 -1
- package/dist/release/pr-evidence.js +271 -19
- package/dist/release/pr-evidence.js.map +1 -1
- package/dist/selfimprove/fix-gen.js +1 -1
- package/dist/selfimprove/fix-gen.js.map +1 -1
- package/dist/sessions/session-enforcement.d.ts +34 -1
- package/dist/sessions/session-enforcement.d.ts.map +1 -1
- package/dist/sessions/session-enforcement.js +51 -2
- package/dist/sessions/session-enforcement.js.map +1 -1
- package/dist/tasks/complete.d.ts +24 -0
- package/dist/tasks/complete.d.ts.map +1 -1
- package/dist/tasks/complete.js +46 -8
- package/dist/tasks/complete.js.map +1 -1
- package/dist/tasks/evidence.d.ts +30 -2
- package/dist/tasks/evidence.d.ts.map +1 -1
- package/dist/tasks/evidence.js +167 -30
- package/dist/tasks/evidence.js.map +1 -1
- package/dist/tasks/revalidation-cache.d.ts +99 -0
- package/dist/tasks/revalidation-cache.d.ts.map +1 -0
- package/dist/tasks/revalidation-cache.js +115 -0
- package/dist/tasks/revalidation-cache.js.map +1 -0
- package/dist/tasks/tool-cache.d.ts +39 -2
- package/dist/tasks/tool-cache.d.ts.map +1 -1
- package/dist/tasks/tool-cache.js +58 -1
- package/dist/tasks/tool-cache.js.map +1 -1
- package/dist/validation/engine-ops.d.ts +1 -0
- package/dist/validation/engine-ops.d.ts.map +1 -1
- package/dist/validation/engine-ops.js +20 -2
- package/dist/validation/engine-ops.js.map +1 -1
- package/package.json +13 -13
- package/templates/CLEO-INJECTION.md +1 -1
package/dist/tasks/evidence.js
CHANGED
|
@@ -27,6 +27,7 @@ import { dirname, isAbsolute, join, resolve as resolvePath } from 'node:path';
|
|
|
27
27
|
import { EvidenceParseError, ExitCode, GATE_EVIDENCE_REQUIREMENTS, parseEvidenceString, validateEvidenceForGate, } from '@cleocode/contracts';
|
|
28
28
|
import { CleoError } from '../errors.js';
|
|
29
29
|
import { getEffectiveHead } from '../worktree/effective-head.js';
|
|
30
|
+
import { computeCommitRevalidationKey, readCommitRevalidationEntry, writeCommitRevalidationEntry, } from './revalidation-cache.js';
|
|
30
31
|
import { runToolCached } from './tool-cache.js';
|
|
31
32
|
import { CANONICAL_TOOLS, listValidToolNames, resolveToolCommand, } from './tool-resolver.js';
|
|
32
33
|
/**
|
|
@@ -138,20 +139,28 @@ export function parseEvidence(raw) {
|
|
|
138
139
|
* check (T9178), content-intersect check (T9245), worktree-aware HEAD
|
|
139
140
|
* resolution (T-WT-3), and git-show file fallback for branch-only files
|
|
140
141
|
* (T11959).
|
|
142
|
+
* @param siblingCommitSha - Optional sha of a sibling `commit:` atom from the
|
|
143
|
+
* same evidence string. When provided, `files:` paths are resolved against
|
|
144
|
+
* that commit's tree FIRST (T12107 / gh#1195) before falling back to the
|
|
145
|
+
* worktree and git refs — covers a merged commit whose files are not yet
|
|
146
|
+
* present in the local checkout.
|
|
141
147
|
* @returns Validation outcome with canonicalised form on success
|
|
142
148
|
*
|
|
143
149
|
* @task T832
|
|
144
150
|
* @task T11959
|
|
151
|
+
* @task T12107
|
|
145
152
|
* @adr ADR-051 §3
|
|
146
153
|
*/
|
|
147
154
|
export async function validateAtom(parsed, projectRoot,
|
|
148
155
|
/** T9178: When provided, validates commit is on task/<taskId> branch. */
|
|
149
|
-
taskId
|
|
156
|
+
taskId,
|
|
157
|
+
/** T12107: sha of a sibling `commit:` atom in the same evidence string. */
|
|
158
|
+
siblingCommitSha) {
|
|
150
159
|
switch (parsed.kind) {
|
|
151
160
|
case 'commit':
|
|
152
161
|
return validateCommit(parsed.sha, projectRoot, taskId);
|
|
153
162
|
case 'files':
|
|
154
|
-
return validateFiles(parsed.paths, projectRoot, taskId);
|
|
163
|
+
return validateFiles(parsed.paths, projectRoot, taskId, siblingCommitSha);
|
|
155
164
|
case 'test-run':
|
|
156
165
|
return validateTestRun(parsed.path, projectRoot);
|
|
157
166
|
case 'tool':
|
|
@@ -825,32 +834,70 @@ async function gitShowFileContent(relPath, taskId, projectRoot) {
|
|
|
825
834
|
}
|
|
826
835
|
return null;
|
|
827
836
|
}
|
|
837
|
+
/**
|
|
838
|
+
* Read file content from a specific commit tree.
|
|
839
|
+
*
|
|
840
|
+
* Used as the FIRST resolution step for `files:` evidence when the same
|
|
841
|
+
* evidence string carries a `commit:` atom (T12107 / gh#1195): the evidence
|
|
842
|
+
* claims the file exists at that commit, so the commit tree is the anchor —
|
|
843
|
+
* the file may not exist in the local checkout at all (e.g. the commit was
|
|
844
|
+
* merged remotely and local main has not been fast-forwarded).
|
|
845
|
+
*
|
|
846
|
+
* Uses `git cat-file blob <sha>:<path>` (not `git show`) so a path that
|
|
847
|
+
* resolves to a TREE (directory) fails with a non-zero exit instead of
|
|
848
|
+
* pretty-printing a tree listing that would hash as fake file content.
|
|
849
|
+
*
|
|
850
|
+
* @param relPath - Repo-relative file path.
|
|
851
|
+
* @param sha - Commit sha (short or full) whose tree is inspected.
|
|
852
|
+
* @param projectRoot - Working directory for git operations.
|
|
853
|
+
* @returns Buffer of the file content, or `null` when the path is not a blob
|
|
854
|
+
* in that commit's tree (or git fails).
|
|
855
|
+
*
|
|
856
|
+
* @internal
|
|
857
|
+
* @task T12107
|
|
858
|
+
*/
|
|
859
|
+
async function gitShowFileContentAtCommit(relPath, sha, projectRoot) {
|
|
860
|
+
// Normalise the path: strip leading "./" so git pathspec works correctly.
|
|
861
|
+
const norm = relPath.replace(/^\.\//, '');
|
|
862
|
+
const r = await runCommand('git', ['cat-file', 'blob', `${sha}:${norm}`], projectRoot);
|
|
863
|
+
if (r.exitCode !== 0)
|
|
864
|
+
return null;
|
|
865
|
+
return Buffer.from(r.stdout, 'binary');
|
|
866
|
+
}
|
|
828
867
|
/**
|
|
829
868
|
* Validate a `files:` evidence atom.
|
|
830
869
|
*
|
|
831
870
|
* Resolution order for each path:
|
|
832
|
-
* 1.
|
|
833
|
-
*
|
|
871
|
+
* 1. Commit-tree check (T12107 / gh#1195) — when `commitSha` is provided
|
|
872
|
+
* (a sibling `commit:` atom in the same evidence string), read the file
|
|
873
|
+
* from that commit's tree via `git cat-file blob <sha>:<path>`. The
|
|
874
|
+
* commit is the evidence anchor; the file may be absent from the local
|
|
875
|
+
* checkout (merged remotely, local main not fast-forwarded).
|
|
876
|
+
* 2. Filesystem check — `existsSync(abs)` at `projectRoot`.
|
|
877
|
+
* 3. Git-show fallback (T11959) — when `taskId` is provided and the file is
|
|
834
878
|
* absent at `projectRoot`, try reading it from `task/<taskId>` (or main /
|
|
835
879
|
* HEAD) via `git show <ref>:<path>`. This allows worktree agents to record
|
|
836
880
|
* `files:` evidence for files that exist only on their branch and have not
|
|
837
881
|
* yet been merged to main, without triggering `E_WT_DB_ISOLATION_VIOLATION`.
|
|
838
882
|
*
|
|
839
|
-
* When the file is read from git (fallback
|
|
840
|
-
* the git-object content rather than the on-disk content.
|
|
841
|
-
* `cleo complete` time uses the same
|
|
842
|
-
* consistent across verify → complete.
|
|
883
|
+
* When the file is read from git (commit tree or fallback refs) the sha256 is
|
|
884
|
+
* computed from the git-object content rather than the on-disk content. The
|
|
885
|
+
* re-validation at `cleo complete` time uses the same resolution order so the
|
|
886
|
+
* checksums remain consistent across verify → complete.
|
|
843
887
|
*
|
|
844
888
|
* @param paths - Repo-relative or absolute file paths.
|
|
845
889
|
* @param projectRoot - Absolute path to project root.
|
|
846
890
|
* @param taskId - Optional CLEO task ID; enables the git-show fallback (T11959).
|
|
891
|
+
* @param commitSha - Optional sibling `commit:` atom sha; enables the
|
|
892
|
+
* commit-tree-first check (T12107).
|
|
847
893
|
* @returns Validated atom on success, error on failure.
|
|
848
894
|
*
|
|
849
895
|
* @internal
|
|
850
896
|
* @task T832
|
|
851
897
|
* @task T11959
|
|
898
|
+
* @task T12107
|
|
852
899
|
*/
|
|
853
|
-
async function validateFiles(paths, projectRoot, taskId) {
|
|
900
|
+
async function validateFiles(paths, projectRoot, taskId, commitSha) {
|
|
854
901
|
if (paths.length === 0) {
|
|
855
902
|
return {
|
|
856
903
|
ok: false,
|
|
@@ -861,8 +908,14 @@ async function validateFiles(paths, projectRoot, taskId) {
|
|
|
861
908
|
const files = [];
|
|
862
909
|
for (const p of paths) {
|
|
863
910
|
const abs = isAbsolute(p) ? p : resolvePath(projectRoot, p);
|
|
864
|
-
let content;
|
|
865
|
-
|
|
911
|
+
let content = null;
|
|
912
|
+
// T12107 (gh#1195): the sibling commit is the evidence anchor — check its
|
|
913
|
+
// tree FIRST. A file merged remotely but not yet present locally validates
|
|
914
|
+
// here without waiting for a fast-forward.
|
|
915
|
+
if (commitSha) {
|
|
916
|
+
content = await gitShowFileContentAtCommit(p, commitSha, projectRoot);
|
|
917
|
+
}
|
|
918
|
+
if (content === null && existsSync(abs)) {
|
|
866
919
|
// Happy path — file exists on disk.
|
|
867
920
|
const st = await stat(abs);
|
|
868
921
|
if (!st.isFile()) {
|
|
@@ -874,24 +927,23 @@ async function validateFiles(paths, projectRoot, taskId) {
|
|
|
874
927
|
}
|
|
875
928
|
content = await readFile(abs);
|
|
876
929
|
}
|
|
877
|
-
|
|
930
|
+
if (content === null && taskId) {
|
|
878
931
|
// T11959: Git-show fallback for branch-only files (worktree context).
|
|
879
932
|
// The file exists on the task branch but not yet at the canonical root.
|
|
880
|
-
|
|
881
|
-
if (!fromGit) {
|
|
882
|
-
return {
|
|
883
|
-
ok: false,
|
|
884
|
-
reason: `File does not exist: ${p}` +
|
|
885
|
-
` (checked filesystem at ${projectRoot} and git refs task/${taskId}, main, HEAD)`,
|
|
886
|
-
codeName: 'E_EVIDENCE_INVALID',
|
|
887
|
-
};
|
|
888
|
-
}
|
|
889
|
-
content = fromGit;
|
|
933
|
+
content = await gitShowFileContent(p, taskId, projectRoot);
|
|
890
934
|
}
|
|
891
|
-
|
|
935
|
+
if (content === null) {
|
|
936
|
+
// Honest failure: enumerate every location that was checked so the
|
|
937
|
+
// caller can tell a worktree-miss from a commit-tree-miss.
|
|
938
|
+
const looked = [];
|
|
939
|
+
if (commitSha)
|
|
940
|
+
looked.push(`commit ${commitSha} tree`);
|
|
941
|
+
looked.push(`filesystem at ${projectRoot}`);
|
|
942
|
+
if (taskId)
|
|
943
|
+
looked.push(`git refs task/${taskId}, main, HEAD`);
|
|
892
944
|
return {
|
|
893
945
|
ok: false,
|
|
894
|
-
reason: `File does not exist: ${p}`,
|
|
946
|
+
reason: `File does not exist: ${p} (checked ${looked.join(', ')})`,
|
|
895
947
|
codeName: 'E_EVIDENCE_INVALID',
|
|
896
948
|
};
|
|
897
949
|
}
|
|
@@ -1558,14 +1610,17 @@ export function isHardAtom(atom) {
|
|
|
1558
1610
|
* that were on the task branch at verify time but are now on main after
|
|
1559
1611
|
* merge (T11959). When provided, sha256 comparison uses the same git-show
|
|
1560
1612
|
* resolution path as validate time so the checksums remain consistent.
|
|
1613
|
+
* @param options - Optional {@link RevalidateOptions} progress sink (T12102).
|
|
1561
1614
|
* @returns Revalidation outcome
|
|
1562
1615
|
*
|
|
1563
1616
|
* @task T832
|
|
1564
1617
|
* @task T9245
|
|
1565
1618
|
* @task T11959
|
|
1619
|
+
* @task T12102
|
|
1620
|
+
* @task T12107
|
|
1566
1621
|
* @adr ADR-051 §5 / §8 (Decision 8)
|
|
1567
1622
|
*/
|
|
1568
|
-
export async function revalidateEvidence(evidence, projectRoot, gate, taskId) {
|
|
1623
|
+
export async function revalidateEvidence(evidence, projectRoot, gate, taskId, options) {
|
|
1569
1624
|
// T9245: critical-gate override rejection.
|
|
1570
1625
|
// When the gate is `implemented` or `testsPassed`, evidence that has no
|
|
1571
1626
|
// non-override hard atom is rejected outright. We define "override-only"
|
|
@@ -1600,19 +1655,38 @@ export async function revalidateEvidence(evidence, projectRoot, gate, taskId) {
|
|
|
1600
1655
|
case 'override':
|
|
1601
1656
|
break;
|
|
1602
1657
|
case 'commit': {
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1658
|
+
// T12102 (gh#1196): routed through the revalidation cache — keyed on
|
|
1659
|
+
// (commitSha, headSha), both immutable git facts, so a hit is exactly
|
|
1660
|
+
// as sound as re-running the git spawns. See revalidation-cache.ts.
|
|
1661
|
+
const startedAt = Date.now();
|
|
1662
|
+
const cached = await revalidateCommitAtom(atom.sha, projectRoot);
|
|
1663
|
+
if (!cached.check.ok)
|
|
1664
|
+
failed.push({ atom, reason: cached.check.reason });
|
|
1665
|
+
options?.onProgress?.(`commit:${atom.sha.slice(0, 7)} ${cached.check.ok ? 'ok' : 'FAILED'}` +
|
|
1666
|
+
`${cached.fromCache ? ' (cached)' : ''} ${Date.now() - startedAt}ms`);
|
|
1606
1667
|
break;
|
|
1607
1668
|
}
|
|
1608
1669
|
case 'files': {
|
|
1670
|
+
// Deliberately NOT cached (T12102): the read-and-compare-sha256 below
|
|
1671
|
+
// IS the staleness guarantee; a cheaper key would weaken it.
|
|
1672
|
+
const startedAt = Date.now();
|
|
1673
|
+
// T12107 (gh#1195): mirror validateFiles' resolution order so the
|
|
1674
|
+
// sha256 captured at verify time compares against the same bytes —
|
|
1675
|
+
// when a sibling `commit:` atom anchors the evidence, its tree is
|
|
1676
|
+
// checked FIRST (the file may still be absent from the local checkout
|
|
1677
|
+
// at complete time when local main was never fast-forwarded).
|
|
1678
|
+
const siblingCommit = evidence.atoms.find((a) => a.kind === 'commit');
|
|
1679
|
+
const siblingCommitSha = siblingCommit?.sha;
|
|
1609
1680
|
for (const f of atom.files) {
|
|
1610
1681
|
const abs = isAbsolute(f.path) ? f.path : resolvePath(projectRoot, f.path);
|
|
1611
1682
|
let content = null;
|
|
1612
|
-
if (
|
|
1683
|
+
if (siblingCommitSha) {
|
|
1684
|
+
content = await gitShowFileContentAtCommit(f.path, siblingCommitSha, projectRoot);
|
|
1685
|
+
}
|
|
1686
|
+
if (!content && existsSync(abs)) {
|
|
1613
1687
|
content = await readFile(abs);
|
|
1614
1688
|
}
|
|
1615
|
-
|
|
1689
|
+
if (!content && taskId) {
|
|
1616
1690
|
// T11959: git-show fallback — file may have been on task branch at
|
|
1617
1691
|
// verify time and is now on main after merge, or it may still only
|
|
1618
1692
|
// exist on the branch. Use the same resolution path as validateFiles.
|
|
@@ -1631,12 +1705,18 @@ export async function revalidateEvidence(evidence, projectRoot, gate, taskId) {
|
|
|
1631
1705
|
break;
|
|
1632
1706
|
}
|
|
1633
1707
|
}
|
|
1708
|
+
options?.onProgress?.(`files:${atom.files.length} path(s) ` +
|
|
1709
|
+
`${failed.some((x) => x.atom === atom) ? 'FAILED' : 'ok'} ${Date.now() - startedAt}ms`);
|
|
1634
1710
|
break;
|
|
1635
1711
|
}
|
|
1636
1712
|
case 'test-run': {
|
|
1713
|
+
// Deliberately NOT cached (T12102): same reasoning as files: — the
|
|
1714
|
+
// content hash comparison IS the staleness guarantee.
|
|
1715
|
+
const startedAt = Date.now();
|
|
1637
1716
|
const abs = isAbsolute(atom.path) ? atom.path : resolvePath(projectRoot, atom.path);
|
|
1638
1717
|
if (!existsSync(abs)) {
|
|
1639
1718
|
failed.push({ atom, reason: `test-run file removed since verify: ${atom.path}` });
|
|
1719
|
+
options?.onProgress?.(`test-run:${atom.path} FAILED ${Date.now() - startedAt}ms`);
|
|
1640
1720
|
break;
|
|
1641
1721
|
}
|
|
1642
1722
|
const content = await readFile(abs);
|
|
@@ -1644,6 +1724,7 @@ export async function revalidateEvidence(evidence, projectRoot, gate, taskId) {
|
|
|
1644
1724
|
if (sha256 !== atom.sha256) {
|
|
1645
1725
|
failed.push({ atom, reason: `test-run output modified since verify: ${atom.path}` });
|
|
1646
1726
|
}
|
|
1727
|
+
options?.onProgress?.(`test-run:${atom.path} ${sha256 === atom.sha256 ? 'ok' : 'FAILED'} ${Date.now() - startedAt}ms`);
|
|
1647
1728
|
break;
|
|
1648
1729
|
}
|
|
1649
1730
|
case 'tool': {
|
|
@@ -1687,6 +1768,62 @@ export async function revalidateEvidence(evidence, projectRoot, gate, taskId) {
|
|
|
1687
1768
|
}
|
|
1688
1769
|
return { stillValid: failed.length === 0, failedAtoms: failed };
|
|
1689
1770
|
}
|
|
1771
|
+
/**
|
|
1772
|
+
* Re-validate a `commit:` atom at complete time, consulting the T12102
|
|
1773
|
+
* revalidation cache first.
|
|
1774
|
+
*
|
|
1775
|
+
* The cache key is `(commitSha, headSha)` — every check
|
|
1776
|
+
* {@link validateCommit} performs on this path (no `taskId`, so
|
|
1777
|
+
* `getEffectiveHead` resolves to `HEAD`) is an immutable fact of the git
|
|
1778
|
+
* DAG once both SHAs are fixed, so a cache hit is exactly as sound as
|
|
1779
|
+
* re-running the git spawns. Only successful validations are cached: a
|
|
1780
|
+
* "commit not found" failure is NOT immutable (a later `git fetch` can
|
|
1781
|
+
* make the object appear), so failures always re-run.
|
|
1782
|
+
*
|
|
1783
|
+
* When `HEAD` cannot be resolved (not a git checkout, bare failure), the
|
|
1784
|
+
* cache is bypassed entirely and behaviour matches the pre-T12102 path.
|
|
1785
|
+
*
|
|
1786
|
+
* @param sha - Commit SHA recorded at verify time.
|
|
1787
|
+
* @param projectRoot - Absolute path used as cwd for git operations.
|
|
1788
|
+
* @returns The {@link AtomValidation} plus whether it came from cache.
|
|
1789
|
+
*
|
|
1790
|
+
* @internal
|
|
1791
|
+
* @task T12102 (gh#1196)
|
|
1792
|
+
*/
|
|
1793
|
+
async function revalidateCommitAtom(sha, projectRoot) {
|
|
1794
|
+
const headResult = await runCommand('git', ['rev-parse', 'HEAD'], projectRoot);
|
|
1795
|
+
const head = headResult.exitCode === 0 ? headResult.stdout.trim() : null;
|
|
1796
|
+
if (!head) {
|
|
1797
|
+
return { check: await validateCommit(sha, projectRoot), fromCache: false };
|
|
1798
|
+
}
|
|
1799
|
+
const key = computeCommitRevalidationKey(sha, head);
|
|
1800
|
+
const hit = readCommitRevalidationEntry(projectRoot, key);
|
|
1801
|
+
if (hit) {
|
|
1802
|
+
return {
|
|
1803
|
+
check: { ok: true, atom: { kind: 'commit', sha: hit.sha, shortSha: hit.shortSha } },
|
|
1804
|
+
fromCache: true,
|
|
1805
|
+
};
|
|
1806
|
+
}
|
|
1807
|
+
const check = await validateCommit(sha, projectRoot);
|
|
1808
|
+
if (check.ok && check.atom.kind === 'commit') {
|
|
1809
|
+
try {
|
|
1810
|
+
writeCommitRevalidationEntry(projectRoot, {
|
|
1811
|
+
schemaVersion: 1,
|
|
1812
|
+
kind: 'commit-revalidation',
|
|
1813
|
+
key,
|
|
1814
|
+
sha: check.atom.sha,
|
|
1815
|
+
shortSha: check.atom.shortSha,
|
|
1816
|
+
head,
|
|
1817
|
+
capturedAt: new Date().toISOString(),
|
|
1818
|
+
});
|
|
1819
|
+
}
|
|
1820
|
+
catch {
|
|
1821
|
+
// Cache writes are advisory — a read-only .cleo dir must not fail a
|
|
1822
|
+
// legitimate completion.
|
|
1823
|
+
}
|
|
1824
|
+
}
|
|
1825
|
+
return { check, fromCache: false };
|
|
1826
|
+
}
|
|
1690
1827
|
function runCommand(cmd, args, cwd) {
|
|
1691
1828
|
return new Promise((resolve) => {
|
|
1692
1829
|
let stdout = '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/tasks/evidence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AAQ9E,OAAO,EACL,kBAAkB,EAClB,QAAQ,EACR,0BAA0B,EAC1B,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EACL,eAAe,EAEf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,WAAW,GAAsB,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAclF;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,aAAa,GAAoD,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEhG;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,sBAAsB,GACjC,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,WAAW,CAEd,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAG1C,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAU,CAAC,CAC5E,CACoD,CAAC;AAE1D;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,CAAC;AAmFrD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACvC,OAAO,EAAE,KAAK,EAAE,KAAqB,EAAE,CAAC;IAC1C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,kBAAkB,EAAE,CAAC;YACtC,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAiBD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAkB,EAClB,WAAmB;AACnB,yEAAyE;AACzE,MAAe;IAEf,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QACzD,KAAK,OAAO;YACV,OAAO,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAC1D,KAAK,UAAU;YACb,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACnD,KAAK,MAAM;YACT,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAChD,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjC,KAAK,MAAM;YACT,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,KAAK,UAAU;YACb,OAAO,eAAe,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3D,KAAK,mBAAmB;YACtB,OAAO,wBAAwB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAC7F,KAAK,UAAU;YACb,OAAO,gBAAgB,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAC1D,KAAK,IAAI;YACP,OAAO,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,4DAA4D;YAC5D,mEAAmE;YACnE,gEAAgE;YAChE,+DAA+D;YAC/D,sBAAsB;YACtB,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAC5C,kDAAkD,CACnD,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,qBAAqB,CACxC;gBACE,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,UAAU,EAAE,MAAM,CAAC,UAAU;aAC9B,EACD,MAAM,EACN,WAAW,CACZ,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YACzE,CAAC;YACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QACzC,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,oEAAoE;YACpE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;QACtF,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAEH;;;;;GAKG;AACH,MAAM,oBAAoB,GAAsB,MAAM,CAAC,MAAM,CAAC;IAC5D,MAAM;IACN,QAAQ;IACR,SAAS;IACT,aAAa;CACd,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,4BAA4B,GAAG,2BAA2B,CAAC;AAEjE;;;;;;;;;;GAUG;AACH,SAAS,0BAA0B,CACjC,GAAsB,EACtB,cAA8C;IAE9C,MAAM,GAAG,GAAG,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC9C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrD,OAAO,GAAG;aACP,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAClE,MAAM,OAAO,GAAI,cAA0C,CAAC,OAAO,CAAC;QACpE,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACpD,MAAM,QAAQ,GAAI,OAAmC,CAAC,mBAAmB,CAAC;YAC1E,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,QAAQ;qBACtB,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;qBACjD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;qBACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC/B,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,QAAQ,CAAC;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,oBAAoB,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,8BAA8B,CAC3C,GAAW,EACX,QAA2B,EAC3B,WAAmB;IAEnB,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,CAAC,cAAc,MAAM,EAAE,EAAE,uBAAuB,MAAM,EAAE,CAAC,CAAC;QACvE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;YACpF,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC;gBAAE,SAAS;YACpC,MAAM,SAAS,GAAG,MAAM,UAAU,CAChC,KAAK,EACL,CAAC,YAAY,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,CAAC,EACzC,WAAW,CACZ,CAAC;YACF,IAAI,SAAS,CAAC,QAAQ,KAAK,CAAC;gBAAE,OAAO,MAAM,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,GAAW,EACX,WAAmB,EACnB,MAAe;IAEf,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,wBAAwB,GAAG,6BAA6B;YAChE,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,GAAG,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;IAC3F,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,mCAAmC,GAAG,EAAE;YAChD,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,6EAA6E;IAC7E,+EAA+E;IAC/E,6EAA6E;IAC7E,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAElE,6EAA6E;IAC7E,qEAAqE;IACrE,6EAA6E;IAC7E,gEAAgE;IAChE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC;IAClF,MAAM,UAAU,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACnD,MAAM,mBAAmB,GAAG,0BAA0B,CACpD,OAAO,CAAC,GAAG,EACX,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAC9C,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,UAAU,CAChC,KAAK,EACL,CAAC,YAAY,EAAE,eAAe,EAAE,GAAG,EAAE,aAAa,CAAC,EACnD,WAAW,CACZ,CAAC;IACF,IAAI,SAAS,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC7B,wEAAwE;QACxE,iEAAiE;QACjE,qCAAqC;QACrC,mEAAmE;QACnE,0EAA0E;QAC1E,mCAAmC;QACnC,yEAAyE;QACzE,iFAAiF;QACjF,8DAA8D;QAC9D,wEAAwE;QACxE,sEAAsE;QACtE,yDAAyD;QACzD,MAAM,0BAA0B,GAAG,MAAM;YACvC,CAAC,CAAC,MAAM,8BAA8B,CAAC,GAAG,EAAE,mBAAmB,EAAE,WAAW,CAAC;YAC7E,CAAC,CAAC,IAAI,CAAC;QACT,IAAI,0BAA0B,KAAK,IAAI,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,MAAM;oBACZ,CAAC,CAAC,UAAU,GAAG,qCAAqC,aAAa,+BAA+B,UAAU,GAAG;oBAC7G,CAAC,CAAC,UAAU,GAAG,qCAAqC,aAAa,EAAE;gBACrE,QAAQ,EAAE,oBAAoB;aAC/B,CAAC;QACJ,CAAC;IACH,CAAC;IACD,mEAAmE;IACnE,2EAA2E;IAC3E,+EAA+E;IAC/E,EAAE;IACF,8EAA8E;IAC9E,2EAA2E;IAC3E,8EAA8E;IAC9E,2EAA2E;IAC3E,wEAAwE;IACxE,8EAA8E;IAC9E,6EAA6E;IAC7E,EAAE;IACF,yEAAyE;IACzE,0EAA0E;IAC1E,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,SAAS,GAAG,QAAQ,MAAM,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;QAChG,IAAI,YAAY,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAC/B,KAAK,EACL,CAAC,YAAY,EAAE,eAAe,EAAE,GAAG,EAAE,SAAS,CAAC,EAC/C,WAAW,CACZ,CAAC;YACF,IAAI,QAAQ,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC5B,qEAAqE;gBACrE,oDAAoD;gBACpD,oEAAoE;gBACpE,yEAAyE;gBACzE,6EAA6E;gBAC7E,mEAAmE;gBACnE,MAAM,0BAA0B,GAAG,MAAM,8BAA8B,CACrE,GAAG,EACH,mBAAmB,EACnB,WAAW,CACZ,CAAC;gBACF,IAAI,0BAA0B,KAAK,IAAI,EAAE,CAAC;oBACxC,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClD,OAAO;wBACL,EAAE,EAAE,KAAK;wBACT,MAAM,EAAE,UAAU,GAAG,uBAAuB,SAAS,+BAA+B,UAAU,+BAA+B;wBAC7H,QAAQ,EAAE,oBAAoB;qBAC/B,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,yEAAyE;QACzE,MAAM,eAAe,GAAG,MAAM,2BAA2B,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QACpF,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YACxB,OAAO,eAAe,CAAC;QACzB,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;IAClF,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC;IAC1C,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC;AACxE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,aAAa,GACjB,8FAA8F,CAAC;AAEjG;;;;;;;;;;GAUG;AACH,MAAM,iBAAiB,GAA0B,MAAM,CAAC,MAAM,CAAC;IAC7D,WAAW;IACX,MAAM;IACN,UAAU;IACV,OAAO;IACP,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,OAAO;IACP,MAAM;IACN,MAAM;CACP,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC;IACxD,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;CACN,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE,CAAC;QACvC,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;IAC5C,CAAC;IACD,uEAAuE;IACvE,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;QACjB,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;IACjD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAGlC;IACC,gCAAgC;IAChC,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IACD,yEAAyE;IACzE,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,SAAS;QACvC,iDAAiD;QACjD,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,GAA2B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;YAClB,yEAAyE;YACzE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,WAAmB;IAC1D,0EAA0E;IAC1E,4EAA4E;IAC5E,iDAAiD;IACjD,EAAE;IACF,wEAAwE;IACxE,wEAAwE;IACxE,wEAAwE;IACxE,qEAAqE;IACrE,0EAA0E;IAC1E,4EAA4E;IAC5E,MAAM,CAAC,GAAG,MAAM,UAAU,CACxB,KAAK,EACL,CAAC,WAAW,EAAE,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,CAAC,EAC3F,WAAW,CACZ,CAAC;IACF,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAChC,OAAO,CAAC,CAAC,MAAM;SACZ,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAmB,EAAE,OAAiB;IACrE,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7F,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACxF,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/B,qEAAqE;QACrE,sDAAsD;QACtD,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;YAChC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;QAC/C,CAAC;QACD,4DAA4D;QAC5D,uEAAuE;QACvE,oEAAoE;QACpE,kEAAkE;QAClE,EAAE;QACF,qEAAqE;QACrE,sEAAsE;QACtE,oEAAoE;QACpE,sEAAsE;QACtE,sCAAsC;QACtC,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,EAAE,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;gBAAE,OAAO,IAAI,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,2BAA2B,CAAC,WAAmB;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7B,IAAI,EAAE,CAAC,WAAW,EAAE;YAAE,OAAO,WAAW,CAAC,CAAC,kCAAkC;QAC5E,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YACrD,oEAAoE;YACpE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAChD,IAAI,CAAC,KAAK;gBAAE,OAAO,WAAW,CAAC;YAC/B,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7D,wEAAwE;YACxE,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,qBAAqB;YAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW;YACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB;YACnD,uEAAuE;YACvE,yEAAyE;YACzE,oEAAoE;YACpE,IAAI,CAAC;gBACH,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wDAAwD;IAC1D,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,KAAK,UAAU,2BAA2B,CACxC,GAAW,EACX,MAAc,EACd,WAAmB;IAEnB,2EAA2E;IAC3E,0EAA0E;IAC1E,yEAAyE;IACzE,0EAA0E;IAC1E,2EAA2E;IAC3E,sEAAsE;IACtE,MAAM,aAAa,GAAG,2BAA2B,CAAC,WAAW,CAAC,CAAC;IAE/D,8DAA8D;IAC9D,IAAI,IAAI,GAIG,IAAI,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,aAAa,CAAC,CAAC;QACtD,IAAI,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,uDAAuD;QACvD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IAChF,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IAChF,CAAC;IACD,8DAA8D;IAC9D,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACtD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IAChF,CAAC;IACD,MAAM,OAAO,GAAG,kBAAkB,CAAC;QACjC,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,UAAU,EAAE,IAAI,CAAC,UAAuD;KACzE,CAAC,CAAC;IACH,qEAAqE;IACrE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IAChF,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACvD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,sDAAsD;gBAC/E,YAAY,MAAM,+CAA+C,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACjG,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;YACrC,QAAQ,EAAE,6BAA6B;SACxC,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;QAC1C,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,iCAAiC,MAAM,aAAa;gBAC7E,kBAAkB,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK;gBACzF,iBAAiB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK;gBACpF,8DAA8D;YAChE,QAAQ,EAAE,6BAA6B;SACxC,CAAC;IACJ,CAAC;IACD,oEAAoE;IACpE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;AAChF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,kBAAkB,CAC/B,OAAe,EACf,MAAc,EACd,WAAmB;IAEnB,sEAAsE;IACtE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAE1C,8DAA8D;IAC9D,MAAM,IAAI,GAAG,CAAC,QAAQ,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;QAC3E,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,KAAK,UAAU,aAAa,CAC1B,KAAe,EACf,WAAmB,EACnB,MAAe;IAEf,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,wCAAwC;YAChD,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAA4C,EAAE,CAAC;IAC1D,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC5D,IAAI,OAAe,CAAC;QAEpB,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACpB,oCAAoC;YACpC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC;gBACjB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,+BAA+B,CAAC,EAAE;oBAC1C,QAAQ,EAAE,oBAAoB;iBAC/B,CAAC;YACJ,CAAC;YACD,OAAO,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;aAAM,IAAI,MAAM,EAAE,CAAC;YAClB,sEAAsE;YACtE,wEAAwE;YACxE,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YACjE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EACJ,wBAAwB,CAAC,EAAE;wBAC3B,2BAA2B,WAAW,sBAAsB,MAAM,eAAe;oBACnF,QAAQ,EAAE,oBAAoB;iBAC/B,CAAC;YACJ,CAAC;YACD,OAAO,GAAG,OAAO,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,wBAAwB,CAAC,EAAE;gBACnC,QAAQ,EAAE,oBAAoB;aAC/B,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC;AACtD,CAAC;AAWD,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,WAAmB;IAC9D,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACrE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,iCAAiC,IAAI,EAAE;YAC/C,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,8BAA8B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;YACxF,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAElE,IAAI,MAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,oCAAoC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;YAC9F,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,IAAI,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,eAAe,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC;IAE3E,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,4DAA4D;YACpE,QAAQ,EAAE,yBAAyB;SACpC,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,oBAAoB,MAAM,eAAe;YACjD,QAAQ,EAAE,yBAAyB;SACpC,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAC1C,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS,CACvE,CAAC;QACF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,qBAAqB,UAAU,CAAC,MAAM,qBAAqB;gBACnE,QAAQ,EAAE,yBAAyB;aACpC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE;YACJ,IAAI,EAAE,UAAU;YAChB,IAAI;YACJ,MAAM;YACN,SAAS,EAAE,MAAM;YACjB,SAAS,EAAE,MAAM;YACjB,SAAS,EAAE,OAAO;SACnB;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,WAAmB;IAC3D,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAEzD,sEAAsE;IACtE,yEAAyE;IACzE,wEAAwE;IACxE,yCAAyC;IACzC,EAAE;IACF,uEAAuE;IACvE,2EAA2E;IAC3E,yEAAyE;IACzE,2EAA2E;IAC3E,6EAA6E;IAC7E,iCAAiC;IACjC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,QAAQ,KAAK,uBAAuB,EAAE,CAAC;QACtE,OAAO;YACL,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE;SAC1F,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACnB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,QAAQ,EACN,UAAU,CAAC,QAAQ,KAAK,gBAAgB;gBACtC,CAAC,CAAC,oBAAoB;gBACtB,CAAC,CAAC,6BAA6B;SACpC,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAEpE,oEAAoE;IACpE,4EAA4E;IAC5E,iBAAiB;IACjB,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,SAAS,IAAI,OAAO,UAAU,CAAC,OAAO,CAAC,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;gBAClF,8EAA8E;gBAC9E,oEAAoE;YACtE,QAAQ,EAAE,yBAAyB;SACpC,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,uEAAuE;IACvE,yEAAyE;IACzE,oCAAoC;IACpC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,SAAS,IAAI,OAAO,UAAU,CAAC,OAAO,CAAC,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;gBAClF,2EAA2E;gBAC3E,+EAA+E;YACjF,QAAQ,EAAE,sBAAsB;SACjC,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,SAAS,IAAI,OAAO,UAAU,CAAC,OAAO,CAAC,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;gBAClF,uDAAuD;YACzD,QAAQ,EAAE,6BAA6B;SACxC,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC;QAC3E,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,SAAS,IAAI,sBAAsB,MAAM,CAAC,QAAQ,EAAE;gBACpD,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,IAAI,EAAE;YACxD,QAAQ,EAAE,wBAAwB;SACnC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE;KACzE,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,kEAAkE;AAClE,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,8CAA8C;YACtD,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,oBAAoB;YAC5B,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACtB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,qBAAqB,IAAI,CAAC,MAAM,eAAe;YACvD,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,eAAe,CAAC,SAAiB,EAAE,OAAe;IACzD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,2DAA2D,SAAS,EAAE;YAC9E,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAC9C,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,yDAAyD,OAAO,EAAE;YAC1E,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,wDAAwD;YAChE,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,GAAG,SAAS,EAAE,CAAC;QACxB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,sBAAsB,OAAO,gCAAgC,SAAS,gCAAgC;YAC9G,QAAQ,EAAE,yBAAyB;SACpC,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,SAAS,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACvF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC;AACpF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAqB,EACrB,kBAA0B,kCAAkC;IAE5D,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAE9C,CAAC;IAEd,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CACL,oFAAoF;YACpF,kFAAkF;YAClF,kCAAkC,eAAe,iBAAiB,CACnE,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,CAAC,YAAY,GAAG,eAAe,EAAE,CAAC;QAC/C,OAAO,CACL,0BAA0B,WAAW,CAAC,YAAY,0BAA0B;YAC5E,GAAG,eAAe,+BAA+B;YACjD,SAAS,WAAW,CAAC,SAAS,cAAc,WAAW,CAAC,OAAO,WAAW;YAC1E,kCAAkC,eAAe,iBAAiB,CACnE,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,iCAAiC;AACjC,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,KAAK,UAAU,wBAAwB,CACrC,UAAkB,EAClB,kBAA0B,EAC1B,WAAmB;IAEnB,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,0DAA0D;YAClE,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,kBAAkB,IAAI,OAAO,kBAAkB,KAAK,QAAQ,EAAE,CAAC;QAClE,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,kEAAkE;YAC1E,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IAED,6BAA6B;IAC7B,sEAAsE;IACtE,MAAM,MAAM,GAAG;QACb,iBAAiB;QACjB,UAAU;QACV,QAAQ;QACR,YAAY;QACZ,QAAQ;QACR,YAAY;QACZ,QAAQ;QACR,kBAAkB;QAClB,QAAQ;QACR,aAAa;QACb,QAAQ;QACR,qBAAqB;QACrB,QAAQ;QACR,IAAI,kBAAkB,EAAE;QACxB,iBAAiB;QACjB,cAAc;QACd,GAAG;KACJ,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAE3D,gEAAgE;IAChE,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;QAC9E,MAAM,UAAU,GACd,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,UAAU,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC3C,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EACJ,4DAA4D;oBAC5D,iDAAiD;gBACnD,QAAQ,EAAE,wBAAwB;aACnC,CAAC;QACJ,CAAC;QACD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,2CAA2C,MAAM,CAAC,QAAQ,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;YACrG,QAAQ,EAAE,wBAAwB;SACnC,CAAC;IACJ,CAAC;IAED,qDAAqD;IACrD,mCAAmC;IACnC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC1B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,SAAS,GAAG,CAAC;gBAAE,SAAS;YAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzD,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACxC,SAAS,IAAI,KAAK,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,uCAAuC,UAAU,gCAAgC;gBACjF,gCAAgC,kBAAkB,uCAAuC;gBACzF,iFAAiF;YACnF,QAAQ,EAAE,yBAAyB;SACpC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,SAAS,EAAE;KACzF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E;;;;;;;;;;GAUG;AACH,KAAK,UAAU,gBAAgB,CAAC,UAAkB,EAAE,WAAmB;IACrE,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,iDAAiD;YACzD,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QACjE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAC3C,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;QAEzC,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,kCAAkC,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,EAAE;aACR,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;aAChC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;aACpD,GAAG,EAAE,CAAC;QAET,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EACJ,mDAAmD,UAAU,KAAK;oBAClE,sEAAsE;oBACtE,kEAAkE;gBACpE,QAAQ,EAAE,6BAA6B;aACxC,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,MAAM,iBAAiB,GAAG,GAAG,CAAC,iBAAkC,CAAC;QACjE,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAE7C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,iBAAiB,IAAI,EAAE,CAAC,EAAE,CAAC;YACnD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EACJ,kCAAkC,UAAU,2BAA2B;oBACvE,IAAI,iBAAiB,IAAI,MAAM,wBAAwB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;oBACjF,6DAA6D;gBAC/D,QAAQ,EAAE,6BAA6B;aACxC,CAAC;QACJ,CAAC;QAED,OAAO;YACL,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE;SACvC,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,IACE,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC;YAC7B,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YAC/B,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,EAC5B,CAAC;YACD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EACJ,6DAA6D;oBAC7D,oEAAoE;gBACtE,QAAQ,EAAE,6BAA6B;aACxC,CAAC;QACJ,CAAC;QACD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,4BAA4B,UAAU,aAAa,GAAG,EAAE;YAChE,QAAQ,EAAE,6BAA6B;SACxC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,cAAc,CAAC,QAAgB,EAAE,WAAmB;IACjE,2EAA2E;IAC3E,0EAA0E;IAC1E,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;IAC5E,2EAA2E;IAC3E,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC;IAClF,MAAM,GAAG,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE;QAChE,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;KAChD,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzE,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE;YACJ,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAqB;IAC7D,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC;IAC1E,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,CACL,8FAA8F;YAC9F,uGAAuG;YACvG,+EAA+E,CAChF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CACtC,IAAsB,EACtB,KAAqB;IAErB,gFAAgF;IAChF,6EAA6E;IAC7E,4EAA4E;IAC5E,2EAA2E;IAC3E,mEAAmE;IACnE,oEAAoE;IACpE,MAAM,SAAS,GAAgD,EAAE,CAAC;IAClE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;YAAE,SAAS;QACvC,wEAAwE;QACxE,sDAAsD;QACtD,MAAM,IAAI,GAA+B,IAAI,CAAC,IAAI,CAAC;QACnD,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,gCAAgC,CAC9C,IAAsB,EACtB,KAAqB;IAErB,MAAM,SAAS,GAAgD,EAAE,CAAC;IAClE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;YAAE,SAAS;QACvC,MAAM,IAAI,GAA+B,IAAI,CAAC,IAAI,CAAC;QACnD,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAqB,EACrB,UAAkB,EAClB,QAAkB,EAClB,cAAuB;IAEvB,MAAM,MAAM,GAAiB;QAC3B,KAAK;QACL,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACpC,UAAU;KACX,CAAC;IACF,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,IAAI,cAAc;YAAE,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAgBD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAgC,MAAM,CAAC,MAAM,CAAC;IACnF,aAAa;IACb,aAAa;CACd,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,UAAU,CAAC,IAAkB;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC;AACjF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAsB,EACtB,WAAmB,EACnB,IAAuB,EACvB,MAAe;IAEf,2CAA2C;IAC3C,wEAAwE;IACxE,yEAAyE;IACzE,mEAAmE;IACnE,2EAA2E;IAC3E,IAAI,IAAI,IAAI,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/C,OAAO;gBACL,UAAU,EAAE,KAAK;gBACjB,WAAW,EAAE;oBACX;wBACE,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,cAAc,IAAI,aAAa,EAAE;wBAC5E,MAAM,EACJ,gBAAgB,IAAI,oCAAoC;4BACxD,mBAAmB,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB;4BAChF,6DAA6D;qBAChE;iBACF;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,0EAA0E;QAC1E,oCAAoC;QACpC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IAC/C,CAAC;IAED,MAAM,MAAM,GAAkD,EAAE,CAAC;IAEjE,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QAClC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,KAAK,CAAC;YACX,KAAK,MAAM,CAAC;YACZ,KAAK,UAAU;gBACb,MAAM;YACR,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;gBAC1D,IAAI,CAAC,KAAK,CAAC,EAAE;oBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC3D,MAAM;YACR,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBAC3B,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;oBAC3E,IAAI,OAAO,GAAkB,IAAI,CAAC;oBAElC,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;wBACpB,OAAO,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAChC,CAAC;yBAAM,IAAI,MAAM,EAAE,CAAC;wBAClB,mEAAmE;wBACnE,mEAAmE;wBACnE,sEAAsE;wBACtE,OAAO,GAAG,MAAM,kBAAkB,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;oBAClE,CAAC;oBAED,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,8BAA8B,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACtE,MAAM;oBACR,CAAC;oBACD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAClE,IAAI,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;wBACxB,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI;4BACJ,MAAM,EAAE,+BAA+B,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;yBAC9G,CAAC,CAAC;wBACH,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,uCAAuC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAClF,MAAM;gBACR,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACpC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClE,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;oBAC3B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,0CAA0C,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACvF,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,qEAAqE;gBACrE,sEAAsE;gBACtE,mDAAmD;gBACnD,MAAM;YACR,CAAC;YACD,KAAK,UAAU;gBACb,qEAAqE;gBACrE,mEAAmE;gBACnE,+CAA+C;gBAC/C,MAAM;YACR,KAAK,mBAAmB;gBACtB,iEAAiE;gBACjE,iEAAiE;gBACjE,MAAM;YACR,KAAK,UAAU;gBACb,oEAAoE;gBACpE,qEAAqE;gBACrE,2DAA2D;gBAC3D,MAAM;YACR,KAAK,IAAI;gBACP,kEAAkE;gBAClE,oEAAoE;gBACpE,mEAAmE;gBACnE,kEAAkE;gBAClE,MAAM;YACR,KAAK,WAAW;gBACd,wEAAwE;gBACxE,sEAAsE;gBACtE,mEAAmE;gBACnE,mEAAmE;gBACnE,+DAA+D;gBAC/D,0DAA0D;gBAC1D,MAAM;YACR;gBACE,4DAA4D;gBAC5D,MAAM;QACV,CAAC;IACH,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;AAClE,CAAC;AAYD,SAAS,UAAU,CAAC,GAAW,EAAE,IAAc,EAAE,GAAW;IAC1D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3E,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YAC7B,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YAC7B,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,CAAS,EAAE,GAAW;IACxC,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG;QAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC;AAC3C,CAAC"}
|
|
1
|
+
{"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/tasks/evidence.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Revalidation cache for the `cleo complete` evidence staleness check
|
|
3
|
+
* (T12102 / gh#1196).
|
|
4
|
+
*
|
|
5
|
+
* `cleo complete` re-validates every hard evidence atom recorded at
|
|
6
|
+
* `cleo verify` time (ADR-051 Decision 8 — `E_EVIDENCE_STALE` catches
|
|
7
|
+
* post-verify tampering). On large repos the per-atom git spawns make a
|
|
8
|
+
* loop of completes slow enough to blow agent tool timeouts.
|
|
9
|
+
*
|
|
10
|
+
* ## What is cached, and why it is safe
|
|
11
|
+
*
|
|
12
|
+
* Only `commit:` atom revalidation is cached, keyed on
|
|
13
|
+
* `(commitSha, headSha)`. Every check {@link validateCommit} performs on
|
|
14
|
+
* the complete-time path (no `taskId`) is an IMMUTABLE fact of the git
|
|
15
|
+
* object DAG once both SHAs are fixed:
|
|
16
|
+
*
|
|
17
|
+
* - `git cat-file -e <sha>^{commit}` — object existence is immutable
|
|
18
|
+
* (objects are never removed from a live repo by ordinary work).
|
|
19
|
+
* - `git merge-base --is-ancestor <sha> <headSha>` — reachability
|
|
20
|
+
* between two fixed commits can never change.
|
|
21
|
+
* - `git rev-parse [--short] <sha>` — canonicalisation is immutable.
|
|
22
|
+
*
|
|
23
|
+
* A new commit moves `HEAD`, which changes the key, so post-verify
|
|
24
|
+
* commits always force a fresh validation. Only successful validations
|
|
25
|
+
* are cached: a "commit not found" failure is NOT immutable (a later
|
|
26
|
+
* `git fetch` can make the object appear), so failures always re-run.
|
|
27
|
+
*
|
|
28
|
+
* ## What is deliberately NOT cached
|
|
29
|
+
*
|
|
30
|
+
* - `files:` / `test-run:` — the staleness guarantee IS the
|
|
31
|
+
* read-the-file-and-compare-sha256 step. Any cheaper key (mtime +
|
|
32
|
+
* size) is forgeable and would silently weaken `E_EVIDENCE_STALE`,
|
|
33
|
+
* which is the entire point of re-validation. These atoms stay
|
|
34
|
+
* uncached; their cost is one read + one hash per path.
|
|
35
|
+
* - `tool:` — never re-executed at complete time by design (see
|
|
36
|
+
* {@link revalidateEvidence}); verify-time results are already
|
|
37
|
+
* memoised by the ADR-061 cache in tool-cache.ts.
|
|
38
|
+
*
|
|
39
|
+
* Entries live beside the ADR-061 tool cache under
|
|
40
|
+
* `.cleo/cache/evidence/reval-commit-<key>.json` so `clearToolCache`
|
|
41
|
+
* wipes them too — the cache is purely advisory.
|
|
42
|
+
*
|
|
43
|
+
* @task T12102 (gh#1196)
|
|
44
|
+
* @adr ADR-051
|
|
45
|
+
* @adr ADR-061
|
|
46
|
+
*/
|
|
47
|
+
/**
|
|
48
|
+
* One cached `commit:` atom revalidation. Success-only by design — see
|
|
49
|
+
* the module docstring for the immutability argument.
|
|
50
|
+
*
|
|
51
|
+
* @task T12102
|
|
52
|
+
*/
|
|
53
|
+
export interface CommitRevalidationEntry {
|
|
54
|
+
/** Schema version for forwards compatibility. */
|
|
55
|
+
schemaVersion: 1;
|
|
56
|
+
/** Discriminator so a foreign JSON blob is never trusted. */
|
|
57
|
+
kind: 'commit-revalidation';
|
|
58
|
+
/** Cache key (also encoded in the filename). */
|
|
59
|
+
key: string;
|
|
60
|
+
/** Canonical full commit SHA that validated successfully. */
|
|
61
|
+
sha: string;
|
|
62
|
+
/** Abbreviated SHA captured at validation time. */
|
|
63
|
+
shortSha: string;
|
|
64
|
+
/** `HEAD` SHA the reachability check ran against. */
|
|
65
|
+
head: string;
|
|
66
|
+
/** ISO 8601 wall-clock timestamp of the validation. */
|
|
67
|
+
capturedAt: string;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Compute the cache key for a `(commitSha, headSha)` pair.
|
|
71
|
+
*
|
|
72
|
+
* Mirrors the ADR-061 key style: sha256 of the JSON payload, truncated
|
|
73
|
+
* to 32 hex chars — collision-resistant and bounded regardless of input.
|
|
74
|
+
*
|
|
75
|
+
* @task T12102
|
|
76
|
+
*/
|
|
77
|
+
export declare function computeCommitRevalidationKey(commitSha: string, headSha: string): string;
|
|
78
|
+
/**
|
|
79
|
+
* Absolute path for a revalidation cache entry by key.
|
|
80
|
+
*
|
|
81
|
+
* @task T12102
|
|
82
|
+
*/
|
|
83
|
+
export declare function commitRevalidationPath(projectRoot: string, key: string): string;
|
|
84
|
+
/**
|
|
85
|
+
* Read a cached commit-revalidation entry. Returns `null` when the entry
|
|
86
|
+
* is missing, unreadable, schema-incompatible, or keyed differently
|
|
87
|
+
* (defence against a poisoned cache directory).
|
|
88
|
+
*
|
|
89
|
+
* @task T12102
|
|
90
|
+
*/
|
|
91
|
+
export declare function readCommitRevalidationEntry(projectRoot: string, key: string): CommitRevalidationEntry | null;
|
|
92
|
+
/**
|
|
93
|
+
* Atomically write a cache entry: tmp-then-rename so concurrent readers
|
|
94
|
+
* never observe a half-written file (same discipline as tool-cache.ts).
|
|
95
|
+
*
|
|
96
|
+
* @task T12102
|
|
97
|
+
*/
|
|
98
|
+
export declare function writeCommitRevalidationEntry(projectRoot: string, entry: CommitRevalidationEntry): void;
|
|
99
|
+
//# sourceMappingURL=revalidation-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"revalidation-cache.d.ts","sourceRoot":"","sources":["../../src/tasks/revalidation-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAMH;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,iDAAiD;IACjD,aAAa,EAAE,CAAC,CAAC;IACjB,6DAA6D;IAC7D,IAAI,EAAE,qBAAqB,CAAC;IAC5B,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,6DAA6D;IAC7D,GAAG,EAAE,MAAM,CAAC;IACZ,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAOvF;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/E;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,GACV,uBAAuB,GAAG,IAAI,CAYhC;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,uBAAuB,GAC7B,IAAI,CASN"}
|