@wabery/cli 0.3.0 → 0.4.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 +78 -12
- package/dist/api-client.d.ts +7 -0
- package/dist/api-client.d.ts.map +1 -1
- package/dist/api-client.js +24 -12
- package/dist/api-client.js.map +1 -1
- package/dist/cli.js +350 -23
- package/dist/cli.js.map +1 -1
- package/dist/config-example.d.ts +4 -0
- package/dist/config-example.d.ts.map +1 -1
- package/dist/config-example.js +6 -0
- package/dist/config-example.js.map +1 -1
- package/dist/diagnostics.js +1 -1
- package/dist/local-config.d.ts +86 -0
- package/dist/local-config.d.ts.map +1 -1
- package/dist/local-config.js +259 -15
- package/dist/local-config.js.map +1 -1
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +43 -11
- package/dist/mcp-server.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -8,11 +8,15 @@ import { createInterface } from "node:readline";
|
|
|
8
8
|
import { WaberyApiClient, WaberyApiError } from "./api-client.js";
|
|
9
9
|
import { createExampleConfig } from "./config-example.js";
|
|
10
10
|
import { checkWaberyConnection } from "./diagnostics.js";
|
|
11
|
-
import { getConfigPath,
|
|
11
|
+
import { clearCredentials, findCredentialByProject, getConfigPath, readCredentials, removeCredential, repoConfigWritePath, resolveProjectId, upsertCredential, writeRepoProjectId, } from "./local-config.js";
|
|
12
12
|
import { runMcpServer } from "./mcp-server.js";
|
|
13
13
|
async function main() {
|
|
14
14
|
const parsed = parseArgs(process.argv.slice(2));
|
|
15
15
|
const [command, subcommand, ...rest] = parsed.positionals;
|
|
16
|
+
// Global output shaping for scripting: `--id-only` or `--field <dot.path>`
|
|
17
|
+
// print a single raw value instead of JSON (no jq needed).
|
|
18
|
+
outputIdOnly = booleanFlag(parsed.flags, "id-only") === true;
|
|
19
|
+
outputField = stringFlag(parsed.flags, "field");
|
|
16
20
|
if (!command ||
|
|
17
21
|
command === "help" ||
|
|
18
22
|
command === "--help" ||
|
|
@@ -29,6 +33,14 @@ async function main() {
|
|
|
29
33
|
await handleLogin(parsed.flags);
|
|
30
34
|
return;
|
|
31
35
|
}
|
|
36
|
+
if (command === "logout") {
|
|
37
|
+
await handleLogout(parsed.flags);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
if (command === "use") {
|
|
41
|
+
await handleUse(subcommand ?? rest[0]);
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
32
44
|
if (command === "mcp-config") {
|
|
33
45
|
await handleMcpConfig(subcommand, parsed.flags);
|
|
34
46
|
return;
|
|
@@ -50,11 +62,20 @@ async function main() {
|
|
|
50
62
|
apiKey: stringFlag(parsed.flags, "api-key"),
|
|
51
63
|
baseUrl: stringFlag(parsed.flags, "base-url"),
|
|
52
64
|
apiVersion: stringFlag(parsed.flags, "api-version"),
|
|
65
|
+
projectId: stringFlag(parsed.flags, "project-id"),
|
|
53
66
|
});
|
|
54
67
|
if (command === "mcp") {
|
|
55
68
|
await runMcpServer(client);
|
|
56
69
|
return;
|
|
57
70
|
}
|
|
71
|
+
if (command === "whoami") {
|
|
72
|
+
await handleWhoami(client);
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
if (command === "init") {
|
|
76
|
+
await handleInit(client, parsed.flags);
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
58
79
|
if (command === "doctor" || command === "check") {
|
|
59
80
|
await printJson(await checkWaberyConnection(client));
|
|
60
81
|
return;
|
|
@@ -68,7 +89,7 @@ async function main() {
|
|
|
68
89
|
return;
|
|
69
90
|
}
|
|
70
91
|
if (command === "projects") {
|
|
71
|
-
await handleProjects(client, subcommand, parsed.flags);
|
|
92
|
+
await handleProjects(client, subcommand, rest, parsed.flags);
|
|
72
93
|
return;
|
|
73
94
|
}
|
|
74
95
|
if (command === "channels" && subcommand === "list") {
|
|
@@ -139,12 +160,13 @@ async function handleConfig(client, subcommand, rest, flags) {
|
|
|
139
160
|
throw new Error("Usage: wabery config schema|export|example|init|validate|diff|apply [wabery.config.json]");
|
|
140
161
|
}
|
|
141
162
|
async function handleLocalConfig(subcommand, rest, flags) {
|
|
163
|
+
const resolvedProjectId = stringFlag(flags, "project-id") ?? resolveProjectId({}).projectId;
|
|
142
164
|
if (subcommand === "example") {
|
|
143
|
-
await printJson(createExampleConfig(
|
|
165
|
+
await printJson(createExampleConfig(resolvedProjectId));
|
|
144
166
|
return;
|
|
145
167
|
}
|
|
146
168
|
const outputPath = rest[0] ?? stringFlag(flags, "file") ?? "wabery.config.json";
|
|
147
|
-
const config = createExampleConfig(
|
|
169
|
+
const config = createExampleConfig(resolvedProjectId);
|
|
148
170
|
await writeFile(outputPath, `${JSON.stringify(config, null, 2)}\n`, {
|
|
149
171
|
flag: booleanFlag(flags, "force") ? "w" : "wx",
|
|
150
172
|
});
|
|
@@ -245,8 +267,98 @@ async function handleLogin(flags) {
|
|
|
245
267
|
if (!apiKey.startsWith("wab_live_")) {
|
|
246
268
|
throw new Error("That does not look like a Wabery CLI key (it should start with wab_live_). Run `wabery login` again.");
|
|
247
269
|
}
|
|
248
|
-
|
|
249
|
-
|
|
270
|
+
// Identify which project this key is scoped to via /v1/me, then store the
|
|
271
|
+
// credential keyed by project so multiple projects can coexist locally.
|
|
272
|
+
const client = new WaberyApiClient({ apiKey, baseUrl });
|
|
273
|
+
const identity = (await client.get("/me"));
|
|
274
|
+
const projectId = identity.project?.id;
|
|
275
|
+
if (!projectId) {
|
|
276
|
+
throw new Error("This key is not scoped to a project. Create a key from a project's settings in the Wabery dashboard.");
|
|
277
|
+
}
|
|
278
|
+
const configPath = upsertCredential({
|
|
279
|
+
projectId,
|
|
280
|
+
projectName: identity.project?.name,
|
|
281
|
+
organizationId: identity.organization?.id,
|
|
282
|
+
apiKey,
|
|
283
|
+
baseUrl,
|
|
284
|
+
});
|
|
285
|
+
let boundLine = "";
|
|
286
|
+
if (!resolveProjectId({}).projectId) {
|
|
287
|
+
// No repo binding yet — bind this directory to the project we logged into.
|
|
288
|
+
const repoPath = writeRepoProjectId(repoConfigWritePath(), projectId);
|
|
289
|
+
boundLine = `Bound this directory to project ${projectId} (${repoPath}).\n`;
|
|
290
|
+
}
|
|
291
|
+
await printText(`\nLogged in to project ${identity.project?.name ?? projectId} (${projectId}).\nCredentials saved to ${configPath}\n${boundLine}`);
|
|
292
|
+
}
|
|
293
|
+
/** Clear stored credentials: one project, or all of them with --all. */
|
|
294
|
+
async function handleLogout(flags) {
|
|
295
|
+
if (booleanFlag(flags, "all")) {
|
|
296
|
+
clearCredentials();
|
|
297
|
+
await printText("Logged out. Removed all stored Wabery credentials.\n");
|
|
298
|
+
return;
|
|
299
|
+
}
|
|
300
|
+
const target = stringFlag(flags, "project") ?? stringFlag(flags, "project-id");
|
|
301
|
+
const credentials = readCredentials();
|
|
302
|
+
let projectId = target;
|
|
303
|
+
if (!projectId) {
|
|
304
|
+
// Default to the project resolved for the current directory.
|
|
305
|
+
projectId = resolveProjectId({}).projectId;
|
|
306
|
+
}
|
|
307
|
+
if (!projectId && credentials.length === 1) {
|
|
308
|
+
projectId = credentials[0].projectId;
|
|
309
|
+
}
|
|
310
|
+
if (!projectId) {
|
|
311
|
+
throw new Error("Specify which project to log out of: `wabery logout --project <id|name>`, or `wabery logout --all`.");
|
|
312
|
+
}
|
|
313
|
+
// Allow matching by name too.
|
|
314
|
+
const match = credentials.find((c) => c.projectId === projectId) ??
|
|
315
|
+
credentials.find((c) => c.projectName?.toLowerCase() === projectId?.toLowerCase());
|
|
316
|
+
if (!match) {
|
|
317
|
+
throw new Error(`No stored credential for "${projectId}".`);
|
|
318
|
+
}
|
|
319
|
+
removeCredential(match.projectId);
|
|
320
|
+
await printText(`Logged out of project ${match.projectName ?? match.projectId} (${match.projectId}).\n`);
|
|
321
|
+
}
|
|
322
|
+
/**
|
|
323
|
+
* Bind the current repo to one of the projects you've logged into, by writing
|
|
324
|
+
* a secret-free `.wabery.json`. Resolves a project id or (case-insensitive)
|
|
325
|
+
* name against the locally stored credentials.
|
|
326
|
+
*/
|
|
327
|
+
async function handleUse(query) {
|
|
328
|
+
if (!query) {
|
|
329
|
+
throw new Error("Usage: wabery use <project-id-or-name>");
|
|
330
|
+
}
|
|
331
|
+
const credentials = readCredentials();
|
|
332
|
+
if (credentials.length === 0) {
|
|
333
|
+
throw new Error("No projects are logged in yet. Run `wabery login` first.");
|
|
334
|
+
}
|
|
335
|
+
const match = credentials.find((c) => c.projectId === query) ??
|
|
336
|
+
credentials.find((c) => c.projectName?.toLowerCase() === query.toLowerCase());
|
|
337
|
+
if (!match) {
|
|
338
|
+
const available = credentials
|
|
339
|
+
.map((c) => ` - ${c.projectName ?? "(unnamed)"} (${c.projectId})`)
|
|
340
|
+
.join("\n");
|
|
341
|
+
throw new Error(`No logged-in project matches "${query}". Available:\n${available}\n\nRun \`wabery login\` to add another project.`);
|
|
342
|
+
}
|
|
343
|
+
const path = writeRepoProjectId(repoConfigWritePath(), match.projectId);
|
|
344
|
+
await printJson({
|
|
345
|
+
object: "repo_default",
|
|
346
|
+
path,
|
|
347
|
+
project_id: match.projectId,
|
|
348
|
+
project_name: match.projectName ?? null,
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
/** Show the active key (masked), org, and bound project + how it resolved. */
|
|
352
|
+
async function handleWhoami(client) {
|
|
353
|
+
const identity = (await client.get("/me"));
|
|
354
|
+
const resolved = resolveProjectId({});
|
|
355
|
+
await printJson({
|
|
356
|
+
...identity,
|
|
357
|
+
resolution: {
|
|
358
|
+
project_id: client.projectId ?? null,
|
|
359
|
+
source: resolved.source,
|
|
360
|
+
},
|
|
361
|
+
});
|
|
250
362
|
}
|
|
251
363
|
/** Read a single line from the terminal, echoing what the user types. */
|
|
252
364
|
function promptLine(question) {
|
|
@@ -281,22 +393,163 @@ function openUrl(url) {
|
|
|
281
393
|
function normalizeAppBaseUrl(value) {
|
|
282
394
|
return value.replace(/\/api\/v1\/?$/, "").replace(/\/+$/, "");
|
|
283
395
|
}
|
|
284
|
-
async function handleProjects(client, subcommand, flags) {
|
|
396
|
+
async function handleProjects(client, subcommand, rest, flags) {
|
|
285
397
|
if (subcommand === "list") {
|
|
286
398
|
await printJson(await client.get("/projects"));
|
|
287
399
|
return;
|
|
288
400
|
}
|
|
289
401
|
if (subcommand === "create") {
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
402
|
+
throw new Error("API keys are scoped to one project and cannot create projects. Create a project in the Wabery dashboard, then run `wabery login` for that project.");
|
|
403
|
+
}
|
|
404
|
+
if (subcommand === "ensure") {
|
|
405
|
+
// API keys are scoped to one project. Ensure configures that scoped
|
|
406
|
+
// project idempotently; it does not create sibling projects.
|
|
407
|
+
const name = requiredStringFlag(flags, "name");
|
|
408
|
+
await printJson(await ensureProject(client, name, flags));
|
|
409
|
+
return;
|
|
410
|
+
}
|
|
411
|
+
const projectId = rest[0] ?? stringFlag(flags, "project-id");
|
|
412
|
+
if (subcommand === "get") {
|
|
413
|
+
await printJson(await client.get(`/projects/${requiredValue(projectId, "project-id")}`));
|
|
414
|
+
return;
|
|
415
|
+
}
|
|
416
|
+
if (subcommand === "update") {
|
|
417
|
+
const body = {};
|
|
418
|
+
const name = stringFlag(flags, "name");
|
|
419
|
+
if (name !== undefined)
|
|
420
|
+
body.name = name;
|
|
421
|
+
const description = stringFlag(flags, "description");
|
|
422
|
+
if (description !== undefined)
|
|
423
|
+
body.description = description;
|
|
424
|
+
const webhookUrl = stringFlag(flags, "webhook-url");
|
|
425
|
+
if (webhookUrl !== undefined)
|
|
426
|
+
body.webhook_url = webhookUrl;
|
|
427
|
+
const signing = booleanFlag(flags, "webhook-signing-enabled");
|
|
428
|
+
if (signing !== undefined)
|
|
429
|
+
body.webhook_signing_enabled = signing;
|
|
430
|
+
const secret = stringFlag(flags, "webhook-secret");
|
|
431
|
+
if (secret !== undefined)
|
|
432
|
+
body.webhook_secret = secret;
|
|
433
|
+
await printJson(await client.patch(`/projects/${requiredValue(projectId, "project-id")}`, body));
|
|
296
434
|
return;
|
|
297
435
|
}
|
|
298
|
-
|
|
436
|
+
if (subcommand === "rotate-secret") {
|
|
437
|
+
const secret = stringFlag(flags, "webhook-secret");
|
|
438
|
+
await printJson(await client.post(`/projects/${requiredValue(projectId, "project-id")}/rotate-webhook-secret`, secret ? { webhook_secret: secret } : undefined));
|
|
439
|
+
return;
|
|
440
|
+
}
|
|
441
|
+
throw new Error("Usage: wabery projects list|get|ensure|update|rotate-secret [<project_id>] [--name --description --webhook-url --webhook-signing-enabled --webhook-secret]");
|
|
442
|
+
}
|
|
443
|
+
/** Configure the project visible to this API key, then return it. Idempotent. */
|
|
444
|
+
async function ensureProject(client, name, flags) {
|
|
445
|
+
const list = (await client.get("/projects"));
|
|
446
|
+
const existing = list.data?.[0];
|
|
447
|
+
const id = existing?.project_id ?? existing?.id;
|
|
448
|
+
if (!existing || !id) {
|
|
449
|
+
throw new Error("No project is visible to this API key. Create a project in the Wabery dashboard, then run `wabery login` again.");
|
|
450
|
+
}
|
|
451
|
+
const webhookBody = {};
|
|
452
|
+
if (name !== undefined && existing.name !== name)
|
|
453
|
+
webhookBody.name = name;
|
|
454
|
+
const description = stringFlag(flags, "description");
|
|
455
|
+
if (description !== undefined)
|
|
456
|
+
webhookBody.description = description;
|
|
457
|
+
const webhookUrl = stringFlag(flags, "webhook-url");
|
|
458
|
+
if (webhookUrl !== undefined)
|
|
459
|
+
webhookBody.webhook_url = webhookUrl;
|
|
460
|
+
const signing = booleanFlag(flags, "webhook-signing-enabled");
|
|
461
|
+
if (signing !== undefined)
|
|
462
|
+
webhookBody.webhook_signing_enabled = signing;
|
|
463
|
+
const secret = stringFlag(flags, "webhook-secret");
|
|
464
|
+
if (secret !== undefined)
|
|
465
|
+
webhookBody.webhook_secret = secret;
|
|
466
|
+
if (Object.keys(webhookBody).length > 0) {
|
|
467
|
+
return client.patch(`/projects/${id}`, webhookBody);
|
|
468
|
+
}
|
|
469
|
+
return client.get(`/projects/${id}`);
|
|
470
|
+
}
|
|
471
|
+
/**
|
|
472
|
+
* Scaffold a runnable Wabery setup in the current directory:
|
|
473
|
+
* ensure a project, then write wabery.config.json, a .env block, and a webhook
|
|
474
|
+
* handler stub. Non-destructive — existing files are left untouched unless --force.
|
|
475
|
+
*/
|
|
476
|
+
async function handleInit(client, flags) {
|
|
477
|
+
const name = stringFlag(flags, "name");
|
|
478
|
+
const force = booleanFlag(flags, "force") === true;
|
|
479
|
+
const ensured = (await ensureProject(client, name, flags));
|
|
480
|
+
const projectId = ensured.project_id ?? ensured.id;
|
|
481
|
+
if (!projectId)
|
|
482
|
+
throw new Error("Could not resolve a project id.");
|
|
483
|
+
// Single GET reveals the webhook secret + url for the env block.
|
|
484
|
+
const project = (await client.get(`/projects/${projectId}`));
|
|
485
|
+
const channelId = project.channel_id ?? project.enrollment_channel?.id ?? undefined;
|
|
486
|
+
const cred = findCredentialByProject(projectId);
|
|
487
|
+
const baseUrl = stringFlag(flags, "base-url") ??
|
|
488
|
+
process.env.WABERY_BASE_URL ??
|
|
489
|
+
cred?.baseUrl ??
|
|
490
|
+
"https://api.wabery.com/v1";
|
|
491
|
+
const apiKey = stringFlag(flags, "api-key") ??
|
|
492
|
+
process.env.WABERY_API_KEY ??
|
|
493
|
+
cred?.apiKey ??
|
|
494
|
+
"wab_live_...";
|
|
495
|
+
const written = [];
|
|
496
|
+
const skipped = [];
|
|
497
|
+
const writeFlag = force ? "w" : "wx";
|
|
498
|
+
const tryWrite = async (path, content) => {
|
|
499
|
+
try {
|
|
500
|
+
await writeFile(path, content, { flag: writeFlag });
|
|
501
|
+
written.push(path);
|
|
502
|
+
}
|
|
503
|
+
catch (error) {
|
|
504
|
+
if (error.code === "EEXIST") {
|
|
505
|
+
skipped.push(path);
|
|
506
|
+
return;
|
|
507
|
+
}
|
|
508
|
+
throw error;
|
|
509
|
+
}
|
|
510
|
+
};
|
|
511
|
+
const envLines = [
|
|
512
|
+
`WABERY_API_KEY=${apiKey}`,
|
|
513
|
+
`WABERY_BASE_URL=${baseUrl}`,
|
|
514
|
+
`WABERY_PROJECT_ID=${projectId}`,
|
|
515
|
+
`WABERY_CHANNEL_ID=${channelId ?? ""}`,
|
|
516
|
+
];
|
|
517
|
+
if (project.webhook_url)
|
|
518
|
+
envLines.push(`WABERY_WEBHOOK_URL=${project.webhook_url}`);
|
|
519
|
+
envLines.push(`WABERY_WEBHOOK_SECRET=${project.webhook_secret ?? ""}`);
|
|
520
|
+
await tryWrite(".env.wabery", `${envLines.join("\n")}\n`);
|
|
521
|
+
await tryWrite("wabery.config.json", `${JSON.stringify(createExampleConfig(projectId), null, 2)}\n`);
|
|
522
|
+
await tryWrite("wabery-webhook-handler.ts", WEBHOOK_HANDLER_STUB);
|
|
523
|
+
await printText(`Initialized Wabery for project ${projectId}.\n` +
|
|
524
|
+
(written.length ? `Wrote: ${written.join(", ")}\n` : "") +
|
|
525
|
+
(skipped.length
|
|
526
|
+
? `Skipped (already exist, use --force to overwrite): ${skipped.join(", ")}\n`
|
|
527
|
+
: "") +
|
|
528
|
+
"\nNext: load .env.wabery, edit the webhook URL, then `wabery config apply wabery.config.json`.\n");
|
|
299
529
|
}
|
|
530
|
+
const WEBHOOK_HANDLER_STUB = `// Verify and handle Wabery webhook deliveries.
|
|
531
|
+
// npm i @wabery/sdk
|
|
532
|
+
import { Wabery } from "@wabery/sdk";
|
|
533
|
+
|
|
534
|
+
const wabery = new Wabery(); // reads WABERY_API_KEY
|
|
535
|
+
const secret = process.env.WABERY_WEBHOOK_SECRET ?? "";
|
|
536
|
+
|
|
537
|
+
// Express-style handler; adapt to your framework. Pass the RAW request body.
|
|
538
|
+
export async function handleWaberyWebhook(rawBody: string, signature: string) {
|
|
539
|
+
\tconst event = wabery.webhooks.constructEvent(rawBody, signature, secret);
|
|
540
|
+
\tswitch (event.event) {
|
|
541
|
+
\t\tcase "message.received":
|
|
542
|
+
\t\t\t// event.payload.text, .from, .conversation_id ...
|
|
543
|
+
\t\t\tbreak;
|
|
544
|
+
\t\tcase "flow.completed":
|
|
545
|
+
\t\t\t// event.payload.submission ...
|
|
546
|
+
\t\t\tbreak;
|
|
547
|
+
\t\tdefault:
|
|
548
|
+
\t\t\tbreak;
|
|
549
|
+
\t}
|
|
550
|
+
\treturn event;
|
|
551
|
+
}
|
|
552
|
+
`;
|
|
300
553
|
async function handleContacts(client, subcommand, rest, flags) {
|
|
301
554
|
if (subcommand === "list") {
|
|
302
555
|
await printJson(await client.get("/contacts", {
|
|
@@ -313,7 +566,8 @@ async function handleContacts(client, subcommand, rest, flags) {
|
|
|
313
566
|
if (subcommand === "enroll") {
|
|
314
567
|
await printJson(await client.post("/contacts", {
|
|
315
568
|
phone: requiredStringFlag(flags, "phone"),
|
|
316
|
-
|
|
569
|
+
// Keys are project-scoped; default to the key's project.
|
|
570
|
+
project_id: stringFlag(flags, "project-id") ?? client.projectId,
|
|
317
571
|
name: stringFlag(flags, "name"),
|
|
318
572
|
reference_id: stringFlag(flags, "reference-id"),
|
|
319
573
|
metadata: optionalJsonFlag(flags, "metadata"),
|
|
@@ -471,27 +725,37 @@ async function handleEnv(client, flags) {
|
|
|
471
725
|
const projects = (await client.get("/projects"));
|
|
472
726
|
projectId = projects.data?.[0]?.project_id ?? projects.data?.[0]?.id;
|
|
473
727
|
}
|
|
728
|
+
// Single GET reveals webhook_url + webhook_secret (the list never does).
|
|
729
|
+
let project;
|
|
730
|
+
if (projectId) {
|
|
731
|
+
project = (await client.get(`/projects/${projectId}`));
|
|
732
|
+
}
|
|
733
|
+
if (!channelId) {
|
|
734
|
+
channelId =
|
|
735
|
+
project?.channel_id ?? project?.enrollment_channel?.id ?? undefined;
|
|
736
|
+
}
|
|
474
737
|
if (!channelId) {
|
|
475
738
|
const channels = (await client.get("/channels"));
|
|
476
739
|
channelId = channels.data?.[0]?.channel_id ?? channels.data?.[0]?.id;
|
|
477
740
|
}
|
|
741
|
+
const cred = findCredentialByProject(client.projectId ?? projectId ?? "");
|
|
478
742
|
const apiKey = stringFlag(flags, "api-key") ??
|
|
479
743
|
process.env.WABERY_API_KEY ??
|
|
480
|
-
|
|
744
|
+
cred?.apiKey ??
|
|
481
745
|
"wab_live_...";
|
|
482
746
|
const baseUrl = stringFlag(flags, "base-url") ??
|
|
483
747
|
process.env.WABERY_BASE_URL ??
|
|
484
|
-
|
|
748
|
+
cred?.baseUrl ??
|
|
485
749
|
"https://api.wabery.com/v1";
|
|
486
750
|
const lines = [
|
|
487
751
|
`WABERY_API_KEY=${apiKey}`,
|
|
488
752
|
`WABERY_BASE_URL=${baseUrl}`,
|
|
489
753
|
`WABERY_PROJECT_ID=${projectId ?? "<no project found>"}`,
|
|
490
754
|
`WABERY_CHANNEL_ID=${channelId ?? "<no channel found>"}`,
|
|
491
|
-
"# WABERY_WEBHOOK_SECRET is not retrievable via API — copy it from the",
|
|
492
|
-
"# dashboard (Project → Webhooks) and paste it here:",
|
|
493
|
-
"WABERY_WEBHOOK_SECRET=",
|
|
494
755
|
];
|
|
756
|
+
if (project?.webhook_url)
|
|
757
|
+
lines.push(`WABERY_WEBHOOK_URL=${project.webhook_url}`);
|
|
758
|
+
lines.push(`WABERY_WEBHOOK_SECRET=${project?.webhook_secret ?? ""}`);
|
|
495
759
|
await printText(`${lines.join("\n")}\n`);
|
|
496
760
|
}
|
|
497
761
|
/** Sign a body the same way Wabery does: `sha256=<hex>` HMAC-SHA256. */
|
|
@@ -737,7 +1001,48 @@ function requiredValue(value, name) {
|
|
|
737
1001
|
throw new Error(`Missing required --${name}`);
|
|
738
1002
|
return value;
|
|
739
1003
|
}
|
|
1004
|
+
// Global output shaping, set from --id-only / --field at startup.
|
|
1005
|
+
let outputIdOnly = false;
|
|
1006
|
+
let outputField;
|
|
1007
|
+
const ID_FIELDS = [
|
|
1008
|
+
"id",
|
|
1009
|
+
"project_id",
|
|
1010
|
+
"contact_id",
|
|
1011
|
+
"flow_id",
|
|
1012
|
+
"channel_id",
|
|
1013
|
+
"flow_token",
|
|
1014
|
+
"dispatch_id",
|
|
1015
|
+
];
|
|
1016
|
+
function extractPath(data, path) {
|
|
1017
|
+
return path.split(".").reduce((node, key) => {
|
|
1018
|
+
if (node && typeof node === "object") {
|
|
1019
|
+
return node[key];
|
|
1020
|
+
}
|
|
1021
|
+
return undefined;
|
|
1022
|
+
}, data);
|
|
1023
|
+
}
|
|
1024
|
+
function formatScalar(value) {
|
|
1025
|
+
if (value === undefined || value === null)
|
|
1026
|
+
return "";
|
|
1027
|
+
if (typeof value === "object")
|
|
1028
|
+
return JSON.stringify(value);
|
|
1029
|
+
return String(value);
|
|
1030
|
+
}
|
|
740
1031
|
async function printJson(data) {
|
|
1032
|
+
if (outputIdOnly) {
|
|
1033
|
+
const record = data && typeof data === "object"
|
|
1034
|
+
? data
|
|
1035
|
+
: undefined;
|
|
1036
|
+
const id = record
|
|
1037
|
+
? ID_FIELDS.map((key) => record[key]).find((v) => typeof v === "string")
|
|
1038
|
+
: undefined;
|
|
1039
|
+
process.stdout.write(`${formatScalar(id)}\n`);
|
|
1040
|
+
return;
|
|
1041
|
+
}
|
|
1042
|
+
if (outputField) {
|
|
1043
|
+
process.stdout.write(`${formatScalar(extractPath(data, outputField))}\n`);
|
|
1044
|
+
return;
|
|
1045
|
+
}
|
|
741
1046
|
process.stdout.write(`${JSON.stringify(data, null, 2)}\n`);
|
|
742
1047
|
}
|
|
743
1048
|
async function printText(text) {
|
|
@@ -760,19 +1065,38 @@ function redactSensitive(value) {
|
|
|
760
1065
|
function printHelp() {
|
|
761
1066
|
process.stdout.write(`Wabery CLI and MCP server
|
|
762
1067
|
|
|
1068
|
+
Projects & keys:
|
|
1069
|
+
API keys are scoped to a single project. Log into each project once; the CLI
|
|
1070
|
+
stores one key per project and auto-selects the right one based on the repo.
|
|
1071
|
+
A repo declares its project in a committed, secret-free .wabery.json
|
|
1072
|
+
({"project_id": "..."}); the CLI walks up from the current directory to find
|
|
1073
|
+
it (falling back to wabery.config.json's project_id).
|
|
1074
|
+
|
|
763
1075
|
Environment:
|
|
764
|
-
WABERY_API_KEY API key override
|
|
1076
|
+
WABERY_API_KEY API key override (used directly, bypasses the store).
|
|
1077
|
+
WABERY_PROJECT_ID Select which stored project's key to use.
|
|
765
1078
|
WABERY_BASE_URL Defaults to https://api.wabery.com/v1.
|
|
766
1079
|
WABERY_API_VERSION Optional dated API version.
|
|
767
1080
|
|
|
768
1081
|
Global flags:
|
|
769
1082
|
--api-key <key> Override WABERY_API_KEY.
|
|
1083
|
+
--project-id <id> Select which stored project's key to use.
|
|
770
1084
|
--base-url <url> Override WABERY_BASE_URL.
|
|
771
1085
|
--api-version <ver> Override WABERY_API_VERSION.
|
|
1086
|
+
--id-only Print just the result id (for shell: ID=$(wabery ... --id-only)).
|
|
1087
|
+
--field <dot.path> Print just one field, e.g. --field webhook_secret.
|
|
1088
|
+
|
|
1089
|
+
Getting started:
|
|
1090
|
+
wabery login # log into a project (stores its key)
|
|
1091
|
+
wabery whoami # active key (masked), org, project
|
|
1092
|
+
wabery init [--name "My project"] # scaffold .env.wabery + wabery.config.json + handler
|
|
772
1093
|
|
|
773
1094
|
Authentication:
|
|
774
|
-
wabery login
|
|
1095
|
+
wabery login # add/refresh the current project's key
|
|
775
1096
|
wabery login --no-open
|
|
1097
|
+
wabery use <project-id-or-name> # bind this repo to a logged-in project
|
|
1098
|
+
wabery logout [--project <id|name>] # remove one stored key
|
|
1099
|
+
wabery logout --all # remove every stored key
|
|
776
1100
|
Config file: ${getConfigPath()}
|
|
777
1101
|
|
|
778
1102
|
MCP:
|
|
@@ -797,7 +1121,10 @@ Config:
|
|
|
797
1121
|
|
|
798
1122
|
Projects and contacts:
|
|
799
1123
|
wabery projects list
|
|
800
|
-
wabery projects
|
|
1124
|
+
wabery projects get <project_id> # reveals webhook_secret
|
|
1125
|
+
wabery projects ensure --name "Demo" # idempotently configure the key's scoped project
|
|
1126
|
+
wabery projects update <project_id> [--name <n>] [--webhook-url <url>] [--webhook-signing-enabled true|false] [--webhook-secret <secret>]
|
|
1127
|
+
wabery projects rotate-secret <project_id> [--webhook-secret <secret>]
|
|
801
1128
|
wabery contacts enroll --project-id <id> --phone +15555550123 --name "Jane" --opt-in '{"source":"checkout"}'
|
|
802
1129
|
wabery contacts get <contact_id>
|
|
803
1130
|
wabery contacts unenroll <contact_id>
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EACN,aAAa,EACb,eAAe,EACf,gBAAgB,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/C,KAAK,UAAU,IAAI;IAClB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC;IAE1D,IACC,CAAC,OAAO;QACR,OAAO,KAAK,MAAM;QAClB,OAAO,KAAK,QAAQ;QACpB,OAAO,KAAK,IAAI,EACf,CAAC;QACF,SAAS,EAAE,CAAC;QACZ,OAAO;IACR,CAAC;IAED,IACC,OAAO,KAAK,QAAQ;QACpB,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,MAAM,CAAC,EAClD,CAAC;QACF,MAAM,iBAAiB,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACxD,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACzB,MAAM,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;QAC9B,MAAM,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAChD,OAAO;IACR,CAAC;IAED,8EAA8E;IAC9E,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/C,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAClD,MAAM,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACtD,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO;IACR,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QAClC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC;QAC3C,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC;QAC7C,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC;KACnD,CAAC,CAAC;IAEH,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACvB,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACjD,MAAM,SAAS,CAAC,MAAM,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACvB,MAAM,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACvD,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACrD,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAClD,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAC7C,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;QACjC,MAAM,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAClE,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACvD,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC7B,MAAM,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACzB,MAAM,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,aAAa,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACxD,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE;YAChC,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC;YAC9C,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC;YAC5C,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;YACxC,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,CAAC;SAC1D,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;QAC9B,MAAM,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/D,OAAO;IACR,CAAC;IAED,MAAM,IAAI,KAAK,CACd,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACrE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAC1B,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACpD,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAC7C,OAAO;IACR,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3D,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC5B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QACrD,OAAO;IACR,CAAC;IAED,MAAM,IAAI,KAAK,CACd,0FAA0F,CAC1F,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC/B,UAAkB,EAClB,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,SAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;QACtE,OAAO;IACR,CAAC;IACD,MAAM,UAAU,GACf,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,oBAAoB,CAAC;IAC9D,MAAM,MAAM,GAAG,mBAAmB,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IACpE,MAAM,SAAS,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;QACnE,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;KAC9C,CAAC,CAAC;IACH,MAAM,SAAS,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,KAAK,UAAU,eAAe,CAC7B,MAA0B,EAC1B,KAAuC;IAEvC,MAAM,MAAM,GAAG,MAAM,IAAI,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,QAAQ,CAAC;IACjE,MAAM,OAAO,GACZ,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,eAAe;QAC3B,2BAA2B,CAAC;IAC7B,IAAI,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACd,kHAAkH,CAClH,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,cAAc,CAAC;IAC9B,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG;QACX,cAAc,EAAE,MAAM;QACtB,eAAe,EAAE,OAAO;QACxB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpE,CAAC;IAEF,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;QAClE,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YACxD,OAAO;QACR,CAAC;QACD,MAAM,SAAS,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,MAAM;YACd,MAAM;SACN,CAAC,CAAC;QACH,OAAO;IACR,CAAC;IAED,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;aACjC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;aAC1D,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,IAAI,GAAG;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;UACnB,OAAO;CAChB,CAAC;QACA,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO;QACR,CAAC;QACD,MAAM,SAAS,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;QACH,OAAO;IACR,CAAC;IAED,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG;YACd,OAAO,EAAE,iCAAiC;YAC1C,GAAG,EAAE;gBACJ,MAAM,EAAE;oBACP,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;oBAC3B,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,GAAG;iBAChB;aACD;SACD,CAAC;QACF,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YACxD,OAAO;QACR,CAAC;QACD,MAAM,SAAS,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,MAAM;YACd,MAAM;SACN,CAAC,CAAC;QACH,OAAO;IACR,CAAC;IAED,MAAM,IAAI,KAAK,CACd,qEAAqE,CACrE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,KAAuC;IACjE,MAAM,OAAO,GAAG,mBAAmB,CAClC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,eAAe;QAC3B,wBAAwB,CACzB,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;IAE3D,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,wEAAwE,QAAQ,MAAM,CACtF,CAAC;IAEF,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3E,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,MAAM;QACL,CAAC,CAAC,wFAAwF;QAC1F,CAAC,CAAC,qDAAqD,CACxD,CAAC;IACF,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,2EAA2E,CAC3E,CAAC;IAEF,MAAM,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC,2BAA2B,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACd,sGAAsG,CACtG,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IACzD,MAAM,SAAS,CACd,+CAA+C,UAAU,IAAI,CAC7D,CAAC;AACH,CAAC;AAED,yEAAyE;AACzE,SAAS,UAAU,CAAC,QAAgB;IACnC,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACrE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YAChC,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,GAAW;IAC3B,MAAM,eAAe,GAAG,QAAQ,EAAE,CAAC;IACnC,MAAM,OAAO,GACZ,eAAe,KAAK,QAAQ;QAC3B,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,eAAe,KAAK,OAAO;YAC5B,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,UAAU,CAAC;IAChB,MAAM,IAAI,GAAG,eAAe,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5E,IAAI,CAAC;QACJ,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE;YAClC,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,QAAQ;SACf,CAAC,CAAC;QACH,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACzC,OAAO,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED,KAAK,UAAU,cAAc,CAC5B,MAAuB,EACvB,UAA8B,EAC9B,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE;YAC9B,IAAI,EAAE,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC;YACvC,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC;YAC7C,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC;YAC7C,uBAAuB,EACtB,WAAW,CAAC,KAAK,EAAE,yBAAyB,CAAC,IAAI,IAAI;SACtD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACrE,CAAC;AAED,KAAK,UAAU,cAAc,CAC5B,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE;YAC7B,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,cAAc,EAAE,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC;SACnD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,CACvE,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE;YAC9B,KAAK,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC;YACzC,UAAU,EAAE,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC;YACnD,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC;YAC/B,YAAY,EAAE,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC;YAC/C,QAAQ,EAAE,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC;YAC7C,MAAM,EAAE,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC;SACzC,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,MAAM,CAClB,aAAa,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,GAClD,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EACzB,EAAE,CACF,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CACd,mFAAmF,CACnF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CACjC,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE;YAClC,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC;YAC3C,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;YACnC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,cAAc,EAAE,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC;SACnD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IACvE,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CACf,kBAAkB,aAAa,CAAC,cAAc,EAAE,iBAAiB,CAAC,EAAE,CACpE,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CACf,kBAAkB,aAAa,CAAC,cAAc,EAAE,iBAAiB,CAAC,WAAW,EAC7E;YACC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,cAAc,EAAE,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC;YACnD,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;SACjC,CACD,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CACd,iEAAiE,CACjE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAC5B,MAAuB,EACvB,UAA8B,EAC9B,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,IAAI,GACT,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC;YAC9B;gBACA,UAAU,EAAE,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC;gBACnD,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC;gBACrD,EAAE,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC;gBAC3B,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC;gBAC/B,QAAQ,EAAE,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC;gBAC7C,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC;gBACvC,WAAW,EAAE,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC;gBACnD,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC;aACzB,CAAC;QAC/B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;QACtD,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,eAAe,CAC7B,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE;YAC9B,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC;YAC3C,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;SACnC,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC/D,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CACf,cAAc,aAAa,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,CACxD,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,IAAI,GACT,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC;YAC9B;gBACA,UAAU,EAAE,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC;gBACnD,IAAI,EAAE,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC;gBACvC,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC;gBAC/C,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC;gBAC/C,UAAU,EAAE,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC;aACrB,CAAC;QAC/B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;QACvD,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,WAAW,CACzB,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC5C,OAAO;IACR,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACvD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,UAAU,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,CAC9D,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC5D,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;YAChC,MAAM,SAAS,CAAC,MAAM,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;YACtD,OAAO;QACR,CAAC;QACD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3B,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,EAAE;YACpE,UAAU,EAAE,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC;YACnD,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC;YAC3C,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC;YACrD,EAAE,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC;YAC3B,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;YACvC,SAAS,EAAE,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC;YACzC,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC;YAC7C,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC;YAC7C,YAAY,EAAE,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC;YAC/C,WAAW,EAAE,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC;SACnD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,sEAAsE;IACtE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,kBAAkB,CAChC,MAAuB,EACvB,MAAc,EACd,EAAE,SAAS,GAAG,OAAO,EAAE,UAAU,GAAG,KAAK,EAAE,GAAG,EAAE;IAEhD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,SAAS,CAAC;QACT,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,UAAU,MAAM,EAAE,CAAC,CAGjD,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;QACvD,IAAI,MAAM,KAAK,WAAW;YAAE,OAAO,IAAI,CAAC;QACxC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,QAAQ,MAAM,OAAO,MAAM,0BAA0B,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CACd,8BAA8B,MAAM,wCAAwC,MAAM,IAAI,SAAS,GAAG,CAClG,CAAC;QACH,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IACjE,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,SAAS,CACvB,MAAuB,EACvB,KAAuC;IAEvC,IAAI,SAAS,GAAG,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAChD,IAAI,SAAS,GAAG,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAEhD,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAE9C,CAAC;QACF,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAE9C,CAAC;QACF,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACtE,CAAC;IAED,MAAM,MAAM,GACX,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,cAAc;QAC1B,eAAe,EAAE,CAAC,MAAM;QACxB,cAAc,CAAC;IAChB,MAAM,OAAO,GACZ,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,eAAe;QAC3B,eAAe,EAAE,CAAC,OAAO;QACzB,2BAA2B,CAAC;IAE7B,MAAM,KAAK,GAAG;QACb,kBAAkB,MAAM,EAAE;QAC1B,mBAAmB,OAAO,EAAE;QAC5B,qBAAqB,SAAS,IAAI,oBAAoB,EAAE;QACxD,qBAAqB,SAAS,IAAI,oBAAoB,EAAE;QACxD,uEAAuE;QACvE,qDAAqD;QACrD,wBAAwB;KACxB,CAAC;IACF,MAAM,SAAS,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC;AAED,wEAAwE;AACxE,SAAS,QAAQ,CAAC,MAAc,EAAE,IAAY;IAC7C,OAAO,UAAU,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AAC5E,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,cAAc,CAC5B,UAA8B,EAC9B,KAAuC;IAEvC,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CACd,gEAAgE,CAChE,CAAC;IACH,CAAC;IACD,MAAM,GAAG,GAAG,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,kBAAkB,CAAC;IAC/D,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3B,KAAK;QACL,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,YAAY;QAC7D,OAAO;QACP,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KAChC,CAAC,CAAC;IACH,MAAM,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,gBAAgB,CAAC,KAAuC;IACtE,MAAM,GAAG,GAAG,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3B,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,MAAM;QAC7C,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,IAAI;QAC3C,IAAI,EAAE,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE;QAC3C,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,iBAAiB;QAChE,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,cAAc;QACvD,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,eAAe;QAC1D,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,IAAI,aAAa;QACtE,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,iBAAiB;QAChE,iBAAiB,EAAE,UAAU,CAAC,KAAK,EAAE,mBAAmB,CAAC,IAAI,IAAI;QACjE,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI;KACvC,CAAC,CAAC;IACH,MAAM,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,MAAc,EAAE,IAAY;IAClE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5E,MAAM,SAAS,CAAC,UAAU,GAAG,KAAK,IAAI,IAAI,CAAC,CAAC;IAC5C,MAAM,SAAS,CAAC,KAAK,MAAM,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,GAAW,EAAE,MAAc,EAAE,IAAY;IACrE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QACjC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACR,cAAc,EAAE,kBAAkB;YAClC,oBAAoB,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;SAC5C;QACD,IAAI;KACJ,CAAC,CAAC;IACH,OAAO;QACN,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,IAAI,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE;KAC3B,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,YAAY,CAAC,KAAuC;IAClE,MAAM,GAAG,GAAG,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG;QAChB,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,gBAAgB;QAC/D,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,aAAa;QACtD,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,cAAc;QACzD,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,IAAI,YAAY;QACrE,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,gBAAgB;QAC/D,iBAAiB,EAAE,UAAU,CAAC,KAAK,EAAE,mBAAmB,CAAC,IAAI,IAAI;QACjE,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI;KACvC,CAAC;IAEF,MAAM,KAAK,GAAG,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI;QAClD,EAAE,MAAM,EAAE,MAAM,EAAE;KAClB,CAIC,CAAC;IACH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;YAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,eAAe;YACtC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;YACrB,GAAG,QAAQ;SACX,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,SAAS,CACd,QAAQ,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,MAAM,IAAI,CAAC,MAAM,IAAI,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,CAAC,IAAI,IAAI,CACpK,CAAC;QACF,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,GAAG,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3E,CAAC;IACF,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;YAC5B,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,YAAY;YAC7D,OAAO,EAAE;gBACR,MAAM,EAAE,iBAAiB;gBACzB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,eAAe,EAAE,QAAQ,CAAC,eAAe;gBACzC,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;gBAC7C,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,KAAK,EAAE,IAAI;gBACX,UAAU,EAAE,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE;gBACvD,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC;YACD,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAChC,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC3D,MAAM,SAAS,CACd,iCAAiC,UAAU,SAAS,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,CAAC,IAAI,IAAI,CACjG,CAAC;IACH,CAAC;AACF,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IACnC,IAAI,KAAK,KAAK,gBAAgB,EAAE,CAAC;QAChC,OAAO;YACN,MAAM,EAAE,iBAAiB;YACzB,UAAU,EAAE,iBAAiB;YAC7B,OAAO,EAAE,cAAc;YACvB,iBAAiB,EAAE,SAAS;YAC5B,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,IAAI;YACX,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;SAC1C,CAAC;IACH,CAAC;IACD,OAAO;QACN,UAAU,EAAE,iBAAiB;QAC7B,eAAe,EAAE,sBAAsB;QACvC,UAAU,EAAE,iBAAiB;QAC7B,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,iBAAiB;QAC7B,iBAAiB,EAAE,SAAS;QAC5B,kBAAkB,EAAE,SAAS;KAC7B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC9B,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE;YAC/B,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC;YACrC,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC;YAC3C,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;YACnC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,cAAc,EAAE,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC;SACnD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,eAAe,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,CACzE,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,SAAS,CAAC,IAAc;IAChC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,KAAK,GAAqC,EAAE,CAAC;IAEnD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,SAAS;QACV,CAAC;QAED,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACzD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC;YAC5B,SAAS;QACV,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YACrB,SAAS;QACV,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QACrB,KAAK,EAAE,CAAC;IACT,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;AAC/B,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,IAAa;IACzC,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAY,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,SAAS;IACvB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,UAAU,CAClB,KAAuC,EACvC,GAAW;IAEX,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,SAAS,kBAAkB,CAC1B,KAAuC,EACvC,GAAW;IAEX,OAAO,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,UAAU,CAClB,KAAuC,EACvC,GAAW;IAEX,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1C,CAAC;AAED,SAAS,WAAW,CACnB,KAAuC,EACvC,GAAW;IAEX,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC7C,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAClC,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACpC,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAS,gBAAgB,CACxB,KAAuC,EACvC,GAAW;IAEX,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAa,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED,SAAS,aAAa,CAAC,KAAyB,EAAE,IAAY;IAC7D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC;AACd,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAa;IACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,sBAAsB;IAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,gBAAgB,GACrB,oGAAoG,CAAC;IACtG,OAAO,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QACtE,GAAG;QACH,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC;KAClE,CAAC,CACF,CAAC;AACH,CAAC;AAED,SAAS,SAAS;IACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;iBAeL,aAAa,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiD/B,CAAC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACtB,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,sBAAsB,EAAE;YACpC,CAAC,CAAC,KAAK,CAAC,IAAI;YACZ,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,qBAAqB,KAAK,CAAC,MAAM,MAAM,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,SAAS,CACtE,IAAI,EACJ,IAAI,EACJ,CAAC,CACD,IAAI,CACL,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAC7D,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EACN,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/C,KAAK,UAAU,IAAI;IAClB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC;IAE1D,2EAA2E;IAC3E,2DAA2D;IAC3D,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC;IAC7D,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAEhD,IACC,CAAC,OAAO;QACR,OAAO,KAAK,MAAM;QAClB,OAAO,KAAK,QAAQ;QACpB,OAAO,KAAK,IAAI,EACf,CAAC;QACF,SAAS,EAAE,CAAC;QACZ,OAAO;IACR,CAAC;IAED,IACC,OAAO,KAAK,QAAQ;QACpB,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,MAAM,CAAC,EAClD,CAAC;QACF,MAAM,iBAAiB,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACxD,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACzB,MAAM,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACvB,MAAM,SAAS,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;QAC9B,MAAM,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAChD,OAAO;IACR,CAAC;IAED,8EAA8E;IAC9E,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/C,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAClD,MAAM,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO;IACR,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACtD,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO;IACR,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QAClC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC;QAC3C,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC;QAC7C,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC;QACnD,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC;KACjD,CAAC,CAAC;IAEH,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACvB,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACxB,MAAM,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACjD,MAAM,SAAS,CAAC,MAAM,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACvB,MAAM,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,UAAU,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACrD,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAClD,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAC7C,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;QACjC,MAAM,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAClE,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACvD,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC7B,MAAM,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACzB,MAAM,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1D,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,aAAa,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACxD,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE;YAChC,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC;YAC9C,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC;YAC5C,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;YACxC,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,CAAC;SAC1D,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IAED,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;QAC9B,MAAM,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/D,OAAO;IACR,CAAC;IAED,MAAM,IAAI,KAAK,CACd,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACrE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAC1B,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACpD,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAC7C,OAAO;IACR,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3D,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC5B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QACrD,OAAO;IACR,CAAC;IAED,MAAM,IAAI,KAAK,CACd,0FAA0F,CAC1F,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC/B,UAAkB,EAClB,IAAc,EACd,KAAuC;IAEvC,MAAM,iBAAiB,GACtB,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;IACnE,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,SAAS,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACxD,OAAO;IACR,CAAC;IACD,MAAM,UAAU,GACf,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,oBAAoB,CAAC;IAC9D,MAAM,MAAM,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IACtD,MAAM,SAAS,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;QACnE,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;KAC9C,CAAC,CAAC;IACH,MAAM,SAAS,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,KAAK,UAAU,eAAe,CAC7B,MAA0B,EAC1B,KAAuC;IAEvC,MAAM,MAAM,GAAG,MAAM,IAAI,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,QAAQ,CAAC;IACjE,MAAM,OAAO,GACZ,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,eAAe;QAC3B,2BAA2B,CAAC;IAC7B,IAAI,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACd,kHAAkH,CAClH,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,cAAc,CAAC;IAC9B,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG;QACX,cAAc,EAAE,MAAM;QACtB,eAAe,EAAE,OAAO;QACxB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpE,CAAC;IAEF,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;QAClE,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YACxD,OAAO;QACR,CAAC;QACD,MAAM,SAAS,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,MAAM;YACd,MAAM;SACN,CAAC,CAAC;QACH,OAAO;IACR,CAAC;IAED,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;aACjC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;aAC1D,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,IAAI,GAAG;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;UACnB,OAAO;CAChB,CAAC;QACA,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO;QACR,CAAC;QACD,MAAM,SAAS,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;QACH,OAAO;IACR,CAAC;IAED,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG;YACd,OAAO,EAAE,iCAAiC;YAC1C,GAAG,EAAE;gBACJ,MAAM,EAAE;oBACP,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;oBAC3B,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,GAAG;iBAChB;aACD;SACD,CAAC;QACF,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YACxD,OAAO;QACR,CAAC;QACD,MAAM,SAAS,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,MAAM;YACd,MAAM;SACN,CAAC,CAAC;QACH,OAAO;IACR,CAAC;IAED,MAAM,IAAI,KAAK,CACd,qEAAqE,CACrE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,KAAuC;IACjE,MAAM,OAAO,GAAG,mBAAmB,CAClC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,eAAe;QAC3B,wBAAwB,CACzB,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;IAE3D,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,wEAAwE,QAAQ,MAAM,CACtF,CAAC;IAEF,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3E,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,MAAM;QACL,CAAC,CAAC,wFAAwF;QAC1F,CAAC,CAAC,qDAAqD,CACxD,CAAC;IACF,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,2EAA2E,CAC3E,CAAC;IAEF,MAAM,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC,2BAA2B,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACd,sGAAsG,CACtG,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,wEAAwE;IACxE,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAGxC,CAAC;IACF,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;IACvC,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CACd,sGAAsG,CACtG,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,gBAAgB,CAAC;QACnC,SAAS;QACT,WAAW,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI;QACnC,cAAc,EAAE,QAAQ,CAAC,YAAY,EAAE,EAAE;QACzC,MAAM;QACN,OAAO;KACP,CAAC,CAAC;IAEH,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;QACrC,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,mBAAmB,EAAE,EAAE,SAAS,CAAC,CAAC;QACtE,SAAS,GAAG,mCAAmC,SAAS,KAAK,QAAQ,MAAM,CAAC;IAC7E,CAAC;IAED,MAAM,SAAS,CACd,0BAA0B,QAAQ,CAAC,OAAO,EAAE,IAAI,IAAI,SAAS,KAAK,SAAS,4BAA4B,UAAU,KAAK,SAAS,EAAE,CACjI,CAAC;AACH,CAAC;AAED,wEAAwE;AACxE,KAAK,UAAU,YAAY,CAAC,KAAuC;IAClE,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;QAC/B,gBAAgB,EAAE,CAAC;QACnB,MAAM,SAAS,CAAC,sDAAsD,CAAC,CAAC;QACxE,OAAO;IACR,CAAC;IAED,MAAM,MAAM,GACX,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;IACtC,IAAI,SAAS,GAAG,MAAM,CAAC;IACvB,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,6DAA6D;QAC7D,SAAS,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;IAC5C,CAAC;IACD,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtC,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CACd,qGAAqG,CACrG,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,MAAM,KAAK,GACV,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC;QAClD,WAAW,CAAC,IAAI,CACf,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,SAAS,EAAE,WAAW,EAAE,CAChE,CAAC;IACH,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,6BAA6B,SAAS,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClC,MAAM,SAAS,CACd,yBAAyB,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,MAAM,CACvF,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,SAAS,CAAC,KAAyB;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;IACtC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,KAAK,GACV,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,CAAC;QAC9C,WAAW,CAAC,IAAI,CACf,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CAC3D,CAAC;IACH,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,WAAW;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,WAAW,IAAI,WAAW,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC;aAClE,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,IAAI,KAAK,CACd,iCAAiC,KAAK,kBAAkB,SAAS,kDAAkD,CACnH,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,kBAAkB,CAAC,mBAAmB,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACxE,MAAM,SAAS,CAAC;QACf,MAAM,EAAE,cAAc;QACtB,IAAI;QACJ,UAAU,EAAE,KAAK,CAAC,SAAS;QAC3B,YAAY,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;KACvC,CAAC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,KAAK,UAAU,YAAY,CAAC,MAAuB;IAClD,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAA4B,CAAC;IACtE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;IACtC,MAAM,SAAS,CAAC;QACf,GAAG,QAAQ;QACX,UAAU,EAAE;YACX,UAAU,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI;YACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;SACvB;KACD,CAAC,CAAC;AACJ,CAAC;AAED,yEAAyE;AACzE,SAAS,UAAU,CAAC,QAAgB;IACnC,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACrE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YAChC,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,GAAW;IAC3B,MAAM,eAAe,GAAG,QAAQ,EAAE,CAAC;IACnC,MAAM,OAAO,GACZ,eAAe,KAAK,QAAQ;QAC3B,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,eAAe,KAAK,OAAO;YAC5B,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,UAAU,CAAC;IAChB,MAAM,IAAI,GAAG,eAAe,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5E,IAAI,CAAC;QACJ,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE;YAClC,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,QAAQ;SACf,CAAC,CAAC;QACH,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACzC,OAAO,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED,KAAK,UAAU,cAAc,CAC5B,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACd,oJAAoJ,CACpJ,CAAC;IACH,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,oEAAoE;QACpE,6DAA6D;QAC7D,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,SAAS,CAAC,MAAM,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1D,OAAO;IACR,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC7D,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,CACvE,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACvC,IAAI,IAAI,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACzC,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QACrD,IAAI,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC9D,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QACpD,IAAI,UAAU,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC5D,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAC;QAC9D,IAAI,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC;QAClE,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QACnD,IAAI,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QACvD,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,KAAK,CACjB,aAAa,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,EACrD,IAAI,CACJ,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,eAAe,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QACnD,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,IAAI,CAChB,aAAa,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,wBAAwB,EAC3E,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAC/C,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CACd,4JAA4J,CAC5J,CAAC;AACH,CAAC;AAYD,iFAAiF;AACjF,KAAK,UAAU,aAAa,CAC3B,MAAuB,EACvB,IAAwB,EACxB,KAAuC;IAEvC,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAgC,CAAC;IAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAChC,MAAM,EAAE,GAAG,QAAQ,EAAE,UAAU,IAAI,QAAQ,EAAE,EAAE,CAAC;IAChD,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACd,iHAAiH,CACjH,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAA4B,EAAE,CAAC;IAChD,IAAI,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI;QAAE,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1E,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACrD,IAAI,WAAW,KAAK,SAAS;QAAE,WAAW,CAAC,WAAW,GAAG,WAAW,CAAC;IACrE,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACpD,IAAI,UAAU,KAAK,SAAS;QAAE,WAAW,CAAC,WAAW,GAAG,UAAU,CAAC;IACnE,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAC;IAC9D,IAAI,OAAO,KAAK,SAAS;QAAE,WAAW,CAAC,uBAAuB,GAAG,OAAO,CAAC;IACzE,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IACnD,IAAI,MAAM,KAAK,SAAS;QAAE,WAAW,CAAC,cAAc,GAAG,MAAM,CAAC;IAE9D,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,OAAO,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,UAAU,CACxB,MAAuB,EACvB,KAAuC;IAEvC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IAEnD,MAAM,OAAO,GAAG,CAAC,MAAM,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAmB,CAAC;IAC7E,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,EAAE,CAAC;IACnD,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAEnE,iEAAiE;IACjE,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAChC,aAAa,SAAS,EAAE,CACxB,CAAmB,CAAC;IACrB,MAAM,SAAS,GACd,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,kBAAkB,EAAE,EAAE,IAAI,SAAS,CAAC;IAEnE,MAAM,IAAI,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,OAAO,GACZ,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,eAAe;QAC3B,IAAI,EAAE,OAAO;QACb,2BAA2B,CAAC;IAC7B,MAAM,MAAM,GACX,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,cAAc;QAC1B,IAAI,EAAE,MAAM;QACZ,cAAc,CAAC;IAEhB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAErC,MAAM,QAAQ,GAAG,KAAK,EAAE,IAAY,EAAE,OAAe,EAAE,EAAE;QACxD,IAAI,CAAC;YACJ,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnB,OAAO;YACR,CAAC;YACD,MAAM,KAAK,CAAC;QACb,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG;QAChB,kBAAkB,MAAM,EAAE;QAC1B,mBAAmB,OAAO,EAAE;QAC5B,qBAAqB,SAAS,EAAE;QAChC,qBAAqB,SAAS,IAAI,EAAE,EAAE;KACtC,CAAC;IACF,IAAI,OAAO,CAAC,WAAW;QACtB,QAAQ,CAAC,IAAI,CAAC,sBAAsB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5D,QAAQ,CAAC,IAAI,CAAC,yBAAyB,OAAO,CAAC,cAAc,IAAI,EAAE,EAAE,CAAC,CAAC;IAEvE,MAAM,QAAQ,CAAC,aAAa,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,MAAM,QAAQ,CACb,oBAAoB,EACpB,GAAG,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAC9D,CAAC;IACF,MAAM,QAAQ,CAAC,2BAA2B,EAAE,oBAAoB,CAAC,CAAC;IAElE,MAAM,SAAS,CACd,kCAAkC,SAAS,KAAK;QAC/C,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,CAAC,OAAO,CAAC,MAAM;YACd,CAAC,CAAC,sDAAsD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;YAC9E,CAAC,CAAC,EAAE,CAAC;QACN,kGAAkG,CACnG,CAAC;AACH,CAAC;AAED,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;CAsB5B,CAAC;AAEF,KAAK,UAAU,cAAc,CAC5B,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE;YAC7B,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,cAAc,EAAE,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC;SACnD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,CACvE,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE;YAC9B,KAAK,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC;YACzC,yDAAyD;YACzD,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,SAAS;YAC/D,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC;YAC/B,YAAY,EAAE,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC;YAC/C,QAAQ,EAAE,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC;YAC7C,MAAM,EAAE,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC;SACzC,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,MAAM,CAClB,aAAa,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,GAClD,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EACzB,EAAE,CACF,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CACd,mFAAmF,CACnF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CACjC,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE;YAClC,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC;YAC3C,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;YACnC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,cAAc,EAAE,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC;SACnD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IACvE,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CACf,kBAAkB,aAAa,CAAC,cAAc,EAAE,iBAAiB,CAAC,EAAE,CACpE,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CACf,kBAAkB,aAAa,CAAC,cAAc,EAAE,iBAAiB,CAAC,WAAW,EAC7E;YACC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,cAAc,EAAE,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC;YACnD,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;SACjC,CACD,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CACd,iEAAiE,CACjE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAC5B,MAAuB,EACvB,UAA8B,EAC9B,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,IAAI,GACT,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC;YAC9B;gBACA,UAAU,EAAE,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC;gBACnD,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC;gBACrD,EAAE,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC;gBAC3B,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC;gBAC/B,QAAQ,EAAE,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC;gBAC7C,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC;gBACvC,WAAW,EAAE,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC;gBACnD,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC;aACzB,CAAC;QAC/B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;QACtD,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,eAAe,CAC7B,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE;YAC9B,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC;YAC3C,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;SACnC,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC/D,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CACf,cAAc,aAAa,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,CACxD,CACD,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,IAAI,GACT,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC;YAC9B;gBACA,UAAU,EAAE,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC;gBACnD,IAAI,EAAE,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC;gBACvC,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC;gBAC/C,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC;gBAC/C,UAAU,EAAE,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC;aACrB,CAAC;QAC/B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;QACvD,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,WAAW,CACzB,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC5C,OAAO;IACR,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACvD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,UAAU,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,CAC9D,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC5D,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;YAChC,MAAM,SAAS,CAAC,MAAM,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;YACtD,OAAO;QACR,CAAC;QACD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3B,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,EAAE;YACpE,UAAU,EAAE,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC;YACnD,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC;YAC3C,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC;YACrD,EAAE,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC;YAC3B,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;YACvC,SAAS,EAAE,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC;YACzC,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC;YAC7C,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC;YAC7C,YAAY,EAAE,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC;YAC/C,WAAW,EAAE,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC;SACnD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,sEAAsE;IACtE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,kBAAkB,CAChC,MAAuB,EACvB,MAAc,EACd,EAAE,SAAS,GAAG,OAAO,EAAE,UAAU,GAAG,KAAK,EAAE,GAAG,EAAE;IAEhD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,SAAS,CAAC;QACT,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,UAAU,MAAM,EAAE,CAAC,CAGjD,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;QACvD,IAAI,MAAM,KAAK,WAAW;YAAE,OAAO,IAAI,CAAC;QACxC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,QAAQ,MAAM,OAAO,MAAM,0BAA0B,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CACd,8BAA8B,MAAM,wCAAwC,MAAM,IAAI,SAAS,GAAG,CAClG,CAAC;QACH,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IACjE,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,SAAS,CACvB,MAAuB,EACvB,KAAuC;IAEvC,IAAI,SAAS,GAAG,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAChD,IAAI,SAAS,GAAG,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAEhD,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAE9C,CAAC;QACF,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACtE,CAAC;IAED,yEAAyE;IACzE,IAAI,OAOQ,CAAC;IACb,IAAI,SAAS,EAAE,CAAC;QACf,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,SAAS,EAAE,CAAC,CAAmB,CAAC;IAC1E,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,SAAS;YACR,OAAO,EAAE,UAAU,IAAI,OAAO,EAAE,kBAAkB,EAAE,EAAE,IAAI,SAAS,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAE9C,CAAC;QACF,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACtE,CAAC;IAED,MAAM,IAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC,SAAS,IAAI,SAAS,IAAI,EAAE,CAAC,CAAC;IAC1E,MAAM,MAAM,GACX,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,cAAc;QAC1B,IAAI,EAAE,MAAM;QACZ,cAAc,CAAC;IAChB,MAAM,OAAO,GACZ,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,eAAe;QAC3B,IAAI,EAAE,OAAO;QACb,2BAA2B,CAAC;IAE7B,MAAM,KAAK,GAAG;QACb,kBAAkB,MAAM,EAAE;QAC1B,mBAAmB,OAAO,EAAE;QAC5B,qBAAqB,SAAS,IAAI,oBAAoB,EAAE;QACxD,qBAAqB,SAAS,IAAI,oBAAoB,EAAE;KACxD,CAAC;IACF,IAAI,OAAO,EAAE,WAAW;QACvB,KAAK,CAAC,IAAI,CAAC,sBAAsB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACzD,KAAK,CAAC,IAAI,CAAC,yBAAyB,OAAO,EAAE,cAAc,IAAI,EAAE,EAAE,CAAC,CAAC;IACrE,MAAM,SAAS,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC;AAED,wEAAwE;AACxE,SAAS,QAAQ,CAAC,MAAc,EAAE,IAAY;IAC7C,OAAO,UAAU,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AAC5E,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,cAAc,CAC5B,UAA8B,EAC9B,KAAuC;IAEvC,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CACd,gEAAgE,CAChE,CAAC;IACH,CAAC;IACD,MAAM,GAAG,GAAG,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,kBAAkB,CAAC;IAC/D,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3B,KAAK;QACL,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,YAAY;QAC7D,OAAO;QACP,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KAChC,CAAC,CAAC;IACH,MAAM,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,gBAAgB,CAAC,KAAuC;IACtE,MAAM,GAAG,GAAG,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3B,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,MAAM;QAC7C,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,IAAI;QAC3C,IAAI,EAAE,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE;QAC3C,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,iBAAiB;QAChE,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,cAAc;QACvD,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,eAAe;QAC1D,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,IAAI,aAAa;QACtE,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,iBAAiB;QAChE,iBAAiB,EAAE,UAAU,CAAC,KAAK,EAAE,mBAAmB,CAAC,IAAI,IAAI;QACjE,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI;KACvC,CAAC,CAAC;IACH,MAAM,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,MAAc,EAAE,IAAY;IAClE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5E,MAAM,SAAS,CAAC,UAAU,GAAG,KAAK,IAAI,IAAI,CAAC,CAAC;IAC5C,MAAM,SAAS,CAAC,KAAK,MAAM,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,GAAW,EAAE,MAAc,EAAE,IAAY;IACrE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QACjC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACR,cAAc,EAAE,kBAAkB;YAClC,oBAAoB,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;SAC5C;QACD,IAAI;KACJ,CAAC,CAAC;IACH,OAAO;QACN,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,IAAI,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE;KAC3B,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,YAAY,CAAC,KAAuC;IAClE,MAAM,GAAG,GAAG,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG;QAChB,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,gBAAgB;QAC/D,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,aAAa;QACtD,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,cAAc;QACzD,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,IAAI,YAAY;QACrE,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,gBAAgB;QAC/D,iBAAiB,EAAE,UAAU,CAAC,KAAK,EAAE,mBAAmB,CAAC,IAAI,IAAI;QACjE,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI;KACvC,CAAC;IAEF,MAAM,KAAK,GAAG,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI;QAClD,EAAE,MAAM,EAAE,MAAM,EAAE;KAClB,CAIC,CAAC;IACH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;YAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,eAAe;YACtC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;YACrB,GAAG,QAAQ;SACX,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,SAAS,CACd,QAAQ,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,MAAM,IAAI,CAAC,MAAM,IAAI,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,CAAC,IAAI,IAAI,CACpK,CAAC;QACF,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,GAAG,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3E,CAAC;IACF,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;YAC5B,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,YAAY;YAC7D,OAAO,EAAE;gBACR,MAAM,EAAE,iBAAiB;gBACzB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,eAAe,EAAE,QAAQ,CAAC,eAAe;gBACzC,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;gBAC7C,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,KAAK,EAAE,IAAI;gBACX,UAAU,EAAE,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE;gBACvD,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC;YACD,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAChC,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC3D,MAAM,SAAS,CACd,iCAAiC,UAAU,SAAS,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,CAAC,IAAI,IAAI,CACjG,CAAC;IACH,CAAC;AACF,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IACnC,IAAI,KAAK,KAAK,gBAAgB,EAAE,CAAC;QAChC,OAAO;YACN,MAAM,EAAE,iBAAiB;YACzB,UAAU,EAAE,iBAAiB;YAC7B,OAAO,EAAE,cAAc;YACvB,iBAAiB,EAAE,SAAS;YAC5B,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,IAAI;YACX,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;SAC1C,CAAC;IACH,CAAC;IACD,OAAO;QACN,UAAU,EAAE,iBAAiB;QAC7B,eAAe,EAAE,sBAAsB;QACvC,UAAU,EAAE,iBAAiB;QAC7B,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,iBAAiB;QAC7B,iBAAiB,EAAE,SAAS;QAC5B,kBAAkB,EAAE,SAAS;KAC7B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC9B,MAAuB,EACvB,UAA8B,EAC9B,IAAc,EACd,KAAuC;IAEvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE;YAC/B,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC;YACrC,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC;YAC3C,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC;YACnC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,cAAc,EAAE,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC;SACnD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,SAAS,CACd,MAAM,MAAM,CAAC,GAAG,CAAC,eAAe,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,CACzE,CAAC;QACF,OAAO;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,SAAS,CAAC,IAAc;IAChC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,KAAK,GAAqC,EAAE,CAAC;IAEnD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,SAAS;QACV,CAAC;QAED,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACzD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC;YAC5B,SAAS;QACV,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YACrB,SAAS;QACV,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QACrB,KAAK,EAAE,CAAC;IACT,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;AAC/B,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,IAAa;IACzC,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAY,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,SAAS;IACvB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,UAAU,CAClB,KAAuC,EACvC,GAAW;IAEX,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,SAAS,kBAAkB,CAC1B,KAAuC,EACvC,GAAW;IAEX,OAAO,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,UAAU,CAClB,KAAuC,EACvC,GAAW;IAEX,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1C,CAAC;AAED,SAAS,WAAW,CACnB,KAAuC,EACvC,GAAW;IAEX,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC7C,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAClC,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACpC,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAS,gBAAgB,CACxB,KAAuC,EACvC,GAAW;IAEX,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAa,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED,SAAS,aAAa,CAAC,KAAyB,EAAE,IAAY;IAC7D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC;AACd,CAAC;AAED,kEAAkE;AAClE,IAAI,YAAY,GAAG,KAAK,CAAC;AACzB,IAAI,WAA+B,CAAC;AAEpC,MAAM,SAAS,GAAG;IACjB,IAAI;IACJ,YAAY;IACZ,YAAY;IACZ,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,aAAa;CACb,CAAC;AAEF,SAAS,WAAW,CAAC,IAAa,EAAE,IAAY;IAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAU,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QACpD,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAQ,IAAgC,CAAC,GAAG,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC,EAAE,IAAI,CAAC,CAAC;AACV,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IACnC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC;IACrD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAa;IACrC,IAAI,YAAY,EAAE,CAAC;QAClB,MAAM,MAAM,GACX,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAC/B,CAAC,CAAE,IAAgC;YACnC,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,EAAE,GAAG,MAAM;YAChB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;YACxE,CAAC,CAAC,SAAS,CAAC;QACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO;IACR,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1E,OAAO;IACR,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,sBAAsB;IAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,gBAAgB,GACrB,oGAAoG,CAAC;IACtG,OAAO,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QACtE,GAAG;QACH,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC;KAClE,CAAC,CACF,CAAC;AACH,CAAC;AAED,SAAS,SAAS;IACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkCL,aAAa,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoD/B,CAAC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACtB,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,sBAAsB,EAAE;YACpC,CAAC,CAAC,KAAK,CAAC,IAAI;YACZ,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,qBAAqB,KAAK,CAAC,MAAM,MAAM,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,SAAS,CACtE,IAAI,EACJ,IAAI,EACJ,CAAC,CACD,IAAI,CACL,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAC7D,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC,CAAC,CAAC"}
|