@agentuity/cli 0.0.71 → 0.0.73
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/bin/cli.ts +19 -5
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +77 -19
- package/dist/cli.js.map +1 -1
- package/dist/cmd/auth/api.d.ts +2 -2
- package/dist/cmd/auth/api.d.ts.map +1 -1
- package/dist/cmd/auth/api.js +15 -14
- package/dist/cmd/auth/api.js.map +1 -1
- package/dist/cmd/auth/login.d.ts.map +1 -1
- package/dist/cmd/auth/login.js +37 -16
- package/dist/cmd/auth/login.js.map +1 -1
- package/dist/cmd/auth/ssh/api.d.ts.map +1 -1
- package/dist/cmd/auth/ssh/api.js +3 -2
- package/dist/cmd/auth/ssh/api.js.map +1 -1
- package/dist/cmd/build/ast.d.ts.map +1 -1
- package/dist/cmd/build/ast.js +56 -8
- package/dist/cmd/build/ast.js.map +1 -1
- package/dist/cmd/build/bundler.d.ts +1 -2
- package/dist/cmd/build/bundler.d.ts.map +1 -1
- package/dist/cmd/build/bundler.js +30 -8
- package/dist/cmd/build/bundler.js.map +1 -1
- package/dist/cmd/build/format-schema.d.ts +6 -0
- package/dist/cmd/build/format-schema.d.ts.map +1 -0
- package/dist/cmd/build/format-schema.js +60 -0
- package/dist/cmd/build/format-schema.js.map +1 -0
- package/dist/cmd/build/index.d.ts.map +1 -1
- package/dist/cmd/build/index.js +13 -0
- package/dist/cmd/build/index.js.map +1 -1
- package/dist/cmd/build/plugin.d.ts.map +1 -1
- package/dist/cmd/build/plugin.js +72 -2
- package/dist/cmd/build/plugin.js.map +1 -1
- package/dist/cmd/cloud/db/create.js +2 -2
- package/dist/cmd/cloud/db/create.js.map +1 -1
- package/dist/cmd/cloud/db/delete.js +2 -2
- package/dist/cmd/cloud/db/delete.js.map +1 -1
- package/dist/cmd/cloud/db/get.js +2 -2
- package/dist/cmd/cloud/db/get.js.map +1 -1
- package/dist/cmd/cloud/db/list.js +2 -2
- package/dist/cmd/cloud/db/list.js.map +1 -1
- package/dist/cmd/cloud/db/logs.js +2 -2
- package/dist/cmd/cloud/db/logs.js.map +1 -1
- package/dist/cmd/cloud/db/sql.js +2 -2
- package/dist/cmd/cloud/db/sql.js.map +1 -1
- package/dist/cmd/cloud/deploy.d.ts.map +1 -1
- package/dist/cmd/cloud/deploy.js +163 -24
- package/dist/cmd/cloud/deploy.js.map +1 -1
- package/dist/cmd/cloud/deployment/show.d.ts.map +1 -1
- package/dist/cmd/cloud/deployment/show.js +34 -10
- package/dist/cmd/cloud/deployment/show.js.map +1 -1
- package/dist/cmd/cloud/session/get.js +2 -2
- package/dist/cmd/cloud/session/get.js.map +1 -1
- package/dist/cmd/cloud/session/list.js +2 -2
- package/dist/cmd/cloud/session/list.js.map +1 -1
- package/dist/cmd/cloud/storage/create.js +2 -2
- package/dist/cmd/cloud/storage/create.js.map +1 -1
- package/dist/cmd/cloud/storage/delete.js +2 -2
- package/dist/cmd/cloud/storage/delete.js.map +1 -1
- package/dist/cmd/cloud/storage/download.js +2 -2
- package/dist/cmd/cloud/storage/download.js.map +1 -1
- package/dist/cmd/cloud/storage/get.js +2 -2
- package/dist/cmd/cloud/storage/get.js.map +1 -1
- package/dist/cmd/cloud/storage/list.js +2 -2
- package/dist/cmd/cloud/storage/list.js.map +1 -1
- package/dist/cmd/cloud/storage/upload.js +2 -2
- package/dist/cmd/cloud/storage/upload.js.map +1 -1
- package/dist/cmd/cloud/thread/delete.js +2 -2
- package/dist/cmd/cloud/thread/delete.js.map +1 -1
- package/dist/cmd/cloud/thread/get.js +2 -2
- package/dist/cmd/cloud/thread/get.js.map +1 -1
- package/dist/cmd/cloud/thread/list.js +2 -2
- package/dist/cmd/cloud/thread/list.js.map +1 -1
- package/dist/cmd/dev/agents.d.ts.map +1 -1
- package/dist/cmd/dev/agents.js +2 -2
- package/dist/cmd/dev/agents.js.map +1 -1
- package/dist/cmd/dev/sync.d.ts.map +1 -1
- package/dist/cmd/dev/sync.js +2 -2
- package/dist/cmd/dev/sync.js.map +1 -1
- package/dist/cmd/project/show.d.ts.map +1 -1
- package/dist/cmd/project/show.js +8 -7
- package/dist/cmd/project/show.js.map +1 -1
- package/dist/cmd/project/template-flow.d.ts.map +1 -1
- package/dist/cmd/project/template-flow.js +14 -2
- package/dist/cmd/project/template-flow.js.map +1 -1
- package/dist/config.d.ts +2 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +17 -1
- package/dist/config.js.map +1 -1
- package/dist/output.d.ts.map +1 -1
- package/dist/output.js +5 -1
- package/dist/output.js.map +1 -1
- package/dist/tui.d.ts +46 -1
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +217 -39
- package/dist/tui.js.map +1 -1
- package/dist/types.d.ts +10 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/cli.ts +85 -25
- package/src/cmd/auth/api.ts +20 -26
- package/src/cmd/auth/login.ts +36 -17
- package/src/cmd/auth/ssh/api.ts +5 -6
- package/src/cmd/build/ast.ts +67 -8
- package/src/cmd/build/bundler.ts +37 -9
- package/src/cmd/build/format-schema.ts +66 -0
- package/src/cmd/build/index.ts +14 -0
- package/src/cmd/build/plugin.ts +86 -2
- package/src/cmd/cloud/db/create.ts +2 -2
- package/src/cmd/cloud/db/delete.ts +2 -2
- package/src/cmd/cloud/db/get.ts +2 -2
- package/src/cmd/cloud/db/list.ts +2 -2
- package/src/cmd/cloud/db/logs.ts +2 -2
- package/src/cmd/cloud/db/sql.ts +2 -2
- package/src/cmd/cloud/deploy.ts +187 -24
- package/src/cmd/cloud/deployment/show.ts +42 -10
- package/src/cmd/cloud/session/get.ts +2 -2
- package/src/cmd/cloud/session/list.ts +2 -2
- package/src/cmd/cloud/storage/create.ts +2 -2
- package/src/cmd/cloud/storage/delete.ts +2 -2
- package/src/cmd/cloud/storage/download.ts +2 -2
- package/src/cmd/cloud/storage/get.ts +2 -2
- package/src/cmd/cloud/storage/list.ts +2 -2
- package/src/cmd/cloud/storage/upload.ts +2 -2
- package/src/cmd/cloud/thread/delete.ts +2 -2
- package/src/cmd/cloud/thread/get.ts +2 -2
- package/src/cmd/cloud/thread/list.ts +2 -2
- package/src/cmd/dev/agents.ts +2 -4
- package/src/cmd/dev/sync.ts +6 -8
- package/src/cmd/project/show.ts +8 -6
- package/src/cmd/project/template-flow.ts +21 -2
- package/src/config.ts +19 -6
- package/src/output.ts +7 -1
- package/src/tui.ts +302 -41
package/bin/cli.ts
CHANGED
|
@@ -36,14 +36,28 @@ process.once('SIGTERM', () => {
|
|
|
36
36
|
|
|
37
37
|
validateRuntime();
|
|
38
38
|
|
|
39
|
-
//
|
|
40
|
-
|
|
41
|
-
const
|
|
39
|
+
// Preprocess arguments to convert --help=json to --help json
|
|
40
|
+
// Commander.js doesn't support --option=value syntax for optional values
|
|
41
|
+
const preprocessedArgs = process.argv.slice(2).flatMap((arg) => {
|
|
42
|
+
if (arg === '--help=json') {
|
|
43
|
+
return ['--help', 'json'];
|
|
44
|
+
}
|
|
45
|
+
return arg;
|
|
46
|
+
});
|
|
47
|
+
// Preserve the original process.argv[0] (runtime) and process.argv[1] (script path)
|
|
48
|
+
// This is important for Bun, Node, and bundled executables
|
|
49
|
+
process.argv = [process.argv[0], process.argv[1], ...preprocessedArgs];
|
|
50
|
+
|
|
42
51
|
const helpFlags = ['--help', '-h', 'help'];
|
|
43
|
-
const hasHelp = helpFlags.some((flag) =>
|
|
52
|
+
const hasHelp = helpFlags.some((flag) => preprocessedArgs.includes(flag));
|
|
44
53
|
|
|
45
54
|
// Check for --help=json early (needs to exit before full initialization)
|
|
46
|
-
|
|
55
|
+
// After preprocessing, --help=json becomes ['--help', 'json'] (length 2)
|
|
56
|
+
if (
|
|
57
|
+
preprocessedArgs.length === 2 &&
|
|
58
|
+
preprocessedArgs[0] === '--help' &&
|
|
59
|
+
preprocessedArgs[1] === 'json'
|
|
60
|
+
) {
|
|
47
61
|
const version = getVersion();
|
|
48
62
|
const program = await createCLI(version);
|
|
49
63
|
const commands = await discoverCommands();
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EACX,iBAAiB,EAEjB,cAAc,EAQd,MAAM,SAAS,CAAC;AAqNjB,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EACX,iBAAiB,EAEjB,cAAc,EAQd,MAAM,SAAS,CAAC;AAqNjB,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAmMjE;AA2wBD,wBAAsB,gBAAgB,CACrC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC,CAgMf"}
|
package/dist/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
|
-
import { showBanner
|
|
2
|
+
import { showBanner } from './banner';
|
|
3
3
|
import { requireAuth, optionalAuth, requireOrg, optionalOrg as selectOptionalOrg } from './auth';
|
|
4
4
|
import { listRegions } from '@agentuity/server';
|
|
5
5
|
import enquirer from 'enquirer';
|
|
@@ -229,6 +229,42 @@ export async function createCLI(version) {
|
|
|
229
229
|
program.configureHelp({
|
|
230
230
|
subcommandTerm: (cmd) => cmd.name(),
|
|
231
231
|
formatHelp: (cmd, helper) => {
|
|
232
|
+
// Check if JSON help was requested via --help=json (converted to --help json)
|
|
233
|
+
const args = process.argv.slice(2);
|
|
234
|
+
const helpIndex = args.findIndex((a) => a === '--help' || a === '-h');
|
|
235
|
+
const wantsJson = helpIndex !== -1 && args[helpIndex + 1] === 'json';
|
|
236
|
+
if (wantsJson) {
|
|
237
|
+
// Generate JSON help for this specific command
|
|
238
|
+
const commands = helper.visibleCommands(cmd);
|
|
239
|
+
// Extract examples if available
|
|
240
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
241
|
+
const cmdAny = cmd;
|
|
242
|
+
const examples = cmdAny._examples || [];
|
|
243
|
+
const cmdHelp = {
|
|
244
|
+
name: cmd.name(),
|
|
245
|
+
description: cmd.description(),
|
|
246
|
+
usage: cmd.usage(),
|
|
247
|
+
commands: commands.map((c) => ({
|
|
248
|
+
name: c.name(),
|
|
249
|
+
aliases: c.aliases(),
|
|
250
|
+
description: c.description(),
|
|
251
|
+
})),
|
|
252
|
+
arguments: helper.visibleArguments(cmd).map((arg) => ({
|
|
253
|
+
term: helper.argumentTerm(arg),
|
|
254
|
+
description: helper.argumentDescription(arg),
|
|
255
|
+
})),
|
|
256
|
+
options: helper.visibleOptions(cmd).map((opt) => ({
|
|
257
|
+
flags: helper.optionTerm(opt),
|
|
258
|
+
description: helper.optionDescription(opt),
|
|
259
|
+
})),
|
|
260
|
+
globalOptions: helper.visibleGlobalOptions(cmd).map((opt) => ({
|
|
261
|
+
flags: helper.optionTerm(opt),
|
|
262
|
+
description: helper.optionDescription(opt),
|
|
263
|
+
})),
|
|
264
|
+
...(examples.length > 0 && { examples }),
|
|
265
|
+
};
|
|
266
|
+
return JSON.stringify(cmdHelp, null, 2);
|
|
267
|
+
}
|
|
232
268
|
const termWidth = helper.padWidth(cmd, helper);
|
|
233
269
|
const itemIndentWidth = 2;
|
|
234
270
|
const itemSeparatorWidth = 2;
|
|
@@ -238,8 +274,8 @@ export async function createCLI(version) {
|
|
|
238
274
|
}
|
|
239
275
|
return term;
|
|
240
276
|
}
|
|
241
|
-
// Format each section
|
|
242
|
-
let output =
|
|
277
|
+
// Format each section (don't show banner for subcommands)
|
|
278
|
+
let output = '';
|
|
243
279
|
// Description
|
|
244
280
|
const description = helper.commandDescription(cmd);
|
|
245
281
|
if (description) {
|
|
@@ -361,21 +397,32 @@ async function resolveRegion(opts) {
|
|
|
361
397
|
}
|
|
362
398
|
async function registerSubcommand(parent, subcommand, baseCtx, hidden) {
|
|
363
399
|
const cmd = parent.command(subcommand.name, { hidden }).description(subcommand.description);
|
|
364
|
-
cmd.helpOption('-h, --help', 'Display help');
|
|
400
|
+
cmd.helpOption('-h, --help=[json]', 'Display help (with optional JSON output)');
|
|
365
401
|
if (subcommand.aliases) {
|
|
366
402
|
cmd.aliases(subcommand.aliases);
|
|
367
403
|
}
|
|
368
|
-
// Add examples to help text
|
|
404
|
+
// Add examples to help text (skip in JSON mode)
|
|
369
405
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
370
406
|
const examples = subcommand.examples;
|
|
371
407
|
if (examples && examples.length > 0) {
|
|
372
|
-
//
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
408
|
+
// Store examples for JSON help generation
|
|
409
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
410
|
+
cmd._examples = examples;
|
|
411
|
+
// Add formatted examples to text help
|
|
412
|
+
cmd.addHelpText('after', () => {
|
|
413
|
+
// Skip examples in JSON mode
|
|
414
|
+
const args = process.argv.slice(2);
|
|
415
|
+
const helpIndex = args.findIndex((a) => a === '--help' || a === '-h');
|
|
416
|
+
if (helpIndex !== -1 && args[helpIndex + 1] === 'json') {
|
|
417
|
+
return '';
|
|
418
|
+
}
|
|
419
|
+
const maxLength = Math.max(...examples.map((ex) => ex.command.length));
|
|
420
|
+
const formatted = examples.map((ex) => {
|
|
421
|
+
const padding = ' '.repeat(maxLength - ex.command.length + 1);
|
|
422
|
+
return ` ${tui.colorPrimary(ex.command)}${padding}${tui.muted('#')} ${tui.muted(ex.description)}`;
|
|
423
|
+
});
|
|
424
|
+
return `\n${tui.colorPrimary('\x1b[4mExamples:\x1b[24m')}\n` + formatted.join('\n');
|
|
377
425
|
});
|
|
378
|
-
cmd.addHelpText('after', `\n${tui.colorPrimary('\x1b[4mExamples:\x1b[24m')}\n` + formatted.join('\n'));
|
|
379
426
|
}
|
|
380
427
|
// Check if this subcommand has its own subcommands (nested subcommands)
|
|
381
428
|
const subDef = subcommand;
|
|
@@ -878,21 +925,32 @@ export async function registerCommands(program, commands, baseCtx) {
|
|
|
878
925
|
const cmd = program
|
|
879
926
|
.command(cmdDef.name, { hidden: cmdDef.hidden })
|
|
880
927
|
.description(cmdDef.description);
|
|
881
|
-
cmd.helpOption('-h, --help', 'Display help');
|
|
928
|
+
cmd.helpOption('-h, --help=[json]', 'Display help (with optional JSON output)');
|
|
882
929
|
if (cmdDef.aliases) {
|
|
883
930
|
cmd.aliases(cmdDef.aliases);
|
|
884
931
|
}
|
|
885
|
-
// Add examples to help text
|
|
932
|
+
// Add examples to help text (skip in JSON mode)
|
|
886
933
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
887
934
|
const examples = cmdDef.examples;
|
|
888
935
|
if (examples && examples.length > 0) {
|
|
889
|
-
//
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
936
|
+
// Store examples for JSON help generation
|
|
937
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
938
|
+
cmd._examples = examples;
|
|
939
|
+
// Add formatted examples to text help
|
|
940
|
+
cmd.addHelpText('after', () => {
|
|
941
|
+
// Skip examples in JSON mode
|
|
942
|
+
const args = process.argv.slice(2);
|
|
943
|
+
const helpIndex = args.findIndex((a) => a === '--help' || a === '-h');
|
|
944
|
+
if (helpIndex !== -1 && args[helpIndex + 1] === 'json') {
|
|
945
|
+
return '';
|
|
946
|
+
}
|
|
947
|
+
const maxLength = Math.max(...examples.map((ex) => ex.command.length));
|
|
948
|
+
const formatted = examples.map((ex) => {
|
|
949
|
+
const padding = ' '.repeat(maxLength - ex.command.length + 1);
|
|
950
|
+
return ` ${tui.colorPrimary(ex.command)}${padding}${tui.muted('#')} ${tui.muted(ex.description)}`;
|
|
951
|
+
});
|
|
952
|
+
return `\n${tui.colorPrimary('\x1b[4mExamples:\x1b[24m')}\n` + formatted.join('\n');
|
|
894
953
|
});
|
|
895
|
-
cmd.addHelpText('after', `\n${tui.colorPrimary('\x1b[4mExamples:\x1b[24m')}\n` + formatted.join('\n'));
|
|
896
954
|
}
|
|
897
955
|
if (cmdDef.handler) {
|
|
898
956
|
cmd.action(async () => {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AACjG,OAAO,EAAE,WAAW,EAAmB,MAAM,mBAAmB,CAAC;AACjE,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAmC,MAAM,OAAO,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAyB,MAAM,UAAU,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,oBAAoB,GAAG,eAAe,CAAC,sBAAsB,CAAC,CAAC;AAErE,SAAS,eAAe,CAAC,OAAuB,EAAE,MAAqB;IACtE,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEhE,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,MAAM,IAAI,oBAAoB,CAAC;gBAC9B,OAAO,EAAE,+CAA+C;aACxD,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,SAAS,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YAC7C,MAAM,IAAI,oBAAoB,CAAC;gBAC9B,OAAO,EAAE,8CAA8C;aACvD,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,IAAI,oBAAoB,CAAC;YAC9B,OAAO,EAAE,qCAAqC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;YACxG,KAAK,EAAE,KAAK;SACZ,CAAC,CAAC;IACJ,CAAC;AACF,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAC/B,GAAmB,EACnB,WAAmB,EACnB,OAA6D,EAC7D,iBAA2B;IAE3B,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,4EAA4E;QAC5E,MAAM,MAAM,GAAqB;YAChC,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,WAAW;SACpB,CAAC;QACF,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACpB,mBAAmB;QACnB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QAElC,wBAAwB;QACxB,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACtB,yEAAyE;YACzE,IAAI,iBAAiB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC/C,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC3E,aAAa,CACZ,WAAW,CACV,SAAS,CAAC,cAAc,EACxB,YAAY,WAAW,iGAAiG,CACxH,EACD,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,OAAO,CAAC,WAAW,CACvB,CAAC;YACH,CAAC;YAED,4CAA4C;YAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;gBAChD,UAAU,CAAC,MAAM,CAAC,CAAC;YACpB,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAC7B,KAAc,EACd,WAAmB,EACnB,OAAmD;IAEnD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAI,KAAgE,CAAC,MAAM,CAAC;QAExF,IAAI,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,wDAAwD;YACxD,MAAM,MAAM,GAAqB;gBAChC,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,WAAW;gBACpB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBAC9B,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;oBAC5D,OAAO,EAAE,KAAK,CAAC,OAAO;iBACtB,CAAC,CAAC;aACH,CAAC;YACF,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACP,iCAAiC;YACjC,aAAa,CACZ;gBACC,IAAI,EAAE,SAAS,CAAC,iBAAiB;gBACjC,OAAO,EAAE,kBAAkB;gBAC3B,OAAO,EAAE;oBACR,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;wBAC9B,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;wBAC5D,OAAO,EAAE,KAAK,CAAC,OAAO;qBACtB,CAAC,CAAC;iBACH;aACD,EACD,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,MAAM,CACrC,CAAC;QACH,CAAC;IACF,CAAC;IACD,MAAM,KAAK,CAAC;AACb,CAAC;AAeD,SAAS,aAAa,CAAC,GAA6C;IACnE,8DAA8D;IAC9D,MAAM,CAAC,GAAQ,GAAU,CAAC;IAC1B,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAgC,CAAC;IACpD,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAgC,CAAC;IAEpD,MAAM,YAAY,GAAG,QAAQ,EAAE,IAAI,KAAK,IAAI,CAAC;IAC7C,MAAM,iBAAiB,GAAG,QAAQ,EAAE,IAAI,CAAC;IACzC,MAAM,YAAY,GACjB,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,iBAAiB,IAAI,KAAK,CAAC;IAE7F,MAAM,eAAe,GAAG,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACnD,MAAM,eAAe,GAAG,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAEnD,MAAM,WAAW,GAAG,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,MAAM,WAAW,GAAG,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,MAAM,eAAe,GAAG,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACnD,MAAM,cAAc,GAAG,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,MAAM,cAAc,GAAG,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAEjD,wEAAwE;IACxE,MAAM,iBAAiB,GACtB,QAAQ,EAAE,SAAS,KAAK,IAAI;QAC5B,WAAW;QACX,WAAW;QACX,cAAc;QACd,cAAc;QACd,eAAe,CAAC;IAEjB,OAAO;QACN,YAAY;QACZ,YAAY;QACZ,eAAe;QACf,eAAe;QACf,iBAAiB;QACjB,WAAW;QACX,WAAW;QACX,eAAe;QACf,cAAc;QACd,cAAc;KACd,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAChC,KAAc,EACd,eAAwB,EACxB,MAAc,EACd,WAA6B;IAE7B,IACC,eAAe;QACf,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,MAAM,IAAI,KAAK;QACf,KAAK,CAAC,IAAI,KAAK,gCAAgC,EAC9C,CAAC;QACF,aAAa,CACZ,WAAW,CAAC,SAAS,CAAC,iBAAiB,EAAE,wBAAwB,EAAE,SAAS,EAAE;YAC7E,4CAA4C;YAC5C,iDAAiD;YACjD,QAAQ,UAAU,CAAC,gBAAgB,CAAC,2BAA2B;SAC/D,CAAC,EACF,MAAM,EACN,WAAW,IAAI,MAAM,CACrB,CAAC;IACH,CAAC;IACD,MAAM,KAAK,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAe;IAC9C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAE9B,OAAO;SACL,IAAI,CAAC,WAAW,CAAC;SACjB,OAAO,CAAC,OAAO,EAAE,eAAe,EAAE,iBAAiB,CAAC;SACpD,UAAU,CAAC,mBAAmB,EAAE,0CAA0C,CAAC;SAC3E,kBAAkB,CAAC,KAAK,CAAC;SACzB,oBAAoB,CAAC,KAAK,CAAC;SAC3B,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAE3B,OAAO;SACL,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;SAC7C,MAAM,CAAC,qBAAqB,EAAE,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,MAAM,CAAC;SACrF,MAAM,CAAC,iBAAiB,EAAE,+BAA+B,EAAE,KAAK,CAAC;SACjE,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,EAAE,IAAI,CAAC;SAC1D,MAAM,CACN,eAAe,EACf,wDAAwD,EACxD,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAClC;SACA,MAAM,CAAC,yBAAyB,EAAE,6BAA6B,CAAC;SAChE,MAAM,CAAC,gBAAgB,EAAE,mCAAmC,EAAE,MAAM,CAAC;SACrE,MAAM,CAAC,yBAAyB,EAAE,mCAAmC,EAAE,MAAM,CAAC;SAC9E,MAAM,CAAC,QAAQ,EAAE,0CAA0C,EAAE,KAAK,CAAC;SACnE,MAAM,CAAC,SAAS,EAAE,+BAA+B,EAAE,KAAK,CAAC;SACzD,MAAM,CAAC,eAAe,EAAE,6BAA6B,EAAE,KAAK,CAAC;SAC7D,MAAM,CAAC,WAAW,EAAE,kDAAkD,EAAE,KAAK,CAAC;SAC9E,MAAM,CAAC,WAAW,EAAE,wCAAwC,EAAE,KAAK,CAAC;SACpE,MAAM,CAAC,YAAY,EAAE,kDAAkD,EAAE,KAAK,CAAC,CAAC;IAElF,MAAM,sBAAsB,GAAG,OAAO,CAAC,YAAY,CAClD,sBAAsB,EACtB,6CAA6C,CAC7C,CAAC;IACF,sBAAsB,CAAC,QAAQ,EAAE,CAAC;IAClC,OAAO,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;IAE1C,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;QACnB,UAAU,CAAC,OAAO,CAAC,CAAC;QACpB,OAAO,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,0BAA0B;IAC1B,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,QAAkB,EAAE,EAAE;QAC9C,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,2BAA2B,cAAc,GAAG,CAAC,CAAC;QAC5D,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACpE,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACrC,iBAAiB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBAClC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,QAAQ,UAAU,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,4DAA4D;IAC5D,OAAO,CAAC,eAAe,CAAC;QACvB,WAAW,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC3B,gFAAgF;YAChF,IAAI,GAAG,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBAC7C,OAAO;YACR,CAAC;YACD,wCAAwC;YACxC,IAAI,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC3E,oDAAoD;gBACpD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACrC,IAAI,KAAK,EAAE,CAAC;oBACX,KAAK,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,sCAAsC,CAAC,IAAI,CAAC,CAAC;oBACrE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,UAAU,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC,CAAC;gBAC9E,CAAC;qBAAM,CAAC;oBACP,KAAK,CAAC,GAAG,CAAC,CAAC;gBACZ,CAAC;YACF,CAAC;iBAAM,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrC,mCAAmC;gBACnC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACP,KAAK,CAAC,GAAG,CAAC,CAAC;YACZ,CAAC;QACF,CAAC;KACD,CAAC,CAAC;IAEH,8DAA8D;IAC9D,OAAO,CAAC,aAAa,CAAC;QACrB,cAAc,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE;QACnC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YAC3B,8EAA8E;YAC9E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;YACtE,MAAM,SAAS,GAAG,SAAS,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC;YAErE,IAAI,SAAS,EAAE,CAAC;gBACf,+CAA+C;gBAC/C,MAAM,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;gBAE7C,gCAAgC;gBAChC,8DAA8D;gBAC9D,MAAM,MAAM,GAAG,GAAU,CAAC;gBAC1B,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;gBAExC,MAAM,OAAO,GAAG;oBACf,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE;oBAC9B,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE;oBAClB,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC9B,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;wBACd,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;wBACpB,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE;qBAC5B,CAAC,CAAC;oBACH,SAAS,EAAE,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBACrD,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC;wBAC9B,WAAW,EAAE,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC;qBAC5C,CAAC,CAAC;oBACH,OAAO,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBACjD,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;wBAC7B,WAAW,EAAE,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC;qBAC1C,CAAC,CAAC;oBACH,aAAa,EAAE,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBAC7D,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;wBAC7B,WAAW,EAAE,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC;qBAC1C,CAAC,CAAC;oBACH,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;iBACxC,CAAC;gBACF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACzC,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC/C,MAAM,eAAe,GAAG,CAAC,CAAC;YAC1B,MAAM,kBAAkB,GAAG,CAAC,CAAC;YAE7B,SAAS,UAAU,CAAC,IAAY,EAAE,WAAmB;gBACpD,IAAI,WAAW,EAAE,CAAC;oBACjB,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC,SAAS,CACpD,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,kBAAkB,CAAC,CAC3C,GAAG,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnC,CAAC;gBACD,OAAO,IAAI,CAAC;YACb,CAAC;YAED,0DAA0D;YAC1D,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,cAAc;YACd,MAAM,WAAW,GAAG,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;YACnD,IAAI,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC;YAC7C,CAAC;YAED,QAAQ;YACR,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACvC,IAAI,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,sBAAsB,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;YACrG,CAAC;YAED,YAAY;YACZ,MAAM,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAClE,OAAO,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC;YACxF,CAAC,CAAC,CAAC;YACH,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,0BAA0B,CAAC,KAAK,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAC7F,CAAC;YAED,UAAU;YACV,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC5D,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;YAChF,CAAC,CAAC,CAAC;YACH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,wBAAwB,CAAC,KAAK,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACzF,CAAC;YAED,iBAAiB;YACjB,MAAM,gBAAgB,GAAG,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACxE,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;YAChF,CAAC,CAAC,CAAC;YACH,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,+BAA+B,CAAC,KAAK,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACtG,CAAC;YAED,WAAW;YACX,MAAM,WAAW,GAAG,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC3D,OAAO,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;YAClF,CAAC,CAAC,CAAC;YACH,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,yBAAyB,CAAC,KAAK,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3F,CAAC;YAED,OAAO,MAAM,CAAC;QACf,CAAC;KACD,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,OAAmB;IAC3C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC1B,CAAC;SAAM,CAAC;QACP,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAqB;YAC1D,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,wBAAwB;YACjC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC5B,IAAI,EAAE,CAAC,CAAC,MAAM;gBACd,OAAO,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;aAClE,CAAC,CAAC;SACH,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,MAAM,CAAC;IACxB,CAAC;AACF,CAAC;AAUD,KAAK,UAAU,aAAa,CAAC,IAA0B;IACtD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAEtD,gBAAgB;IAChB,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC;IAE7C,uBAAuB;IACvB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,IAAI,QAAQ,EAAE,CAAC;YACd,MAAM,WAAW,GAAI,OAAmC,CAAC,WAG7C,CAAC;YACb,aAAa,CACZ,WAAW,CAAC,SAAS,CAAC,oBAAoB,EAAE,4BAA4B,EAAE,SAAS,EAAE;gBACpF,qDAAqD;aACrD,CAAC,EACF,MAAM,EACN,WAAW,IAAI,MAAM,CACrB,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,wCAAwC;IACxC,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,IAAK,OAAO,CAAC,MAA6B,CAAC;IAEnE,qCAAqC;IACrC,IAAI,MAAM,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,WAAW,GAAI,OAAmC,CAAC,WAG7C,CAAC;YACb,aAAa,CACZ,WAAW,CACV,SAAS,CAAC,gBAAgB,EAC1B,mBAAmB,MAAM,GAAG,EAC5B,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAC1D,CAAC,eAAe,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAC1D,EACD,MAAM,EACN,WAAW,IAAI,MAAM,CACrB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,2CAA2C;IAC3C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,kDAAkD;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC/C,IAAI,SAAS,EAAE,CAAC;QACf,2DAA2D;QAC3D,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QACnE,IAAI,cAAc,EAAE,CAAC;YACpB,OAAO,cAAc,CAAC,MAAM,CAAC;QAC9B,CAAC;QACD,6CAA6C;IAC9C,CAAC;IAED,2CAA2C;IAC3C,IAAI,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACtC,MAAM,WAAW,GAAI,OAAmC,CAAC,WAG7C,CAAC;QACb,aAAa,CACZ,WAAW,CACV,SAAS,CAAC,eAAe,EACzB,mDAAmD,EACnD,EAAE,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAClD;YACC,6BAA6B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACtE,8CAA8C;SAC9C,CACD,EACD,MAAM,EACN,WAAW,IAAI,MAAM,CACrB,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACzB,iCAAiC;QACjC,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC;IACf,CAAC;IAED,sDAAsD;IACtD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,kBAAkB,CAChC,MAAe,EACf,UAAgC,EAChC,OAAuB,EACvB,MAAgB;IAEhB,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAE5F,GAAG,CAAC,UAAU,CAAC,mBAAmB,EAAE,0CAA0C,CAAC,CAAC;IAEhF,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,gDAAgD;IAChD,8DAA8D;IAC9D,MAAM,QAAQ,GAAI,UAAkB,CAAC,QAEzB,CAAC;IACb,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,0CAA0C;QAC1C,8DAA8D;QAC7D,GAAW,CAAC,SAAS,GAAG,QAAQ,CAAC;QAElC,sCAAsC;QACtC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE;YAC7B,6BAA6B;YAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;YACtE,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;gBACxD,OAAO,EAAE,CAAC;YACX,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBACrC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC9D,OAAO,KAAK,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;YACpG,CAAC,CAAC,CAAC;YACH,OAAO,KAAK,GAAG,CAAC,YAAY,CAAC,0BAA0B,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,wEAAwE;IACxE,MAAM,MAAM,GAAG,UAAiE,CAAC;IACjF,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,0CAA0C;QAC1C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5C,MAAM,kBAAkB,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;QAED,kCAAkC;QAClC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;aACnC,WAAW,CAAC,cAAc,CAAC;aAC3B,MAAM,CAAC,GAAG,EAAE;YACZ,GAAG,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;QAEJ,OAAO;IACR,CAAC;IAED,MAAM,EACL,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,EACX,cAAc,EACd,cAAc,GACd,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;IAE9B,IAAI,eAAe,IAAI,eAAe,EAAE,CAAC;QACxC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,gDAAgD,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,WAAW,IAAI,WAAW,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,cAAc,IAAI,cAAc,EAAE,CAAC;QACtC,GAAG,CAAC,MAAM,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAI,SAAiB,CAAC;YACtB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACtB,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,MAAM,CAAC;YAChF,CAAC;iBAAM,CAAC;gBACP,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC;YAC1E,CAAC;YACD,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC;IACF,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7D,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI;iBACnB,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;iBACtC,OAAO,CAAC,uBAAuB,EAAE,OAAO,CAAC;iBACzC,WAAW,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;YACnC,mCAAmC;YACnC,MAAM,QAAQ,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACpE,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC5B,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;oBACpB,MAAM,YAAY,GACjB,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;oBAChF,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;oBACjC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;gBAC1C,CAAC;qBAAM,CAAC;oBACP,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAC5B,CAAC;YACF,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAClC,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU;oBAChC,CAAC,CAAC,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU;wBACvC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE;wBACpB,CAAC,CAAC,GAAG,CAAC,YAAY;oBACnB,CAAC,CAAC,SAAS,CAAC;gBACb,MAAM,OAAO,GACZ,GAAG,CAAC,UAAU,IAAI,UAAU,KAAK,SAAS;oBACzC,CAAC,CAAC,GAAG,IAAI,cAAc,UAAU,GAAG;oBACpC,CAAC,CAAC,IAAI,CAAC;gBACT,GAAG,CAAC,MAAM,CAAC,GAAG,QAAQ,KAAK,GAAG,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YAC9D,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACjC,MAAM,YAAY,GAAG,GAAG,CAAC,UAAU;oBAClC,CAAC,CAAC,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU;wBACvC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE;wBACpB,CAAC,CAAC,GAAG,CAAC,YAAY;oBACnB,CAAC,CAAC,SAAS,CAAC;gBACb,MAAM,SAAS,GACd,GAAG,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;oBACvE,CAAC,CAAC,GAAG,IAAI,cAAc,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG;oBACtD,CAAC,CAAC,IAAI,CAAC;gBACT,GAAG,CAAC,MAAM,CACT,GAAG,QAAQ,KAAK,GAAG,CAAC,IAAI,GAAG,EAC3B,SAAS,EACT,CAAC,KAAa,EAAE,QAAkB,EAAE,EAAE,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CACvE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU;oBAChC,CAAC,CAAC,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU;wBACvC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE;wBACpB,CAAC,CAAC,GAAG,CAAC,YAAY;oBACnB,CAAC,CAAC,SAAS,CAAC;gBACb,IAAI,OAAO,GAAG,IAAI,CAAC;gBACnB,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjD,OAAO,IAAI,KAAK,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC9C,CAAC;gBACD,IAAI,GAAG,CAAC,UAAU,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAChD,OAAO,IAAI,cAAc,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC;gBACxD,CAAC;gBACD,GAAG,CAAC,MAAM,CAAC,GAAG,QAAQ,KAAK,GAAG,CAAC,IAAI,GAAG,EAAE,OAAO,CAAC,CAAC;YAClD,CAAC;QACF,CAAC;IACF,CAAC;IAED,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,OAAkB,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAA4C,CAAC;QACtF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAElC,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACvB,UAAU,EAAE,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;QAE7C,IAAI,OAAkC,CAAC;QACvC,IAAI,UAA8B,CAAC;QACnC,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,IAAI,UAAU,CAAC,eAAe,CAAC;QAE3E,IAAI,SAAS,EAAE,CAAC;YACf,MAAM,GAAG,GAAI,OAAO,CAAC,GAA0B,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YACjE,UAAU,GAAG,GAAG,CAAC;YACjB,IAAI,CAAC;gBACJ,OAAO,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YACxD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;oBAChC,IACC,KAAK;wBACL,OAAO,KAAK,KAAK,QAAQ;wBACzB,MAAM,IAAI,KAAK;wBACf,KAAK,CAAC,IAAI,KAAK,gCAAgC,EAC9C,CAAC;wBACF,aAAa,CACZ,WAAW,CAAC,SAAS,CAAC,iBAAiB,EAAE,wBAAwB,EAAE,SAAS,EAAE;4BAC7E,4CAA4C;4BAC5C,iDAAiD;4BACjD,QAAQ,UAAU,CAAC,gBAAgB,CAAC,2BAA2B;yBAC/D,CAAC,EACF,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAAC,WAAW,CAC3B,CAAC;oBACH,CAAC;oBACD,MAAM,KAAK,CAAC;gBACb,CAAC;gBACD,kEAAkE;YACnE,CAAC;QACF,CAAC;QAED,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;YAC7B,mEAAmE;YACnE,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;gBACjC,OAAmC,CAAC,SAAS,GAAG,eAAe,CAC/D,OAAO,EACP,OAAO,CAAC,MAAM,IAAI,IAAI,CACtB,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAoC,CAAC,CAAC;YAErE,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACvB,IAAI,CAAC;oBACJ,MAAM,KAAK,GAAG,oBAAoB,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBACrE,MAAM,GAAG,GAA4B;wBACpC,GAAG,OAAO;wBACV,MAAM,EAAE;4BACP,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;4BACzB,IAAI,EAAE;gCACL,OAAO,EAAE,IAAI,CAAC,MAAM;gCACpB,OAAO,EAAE,IAAI,CAAC,MAAM;gCACpB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;6BAC/B;yBACD;wBACD,IAAI;qBACJ,CAAC;oBACF,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;wBAC3B,IAAI,OAAO,EAAE,CAAC;4BACb,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;wBACvB,CAAC;wBACD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;oBAC7B,CAAC;oBACD,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;wBAC5B,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACrD,CAAC;oBACD,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBAC/B,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC3D,CAAC;oBACD,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;wBAClC,2CAA2C;wBAC3C,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,MAAuB,CAAC,CAAC;oBACvE,CAAC;oBACD,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;wBAC5B,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAC3B,GAAoD,CACpD,CAAC;oBACH,CAAC;oBACD,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;wBACxC,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAC3B,GAAoD,CACpD,CAAC;oBACH,CAAC;oBACD,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;wBAC/E,MAAM,SAAS,GAAkB,GAAG,CAAC,SAA0B,CAAC;wBAChE,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC;4BAChC,OAAO,EAAE,wBAAwB;4BACjC,cAAc,EAAE,IAAI;4BACpB,QAAQ,EAAE,KAAK,IAAI,EAAE;gCACpB,OAAO,aAAa,CAAC;oCACpB,OAAO,EAAE,OAAkC;oCAC3C,SAAS;oCACT,MAAM,EAAE,OAAO,CAAC,MAAM;oCACtB,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,cAAc;oCACrC,MAAM,EAAE,OAAO,EAAE,MAAM;iCACvB,CAAC,CAAC;4BACJ,CAAC;yBACD,CAAC,CAAC;wBACH,IAAI,MAAM,EAAE,CAAC;4BACZ,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;wBACrB,CAAC;oBACF,CAAC;oBACD,MAAM,iBAAiB,CACtB,GAAqB,EACrB,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,EACrC,UAAU,CAAC,OAAO,EAClB,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAC7B,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;wBAC7D,qBAAqB,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;oBAC9E,CAAC;oBACD,wBAAwB,CACvB,KAAK,EACL,UAAU,CAAC,eAAe,EAC1B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAAC,WAAW,CAC3B,CAAC;gBACH,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,MAAM,GAAG,GAA4B;oBACpC,GAAG,OAAO;oBACV,MAAM,EAAE,OAAO,CAAC,MAAM;wBACrB,CAAC,CAAC;4BACA,GAAG,OAAO,CAAC,MAAM;4BACjB,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,kBAAkB;4BAC/C,IAAI,EAAE;gCACL,OAAO,EAAE,IAAI,CAAC,MAAM;gCACpB,OAAO,EAAE,IAAI,CAAC,MAAM;gCACpB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;6BAC/B;yBACD;wBACF,CAAC,CAAC,IAAI;oBACP,IAAI;iBACJ,CAAC;gBACF,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;oBAC3B,IAAI,OAAO,EAAE,CAAC;wBACb,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;oBACvB,CAAC;oBACD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;gBAC7B,CAAC;gBACD,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;oBAClC,2CAA2C;oBAC3C,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,MAAuB,CAAC,CAAC;gBACvE,CAAC;gBACD,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;oBAC5B,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAAC,GAAoD,CAAC,CAAC;gBACpF,CAAC;gBACD,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;oBACxC,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAAC,GAAoD,CAAC,CAAC;gBACpF,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;oBAC/E,MAAM,SAAS,GAAkB,GAAG,CAAC,SAA0B,CAAC;oBAChE,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;wBACrE,OAAO,aAAa,CAAC;4BACpB,OAAO,EAAE,OAAkC;4BAC3C,SAAS;4BACT,MAAM,EAAE,OAAO,CAAC,MAAM;4BACtB,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,cAAc;4BACrC,MAAM,EAAE,OAAO,EAAE,MAAM;yBACvB,CAAC,CAAC;oBACJ,CAAC,CAAC,CAAC;oBACH,IAAI,MAAM,EAAE,CAAC;wBACZ,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;oBACrB,CAAC;gBACF,CAAC;gBACD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;oBACxB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,GAAqB,CAAC,CAAC;oBAE/D,wBAAwB;oBACxB,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;wBAC1B,8DAA8D;wBAC9D,MAAM,iBAAiB,GAAG,CAAC,CAAE,UAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC;wBAEjE,yEAAyE;wBACzE,IAAI,iBAAiB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BAC/C,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;4BAC3E,aAAa,CACZ,WAAW,CACV,SAAS,CAAC,cAAc,EACxB,YAAY,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,iGAAiG,CAC7I,EACD,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAAC,WAAW,CAC3B,CAAC;wBACH,CAAC;wBAED,4CAA4C;wBAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BAC1B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;4BAChD,UAAU,CAAC,MAAM,CAAC,CAAC;wBACpB,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;aAAM,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;YACpC,MAAM,YAAY,GACjB,OAAO,UAAU,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;YAEnF,oEAAoE;YACpE,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;gBACjC,OAAmC,CAAC,SAAS,GAAG,eAAe,CAC/D,OAAO,EACP,OAAO,CAAC,MAAM,IAAI,IAAI,CACtB,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAoC,EAAE,YAAY,CAAC,CAAC;YAEpF,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACvB,IAAI,CAAC;oBACJ,MAAM,KAAK,GAAG,oBAAoB,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBACrE,MAAM,GAAG,GAA4B;wBACpC,GAAG,OAAO;wBACV,MAAM,EAAE,IAAI;4BACX,CAAC,CAAC;gCACA,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;gCACzB,IAAI,EAAE;oCACL,OAAO,EAAE,IAAI,CAAC,MAAM;oCACpB,OAAO,EAAE,IAAI,CAAC,MAAM;oCACpB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;iCAC/B;6BACD;4BACF,CAAC,CAAC,OAAO,CAAC,MAAM;wBACjB,IAAI;qBACJ,CAAC;oBACF,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;wBAC3B,IAAI,OAAO,EAAE,CAAC;4BACb,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;wBACvB,CAAC;wBACD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;oBAC7B,CAAC;oBACD,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;wBAC5B,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACrD,CAAC;oBACD,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBAC/B,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC3D,CAAC;oBACD,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;wBAClC,2CAA2C;wBAC3C,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,MAAuB,CAAC,CAAC;oBACvE,CAAC;oBACD,OAAO,CAAC,MAAM,CAAC,KAAK,CACnB,mEAAmE,EACnE,UAAU,CAAC,WAAW,EACtB,UAAU,CAAC,cAAc,EACzB,CAAC,CAAC,GAAG,CAAC,SAAS,EACf,CAAC,CAAC,IAAI,CACN,CAAC;oBACF,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;wBAC7C,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAC3B,GAAoD,CACpD,CAAC;oBACH,CAAC;oBACD,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;wBACrD,GAAG,CAAC,KAAK,GAAG,MAAM,iBAAiB,CAClC,GAAsE,CACtE,CAAC;wBACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;oBACvD,CAAC;oBACD,IACC,CAAC,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,cAAc,CAAC;wBACxD,GAAG,CAAC,SAAS;wBACb,IAAI,EACH,CAAC;wBACF,MAAM,SAAS,GAAkB,GAAG,CAAC,SAA0B,CAAC;wBAChE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;4BAClC,OAAO,EAAE,OAAkC;4BAC3C,SAAS;4BACT,MAAM,EAAE,OAAO,CAAC,MAAM;4BACtB,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,cAAc;4BACrC,MAAM,EAAE,OAAO,EAAE,MAAM;yBACvB,CAAC,CAAC;wBACH,IAAI,MAAM,EAAE,CAAC;4BACZ,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;wBACrB,CAAC;oBACF,CAAC;oBACD,MAAM,iBAAiB,CACtB,GAAqB,EACrB,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,EACrC,UAAU,CAAC,OAAO,EAClB,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAC7B,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;wBAC7D,qBAAqB,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;oBAC9E,CAAC;oBACD,wBAAwB,CACvB,KAAK,EACL,UAAU,CAAC,eAAe,EAC1B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAAC,WAAW,CAC3B,CAAC;gBACH,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,MAAM,GAAG,GAA4B;oBACpC,GAAG,OAAO;oBACV,MAAM,EAAE,IAAI;wBACX,CAAC,CAAC;4BACA,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;4BACzB,IAAI,EAAE;gCACL,OAAO,EAAE,IAAI,CAAC,MAAM;gCACpB,OAAO,EAAE,IAAI,CAAC,MAAM;gCACpB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;6BAC/B;yBACD;wBACF,CAAC,CAAC,OAAO,CAAC,MAAM;oBACjB,IAAI;iBACJ,CAAC;gBACF,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;oBAC3B,IAAI,OAAO,EAAE,CAAC;wBACb,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;oBACvB,CAAC;oBACD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;gBAC7B,CAAC;gBACD,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;oBAClC,gEAAgE;oBAChE,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,MAAuB,CAAC,CAAC;gBACvE,CAAC;gBACD,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;oBAC7C,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAAC,GAAoD,CAAC,CAAC;gBACpF,CAAC;gBACD,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;oBAC7C,GAAG,CAAC,KAAK,GAAG,MAAM,iBAAiB,CAClC,GAAsE,CACtE,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;oBAC/E,MAAM,SAAS,GAAkB,GAAG,CAAC,SAA0B,CAAC;oBAChE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;wBAClC,OAAO,EAAE,OAAkC;wBAC3C,SAAS;wBACT,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,cAAc;qBACrC,CAAC,CAAC;oBACH,IAAI,MAAM,EAAE,CAAC;wBACZ,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;oBACrB,CAAC;gBACF,CAAC;gBACD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;oBACxB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,GAAqB,CAAC,CAAC;oBAE/D,wBAAwB;oBACxB,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;wBAC1B,8DAA8D;wBAC9D,MAAM,iBAAiB,GAAG,CAAC,CAAE,UAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC;wBAEjE,yEAAyE;wBACzE,IAAI,iBAAiB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BAC/C,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;4BAC3E,aAAa,CACZ,WAAW,CACV,SAAS,CAAC,cAAc,EACxB,YAAY,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,iGAAiG,CAC7I,EACD,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAAC,WAAW,CAC3B,CAAC;wBACH,CAAC;wBAED,4CAA4C;wBAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BAC1B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;4BAChD,UAAU,CAAC,MAAM,CAAC,CAAC;wBACpB,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;aAAM,CAAC;YACP,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACvB,IAAI,CAAC;oBACJ,MAAM,KAAK,GAAG,oBAAoB,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBACrE,MAAM,GAAG,GAA4B;wBACpC,GAAG,OAAO;qBACV,CAAC;oBACF,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;wBAC3B,IAAI,OAAO,EAAE,CAAC;4BACb,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;wBACvB,CAAC;wBACD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;oBAC7B,CAAC;oBACD,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;wBAC5B,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACrD,CAAC;oBACD,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBAC/B,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC3D,CAAC;oBACD,IAAI,UAAU,CAAC,iBAAiB,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;wBACpD,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,MAAuB,CAAC,CAAC;oBACvE,CAAC;oBACD,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;wBAC7C,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAC3B,GAAoD,CACpD,CAAC;oBACH,CAAC;oBACD,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;wBACzD,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAC3B,GAAoD,CACpD,CAAC;oBACH,CAAC;oBACD,MAAM,iBAAiB,CACtB,GAAqB,EACrB,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,EACrC,UAAU,CAAC,OAAO,EAClB,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAC7B,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;wBAC7D,qBAAqB,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;oBAC9E,CAAC;oBACD,wBAAwB,CACvB,KAAK,EACL,UAAU,CAAC,eAAe,EAC1B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAAC,WAAW,CAC3B,CAAC;gBACH,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,MAAM,GAAG,GAA4B;oBACpC,GAAG,OAAO;iBACV,CAAC;gBACF,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;oBAC3B,IAAI,OAAO,EAAE,CAAC;wBACb,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;oBACvB,CAAC;oBACD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;gBAC7B,CAAC;gBACD,IAAI,UAAU,CAAC,iBAAiB,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;oBACpD,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,MAAuB,CAAC,CAAC;gBACvE,CAAC;gBACD,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;oBAC7C,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAAC,GAAoD,CAAC,CAAC;gBACpF,CAAC;gBACD,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;oBACzD,GAAG,CAAC,KAAK,GAAG,MAAM,UAAU,CAAC,GAAoD,CAAC,CAAC;gBACpF,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;oBAC/E,MAAM,SAAS,GAAkB,GAAG,CAAC,SAA0B,CAAC;oBAChE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;wBAClC,OAAO,EAAE,OAAkC;wBAC3C,SAAS;wBACT,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,cAAc;wBACrC,MAAM,EAAE,OAAO,EAAE,MAAM;qBACvB,CAAC,CAAC;oBACH,IAAI,MAAM,EAAE,CAAC;wBACZ,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;oBACrB,CAAC;gBACF,CAAC;gBACD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;oBACxB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,GAAqB,CAAC,CAAC;oBAE/D,wBAAwB;oBACxB,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;wBAC1B,8DAA8D;wBAC9D,MAAM,iBAAiB,GAAG,CAAC,CAAE,UAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC;wBAEjE,yEAAyE;wBACzE,IAAI,iBAAiB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BAC/C,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;4BAC3E,aAAa,CACZ,WAAW,CACV,SAAS,CAAC,cAAc,EACxB,YAAY,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,iGAAiG,CAC7I,EACD,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAAC,WAAW,CAC3B,CAAC;wBACH,CAAC;wBAED,4CAA4C;wBAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BAC1B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;4BAChD,UAAU,CAAC,MAAM,CAAC,CAAC;wBACpB,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACrC,OAAgB,EAChB,QAA6B,EAC7B,OAAuB;IAEvB,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,OAAO;iBACjB,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;iBAC/C,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAElC,GAAG,CAAC,UAAU,CAAC,mBAAmB,EAAE,0CAA0C,CAAC,CAAC;YAEhF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YAED,gDAAgD;YAChD,8DAA8D;YAC9D,MAAM,QAAQ,GAAI,MAAc,CAAC,QAErB,CAAC;YACb,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,0CAA0C;gBAC1C,8DAA8D;gBAC7D,GAAW,CAAC,SAAS,GAAG,QAAQ,CAAC;gBAElC,sCAAsC;gBACtC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE;oBAC7B,6BAA6B;oBAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;oBACtE,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;wBACxD,OAAO,EAAE,CAAC;oBACX,CAAC;oBAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;oBACvE,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;wBACrC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBAC9D,OAAO,KAAK,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;oBACpG,CAAC,CAAC,CAAC;oBACH,OAAO,KAAK,GAAG,CAAC,YAAY,CAAC,0BAA0B,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrF,CAAC,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;oBACrB,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;wBACnB,UAAU,EAAE,CAAC;oBACd,CAAC;oBAED,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;oBACzC,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;wBAC7B,mEAAmE;wBACnE,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;4BACjC,OAAmC,CAAC,SAAS,GAAG,eAAe,CAC/D,OAAO,EACP,OAAO,CAAC,MAAM,IAAI,IAAI,CACtB,CAAC;wBACH,CAAC;wBAED,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAoC,CAAC,CAAC;wBACrE,MAAM,GAAG,GAA4B;4BACpC,GAAG,OAAO;4BACV,MAAM,EAAE,OAAO,CAAC,MAAM;gCACrB,CAAC,CAAC;oCACA,GAAG,OAAO,CAAC,MAAM;oCACjB,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,kBAAkB;oCAC/C,IAAI,EAAE;wCACL,OAAO,EAAE,IAAI,CAAC,MAAM;wCACpB,OAAO,EAAE,IAAI,CAAC,MAAM;wCACpB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;qCAC/B;iCACD;gCACF,CAAC,CAAC,IAAI;4BACP,IAAI;yBACJ,CAAC;wBACF,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;4BAClC,2CAA2C;4BAC3C,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,MAAuB,CAAC,CAAC;wBACvE,CAAC;wBACD,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;4BAC/E,MAAM,SAAS,GAAkB,GAAG,CAAC,SAA0B,CAAC;4BAChE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;gCAClC,OAAO,EAAE,OAAO,CAAC,OAA6C;gCAC9D,SAAS;gCACT,MAAM,EAAE,OAAO,CAAC,MAAM;gCACtB,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,cAAc;6BACrC,CAAC,CAAC;4BACH,IAAI,MAAM,EAAE,CAAC;gCACZ,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;4BACrB,CAAC;wBACF,CAAC;wBACD,MAAM,MAAM,CAAC,OAAQ,CAAC,GAAqB,CAAC,CAAC;oBAC9C,CAAC;yBAAM,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;wBACpC,MAAM,YAAY,GACjB,OAAO,UAAU,CAAC,YAAY,KAAK,QAAQ;4BAC1C,CAAC,CAAC,UAAU,CAAC,YAAY;4BACzB,CAAC,CAAC,SAAS,CAAC;wBAEd,oEAAoE;wBACpE,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;4BACjC,OAAmC,CAAC,SAAS,GAAG,eAAe,CAC/D,OAAO,EACP,OAAO,CAAC,MAAM,IAAI,IAAI,CACtB,CAAC;wBACH,CAAC;wBAED,MAAM,IAAI,GAAG,MAAM,YAAY,CAC9B,OAAoC,EACpC,YAAY,CACZ,CAAC;wBACF,MAAM,GAAG,GAA4B;4BACpC,GAAG,OAAO;4BACV,MAAM,EAAE,IAAI;gCACX,CAAC,CAAC,OAAO,CAAC,MAAM;oCACf,CAAC,CAAC;wCACA,GAAG,OAAO,CAAC,MAAM;wCACjB,IAAI,EAAE;4CACL,OAAO,EAAE,IAAI,CAAC,MAAM;4CACpB,OAAO,EAAE,IAAI,CAAC,MAAM;4CACpB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;yCAC/B;qCACD;oCACF,CAAC,CAAC;wCACA,IAAI,EAAE;4CACL,OAAO,EAAE,IAAI,CAAC,MAAM;4CACpB,OAAO,EAAE,IAAI,CAAC,MAAM;4CACpB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;yCAC/B;qCACD;gCACH,CAAC,CAAC,OAAO,CAAC,MAAM;4BACjB,IAAI;yBACJ,CAAC;wBACF,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;4BAClC,gEAAgE;4BAChE,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,MAAuB,CAAC,CAAC;wBACvE,CAAC;wBACD,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;4BAC/E,MAAM,SAAS,GAAkB,GAAG,CAAC,SAA0B,CAAC;4BAChE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;gCAClC,OAAO,EAAE,OAAO,CAAC,OAA6C;gCAC9D,SAAS;gCACT,MAAM,EAAE,OAAO,CAAC,MAAM;gCACtB,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,cAAc;6BACrC,CAAC,CAAC;4BACH,IAAI,MAAM,EAAE,CAAC;gCACZ,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;4BACrB,CAAC;wBACF,CAAC;wBACD,MAAM,MAAM,CAAC,OAAQ,CAAC,GAAqB,CAAC,CAAC;oBAC9C,CAAC;yBAAM,CAAC;wBACP,MAAM,GAAG,GAA4B;4BACpC,GAAG,OAAO;yBACV,CAAC;wBACF,IAAI,UAAU,CAAC,iBAAiB,IAAI,CAAE,GAAsB,CAAC,SAAS,EAAE,CAAC;4BACxE,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;wBAC1D,CAAC;wBACD,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;4BAC/E,MAAM,SAAS,GAAG,GAAG,CAAC,SAA0B,CAAC;4BACjD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;gCAClC,OAAO,EAAE,OAAO,CAAC,OAA6C;gCAC9D,SAAS;gCACT,MAAM,EAAE,OAAO,CAAC,MAAM;gCACtB,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,cAAc;6BACrC,CAAC,CAAC;4BACH,IAAI,MAAM,EAAE,CAAC;gCACZ,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;4BACrB,CAAC;wBACF,CAAC;wBACD,MAAM,MAAM,CAAC,OAAQ,CAAC,GAAqB,CAAC,CAAC;oBAC9C,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9B,CAAC;YAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACtC,MAAM,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YAC7C,CAAC;YAED,gEAAgE;YAChE,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;iBACnC,WAAW,CAAC,cAAc,CAAC;iBAC3B,MAAM,CAAC,GAAG,EAAE;gBACZ,GAAG,CAAC,IAAI,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACP,MAAM,kBAAkB,CACvB,OAAO,EACP,MAAyC,EACzC,OAAO,EACP,MAAM,CAAC,MAAM,CACb,CAAC;QACH,CAAC;IACF,CAAC;AACF,CAAC"}
|
package/dist/cmd/auth/api.d.ts
CHANGED
|
@@ -9,8 +9,8 @@ export interface SignupResult {
|
|
|
9
9
|
userId: string;
|
|
10
10
|
expires: Date;
|
|
11
11
|
}
|
|
12
|
-
export declare function
|
|
13
|
-
export declare function pollForLoginCompletion(apiClient: APIClient,
|
|
12
|
+
export declare function generateLoginCode(apiClient: APIClient): Promise<string>;
|
|
13
|
+
export declare function pollForLoginCompletion(apiClient: APIClient, code: string, timeoutMs?: number): Promise<LoginResult>;
|
|
14
14
|
export declare function generateSignupOTP(): string;
|
|
15
15
|
export declare function pollForSignupCompletion(apiClient: APIClient, otp: string, timeoutMs?: number): Promise<SignupResult>;
|
|
16
16
|
//# sourceMappingURL=api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/cmd/auth/api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAyB3C,MAAM,WAAW,WAAW;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;CACd;AAOD,wBAAsB,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/cmd/auth/api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAyB3C,MAAM,WAAW,WAAW;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;CACd;AAOD,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAY7E;AAQD,wBAAsB,sBAAsB,CAC3C,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,MAAM,EACZ,SAAS,SAAS,GAChB,OAAO,CAAC,WAAW,CAAC,CA2BtB;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAS1C;AAYD,wBAAsB,uBAAuB,CAC5C,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,SAAS,SAAS,GAChB,OAAO,CAAC,YAAY,CAAC,CAiCvB"}
|
package/dist/cmd/auth/api.js
CHANGED
|
@@ -2,10 +2,10 @@ import { z } from 'zod';
|
|
|
2
2
|
import { APIError, APIResponseSchema, APIResponseSchemaOptionalData } from '@agentuity/server';
|
|
3
3
|
import { StructuredError } from '@agentuity/core';
|
|
4
4
|
// Zod schemas for API validation
|
|
5
|
-
const
|
|
6
|
-
|
|
5
|
+
const CodeStartDataSchema = z.object({
|
|
6
|
+
code: z.string(),
|
|
7
7
|
});
|
|
8
|
-
const
|
|
8
|
+
const CodeCompleteDataSchema = z.object({
|
|
9
9
|
apiKey: z.string(),
|
|
10
10
|
userId: z.string(),
|
|
11
11
|
expires: z.number(),
|
|
@@ -15,26 +15,27 @@ const SignupCompleteDataSchema = z.object({
|
|
|
15
15
|
apiKey: z.string(),
|
|
16
16
|
expiresAt: z.number(),
|
|
17
17
|
});
|
|
18
|
-
const
|
|
19
|
-
|
|
18
|
+
const CodeCheckRequestSchema = z.object({
|
|
19
|
+
code: z.string(),
|
|
20
20
|
});
|
|
21
|
-
const
|
|
22
|
-
export async function
|
|
23
|
-
const resp = await apiClient.
|
|
21
|
+
const CodeGenerationError = StructuredError('CodeGenerationError', 'Error generating the login code');
|
|
22
|
+
export async function generateLoginCode(apiClient) {
|
|
23
|
+
const resp = await apiClient.get('/cli/auth/start', APIResponseSchema(CodeStartDataSchema));
|
|
24
24
|
if (!resp.success) {
|
|
25
|
-
throw new
|
|
25
|
+
throw new CodeGenerationError();
|
|
26
26
|
}
|
|
27
27
|
if (!resp.data) {
|
|
28
|
-
throw new
|
|
28
|
+
throw new CodeGenerationError();
|
|
29
29
|
}
|
|
30
|
-
return resp.data.
|
|
30
|
+
return resp.data.code;
|
|
31
31
|
}
|
|
32
32
|
const PollForLoginError = StructuredError('PollForLoginError');
|
|
33
33
|
const PollForLoginTimeout = StructuredError('PollForLoginTimeout', 'Timed out waiting for user login. Aborting');
|
|
34
|
-
export async function pollForLoginCompletion(apiClient,
|
|
34
|
+
export async function pollForLoginCompletion(apiClient, code, timeoutMs = 300000 // 5 minutes
|
|
35
|
+
) {
|
|
35
36
|
const started = Date.now();
|
|
36
37
|
while (Date.now() - started < timeoutMs) {
|
|
37
|
-
const resp = await apiClient.
|
|
38
|
+
const resp = await apiClient.post('/cli/auth/check', { code }, APIResponseSchemaOptionalData(CodeCompleteDataSchema), CodeCheckRequestSchema);
|
|
38
39
|
if (!resp.success) {
|
|
39
40
|
throw new PollForLoginError({ message: resp.message });
|
|
40
41
|
}
|
|
@@ -65,7 +66,7 @@ export async function pollForSignupCompletion(apiClient, otp, timeoutMs = 350000
|
|
|
65
66
|
const started = Date.now();
|
|
66
67
|
while (Date.now() - started < timeoutMs) {
|
|
67
68
|
try {
|
|
68
|
-
const resp = await apiClient.
|
|
69
|
+
const resp = await apiClient.get(`/cli/auth/signup/${otp}`, APIResponseSchema(SignupCompleteDataSchema));
|
|
69
70
|
if (!resp.success) {
|
|
70
71
|
throw new PollForSignupCompletedError();
|
|
71
72
|
}
|
package/dist/cmd/auth/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/cmd/auth/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAE/F,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,iCAAiC;AACjC,MAAM,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/cmd/auth/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/cmd/auth/login.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/cmd/auth/login.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,YAAY,sCAqFvB,CAAC"}
|
package/dist/cmd/auth/login.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createSubcommand } from '../../types';
|
|
2
2
|
import { getAppBaseURL } from '../../api';
|
|
3
3
|
import { saveAuth } from '../../config';
|
|
4
|
-
import {
|
|
4
|
+
import { generateLoginCode, pollForLoginCompletion } from './api';
|
|
5
5
|
import * as tui from '../../tui';
|
|
6
6
|
import { getCommand } from '../../command-prefix';
|
|
7
7
|
import { ErrorCode } from '../../errors';
|
|
@@ -20,36 +20,57 @@ export const loginCommand = createSubcommand({
|
|
|
20
20
|
const { logger, config, apiClient } = ctx;
|
|
21
21
|
const appUrl = getAppBaseURL(config);
|
|
22
22
|
try {
|
|
23
|
-
const
|
|
24
|
-
message: 'Generating login
|
|
23
|
+
const code = await tui.spinner({
|
|
24
|
+
message: 'Generating login code...',
|
|
25
25
|
clearOnSuccess: true,
|
|
26
26
|
callback: () => {
|
|
27
|
-
return
|
|
27
|
+
return generateLoginCode(apiClient);
|
|
28
28
|
},
|
|
29
29
|
});
|
|
30
|
-
if (!
|
|
30
|
+
if (!code) {
|
|
31
31
|
return;
|
|
32
32
|
}
|
|
33
|
-
const authURL = `${appUrl}/auth/cli`;
|
|
34
|
-
const copied = await tui.copyToClipboard(
|
|
33
|
+
const authURL = `${appUrl}/auth/cli?code=${code}`;
|
|
34
|
+
const copied = await tui.copyToClipboard(authURL);
|
|
35
|
+
tui.newline();
|
|
36
|
+
console.log(`Your login code: ${tui.bold(code)}`);
|
|
35
37
|
tui.newline();
|
|
36
38
|
if (copied) {
|
|
37
|
-
console.log(
|
|
39
|
+
console.log('Login URL copied to clipboard! Open it in your browser:');
|
|
38
40
|
}
|
|
39
41
|
else {
|
|
40
|
-
console.log('
|
|
41
|
-
tui.newline();
|
|
42
|
-
console.log(` ${tui.bold(otp)}`);
|
|
42
|
+
console.log('Open this URL in your browser to approve the login:');
|
|
43
43
|
}
|
|
44
44
|
tui.newline();
|
|
45
|
-
console.log('Then open the URL in your browser and paste the code:');
|
|
46
|
-
tui.newline();
|
|
47
45
|
console.log(` ${tui.link(authURL)}`);
|
|
48
46
|
tui.newline();
|
|
49
|
-
console.log(tui.muted('
|
|
47
|
+
console.log(tui.muted('Press Enter to open in your browser, or Ctrl+C to cancel'));
|
|
50
48
|
tui.newline();
|
|
51
|
-
|
|
52
|
-
|
|
49
|
+
const result = await tui.spinner({
|
|
50
|
+
type: 'countdown',
|
|
51
|
+
message: 'Waiting for approval',
|
|
52
|
+
timeoutMs: 300000, // 5 minutes
|
|
53
|
+
clearOnSuccess: true,
|
|
54
|
+
onEnterPress: () => {
|
|
55
|
+
// Open URL in default browser
|
|
56
|
+
const platform = process.platform;
|
|
57
|
+
if (platform === 'win32') {
|
|
58
|
+
// Windows: use cmd.exe to invoke start (it's a shell builtin, not an executable)
|
|
59
|
+
// Empty string is required as the window title argument
|
|
60
|
+
Bun.spawn(['cmd', '/c', 'start', '', authURL], {
|
|
61
|
+
stdout: 'ignore',
|
|
62
|
+
stderr: 'ignore',
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
const command = platform === 'darwin' ? 'open' : 'xdg-open';
|
|
67
|
+
Bun.spawn([command, authURL], { stdout: 'ignore', stderr: 'ignore' });
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
callback: async () => {
|
|
71
|
+
return await pollForLoginCompletion(apiClient, code);
|
|
72
|
+
},
|
|
73
|
+
});
|
|
53
74
|
await saveAuth({
|
|
54
75
|
apiKey: result.apiKey,
|
|
55
76
|
userId: result.userId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/cmd/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/cmd/auth/login.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/cmd/auth/ssh/api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAsB9C,MAAM,WAAW,MAAM;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;CACf;AAOD,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAUlE;AAQD,wBAAsB,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/cmd/auth/ssh/api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAsB9C,MAAM,WAAW,MAAM;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;CACf;AAOD,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAUlE;AAQD,wBAAsB,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAgBjG;AAID,wBAAsB,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAWzE;AAID,wBAAsB,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAc9F"}
|
package/dist/cmd/auth/ssh/api.js
CHANGED
|
@@ -31,7 +31,7 @@ export function computeSSHKeyFingerprint(publicKey) {
|
|
|
31
31
|
const AddSSHKeyError = StructuredError('AddSSHKeyError');
|
|
32
32
|
const AddSSHKeyUnexpectedError = StructuredError('AddSSHKeyUnexpectedError', 'An unexpected error was received from the server.');
|
|
33
33
|
export async function addSSHKey(apiClient, publicKey) {
|
|
34
|
-
const resp = await apiClient.
|
|
34
|
+
const resp = await apiClient.post('/cli/auth/ssh-keys', { publicKey }, APIResponseSchema(AddSSHKeyResponseSchema));
|
|
35
35
|
if (!resp.success) {
|
|
36
36
|
throw new AddSSHKeyError({ message: resp.message });
|
|
37
37
|
}
|
|
@@ -42,7 +42,7 @@ export async function addSSHKey(apiClient, publicKey) {
|
|
|
42
42
|
}
|
|
43
43
|
const ListSSHKeysError = StructuredError('ListSSHKeysError');
|
|
44
44
|
export async function listSSHKeys(apiClient) {
|
|
45
|
-
const resp = await apiClient.
|
|
45
|
+
const resp = await apiClient.get('/cli/auth/ssh-keys', APIResponseSchema(z.array(SSHKeySchema)));
|
|
46
46
|
if (!resp.success) {
|
|
47
47
|
throw new ListSSHKeysError({ message: resp.message });
|
|
48
48
|
}
|
|
@@ -50,6 +50,7 @@ export async function listSSHKeys(apiClient) {
|
|
|
50
50
|
}
|
|
51
51
|
const RemoveSSHKeysError = StructuredError('RemoveSSHKeysError');
|
|
52
52
|
export async function removeSSHKey(apiClient, fingerprint) {
|
|
53
|
+
// NOTE: Using .request() here because DELETE with body is required by the API
|
|
53
54
|
const resp = await apiClient.request('DELETE', '/cli/auth/ssh-keys', APIResponseSchema(RemoveSSHKeyResponseSchema), { fingerprint });
|
|
54
55
|
if (!resp.success) {
|
|
55
56
|
throw new RemoveSSHKeysError({ message: resp.message });
|