@newrelic/preflight 1.70.0 → 1.72.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 +2 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +7 -0
- package/dist/config.js.map +1 -1
- package/dist/dashboard/routes/api-handler.d.ts.map +1 -1
- package/dist/dashboard/routes/api-handler.js +11 -16
- package/dist/dashboard/routes/api-handler.js.map +1 -1
- package/dist/dashboard/subagent-timeline-store.d.ts +12 -1
- package/dist/dashboard/subagent-timeline-store.d.ts.map +1 -1
- package/dist/dashboard/subagent-timeline-store.js +32 -4
- package/dist/dashboard/subagent-timeline-store.js.map +1 -1
- package/dist/dashboard/workflow-store.d.ts.map +1 -1
- package/dist/dashboard/workflow-store.js +2 -3
- package/dist/dashboard/workflow-store.js.map +1 -1
- package/dist/hooks/collector-script.d.ts.map +1 -1
- package/dist/hooks/collector-script.js +14 -8
- package/dist/hooks/collector-script.js.map +1 -1
- package/dist/hooks/copilot-app-usage-watcher.d.ts.map +1 -1
- package/dist/hooks/copilot-app-usage-watcher.js +3 -4
- package/dist/hooks/copilot-app-usage-watcher.js.map +1 -1
- package/dist/hooks/copilot-usage-watcher.d.ts +25 -5
- package/dist/hooks/copilot-usage-watcher.d.ts.map +1 -1
- package/dist/hooks/copilot-usage-watcher.js +254 -92
- package/dist/hooks/copilot-usage-watcher.js.map +1 -1
- package/dist/hooks/event-processor.d.ts +24 -11
- package/dist/hooks/event-processor.d.ts.map +1 -1
- package/dist/hooks/event-processor.js +139 -45
- package/dist/hooks/event-processor.js.map +1 -1
- package/dist/hooks/index.d.ts +1 -1
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -1
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/parent-transcript-watcher.d.ts +1 -1
- package/dist/hooks/parent-transcript-watcher.d.ts.map +1 -1
- package/dist/hooks/parent-transcript-watcher.js +11 -6
- package/dist/hooks/parent-transcript-watcher.js.map +1 -1
- package/dist/hooks/session-resolver.d.ts.map +1 -1
- package/dist/hooks/session-resolver.js +2 -1
- package/dist/hooks/session-resolver.js.map +1 -1
- package/dist/hooks/subagent-watcher.d.ts +21 -15
- package/dist/hooks/subagent-watcher.d.ts.map +1 -1
- package/dist/hooks/subagent-watcher.js +89 -73
- package/dist/hooks/subagent-watcher.js.map +1 -1
- package/dist/hooks/throttled-warning.d.ts +5 -5
- package/dist/hooks/throttled-warning.d.ts.map +1 -1
- package/dist/hooks/throttled-warning.js +14 -12
- package/dist/hooks/throttled-warning.js.map +1 -1
- package/dist/hooks/workflow-watcher.d.ts.map +1 -1
- package/dist/hooks/workflow-watcher.js +2 -2
- package/dist/hooks/workflow-watcher.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +57 -62
- package/dist/index.js.map +1 -1
- package/dist/install/cli.d.ts.map +1 -1
- package/dist/install/cli.js +131 -17
- package/dist/install/cli.js.map +1 -1
- package/dist/install/copilot-install-helper.d.ts +1 -0
- package/dist/install/copilot-install-helper.d.ts.map +1 -1
- package/dist/install/copilot-install-helper.js +82 -26
- package/dist/install/copilot-install-helper.js.map +1 -1
- package/dist/install/credentials.d.ts +23 -0
- package/dist/install/credentials.d.ts.map +1 -0
- package/dist/install/credentials.js +57 -0
- package/dist/install/credentials.js.map +1 -0
- package/dist/install/diagnostics.d.ts.map +1 -1
- package/dist/install/diagnostics.js +6 -3
- package/dist/install/diagnostics.js.map +1 -1
- package/dist/install/install-helper.d.ts +9 -0
- package/dist/install/install-helper.d.ts.map +1 -1
- package/dist/install/install-helper.js +42 -17
- package/dist/install/install-helper.js.map +1 -1
- package/dist/install/schedule.d.ts.map +1 -1
- package/dist/install/schedule.js +4 -1
- package/dist/install/schedule.js.map +1 -1
- package/dist/install/setup-wizard.d.ts.map +1 -1
- package/dist/install/setup-wizard.js +3 -3
- package/dist/install/setup-wizard.js.map +1 -1
- package/dist/install/target-user.d.ts +33 -0
- package/dist/install/target-user.d.ts.map +1 -0
- package/dist/install/target-user.js +121 -0
- package/dist/install/target-user.js.map +1 -0
- package/dist/lib/claude-config-dir.d.ts +3 -0
- package/dist/lib/claude-config-dir.d.ts.map +1 -0
- package/dist/lib/claude-config-dir.js +10 -0
- package/dist/lib/claude-config-dir.js.map +1 -0
- package/dist/lib/claude-settings-env.d.ts +18 -0
- package/dist/lib/claude-settings-env.d.ts.map +1 -0
- package/dist/lib/claude-settings-env.js +78 -0
- package/dist/lib/claude-settings-env.js.map +1 -0
- package/dist/lib/date.d.ts +7 -0
- package/dist/lib/date.d.ts.map +1 -1
- package/dist/lib/date.js +11 -1
- package/dist/lib/date.js.map +1 -1
- package/dist/lib/subagent-transcript-parser.d.ts +2 -0
- package/dist/lib/subagent-transcript-parser.d.ts.map +1 -1
- package/dist/lib/subagent-transcript-parser.js +5 -0
- package/dist/lib/subagent-transcript-parser.js.map +1 -1
- package/dist/lib/transcript-types.d.ts +4 -0
- package/dist/lib/transcript-types.d.ts.map +1 -1
- package/dist/metrics/cost-forecast.d.ts +2 -0
- package/dist/metrics/cost-forecast.d.ts.map +1 -1
- package/dist/metrics/cost-forecast.js +46 -24
- package/dist/metrics/cost-forecast.js.map +1 -1
- package/dist/metrics/cost-tracker.d.ts +3 -3
- package/dist/metrics/cost-tracker.js +3 -3
- package/dist/metrics/efficiency-score.d.ts +2 -2
- package/dist/metrics/efficiency-score.js +2 -2
- package/dist/metrics/first-save-baselines.d.ts +60 -0
- package/dist/metrics/first-save-baselines.d.ts.map +1 -0
- package/dist/metrics/first-save-baselines.js +77 -0
- package/dist/metrics/first-save-baselines.js.map +1 -0
- package/dist/metrics/local-session-aggregator.d.ts +6 -5
- package/dist/metrics/local-session-aggregator.d.ts.map +1 -1
- package/dist/metrics/local-session-aggregator.js +34 -6
- package/dist/metrics/local-session-aggregator.js.map +1 -1
- package/dist/metrics/model-pricing.d.ts +1 -1
- package/dist/metrics/model-pricing.d.ts.map +1 -1
- package/dist/metrics/model-pricing.js +2 -2
- package/dist/metrics/model-pricing.js.map +1 -1
- package/dist/metrics/model-usage-tracker.d.ts +2 -2
- package/dist/metrics/model-usage-tracker.js +2 -2
- package/dist/metrics/pricing-init.d.ts.map +1 -1
- package/dist/metrics/pricing-init.js +5 -3
- package/dist/metrics/pricing-init.js.map +1 -1
- package/dist/metrics/pricing-overlay.d.ts.map +1 -1
- package/dist/metrics/pricing-overlay.js +1 -4
- package/dist/metrics/pricing-overlay.js.map +1 -1
- package/dist/metrics/pricing-refresh.d.ts +16 -4
- package/dist/metrics/pricing-refresh.d.ts.map +1 -1
- package/dist/metrics/pricing-refresh.js +47 -1
- package/dist/metrics/pricing-refresh.js.map +1 -1
- package/dist/metrics/quality-proxy-tracker.d.ts +2 -2
- package/dist/metrics/quality-proxy-tracker.js +2 -2
- package/dist/metrics/session-tracker.d.ts +5 -1
- package/dist/metrics/session-tracker.d.ts.map +1 -1
- package/dist/metrics/session-tracker.js +58 -17
- package/dist/metrics/session-tracker.js.map +1 -1
- package/dist/metrics/task-detector.d.ts +2 -2
- package/dist/metrics/task-detector.js +2 -2
- package/dist/metrics/token-usage.d.ts +6 -0
- package/dist/metrics/token-usage.d.ts.map +1 -0
- package/dist/metrics/token-usage.js +34 -0
- package/dist/metrics/token-usage.js.map +1 -0
- package/dist/metrics/turn-cost-attributor.d.ts.map +1 -1
- package/dist/metrics/turn-cost-attributor.js +3 -0
- package/dist/metrics/turn-cost-attributor.js.map +1 -1
- package/dist/platforms/copilot-adapter.d.ts.map +1 -1
- package/dist/platforms/copilot-adapter.js +3 -0
- package/dist/platforms/copilot-adapter.js.map +1 -1
- package/dist/platforms/copilot-sdk-adapter.d.ts.map +1 -1
- package/dist/platforms/copilot-sdk-adapter.js +3 -0
- package/dist/platforms/copilot-sdk-adapter.js.map +1 -1
- package/dist/storage/drain-claims.d.ts +82 -0
- package/dist/storage/drain-claims.d.ts.map +1 -0
- package/dist/storage/drain-claims.js +239 -0
- package/dist/storage/drain-claims.js.map +1 -0
- package/dist/storage/hook-buffer.d.ts +7 -0
- package/dist/storage/hook-buffer.d.ts.map +1 -0
- package/dist/storage/hook-buffer.js +132 -0
- package/dist/storage/hook-buffer.js.map +1 -0
- package/dist/storage/local-store.d.ts +38 -16
- package/dist/storage/local-store.d.ts.map +1 -1
- package/dist/storage/local-store.js +228 -72
- package/dist/storage/local-store.js.map +1 -1
- package/dist/storage/retention.d.ts.map +1 -1
- package/dist/storage/retention.js +7 -6
- package/dist/storage/retention.js.map +1 -1
- package/dist/storage/session-store.d.ts +37 -8
- package/dist/storage/session-store.d.ts.map +1 -1
- package/dist/storage/session-store.js +255 -48
- package/dist/storage/session-store.js.map +1 -1
- package/dist/storage/types.d.ts +7 -0
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/types.js +4 -0
- package/dist/storage/types.js.map +1 -1
- package/dist/tools/cost-tools.d.ts.map +1 -1
- package/dist/tools/cost-tools.js +1 -0
- package/dist/tools/cost-tools.js.map +1 -1
- package/dist/web/assets/{index-U9DPZ-Tb.js → index-CZvLy2Qy.js} +2 -2
- package/dist/web/index.html +1 -1
- package/package.json +4 -1
package/dist/install/cli.js
CHANGED
|
@@ -15,6 +15,8 @@ import { mergeSettings, removeSettings, mergeMcpConfig, removeMcpConfig, detectS
|
|
|
15
15
|
import { detectCopilotHooksPath, detectVsCodeMcpPath, detectVsCodeSettingsPath, mergeCopilotHooksFile, removeCopilotHooksFile, mergeVsCodeMcpConfig, removeVsCodeMcpConfig, mergeVsCodeSettings, removeVsCodeHookFilesLocationsEntry, applyHookCollisionFix, installCopilotSdkExtension, } from './copilot-install-helper.js';
|
|
16
16
|
import { copilotSdkExtensionInstallPath } from '../hooks/copilot-sdk-extension-health.js';
|
|
17
17
|
import { isWsl, resolveWindowsHome } from './platform.js';
|
|
18
|
+
import { resolveInstallCredentials } from './credentials.js';
|
|
19
|
+
import { EXPLICIT_CREDENTIALS_ENV, lookupUser, runInstallAsUser, } from './target-user.js';
|
|
18
20
|
import { validateConfigFile, DEFAULT_STORAGE_PATH, ConfigFileSchema, loadMcpConfig, } from '../config.js';
|
|
19
21
|
import { VALID_MODES } from '../config.js';
|
|
20
22
|
import { migrateStoragePath } from './migrate.js';
|
|
@@ -490,6 +492,20 @@ function handleSchedule(options) {
|
|
|
490
492
|
print(' To enable: preflight schedule --time 08:00');
|
|
491
493
|
}
|
|
492
494
|
}
|
|
495
|
+
// Unreadable config counts as stored: the env fallback must not overwrite what
|
|
496
|
+
// we could not inspect. migrateStoragePath runs later, so also check the
|
|
497
|
+
// pre-rename location.
|
|
498
|
+
function hasStoredLicenseSource() {
|
|
499
|
+
return [NR_CONFIG_PATH, resolve(homedir(), '.nr-ai-observe', 'config.json')].some((path) => {
|
|
500
|
+
try {
|
|
501
|
+
const stored = readJsonFileStrict(path);
|
|
502
|
+
return stored.licenseKey !== undefined || stored.licenseKeyCommand !== undefined;
|
|
503
|
+
}
|
|
504
|
+
catch {
|
|
505
|
+
return true;
|
|
506
|
+
}
|
|
507
|
+
});
|
|
508
|
+
}
|
|
493
509
|
// ---------------------------------------------------------------------------
|
|
494
510
|
// Install handler
|
|
495
511
|
// ---------------------------------------------------------------------------
|
|
@@ -600,8 +616,8 @@ function handleInstall(options) {
|
|
|
600
616
|
if (nrConfigWritten) {
|
|
601
617
|
print(`\n✓ New Relic config written: ${NR_CONFIG_PATH}`);
|
|
602
618
|
}
|
|
603
|
-
else if (!credentialsProvided &&
|
|
604
|
-
print('\n⚠
|
|
619
|
+
else if (!credentialsProvided && options.credentialsRequested) {
|
|
620
|
+
print('\n⚠ A license key (--license-key, --license-key-file, or NEW_RELIC_LICENSE_KEY) and an account ID (--account-id or NEW_RELIC_ACCOUNT_ID) are both required to save NR config. Skipped.');
|
|
605
621
|
}
|
|
606
622
|
if (binPath !== null) {
|
|
607
623
|
print('\n✓ preflight is on your PATH');
|
|
@@ -638,10 +654,34 @@ function handleInstall(options) {
|
|
|
638
654
|
// ---------------------------------------------------------------------------
|
|
639
655
|
// Copilot install/uninstall handlers
|
|
640
656
|
// ---------------------------------------------------------------------------
|
|
657
|
+
// Node refuses to spawn a .cmd or .bat without a shell (CVE-2024-27980), and
|
|
658
|
+
// npm installs the Copilot CLI as copilot.cmd on Windows, so that runs through
|
|
659
|
+
// cmd.exe with every argument double-quoted. Inside quotes cmd.exe treats
|
|
660
|
+
// & | < > ^ ( ) as text, but it still expands %VAR%, and a " or line break
|
|
661
|
+
// ends the quote, so an argument holding any of those is refused. Every other
|
|
662
|
+
// path gets an argv array and no shell.
|
|
663
|
+
function execCopilotCli(cliPath, args) {
|
|
664
|
+
if (!/\.(?:cmd|bat)$/i.test(cliPath)) {
|
|
665
|
+
execFileSync(cliPath, args, { stdio: 'pipe' });
|
|
666
|
+
return;
|
|
667
|
+
}
|
|
668
|
+
const quoted = [cliPath, ...args].map((arg) => {
|
|
669
|
+
if (/["%\r\n]/.test(arg)) {
|
|
670
|
+
throw new Error(`an argument to ${cliPath} holds a ", %, or line break that cmd.exe cannot quote`);
|
|
671
|
+
}
|
|
672
|
+
// Double trailing backslashes so the closing quote is not escaped.
|
|
673
|
+
return `"${arg.replace(/(\\+)$/, '$1$1')}"`;
|
|
674
|
+
});
|
|
675
|
+
// execFileSync hands its options to spawnSync, which honors this flag,
|
|
676
|
+
// though execFileSync's type leaves it out.
|
|
677
|
+
const options = { stdio: 'pipe', windowsVerbatimArguments: true };
|
|
678
|
+
const command = `"${quoted.join(' ')}"`;
|
|
679
|
+
execFileSync(process.env.ComSpec ?? 'cmd.exe', ['/d', '/v:off', '/s', '/c', command], options);
|
|
680
|
+
}
|
|
641
681
|
// Idempotent: always remove-then-add rather than parsing `copilot mcp list`
|
|
642
|
-
// output (undocumented/unstable format risk).
|
|
643
|
-
//
|
|
644
|
-
//
|
|
682
|
+
// output (undocumented/unstable format risk). Goes through execCopilotCli, so
|
|
683
|
+
// a license key containing shell metacharacters is never interpreted by a
|
|
684
|
+
// shell.
|
|
645
685
|
//
|
|
646
686
|
// Registers with MCP_CLIENT=copilot-sdk (unchanged from today's documented
|
|
647
687
|
// setup) — this env var only affects the MCP *server* process's own
|
|
@@ -652,7 +692,7 @@ function handleInstall(options) {
|
|
|
652
692
|
// correctly uses MCP_CLIENT=copilot (see generateVsCodeMcpEntry).
|
|
653
693
|
function registerCopilotMcpServer(copilotCliPath, binPath, licenseKey, accountId) {
|
|
654
694
|
try {
|
|
655
|
-
|
|
695
|
+
execCopilotCli(copilotCliPath, ['mcp', 'remove', 'preflight']);
|
|
656
696
|
}
|
|
657
697
|
catch {
|
|
658
698
|
/* not previously registered — fine */
|
|
@@ -671,7 +711,7 @@ function registerCopilotMcpServer(copilotCliPath, binPath, licenseKey, accountId
|
|
|
671
711
|
target,
|
|
672
712
|
...targetArgs,
|
|
673
713
|
];
|
|
674
|
-
|
|
714
|
+
execCopilotCli(copilotCliPath, args);
|
|
675
715
|
}
|
|
676
716
|
function handleKiroInstall() {
|
|
677
717
|
// Kiro treats PreToolUse as blocking, so a collector missing from PATH would
|
|
@@ -912,7 +952,7 @@ async function handleCopilotUninstall(options) {
|
|
|
912
952
|
}
|
|
913
953
|
if (copilotCliPath) {
|
|
914
954
|
try {
|
|
915
|
-
|
|
955
|
+
execCopilotCli(copilotCliPath, ['mcp', 'remove', 'preflight']);
|
|
916
956
|
print('✓ Removed preflight from `copilot mcp list`');
|
|
917
957
|
anyRemoved = true;
|
|
918
958
|
}
|
|
@@ -1385,34 +1425,108 @@ async function handleDoctor(options) {
|
|
|
1385
1425
|
// ---------------------------------------------------------------------------
|
|
1386
1426
|
// CLI program
|
|
1387
1427
|
// ---------------------------------------------------------------------------
|
|
1428
|
+
/**
|
|
1429
|
+
* Handles `install` when the caller is root or names a --target-user.
|
|
1430
|
+
* Returns true when the install already ran as the target user.
|
|
1431
|
+
*/
|
|
1432
|
+
function installForTargetUser(options, credentials) {
|
|
1433
|
+
const currentUid = process.getuid?.();
|
|
1434
|
+
if (!options.targetUser) {
|
|
1435
|
+
if (currentUid === 0) {
|
|
1436
|
+
print(`\n ⚠ Running as root: this configures root's home (${homedir()}). ` +
|
|
1437
|
+
"To configure a user's home instead, add --target-user <name>.");
|
|
1438
|
+
}
|
|
1439
|
+
return false;
|
|
1440
|
+
}
|
|
1441
|
+
if (options.project) {
|
|
1442
|
+
eprint('\n✗ --project cannot be combined with --target-user.');
|
|
1443
|
+
process.exit(1);
|
|
1444
|
+
}
|
|
1445
|
+
let user;
|
|
1446
|
+
try {
|
|
1447
|
+
user = lookupUser(options.targetUser);
|
|
1448
|
+
}
|
|
1449
|
+
catch (err) {
|
|
1450
|
+
eprint(`\n✗ ${errMsg(err)}`);
|
|
1451
|
+
process.exit(1);
|
|
1452
|
+
}
|
|
1453
|
+
if (user.uid === currentUid)
|
|
1454
|
+
return false;
|
|
1455
|
+
if (currentUid !== 0) {
|
|
1456
|
+
eprint(`\n✗ --target-user ${user.name} requires running as root.`);
|
|
1457
|
+
process.exit(1);
|
|
1458
|
+
}
|
|
1459
|
+
print(`\n Installing for ${user.name} (${user.home})`);
|
|
1460
|
+
try {
|
|
1461
|
+
const explicit = !!(options.licenseKey || options.licenseKeyFile);
|
|
1462
|
+
process.exitCode = runInstallAsUser(user, process.argv.slice(1), { ...credentials, explicit });
|
|
1463
|
+
}
|
|
1464
|
+
catch (err) {
|
|
1465
|
+
eprint(`\n✗ Could not run the install as ${user.name}: ${errMsg(err)}`);
|
|
1466
|
+
process.exit(1);
|
|
1467
|
+
}
|
|
1468
|
+
return true;
|
|
1469
|
+
}
|
|
1388
1470
|
export function createInstallProgram() {
|
|
1389
1471
|
const program = new Command();
|
|
1390
1472
|
program.name('preflight').description('New Relic AI observability for Claude Code');
|
|
1391
1473
|
program
|
|
1392
1474
|
.command('install')
|
|
1393
1475
|
.description('Configure Claude Code hooks and MCP server for AI observability')
|
|
1394
|
-
.option('--license-key <key>', 'New Relic license key')
|
|
1395
|
-
.option('--
|
|
1476
|
+
.option('--license-key <key>', 'New Relic license key (visible in `ps`; prefer --license-key-file or NEW_RELIC_LICENSE_KEY)')
|
|
1477
|
+
.option('--license-key-file <path>', 'Read the New Relic license key from a file (not visible in `ps`, except with --copilot)')
|
|
1478
|
+
.option('--account-id <id>', 'New Relic account ID (default: NEW_RELIC_ACCOUNT_ID)')
|
|
1396
1479
|
.addOption(new Option('--mode <mode>', 'Telemetry mode: cloud, local, or both (default: local)').choices([...VALID_MODES]))
|
|
1480
|
+
.option('--target-user <name>', "Run as root and configure this user's home (for MDM tools such as Jamf that run scripts as root)")
|
|
1397
1481
|
.option('--project', 'Write to project-level .claude/settings.json instead of user-level')
|
|
1398
1482
|
.option('--windows-cc', 'Target Windows Claude Code (desktop app) when running inside WSL')
|
|
1399
1483
|
.option('--linux-cc', 'Target Linux Claude Code (npm in WSL) when running inside WSL')
|
|
1400
1484
|
.option('--copilot', 'Configure GitHub Copilot instead — Copilot CLI hooks/MCP and VS Code Copilot Chat hooks/MCP')
|
|
1401
1485
|
.option('--kiro', 'Configure Amazon Kiro instead — writes .kiro/hooks/preflight-observability.json in the current directory')
|
|
1402
|
-
.action((
|
|
1403
|
-
if (
|
|
1404
|
-
if (
|
|
1486
|
+
.action((cliOptions) => {
|
|
1487
|
+
if (cliOptions.kiro) {
|
|
1488
|
+
if (cliOptions.targetUser) {
|
|
1489
|
+
eprint('\n✗ --kiro cannot be combined with --target-user.');
|
|
1490
|
+
process.exit(1);
|
|
1491
|
+
}
|
|
1492
|
+
if (cliOptions.copilot || cliOptions.windowsCc || cliOptions.linuxCc) {
|
|
1405
1493
|
print('\n ⚠ --kiro cannot be combined with --copilot, --windows-cc, or --linux-cc.');
|
|
1406
1494
|
process.exit(1);
|
|
1407
1495
|
}
|
|
1408
1496
|
handleKiroInstall();
|
|
1409
1497
|
return;
|
|
1410
1498
|
}
|
|
1499
|
+
if (cliOptions.copilot && (cliOptions.windowsCc || cliOptions.linuxCc)) {
|
|
1500
|
+
print('\n ⚠ --copilot cannot be combined with --windows-cc or --linux-cc.');
|
|
1501
|
+
process.exit(1);
|
|
1502
|
+
}
|
|
1503
|
+
let credentials;
|
|
1504
|
+
try {
|
|
1505
|
+
credentials = resolveInstallCredentials({
|
|
1506
|
+
...cliOptions,
|
|
1507
|
+
hasStoredCredentials: hasStoredLicenseSource() && process.env[EXPLICIT_CREDENTIALS_ENV] !== '1',
|
|
1508
|
+
});
|
|
1509
|
+
}
|
|
1510
|
+
catch (err) {
|
|
1511
|
+
eprint(`\n✗ ${errMsg(err)}`);
|
|
1512
|
+
process.exit(1);
|
|
1513
|
+
}
|
|
1514
|
+
for (const warning of credentials.warnings)
|
|
1515
|
+
print(`\n ⚠ ${warning}`);
|
|
1516
|
+
if (credentials.licenseKeySource === 'env') {
|
|
1517
|
+
print('\n License key read from NEW_RELIC_LICENSE_KEY');
|
|
1518
|
+
}
|
|
1519
|
+
if (installForTargetUser(cliOptions, credentials))
|
|
1520
|
+
return;
|
|
1521
|
+
const options = {
|
|
1522
|
+
...cliOptions,
|
|
1523
|
+
credentialsRequested: !!(cliOptions.licenseKey ||
|
|
1524
|
+
cliOptions.licenseKeyFile ||
|
|
1525
|
+
cliOptions.accountId),
|
|
1526
|
+
licenseKey: credentials.licenseKey,
|
|
1527
|
+
accountId: credentials.accountId,
|
|
1528
|
+
};
|
|
1411
1529
|
if (options.copilot) {
|
|
1412
|
-
if (options.windowsCc || options.linuxCc) {
|
|
1413
|
-
print('\n ⚠ --copilot cannot be combined with --windows-cc or --linux-cc.');
|
|
1414
|
-
process.exit(1);
|
|
1415
|
-
}
|
|
1416
1530
|
handleCopilotInstall(options);
|
|
1417
1531
|
return;
|
|
1418
1532
|
}
|
package/dist/install/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/install/cli.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,aAAa,EACb,cAAc,EACd,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,mCAAmC,EACnC,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,8BAA8B,EAAE,MAAM,0CAA0C,CAAC;AAC1F,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAa,MAAM,cAAc,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGrF,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;AAEnC,MAAM,cAAc,GAAG,OAAO,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;AAEpE,8EAA8E;AAC9E,0EAA0E;AAC1E,8EAA8E;AAE9E,SAAS,mBAAmB,CAAC,KAAc;IACzC,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1E,CAAC;AAED,SAAS,kBAAkB;IACzB,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;YAAE,OAAO;QACxC,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;QAC5E,aAAa,CAAC,cAAc,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,8CAA8C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpE,MAAM,CACJ,2FAA2F,CAC5F,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,qEAAqE;AACrE,8EAA8E;AAE9E,SAAS,eAAe,CACtB,OAAmD,EACnD,aAAoC;IAKpC,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACzC,KAAK,CAAC,0EAA0E,CAAC,CAAC;QAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;YACb,KAAK,CAAC,6EAA6E,CAAC,CAAC;YACrF,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;QACzC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,KAAK,CAAC,mEAAmE,CAAC,CAAC;YAC3E,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC9C,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;YACb,KAAK,CAAC,2EAA2E,CAAC,CAAC;YACnF,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACzD,CAAC;IAED,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAE/D,wEAAwE;IACxE,0EAA0E;IAC1E,6DAA6D;IAC7D,IAAI,aAAa,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;QAChD,IAAI,aAAa,KAAK,gBAAgB,EAAE,CAAC;YACvC,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;YACzC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,KAAK,CACH,2FAA2F,CAC5F,CAAC;gBACF,KAAK,CAAC,mFAAmF,CAAC,CAAC;gBAC3F,KAAK,CAAC,sEAAsE,CAAC,CAAC;gBAC9E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACxD,CAAC;IAED,mFAAmF;IACnF,KAAK,CAAC,uFAAuF,CAAC,CAAC;IAC/F,KAAK,CAAC,mFAAmF,CAAC,CAAC;IAC3F,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAC5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,mBAAmB,CAC1B,SAAyB,EACzB,KAAyB,EACzB,WAA0B;IAE1B,OAAO;QACL,YAAY,EAAE,kBAAkB,CAAC,KAAK,EAAE,WAAW,CAAC;QACpD,OAAO,EAAE,mBAAmB,CAAC,KAAK,EAAE,WAAW,CAAC;QAChD,WAAW,EAAE,WAAW,IAAI,SAAS;KACtC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,SAAS,KAAK,CAAC,GAAG,GAAG,EAAE;IACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,MAAM,CAAC,GAAG,GAAG,EAAE;IACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;AACnC,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,MAAM,UAAU,kBAAkB;IAChC,OAAO,iBAAiB,EAAE,KAAK,IAAI,CAAC;AACtC,CAAC;AAED,SAAS,gBAAgB;IACvB,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAC5C,KAAK,CAAC,gFAAgF,CAAC,CAAC;IACxF,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC9E,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAChD,KAAK,CAAC,EAAE,CAAC,CAAC;AACZ,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,GAAW;IACjC,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAQ,GAA6B,CAAC,IAAI,KAAK,OAAO,CAAC;IACzD,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,qBAAqB,CAAC,GAAW;IAC9C,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAK,GAA6B,CAAC,IAAI,KAAK,OAAO;YAAE,MAAM,GAAG,CAAC;IACjE,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IACnC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IACD,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,4BAA4B,CAAC,IAI3C;IACC,MAAM,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;AACjG,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,uBAAuB,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAEjF,CAAC;QACF,OAAO,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,aAAa,CAC1B,QAAgB,EAChB,UAAkB,EAClB,OAAe;IAEf,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IACtC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,KAAK,CAAC,UAAU,CAAC,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,eAAe,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAC3F,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,aAAa,CAAC,QAAgB;IAC3C,MAAM,YAAY,GAAG,wBAAwB,EAAE,CAAC;IAChD,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;QAC3B,IAAI,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;YACrD,IAAI,CAAC;gBACH,sBAAsB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBAChD,aAAa,GAAG,MAAM,aAAa,CACjC,QAAQ,EACR,6DAA6D,EAC7D,kOAAkO,CACnO,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,CAAC,+CAA+C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACpE,KAAK,CACH,uFAAuF,CACxF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,iFAAiF,CAAC,CAAC;QAC3F,CAAC;QACD,IAAI,aAAa;YAAE,OAAO;QAC1B,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,UAAU,CAAC,4BAA4B,EAAE,CAAC;IACvD,IAAI,CAAC,IAAI;QAAE,OAAO;IAElB,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;aACvF,IAAI,EAAE;aACN,WAAW,EAAE,CAAC;IACnB,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;IACD,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO;IAE9C,IAAI,CAAC;QACH,MAAM,4BAA4B,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,aAAa,CACjB,QAAQ,EACR,wBAAwB,EACxB,sFAAsF,CACvF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,KAAK,CAAC,oDAAoD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzE,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,EAAU;IAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IAC3C,IAAI,YAAY,GAAG,EAAE;QAAE,OAAO,GAAG,YAAY,GAAG,CAAC;IACjD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;IACnD,IAAI,YAAY,GAAG,EAAE;QAAE,OAAO,GAAG,YAAY,GAAG,CAAC;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;IACjD,IAAI,UAAU,GAAG,EAAE;QAAE,OAAO,GAAG,UAAU,GAAG,CAAC;IAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;IAC9C,OAAO,GAAG,SAAS,GAAG,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,WAAW,CAAC,OAA4B;IACrD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,UAAU,CAAC,oBAAoB,EAAE,CAAC;IAClD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,KAAK,CAAC,cAAc,OAAO,uBAAuB,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAChF,KAAK,EAAE,CAAC;IACV,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,CAAC,4BAA4B,EAAE,CAAC;IACxD,MAAM,SAAS,GAAG,UAAU,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACzE,MAAM,cAAc,GAAG,UAAU,CAAC,wBAAwB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEpF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1D,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAClD,OAAO;IACT,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,GAAG,SAAS,CAAC,MAAM,+BAA+B,CAAC,CAAC;QAC1D,KAAK,EAAE,CAAC;QACR,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,KAAK,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC;YACpE,KAAK,CACH,SAAS,IAAI,CAAC,GAAG,MAAM,MAAM,aAAa,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,CACrG,CAAC;QACJ,CAAC;QACD,KAAK,EAAE,CAAC;IACV,CAAC;IAED,2EAA2E;IAC3E,sEAAsE;IACtE,yEAAyE;IACzE,wEAAwE;IACxE,uEAAuE;IACvE,gBAAgB;IAChB,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,KAAK,CAAC,GAAG,cAAc,CAAC,MAAM,mCAAmC,CAAC,CAAC;QACnE,KAAK,EAAE,CAAC;QACR,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,KAAK,CACH,SAAS,IAAI,CAAC,GAAG,cAAc,IAAI,CAAC,SAAS,aAAa,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,SAAS,MAAM,IAAI,CAAC,GAAG,IAAI,aAAa,EAAE,CAClJ,CAAC;QACJ,CAAC;QACD,KAAK,EAAE,CAAC;QACR,KAAK,CACH,iGAAiG,CAClG,CAAC;QACF,KAAK,CACH,2FAA2F,CAC5F,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK;QAAE,OAAO;IAE3B,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,EAAE,GAAG,CAAC,CAAC;IACnE,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IAC/D,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IAED,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,CACP,MAAM,EAAE,CAAC,QAAQ,CACf,UAAU,YAAY,oBAAoB,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,CAClF,CACF;aACE,IAAI,EAAE;aACN,WAAW,EAAE,CAAC;IACnB,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;IACD,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO;IAE9C,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACxC,UAAU,CAAC,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC/C,KAAK,CAAC,gBAAgB,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,wBAAwB,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACxC,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAClD,KAAK,CAAC,gBAAgB,MAAM,CAAC,GAAG,aAAa,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC;QACrE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,wBAAwB,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY;IACzB,kBAAkB,EAAE,CAAC;IACrB,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IACtC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QACvB,KAAK,MAAM,IAAI,IAAI,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAE7B,KAAK,CAAC,2BAA2B,QAAQ,OAAO,CAAC,CAAC;IAElD,IAAI,CAAC;QACH,KAAK,CAAC,YAAY,CAAC,CAAC;QACpB,YAAY,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAClE,KAAK,CAAC,gFAAgF,CAAC,CAAC;QACxF,KAAK,CAAC,iFAAiF,CAAC,CAAC;QACzF,KAAK,CAAC,eAAe,QAAQ,gBAAgB,CAAC,CAAC;QAC/C,KAAK,CAAC,eAAe,QAAQ,gCAAgC,CAAC,CAAC;QAC/D,KAAK,CAAC,mFAAmF,CAAC,CAAC;QAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC3B,YAAY,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC3E,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9B,KAAK,CAAC,mDAAmD,CAAC,CAAC;QAC3D,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAClF,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,KAAK,CAAC,0CAA0C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,SAAS,cAAc,CAAC,OAA6C;IACnE,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;YACjC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC;QACpF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,gCAAgC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;QACtC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACpE,KAAK,CAAC,iFAAiF,CAAC,CAAC;YACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,4BAA4B,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,IAAI,GAAG,EAAE,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;YAC7B,KAAK,CAAC,iBAAiB,OAAO,CAAC,IAAI,oCAAoC,CAAC,CAAC;YACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,KAAK,CAAC,mFAAmF,CAAC,CAAC;YAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,eAAe,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3C,KAAK,CAAC,qCAAqC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACxD,KAAK,CAAC,UAAU,OAAO,EAAE,iCAAiC,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IAED,0BAA0B;IAC1B,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACnC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC9B,KAAK,CACH,sGAAsG,CACvG,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACrD,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACvD,KAAK,CAAC,yBAAyB,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YACjD,KAAK,CAAC,aAAa,MAAM,CAAC,UAAU,IAAI,SAAS,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACtD,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAC5C,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,SAAS,aAAa,CAAC,OAOtB;IACC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACzB,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IACnD,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,mBAAmB,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC;IAEtB,8CAA8C;IAC9C,4EAA4E;IAC5E,8EAA8E;IAC9E,2EAA2E;IAC3E,+EAA+E;IAC/E,mFAAmF;IACnF,uFAAuF;IACvF,MAAM,gBAAgB,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAClE,IAAI,gBAAgB,GAA4B,EAAE,CAAC;IACnD,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,CAAC;QACH,kFAAkF;QAClF,gBAAgB,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,aAAa,GAAG,GAAG,YAAY,WAAW,CAAC;QACjD,IAAI,aAAa,IAAI,CAAC,KAAK,IAAI,CAAC,gBAAgB,CAAC,IAAI,mBAAmB,EAAE,CAAC;YACzE,MAAM,CAAC,mEAAmE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACzF,MAAM,CACJ,aAAa;gBACX,CAAC,CAAC,8EAA8E;gBAChF,CAAC,CAAC,6CAA6C,CAClD,CAAC;YACF,MAAM,GAAG,CAAC;QACZ,CAAC;QACD,MAAM,CAAC,qEAAqE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3F,MAAM,CAAC,uFAAuF,CAAC,CAAC;QAChG,iBAAiB,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,MAAM,aAAa,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAC3E,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC1E,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IAEjG,IAAI,cAAgD,CAAC;IACrD,IAAI,SAA4C,CAAC;IACjD,IAAI,CAAC;QACH,cAAc,GAAG,aAAa,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACxF,SAAS,GAAG,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IACjF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,iCAAiC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,GAAG,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QACH,aAAa,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,qCAAqC,YAAY,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7E,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,IAAI,CAAC;QACH,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,mCAAmC,OAAO,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtE,MAAM,GAAG,CAAC;IACZ,CAAC;IAED,6FAA6F;IAC7F,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,MAAM,QAAQ,GAA4B,EAAE,GAAG,gBAAgB,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;YAC5F,IAAI,mBAAmB,EAAE,CAAC;gBACxB,MAAM,CAAC,MAAM,CACX,QAAQ,EACR,gBAAgB,CAAC,OAAO,CAAC,UAAoB,EAAE,OAAO,CAAC,SAAmB,CAAC,CAC5E,CAAC;YACJ,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC/B,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,gBAAgB,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBACpF,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC;YAC1B,CAAC;YACD,aAAa,CAAC,cAAc,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC;YAC9D,eAAe,GAAG,mBAAmB,CAAC;QACxC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,mBAAmB,EAAE,CAAC;gBACxB,MAAM,CAAC,wCAAwC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC9D,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,MAAM,CAAC,0CAA0C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChE,MAAM,CAAC,qEAAqE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,KAAK,gBAAgB,EAAE,CAAC;QAClC,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACjE,KAAK,CAAC,uBAAuB,YAAY,EAAE,CAAC,CAAC;QAC7C,KAAK,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;QAC7C,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAChF,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACxE,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAC5C,CAAC;SAAM,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;QACvC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC9D,KAAK,CAAC,uBAAuB,YAAY,EAAE,CAAC,CAAC;QAC7C,KAAK,CAAC,oEAAoE,CAAC,CAAC;QAC5E,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,kCAAkC,YAAY,EAAE,CAAC,CAAC;IACxD,KAAK,CAAC,kFAAkF,CAAC,CAAC;IAC1F,KAAK,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;IAC7C,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAExC,IAAI,eAAe,EAAE,CAAC;QACpB,KAAK,CAAC,iCAAiC,cAAc,EAAE,CAAC,CAAC;IAC3D,CAAC;SAAM,IAAI,CAAC,mBAAmB,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7E,KAAK,CAAC,kFAAkF,CAAC,CAAC;IAC5F,CAAC;IAED,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,gBAAgB,EAAE,CAAC;IACrB,CAAC;IAED,uEAAuE;IACvE,2EAA2E;IAC3E,qEAAqE;IACrE,0EAA0E;IAC1E,0EAA0E;IAC1E,yEAAyE;IACzE,sEAAsE;IACtE,qEAAqE;IACrE,MAAM,YAAY,GAAG,qBAAqB,CAAC;QACzC,kBAAkB,EAAE,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC;QACnD,gBAAgB,EAAE,sBAAsB,CAAC,KAAK,CAAC;QAC/C,kBAAkB,EAAE,wBAAwB,EAAE;QAC9C,wBAAwB,EAAE,IAAI;KAC/B,CAAC,CAAC;IACH,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;QACzB,KAAK,CAAC,+EAA+E,CAAC,CAAC;QACvF,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,CAAC;IACvB,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAClC,KAAK,CAAC,mEAAmE,CAAC,CAAC;IAC3E,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACzD,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAChC,KAAK,CAAC,8DAA8D,CAAC,CAAC;AACxE,CAAC;AAED,8EAA8E;AAC9E,qCAAqC;AACrC,8EAA8E;AAE9E,4EAA4E;AAC5E,wEAAwE;AACxE,wEAAwE;AACxE,sDAAsD;AACtD,EAAE;AACF,2EAA2E;AAC3E,oEAAoE;AACpE,wEAAwE;AACxE,wEAAwE;AACxE,0EAA0E;AAC1E,yEAAyE;AACzE,kEAAkE;AAClE,SAAS,wBAAwB,CAC/B,cAAsB,EACtB,OAAsB,EACtB,UAAmB,EACnB,SAAkB;IAElB,IAAI,CAAC;QACH,YAAY,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAClF,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,CAAC;IAChC,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG;QACX,KAAK;QACL,KAAK;QACL,WAAW;QACX,OAAO;QACP,wBAAwB;QACxB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,yBAAyB,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,wBAAwB,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,IAAI;QACJ,MAAM;QACN,GAAG,UAAU;KACd,CAAC;IACF,YAAY,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,iBAAiB;IACxB,6EAA6E;IAC7E,0CAA0C;IAC1C,IAAI,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACrD,MAAM,CACJ,wFAAwF,CACzF,CAAC;QACF,MAAM,CAAC,sEAAsE,CAAC,CAAC;QAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,aAAa,CAAC,SAAS,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,mCAAmC,SAAS,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;IAC9C,KAAK,CAAC,oFAAoF,CAAC,CAAC;AAC9F,CAAC;AAED,SAAS,mBAAmB;IAC1B,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,KAAK,CAAC,iCAAiC,OAAO,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;QAC9E,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,aAAa,CAAC,SAAS,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC/E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,oCAAoC,SAAS,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,KAAK,CAAC,qCAAqC,SAAS,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,oBAAoB,CAAC,OAI7B;IACC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IACnD,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,cAAc,GAAG,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAEhD,wEAAwE;IACxE,sEAAsE;IACtE,+CAA+C;IAC/C,IAAI,WAAoC,CAAC;IACzC,IAAI,CAAC;QACH,WAAW,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,+CAA+C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACrE,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,IAAI,CAAC;QACH,aAAa,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,6CAA6C,SAAS,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClF,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,KAAK,CAAC,8BAA8B,SAAS,EAAE,CAAC,CAAC;IAEjD,yEAAyE;IACzE,wEAAwE;IACxE,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,wBAAwB,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YACzF,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,2DAA2D,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjF,MAAM,CAAC,oEAAoE,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,GAAG,GAAG,0BAA0B,EAAE,CAAC;QACzC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,KAAK,CAAC,4DAA4D,CAAC,CAAC;YACpE,KAAK,CACH,yFAAyF,CAC1F,CAAC;QACJ,CAAC;aAAM,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACnC,KAAK,CAAC,iDAAiD,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,sDAAsD,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAChF,KAAK,CAAC,iFAAiF,CAAC,CAAC;IAC3F,CAAC;IAED,qEAAqE;IACrE,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;IAC5C,MAAM,kBAAkB,GAAG,wBAAwB,EAAE,CAAC;IACtD,IAAI,qBAAqB,GAAG,KAAK,CAAC;IAElC,IAAI,aAAa,IAAI,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE;gBACvF,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC,CAAC;YACH,aAAa,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;YAC9C,KAAK,CAAC,oCAAoC,aAAa,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,2CAA2C,aAAa,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,kBAAkB,IAAI,UAAU,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,EAAE;gBACzE,mBAAmB,EAAE,IAAI;aAC1B,CAAC,CAAC;YACH,aAAa,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;YAC1C,KAAK,CAAC,6DAA6D,CAAC,CAAC;YACrE,qBAAqB,GAAG,IAAI,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,+CAA+C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,wEAAwE;IACxE,wEAAwE;IACxE,0CAA0C;IAC1C,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3D,MAAM,GAAG,GAAG,qBAAqB,CAAC;QAChC,kBAAkB;QAClB,gBAAgB,EAAE,SAAS;QAC3B,kBAAkB;QAClB,yBAAyB,EAAE,IAAI;KAChC,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,KAAK,CAAC,+EAA+E,CAAC,CAAC;QACvF,qBAAqB,GAAG,IAAI,CAAC;IAC/B,CAAC;IAED,IAAI,qBAAqB,EAAE,CAAC;QAC1B,KAAK,CAAC,8EAA8E,CAAC,CAAC;QACtF,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,CAAC;IACvB,KAAK,CAAC,mEAAmE,CAAC,CAAC;IAC3E,KAAK,CAAC,+DAA+D,CAAC,CAAC;AACzE,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,OAGrC;IACC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IACnD,MAAM,SAAS,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;IAC5C,MAAM,kBAAkB,GAAG,wBAAwB,EAAE,CAAC;IACtD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,8BAA8B,EAAE,CAAC;IAEvD,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,IAAI,UAAU,CAAC,SAAS,CAAC;QAAE,aAAa,CAAC,IAAI,CAAC,iCAAiC,SAAS,EAAE,CAAC,CAAC;IAC5F,IAAI,aAAa,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/C,aAAa,CAAC,IAAI,CAAC,8BAA8B,aAAa,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,yEAAyE;IACzE,IAAI,wBAAwB,GAAG,KAAK,CAAC;IACrC,IAAI,kBAAkB,IAAI,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,QAAQ,CAAC,yBAAyB,CAAC,CAAC;YACtD,IACE,OAAO,SAAS,KAAK,QAAQ;gBAC7B,SAAS,KAAK,IAAI;gBACjB,SAAqC,CAAC,kBAAkB,CAAC,KAAK,KAAK,EACpE,CAAC;gBACD,wBAAwB,GAAG,IAAI,CAAC;gBAChC,aAAa,CAAC,IAAI,CAChB,mBAAmB,kBAAkB,kDAAkD,kBAAkB,EAAE,CAC5G,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qDAAqD;QACvD,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,aAAa,CAAC,IAAI,CAAC,6CAA6C,aAAa,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,cAAc,EAAE,CAAC;QACnB,aAAa,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAC7D,OAAO;IACT,CAAC;IAED,KAAK,CAAC,kEAAkE,CAAC,CAAC;IAC1E,KAAK,MAAM,IAAI,IAAI,aAAa;QAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CACH,+FAA+F,CAChG,CAAC;IACF,KAAK,CAAC,kFAAkF,CAAC,CAAC;IAC1F,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,IAAI,CAAC,aAAa,CAAC,MAAM,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC;QAAE,OAAO;IACtE,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1B,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAChC,SAAS,EACT,SAAS,EACT,sBAAsB,EACtB,eAAe,CAChB,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,UAAU,GAAG,IAAI,CAAC;YAClB,KAAK,CAAC,4BAA4B,SAAS,EAAE,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;IACH,CAAC;IAED,IAAI,aAAa,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAChC,aAAa,EACb,SAAS,EACT,qBAAqB,EACrB,oBAAoB,CACrB,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,UAAU,GAAG,IAAI,CAAC;YAClB,KAAK,CAAC,iCAAiC,aAAa,EAAE,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;IACH,CAAC;IAED,IAAI,wBAAwB,IAAI,kBAAkB,EAAE,CAAC;QACnD,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAChC,kBAAkB,EAClB,SAAS,EACT,CAAC,IAAI,EAAE,EAAE,CAAC,mCAAmC,CAAC,IAAI,EAAE,kBAAkB,CAAC,EACvE,oCAAoC,CACrC,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,UAAU,GAAG,IAAI,CAAC;YAClB,KAAK,CAAC,uCAAuC,kBAAkB,EAAE,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,UAAU,CAAC,aAAa,CAAC,CAAC;YAC1B,UAAU,GAAG,IAAI,CAAC;YAClB,KAAK,CAAC,0CAA0C,aAAa,EAAE,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,SAAS,GAAG,IAAI,CAAC;YACjB,MAAM,CAAC,mDAAmD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,YAAY,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAChF,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACrD,UAAU,GAAG,IAAI,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,uEAAuE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,8CAA8C,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;IAC9F,IAAI,UAAU,EAAE,CAAC;QACf,KAAK,CACH,4FAA4F,CAC7F,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,0EAA0E;AAC1E,uEAAuE;AACvE,2CAA2C;AAC3C,SAAS,qBAAqB,CAAC,OAI9B;IAIC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IAEnD,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACzC,KAAK,CAAC,0EAA0E,CAAC,CAAC;QAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QAClC,KAAK,CAAC,6EAA6E,CAAC,CAAC;QACrF,KAAK,CAAC,mDAAmD,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QAChC,KAAK,CAAC,2EAA2E,CAAC,CAAC;QACnF,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC;IACvB,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAEzD,IAAI,OAAO,CAAC,SAAS,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QAC9C,KAAK,CAAC,mEAAmE,CAAC,CAAC;QAC3E,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,8EAA8E;IAC9E,gFAAgF;IAChF,6EAA6E;IAC7E,mCAAmC;IACnC,iFAAiF;IACjF,kCAAkC;IAClC,IAAI,aAAa,GAA0B,IAAI,CAAC;IAChD,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;YAClD,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,0CAA0C;QAC5C,CAAC;IACH,CAAC;IAED,IAAI,cAAuB,CAAC;IAC5B,IAAI,YAAqB,CAAC;IAC1B,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,cAAc,GAAG,IAAI,CAAC;QACtB,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;SAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,cAAc,GAAG,KAAK,CAAC;QACvB,YAAY,GAAG,IAAI,CAAC;IACtB,CAAC;SAAM,IAAI,aAAa,KAAK,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,yFAAyF;YACzF,0FAA0F;YAC1F,cAAc,GAAG,KAAK,CAAC;YACvB,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;aAAM,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YAChC,wFAAwF;YACxF,yFAAyF;YACzF,+FAA+F;YAC/F,KAAK,CACH,2FAA2F,CAC5F,CAAC;YACF,KAAK,CAAC,8CAA8C,CAAC,CAAC;YACtD,KAAK,CAAC,6DAA6D,CAAC,CAAC;YACrE,KAAK,CAAC,0EAA0E,CAAC,CAAC;YAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,qFAAqF;YACrF,yFAAyF;YACzF,cAAc,GAAG,IAAI,CAAC;YACtB,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;SAAM,IAAI,aAAa,KAAK,cAAc,EAAE,CAAC;QAC5C,+EAA+E;QAC/E,0FAA0F;QAC1F,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACzB,KAAK,CAAC,sFAAsF,CAAC,CAAC;QAChG,CAAC;QACD,cAAc,GAAG,WAAW,KAAK,IAAI,CAAC;QACtC,YAAY,GAAG,IAAI,CAAC;IACtB,CAAC;SAAM,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;QACtC,cAAc,GAAG,KAAK,CAAC;QACvB,YAAY,GAAG,IAAI,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,2EAA2E;QAC3E,cAAc,GAAG,WAAW,KAAK,IAAI,CAAC;QACtC,YAAY,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,kEAAkE;IAClE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAA8B,CAAC;IACnE,MAAM,eAAe,GAAG,IAAI,GAAG,EAA8B,CAAC;IAE9D,IAAI,cAAc,IAAI,WAAW,EAAE,CAAC;QAClC,oBAAoB,CAAC,GAAG,CAAC,kBAAkB,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;QAC9E,eAAe,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,oBAAoB,CAAC,GAAG,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;QACrE,eAAe,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,CAAC;AACnD,CAAC;AAcD,6EAA6E;AAC7E,gEAAgE;AAChE,SAAS,cAAc,CACrB,IAAY,EACZ,WAA+B,EAC/B,SAAqE,EACrE,UAAkB;IAElB,MAAM,MAAM,GAAG,GAAG,IAAI,WAAW,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACtC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3B,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;QACnC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;QAClD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACxC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,2EAA2E;QAC3E,oEAAoE;QACpE,sEAAsE;QACtE,2EAA2E;QAC3E,yDAAyD;QACzD,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAClE,MAAM,CAAC,uBAAuB,UAAU,KAAK,IAAI,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;AACH,CAAC;AAED,uEAAuE;AACvE,0EAA0E;AAC1E,2EAA2E;AAC3E,SAAS,sBAAsB,CAC7B,oBAAqD,EACrD,eAAgD;IAEhD,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,UAAU,GAAiB,IAAI,CAAC;IAEpC,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,KAAK,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,oBAAoB,EAAE,CAAC;QAC/D,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;YAAE,SAAS;QACxC,eAAe,GAAG,IAAI,CAAC;QACvB,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,cAAc,CACvC,YAAY,EACZ,WAAW,EACX,cAAc,EACd,cAAc,CACf,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,GAAG,IAAI,CAAC;YACf,KAAK,CAAC,oBAAoB,YAAY,EAAE,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,UAAU,KAAK,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IACD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,KAAK,CACH,6BAA6B,CAAC,GAAG,oBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAC5F,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,eAAe,EAAE,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,SAAS;QACnC,UAAU,GAAG,IAAI,CAAC;QAClB,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;QAC/F,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,GAAG,IAAI,CAAC;YACf,KAAK,CAAC,yBAAyB,OAAO,EAAE,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,UAAU,KAAK,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IACD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,KAAK,CAAC,0BAA0B,CAAC,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAClG,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;AAC5F,CAAC;AAED,wEAAwE;AACxE,kEAAkE;AAClE,SAAS,OAAO,CAAC,KAAa,EAAE,eAAwB,EAAE,EAAiB;IACzE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,EAAE,CAAC;QACrB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;IAC1D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAClE,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACvD,MAAM,CAAC,sBAAsB,KAAK,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,KAAK,UAAU,aAAa,CAC1B,GAAY;IAEZ,IAAI,GAAG;QAAE,OAAO,WAAW,CAAC;IAC5B,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI;QAAE,OAAO,iBAAiB,CAAC;IAC3D,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7E,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,cAAc,CAAC;IACxB,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,uEAAuE;AACvE,6EAA6E;AAC7E,SAAS,aAAa,CACpB,MAAqE;IAErE,IAAI,MAAM,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,OAAO,GACX,MAAM,KAAK,iBAAiB;QAC1B,CAAC,CAAC,4EAA4E;QAC9E,CAAC,CAAC,MAAM,KAAK,cAAc;YACzB,CAAC,CAAC,qCAAqC;YACvC,CAAC,CAAC,sBAAsB,CAAC;IAC/B,KAAK,CAAC,OAAO,CAAC,CAAC;IACf,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACrB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,KAAK,UAAU,eAAe,CAAC,OAM9B;IACC,4EAA4E;IAC5E,mEAAmE;IACnE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YAC5D,KAAK,CAAC,8EAA8E,CAAC,CAAC;YACtF,KAAK,CAAC,2EAA2E,CAAC,CAAC;YACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,YAAY,GAAG,wBAAwB,EAAE,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;YAC5B,KAAK,CAAC,+DAA+D,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QACD,KAAK,CAAC,6EAA6E,CAAC,CAAC;QACrF,IAAI,CAAC,aAAa,CAAC,MAAM,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC;YAAE,OAAO;QAEtE,MAAM,IAAI,GAAG,OAAO,CAAC,6BAA6B,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC,CAAC;QAC1F,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACxB,KAAK,CAAC,8CAA8C,CAAC,CAAC;YACtD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,KAAK,CAAC,iEAAiE,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QACD,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAChD,KAAK,CAAC,qEAAqE,CAAC,CAAC;QAC7E,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IAED,MAAM,EAAE,oBAAoB,EAAE,eAAe,EAAE,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAEjF,mEAAmE;IACnE,yCAAyC;IACzC,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,KAAK,MAAM,YAAY,IAAI,oBAAoB,CAAC,IAAI,EAAE,EAAE,CAAC;QACvD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7B,aAAa,CAAC,IAAI,CAAC,yBAAyB,YAAY,EAAE,CAAC,CAAC;YAC5D,cAAc,GAAG,IAAI,CAAC;QACxB,CAAC;IACH,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7C,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,aAAa,CAAC,IAAI,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;YAC5D,cAAc,GAAG,IAAI,CAAC;QACxB,CAAC;IACH,CAAC;IACD,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,MAAM,YAAY,GAAG,wBAAwB,EAAE,CAAC;IAChD,IAAI,cAAc,CAAC,SAAS,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ;YACpC,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,2CAA2C,CAAC;QAChD,aAAa,CAAC,IAAI,CAAC,OAAO,MAAM,uBAAuB,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ;YAClC,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,2CAA2C,CAAC;QAChD,aAAa,CAAC,IAAI,CAAC,OAAO,MAAM,8BAA8B,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACjD,OAAO;IACT,CAAC;IAED,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAChE,KAAK,MAAM,IAAI,IAAI,aAAa;QAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,wCAAwC,oBAAoB,uBAAuB,CAAC,CAAC;IAC3F,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,IAAI,CAAC,aAAa,CAAC,MAAM,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC;QAAE,OAAO;IAEtE,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,MAAM,UAAU,GAAG,sBAAsB,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IACjF,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,KAAK,CAAC,iFAAiF,CAAC,CAAC;IAC3F,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,sBAAsB,EAAE,KAAK,EAAE,GAAG,EAAE;QAC/D,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;QACjC,IAAI,OAAO;YAAE,KAAK,CAAC,gCAAgC,CAAC,CAAC;aAChD,IAAI,cAAc,CAAC,SAAS,EAAE,CAAC;YAClC,qEAAqE;YACrE,+DAA+D;YAC/D,MAAM,IAAI,KAAK,CACb,gFAAgF,CACjF,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,OAAO,CAAC,6BAA6B,EAAE,KAAK,EAAE,GAAG,EAAE;QACpE,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACxC,IAAI,OAAO;YAAE,KAAK,CAAC,uCAAuC,CAAC,CAAC;aACvD,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;YAChC,qEAAqE;YACrE,wEAAwE;YACxE,sEAAsE;YACtE,MAAM,IAAI,KAAK,CACb,uFAAuF,CACxF,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC;IAE1E,6EAA6E;IAC7E,8EAA8E;IAC9E,iFAAiF;IACjF,+EAA+E;IAC/E,iFAAiF;IACjF,0EAA0E;IAC1E,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS,IAAI,cAAc,CAAC,CAAC;IAC/F,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,mBAAmB,EAAE,CAAC;QAC5C,kBAAkB,EAAE,CAAC;IACvB,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,CACH,yFAAyF,CAC1F,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;SAAM,IAAI,UAAU,EAAE,CAAC;QACtB,0EAA0E;QAC1E,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,8CAA8C,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;IAChG,CAAC;SAAM,IAAI,SAAS,EAAE,CAAC;QACrB,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,SAAS,cAAc,CAAC,OAA4B;IAClD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;IAClF,KAAK,CAAC,cAAc,UAAU,KAAK,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAE9C,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACvB,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAClE,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/D,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAChC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;IAC3B,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACnC,KAAK,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpF,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,WAAW,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAE1F,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;QACjF,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACzD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QAC7F,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,SAAS,cAAc,CAAC,MAAkC;IACxD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;QAAE,OAAO,CAAC,CAAC;IACtD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,8EAA8E;AAC9E,6EAA6E;AAC7E,mEAAmE;AACnE,KAAK,UAAU,iBAAiB,CAAC,UAAkB;IACjD,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;IACxE,IAAI,CAAC;QACH,gBAAgB,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE;YACjF,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,OAI3B;IACC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;IAElF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,SAAS,CAAC;IAC3E,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE7F,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpD,OAAO,CAAC,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAA2B,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IAClF,MAAM,GAAG,GAAG,EAAE,CAAC;IAEf,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;QACnC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,CAAC;YAC1D,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IAE/D,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrE,IAAI,KAAK,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrE,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IAE9E,OAAO,CAAC,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,4CAA4C,CAAC,CAAC;IAEpF,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,iEAAiE,CAAC;SAC9E,MAAM,CAAC,qBAAqB,EAAE,uBAAuB,CAAC;SACtD,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC;SACnD,SAAS,CACR,IAAI,MAAM,CAAC,eAAe,EAAE,wDAAwD,CAAC,CAAC,OAAO,CAC3F,CAAC,GAAG,WAAW,CAAC,CACjB,CACF;SACA,MAAM,CAAC,WAAW,EAAE,oEAAoE,CAAC;SACzF,MAAM,CAAC,cAAc,EAAE,kEAAkE,CAAC;SAC1F,MAAM,CAAC,YAAY,EAAE,+DAA+D,CAAC;SACrF,MAAM,CACL,WAAW,EACX,6FAA6F,CAC9F;SACA,MAAM,CACL,QAAQ,EACR,0GAA0G,CAC3G;SACA,MAAM,CACL,CAAC,OASA,EAAE,EAAE;QACH,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBAC5D,KAAK,CAAC,8EAA8E,CAAC,CAAC;gBACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,iBAAiB,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACzC,KAAK,CAAC,qEAAqE,CAAC,CAAC;gBAC7E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,oBAAoB,CAAC,OAAO,CAAC,CAAC;YAC9B,OAAO;QACT,CAAC;QACD,aAAa,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,iEAAiE,CAAC;SAC9E,MAAM,CAAC,WAAW,EAAE,uEAAuE,CAAC;SAC5F,MAAM,CAAC,cAAc,EAAE,kDAAkD,CAAC;SAC1E,MAAM,CAAC,YAAY,EAAE,gDAAgD,CAAC;SACtE,MAAM,CACL,UAAU,EACV,gGAAgG,CACjG;SACA,MAAM,CAAC,OAAO,EAAE,0DAA0D,CAAC;SAC3E,MAAM,CAAC,WAAW,EAAE,oEAAoE,CAAC;SACzF,MAAM,CACL,QAAQ,EACR,+FAA+F,CAChG;SACA,MAAM,CACL,KAAK,EAAE,OAQN,EAAE,EAAE;QACH,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC9E,KAAK,CACH,wFAAwF,CACzF,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,mBAAmB,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC3D,KAAK,CAAC,gFAAgF,CAAC,CAAC;gBACxF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QACD,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CACV,6FAA6F,CAC9F;SACA,SAAS,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,8CAA8C,CAAC,CAAC,QAAQ,EAAE,CAAC;SAC7F,MAAM,CAAC,KAAK,EAAE,IAA6B,EAAE,EAAE;QAC9C,IAAI,CAAC;YACH,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;YAC7D,MAAM,cAAc,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,qBAAqB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,kEAAkE,CAAC;SAC/E,MAAM,CAAC,iBAAiB,EAAE,kEAAkE,CAAC;SAC7F,MAAM,CAAC,cAAc,CAAC,CAAC;IAE1B,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,gFAAgF,CAAC;SAC7F,MAAM,CAAC,iBAAiB,EAAE,kEAAkE,CAAC;SAC7F,MAAM,CACL,mBAAmB,EACnB,kFAAkF,CACnF;SACA,MAAM,CAAC,QAAQ,EAAE,6DAA6D,CAAC;SAC/E,MAAM,CAAC,YAAY,CAAC,CAAC;IAExB,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,gEAAgE,CAAC;SAC7E,MAAM,CAAC,YAAY,CAAC,CAAC;IAExB,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,gBAAgB,EAAE,wDAAwD,CAAC;SAClF,MAAM,CAAC,WAAW,EAAE,iCAAiC,CAAC;SACtD,MAAM,CAAC,cAAc,CAAC,CAAC;IAE1B,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,qEAAqE,CAAC;SAClF,MAAM,CACL,SAAS,EACT,+EAA+E,CAChF;SACA,MAAM,CAAC,WAAW,CAAC,CAAC;IAEvB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAc;IAChD,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;AAC3D,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/install/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot-install-helper.d.ts","sourceRoot":"","sources":["../../src/install/copilot-install-helper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAiBH,eAAO,MAAM,sBAAsB,uBAAuB,CAAC;AAC3D,eAAO,MAAM,uBAAuB,0DAA0D,CAAC;AAO/F,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"copilot-install-helper.d.ts","sourceRoot":"","sources":["../../src/install/copilot-install-helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,12 +23,12 @@
|
|
|
23
23
|
* account. Every hook-sourced Copilot event (CLI and VS Code Copilot Chat
|
|
24
24
|
* both, since they share this one file) is tagged simply `'copilot'`.
|
|
25
25
|
*/
|
|
26
|
-
import { dirname,
|
|
26
|
+
import { dirname, resolve, win32 } from 'node:path';
|
|
27
27
|
import { homedir } from 'node:os';
|
|
28
28
|
import { existsSync, mkdirSync, copyFileSync } from 'node:fs';
|
|
29
29
|
import { z } from 'zod';
|
|
30
30
|
import { readJsonFileStrict, writeJsonFile, errMsg } from './json-utils.js';
|
|
31
|
-
import { entryContainsNrObserve } from './install-helper.js';
|
|
31
|
+
import { entryContainsNrObserve, shimExtension, siblingBinPath } from './install-helper.js';
|
|
32
32
|
import { resolveDataDir } from '../deploy/data-paths.js';
|
|
33
33
|
import { copilotSdkExtensionInstallPath } from '../hooks/copilot-sdk-extension-health.js';
|
|
34
34
|
// ---------------------------------------------------------------------------
|
|
@@ -42,14 +42,67 @@ const HOOK_FILE_LOCATIONS_SETTING = 'chat.hookFilesLocations';
|
|
|
42
42
|
// ---------------------------------------------------------------------------
|
|
43
43
|
// Generators
|
|
44
44
|
// ---------------------------------------------------------------------------
|
|
45
|
-
|
|
45
|
+
const HOOK_SUBCOMMANDS = { PreToolUse: 'pre-tool', PostToolUse: 'post-tool' };
|
|
46
|
+
// The collector shim at `collectorPath`, given in any of its shim forms, that
|
|
47
|
+
// sh or PowerShell can run.
|
|
48
|
+
function collectorShim(collectorPath, powershell) {
|
|
49
|
+
return `${collectorPath.replace(/\.(?:exe|cmd|ps1)$/i, '')}${shimExtension(collectorPath, { powershell })}`;
|
|
50
|
+
}
|
|
51
|
+
// The hook entry that runs the collector at `collectorPath`, or the bare name
|
|
52
|
+
// on PATH when null.
|
|
53
|
+
function collectorHookCommand(collectorPath, subcommand) {
|
|
46
54
|
// Quote the path so shells with sh -c don't split on spaces, matching
|
|
47
55
|
// install-helper.ts's generateHookEntries() for Claude.
|
|
48
|
-
const bin =
|
|
49
|
-
? `"${
|
|
56
|
+
const bin = collectorPath
|
|
57
|
+
? `"${collectorShim(collectorPath, false).replace(/\\/g, '\\\\').replace(/"/g, '\\"')}"`
|
|
50
58
|
: COLLECTOR_COMMAND;
|
|
51
|
-
|
|
52
|
-
|
|
59
|
+
// GitHub's Copilot hooks reference (docs.github.com/en/copilot/reference/
|
|
60
|
+
// hooks-configuration) runs `powershell` instead of `command` on Windows.
|
|
61
|
+
// PowerShell parses a leading VAR=value as a command name, so it sets the
|
|
62
|
+
// tag through $env: and runs the path with `&`. The path is single-quoted
|
|
63
|
+
// (verbatim in PowerShell), so it skips the sh backslash escaping above.
|
|
64
|
+
const psBin = collectorShim(collectorPath ?? COLLECTOR_COMMAND, true);
|
|
65
|
+
return {
|
|
66
|
+
type: 'command',
|
|
67
|
+
command: `NEW_RELIC_AI_PLATFORM=copilot ${bin} ${subcommand}`,
|
|
68
|
+
powershell: `$env:NEW_RELIC_AI_PLATFORM='copilot'; & '${psBin.replace(/'/g, "''")}' ${subcommand}`,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
// The collector path in a hook command, from sh double quotes, PowerShell
|
|
72
|
+
// single quotes, or a bare word, when it is absolute.
|
|
73
|
+
const POWERSHELL_COMMAND_RE = /^\s*(?:\$env:|&)/i;
|
|
74
|
+
const COLLECTOR_REF_RE = /"((?:\\"|[^"])*preflight-collector(?:\.\w+)?)"|'((?:[^']|'')*preflight-collector(?:\.\w+)?)'|([^\s"']*preflight-collector(?:\.\w+)?)/i;
|
|
75
|
+
function absoluteCollectorPath(command) {
|
|
76
|
+
const m = COLLECTOR_REF_RE.exec(command);
|
|
77
|
+
if (!m)
|
|
78
|
+
return null;
|
|
79
|
+
// Only sh unescapes inside double quotes. PowerShell keeps backslashes, as
|
|
80
|
+
// in a UNC path.
|
|
81
|
+
const path = m[1] !== undefined
|
|
82
|
+
? POWERSHELL_COMMAND_RE.test(command)
|
|
83
|
+
? m[1]
|
|
84
|
+
: m[1].replace(/\\([\\"$`])/g, '$1')
|
|
85
|
+
: m[2] !== undefined
|
|
86
|
+
? m[2].replace(/''/g, "'")
|
|
87
|
+
: m[3];
|
|
88
|
+
return win32.isAbsolute(path) ? path : null;
|
|
89
|
+
}
|
|
90
|
+
// Without a resolved path, an entry keeps its own fields, so a working
|
|
91
|
+
// absolute path is not downgraded to a bare name, and gains any it lacks,
|
|
92
|
+
// such as `powershell`, aimed at the same collector. A PowerShell `command`
|
|
93
|
+
// (a hand-written workaround) is rewritten, because sh runs `command`.
|
|
94
|
+
// A Claude-shape {matcher, hooks} entry stays as it was, since flat fields
|
|
95
|
+
// beside `hooks` would make a hybrid.
|
|
96
|
+
function upgradeWithoutBinPath(entry, subcommand) {
|
|
97
|
+
if (Array.isArray(entry.hooks))
|
|
98
|
+
return entry;
|
|
99
|
+
const command = typeof entry.command === 'string' ? entry.command : '';
|
|
100
|
+
const fresh = collectorHookCommand(absoluteCollectorPath(command), subcommand);
|
|
101
|
+
return POWERSHELL_COMMAND_RE.test(command) ? { ...entry, ...fresh } : { ...fresh, ...entry };
|
|
102
|
+
}
|
|
103
|
+
export function generateCopilotHooksFile(binPath) {
|
|
104
|
+
const collectorPath = binPath ? siblingBinPath(binPath, COLLECTOR_COMMAND) : null;
|
|
105
|
+
const hookCommand = (subcommand) => collectorHookCommand(collectorPath, subcommand);
|
|
53
106
|
// Flat shape per GitHub's own Copilot hooks reference — each PreToolUse/
|
|
54
107
|
// PostToolUse array entry is a command hook directly ({type, command}),
|
|
55
108
|
// unlike Claude Code's settings.json which nests it one level deeper under
|
|
@@ -62,8 +115,8 @@ export function generateCopilotHooksFile(binPath) {
|
|
|
62
115
|
return {
|
|
63
116
|
version: 1,
|
|
64
117
|
hooks: {
|
|
65
|
-
PreToolUse: [
|
|
66
|
-
PostToolUse: [
|
|
118
|
+
PreToolUse: [hookCommand(HOOK_SUBCOMMANDS.PreToolUse)],
|
|
119
|
+
PostToolUse: [hookCommand(HOOK_SUBCOMMANDS.PostToolUse)],
|
|
67
120
|
},
|
|
68
121
|
};
|
|
69
122
|
}
|
|
@@ -75,7 +128,7 @@ export function generateCopilotHooksFile(binPath) {
|
|
|
75
128
|
// not the hooks file's per-event NR tagging, which is controlled entirely by
|
|
76
129
|
// generateCopilotHooksFile's embedded NEW_RELIC_AI_PLATFORM=copilot above.
|
|
77
130
|
export function generateVsCodeMcpEntry(binPath, creds) {
|
|
78
|
-
const command = binPath ?
|
|
131
|
+
const command = binPath ? siblingBinPath(binPath, MCP_SERVER_COMMAND) : MCP_SERVER_COMMAND;
|
|
79
132
|
const env = { MCP_CLIENT: 'copilot' };
|
|
80
133
|
if (creds?.licenseKey)
|
|
81
134
|
env.NEW_RELIC_LICENSE_KEY = creds.licenseKey;
|
|
@@ -155,22 +208,25 @@ export function mergeCopilotHooksFile(existing, binPath) {
|
|
|
155
208
|
? { ...result.hooks }
|
|
156
209
|
: {};
|
|
157
210
|
for (const hookType of ['PreToolUse', 'PostToolUse']) {
|
|
158
|
-
const existingArr = Array.isArray(hooks[hookType]) ?
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
211
|
+
const existingArr = Array.isArray(hooks[hookType]) ? hooks[hookType] : [];
|
|
212
|
+
const first = existingArr.findIndex(entryContainsNrObserve);
|
|
213
|
+
// Preflight's entries collapse to the first, in place, since hook order
|
|
214
|
+
// can matter. A resolved path rewrites it outright, upgrading a bare-name
|
|
215
|
+
// or outdated path (matches mergeSettings's behavior for Claude).
|
|
216
|
+
hooks[hookType] =
|
|
217
|
+
first === -1
|
|
218
|
+
? [...existingArr, ...hookEntries[hookType]]
|
|
219
|
+
: existingArr.flatMap((entry, i) => {
|
|
220
|
+
if (!entryContainsNrObserve(entry))
|
|
221
|
+
return [entry];
|
|
222
|
+
if (i !== first)
|
|
223
|
+
return [];
|
|
224
|
+
if (binPath)
|
|
225
|
+
return hookEntries[hookType];
|
|
226
|
+
return [
|
|
227
|
+
upgradeWithoutBinPath(entry, HOOK_SUBCOMMANDS[hookType]),
|
|
228
|
+
];
|
|
229
|
+
});
|
|
174
230
|
}
|
|
175
231
|
result.hooks = hooks;
|
|
176
232
|
return result;
|