@cairn-tool/cairn 4.1.0 → 5.0.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 +24 -11
- package/dist/agent/marketplace/index.d.ts +14 -2
- package/dist/agent/marketplace/index.js +57 -13
- package/dist/agent/marketplace/index.js.map +1 -1
- package/dist/agent/marketplace/layout.d.ts +48 -0
- package/dist/agent/marketplace/layout.js +71 -0
- package/dist/agent/marketplace/layout.js.map +1 -0
- package/dist/agent/marketplace/release-manifest.d.ts +87 -0
- package/dist/agent/marketplace/release-manifest.js +88 -0
- package/dist/agent/marketplace/release-manifest.js.map +1 -0
- package/dist/agent/marketplace/release-readme.d.ts +12 -0
- package/dist/agent/marketplace/release-readme.js +73 -0
- package/dist/agent/marketplace/release-readme.js.map +1 -0
- package/dist/agent/marketplace/source-bundles.d.ts +46 -0
- package/dist/agent/marketplace/source-bundles.js +133 -0
- package/dist/agent/marketplace/source-bundles.js.map +1 -0
- package/dist/agent/parser.js +15 -4
- package/dist/agent/parser.js.map +1 -1
- package/dist/agent/types.d.ts +29 -0
- package/dist/agent/types.js.map +1 -1
- package/dist/cli.js +8 -3
- package/dist/cli.js.map +1 -1
- package/dist/commands/agent-marketplace.d.ts +5 -0
- package/dist/commands/agent-marketplace.js +31 -6
- package/dist/commands/agent-marketplace.js.map +1 -1
- package/dist/contract/registry.js +1 -1
- package/dist/contract/registry.js.map +1 -1
- package/dist/contract/schemas/qa.js +4 -4
- package/dist/contract/schemas/qa.js.map +1 -1
- package/dist/qa/agents/codex.d.ts +8 -0
- package/dist/qa/agents/codex.js +192 -0
- package/dist/qa/agents/codex.js.map +1 -0
- package/dist/qa/agents/index.d.ts +4 -4
- package/dist/qa/agents/index.js +7 -5
- package/dist/qa/agents/index.js.map +1 -1
- package/dist/qa/agents/types.d.ts +4 -0
- package/dist/qa/agents/types.js.map +1 -1
- package/dist/qa/cases.d.ts +3 -2
- package/dist/qa/cases.js +3 -2
- package/dist/qa/cases.js.map +1 -1
- package/dist/qa/slot.js +4 -0
- package/dist/qa/slot.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The landing page of a published release branch.
|
|
3
|
+
*
|
|
4
|
+
* Generated here rather than by each publishing repository, because otherwise
|
|
5
|
+
* every repository that publishes a release branch writes the same document
|
|
6
|
+
* generator — which is the duplication this layout exists to remove. The one
|
|
7
|
+
* thing cairn cannot know is which repository it is being published from, so
|
|
8
|
+
* that is the single input.
|
|
9
|
+
*/
|
|
10
|
+
export function buildReleaseReadme(manifest, repository) {
|
|
11
|
+
const ssh = `git@github.com:${repository}.git`;
|
|
12
|
+
const tag = `release-v${manifest.version}`;
|
|
13
|
+
const rows = manifest.bundles.map((bundle) => {
|
|
14
|
+
const hosts = Object.keys(bundle.targets).join(", ");
|
|
15
|
+
// A description is free text, and three things in it would break the row.
|
|
16
|
+
// Backslashes go first: escaping the pipes before the backslashes turns an
|
|
17
|
+
// authored `\|` into `\\|`, where the backslash is now escaped and the pipe
|
|
18
|
+
// is not — a cell separator where the author wrote a literal. A trailing
|
|
19
|
+
// backslash escapes the row's own closing pipe the same way.
|
|
20
|
+
const description = bundle.description
|
|
21
|
+
.replace(/\\/g, "\\\\")
|
|
22
|
+
.replace(/\|/g, "\\|")
|
|
23
|
+
.replace(/\s*\n\s*/g, " ");
|
|
24
|
+
return `| \`${bundle.name}\` | ${hosts || "—"} | ${description} |`;
|
|
25
|
+
});
|
|
26
|
+
const sections = [
|
|
27
|
+
`# ${manifest.marketplace} — release ${manifest.version}`,
|
|
28
|
+
"",
|
|
29
|
+
"**Generated branch. Do not edit.** The source lives on `main`; this tree is built by CI and",
|
|
30
|
+
`pushed here. See https://github.com/${repository}.`,
|
|
31
|
+
"",
|
|
32
|
+
"| Plugin | Hosts | Description |",
|
|
33
|
+
"| ------ | ----- | ----------- |",
|
|
34
|
+
...rows,
|
|
35
|
+
"",
|
|
36
|
+
];
|
|
37
|
+
const claude = manifest.targets["claude-code"];
|
|
38
|
+
if (claude?.catalog) {
|
|
39
|
+
const first = manifest.bundles.find((bundle) => "claude-code" in bundle.targets);
|
|
40
|
+
sections.push("## Claude Code", "", "```text", `/plugin marketplace add ${ssh}#release`, ...(first ? [`/plugin install ${first.name}@${manifest.marketplace}`] : []), "```", "");
|
|
41
|
+
}
|
|
42
|
+
const codex = manifest.targets["codex"];
|
|
43
|
+
if (codex?.catalog) {
|
|
44
|
+
const first = manifest.bundles.find((bundle) => "codex" in bundle.targets);
|
|
45
|
+
sections.push("## Codex", "", "`--ref` is what pins the marketplace to this branch; without it Codex fetches the", "repository's default branch, which carries the bundle sources and no catalog at its root.", "", "```bash", `codex plugin marketplace add ${repository} --ref release`, ...(first ? [`codex plugin add ${first.name}@${manifest.marketplace}`] : []), "```", "", "Codex installs from a local snapshot of this catalog, so a later release reaches an existing", `install only through \`codex plugin marketplace upgrade ${manifest.marketplace}\`.`, "");
|
|
46
|
+
}
|
|
47
|
+
const cursor = manifest.targets["cursor"];
|
|
48
|
+
if (cursor?.catalog) {
|
|
49
|
+
sections.push("## Cursor", "", "```bash", `agent plugin marketplace add ${ssh} --git-ref release`, "```", "");
|
|
50
|
+
}
|
|
51
|
+
// Every host with no catalog, and every host at all as a fallback: the source
|
|
52
|
+
// bundles are the one install route that works for all of them.
|
|
53
|
+
const sourceOnly = Object.entries(manifest.targets)
|
|
54
|
+
.filter(([, entry]) => entry.catalog === null)
|
|
55
|
+
.map(([name]) => name);
|
|
56
|
+
if (sourceOnly.length > 0) {
|
|
57
|
+
const first = manifest.bundles[0]?.name ?? "<bundle>";
|
|
58
|
+
sections.push(`## ${sourceOnly.map(titleCase).join(", ")}`, "", `${sourceOnly.length === 1 ? "This host declares" : "These hosts declare"} no marketplace catalog, so the published source`, "bundles are the install route. `cairn agent install` takes a bundle root and renders it in", "memory, so nothing else is needed:", "", "```bash", `git clone --branch release ${ssh}`, `cairn agent install ${repository.split("/")[1]}/bundles/${first} --target ${sourceOnly[0]} --scope user`, "```", "");
|
|
59
|
+
}
|
|
60
|
+
sections.push("## Pinning", "", `To pin an exact release, use the tag rather than the branch: \`#${tag}\` for Claude Code,`, `\`--git-ref ${tag}\` for Cursor, \`--ref ${tag}\` for Codex. Pinning also opts out of`, "background auto-update.", "", "Prefer the SSH URL where one is shown. Claude Code's background refresh disables git", "credential helpers for its `git pull`, so HTTPS auto-update against a private repository can", "fail silently; a key loaded in `ssh-agent` authenticates background pulls the same as", "foreground ones.", "");
|
|
61
|
+
return {
|
|
62
|
+
path: "README.md",
|
|
63
|
+
content: Buffer.from(sections.join("\n")),
|
|
64
|
+
mode: 0o644,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
function titleCase(value) {
|
|
68
|
+
return value
|
|
69
|
+
.split("-")
|
|
70
|
+
.map((part) => part.charAt(0).toUpperCase() + part.slice(1))
|
|
71
|
+
.join(" ");
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=release-readme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"release-readme.js","sourceRoot":"","sources":["../../../src/agent/marketplace/release-readme.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { AgentBundle, AgentDiagnostic, Artifact } from "../types.js";
|
|
2
|
+
import type { SpecBundle } from "./spec.js";
|
|
3
|
+
/** Where published source bundles live, relative to the collection root. */
|
|
4
|
+
export declare const SOURCE_BUNDLES_DIRECTORY = "bundles";
|
|
5
|
+
/** The placeholder a release pipeline is expected to replace. */
|
|
6
|
+
export declare const VERSION_SENTINEL = "0.0.0-development";
|
|
7
|
+
/** A published source bundle: where it landed, and at what version. */
|
|
8
|
+
export interface PublishedBundle {
|
|
9
|
+
name: string;
|
|
10
|
+
/** Collection-relative POSIX path of the bundle root. */
|
|
11
|
+
source: string;
|
|
12
|
+
version: string;
|
|
13
|
+
}
|
|
14
|
+
export interface SourceBundleBuild {
|
|
15
|
+
artifacts: Artifact[];
|
|
16
|
+
published: PublishedBundle[];
|
|
17
|
+
diagnostics: AgentDiagnostic[];
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Rewrites the `version:` line of an `agent-bundle.yaml` buffer.
|
|
21
|
+
*
|
|
22
|
+
* A line rewrite rather than a YAML round-trip, deliberately: these manifests
|
|
23
|
+
* are comment-heavy — several carry a header explaining that the version is a
|
|
24
|
+
* sentinel — and a round-trip would discard every one of those comments. This
|
|
25
|
+
* is the same edit `release-build.sh` makes with `sed`, except that it happens
|
|
26
|
+
* on the emitted copy and never on the working tree, so the whole class of
|
|
27
|
+
* "a stamped version escaped into a commit" bug cannot occur.
|
|
28
|
+
*/
|
|
29
|
+
export declare function stampVersion(content: Buffer, version: string): Buffer;
|
|
30
|
+
/**
|
|
31
|
+
* The source bundles a release tree publishes, plus the files they reach for
|
|
32
|
+
* outside themselves.
|
|
33
|
+
*
|
|
34
|
+
* Publishing the sources is what makes a release branch installable for *every*
|
|
35
|
+
* target rather than only the three that declare a marketplace catalog:
|
|
36
|
+
* `agent install` takes a bundle root and renders it in memory, so a host with
|
|
37
|
+
* no catalog concept is served straight off the branch.
|
|
38
|
+
*
|
|
39
|
+
* Only the resource files a bundle actually references are published, and each
|
|
40
|
+
* lands at the same path relative to its bundle that it had in the source
|
|
41
|
+
* repository. Both halves matter: publishing a whole `docs/` tree would put an
|
|
42
|
+
* unrelated documentation site on a branch people clone for plugins, and
|
|
43
|
+
* publishing at a different depth would break the `../../..` references the
|
|
44
|
+
* bundle already carries, which are not rewritten.
|
|
45
|
+
*/
|
|
46
|
+
export declare function buildSourceBundles(entries: SpecBundle[], bundles: Map<string, AgentBundle>): SourceBundleBuild;
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { diagnostic } from "../types.js";
|
|
4
|
+
import { allFiles } from "../parser.js";
|
|
5
|
+
/** Where published source bundles live, relative to the collection root. */
|
|
6
|
+
export const SOURCE_BUNDLES_DIRECTORY = "bundles";
|
|
7
|
+
/** The placeholder a release pipeline is expected to replace. */
|
|
8
|
+
export const VERSION_SENTINEL = "0.0.0-development";
|
|
9
|
+
function error(code, message, extra = {}) {
|
|
10
|
+
// `diagnostic()` derives severity from quality and never returns "error", so
|
|
11
|
+
// an error is built by spreading and overriding — the idiom manifest.ts,
|
|
12
|
+
// package/index.ts and spec.ts all use.
|
|
13
|
+
return { ...diagnostic(code, message, "unsupported", extra), severity: "error" };
|
|
14
|
+
}
|
|
15
|
+
const posix = (value) => value.split(path.sep).join("/");
|
|
16
|
+
/**
|
|
17
|
+
* Rewrites the `version:` line of an `agent-bundle.yaml` buffer.
|
|
18
|
+
*
|
|
19
|
+
* A line rewrite rather than a YAML round-trip, deliberately: these manifests
|
|
20
|
+
* are comment-heavy — several carry a header explaining that the version is a
|
|
21
|
+
* sentinel — and a round-trip would discard every one of those comments. This
|
|
22
|
+
* is the same edit `release-build.sh` makes with `sed`, except that it happens
|
|
23
|
+
* on the emitted copy and never on the working tree, so the whole class of
|
|
24
|
+
* "a stamped version escaped into a commit" bug cannot occur.
|
|
25
|
+
*/
|
|
26
|
+
export function stampVersion(content, version) {
|
|
27
|
+
const text = content.toString("utf8");
|
|
28
|
+
const stamped = text.replace(/^version:[^\r\n]*$/m, `version: ${version}`);
|
|
29
|
+
return stamped === text ? content : Buffer.from(stamped, "utf8");
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* The source bundles a release tree publishes, plus the files they reach for
|
|
33
|
+
* outside themselves.
|
|
34
|
+
*
|
|
35
|
+
* Publishing the sources is what makes a release branch installable for *every*
|
|
36
|
+
* target rather than only the three that declare a marketplace catalog:
|
|
37
|
+
* `agent install` takes a bundle root and renders it in memory, so a host with
|
|
38
|
+
* no catalog concept is served straight off the branch.
|
|
39
|
+
*
|
|
40
|
+
* Only the resource files a bundle actually references are published, and each
|
|
41
|
+
* lands at the same path relative to its bundle that it had in the source
|
|
42
|
+
* repository. Both halves matter: publishing a whole `docs/` tree would put an
|
|
43
|
+
* unrelated documentation site on a branch people clone for plugins, and
|
|
44
|
+
* publishing at a different depth would break the `../../..` references the
|
|
45
|
+
* bundle already carries, which are not rewritten.
|
|
46
|
+
*/
|
|
47
|
+
export function buildSourceBundles(entries, bundles) {
|
|
48
|
+
const artifacts = [];
|
|
49
|
+
const published = [];
|
|
50
|
+
const diagnostics = [];
|
|
51
|
+
// Output path -> the absolute source it came from, so a collision is reported
|
|
52
|
+
// against both origins rather than silently resolved.
|
|
53
|
+
const claimed = new Map();
|
|
54
|
+
const claim = (output, origin, artifact) => {
|
|
55
|
+
const prior = claimed.get(output);
|
|
56
|
+
if (prior !== undefined) {
|
|
57
|
+
// The same file reached by several bundles is one artifact, not a clash:
|
|
58
|
+
// kps-ai-plugins' shared standards are referenced by three bundles.
|
|
59
|
+
if (prior === origin)
|
|
60
|
+
return;
|
|
61
|
+
diagnostics.push(error("AB910", `'${prior}' and '${origin}' both publish to '${output}'`, {
|
|
62
|
+
path: origin,
|
|
63
|
+
remediation: "Rename one of them, or narrow a resourceRoot.",
|
|
64
|
+
}));
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
claimed.set(output, origin);
|
|
68
|
+
artifacts.push(artifact);
|
|
69
|
+
};
|
|
70
|
+
for (const entry of entries) {
|
|
71
|
+
const bundle = bundles.get(entry.path);
|
|
72
|
+
const root = `${SOURCE_BUNDLES_DIRECTORY}/${bundle.name}`;
|
|
73
|
+
// Already stamped in memory by the caller when --stamp-version was given, so
|
|
74
|
+
// the catalogs, the rendered manifests and the published source all carry
|
|
75
|
+
// one version by construction rather than by three agreeing rewrites.
|
|
76
|
+
const version = bundle.version;
|
|
77
|
+
if (version === VERSION_SENTINEL)
|
|
78
|
+
diagnostics.push(error("AB908", `Source bundle '${bundle.name}' would publish the ${VERSION_SENTINEL} sentinel`, {
|
|
79
|
+
path: entry.path,
|
|
80
|
+
remediation: "Pass --stamp-version, or set a real version in agent-bundle.yaml.",
|
|
81
|
+
}));
|
|
82
|
+
for (const file of allFiles(bundle.root)) {
|
|
83
|
+
const relative = posix(file.path);
|
|
84
|
+
const content = relative === "agent-bundle.yaml" ? stampVersion(file.content, version) : file.content;
|
|
85
|
+
claim(`${root}/${relative}`, path.join(bundle.root, file.path), {
|
|
86
|
+
path: `${root}/${relative}`,
|
|
87
|
+
content,
|
|
88
|
+
mode: file.mode,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
// Referenced resources, placed relative to the published bundle exactly as
|
|
92
|
+
// they sit relative to the source bundle. Both KPS repositories keep their
|
|
93
|
+
// bundles one level down and publish them one level down, so `../../shared`
|
|
94
|
+
// normalizes back to `shared/` at the collection root with nothing rewritten.
|
|
95
|
+
const reached = new Set();
|
|
96
|
+
for (const resource of bundle.externalResources) {
|
|
97
|
+
if (reached.has(resource.absolute))
|
|
98
|
+
continue;
|
|
99
|
+
reached.add(resource.absolute);
|
|
100
|
+
const fromBundle = posix(path.relative(bundle.root, resource.absolute));
|
|
101
|
+
const output = path.posix.normalize(`${root}/${fromBundle}`);
|
|
102
|
+
if (output.startsWith("../") || output === "..") {
|
|
103
|
+
diagnostics.push(error("AB909", `'${resource.declared}' cannot be published: it resolves above the collection root`, {
|
|
104
|
+
component: resource.component,
|
|
105
|
+
path: resource.absolute,
|
|
106
|
+
remediation: "Move the resource under a directory nearer the bundle, or vendor it into the bundle.",
|
|
107
|
+
}));
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
// Read directly: the parser already proved this path exists, is a regular
|
|
111
|
+
// file, and does not escape its root through a symlink. Walking the
|
|
112
|
+
// containing directory to find one known file would re-read a whole docs
|
|
113
|
+
// tree per reference.
|
|
114
|
+
claim(output, resource.absolute, {
|
|
115
|
+
path: output,
|
|
116
|
+
content: fs.readFileSync(resource.absolute),
|
|
117
|
+
mode: fs.statSync(resource.absolute).mode & 0o777,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
// A root nothing reaches through publishes no directory, and the published
|
|
121
|
+
// bundle then fails AB155 the moment a consumer renders it. Invisible until
|
|
122
|
+
// then, which is why it is worth saying now.
|
|
123
|
+
for (const declared of bundle.resourceRoots)
|
|
124
|
+
if (!bundle.externalResources.some((resource) => resource.hostRoot === declared))
|
|
125
|
+
diagnostics.push(diagnostic("AB911", `'${bundle.name}' declares a resourceRoot nothing references; the published bundle will not render`, "unsupported", {
|
|
126
|
+
path: declared,
|
|
127
|
+
remediation: "Reference a file under it, or drop it from resourceRoots.",
|
|
128
|
+
}));
|
|
129
|
+
published.push({ name: bundle.name, source: root, version });
|
|
130
|
+
}
|
|
131
|
+
return { artifacts, published, diagnostics };
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=source-bundles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-bundles.js","sourceRoot":"","sources":["../../../src/agent/marketplace/source-bundles.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/parser.js
CHANGED
|
@@ -173,7 +173,7 @@ export function allFiles(directory) {
|
|
|
173
173
|
visit(root);
|
|
174
174
|
return result;
|
|
175
175
|
}
|
|
176
|
-
function loadMarkdownComponents(root, relative, kind, diagnostics, resourceRoots = [], refs = []) {
|
|
176
|
+
function loadMarkdownComponents(root, relative, kind, diagnostics, resourceRoots = [], refs = [], resources = []) {
|
|
177
177
|
const directory = relativeSafe(root, relative, `${kind} path`);
|
|
178
178
|
if (!fs.existsSync(directory))
|
|
179
179
|
return [];
|
|
@@ -404,6 +404,14 @@ function loadMarkdownComponents(root, relative, kind, diagnostics, resourceRoots
|
|
|
404
404
|
content: fs.readFileSync(resolved),
|
|
405
405
|
mode: fs.statSync(resolved).mode & 0o777,
|
|
406
406
|
});
|
|
407
|
+
// The origin, which the rendered tree does not need and a publisher does.
|
|
408
|
+
// `host` is the resourceRoots entry that covered it, already resolved above.
|
|
409
|
+
resources.push({
|
|
410
|
+
absolute: resolved,
|
|
411
|
+
declared: entry.declared,
|
|
412
|
+
hostRoot: host,
|
|
413
|
+
component: name,
|
|
414
|
+
});
|
|
407
415
|
}
|
|
408
416
|
const own = allFiles(componentRoot);
|
|
409
417
|
for (const file of materialized) {
|
|
@@ -595,8 +603,9 @@ export function loadBundle(source) {
|
|
|
595
603
|
});
|
|
596
604
|
const extraResourceRoots = resolveResourceRoots(root, normalized.resourceRoots, legacy ? legacyPath : neutralPath, diagnostics);
|
|
597
605
|
const refs = [];
|
|
598
|
-
const
|
|
599
|
-
const
|
|
606
|
+
const externalResources = [];
|
|
607
|
+
const skills = loadMarkdownComponents(root, configuredPath(manifest, "skills", "skills"), "skill", diagnostics, extraResourceRoots, refs, externalResources);
|
|
608
|
+
const agents = loadMarkdownComponents(root, configuredPath(manifest, "agents", "agents"), "agent", diagnostics, extraResourceRoots, refs, externalResources);
|
|
600
609
|
if (!legacy)
|
|
601
610
|
for (const component of [...skills, ...agents])
|
|
602
611
|
if (component.metadata.name === undefined)
|
|
@@ -607,7 +616,7 @@ export function loadBundle(source) {
|
|
|
607
616
|
}),
|
|
608
617
|
severity: "error",
|
|
609
618
|
});
|
|
610
|
-
const rawRules = loadMarkdownComponents(root, configuredPath(manifest, "rules", "rules"), "rule", diagnostics, extraResourceRoots, refs);
|
|
619
|
+
const rawRules = loadMarkdownComponents(root, configuredPath(manifest, "rules", "rules"), "rule", diagnostics, extraResourceRoots, refs, externalResources);
|
|
611
620
|
const rules = rawRules.map((rule) => ({
|
|
612
621
|
...rule,
|
|
613
622
|
activation: String(rule.metadata.activation ?? "always"),
|
|
@@ -782,6 +791,8 @@ export function loadBundle(source) {
|
|
|
782
791
|
policies: loadPolicies(root, configuredPath(manifest, "policies", "policies"), diagnostics),
|
|
783
792
|
mcp: findStructured(root, configuredPath(manifest, "mcp", "mcp")),
|
|
784
793
|
assets: legacy ? legacyAssets : fs.existsSync(assetsDir) ? allFiles(assetsDir) : [],
|
|
794
|
+
resourceRoots: extraResourceRoots,
|
|
795
|
+
externalResources,
|
|
785
796
|
diagnostics,
|
|
786
797
|
graph,
|
|
787
798
|
};
|
package/dist/agent/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/agent/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAQ1C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE3E,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,IAAI,GAAG,cAAc,CAAC;AAE5B,SAAS,MAAM,CAAC,KAAc,EAAE,KAAa;IAC3C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,oBAAoB,CAAC,CAAC;IAChD,OAAO,KAAgC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC1C,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;IACjF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,KAAM,KAAe,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5E,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,IAAY;IAEZ,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAChE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACjE,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,wCAAwC,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,cAAc,CAAC;YAClE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;SACrC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,0BAA2B,KAAe,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACjG,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,SAAiB,EAAE,KAAa;IAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,6BAA6B,SAAS,EAAE,CAAC,CAAC;IACpE,IAAI,QAAQ,GAAG,QAAQ,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACpE,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IACxF,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACnD,IAAI,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,mDAAmD,SAAS,EAAE,CAAC,CAAC;IAC1F,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,SAAS,MAAM,CAAC,IAAY,EAAE,QAAgB;IAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAI,QAAQ,GAAG,QAAQ,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACpE,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IACxF,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IAChE,OAAO,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QACnE,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,QAAQ,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAC3B,UAAkB,EAClB,QAAkB,EAClB,YAAoB,EACpB,WAA8B;IAE9B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,0BAA0B,KAAK,kBAAkB,EAAE,aAAa,EAAE;oBACvF,IAAI,EAAE,YAAY;oBAClB,WAAW,EAAE,uDAAuD;iBACrE,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YACzC,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CACX,OAAO,EACP,0BAA0B,KAAK,sBAAsB,EACrD,aAAa,EACb;oBACE,IAAI,EAAE,YAAY;iBACnB,CACF;gBACD,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,SAAiB;IACpC,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvD,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5F,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1F,OAAO,IAAI,CAAC;IACd,OAAO,UAAU,CAAC;AACpB,CAAC;AAUD,SAAS,kBAAkB,CAAC,GAAY;IACtC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAC5B,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,CAAC;IACD,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5E,MAAM,KAAK,GAAG,GAA8B,CAAC;IAC7C,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,SAAS,CAAC;IAC3E,MAAM,EAAE,GAAG,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC;AAC7C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,SAAiB;IACxC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,KAAK,GAAG,CAAC,OAAe,EAAQ,EAAE;QACtC,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;YAAE,OAAO;QACrC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACzB,KAAK,MAAM,KAAK,IAAI,EAAE;aACnB,WAAW,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAC7C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,KAAK,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACtC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;oBAC9C,MAAM,IAAI,KAAK,CAAC,wCAAwC,IAAI,EAAE,CAAC,CAAC;YACpE,CAAC;YACD,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;gBACpF,KAAK,CAAC,IAAI,CAAC,CAAC;iBACT,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,cAAc,EAAE;gBAC/C,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;oBAC/B,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;oBAC9B,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,KAAK;iBACrC,CAAC,CAAC;QACP,CAAC;IACH,CAAC,CAAC;IACF,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACjD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,sBAAsB,CAC7B,IAAY,EACZ,QAAgB,EAChB,IAAgC,EAChC,WAA8B,EAC9B,gBAA0B,EAAE,EAC5B,OAAiB,EAAE;IAEnB,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC;IAC/D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,MAAM,UAAU,GACd,IAAI,KAAK,OAAO;QACd,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAM,CACxB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,UAAU,CAAC,CAChF;QACH,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAM,CACxB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;YAC1D,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAClD,CAAC;IACR,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxD,MAAM,QAAQ,GACZ,IAAI,KAAK,OAAO;YACd,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC7C,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC;QAC/C,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QACvD,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ;YAClE,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,wBAAwB,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACtF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,WAAW,KAAK,QAAQ;YAChF,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,+BAA+B,EAAE,aAAa,EAAE;oBAC5E,IAAI,EAAE,IAAI;iBACX,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAClB,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,WAAW,IAAI,UAAU,IAAI,GAAG,EAAE,aAAa,EAAE;oBACtE,SAAS,EAAE,IAAI;oBACf,IAAI,EAAE,IAAI;oBACV,WAAW,EAAE,2BAA2B;iBACzC,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,WAAW;YACxD,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,yBAAyB,EAAE,aAAa,EAAE;oBACtE,SAAS,EAAE,IAAI;oBACf,IAAI,EAAE,IAAI;oBACV,WAAW,EAAE,sCAAsC;iBACpD,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,IAAI,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;QAC5D,0EAA0E;QAC1E,qEAAqE;QACrE,KAAK,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,eAAe,CAAC;YAChE,IAAI,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,QAAQ;gBACnC,IAAI,CAAC,IAAI,CACP,GAAG,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAW,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CACzF,CAAC;QACN,MAAM,aAAa,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,IACE,QAAQ,CAAC,OAAO;YAChB,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ;YACpC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAChC,CAAC;YACD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAkC,CAAC,EAAE,CAAC;gBAC9E,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAe,CAAC;oBACpC,WAAW,CAAC,IAAI,CAAC;wBACf,GAAG,UAAU,CAAC,OAAO,EAAE,4BAA4B,MAAM,GAAG,EAAE,aAAa,EAAE;4BAC3E,SAAS,EAAE,IAAI;4BACf,IAAI,EAAE,IAAI;yBACX,CAAC;wBACF,QAAQ,EAAE,OAAO;qBAClB,CAAC,CAAC;qBACA,CAAC;oBACJ,MAAM,KAAK,GAAI,QAAQ,CAAC,OAAmC,CAAC,MAAM,CAAC,CAAC;oBACpE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;wBAC7D,WAAW,CAAC,IAAI,CAAC;4BACf,GAAG,UAAU,CACX,OAAO,EACP,oBAAoB,MAAM,qBAAqB,EAC/C,aAAa,EACb;gCACE,SAAS,EAAE,IAAI;gCACf,IAAI,EAAE,IAAI;6BACX,CACF;4BACD,QAAQ,EAAE,OAAO;yBAClB,CAAC,CAAC;gBACP,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS;YACvC,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,2BAA2B,EAAE,aAAa,EAAE;oBACjE,SAAS,EAAE,IAAI;oBACf,IAAI,EAAE,IAAI;iBACX,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,KAAK,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,SAAS,CAAU;YACjD,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAClE,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,KAAK,iCAAiC,EAAE,aAAa,EAAE;wBAC/E,SAAS,EAAE,IAAI;wBACf,IAAI,EAAE,IAAI;qBACX,CAAC;oBACF,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;QACP,KAAK,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,SAAS,CAAU;YACjD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChC,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;oBAC9C,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAe,CAAC;wBACpC,WAAW,CAAC,IAAI,CAAC;4BACf,GAAG,UAAU,CAAC,OAAO,EAAE,mBAAmB,MAAM,QAAQ,KAAK,EAAE,EAAE,aAAa,EAAE;gCAC9E,SAAS,EAAE,IAAI;gCACf,IAAI,EAAE,IAAI;6BACX,CAAC;4BACF,QAAQ,EAAE,OAAO;yBAClB,CAAC,CAAC;QACX,4EAA4E;QAC5E,2EAA2E;QAC3E,oDAAoD;QACpD,CAAC;YACC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC/C,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,EAAE,SAAS,EAAE,GAAG,IAAI,oBAAoB,CAAC,CAAC;oBACrF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;wBAC1B,WAAW,CAAC,IAAI,CAAC;4BACf,GAAG,UAAU,CAAC,OAAO,EAAE,8BAA8B,SAAS,GAAG,EAAE,aAAa,EAAE;gCAChF,SAAS,EAAE,IAAI;gCACf,IAAI,EAAE,IAAI;6BACX,CAAC;4BACF,QAAQ,EAAE,OAAO;yBAClB,CAAC,CAAC;gBACP,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,WAAW,CAAC,IAAI,CAAC;wBACf,GAAG,UAAU,CAAC,OAAO,EAAG,KAAe,CAAC,OAAO,EAAE,aAAa,EAAE;4BAC9D,SAAS,EAAE,IAAI;4BACf,IAAI,EAAE,IAAI;yBACX,CAAC;wBACF,QAAQ,EAAE,OAAO;qBAClB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QACD,6EAA6E;QAC7E,6EAA6E;QAC7E,2EAA2E;QAC3E,oEAAoE;QACpE,yEAAyE;QACzE,4EAA4E;QAC5E,sEAAsE;QACtE,kBAAkB;QAClB,MAAM,YAAY,GAAiB,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC3C,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YACxE,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,4BAA4B,EAAE,aAAa,EAAE;oBAClE,SAAS,EAAE,IAAI;oBACf,IAAI,EAAE,IAAI;iBACX,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC9E,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CACX,OAAO,EACP,qDAAqD,EACrD,aAAa,EACb,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAChC;oBACD,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC7D,MAAM,kBAAkB,GAAG,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAC3D,IAAI,kBAAkB,KAAK,gBAAgB,EAAE,CAAC;gBAC5C,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CACX,OAAO,EACP,GAAG,IAAI,0EAA0E,KAAK,CAAC,QAAQ,EAAE,EACjG,aAAa,EACb,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAChC;oBACD,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,IAAI,kBAAkB,KAAK,QAAQ,EAAE,CAAC;gBACpC,wEAAwE;gBACxE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;oBAC1B,WAAW,CAAC,IAAI,CAAC;wBACf,GAAG,UAAU,CACX,OAAO,EACP,gCAAgC,KAAK,CAAC,QAAQ,GAAG,EACjD,aAAa,EACb,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAChC;wBACD,QAAQ,EAAE,OAAO;qBAClB,CAAC,CAAC;gBACL,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,GAAG,aAAa,CAAC,CAAC;YACvC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC;YACjF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,gBAAgB,CAAC,CAAC;gBAC5F,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CACX,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAC3B,OAAO;wBACL,CAAC,CAAC,GAAG,IAAI,uEAAuE,KAAK,CAAC,QAAQ,EAAE;wBAChG,CAAC,CAAC,aAAa,KAAK,CAAC,QAAQ,sEAAsE,EACrG,aAAa,EACb;wBACE,SAAS,EAAE,IAAI;wBACf,IAAI,EAAE,IAAI;wBACV,WAAW,EAAE,OAAO;4BAClB,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,0DAA0D;qBAC/D,CACF;oBACD,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;gBAChE,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CAAC,OAAO,EAAE,gCAAgC,KAAK,CAAC,QAAQ,GAAG,EAAE,aAAa,EAAE;wBACvF,SAAS,EAAE,IAAI;wBACf,IAAI,EAAE,IAAI;qBACX,CAAC;oBACF,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CACX,OAAO,EACP,0BAA0B,OAAO,gDAAgD,EACjF,aAAa,EACb,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAChC;oBACD,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CACX,OAAO,EACP,cAAc,KAAK,UAAU,KAAK,CAAC,QAAQ,mBAAmB,IAAI,GAAG,EACrE,aAAa,EACb,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,wCAAwC,EAAE,CACvF;oBACD,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACnC,YAAY,CAAC,IAAI,CAAC;gBAChB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBACpC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC;gBAClC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,GAAG,KAAK;aACzC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC;YACpE,IAAI,KAAK;gBACP,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CACX,OAAO,EACP,sBAAsB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,yCAAyC,EAClG,aAAa,EACb,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAC9E;oBACD,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;QACP,CAAC;QACD,OAAO;YACL,IAAI;YACJ,WAAW;YACX,IAAI,EAAE,IAAI;YACV,QAAQ;YACR,IAAI;YACJ,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SAC1F,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CACrB,IAAY,EACZ,QAAgB;IAEhB,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAC5D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;IACnF,MAAM,IAAI,GAAG,CAAC,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC;SACtF,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;SACpC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IACvB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,CAAC;AAED,SAAS,YAAY,CACnB,IAAY,EACZ,QAAgB,EAChB,WAA8B;IAE9B,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IAChE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE;QAC3C,CAAC,CAAC,CAAC,SAAS,CAAC;QACb,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;aAChB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAC9C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;YACxC,CAAC,CAAC,KAAK,CAAC,KAAK;YACb,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC7B,CAAC,CAAC,KAAK,CAAC,QAAQ;gBAChB,CAAC,CAAC,EAAE,CAAC;QACT,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,SAAS;YAChD,MAAM,MAAM,GAAG,IAA+B,CAAC;YAC/C,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACjF,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CAAC,OAAO,EAAE,8CAA8C,EAAE,aAAa,EAAE;wBACpF,IAAI,EAAE,IAAI;qBACX,CAAC;oBACF,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,OAAO,CAAC;gBACzD,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,UAAU,CAAC;gBAE5D,WAAW,CAAC,IAAI,CACd,UAAU,CACR,OAAO,EACP,4DAA4D,EAC5D,aAAa,EACb,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,mDAAmD,EAAE,CACjF,CACF,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC;YAClE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;gBACrC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;oBAC3B,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC1F,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;YAC5B,MAAM,OAAO,GAAG,CAAC,OAAgB,EAAW,EAAE,CAC5C,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9E,KAAK,MAAM,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,CAAc;gBAClF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;oBACnB,WAAW,CAAC,IAAI,CAAC;wBACf,GAAG,UAAU,CACX,OAAO,EACP,sDAAsD,MAAM,CAAC,OAAO,CAAC,EAAE,EACvE,aAAa,EACb,EAAE,IAAI,EAAE,IAAI,EAAE,CACf;wBACD,QAAQ,EAAE,OAAO;qBAClB,CAAC,CAAC;YACP,KAAK,MAAM,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,UAAU,IAAI,EAAE,CAAc;gBACrF,IAAI,OAAO,CAAC,OAAO,CAAC;oBAClB,WAAW,CAAC,IAAI,CAAC;wBACf,GAAG,UAAU,CACX,OAAO,EACP,+CAA+C,MAAM,CAAC,OAAO,CAAC,EAAE,EAChE,aAAa,EACb,EAAE,IAAI,EAAE,IAAI,EAAE,CACf;wBACD,QAAQ,EAAE,OAAO;qBAClB,CAAC,CAAC;QACT,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,YAAY,CAAC,MAAmB;IACvC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,KAAe,EAAQ,EAAE;QACnD,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC;gBACtB,GAAG,UAAU,CACX,OAAO,EACP,+BAA+B,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAC9D,aAAa,EACb,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,gDAAgD,EAAE,CACnF;gBACD,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO;QAC9B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACrE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;QAC1D,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,EAAE,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;IACpE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,+DAA+D,MAAM,EAAE,CAAC,CAAC;IAC3F,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACnE,MAAM,WAAW,GAAsB,EAAE,CAAC;IAC1C,IAAI,MAAM;QACR,WAAW,CAAC,IAAI,CACd,UAAU,CAAC,OAAO,EAAE,0CAA0C,EAAE,OAAO,EAAE;YACvE,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,2DAA2D;SACzE,CAAC,CACH,CAAC;IACJ,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,0EAA0E;IAC1E,wEAAwE;IACxE,2DAA2D;IAC3D,MAAM,UAAU,GAAG,iBAAiB,CAClC,QAAQ,EACR,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,EACjC,MAAM,EACN,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EACnB,WAAW,CACZ,CAAC;IACF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,KAAK,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAU;YAC7D,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,KAAK,QAAQ;gBACtE,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CAAC,OAAO,EAAE,iBAAiB,KAAK,oBAAoB,EAAE,aAAa,EAAE;wBAChF,IAAI,EAAE,WAAW;qBAClB,CAAC;oBACF,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;QACP,IACE,QAAQ,CAAC,OAAO,KAAK,SAAS;YAC9B,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ;YACpC,CAAC,qCAAqC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAE7D,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,2BAA2B,QAAQ,CAAC,OAAO,GAAG,EAAE,aAAa,EAAE;oBACpF,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,uCAAuC;iBACrD,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,IACE,QAAQ,CAAC,OAAO,KAAK,SAAS;YAC9B,CAAC,CAAC,QAAQ,CAAC,OAAO,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAE9F,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,kCAAkC,EAAE,aAAa,EAAE;oBACxE,IAAI,EAAE,WAAW;iBAClB,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;aACA,IAAI,QAAQ,CAAC,OAAO;YACvB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAkC,CAAC,EAAE,CAAC;gBAC9E,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAe,CAAC;oBACpC,WAAW,CAAC,IAAI,CAAC;wBACf,GAAG,UAAU,CAAC,OAAO,EAAE,0BAA0B,MAAM,GAAG,EAAE,aAAa,EAAE;4BACzE,IAAI,EAAE,WAAW;yBAClB,CAAC;wBACF,QAAQ,EAAE,OAAO;qBAClB,CAAC,CAAC;qBACA,CAAC;oBACJ,MAAM,KAAK,GAAI,QAAQ,CAAC,OAAmC,CAAC,MAAM,CAAC,CAAC;oBACpE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;wBAC7D,WAAW,CAAC,IAAI,CAAC;4BACf,GAAG,UAAU,CACX,OAAO,EACP,2BAA2B,MAAM,qBAAqB,EACtD,aAAa,EACb,EAAE,IAAI,EAAE,WAAW,EAAE,CACtB;4BACD,QAAQ,EAAE,OAAO;yBAClB,CAAC,CAAC;gBACP,CAAC;YACH,CAAC;IACL,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAClB,WAAW,CAAC,IAAI,CAAC;YACf,GAAG,UAAU,CAAC,OAAO,EAAE,wBAAwB,IAAI,GAAG,EAAE,aAAa,EAAE;gBACrE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW;gBACvC,WAAW,EAAE,2BAA2B;aACzC,CAAC;YACF,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;IACL,KAAK,MAAM,KAAK,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,CAAU;QAC9E,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACtE,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,2BAA2B,KAAK,GAAG,EAAE,aAAa,EAAE;oBACzE,IAAI,EAAE,WAAW;iBAClB,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;IACP,MAAM,kBAAkB,GAAG,oBAAoB,CAC7C,IAAI,EACJ,UAAU,CAAC,aAAa,EACxB,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,EACjC,WAAW,CACZ,CAAC;IACF,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,sBAAsB,CACnC,IAAI,EACJ,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAC5C,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,IAAI,CACL,CAAC;IACF,MAAM,MAAM,GAAG,sBAAsB,CACnC,IAAI,EACJ,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAC5C,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,IAAI,CACL,CAAC;IACF,IAAI,CAAC,MAAM;QACT,KAAK,MAAM,SAAS,IAAI,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;YAC5C,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS;gBACvC,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CAAC,OAAO,EAAE,uCAAuC,EAAE,aAAa,EAAE;wBAC7E,SAAS,EAAE,SAAS,CAAC,IAAI;wBACzB,IAAI,EAAE,SAAS,CAAC,IAAI;qBACrB,CAAC;oBACF,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;IACT,MAAM,QAAQ,GAAG,sBAAsB,CACrC,IAAI,EACJ,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,EAC1C,MAAM,EACN,WAAW,EACX,kBAAkB,EAClB,IAAI,CACL,CAAC;IACF,MAAM,KAAK,GAAiB,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAClD,GAAG,IAAI;QACP,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAA6B;QACpF,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;KACjF,CAAC,CAAC,CAAC;IACJ,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CACpE,CAAC;IACF,6EAA6E;IAC7E,0EAA0E;IAC1E,8CAA8C;IAC9C,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QACxC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS;QAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,SAAS;QAClC,IAAI,CAAC,IAAI,CACP,GAAG,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE;YACnE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;SACpC,CAAC,CACH,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,KAAK;QACtB,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;YACnE,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CAAC,OAAO,EAAE,4BAA4B,IAAI,CAAC,UAAU,GAAG,EAAE,aAAa,EAAE;oBACpF,SAAS,EAAE,IAAI,CAAC,IAAI;oBACpB,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC;gBACF,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;IACP,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI;QAC/B,CAAC,OAAO,EAAE,MAAM,CAAC;QACjB,CAAC,OAAO,EAAE,MAAM,CAAC;QACjB,CAAC,MAAM,EAAE,KAAK,CAAC;KACP,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC1B,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CAAC,OAAO,EAAE,aAAa,IAAI,UAAU,SAAS,CAAC,IAAI,GAAG,EAAE,aAAa,EAAE;wBAClF,SAAS,EAAE,SAAS,CAAC,IAAI;wBACzB,IAAI,EAAE,SAAS,CAAC,IAAI;qBACrB,CAAC;oBACF,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,MAAM,KAAK,GAA6B,EAAE,CAAC;IAC3C,KAAK,MAAM,SAAS,IAAI,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;YACvD,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACvC,CAAC,CAAC,EAAE,CAAC;QACP,0EAA0E;QAC1E,6EAA6E;QAC7E,oEAAoE;QACpE,wEAAwE;QACxE,2EAA2E;QAC3E,yBAAyB;QACzB,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;QACjC,KAAK,MAAM,GAAG,IAAI,QAAQ;YACxB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;gBACtB,WAAW,CAAC,IAAI,CAAC;oBACf,GAAG,UAAU,CAAC,OAAO,EAAE,6BAA6B,GAAG,GAAG,EAAE,aAAa,EAAE;wBACzE,SAAS,EAAE,SAAS,CAAC,IAAI;wBACzB,IAAI,EAAE,SAAS,CAAC,IAAI;wBACpB,WAAW,EAAE,wCAAwC;qBACtD,CAAC;oBACF,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;IACT,CAAC;IACD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,aAAa,CAAC,CAAC;IAClG,MAAM,eAAe,GAAG,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACjG,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;IACnE,MAAM,aAAa,GACjB,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE;QAC5D,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7B,MAAM,SAAS,GACb,CAAC,MAAM,IAAI,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QAC9C,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC;QAC9F,CAAC,CAAC,EAAE,CAAC;IACT,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,IAAI,GAAG,CAC5B,MAAM;SACH,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAChB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAC7B,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,IAAI,MAAM,CAAC,CAC/E,CACF;SACA,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAC9B,CAAC;IACF,MAAM,cAAc,GAAG;QACrB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClD,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClD,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAChD,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,SAAiB,EAAW,EAAE,CACzD,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACnE;;;;;;;;OAQG;IACH,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAW,EAAE;QACzC,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAC3C,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QAC/C,IAAI,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC;YAAE,OAAO,KAAK,CAAC;QACjE,IAAI,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QACxC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAC5F,CAAC,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;QAC5D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CACX,OAAO,EACP,sBAAsB,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,KAAK,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,IAAI,EAAE,EAClG,aAAa,EACb;oBACE,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,WAAW,EACT,GAAG,CAAC,IAAI,KAAK,SAAS;wBACpB,CAAC,CAAC,4EAA4E;wBAC9E,CAAC,CAAC,6CAA6C;iBACpD,CACF;gBACD,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;YACzD,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CACX,OAAO,EACP,sBAAsB,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,IAAI,gDAAgD,EACnG,aAAa,EACb;oBACE,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,WAAW,EAAE,sCAAsC,GAAG,CAAC,IAAI,4CAA4C;iBACxG,CACF;gBACD,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;QACL,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;YACrB,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,UAAU,CACX,OAAO,EACP,iBAAiB,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,IAAI,4CAA4C,EAC1F,aAAa,EACb;oBACE,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,WAAW,EACT,sHAAsH;iBACzH,CACF;gBACD,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;IACP,CAAC;IACD,MAAM,YAAY,GAAG,MAAM;QACzB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvD,OAAO,CACL,UAAU,KAAK,4BAA4B;gBAC3C,UAAU,KAAK,kBAAkB;gBACjC,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC;gBACjC,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CACrC,CAAC;QACJ,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,MAAM,GAAgB;QAC1B,aAAa,EAAE,UAAU,CAAC,aAAa;QACvC,IAAI;QACJ,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,IAAI;QACJ,MAAM;QACN,QAAQ;QACR,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC;QACzE,MAAM;QACN,MAAM;QACN,KAAK;QACL,KAAK;QACL,SAAS;QACT,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,WAAW,CAAC;QAC3F,GAAG,EAAE,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACjE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;QACnF,WAAW;QACX,KAAK;KACN,CAAC;IACF,YAAY,CAAC,MAAM,CAAC,CAAC;IACrB,MAAM,CAAC,WAAW,GAAG;QACnB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;KACpF,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/agent/parser.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/types.d.ts
CHANGED
|
@@ -28,6 +28,27 @@ export interface SourceFile {
|
|
|
28
28
|
content: Buffer;
|
|
29
29
|
mode: number;
|
|
30
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* A file materialized into a component from outside the bundle, with the origin
|
|
33
|
+
* it was read from.
|
|
34
|
+
*
|
|
35
|
+
* The rendered tree is self-contained, so nothing downstream needs the origin —
|
|
36
|
+
* but a *publisher* does: to ship a source bundle that still renders, it has to
|
|
37
|
+
* carry the files the bundle reaches for, and it can only know which those are
|
|
38
|
+
* from here. Recorded rather than recomputed, because the resolution rules
|
|
39
|
+
* (`resourceRoots`, symlink escape, `as` landing paths) live in the parser and
|
|
40
|
+
* a second implementation would drift from them.
|
|
41
|
+
*/
|
|
42
|
+
export interface ExternalResource {
|
|
43
|
+
/** Absolute path the file was read from. */
|
|
44
|
+
absolute: string;
|
|
45
|
+
/** The reference exactly as the component wrote it, for diagnostics. */
|
|
46
|
+
declared: string;
|
|
47
|
+
/** The declared `resourceRoots` entry, resolved, that covers `absolute`. */
|
|
48
|
+
hostRoot: string;
|
|
49
|
+
/** Name of the component that referenced it. */
|
|
50
|
+
component: string;
|
|
51
|
+
}
|
|
31
52
|
export interface MarkdownComponent {
|
|
32
53
|
name: string;
|
|
33
54
|
description: string;
|
|
@@ -91,6 +112,14 @@ export interface AgentBundle {
|
|
|
91
112
|
value: Record<string, unknown>;
|
|
92
113
|
};
|
|
93
114
|
assets: SourceFile[];
|
|
115
|
+
/**
|
|
116
|
+
* Absolute, existing roots resolved from the manifest's `resourceRoots`.
|
|
117
|
+
* Computed while loading and kept, rather than discarded, so a publisher can
|
|
118
|
+
* place them at the same relative depth in a published tree.
|
|
119
|
+
*/
|
|
120
|
+
resourceRoots: string[];
|
|
121
|
+
/** Files materialized from outside the bundle, with their origin paths. */
|
|
122
|
+
externalResources: ExternalResource[];
|
|
94
123
|
diagnostics: AgentDiagnostic[];
|
|
95
124
|
graph: Record<string, string[]>;
|
|
96
125
|
}
|
package/dist/agent/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/agent/types.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/agent/types.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,CAAU,CAAC;AA8O9F,MAAM,UAAU,UAAU,CACxB,IAAY,EACZ,OAAe,EACf,OAAuB,EACvB,QAAkC,EAAE;IAEpC,OAAO;QACL,IAAI;QACJ,QAAQ,EACN,OAAO,KAAK,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;QAC1F,OAAO;QACP,OAAO;QACP,GAAG,KAAK;KACT,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,4BAA4B,CAAC"}
|
package/dist/cli.js
CHANGED
|
@@ -285,6 +285,11 @@ agent
|
|
|
285
285
|
.option("--output <dir>", "Collection root; required unless --install")
|
|
286
286
|
.option("--target <target>", "Narrow the spec's targets (repeatable)", collect)
|
|
287
287
|
.option("--marketplace <mode>", "Catalog mode: repo, local", "repo")
|
|
288
|
+
.option("--layout <layout>", "Output layout: nested, release", "nested")
|
|
289
|
+
.option("--no-source-bundles", "Do not publish the source bundles under the release layout")
|
|
290
|
+
.option("--stamp-version <semver>", "Version written into each published agent-bundle.yaml")
|
|
291
|
+
.option("--source-commit <sha>", "Commit recorded in release-manifest.json")
|
|
292
|
+
.option("--readme <owner/name>", "Generate README.md for that repository's release branch")
|
|
288
293
|
.option("--archive", "Also emit a deterministic .tar.gz per plugin")
|
|
289
294
|
.option("--install", "Install the collection into the host marketplace directory")
|
|
290
295
|
.option("--scope <scope>", "Install scope: user, project")
|
|
@@ -609,8 +614,8 @@ pdfCommon(pdf.command("forms"))
|
|
|
609
614
|
});
|
|
610
615
|
const qa = program
|
|
611
616
|
.command("qa")
|
|
612
|
-
.description("Run TC-N test-case plans through Cursor
|
|
613
|
-
.addHelpText("after", "\nDiscovers `_plans/tc-N.yaml` under --runs-dir, inlines each plan into a prompt, and\nspawns the case's agent backend with permission checks bypassed. A queue may mix\ncursor
|
|
617
|
+
.description("Run TC-N test-case plans through Cursor, Claude Code, and Codex agent backends")
|
|
618
|
+
.addHelpText("after", "\nDiscovers `_plans/tc-N.yaml` under --runs-dir, inlines each plan into a prompt, and\nspawns the case's agent backend with permission checks bypassed. A queue may mix\ncursor, claude-code, and codex cases in one execution. POSIX-only: process-group\nsignalling has no meaning on Windows.\n\nFormat shorthands:\n -fh Shorthand for --format=human\n -fj Shorthand for --format=json");
|
|
614
619
|
const qaCommon = (command) => command
|
|
615
620
|
.option("--format <fmt>", "Output format: llm, human, json", "llm")
|
|
616
621
|
.option("--envelope", "Wrap --format json output in the versioned result envelope")
|
|
@@ -618,7 +623,7 @@ const qaCommon = (command) => command
|
|
|
618
623
|
.option("--no-config", "Disable project configuration discovery");
|
|
619
624
|
qaCommon(qa.command("run"))
|
|
620
625
|
.description("Run the queue of pending test cases")
|
|
621
|
-
.requiredOption("--repo <path>", "Repository root
|
|
626
|
+
.requiredOption("--repo <path>", "Repository root and agent working directory")
|
|
622
627
|
.option("--runs-dir <path>", "Directory containing _plans/ and per-case output folders")
|
|
623
628
|
.option("--parallel <n>", "Most agents at once (default 8)")
|
|
624
629
|
.option("--model <slug>", "Model for cases with no model: key; repeat as --model agent=slug", collect)
|