vibefast-cli 0.7.7 → 0.7.10

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.
@@ -376,164 +376,197 @@ async function installFeature(feature, options, paths) {
376
376
  process.exit(1);
377
377
  }
378
378
  }
379
- // Download and extract (or use bundled zip)
380
- if (!zipPath) {
381
- const result = await withSpinner('Downloading and extracting recipe...', async () => {
382
- const zip = response.zipData
383
- ? await downloadZip(response.zipData, true)
384
- : await downloadZip(response.signedUrl);
385
- const dir = join(tmpdir(), 'vibefast', randomUUID());
386
- await extractZipSafe(zip, dir);
387
- return { zipPath: zip, extractDir: dir };
388
- }, {
389
- successText: '✓ Recipe downloaded',
390
- });
391
- zipPath = result.zipPath;
392
- extractDir = result.extractDir;
393
- }
394
- else {
395
- // Bundled zip path - extract to temp location
396
- extractDir = join(tmpdir(), 'vibefast', randomUUID());
397
- await extractZipSafe(zipPath, extractDir);
398
- }
399
- // Locate manifest (some archives may nest recipe.json)
400
- const findManifest = async (dir) => {
401
- const entries = await import('fs/promises').then((m) => m.readdir(dir, { withFileTypes: true }));
402
- for (const entry of entries) {
403
- const full = join(dir, entry.name);
404
- if (entry.isFile() && entry.name === 'recipe.json')
405
- return full;
406
- if (entry.isDirectory()) {
407
- const found = await findManifest(full);
408
- if (found)
409
- return found;
410
- }
411
- }
412
- return null;
413
- };
414
- let manifestPath = join(extractDir, 'recipe.json');
415
- if (!(await exists(manifestPath))) {
416
- const found = await findManifest(extractDir);
417
- if (!found) {
418
- throw new Error(`recipe.json not found in ${extractDir}`);
419
- }
420
- manifestPath = found;
421
- }
422
- const manifestContent = await readFileContent(manifestPath);
423
- const manifest = JSON.parse(manifestContent);
424
- if (!manifest.copy && Array.isArray(manifest.files)) {
425
- manifest.copy = manifest.files.map((file) => ({
426
- from: file.source,
427
- to: file.destination,
428
- }));
429
- }
430
- if (!Array.isArray(manifest.copy)) {
431
- throw new Error('recipe.json is missing a valid "copy" array');
432
- }
433
- const extractRoot = resolve(manifestPath, '..');
434
- const repoRoot = resolve(paths.cwd);
435
- if (manifest.target !== target) {
436
- throw new Error(`Recipe target mismatch: expected ${target}, got ${manifest.target}`);
437
- }
438
- log.info(`Installing ${manifest.name} v${manifest.version}...`);
439
- const envGroups = groupEnvVars(manifest.env, paths.cwd);
440
- let envAttention = [];
441
- // Copy files with interactive confirmation
442
- const copiedFiles = [];
443
- const allConflicts = [];
444
- const allSkipped = [];
445
- for (const copySpec of manifest.copy) {
446
- const srcPath = ensureWithinBase(extractRoot, resolve(extractRoot, copySpec.from), `Recipe file ${copySpec.from}`);
447
- const destPath = ensureWithinBase(repoRoot, resolve(repoRoot, copySpec.to), `Destination ${copySpec.to}`);
448
- log.info(`Copying ${copySpec.from} → ${copySpec.to}`);
449
- const result = await copyTree(srcPath, destPath, {
450
- dryRun: options.dryRun,
451
- force: options.force,
452
- interactive: !options.force && !options.dryRun && !options.yes,
453
- });
454
- copiedFiles.push(...result.files);
455
- allConflicts.push(...result.conflicts);
456
- allSkipped.push(...result.skipped);
457
- }
458
- // Show conflict warnings in dry-run mode
459
- if (options.dryRun && allConflicts.length > 0) {
460
- log.plain('');
461
- log.warn(`⚠ ${allConflicts.length} file(s) will be overwritten:`);
462
- allConflicts.slice(0, 5).forEach(f => {
463
- const relativePath = f.replace(paths.cwd + '/', '');
464
- log.plain(` • ${relativePath}`);
465
- });
466
- if (allConflicts.length > 5) {
467
- log.plain(` ... and ${allConflicts.length - 5} more`);
468
- }
469
- log.warn('⚠ Make sure you have committed your changes to Git!');
470
- log.plain('');
471
- }
472
- // Show skipped files
473
- if (allSkipped.length > 0) {
474
- log.info(`ℹ Skipped ${allSkipped.length} file(s) (you chose not to overwrite)`);
475
- }
476
- // Add watermark if provided
477
- if (response.watermark && !options.dryRun) {
478
- const { writeFileContent, readFileContent } = await import('../core/fsx.js');
479
- for (const file of copiedFiles) {
480
- if (file.endsWith('.ts') || file.endsWith('.tsx') || file.endsWith('.js') || file.endsWith('.jsx')) {
481
- const content = await readFileContent(file);
482
- const watermarked = `// vibefast license: ${response.watermark}\n${content}`;
483
- await writeFileContent(file, watermarked, { force: true });
379
+ const fallbackZip = await getBundledRecipeZipPath(feature);
380
+ let attemptedFallback = false;
381
+ let installedManifest = null;
382
+ let installedEnvGroups = [];
383
+ let installedEnvAttention = [];
384
+ let installedCopiedFiles = [];
385
+ let installedNavInserted = false;
386
+ let installedNavHref;
387
+ let installedNavLabel;
388
+ // Everything below runs inside a retry loop so we can fall back to bundled recipes
389
+ retry_install: while (true) {
390
+ try {
391
+ // Download and extract (or use bundled zip)
392
+ if (!zipPath) {
393
+ const result = await withSpinner('Downloading and extracting recipe...', async () => {
394
+ const zip = response.zipData
395
+ ? await downloadZip(response.zipData, true)
396
+ : await downloadZip(response.signedUrl);
397
+ const dir = join(tmpdir(), 'vibefast', randomUUID());
398
+ await extractZipSafe(zip, dir);
399
+ return { zipPath: zip, extractDir: dir };
400
+ }, {
401
+ successText: '✓ Recipe downloaded',
402
+ });
403
+ zipPath = result.zipPath;
404
+ extractDir = result.extractDir;
484
405
  }
406
+ else {
407
+ // Bundled zip path - extract to temp location
408
+ extractDir = join(tmpdir(), 'vibefast', randomUUID());
409
+ await extractZipSafe(zipPath, extractDir);
410
+ }
411
+ // Locate manifest (some archives may nest recipe.json)
412
+ const findManifest = async (dir) => {
413
+ const entries = await import('fs/promises').then((m) => m.readdir(dir, { withFileTypes: true }));
414
+ for (const entry of entries) {
415
+ const full = join(dir, entry.name);
416
+ if (entry.isFile() && entry.name === 'recipe.json')
417
+ return full;
418
+ if (entry.isDirectory()) {
419
+ const found = await findManifest(full);
420
+ if (found)
421
+ return found;
422
+ }
423
+ }
424
+ return null;
425
+ };
426
+ let manifestPath = join(extractDir, 'recipe.json');
427
+ if (!(await exists(manifestPath))) {
428
+ const found = await findManifest(extractDir);
429
+ if (!found) {
430
+ throw new Error(`recipe.json not found in ${extractDir}`);
431
+ }
432
+ manifestPath = found;
433
+ }
434
+ const manifestContent = await readFileContent(manifestPath);
435
+ const manifest = JSON.parse(manifestContent);
436
+ if (!manifest.copy && Array.isArray(manifest.files)) {
437
+ manifest.copy = manifest.files.map((file) => ({
438
+ from: file.source,
439
+ to: file.destination,
440
+ }));
441
+ }
442
+ if (!Array.isArray(manifest.copy)) {
443
+ throw new Error('recipe.json is missing a valid "copy" array');
444
+ }
445
+ const extractRoot = resolve(manifestPath, '..');
446
+ const repoRoot = resolve(paths.cwd);
447
+ if (manifest.target !== target) {
448
+ throw new Error(`Recipe target mismatch: expected ${target}, got ${manifest.target}`);
449
+ }
450
+ log.info(`Installing ${manifest.name} v${manifest.version}...`);
451
+ const envGroups = groupEnvVars(manifest.env, paths.cwd);
452
+ let envAttention = [];
453
+ // Copy files with interactive confirmation
454
+ const copiedFiles = [];
455
+ const allConflicts = [];
456
+ const allSkipped = [];
457
+ for (const copySpec of manifest.copy) {
458
+ const srcPath = ensureWithinBase(extractRoot, resolve(extractRoot, copySpec.from), `Recipe file ${copySpec.from}`);
459
+ const destPath = ensureWithinBase(repoRoot, resolve(repoRoot, copySpec.to), `Destination ${copySpec.to}`);
460
+ log.info(`Copying ${copySpec.from} → ${copySpec.to}`);
461
+ const result = await copyTree(srcPath, destPath, {
462
+ dryRun: options.dryRun,
463
+ force: options.force,
464
+ interactive: !options.force && !options.dryRun && !options.yes,
465
+ });
466
+ copiedFiles.push(...result.files);
467
+ allConflicts.push(...result.conflicts);
468
+ allSkipped.push(...result.skipped);
469
+ }
470
+ // Show conflict warnings in dry-run mode
471
+ if (options.dryRun && allConflicts.length > 0) {
472
+ log.plain('');
473
+ log.warn(`⚠ ${allConflicts.length} file(s) will be overwritten:`);
474
+ allConflicts.slice(0, 5).forEach(f => {
475
+ const relativePath = f.replace(paths.cwd + '/', '');
476
+ log.plain(` • ${relativePath}`);
477
+ });
478
+ if (allConflicts.length > 5) {
479
+ log.plain(` ... and ${allConflicts.length - 5} more`);
480
+ }
481
+ log.warn('⚠ Make sure you have committed your changes to Git!');
482
+ log.plain('');
483
+ }
484
+ // Show skipped files
485
+ if (allSkipped.length > 0) {
486
+ log.info(`ℹ Skipped ${allSkipped.length} file(s) (you chose not to overwrite)`);
487
+ }
488
+ // Add watermark if provided
489
+ if (response.watermark && !options.dryRun) {
490
+ const { writeFileContent, readFileContent } = await import('../core/fsx.js');
491
+ for (const file of copiedFiles) {
492
+ if (file.endsWith('.ts') || file.endsWith('.tsx') || file.endsWith('.js') || file.endsWith('.jsx')) {
493
+ const content = await readFileContent(file);
494
+ const watermarked = `// vibefast license: ${response.watermark}\n${content}`;
495
+ await writeFileContent(file, watermarked, { force: true });
496
+ }
497
+ }
498
+ }
499
+ // Insert nav link
500
+ let navInserted = false;
501
+ let navHref;
502
+ let navLabel;
503
+ if (manifest.nav) {
504
+ log.info('Adding navigation link...');
505
+ const navFile = target === 'native' ? paths.nativeNavFile : paths.webNavFile;
506
+ const insertFn = target === 'native' ? insertNavLinkNative : insertNavLinkWeb;
507
+ navHref = manifest.nav.href;
508
+ navLabel = manifest.nav.label;
509
+ navInserted = await insertFn(navFile, manifest.nav, { dryRun: options.dryRun });
510
+ if (navInserted) {
511
+ log.success('Navigation link added');
512
+ }
513
+ else {
514
+ log.info('Navigation link already exists');
515
+ }
516
+ }
517
+ // Hash files and update journal
518
+ if (!options.dryRun) {
519
+ log.info('Computing file hashes...');
520
+ const fileHashes = await hashFiles(copiedFiles, { showProgress: copiedFiles.length > 20 });
521
+ const fileEntries = Array.from(fileHashes.entries()).map(([path, hash]) => ({
522
+ path,
523
+ hash,
524
+ }));
525
+ await addEntry(paths.journalFile, {
526
+ feature: manifest.name,
527
+ target: manifest.target,
528
+ files: fileEntries,
529
+ insertedNav: navInserted,
530
+ navHref,
531
+ navLabel,
532
+ ts: Date.now(),
533
+ manifest: {
534
+ version: manifest.version,
535
+ manualSteps: manifest.manualSteps,
536
+ env: manifest.env,
537
+ },
538
+ });
539
+ }
540
+ // capture results for post steps outside the loop
541
+ installedManifest = manifest;
542
+ installedEnvGroups = envGroups;
543
+ installedEnvAttention = envAttention;
544
+ installedCopiedFiles = copiedFiles;
545
+ installedNavInserted = navInserted;
546
+ installedNavHref = navHref;
547
+ installedNavLabel = navLabel;
548
+ log.success(`${manifest.name} installed successfully!`);
549
+ log.info(`Files added: ${copiedFiles.length}`);
550
+ break retry_install;
551
+ }
552
+ catch (err) {
553
+ if (!attemptedFallback && fallbackZip) {
554
+ attemptedFallback = true;
555
+ zipPath = fallbackZip;
556
+ extractDir = null;
557
+ log.warn(`⚠ Encountered error "${err.message}". Retrying with bundled recipe...`);
558
+ continue retry_install;
559
+ }
560
+ throw err;
485
561
  }
486
562
  }
487
- // Insert nav link
488
- let navInserted = false;
489
- let navHref;
490
- let navLabel;
491
- if (manifest.nav) {
492
- log.info('Adding navigation link...');
493
- const navFile = target === 'native' ? paths.nativeNavFile : paths.webNavFile;
494
- const insertFn = target === 'native' ? insertNavLinkNative : insertNavLinkWeb;
495
- navHref = manifest.nav.href;
496
- navLabel = manifest.nav.label;
497
- navInserted = await insertFn(navFile, manifest.nav, { dryRun: options.dryRun });
498
- if (navInserted) {
499
- log.success('Navigation link added');
500
- }
501
- else {
502
- log.info('Navigation link already exists');
503
- }
504
- }
505
- // Hash files and update journal
506
- if (!options.dryRun) {
507
- log.info('Computing file hashes...');
508
- const fileHashes = await hashFiles(copiedFiles, { showProgress: copiedFiles.length > 20 });
509
- const fileEntries = Array.from(fileHashes.entries()).map(([path, hash]) => ({
510
- path,
511
- hash,
512
- }));
513
- await addEntry(paths.journalFile, {
514
- feature: manifest.name,
515
- target: manifest.target,
516
- files: fileEntries,
517
- insertedNav: navInserted,
518
- navHref,
519
- navLabel,
520
- ts: Date.now(),
521
- manifest: {
522
- version: manifest.version,
523
- manualSteps: manifest.manualSteps,
524
- env: manifest.env,
525
- },
526
- });
527
- }
528
- log.success(`${manifest.name} installed successfully!`);
529
- log.info(`Files added: ${copiedFiles.length}`);
530
563
  // Auto-install dependencies
531
- if (manifest.dependencies && !options.dryRun) {
564
+ if (installedManifest && installedManifest.dependencies && !options.dryRun) {
532
565
  log.plain('');
533
566
  log.warn('⚠ This feature requires additional packages');
534
567
  log.plain('');
535
- if (manifest.target === 'native' && manifest.dependencies.expo) {
536
- const packages = manifest.dependencies.expo;
568
+ if (installedManifest.target === 'native' && installedManifest.dependencies.expo) {
569
+ const packages = installedManifest.dependencies.expo;
537
570
  log.info('📦 Required packages:');
538
571
  packages.forEach(pkg => {
539
572
  log.plain(` • ${pkg}`);
@@ -558,8 +591,8 @@ async function installFeature(feature, options, paths) {
558
591
  log.info('💡 Expo will automatically pick compatible versions');
559
592
  }
560
593
  }
561
- else if (manifest.target === 'web' && manifest.dependencies.npm) {
562
- const packages = manifest.dependencies.npm;
594
+ else if (installedManifest.target === 'web' && installedManifest.dependencies.npm) {
595
+ const packages = installedManifest.dependencies.npm;
563
596
  log.info('📦 Required packages:');
564
597
  packages.forEach(pkg => {
565
598
  log.plain(` • ${pkg}`);
@@ -594,7 +627,7 @@ async function installFeature(feature, options, paths) {
594
627
  log.plain('');
595
628
  }
596
629
  // Auto-setup Vosk model for wake-word
597
- if (manifest.name === 'wake-word' && !options.dryRun) {
630
+ if (installedManifest?.name === 'wake-word' && !options.dryRun) {
598
631
  const { setupVoskModel } = await import('../core/vosk.js');
599
632
  log.plain('');
600
633
  await withSpinner('Setting up Vosk speech model...', async () => {
@@ -603,17 +636,18 @@ async function installFeature(feature, options, paths) {
603
636
  successText: '✓ Vosk model ready',
604
637
  });
605
638
  }
606
- if (manifest.configuration?.env) {
607
- await applyEnvConfiguration(paths, manifest.configuration.env, options);
639
+ if (installedManifest?.configuration?.env) {
640
+ await applyEnvConfiguration(paths, installedManifest.configuration.env, options);
608
641
  }
609
642
  // Show manual steps with smart detection
610
- if (manifest.manualSteps && !options.dryRun) {
643
+ if (installedManifest?.manualSteps && !options.dryRun) {
611
644
  const { readFileContent, exists } = await import('../core/fsx.js');
612
645
  const { join } = await import('path');
646
+ const normalize = (text) => text.replace(/\\n/g, '\n');
613
647
  // Check which steps might already be done
614
648
  const pendingSteps = [];
615
649
  const completedSteps = [];
616
- for (const step of manifest.manualSteps) {
650
+ for (const step of installedManifest.manualSteps) {
617
651
  let alreadyDone = false;
618
652
  // Check if file modification is already done
619
653
  if (step.file && step.content) {
@@ -637,11 +671,9 @@ async function installFeature(feature, options, paths) {
637
671
  log.plain('');
638
672
  log.warn('⚠ MANUAL STEPS REQUIRED:');
639
673
  log.plain('');
640
- log.plain('This feature requires some manual configuration:');
641
- log.plain('');
642
674
  pendingSteps.forEach((step, index) => {
643
675
  log.plain(`Step ${index + 1}: ${step.title}`);
644
- log.plain(` ${step.description}`);
676
+ log.plain(` ${normalize(step.description || '')}`);
645
677
  if (step.link) {
646
678
  log.plain(` 🔗 ${step.link}`);
647
679
  }
@@ -649,11 +681,15 @@ async function installFeature(feature, options, paths) {
649
681
  log.plain(` 📝 File: ${step.file}`);
650
682
  }
651
683
  if (step.content) {
652
- log.plain(` Add: ${step.content}`);
684
+ log.plain(' Add:');
685
+ log.plain(normalize(step.content)
686
+ .split('\n')
687
+ .map(line => ` ${line}`)
688
+ .join('\n'));
653
689
  }
654
690
  log.plain('');
655
691
  });
656
- log.info(`💡 Run 'vf checklist ${manifest.name}' to see these steps again`);
692
+ log.info(`💡 Run 'vf checklist ${installedManifest.name}' to see these steps again`);
657
693
  log.plain('');
658
694
  }
659
695
  if (completedSteps.length > 0) {
@@ -661,8 +697,8 @@ async function installFeature(feature, options, paths) {
661
697
  log.plain('');
662
698
  }
663
699
  }
664
- if (envGroups.length > 0) {
665
- const additions = await ensureEnvVarsForGroups(envGroups, options);
700
+ if (installedEnvGroups.length > 0) {
701
+ const additions = await ensureEnvVarsForGroups(installedEnvGroups, options);
666
702
  if (additions.length > 0) {
667
703
  log.plain('');
668
704
  const suffix = options.dryRun ? ' (dry run)' : '';
@@ -673,24 +709,24 @@ async function installFeature(feature, options, paths) {
673
709
  log.info('Update those files with your real API keys or secrets.');
674
710
  log.plain('');
675
711
  }
676
- envAttention = await reportEnvStatus(envGroups, options);
712
+ installedEnvAttention = await reportEnvStatus(installedEnvGroups, options);
677
713
  }
678
714
  // Post-install message
679
- if (manifest.postInstall?.message && !options.dryRun) {
715
+ if (installedManifest?.postInstall?.message && !options.dryRun) {
680
716
  log.plain('');
681
- log.info(manifest.postInstall.message);
717
+ log.info(installedManifest.postInstall.message);
682
718
  }
683
719
  // Final summary of what needs user attention
684
720
  if (!options.dryRun) {
685
721
  const needsAttention = [];
686
- if (envGroups.length > 0 && envAttention.length > 0) {
687
- needsAttention.push(...envAttention);
722
+ if (installedEnvGroups.length > 0 && installedEnvAttention.length > 0) {
723
+ needsAttention.push(...installedEnvAttention);
688
724
  }
689
725
  // Check manual steps
690
- if (manifest.manualSteps) {
726
+ if (installedManifest?.manualSteps) {
691
727
  const { readFileContent, exists } = await import('../core/fsx.js');
692
728
  const { join } = await import('path');
693
- for (const step of manifest.manualSteps) {
729
+ for (const step of installedManifest.manualSteps) {
694
730
  let alreadyDone = false;
695
731
  if (step.file && step.content) {
696
732
  const filePath = join(paths.cwd, step.file);
@@ -719,7 +755,7 @@ async function installFeature(feature, options, paths) {
719
755
  log.plain(` ${index + 1}. ${item}`);
720
756
  });
721
757
  log.plain('');
722
- log.info(`💡 Run 'vf checklist ${manifest.name}' for detailed instructions`);
758
+ log.info(`💡 Run 'vf checklist ${installedManifest?.name ?? feature}' for detailed instructions`);
723
759
  log.plain('');
724
760
  }
725
761
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAa,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,SAAS,EAA6B,MAAM,gBAAgB,CAAC;AAClF,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAmDpC,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,uDAAuD,CAAC;KACpE,QAAQ,CAAC,WAAW,EAAE,4EAA4E,CAAC;KACnG,MAAM,CAAC,mBAAmB,EAAE,iCAAiC,CAAC;KAC9D,MAAM,CAAC,WAAW,EAAE,kCAAkC,CAAC;KACvD,MAAM,CAAC,SAAS,EAAE,yCAAyC,CAAC;KAC5D,MAAM,CAAC,OAAO,EAAE,4CAA4C,CAAC;KAC7D,MAAM,CAAC,uBAAuB,EAAE,+CAA+C,CAAC;KAChF,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACjB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACd,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtB,GAAG,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAC5D,GAAG,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;IAChE,GAAG,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAC3D,GAAG,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAC3D,GAAG,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;AAC1D,CAAC,CAAC;KACD,MAAM,CAAC,KAAK,EAAE,OAA2B,EAAE,OAAO,EAAE,EAAE;IACrD,IAAI,CAAC;QACH,gDAAgD;QAChD,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAElC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;QAEzB,2CAA2C;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC5G,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;YAEtG,gCAAgC;YAChC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;YAEnC,aAAa;YACb,KAAK,CAAC,+BAA+B,CAAC,CAAC;YAEvC,0BAA0B;YAC1B,MAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC/C,KAAK,EAAE,GAAG;gBACV,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC;gBAC1B,WAAW,EAAE,UAAU,cAAc,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;aAC3D,CAAC,CAAC,CAAC;YAEJ,MAAM,gBAAgB,GAAG,MAAM,iBAAiB,CAAC,6BAA6B,EAAE,eAAe,CAAC,CAAC;YAEjG,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,KAAK,CAAC,WAAW,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,kCAAkC;YAClC,MAAM,OAAO,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxC,KAAK,EAAE,CAAC,CAAC,IAAI;gBACb,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE;gBAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC,CAAC;YAEJ,MAAM,eAAe,GAAG,MAAM,sBAAsB,CAClD,UAAU,cAAc,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,UAAU,EAClE,aAAa,CACd,CAAC;YAEF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YAED,+BAA+B;YAC/B,KAAK,MAAM,UAAU,IAAI,eAAe,EAAE,CAAC;gBACzC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC1B,MAAM,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACnD,CAAC;YAED,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QAED,sCAAsC;QACtC,MAAM,EAAE,aAAa,EAAE,oBAAoB,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACnG,MAAM,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;QAEnC,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAc,CAAC,EAAE,CAAC;YACxC,KAAK,CAAC,MAAM,cAAc,CAAC,OAAc,CAAC,EAAE,CAAC,CAAC;YAE9C,8BAA8B;YAC9B,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAc,CAAC,CAAC;YACrD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxC,KAAK,EAAE,CAAC,CAAC,IAAI;gBACb,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE;gBAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC,CAAC;YAEJ,MAAM,eAAe,GAAG,MAAM,sBAAsB,CAClD,UAAU,cAAc,CAAC,OAAc,CAAC,CAAC,WAAW,EAAE,UAAU,EAChE,aAAa,CACd,CAAC;YAEF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YAED,+BAA+B;YAC/B,KAAK,MAAM,UAAU,IAAI,eAAe,EAAE,CAAC;gBACzC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC1B,MAAM,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACnD,CAAC;YAED,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QAED,yBAAyB;QACzB,MAAM,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,GAAG,CAAC,KAAK,CAAC,wBAAwB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACnD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAChB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,KAAK,UAAU,cAAc,CAAC,OAAe,EAAE,OAAY,EAAE,KAAU;IACnE,IAAI,CAAC;QACH,IAAI,MAAM,GAAG,OAAO,CAAC,MAAsC,CAAC;QAE5D,0CAA0C;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/C,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,GAAG,QAAQ,CAAC;gBAClB,GAAG,CAAC,IAAI,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBACvD,GAAG,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;gBAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAQD,SAAS,YAAY,CAAC,GAAsC,EAAE,GAAW;YACvE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC;gBACjB,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;YAE3C,KAAK,MAAM,MAAM,IAAI,GAAG,EAAE,CAAC;gBACzB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,IAAI,wBAAwB,CAAC;gBAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;gBAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAE1C,IAAI,QAAQ,EAAE,CAAC;oBACb,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE;wBACvB,IAAI,EAAE,YAAY;wBAClB,YAAY;wBACZ,IAAI,EAAE,CAAC,MAAM,CAAC;qBACf,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9B,CAAC;QAED,KAAK,UAAU,sBAAsB,CACnC,SAAqB,EACrB,OAAY;YAEZ,MAAM,OAAO,GAAqD,EAAE,CAAC;YAErE,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAiB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACnD,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE;oBAC3C,OAAO,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS;iBACtE,CAAC,CAAC,CAAC;gBAEJ,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAE9E,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,OAAO,CAAC,IAAI,CAAC;wBACX,YAAY,EAAE,KAAK,CAAC,YAAY;wBAChC,KAAK,EAAE,MAAM,CAAC,KAAK;qBACpB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,UAAU,eAAe,CAAC,SAAqB,EAAE,OAAY;YAChE,MAAM,SAAS,GAAa,EAAE,CAAC;YAE/B,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;gBAC9B,MAAM,OAAO,GAAsB,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAa,EAAE,CAAC;gBAE9B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBAChC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;oBACvD,IAAI,MAAM,EAAE,CAAC;wBACX,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC5B,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACvB,CAAC;gBACH,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,qCAAqC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;oBACtE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAEd,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;wBACvB,GAAG,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;wBAC7B,GAAG,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;wBACvC,GAAG,CAAC,KAAK,CAAC,gBAAgB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC5C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;4BAChB,GAAG,CAAC,KAAK,CAAC,eAAe,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC1C,CAAC;wBACD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;wBACd,SAAS,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,GAAG,OAAO,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;oBAC/D,CAAC,CAAC,CAAC;oBAEH,GAAG,CAAC,IAAI,CAAC,gBAAgB,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;oBAC/C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC;gBAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,GAAG,CAAC,OAAO,CAAC,yBAAyB,KAAK,CAAC,YAAY,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACpF,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,KAAK,UAAU,qBAAqB,CAAC,KAAkC,EAAE,SAAoB,EAAE,OAAY;YACzG,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAE5D,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBAC7B,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;YAElD,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;gBAChC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBACxH,IAAI,QAAQ,EAAE,CAAC;oBACb,GAAG,CAAC,IAAI,CAAC,2BAA2B,MAAM,GAAG,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;YAED,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CACtC,OAAO,EACP,uBAAuB,EACvB,qBAAqB,EACrB,SAAS,CAAC,MAAM,CAAC,MAAM,EACvB,OAAO,CACR,CAAC;gBACF,IAAI,QAAQ,EAAE,CAAC;oBACb,GAAG,CAAC,IAAI,CAAC,2CAA2C,MAAM,GAAG,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;YAED,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBAClC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CACtC,OAAO,EACP,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,CAAC,MAAM,CAAC,GAAG,EACpB,OAAO,CACR,CAAC;gBACF,IAAI,QAAQ,EAAE,CAAC;oBACb,GAAG,CAAC,IAAI,CAAC,oCAAoC,MAAM,GAAG,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;YAED,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;gBACxC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CACtC,OAAO,EACP,2BAA2B,EAC3B,yBAAyB,EACzB,SAAS,CAAC,SAAS,CAAC,MAAM,EAC1B,OAAO,CACR,CAAC;gBACF,IAAI,QAAQ,EAAE,CAAC;oBACb,GAAG,CAAC,IAAI,CAAC,mCAAmC,MAAM,GAAG,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;YAED,IAAI,SAAS,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CACtC,OAAO,EACP,wBAAwB,EACxB,sBAAsB,EACtB,SAAS,CAAC,SAAS,CAAC,GAAG,EACvB,OAAO,CACR,CAAC;gBACF,IAAI,QAAQ,EAAE,CAAC;oBACb,GAAG,CAAC,IAAI,CAAC,oCAAoC,MAAM,GAAG,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;QACH,CAAC;QAEK,iBAAiB;QACjB,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5D,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,aAAa;QACb,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,GAAG,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,6BAA6B;QAC7B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACpE,IAAI,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YAC/C,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,6BAA6B,MAAM,EAAE,CAAC,CAAC;YAC1D,MAAM,eAAe,GAAG,MAAM,WAAW,CACvC,gDAAgD,EAChD,KAAK,CACN,CAAC;YACF,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,GAAG,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;gBAChE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YACD,iEAAiE;YACjE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;QACvB,CAAC;aAAM,IAAI,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACtC,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,6BAA6B,MAAM,EAAE,CAAC,CAAC;YAC1D,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACrC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,OAAO;QACT,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,GAAG,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QAChD,CAAC;QAED,eAAe;QACf,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAChC,YAAY,OAAO,QAAQ,MAAM,KAAK,EACtC,KAAK,IAAI,EAAE;YACT,OAAO,MAAM,WAAW,CAAC;gBACvB,KAAK;gBACL,MAAM;gBACN,OAAO;gBACP,MAAM;gBACN,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE;aACxD,CAAC,CAAC;QACL,CAAC,EACD;YACE,WAAW,EAAE,kBAAkB;SAChC,CACF,CAAC;QAEF,IAAI,OAAO,GAAkB,IAAI,CAAC;QAClC,IAAI,UAAU,GAAkB,IAAI,CAAC;QAErC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/D,4CAA4C;YAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,eAAe,CAAC;YAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAExD,IAAI,QAAQ,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CAAC,0BAA0B,KAAK,kCAAkC,CAAC,CAAC;gBAC5E,OAAO,GAAG,QAAQ,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAEd,+BAA+B;gBAC/B,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBACtF,GAAG,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;oBACrC,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;oBACvC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBACzB,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBACzB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACzB,GAAG,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;oBACpE,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;oBACjC,GAAG,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;oBAC3D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;gBACtD,CAAC;qBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpG,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;oBACpC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;oBAC5E,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACzB,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAClC,GAAG,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;oBACnF,GAAG,CAAC,KAAK,CAAC,yBAAyB,GAAG,OAAO,CAAC,CAAC;oBAC/C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,IAAI,OAAO,EAAE,CAAC;wBACZ,GAAG,CAAC,KAAK,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;wBACjC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAChB,CAAC;gBACH,CAAC;qBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBAClE,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;oBAC7B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;oBAClD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBAC1B,GAAG,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;oBAC1C,GAAG,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;oBACnC,GAAG,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;oBACnC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,IAAI,OAAO,EAAE,CAAC;wBACZ,GAAG,CAAC,KAAK,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;wBACjC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAChB,CAAC;gBACH,CAAC;qBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChE,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;oBACjC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,gBAAgB,OAAO,4CAA4C,MAAM,EAAE,CAAC,CAAC;oBACtF,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;oBACvC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oBACvB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACN,gBAAgB;oBAChB,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;oBACxB,IAAI,OAAO,EAAE,CAAC;wBACZ,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;wBACd,GAAG,CAAC,KAAK,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;oBACnC,CAAC;oBACD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;gBACrE,CAAC;gBAED,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,iBAAiB,GAAoF,IAAI,CAAC;QAC9G,IAAI,kBAAkB,GAAe,EAAE,CAAC;QACxC,IAAI,qBAAqB,GAAa,EAAE,CAAC;QACzC,IAAI,oBAAoB,GAAa,EAAE,CAAC;QACxC,IAAI,oBAAoB,GAAG,KAAK,CAAC;QACjC,IAAI,gBAAoC,CAAC;QACzC,IAAI,iBAAqC,CAAC;QAE1C,mFAAmF;QACnF,aAAa,EAAE,OAAO,IAAI,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,4CAA4C;gBAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,sCAAsC,EACtC,KAAK,IAAI,EAAE;wBACT,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO;4BAC1B,CAAC,CAAC,MAAM,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;4BAC3C,CAAC,CAAC,MAAM,WAAW,CAAC,QAAQ,CAAC,SAAU,CAAC,CAAC;wBAE3C,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;wBACrD,MAAM,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;wBAE/B,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;oBAC3C,CAAC,EACD;wBACE,WAAW,EAAE,qBAAqB;qBACnC,CACF,CAAC;oBACF,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;oBACzB,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;gBACjC,CAAC;qBAAM,CAAC;oBACN,8CAA8C;oBAC9C,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;oBACtD,MAAM,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBAC5C,CAAC;gBAED,uDAAuD;gBACvD,MAAM,YAAY,GAAG,KAAK,EAAE,GAAW,EAA0B,EAAE;oBACjE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACrD,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CACxC,CAAC;oBACF,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;wBAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;wBACnC,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;4BAAE,OAAO,IAAI,CAAC;wBAChE,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;4BACxB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;4BACvC,IAAI,KAAK;gCAAE,OAAO,KAAK,CAAC;wBAC1B,CAAC;oBACH,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;gBAEF,IAAI,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;gBACnD,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;oBAClC,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;wBACX,MAAM,IAAI,KAAK,CAAC,4BAA4B,UAAU,EAAE,CAAC,CAAC;oBAC5D,CAAC;oBACD,YAAY,GAAG,KAAK,CAAC;gBACvB,CAAC;gBAED,MAAM,eAAe,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;gBAC5D,MAAM,QAAQ,GAA2E,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBACrH,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpD,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC5C,IAAI,EAAE,IAAI,CAAC,MAAM;wBACjB,EAAE,EAAE,IAAI,CAAC,WAAW;qBACrB,CAAC,CAAC,CAAC;gBACN,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;gBACjE,CAAC;gBACD,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;gBAChD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpC,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC/B,MAAM,IAAI,KAAK,CACb,oCAAoC,MAAM,SAAS,QAAQ,CAAC,MAAM,EAAE,CACrE,CAAC;gBACJ,CAAC;gBAED,GAAG,CAAC,IAAI,CAAC,cAAc,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,OAAO,KAAK,CAAC,CAAC;gBAChE,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;gBACxD,IAAI,YAAY,GAAa,EAAE,CAAC;gBAEhC,2CAA2C;gBAC3C,MAAM,WAAW,GAAa,EAAE,CAAC;gBACjC,MAAM,YAAY,GAAa,EAAE,CAAC;gBAClC,MAAM,UAAU,GAAa,EAAE,CAAC;gBAEhC,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACrC,MAAM,OAAO,GAAG,gBAAgB,CAC9B,WAAW,EACX,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,EACnC,eAAe,QAAQ,CAAC,IAAI,EAAE,CAC/B,CAAC;oBACF,MAAM,QAAQ,GAAG,gBAAgB,CAC/B,QAAQ,EACR,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,EAC9B,eAAe,QAAQ,CAAC,EAAE,EAAE,CAC7B,CAAC;oBAEF,GAAG,CAAC,IAAI,CAAC,WAAW,QAAQ,CAAC,IAAI,MAAM,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;oBACtD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,QAAQ,EAAE;wBAC/C,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,KAAK,EAAE,OAAO,CAAC,KAAK;wBACpB,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG;qBAC/D,CAAC,CAAC;oBAEH,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;oBAClC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;oBACvC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;gBACrC,CAAC;gBAED,yCAAyC;gBACzC,IAAI,OAAO,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,KAAK,YAAY,CAAC,MAAM,+BAA+B,CAAC,CAAC;oBAClE,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;wBACnC,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;wBACpD,GAAG,CAAC,KAAK,CAAC,OAAO,YAAY,EAAE,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;oBACH,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC5B,GAAG,CAAC,KAAK,CAAC,aAAa,YAAY,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC;oBACzD,CAAC;oBACD,GAAG,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;oBAChE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC;gBAED,qBAAqB;gBACrB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,GAAG,CAAC,IAAI,CAAC,aAAa,UAAU,CAAC,MAAM,uCAAuC,CAAC,CAAC;gBAClF,CAAC;gBAED,4BAA4B;gBAC5B,IAAI,QAAQ,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;oBAC1C,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;oBAC7E,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;wBAC/B,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;4BACnG,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;4BAC5C,MAAM,WAAW,GAAG,wBAAwB,QAAQ,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;4BAC7E,MAAM,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC7D,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,kBAAkB;gBAClB,IAAI,WAAW,GAAG,KAAK,CAAC;gBACxB,IAAI,OAA2B,CAAC;gBAChC,IAAI,QAA4B,CAAC;gBACjC,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACjB,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;oBACtC,MAAM,OAAO,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;oBAC7E,MAAM,QAAQ,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,gBAAgB,CAAC;oBAC9E,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;oBAC5B,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;oBAE9B,WAAW,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;oBAChF,IAAI,WAAW,EAAE,CAAC;wBAChB,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;oBACvC,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;oBAC7C,CAAC;gBACH,CAAC;gBAED,gCAAgC;gBAChC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;oBACpB,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;oBACrC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,WAAW,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC,CAAC;oBAE3F,MAAM,WAAW,GAAgB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;wBACvF,IAAI;wBACJ,IAAI;qBACL,CAAC,CAAC,CAAC;oBAEJ,MAAM,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE;wBAChC,OAAO,EAAE,QAAQ,CAAC,IAAI;wBACtB,MAAM,EAAE,QAAQ,CAAC,MAAM;wBACvB,KAAK,EAAE,WAAW;wBAClB,WAAW,EAAE,WAAW;wBACxB,OAAO;wBACP,QAAQ;wBACR,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;wBACd,QAAQ,EAAE;4BACR,OAAO,EAAE,QAAQ,CAAC,OAAO;4BACzB,WAAW,EAAE,QAAQ,CAAC,WAAW;4BACjC,GAAG,EAAE,QAAQ,CAAC,GAAG;yBAClB;qBACF,CAAC,CAAC;gBACL,CAAC;gBAED,kDAAkD;gBAClD,iBAAiB,GAAG,QAAQ,CAAC;gBAC7B,kBAAkB,GAAG,SAAS,CAAC;gBAC/B,qBAAqB,GAAG,YAAY,CAAC;gBACrC,oBAAoB,GAAG,WAAW,CAAC;gBACnC,oBAAoB,GAAG,WAAW,CAAC;gBACnC,gBAAgB,GAAG,OAAO,CAAC;gBAC3B,iBAAiB,GAAG,QAAQ,CAAC;gBAE7B,GAAG,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,0BAA0B,CAAC,CAAC;gBACxD,GAAG,CAAC,IAAI,CAAC,gBAAgB,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC/C,MAAM,aAAa,CAAC;YACtB,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,iBAAiB,IAAI,WAAW,EAAE,CAAC;oBACtC,iBAAiB,GAAG,IAAI,CAAC;oBACzB,OAAO,GAAG,WAAW,CAAC;oBACtB,UAAU,GAAG,IAAI,CAAC;oBAClB,GAAG,CAAC,IAAI,CAAC,wBAAwB,GAAG,CAAC,OAAO,oCAAoC,CAAC,CAAC;oBAClF,SAAS,aAAa,CAAC;gBACzB,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC3E,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YACxD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAEd,IAAI,iBAAiB,CAAC,MAAM,KAAK,QAAQ,IAAI,iBAAiB,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBACjF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC;gBAErD,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;gBAClC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBACrB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAEd,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,IAAI,MAAM,WAAW,CACpD,sDAAsD,EACtD,IAAI,CACL,CAAC;gBAEF,IAAI,aAAa,EAAE,CAAC;oBAClB,MAAM,WAAW,CACf,kCAAkC,EAClC,KAAK,IAAI,EAAE;wBACT,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;wBACnD,QAAQ,CAAC,oBAAoB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;4BACjD,GAAG,EAAE,KAAK,CAAC,GAAG;4BACd,KAAK,EAAE,SAAS;yBACjB,CAAC,CAAC;oBACL,CAAC,EACD;wBACE,WAAW,EAAE,sBAAsB;qBACpC,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;oBACnC,GAAG,CAAC,KAAK,CAAC,sBAAsB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACtD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;gBAClE,CAAC;YAEH,CAAC;iBAAM,IAAI,iBAAiB,CAAC,MAAM,KAAK,KAAK,IAAI,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;gBACpF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC;gBAEpD,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;gBAClC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBACrB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAEd,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,IAAI,MAAM,WAAW,CACpD,sDAAsD,EACtD,IAAI,CACL,CAAC;gBAEF,IAAI,aAAa,EAAE,CAAC;oBAClB,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;oBACnE,MAAM,UAAU,GAAG,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC;oBAE7D,MAAM,WAAW,CACf,4BAA4B,UAAU,KAAK,EAC3C,KAAK,IAAI,EAAE;wBACT,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;wBACnD,MAAM,UAAU,GAAG,UAAU,KAAK,KAAK;4BACrC,CAAC,CAAC,eAAe,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;4BACrC,CAAC,CAAC,GAAG,UAAU,QAAQ,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC9C,QAAQ,CAAC,UAAU,EAAE;4BACnB,GAAG,EAAE,KAAK,CAAC,GAAG;4BACd,KAAK,EAAE,SAAS;yBACjB,CAAC,CAAC;oBACL,CAAC,EACD;wBACE,WAAW,EAAE,sBAAsB;qBACpC,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;oBACnC,GAAG,CAAC,KAAK,CAAC,cAAc,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAClB,GAAG,CAAC,KAAK,CAAC,cAAc,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAClB,GAAG,CAAC,KAAK,CAAC,iBAAiB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC;YAED,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;QAED,sCAAsC;QACtC,IAAI,iBAAiB,EAAE,IAAI,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC/D,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC3D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,MAAM,WAAW,CACf,iCAAiC,EACjC,KAAK,IAAI,EAAE;gBACT,OAAO,MAAM,cAAc,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACrE,CAAC,EACD;gBACE,WAAW,EAAE,oBAAoB;aAClC,CACF,CAAC;QACJ,CAAC;QAED,IAAI,iBAAiB,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;YAC1C,MAAM,qBAAqB,CAAC,KAAK,EAAE,iBAAiB,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACnF,CAAC;QAED,yCAAyC;QACzC,IAAI,iBAAiB,EAAE,WAAW,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACtD,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;YACnE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAE/D,0CAA0C;YAC1C,MAAM,YAAY,GAAyC,EAAE,CAAC;YAC9D,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,WAAW,EAAE,CAAC;gBACjD,IAAI,WAAW,GAAG,KAAK,CAAC;gBAExB,6CAA6C;gBAC7C,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC5C,IAAI,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC3B,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;wBAChD,0DAA0D;wBAC1D,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;wBAChE,MAAM,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;wBAClE,IAAI,qBAAqB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;4BACnD,WAAW,GAAG,IAAI,CAAC;4BACnB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBAClC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBACrC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAEd,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACnC,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;oBACpD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBACd,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBACjC,CAAC;oBACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBACd,GAAG,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBACvC,CAAC;oBACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;wBACjB,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;wBACpB,GAAG,CAAC,KAAK,CACP,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;6BACpB,KAAK,CAAC,IAAI,CAAC;6BACX,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC;6BAC1B,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;oBACJ,CAAC;oBACD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;gBAEH,GAAG,CAAC,IAAI,CAAC,wBAAwB,iBAAiB,CAAC,IAAI,4BAA4B,CAAC,CAAC;gBACrF,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;YAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,GAAG,CAAC,OAAO,CAAC,yBAAyB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAED,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;YAE5E,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClD,GAAG,CAAC,IAAI,CAAC,4CAA4C,MAAM,GAAG,CAAC,CAAC;gBAChE,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE;oBAC5C,GAAG,CAAC,KAAK,CAAC,OAAO,YAAY,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxD,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;gBACnE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;YAED,qBAAqB,GAAG,MAAM,eAAe,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAC7E,CAAC;QAED,uBAAuB;QACvB,IAAI,iBAAiB,EAAE,WAAW,EAAE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC/D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAClD,CAAC;QAED,6CAA6C;QAC7C,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtE,cAAc,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,CAAC;YAChD,CAAC;YAED,qBAAqB;YACrB,IAAI,iBAAiB,EAAE,WAAW,EAAE,CAAC;gBACnC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACnE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;gBAEtC,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,WAAW,EAAE,CAAC;oBACjD,IAAI,WAAW,GAAG,KAAK,CAAC;oBAExB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;wBAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC5C,IAAI,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC3B,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;4BAChD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;4BAChE,MAAM,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;4BAClE,IAAI,qBAAqB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gCACnD,WAAW,GAAG,IAAI,CAAC;4BACrB,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAClC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,eAAe;YACf,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;gBACxE,GAAG,CAAC,IAAI,CAAC,sBAAsB,cAAc,CAAC,MAAM,8BAA8B,CAAC,CAAC;gBACpF,GAAG,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;gBACxE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACrC,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBACvC,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,wBAAwB,iBAAiB,EAAE,IAAI,IAAI,OAAO,6BAA6B,CAAC,CAAC;gBAClG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC;gBAC3D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"checklist.d.ts","sourceRoot":"","sources":["../../src/commands/checklist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,eAAO,MAAM,gBAAgB,SA2IzB,CAAC"}
1
+ {"version":3,"file":"checklist.d.ts","sourceRoot":"","sources":["../../src/commands/checklist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,eAAO,MAAM,gBAAgB,SAmJzB,CAAC"}
@@ -90,9 +90,10 @@ export const checklistCommand = new Command('checklist')
90
90
  // Display manual steps
91
91
  log.info(`Manual setup steps for ${feature}:`);
92
92
  log.plain('');
93
+ const normalize = (text) => text.replace(/\\n/g, '\n');
93
94
  entry.manifest.manualSteps.forEach((step, index) => {
94
95
  log.plain(`Step ${index + 1}: ${step.title}`);
95
- log.plain(` ${step.description}`);
96
+ log.plain(` ${normalize(step.description || '')}`);
96
97
  if (step.link) {
97
98
  log.plain(` 🔗 ${step.link}`);
98
99
  }
@@ -100,7 +101,11 @@ export const checklistCommand = new Command('checklist')
100
101
  log.plain(` 📝 File: ${step.file}`);
101
102
  }
102
103
  if (step.content) {
103
- log.plain(` Add: ${step.content}`);
104
+ log.plain(' Add:');
105
+ log.plain(normalize(step.content)
106
+ .split('\n')
107
+ .map((line) => ` ${line}`)
108
+ .join('\n'));
104
109
  }
105
110
  log.plain('');
106
111
  });