@ozzylabs/feedradar 0.1.6 → 0.1.8
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 +2 -1
- package/dist/agents/_boundary.d.ts +74 -1
- package/dist/agents/_boundary.d.ts.map +1 -1
- package/dist/agents/_boundary.js +152 -0
- package/dist/agents/_boundary.js.map +1 -1
- package/dist/claude-skills/dismiss/SKILL.md +18 -12
- package/dist/claude-skills/research/SKILL.md +21 -1
- package/dist/claude-skills/review/SKILL.md +23 -1
- package/dist/claude-skills/update/SKILL.md +24 -2
- package/dist/cli/_commit-path.d.ts +33 -0
- package/dist/cli/_commit-path.d.ts.map +1 -0
- package/dist/cli/_commit-path.js +43 -0
- package/dist/cli/_commit-path.js.map +1 -0
- package/dist/cli/dismiss.d.ts +38 -7
- package/dist/cli/dismiss.d.ts.map +1 -1
- package/dist/cli/dismiss.js +239 -54
- package/dist/cli/dismiss.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +7 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/items.d.ts +44 -0
- package/dist/cli/items.d.ts.map +1 -0
- package/dist/cli/items.js +288 -0
- package/dist/cli/items.js.map +1 -0
- package/dist/cli/research.d.ts +21 -0
- package/dist/cli/research.d.ts.map +1 -1
- package/dist/cli/research.js +360 -54
- package/dist/cli/research.js.map +1 -1
- package/dist/cli/review.d.ts +23 -0
- package/dist/cli/review.d.ts.map +1 -1
- package/dist/cli/review.js +462 -2
- package/dist/cli/review.js.map +1 -1
- package/dist/cli/source.d.ts.map +1 -1
- package/dist/cli/source.js +18 -0
- package/dist/cli/source.js.map +1 -1
- package/dist/cli/triage.d.ts +136 -0
- package/dist/cli/triage.d.ts.map +1 -0
- package/dist/cli/triage.js +1110 -0
- package/dist/cli/triage.js.map +1 -0
- package/dist/cli/undismiss.d.ts +30 -0
- package/dist/cli/undismiss.d.ts.map +1 -0
- package/dist/cli/undismiss.js +133 -0
- package/dist/cli/undismiss.js.map +1 -0
- package/dist/cli/update.d.ts.map +1 -1
- package/dist/cli/update.js +429 -141
- package/dist/cli/update.js.map +1 -1
- package/dist/cli/workflow/generate-combined-with-triage.d.ts +163 -0
- package/dist/cli/workflow/generate-combined-with-triage.d.ts.map +1 -0
- package/dist/cli/workflow/generate-combined-with-triage.js +582 -0
- package/dist/cli/workflow/generate-combined-with-triage.js.map +1 -0
- package/dist/cli/workflow.d.ts +6 -5
- package/dist/cli/workflow.d.ts.map +1 -1
- package/dist/cli/workflow.js +13 -8
- package/dist/cli/workflow.js.map +1 -1
- package/dist/core/feeds/json-api.d.ts +5 -2
- package/dist/core/feeds/json-api.d.ts.map +1 -1
- package/dist/core/feeds/json-api.js +99 -13
- package/dist/core/feeds/json-api.js.map +1 -1
- package/dist/core/feeds/types.d.ts +26 -0
- package/dist/core/feeds/types.d.ts.map +1 -1
- package/dist/core/recipes.d.ts.map +1 -1
- package/dist/core/recipes.js +6 -0
- package/dist/core/recipes.js.map +1 -1
- package/dist/core/transitions.d.ts +30 -0
- package/dist/core/transitions.d.ts.map +1 -0
- package/dist/core/transitions.js +103 -0
- package/dist/core/transitions.js.map +1 -0
- package/dist/core/triage/adapter.d.ts +80 -0
- package/dist/core/triage/adapter.d.ts.map +1 -0
- package/dist/core/triage/adapter.js +128 -0
- package/dist/core/triage/adapter.js.map +1 -0
- package/dist/core/triage/index.d.ts +105 -0
- package/dist/core/triage/index.d.ts.map +1 -0
- package/dist/core/triage/index.js +246 -0
- package/dist/core/triage/index.js.map +1 -0
- package/dist/core/triage/prompt.d.ts +30 -0
- package/dist/core/triage/prompt.d.ts.map +1 -0
- package/dist/core/triage/prompt.js +157 -0
- package/dist/core/triage/prompt.js.map +1 -0
- package/dist/core/triage/response.d.ts +114 -0
- package/dist/core/triage/response.d.ts.map +1 -0
- package/dist/core/triage/response.js +188 -0
- package/dist/core/triage/response.js.map +1 -0
- package/dist/gemini-commands/research.toml +1 -1
- package/dist/gemini-commands/review.toml +1 -1
- package/dist/gemini-commands/update.toml +1 -1
- package/dist/recipes/aws-whats-new.yaml +36 -1
- package/dist/recipes/dev-to.yaml +24 -0
- package/dist/schemas/item.d.ts +151 -5
- package/dist/schemas/item.d.ts.map +1 -1
- package/dist/schemas/item.js +164 -4
- package/dist/schemas/item.js.map +1 -1
- package/dist/schemas/recipe.d.ts +11 -1
- package/dist/schemas/recipe.d.ts.map +1 -1
- package/dist/schemas/recipe.js +10 -1
- package/dist/schemas/recipe.js.map +1 -1
- package/dist/schemas/source.d.ts +65 -4
- package/dist/schemas/source.d.ts.map +1 -1
- package/dist/schemas/source.js +65 -3
- package/dist/schemas/source.js.map +1 -1
- package/dist/skills/research/SKILL.md +57 -1
- package/dist/skills/review/SKILL.md +65 -1
- package/dist/skills/update/SKILL.md +54 -1
- package/dist/templates/agents/AGENTS.md +30 -0
- package/dist/templates/workflows/combined-with-triage.template.yaml.tmpl +132 -0
- package/package.json +1 -1
package/dist/cli/review.js
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
import { access, readFile, writeFile } from "node:fs/promises";
|
|
1
|
+
import { access, readdir, readFile, writeFile } from "node:fs/promises";
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import matter from "gray-matter";
|
|
4
4
|
import { parse as parseYaml, stringify as stringifyYaml } from "yaml";
|
|
5
|
+
import { renderReviewPayloadBlock } from "../agents/_boundary.js";
|
|
5
6
|
import { getAgentAdapter } from "../agents/index.js";
|
|
6
7
|
import { getDefaultAgent, loadRadarConfig, RadarConfigError } from "../core/config.js";
|
|
7
8
|
import { loadItems, saveItems } from "../core/items.js";
|
|
8
9
|
import { loadTemplate } from "../core/templates.js";
|
|
10
|
+
import { isValidTransition } from "../core/transitions.js";
|
|
9
11
|
import { AgentIdSchema, ResearchFrontmatterSchema } from "../schemas/index.js";
|
|
12
|
+
import { resolveCommitPathInside } from "./_commit-path.js";
|
|
10
13
|
import { buildAgentProgressCallback, buildReporter, ProgressFlagError, parseProgressFlags, pollOutputFileSize, } from "./_progress.js";
|
|
11
14
|
/**
|
|
12
15
|
* gray-matter defaults to js-yaml which auto-converts ISO 8601 strings to
|
|
@@ -30,6 +33,10 @@ function parseArgs(args) {
|
|
|
30
33
|
out.help = true;
|
|
31
34
|
continue;
|
|
32
35
|
}
|
|
36
|
+
if (a === "--batch") {
|
|
37
|
+
out.batch = true;
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
33
40
|
if (a === "--agent") {
|
|
34
41
|
out.agent = args[++i];
|
|
35
42
|
continue;
|
|
@@ -38,6 +45,26 @@ function parseArgs(args) {
|
|
|
38
45
|
out.template = args[++i];
|
|
39
46
|
continue;
|
|
40
47
|
}
|
|
48
|
+
if (a === "--status") {
|
|
49
|
+
out.status = args[++i];
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
if (a === "--max-items") {
|
|
53
|
+
out.maxItems = args[++i];
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
if (a === "--filter-tags") {
|
|
57
|
+
out.filterTags = args[++i];
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
if (a === "--emit-payload") {
|
|
61
|
+
out.emitPayload = true;
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
if (a === "--commit") {
|
|
65
|
+
out.commit = args[++i];
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
41
68
|
if (a?.startsWith("--")) {
|
|
42
69
|
throw new Error(`unknown option: ${a}`);
|
|
43
70
|
}
|
|
@@ -49,15 +76,63 @@ function parseArgs(args) {
|
|
|
49
76
|
}
|
|
50
77
|
return out;
|
|
51
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Default hard-cap for `radar review --batch`.
|
|
81
|
+
*
|
|
82
|
+
* Mirrors `RESEARCH_BATCH_DEFAULT_MAX_ITEMS` (ADR-0014 D3a). Review is the
|
|
83
|
+
* downstream of research, so the same per-tick cost envelope applies; pinning
|
|
84
|
+
* to the same literal keeps a scheduled `research --batch --max-items 10
|
|
85
|
+
* → review --batch` chain from accidentally fanning the review step out
|
|
86
|
+
* faster than research can keep up.
|
|
87
|
+
*/
|
|
88
|
+
export const REVIEW_BATCH_DEFAULT_MAX_ITEMS = 10;
|
|
89
|
+
/**
|
|
90
|
+
* Whitelist of `Item.status` values accepted by `radar review --batch
|
|
91
|
+
* --status <status>`.
|
|
92
|
+
*
|
|
93
|
+
* Only `researched` is valid: review consumes research outputs (ADR-0008
|
|
94
|
+
* `researched → reviewed`) and there is no other prior status that produces
|
|
95
|
+
* a non-null research file with `reviewedAt: null`. We still keep the surface
|
|
96
|
+
* as `--status <status>` (rather than a hardcoded `researched`) so the CLI
|
|
97
|
+
* matches the symmetry of `research --batch --status <status>` and so a typo
|
|
98
|
+
* in scheduled YAML fails loud with an explicit allow-list message instead
|
|
99
|
+
* of being silently ignored (issue #250).
|
|
100
|
+
*/
|
|
101
|
+
export const REVIEW_BATCH_ALLOWED_STATUSES = ["researched"];
|
|
52
102
|
function printHelp(log) {
|
|
53
|
-
log("Usage:
|
|
103
|
+
log("Usage:");
|
|
104
|
+
log(" radar review <research-id> [--agent <agent-id>] [--template <template-id>]");
|
|
105
|
+
log(` radar review --batch [--status <status>] [--max-items N] [--filter-tags <list>] [--agent <id>]`);
|
|
106
|
+
log(" radar review <research-id> --emit-payload [--agent <id>] [--template <id>]");
|
|
107
|
+
log(" radar review --commit <path>");
|
|
54
108
|
log("");
|
|
55
109
|
log("Arguments:");
|
|
56
110
|
log(" <research-id> Research id (basename of research/<id>.md without .md)");
|
|
111
|
+
log(" Omit with --batch — research files are discovered.");
|
|
57
112
|
log("");
|
|
58
113
|
log("Options:");
|
|
59
114
|
log(" --agent <agent-id> claude-code | codex-cli | gemini-cli | copilot (default: claude-code)");
|
|
60
115
|
log(" --template <id> Template id under templates/ (default: default)");
|
|
116
|
+
log(" --batch Review every un-reviewed research file whose linked");
|
|
117
|
+
log(" items match --status (and --filter-tags), respecting");
|
|
118
|
+
log(" --max-items (default: REVIEW_BATCH_DEFAULT_MAX_ITEMS).");
|
|
119
|
+
log(" --status <status> Batch-mode filter: researched (default).");
|
|
120
|
+
log(" `researched → reviewed` is the only legal transition");
|
|
121
|
+
log(" per ADR-0008; other values are rejected.");
|
|
122
|
+
log(` --max-items N Batch-mode hard-cap on processed reports (default: ${REVIEW_BATCH_DEFAULT_MAX_ITEMS}).`);
|
|
123
|
+
log(" --filter-tags <list> Batch-mode comma-separated allow-list matched against");
|
|
124
|
+
log(" each linked item's matchedKeywords (case-insensitive).");
|
|
125
|
+
log(" --emit-payload Host-agent mode (ADR-0019): print the review payload to");
|
|
126
|
+
log(" stdout and DO NOT spawn an agent. The interactive host");
|
|
127
|
+
log(" session reviews the research file in place itself, then");
|
|
128
|
+
log(" finalizes with `radar review --commit <path>`.");
|
|
129
|
+
log(" Interactive/opt-in only — CI/headless must use the");
|
|
130
|
+
log(" default spawn path.");
|
|
131
|
+
log(" --commit <path> Host-agent mode (ADR-0019): validate an externally-");
|
|
132
|
+
log(" reviewed report (under <cwd>/research/) against");
|
|
133
|
+
log(" ResearchFrontmatterSchema, assert the host stamped");
|
|
134
|
+
log(" reviewedAt / reviewedBy, and apply the researched →");
|
|
135
|
+
log(" reviewed transition for the linked items.");
|
|
61
136
|
log(" --verbose Stream the agent CLI's stdout/stderr in addition to phase markers.");
|
|
62
137
|
log(" --quiet Suppress phase markers and spinner; print only the completion line.");
|
|
63
138
|
log(" Equivalent to setting RADAR_NO_PROGRESS=1 (ADR-0015 D2).");
|
|
@@ -131,6 +206,335 @@ async function restoreSnapshot(snapshot) {
|
|
|
131
206
|
}
|
|
132
207
|
return errors;
|
|
133
208
|
}
|
|
209
|
+
/**
|
|
210
|
+
* Host-agent commit path (#254 / ADR-0019): finalize a research file the host
|
|
211
|
+
* session reviewed in place (stamped `reviewedAt` / `reviewedBy`, appended a
|
|
212
|
+
* review block). Independent of agent / template resolution — the report is
|
|
213
|
+
* self-describing via its `itemIds` frontmatter, which this reverse-looks-up
|
|
214
|
+
* against `items/`.
|
|
215
|
+
*
|
|
216
|
+
* Unlike `research --commit`, the CLI does not write the report here (the host
|
|
217
|
+
* already did). The CLI's remaining responsibilities are the ones it must keep
|
|
218
|
+
* owning (ADR-0019): schema validation, asserting the host actually stamped the
|
|
219
|
+
* review, and the `researched → reviewed` state-machine transition.
|
|
220
|
+
*
|
|
221
|
+
* The path is constrained to `<cwd>/research/` first (M3b enforced in code) so
|
|
222
|
+
* a host misled by injected content into committing an arbitrary path is
|
|
223
|
+
* rejected at the CLI boundary.
|
|
224
|
+
*/
|
|
225
|
+
async function runReviewCommit(params) {
|
|
226
|
+
const { cwd, commitPath, log, error, progress } = params;
|
|
227
|
+
const guard = await resolveCommitPathInside(cwd, "research", commitPath);
|
|
228
|
+
if ("error" in guard) {
|
|
229
|
+
error(`review: ${guard.error}`);
|
|
230
|
+
return 2;
|
|
231
|
+
}
|
|
232
|
+
const researchPath = guard.resolved;
|
|
233
|
+
if (!(await pathExists(researchPath))) {
|
|
234
|
+
error(`review: research file not found: ${researchPath}`);
|
|
235
|
+
return 1;
|
|
236
|
+
}
|
|
237
|
+
let body;
|
|
238
|
+
try {
|
|
239
|
+
body = await readFile(researchPath, "utf8");
|
|
240
|
+
}
|
|
241
|
+
catch (e) {
|
|
242
|
+
error(`review: failed to read research file: ${e instanceof Error ? e.message : String(e)}`);
|
|
243
|
+
return 1;
|
|
244
|
+
}
|
|
245
|
+
let frontmatter;
|
|
246
|
+
try {
|
|
247
|
+
frontmatter = matter(body, matterOptions).data;
|
|
248
|
+
}
|
|
249
|
+
catch (e) {
|
|
250
|
+
error(`review: failed to parse frontmatter: ${e instanceof Error ? e.message : String(e)}`);
|
|
251
|
+
return 1;
|
|
252
|
+
}
|
|
253
|
+
const fmResult = ResearchFrontmatterSchema.safeParse(frontmatter);
|
|
254
|
+
if (!fmResult.success) {
|
|
255
|
+
error(`review: research frontmatter does not match ResearchFrontmatterSchema:`);
|
|
256
|
+
for (const issue of fmResult.error.issues) {
|
|
257
|
+
error(` - ${issue.path.join(".") || "<root>"}: ${issue.message}`);
|
|
258
|
+
}
|
|
259
|
+
return 1;
|
|
260
|
+
}
|
|
261
|
+
const fm = fmResult.data;
|
|
262
|
+
progress.phase("Frontmatter validated");
|
|
263
|
+
// The host session is responsible for stamping the review (the CLI no longer
|
|
264
|
+
// spawns an agent in this path). If the stamp is missing the host did not run
|
|
265
|
+
// the review procedure, so refuse to transition the items rather than mark
|
|
266
|
+
// them reviewed against an un-reviewed report.
|
|
267
|
+
if (fm.reviewedAt === null || fm.reviewedBy === null) {
|
|
268
|
+
error(`review: --commit report '${fm.id}' is not stamped (reviewedAt=${fm.reviewedAt}, reviewedBy=${fm.reviewedBy}); the host session must stamp the review before committing`);
|
|
269
|
+
return 1;
|
|
270
|
+
}
|
|
271
|
+
// Reverse-lookup the linked items from the report's `itemIds` frontmatter
|
|
272
|
+
// (mirrors research --commit / finalizeResearch). The report is
|
|
273
|
+
// self-describing, so we do not need a positional <research-id>.
|
|
274
|
+
const all = await loadItems(join(cwd, "items"));
|
|
275
|
+
const byId = new Map(all.map((i) => [i.id, i]));
|
|
276
|
+
const targetItems = [];
|
|
277
|
+
for (const id of fm.itemIds) {
|
|
278
|
+
const match = byId.get(id);
|
|
279
|
+
if (!match) {
|
|
280
|
+
error(`review: --commit report references unknown item id '${id}' (no items/*/${id}.yaml under ${cwd})`);
|
|
281
|
+
return 1;
|
|
282
|
+
}
|
|
283
|
+
targetItems.push(match);
|
|
284
|
+
}
|
|
285
|
+
// Defer the legal-transition decision to `isValidTransition()` (the ADR-0008
|
|
286
|
+
// / ADR-0018 state machine SSoT). Only items currently in `researched`
|
|
287
|
+
// transition to `reviewed`; any other status is passed through unchanged
|
|
288
|
+
// (defense in depth — a host that committed against a stale items set does
|
|
289
|
+
// not corrupt non-researched items).
|
|
290
|
+
const transitions = new Map();
|
|
291
|
+
const updated = targetItems.map((item) => {
|
|
292
|
+
if (isValidTransition(item.status, "reviewed")) {
|
|
293
|
+
transitions.set(item.id, item.status);
|
|
294
|
+
return { ...item, status: "reviewed" };
|
|
295
|
+
}
|
|
296
|
+
return item;
|
|
297
|
+
});
|
|
298
|
+
try {
|
|
299
|
+
await saveItems(join(cwd, "items"), updated);
|
|
300
|
+
}
|
|
301
|
+
catch (e) {
|
|
302
|
+
error(`review: failed to update item status: ${e instanceof Error ? e.message : String(e)}`);
|
|
303
|
+
error(` (research file was reviewed: ${researchPath})`);
|
|
304
|
+
return 1;
|
|
305
|
+
}
|
|
306
|
+
log(`review: wrote ${researchPath}`);
|
|
307
|
+
for (const item of updated) {
|
|
308
|
+
const from = transitions.get(item.id);
|
|
309
|
+
if (from !== undefined && item.status === "reviewed") {
|
|
310
|
+
progress.phase(`Status: ${from} → reviewed`, `items/${item.sourceId}/${item.id}.yaml`);
|
|
311
|
+
log(`review: items/${item.sourceId}/${item.id}.yaml status -> reviewed`);
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
return 0;
|
|
315
|
+
}
|
|
316
|
+
function parseBatchMaxItems(raw, error) {
|
|
317
|
+
if (raw === undefined)
|
|
318
|
+
return REVIEW_BATCH_DEFAULT_MAX_ITEMS;
|
|
319
|
+
if (!/^[0-9]+$/.test(raw)) {
|
|
320
|
+
error(`review: invalid --max-items '${raw}' (expected positive integer)`);
|
|
321
|
+
return null;
|
|
322
|
+
}
|
|
323
|
+
const n = Number.parseInt(raw, 10);
|
|
324
|
+
if (!Number.isFinite(n) || n <= 0) {
|
|
325
|
+
error(`review: invalid --max-items '${raw}' (must be > 0)`);
|
|
326
|
+
return null;
|
|
327
|
+
}
|
|
328
|
+
return n;
|
|
329
|
+
}
|
|
330
|
+
function parseBatchFilterTags(raw) {
|
|
331
|
+
if (raw === undefined || raw.trim() === "")
|
|
332
|
+
return [];
|
|
333
|
+
return [
|
|
334
|
+
...new Set(raw
|
|
335
|
+
.split(",")
|
|
336
|
+
.map((s) => s.trim().toLowerCase())
|
|
337
|
+
.filter((s) => s.length > 0)),
|
|
338
|
+
];
|
|
339
|
+
}
|
|
340
|
+
/**
|
|
341
|
+
* Discover candidate research files for `--batch` mode (#250).
|
|
342
|
+
*
|
|
343
|
+
* Walk `research/` for `*.md`, parse frontmatter, and keep entries that:
|
|
344
|
+
* - parse cleanly against `ResearchFrontmatterSchema`
|
|
345
|
+
* - have `reviewedAt === null` (un-reviewed; idempotent skip otherwise)
|
|
346
|
+
*
|
|
347
|
+
* Sort deterministically by (createdAt, id) so a scheduled batch always
|
|
348
|
+
* processes oldest-first. The per-item status filter (`--status researched`)
|
|
349
|
+
* is applied by the caller after cross-referencing `items/`.
|
|
350
|
+
*/
|
|
351
|
+
async function discoverBatchCandidates(cwd) {
|
|
352
|
+
const researchDir = join(cwd, "research");
|
|
353
|
+
if (!(await pathExists(researchDir)))
|
|
354
|
+
return [];
|
|
355
|
+
let entries;
|
|
356
|
+
try {
|
|
357
|
+
entries = await readdir(researchDir);
|
|
358
|
+
}
|
|
359
|
+
catch {
|
|
360
|
+
return [];
|
|
361
|
+
}
|
|
362
|
+
const candidates = [];
|
|
363
|
+
for (const entry of entries) {
|
|
364
|
+
if (!entry.endsWith(".md"))
|
|
365
|
+
continue;
|
|
366
|
+
// The frontmatter's `id` field is the canonical research id; we trust
|
|
367
|
+
// it over the filename so a rename does not silently change the id
|
|
368
|
+
// the review CLI passes to the agent.
|
|
369
|
+
let body;
|
|
370
|
+
try {
|
|
371
|
+
body = await readFile(join(researchDir, entry), "utf8");
|
|
372
|
+
}
|
|
373
|
+
catch {
|
|
374
|
+
continue;
|
|
375
|
+
}
|
|
376
|
+
let fm;
|
|
377
|
+
try {
|
|
378
|
+
fm = matter(body, matterOptions).data;
|
|
379
|
+
}
|
|
380
|
+
catch {
|
|
381
|
+
// Malformed frontmatter: leave it to the per-item review call to
|
|
382
|
+
// surface the schema error (skipping it silently in discovery hides
|
|
383
|
+
// a real corruption from the user).
|
|
384
|
+
continue;
|
|
385
|
+
}
|
|
386
|
+
const result = ResearchFrontmatterSchema.safeParse(fm);
|
|
387
|
+
if (!result.success)
|
|
388
|
+
continue;
|
|
389
|
+
if (result.data.reviewedAt !== null)
|
|
390
|
+
continue;
|
|
391
|
+
candidates.push({ id: result.data.id, createdAt: result.data.createdAt });
|
|
392
|
+
}
|
|
393
|
+
candidates.sort((a, b) => {
|
|
394
|
+
if (a.createdAt !== b.createdAt)
|
|
395
|
+
return a.createdAt < b.createdAt ? -1 : 1;
|
|
396
|
+
return a.id.localeCompare(b.id);
|
|
397
|
+
});
|
|
398
|
+
return candidates;
|
|
399
|
+
}
|
|
400
|
+
/**
|
|
401
|
+
* Implementation of `radar review --batch` (#250).
|
|
402
|
+
*
|
|
403
|
+
* Mirrors `research --batch` shape:
|
|
404
|
+
* 1. Validate `--status` against `REVIEW_BATCH_ALLOWED_STATUSES`.
|
|
405
|
+
* 2. Walk `research/` to find un-reviewed research files.
|
|
406
|
+
* 3. Cross-reference linked items; keep those whose status matches.
|
|
407
|
+
* 4. Apply `--filter-tags` allow-list (case-insensitive) against linked
|
|
408
|
+
* items' `matchedKeywords`.
|
|
409
|
+
* 5. Cap at `--max-items` (drops excess + warns).
|
|
410
|
+
* 6. Run the existing single-review path per candidate. Atomicity, agent
|
|
411
|
+
* resolution, and rollback all reuse `runReview`'s implementation —
|
|
412
|
+
* this function intentionally stays a thin orchestrator.
|
|
413
|
+
*
|
|
414
|
+
* Workflow YAML generated by `radar workflow generate combined-with-triage`
|
|
415
|
+
* (PR #249) drives this entry point: `radar review --batch --status
|
|
416
|
+
* researched --agent <reviewAgent>`.
|
|
417
|
+
*/
|
|
418
|
+
async function runReviewBatch(parsed, cwd, options, log, warn, error, progress) {
|
|
419
|
+
if (parsed.researchId !== undefined) {
|
|
420
|
+
error(`review: --batch is incompatible with positional <research-id> ('${parsed.researchId}')`);
|
|
421
|
+
return 2;
|
|
422
|
+
}
|
|
423
|
+
const rawStatus = parsed.status ?? "researched";
|
|
424
|
+
if (!REVIEW_BATCH_ALLOWED_STATUSES.includes(rawStatus)) {
|
|
425
|
+
error(`review: invalid --status '${rawStatus}' (expected: ${REVIEW_BATCH_ALLOWED_STATUSES.join(" | ")})`);
|
|
426
|
+
return 2;
|
|
427
|
+
}
|
|
428
|
+
const status = rawStatus;
|
|
429
|
+
const maxItems = parseBatchMaxItems(parsed.maxItems, error);
|
|
430
|
+
if (maxItems === null)
|
|
431
|
+
return 2;
|
|
432
|
+
const filterTags = parseBatchFilterTags(parsed.filterTags);
|
|
433
|
+
// Resolve the agent once up front so the batch fails fast on a typo
|
|
434
|
+
// rather than 10x reporting it once per candidate. The per-item review
|
|
435
|
+
// path will re-resolve (defensively), but it will hit the same
|
|
436
|
+
// explicit-agent slot and short-circuit identically.
|
|
437
|
+
let explicitAgent;
|
|
438
|
+
if (parsed.agent !== undefined) {
|
|
439
|
+
const agentResult = AgentIdSchema.safeParse(parsed.agent);
|
|
440
|
+
if (!agentResult.success) {
|
|
441
|
+
error(`review: invalid --agent '${parsed.agent}' (expected: claude-code | codex-cli | gemini-cli | copilot)`);
|
|
442
|
+
return 2;
|
|
443
|
+
}
|
|
444
|
+
explicitAgent = agentResult.data;
|
|
445
|
+
}
|
|
446
|
+
let agent;
|
|
447
|
+
try {
|
|
448
|
+
const config = await loadRadarConfig(cwd);
|
|
449
|
+
agent = await getDefaultAgent("review", { explicit: explicitAgent, configOverride: config });
|
|
450
|
+
}
|
|
451
|
+
catch (e) {
|
|
452
|
+
if (e instanceof RadarConfigError) {
|
|
453
|
+
error(`review: ${e.message}`);
|
|
454
|
+
return 2;
|
|
455
|
+
}
|
|
456
|
+
throw e;
|
|
457
|
+
}
|
|
458
|
+
const candidates = await discoverBatchCandidates(cwd);
|
|
459
|
+
if (candidates.length === 0) {
|
|
460
|
+
log(`review: --batch found no un-reviewed research/*.md files`);
|
|
461
|
+
return 0;
|
|
462
|
+
}
|
|
463
|
+
// Cross-reference linked items so we can apply the per-item `--status`
|
|
464
|
+
// and `--filter-tags` filters. Loading items once and reusing the
|
|
465
|
+
// Map<id, Item> across candidates avoids quadratic scans for workspaces
|
|
466
|
+
// with many sources / items.
|
|
467
|
+
const itemsDir = join(cwd, "items");
|
|
468
|
+
const allItems = await loadItems(itemsDir);
|
|
469
|
+
const itemsById = new Map(allItems.map((i) => [i.id, i]));
|
|
470
|
+
const lowerFilterTags = filterTags;
|
|
471
|
+
const matches = [];
|
|
472
|
+
for (const cand of candidates) {
|
|
473
|
+
// Re-read frontmatter to discover the linked itemIds — discovery only
|
|
474
|
+
// captured the bare `id` / `createdAt` to keep memory bounded.
|
|
475
|
+
const researchPath = join(cwd, "research", `${cand.id}.md`);
|
|
476
|
+
let body;
|
|
477
|
+
try {
|
|
478
|
+
body = await readFile(researchPath, "utf8");
|
|
479
|
+
}
|
|
480
|
+
catch {
|
|
481
|
+
continue;
|
|
482
|
+
}
|
|
483
|
+
const fm = ResearchFrontmatterSchema.safeParse(matter(body, matterOptions).data);
|
|
484
|
+
if (!fm.success)
|
|
485
|
+
continue;
|
|
486
|
+
const linked = fm.data.itemIds.map((id) => itemsById.get(id)).filter((i) => !!i);
|
|
487
|
+
if (linked.length === 0)
|
|
488
|
+
continue;
|
|
489
|
+
// Every linked item must satisfy --status; mixed states would leave the
|
|
490
|
+
// review pass with a partially-eligible candidate that the downstream
|
|
491
|
+
// review code rejects anyway. Failing fast here keeps the per-item
|
|
492
|
+
// error budget cheap.
|
|
493
|
+
if (!linked.every((i) => i.status === status))
|
|
494
|
+
continue;
|
|
495
|
+
if (lowerFilterTags.length > 0) {
|
|
496
|
+
const tagged = linked.some((i) => {
|
|
497
|
+
const haystack = new Set(i.matchedKeywords.map((k) => k.toLowerCase()));
|
|
498
|
+
return lowerFilterTags.some((t) => haystack.has(t));
|
|
499
|
+
});
|
|
500
|
+
if (!tagged)
|
|
501
|
+
continue;
|
|
502
|
+
}
|
|
503
|
+
matches.push({ researchId: cand.id, createdAt: cand.createdAt, itemIds: fm.data.itemIds });
|
|
504
|
+
}
|
|
505
|
+
if (matches.length === 0) {
|
|
506
|
+
log(`review: --batch matched 0 research file(s) (status=${status}${filterTags.length > 0 ? `, tags=${filterTags.join(",")}` : ""})`);
|
|
507
|
+
return 0;
|
|
508
|
+
}
|
|
509
|
+
let selected = matches;
|
|
510
|
+
if (matches.length > maxItems) {
|
|
511
|
+
const dropped = matches.length - maxItems;
|
|
512
|
+
warn(`review: --max-items ${maxItems} cap reached; dropping ${dropped} excess research file(s) (matched ${matches.length})`);
|
|
513
|
+
selected = matches.slice(0, maxItems);
|
|
514
|
+
}
|
|
515
|
+
log(`review: --batch will process ${selected.length} research file(s) (status=${status}${filterTags.length > 0 ? `, tags=${filterTags.join(",")}` : ""}, agent=${agent}, cap=${maxItems})`);
|
|
516
|
+
// Dispatch each candidate through the single-review path. We pass the
|
|
517
|
+
// resolved agent explicitly so each call short-circuits the config
|
|
518
|
+
// resolver to the same value the batch already accepted.
|
|
519
|
+
const innerOptions = {
|
|
520
|
+
cwd,
|
|
521
|
+
io: { log, warn, error },
|
|
522
|
+
progress: options.progress ?? progress,
|
|
523
|
+
};
|
|
524
|
+
for (const m of selected) {
|
|
525
|
+
const innerArgs = [m.researchId, "--agent", agent];
|
|
526
|
+
if (parsed.template !== undefined) {
|
|
527
|
+
innerArgs.push("--template", parsed.template);
|
|
528
|
+
}
|
|
529
|
+
const code = await runReview(innerArgs, innerOptions);
|
|
530
|
+
if (code !== 0) {
|
|
531
|
+
error(`review: --batch halted on research '${m.researchId}' (exit ${code})`);
|
|
532
|
+
return code;
|
|
533
|
+
}
|
|
534
|
+
}
|
|
535
|
+
log(`review: --batch completed ${selected.length} research file(s)`);
|
|
536
|
+
return 0;
|
|
537
|
+
}
|
|
134
538
|
/**
|
|
135
539
|
* Implementation of `radar review <research-id>`.
|
|
136
540
|
*
|
|
@@ -183,6 +587,46 @@ export async function runReview(args, options = {}) {
|
|
|
183
587
|
printHelp(log);
|
|
184
588
|
return 0;
|
|
185
589
|
}
|
|
590
|
+
// Host-agent commit (#254 / ADR-0019). Independent of agent / template
|
|
591
|
+
// resolution: the report is self-describing via its `itemIds` frontmatter.
|
|
592
|
+
// Handled before the other modes since it takes a path, not a <research-id>.
|
|
593
|
+
if (parsed.commit !== undefined) {
|
|
594
|
+
if (parsed.batch) {
|
|
595
|
+
error("review: --commit is incompatible with --batch");
|
|
596
|
+
return 2;
|
|
597
|
+
}
|
|
598
|
+
if (parsed.emitPayload) {
|
|
599
|
+
error("review: --commit is incompatible with --emit-payload");
|
|
600
|
+
return 2;
|
|
601
|
+
}
|
|
602
|
+
if (parsed.researchId !== undefined) {
|
|
603
|
+
error(`review: --commit takes a <path>, not a <research-id> argument (got '${parsed.researchId}')`);
|
|
604
|
+
return 2;
|
|
605
|
+
}
|
|
606
|
+
return runReviewCommit({ cwd, commitPath: parsed.commit, log, error, progress });
|
|
607
|
+
}
|
|
608
|
+
if (parsed.emitPayload && parsed.batch) {
|
|
609
|
+
error("review: --emit-payload is incompatible with --batch");
|
|
610
|
+
return 2;
|
|
611
|
+
}
|
|
612
|
+
if (parsed.batch) {
|
|
613
|
+
return runReviewBatch(parsed, cwd, options, log, warn, error, progress);
|
|
614
|
+
}
|
|
615
|
+
// Surface the batch-only flags when used outside `--batch`; matches
|
|
616
|
+
// `research.ts`'s "no silent ignore" stance so a typo in scheduled YAML
|
|
617
|
+
// does not become a no-op.
|
|
618
|
+
if (parsed.status !== undefined) {
|
|
619
|
+
error("review: --status requires --batch");
|
|
620
|
+
return 2;
|
|
621
|
+
}
|
|
622
|
+
if (parsed.maxItems !== undefined) {
|
|
623
|
+
error("review: --max-items requires --batch");
|
|
624
|
+
return 2;
|
|
625
|
+
}
|
|
626
|
+
if (parsed.filterTags !== undefined) {
|
|
627
|
+
error("review: --filter-tags requires --batch");
|
|
628
|
+
return 2;
|
|
629
|
+
}
|
|
186
630
|
if (!parsed.researchId) {
|
|
187
631
|
error("review: missing <research-id>");
|
|
188
632
|
printHelp(error);
|
|
@@ -309,6 +753,22 @@ export async function runReview(args, options = {}) {
|
|
|
309
753
|
return 1;
|
|
310
754
|
}
|
|
311
755
|
progress.phase(`Loaded template: ${templateId}.md`);
|
|
756
|
+
// Host-agent emit (#254 / ADR-0019): same research / item / template
|
|
757
|
+
// resolution and pre-review guards as the spawn path (reviewedAt===null,
|
|
758
|
+
// linked items researched), but print the payload instead of spawning. No
|
|
759
|
+
// snapshot / rollback is needed because nothing is written here — the host
|
|
760
|
+
// session does the in-place edit and finalizes via `radar review --commit`.
|
|
761
|
+
if (parsed.emitPayload) {
|
|
762
|
+
log(renderReviewPayloadBlock({
|
|
763
|
+
agent,
|
|
764
|
+
templateId,
|
|
765
|
+
templateBody: template.body,
|
|
766
|
+
researchPath,
|
|
767
|
+
researchFrontmatter: preFm,
|
|
768
|
+
researchBody,
|
|
769
|
+
}));
|
|
770
|
+
return 0;
|
|
771
|
+
}
|
|
312
772
|
// Snapshot for atomic rollback.
|
|
313
773
|
const itemsDir = join(cwd, "items");
|
|
314
774
|
const snapshot = {
|
package/dist/cli/review.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/cli/review.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/cli/review.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAEtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AAGxB;;;;;GAKG;AACH,MAAM,aAAa,GAAG;IACpB,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAW;YAC5C,SAAS,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;SACjD;KACF;CACF,CAAC;AAoDF,SAAS,SAAS,CAAC,IAAc;IAC/B,MAAM,GAAG,GAAe,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC;YACjC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;YAChB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC;YACjB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACtB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,YAAY,EAAE,CAAC;YACvB,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACzB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,UAAU,EAAE,CAAC;YACrB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACvB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,aAAa,EAAE,CAAC;YACxB,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACzB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,eAAe,EAAE,CAAC;YAC1B,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3B,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,gBAAgB,EAAE,CAAC;YAC3B,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;YACvB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,UAAU,EAAE,CAAC;YACrB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACvB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACpB,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC;YACnB,SAAS;QACX,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,YAAY,CAAU,CAAC;AAGrE,SAAS,SAAS,CAAC,GAAwB;IACzC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACd,GAAG,CAAC,8EAA8E,CAAC,CAAC;IACpF,GAAG,CACD,kGAAkG,CACnG,CAAC;IACF,GAAG,CAAC,8EAA8E,CAAC,CAAC;IACpF,GAAG,CAAC,gCAAgC,CAAC,CAAC;IACtC,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,YAAY,CAAC,CAAC;IAClB,GAAG,CAAC,gFAAgF,CAAC,CAAC;IACtF,GAAG,CAAC,4EAA4E,CAAC,CAAC;IAClF,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,UAAU,CAAC,CAAC;IAChB,GAAG,CACD,+FAA+F,CAChG,CAAC;IACF,GAAG,CAAC,yEAAyE,CAAC,CAAC;IAC/E,GAAG,CAAC,6EAA6E,CAAC,CAAC;IACnF,GAAG,CAAC,8EAA8E,CAAC,CAAC;IACpF,GAAG,CAAC,gFAAgF,CAAC,CAAC;IACtF,GAAG,CAAC,kEAAkE,CAAC,CAAC;IACxE,GAAG,CAAC,8EAA8E,CAAC,CAAC;IACpF,GAAG,CAAC,kEAAkE,CAAC,CAAC;IACxE,GAAG,CACD,8EAA8E,8BAA8B,IAAI,CACjH,CAAC;IACF,GAAG,CAAC,+EAA+E,CAAC,CAAC;IACrF,GAAG,CAAC,gFAAgF,CAAC,CAAC;IACtF,GAAG,CAAC,iFAAiF,CAAC,CAAC;IACvF,GAAG,CAAC,gFAAgF,CAAC,CAAC;IACtF,GAAG,CAAC,iFAAiF,CAAC,CAAC;IACvF,GAAG,CAAC,wEAAwE,CAAC,CAAC;IAC9E,GAAG,CAAC,4EAA4E,CAAC,CAAC;IAClF,GAAG,CAAC,6CAA6C,CAAC,CAAC;IACnD,GAAG,CAAC,6EAA6E,CAAC,CAAC;IACnF,GAAG,CAAC,yEAAyE,CAAC,CAAC;IAC/E,GAAG,CAAC,4EAA4E,CAAC,CAAC;IAClF,GAAG,CAAC,6EAA6E,CAAC,CAAC;IACnF,GAAG,CAAC,mEAAmE,CAAC,CAAC;IACzE,GAAG,CAAC,4FAA4F,CAAC,CAAC;IAClG,GAAG,CACD,6FAA6F,CAC9F,CAAC;IACF,GAAG,CAAC,kFAAkF,CAAC,CAAC;IACxF,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,iEAAiE,CAAC,CAAC;IACvE,GAAG,CAAC,qEAAqE,CAAC,CAAC;IAC3E,GAAG,CAAC,wEAAwE,CAAC,CAAC;IAC9E,GAAG,CAAC,qEAAqE,CAAC,CAAC;AAC7E,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,CAAS;IACjC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,mBAAmB,CAAC,GAAW,EAAE,UAAkB;IAC1D,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IAC7E,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,2BAA2B,UAAU,GAAG,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,oBAAoB,CAAC,GAAW,EAAE,OAAiB;IAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAW,EAAE,CAAC;IACvB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAChD,IAAI,KAAK;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAiBD;;;;GAIG;AACH,KAAK,UAAU,eAAe,CAAC,QAAwB;IACrD,MAAM,MAAM,GAAY,EAAE,CAAC;IAC3B,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,IAAI,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,IAAI,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,KAAK,UAAU,eAAe,CAAC,MAM9B;IACC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IACzD,MAAM,KAAK,GAAG,MAAM,uBAAuB,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IACzE,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QACrB,KAAK,CAAC,WAAW,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAChC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC;IAEpC,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QACtC,KAAK,CAAC,oCAAoC,YAAY,EAAE,CAAC,CAAC;QAC1D,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,yCAAyC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7F,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,WAAoB,CAAC;IACzB,IAAI,CAAC;QACH,WAAW,GAAG,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC;IACjD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,wCAAwC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5F,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAClE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtB,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAChF,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC1C,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAExC,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,+CAA+C;IAC/C,IAAI,EAAE,CAAC,UAAU,KAAK,IAAI,IAAI,EAAE,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QACrD,KAAK,CACH,4BAA4B,EAAE,CAAC,EAAE,gCAAgC,EAAE,CAAC,UAAU,gBAAgB,EAAE,CAAC,UAAU,6DAA6D,CACzK,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,0EAA0E;IAC1E,gEAAgE;IAChE,iEAAiE;IACjE,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,WAAW,GAAW,EAAE,CAAC;IAC/B,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,CACH,uDAAuD,EAAE,iBAAiB,EAAE,eAAe,GAAG,GAAG,CAClG,CAAC;YACF,OAAO,CAAC,CAAC;QACX,CAAC;QACD,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED,6EAA6E;IAC7E,uEAAuE;IACvE,yEAAyE;IACzE,2EAA2E;IAC3E,qCAAqC;IACrC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAsB,CAAC;IAClD,MAAM,OAAO,GAAW,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC/C,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC;YAC/C,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,UAAwB,EAAE,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,yCAAyC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7F,KAAK,CAAC,kCAAkC,YAAY,GAAG,CAAC,CAAC;QACzD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,GAAG,CAAC,iBAAiB,YAAY,EAAE,CAAC,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACrD,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,aAAa,EAAE,SAAS,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;YACvF,GAAG,CAAC,iBAAiB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,0BAA0B,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAuB,EAAE,KAA0B;IAC7E,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,8BAA8B,CAAC;IAC7D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,gCAAgC,GAAG,+BAA+B,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,KAAK,CAAC,gCAAgC,GAAG,iBAAiB,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAuB;IACnD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IACtD,OAAO;QACL,GAAG,IAAI,GAAG,CACR,GAAG;aACA,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;aAClC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAC/B;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,uBAAuB,CACpC,GAAW;IAEX,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC1C,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAChD,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,UAAU,GAA6C,EAAE,CAAC;IAChE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QACrC,sEAAsE;QACtE,mEAAmE;QACnE,sCAAsC;QACtC,IAAI,IAAY,CAAC;QACjB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,EAAW,CAAC;QAChB,IAAI,CAAC;YACH,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,iEAAiE;YACjE,oEAAoE;YACpE,oCAAoC;YACpC,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,SAAS;QAC9B,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI;YAAE,SAAS;QAC9C,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACvB,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS;YAAE,OAAO,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,KAAK,UAAU,cAAc,CAC3B,MAAkB,EAClB,GAAW,EACX,OAA6B,EAC7B,GAAwB,EACxB,IAAyB,EACzB,KAA0B,EAC1B,QAA0B;IAE1B,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACpC,KAAK,CAAC,mEAAmE,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC;QAChG,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,IAAI,YAAY,CAAC;IAChD,IAAI,CAAE,6BAAmD,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9E,KAAK,CACH,6BAA6B,SAAS,gBAAgB,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CACnG,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,MAAM,GAAsB,SAA8B,CAAC;IAEjE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5D,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,CAAC,CAAC;IAChC,MAAM,UAAU,GAAG,oBAAoB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE3D,oEAAoE;IACpE,uEAAuE;IACvE,+DAA+D;IAC/D,qDAAqD;IACrD,IAAI,aAAkC,CAAC;IACvC,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,KAAK,CACH,4BAA4B,MAAM,CAAC,KAAK,8DAA8D,CACvG,CAAC;YACF,OAAO,CAAC,CAAC;QACX,CAAC;QACD,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC;IACnC,CAAC;IACD,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;QAC1C,KAAK,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/F,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,gBAAgB,EAAE,CAAC;YAClC,KAAK,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC,GAAG,CAAC,CAAC;IACtD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,GAAG,CAAC,0DAA0D,CAAC,CAAC;QAChE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,uEAAuE;IACvE,kEAAkE;IAClE,wEAAwE;IACxE,6BAA6B;IAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAe,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAExE,MAAM,eAAe,GAAG,UAAU,CAAC;IAEnC,MAAM,OAAO,GAAc,EAAE,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,sEAAsE;QACtE,+DAA+D;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,IAAI,IAAY,CAAC;QACjB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,MAAM,EAAE,GAAG,yBAAyB,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC;QACjF,IAAI,CAAC,EAAE,CAAC,OAAO;YAAE,SAAS;QAC1B,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5F,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAClC,wEAAwE;QACxE,sEAAsE;QACtE,mEAAmE;QACnE,sBAAsB;QACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;YAAE,SAAS;QACxD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC/B,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;gBACxE,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,MAAM;gBAAE,SAAS;QACxB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,GAAG,CACD,sDAAsD,MAAM,GAC1D,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAC7D,GAAG,CACJ,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,QAAQ,GAAG,OAAO,CAAC;IACvB,IAAI,OAAO,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;QAC1C,IAAI,CACF,uBAAuB,QAAQ,0BAA0B,OAAO,qCAAqC,OAAO,CAAC,MAAM,GAAG,CACvH,CAAC;QACF,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,GAAG,CACD,gCAAgC,QAAQ,CAAC,MAAM,6BAA6B,MAAM,GAChF,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAC7D,WAAW,KAAK,SAAS,QAAQ,GAAG,CACrC,CAAC;IAEF,sEAAsE;IACtE,mEAAmE;IACnE,yDAAyD;IACzD,MAAM,YAAY,GAAyB;QACzC,GAAG;QACH,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE;QACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,QAAQ;KACvC,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACnD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACtD,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,KAAK,CAAC,uCAAuC,CAAC,CAAC,UAAU,WAAW,IAAI,GAAG,CAAC,CAAC;YAC7E,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,GAAG,CAAC,6BAA6B,QAAQ,CAAC,MAAM,mBAAmB,CAAC,CAAC;IACrE,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,IAAc,EACd,UAAgC,EAAE;IAElC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAErE,sEAAsE;IACtE,0EAA0E;IAC1E,iCAAiC;IACjC,IAAI,aAAoD,CAAC;IACzD,IAAI,CAAC;QACH,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,iBAAiB,EAAE,CAAC;YACnC,KAAK,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;IAEnF,IAAI,MAAkB,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,WAAW,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,SAAS,CAAC,GAAG,CAAC,CAAC;QACf,OAAO,CAAC,CAAC;IACX,CAAC;IACD,uEAAuE;IACvE,2EAA2E;IAC3E,6EAA6E;IAC7E,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACvD,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,KAAK,CAAC,sDAAsD,CAAC,CAAC;YAC9D,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACpC,KAAK,CACH,uEAAuE,MAAM,CAAC,UAAU,IAAI,CAC7F,CAAC;YACF,OAAO,CAAC,CAAC;QACX,CAAC;QACD,OAAO,eAAe,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACvC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAC7D,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,OAAO,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;IACD,oEAAoE;IACpE,wEAAwE;IACxE,2BAA2B;IAC3B,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAC3C,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC9C,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACpC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAChD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACvB,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACvC,SAAS,CAAC,KAAK,CAAC,CAAC;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,iDAAiD;IACjD,4EAA4E;IAC5E,yEAAyE;IACzE,0EAA0E;IAC1E,gEAAgE;IAChE,IAAI,aAAkC,CAAC;IACvC,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,KAAK,CACH,4BAA4B,MAAM,CAAC,KAAK,8DAA8D,CACvG,CAAC;YACF,OAAO,CAAC,CAAC;QACX,CAAC;QACD,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC;IACnC,CAAC;IACD,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;QAC1C,KAAK,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/F,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,gBAAgB,EAAE,CAAC;YAClC,KAAK,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IACD,yEAAyE;IACzE,wEAAwE;IACxE,6BAA6B;IAE7B,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC;IAEhD,yBAAyB;IACzB,IAAI,YAAoB,CAAC;IACzB,IAAI,CAAC;QACH,YAAY,GAAG,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,WAAW,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QACtC,KAAK,CAAC,oCAAoC,YAAY,EAAE,CAAC,CAAC;QAC1D,OAAO,CAAC,CAAC;IACX,CAAC;IAED,iDAAiD;IACjD,IAAI,YAAoB,CAAC;IACzB,IAAI,CAAC;QACH,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,yCAAyC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7F,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,cAAuB,CAAC;IAC5B,IAAI,CAAC;QACH,cAAc,GAAG,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC;IAC5D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,wCAAwC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5F,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,SAAS,GAAG,yBAAyB,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACtE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACvB,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAChF,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3C,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC;IAE7B,2EAA2E;IAC3E,wEAAwE;IACxE,sCAAsC;IACtC,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAC3D,KAAK,CACH,qBAAqB,KAAK,CAAC,EAAE,qCAAqC,KAAK,CAAC,UAAU,gBAAgB,KAAK,CAAC,UAAU,GAAG,CACtH,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,wBAAwB;IACxB,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACnE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,KAAK,CACH,iDAAiD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,EAAE,EAAE,CACvG,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7D,KAAK,CACH,WAAW,OAAO,CAAC,MAAM,8BAA8B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,EAAE,GAAG,CACxG,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC;IAC1E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CACH,iFAAiF,YAAY;aAC1F,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;aACjC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,uEAAuE;IACvE,0EAA0E;IAC1E,uEAAuE;IACvE,mDAAmD;IACnD,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;QACjC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,IAAI,CACF,iBAAiB,MAAM,CAAC,EAAE,SAAS,MAAM,CAAC,cAAc,CAAC,MAAM,uBAAuB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,gFAAgF,CACvM,CAAC;QACJ,CAAC;IACH,CAAC;IAED,mEAAmE;IACnE,0EAA0E;IAC1E,kDAAkD;IAClD,QAAQ,CAAC,KAAK,CACZ,WAAW,CAAC,MAAM,KAAK,CAAC;QACtB,CAAC,CAAC,gBAAgB,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;QACrC,CAAC,CAAC,UAAU,WAAW,CAAC,MAAM,QAAQ,EACxC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACxC,CAAC;IAEF,iBAAiB;IACjB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC5C,IAAI,QAA0B,CAAC;IAC/B,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,WAAW,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,CAAC;IACX,CAAC;IACD,QAAQ,CAAC,KAAK,CAAC,oBAAoB,UAAU,KAAK,CAAC,CAAC;IAEpD,qEAAqE;IACrE,yEAAyE;IACzE,0EAA0E;IAC1E,2EAA2E;IAC3E,4EAA4E;IAC5E,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,GAAG,CACD,wBAAwB,CAAC;YACvB,KAAK;YACL,UAAU;YACV,YAAY,EAAE,QAAQ,CAAC,IAAI;YAC3B,YAAY;YACZ,mBAAmB,EAAE,KAAK;YAC1B,YAAY;SACb,CAAC,CACH,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,gCAAgC;IAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAmB;QAC/B,YAAY;QACZ,YAAY;QACZ,QAAQ;QACR,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;KAC1C,CAAC;IAEF,GAAG,CAAC,oBAAoB,KAAK,0BAA0B,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;IAEpE,sEAAsE;IACtE,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,CAAC,YAAY,KAAK,EAAE,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;IACnD,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAChC,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,kBAAkB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE/E,kBAAkB;IAClB,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,MAAM,CAAC;YACnB,KAAK;YACL,UAAU;YACV,YAAY,EAAE,QAAQ,CAAC,IAAI;YAC3B,YAAY;YACZ,mBAAmB,EAAE,KAAK;YAC1B,YAAY;YACZ,GAAG;YACH,UAAU,EAAE,0BAA0B,CAAC,QAAQ,CAAC;SACjD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,KAAK,CAAC,2BAA2B,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/E,uEAAuE;QACvE,0DAA0D;QAC1D,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;gBAC/B,KAAK,CAAC,sCAAsC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,KAAK,CACH,+DAA+D,YAAY,aAAa,CACzF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,uEAAuE,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,sEAAsE;IACtE,0EAA0E;IAC1E,uEAAuE;IACvE,OAAO,CAAC,IAAI,EAAE,CAAC;IACf,QAAQ,CAAC,OAAO,CAAC,0BAA0B,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC,CAAC;IAE5E,mDAAmD;IACnD,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CACH,uDAAuD,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACpG,CAAC;QACF,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,eAAwB,CAAC;IAC7B,IAAI,CAAC;QACH,eAAe,GAAG,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC;IACzD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CACH,sDAAsD,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACnG,CAAC;QACF,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,UAAU,GAAG,yBAAyB,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IACxE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,KAAK,CAAC,4EAA4E,CAAC,CAAC;QACpF,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC5C,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;IAC/B,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAC/B,KAAK,CAAC,yEAAyE,CAAC,CAAC;QACjF,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QAChC,KAAK,CAAC,uCAAuC,MAAM,CAAC,UAAU,gBAAgB,KAAK,GAAG,CAAC,CAAC;QACxF,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,uEAAuE;IACvE,4EAA4E;IAC5E,mEAAmE;IACnE,yEAAyE;IACzE,iDAAiD;IACjD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,EAAE,OAAO,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3E,IAAI,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,KAAK,OAAO,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;IAC1F,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU;QACxC,KAAK,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,UAAU,OAAO,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;IACzE,IAAI,MAAM,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;QACtC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,SAAS,OAAO,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;IACtE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;QAClE,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpF,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU;QACxC,KAAK,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,UAAU,OAAO,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;IACzE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,yDAAyD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnF,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAExC,4EAA4E;IAC5E,sEAAsE;IACtE,0BAA0B;IAC1B,MAAM,YAAY,GAAW,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;IACpF,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,yCAAyC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7F,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;gBAC/B,KAAK,CAAC,sCAAsC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,KAAK,CACH,+DAA+D,YAAY,aAAa,CACzF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,+DAA+D,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,GAAG,CAAC,mBAAmB,YAAY,eAAe,MAAM,CAAC,UAAU,eAAe,KAAK,EAAE,CAAC,CAAC;IAC3F,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,uEAAuE;QACvE,uEAAuE;QACvE,0CAA0C;QAC1C,QAAQ,CAAC,KAAK,CAAC,+BAA+B,EAAE,SAAS,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAC1F,GAAG,CAAC,iBAAiB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,0BAA0B,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAY;IACpC,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,mEAAmE;IAC5E,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC;CAC/B,CAAC"}
|
package/dist/cli/source.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/cli/source.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAYxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;GASG;AACH,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,wDAAwD;AACxD,MAAM,WAAW,oBAAoB;IACnC,qEAAqE;IACrE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/cli/source.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAYxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;GASG;AACH,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,wDAAwD;AACxD,MAAM,WAAW,oBAAoB;IACnC,qEAAqE;IACrE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAkeD;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAC7B,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,MAAM,CAAC,CAgLjB;AAmKD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,MAAM,CAAC,CA2FjB;AA4BD;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,MAAM,CAAC,CAmCjB;AAaD;;;;;;;;;;;;GAYG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,MAAM,CAAC,CAiKjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,MAAM,CAAC,CAkEjB;AAED;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,MAAM,CAAC,CAyBjB;AAED,eAAO,MAAM,aAAa,EAAE,OAI3B,CAAC"}
|