@redonvn/cli 0.1.11 → 0.1.13

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.
@@ -1,6 +1,6 @@
1
1
  /** Env baked at build time. Runtime flag `--env` / `REDAI_ENV` vẫn override được. */
2
2
  export declare const BUILD_ENV: 'dev' | 'prod';
3
3
  /** Package version đọc từ package.json lúc build. Đồng bộ với npm version. */
4
- export declare const PKG_VERSION = "0.1.11";
4
+ export declare const PKG_VERSION = "0.1.13";
5
5
  /** ISO timestamp lúc build (informational). */
6
- export declare const BUILD_TIME = "2026-05-18T16:03:03.223Z";
6
+ export declare const BUILD_TIME = "2026-05-19T01:37:25.467Z";
@@ -6,7 +6,7 @@ exports.BUILD_TIME = exports.PKG_VERSION = exports.BUILD_ENV = void 0;
6
6
  /** Env baked at build time. Runtime flag `--env` / `REDAI_ENV` vẫn override được. */
7
7
  exports.BUILD_ENV = 'prod';
8
8
  /** Package version đọc từ package.json lúc build. Đồng bộ với npm version. */
9
- exports.PKG_VERSION = '0.1.11';
9
+ exports.PKG_VERSION = '0.1.13';
10
10
  /** ISO timestamp lúc build (informational). */
11
- exports.BUILD_TIME = '2026-05-18T16:03:03.223Z';
11
+ exports.BUILD_TIME = '2026-05-19T01:37:25.467Z';
12
12
  //# sourceMappingURL=build-info.js.map
@@ -21,6 +21,8 @@ const chat_1 = require("../../api/chat");
21
21
  const config_2 = require("../../mcp/config");
22
22
  const client_1 = require("../../mcp/client");
23
23
  const chrome_launcher_1 = require("../../mcp/chrome-launcher");
24
+ const catalog_js_1 = require("../../plugins/catalog.js");
25
+ const installer_js_1 = require("../../plugins/installer.js");
24
26
  // ─── Session state ─────────────────────────────────────────────────────────────
25
27
  let currentThreadId = null;
26
28
  let currentAgentId = null;
@@ -63,6 +65,7 @@ const COMMANDS = [
63
65
  { cmd: '/agents', desc: 'List AI agents — select default' },
64
66
  { cmd: '/permissions', desc: 'View / toggle tool permissions on this machine' },
65
67
  { cmd: '/mcps', desc: 'List MCP servers and their tools' },
68
+ { cmd: '/plugins', desc: 'Browse & install Python plugin catalog' },
66
69
  { cmd: '/threads', desc: 'Browse & switch conversation threads' },
67
70
  { cmd: '/thread', desc: 'Show current conversation thread ID' },
68
71
  { cmd: '/new', desc: 'Start a new conversation thread' },
@@ -650,6 +653,188 @@ async function addFromCatalogInline(existing) {
650
653
  process.stdin.on('keypress', handler);
651
654
  });
652
655
  }
656
+ // ─── /plugins — catalog browser + inline install ─────────────────────────────
657
+ //
658
+ // Layout:
659
+ // Python Plugins (32) tag:[data] [ml] [nlp] ... q:search Enter install Esc cancel
660
+ //
661
+ // ❯ Pandas Data manipulation, CSV, Excel… [data] [excel]
662
+ // Polars Fast DataFrame, lazy eval… [data]
663
+ // NumPy Numeric arrays, matrix, linAlg… [data] [ml]
664
+ // ...
665
+ //
666
+ // Keys: ↑↓ move · Enter install selected · / search · tag keys (d/m/n/v/e/p/w/b/u/a) · Esc exit
667
+ const PLUGIN_VIEWPORT = 10;
668
+ async function interactivePlugins() {
669
+ let list = [...catalog_js_1.PLUGIN_CATALOG];
670
+ let cursor = 0;
671
+ let viewTop = 0;
672
+ let filterTag = null;
673
+ let searchQuery = '';
674
+ let searchMode = false;
675
+ let searchBuffer = '';
676
+ let renderedLines = 0;
677
+ let installing = false;
678
+ const TAG_KEYS = {
679
+ d: 'data', m: 'ml', n: 'nlp', v: 'viz',
680
+ e: 'excel', p: 'pdf', w: 'web', b: 'db',
681
+ u: 'utils', a: 'ai',
682
+ };
683
+ function rebuild() {
684
+ let base = filterTag
685
+ ? catalog_js_1.PLUGIN_CATALOG.filter((p) => p.tags.includes(filterTag))
686
+ : [...catalog_js_1.PLUGIN_CATALOG];
687
+ if (searchQuery)
688
+ base = base.filter((p) => p.id.includes(searchQuery) ||
689
+ p.name.toLowerCase().includes(searchQuery) ||
690
+ p.description.toLowerCase().includes(searchQuery) ||
691
+ p.tags.some((t) => t.includes(searchQuery)));
692
+ list = base;
693
+ cursor = 0;
694
+ viewTop = 0;
695
+ }
696
+ function erase() {
697
+ if (renderedLines === 0)
698
+ return;
699
+ process.stdout.write('\x1B[' + renderedLines + 'A\x1B[0J');
700
+ renderedLines = 0;
701
+ }
702
+ function renderHeader() {
703
+ const tagBar = catalog_js_1.ALL_TAGS.map((t) => t === filterTag
704
+ ? chalk_1.default.bgCyan.black(` ${t} `)
705
+ : chalk_1.default.dim(`[${t}]`)).join(' ');
706
+ const searchHint = searchMode
707
+ ? chalk_1.default.cyan('search: ') + chalk_1.default.white(searchBuffer) + chalk_1.default.bgCyan(' ')
708
+ : chalk_1.default.dim('/ search');
709
+ return (chalk_1.default.bold(' Python Plugins') +
710
+ chalk_1.default.dim(` (${list.length})`) +
711
+ ' ' + tagBar + '\n' +
712
+ ' ' + searchHint + chalk_1.default.dim(' ↑↓ move · Enter install · Esc exit') + '\n');
713
+ }
714
+ function buildPluginRow(plugin, focused) {
715
+ const arrow = focused ? chalk_1.default.cyan('❯ ') : ' ';
716
+ const name = focused
717
+ ? chalk_1.default.bold.white(plugin.name.padEnd(18))
718
+ : chalk_1.default.white(plugin.name.padEnd(18));
719
+ const desc = chalk_1.default.dim(plugin.description.slice(0, 42).padEnd(44));
720
+ const tags = plugin.tags.map((t) => focused ? chalk_1.default.bgBlue.white(` ${t} `) : chalk_1.default.dim(`[${t}]`)).join(' ');
721
+ return ` ${arrow}${name} ${desc} ${tags}`;
722
+ }
723
+ function render() {
724
+ erase();
725
+ const lines = [];
726
+ lines.push(renderHeader());
727
+ if (list.length === 0) {
728
+ lines.push(chalk_1.default.dim(' No plugins found.\n'));
729
+ }
730
+ else {
731
+ const end = Math.min(viewTop + PLUGIN_VIEWPORT, list.length);
732
+ for (let i = viewTop; i < end; i++) {
733
+ lines.push(buildPluginRow(list[i], i === cursor));
734
+ }
735
+ if (list.length > PLUGIN_VIEWPORT) {
736
+ lines.push(chalk_1.default.dim(`\n ${cursor + 1}/${list.length} ↑↓ scroll`));
737
+ }
738
+ }
739
+ const output = lines.join('\n') + '\n';
740
+ process.stdout.write(output);
741
+ renderedLines = output.split('\n').length - 1;
742
+ }
743
+ render();
744
+ await new Promise((resolve) => {
745
+ const handler = async (_char, key) => {
746
+ if (installing)
747
+ return;
748
+ // search mode — collect characters
749
+ if (searchMode) {
750
+ if (key?.name === 'escape' || key?.name === 'return') {
751
+ searchMode = false;
752
+ searchQuery = searchBuffer;
753
+ rebuild();
754
+ render();
755
+ if (key?.name === 'escape') { /* stay in plugin browser */ }
756
+ return;
757
+ }
758
+ if (key?.name === 'backspace') {
759
+ searchBuffer = searchBuffer.slice(0, -1);
760
+ render();
761
+ return;
762
+ }
763
+ if (_char && !key?.ctrl && !key?.meta) {
764
+ searchBuffer += _char;
765
+ render();
766
+ return;
767
+ }
768
+ return;
769
+ }
770
+ if (key?.name === 'escape') {
771
+ erase();
772
+ process.stdin.removeListener('keypress', handler);
773
+ resolve();
774
+ return;
775
+ }
776
+ if (key?.name === 'up') {
777
+ if (cursor > 0) {
778
+ cursor--;
779
+ if (cursor < viewTop)
780
+ viewTop = cursor;
781
+ render();
782
+ }
783
+ return;
784
+ }
785
+ if (key?.name === 'down') {
786
+ if (cursor < list.length - 1) {
787
+ cursor++;
788
+ if (cursor >= viewTop + PLUGIN_VIEWPORT)
789
+ viewTop = cursor - PLUGIN_VIEWPORT + 1;
790
+ render();
791
+ }
792
+ return;
793
+ }
794
+ // Enter — install selected plugin
795
+ if (key?.name === 'return') {
796
+ const plugin = list[cursor];
797
+ if (!plugin)
798
+ return;
799
+ erase();
800
+ installing = true;
801
+ process.stdin.removeListener('keypress', handler);
802
+ console.log(chalk_1.default.bold(`\n Installing ${plugin.name}...`));
803
+ console.log(chalk_1.default.dim(` pip install ${plugin.packages.join(' ')}\n`));
804
+ const result = await (0, installer_js_1.installPlugin)(plugin, (chunk) => {
805
+ process.stdout.write(chalk_1.default.dim(chunk));
806
+ });
807
+ console.log();
808
+ if (result.success) {
809
+ console.log(chalk_1.default.green(` ✓ ${plugin.name} installed`) + chalk_1.default.dim(` (${result.durationMs}ms)`));
810
+ }
811
+ else {
812
+ console.log(chalk_1.default.red(` ✗ Installation failed`));
813
+ console.log(chalk_1.default.dim(result.output.slice(-400)));
814
+ }
815
+ console.log();
816
+ resolve();
817
+ return;
818
+ }
819
+ // / — enter search mode
820
+ if (_char === '/') {
821
+ searchMode = true;
822
+ searchBuffer = '';
823
+ render();
824
+ return;
825
+ }
826
+ // tag shortcut keys: d=data m=ml n=nlp v=viz e=excel p=pdf w=web b=db u=utils a=ai
827
+ const tag = TAG_KEYS[_char ?? ''];
828
+ if (tag) {
829
+ filterTag = filterTag === tag ? null : tag;
830
+ rebuild();
831
+ render();
832
+ return;
833
+ }
834
+ };
835
+ process.stdin.on('keypress', handler);
836
+ });
837
+ }
653
838
  // ─── /threads — viewport TUI with lazy-load pagination ───────────────────────
654
839
  const THREAD_VIEWPORT = 12;
655
840
  const THREAD_PAGE_SIZE = 20;
@@ -1100,6 +1285,9 @@ async function askCommand() {
1100
1285
  case '/mcps':
1101
1286
  await interactiveMcps();
1102
1287
  break;
1288
+ case '/plugins':
1289
+ await interactivePlugins();
1290
+ break;
1103
1291
  case '/threads':
1104
1292
  await interactiveThreads(cfg);
1105
1293
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../src/cli/commands/ask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../src/cli/commands/ask.ts"],"names":[],"mappings":";;;;;AAmyCA,gCAiTC;AAplDD;;;;;GAKG;AACH,kDAA0B;AAC1B,wDAAgC;AAChC,4CAAwE;AACxE,wDAA0E;AAC1E,wDAAiF;AACjF,yCAA2C;AAC3C,2CAAkE;AAClE,yCAA2I;AAC3I,6CAA2F;AAC3F,6CAAiD;AACjD,+DAAuF;AACvF,yDAKkC;AAClC,6DAA2D;AAE3D,kFAAkF;AAElF,IAAI,eAAe,GAAkB,IAAI,CAAC;AAC1C,IAAI,cAAc,GAAkB,IAAI,CAAC;AACzC,IAAI,gBAAgB,GAAG,OAAO,CAAC;AAE/B,kFAAkF;AAElF,MAAM,IAAI,GAAG;IACX,uCAAuC;IACvC,uCAAuC;IACvC,uCAAuC;IACvC,uCAAuC;IACvC,uCAAuC;IACvC,uCAAuC;CACxC,CAAC;AAEF,kFAAkF;AAClF,SAAS,aAAa,CAAC,IAAY,EAAE,KAAa;IAChD,MAAM,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,GAAG,IAAI,CAAC;IACf,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;IAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;IAC/C,OAAO,eAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5B,CAAC;AAED,iEAAiE;AACjE,MAAM,SAAS,GAAG,eAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAE9C,SAAS,WAAW,CAAC,GAA+C;IAClE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACvB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,GAAG,CAAC,KAAK,GAAG,oBAAW,CAAC;QAC9B,IAAI;QACJ,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CACjE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,+EAA+E,CAAC,CAAC,CAAC;IACxG,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,kFAAkF;AAElF,MAAM,QAAQ,GAAG;IACf,EAAE,GAAG,EAAE,OAAO,EAAS,IAAI,EAAE,mBAAmB,EAAE;IAClD,EAAE,GAAG,EAAE,UAAU,EAAM,IAAI,EAAE,cAAc,EAAE;IAC7C,EAAE,GAAG,EAAE,SAAS,EAAO,IAAI,EAAE,iCAAiC,EAAE;IAChE,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,gDAAgD,EAAE;IAC/E,EAAE,GAAG,EAAE,OAAO,EAAS,IAAI,EAAE,kCAAkC,EAAE;IACjE,EAAE,GAAG,EAAE,UAAU,EAAM,IAAI,EAAE,wCAAwC,EAAE;IACvE,EAAE,GAAG,EAAE,UAAU,EAAM,IAAI,EAAE,sCAAsC,EAAE;IACrE,EAAE,GAAG,EAAE,SAAS,EAAO,IAAI,EAAE,qCAAqC,EAAE;IACpE,EAAE,GAAG,EAAE,MAAM,EAAU,IAAI,EAAE,iCAAiC,EAAE;IAChE,EAAE,GAAG,EAAE,QAAQ,EAAQ,IAAI,EAAE,cAAc,EAAE;IAC7C,EAAE,GAAG,EAAE,OAAO,EAAS,IAAI,EAAE,MAAM,EAAE;CACtC,CAAC;AAEF,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAAQ,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,iFAAiF;AAEjF,SAAS,YAAY,CAAC,GAA+C;IACnE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,QAAQ,IAAI,GAAG,EAAE,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE,EAAE;QACzE,CAAC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAC7D,CAAC;IACF,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,gFAAgF;AAChF,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,mEAAmE;AACnE,8BAA8B;AAC9B,EAAE;AACF,yDAAyD;AACzD,qBAAqB;AACrB,cAAc;AACd,2EAA2E;AAC3E,EAAE;AACF,+CAA+C;AAC/C,0CAA0C;AAC1C,iFAAiF;AACjF,qDAAqD;AAErD,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,UAAU,GAAM,CAAC,CAAC,CAAG,wDAAwD;AACnF,MAAM,SAAS,GAAO,EAAE,CAAC;AACzB,MAAM,SAAS,GAAO,EAAE,CAAC;AAEzB,SAAS,aAAa,CAAC,CAAY,EAAE,OAAgB;IACnD,MAAM,MAAM,GAAI,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,GAAG,GAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAI,OAAO;QACtB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;QACrB,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc;YACvB,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;YACvB,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,GAAG,QAAQ,CAAC;AACnF,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,GAA+C;IAE/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAE3D,IAAI,MAAM,GAAgB,EAAE,CAAC;IAC7B,IAAI,UAAU,GAAK,CAAC,CAAC;IACrB,IAAI,WAAW,GAAI,CAAC,CAAC;IACrB,IAAI,UAAU,GAAK,CAAC,CAAC;IACrB,IAAI,WAAW,GAAI,KAAK,CAAC;IAEzB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAA,uBAAe,EAAC,GAAG,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;QACvD,MAAM,GAAO,KAAK,CAAC,KAAK,CAAC;QACzB,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;QACnC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;QACnC,WAAW,GAAG,CAAC,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAEnD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,kDAAkD;IAClD,IAAI,MAAM,GAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,CAAC,CAAC;IAC1E,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC;IAE3E,8EAA8E;IAE9E,sEAAsE;IACtE,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;IAEvE,iFAAiF;IACjF,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,uBAAuB;IAC/C,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,wBAAwB;IAChD,MAAM,UAAU,GAAK,GAAG,EAAE,CAAC,YAAY,GAAG,OAAO,EAAE,GAAG,YAAY,CAAC;IAEnE,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,gBAAgB,UAAU,GAAG,CAAC;YACzC,eAAK,CAAC,GAAG,CAAC,uDAAuD,CAAC,CACnE,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,sDAAsD;IACtD,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,qDAAqD;QACrD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC5C,UAAU,EAAE,CAAC;IACf,CAAC,CAAC;IAEF,6EAA6E;IAC7E,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,EAAE;QACpC,MAAM,MAAM,GAAI,MAAM,GAAG,OAAO,CAAC;QACjC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,IAAI,OAAO,EAAE;YAAE,OAAO;QAC9C,wEAAwE;QACxE,MAAM,OAAO,GAAG,YAAY,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,eAAe;QAC5E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC;IAEF,UAAU,EAAE,CAAC;IAEb,8EAA8E;IAC9E,MAAM,aAAa,GAAG,CAAC,OAAmB,EAAE,OAAmD,EAAE,EAAE;QACjG,IAAI,WAAW;YAAE,OAAO;QACxB,IAAI,WAAW,IAAI,UAAU;YAAE,OAAO;QACtC,0EAA0E;QAC1E,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,UAAU;YAAE,OAAO;QAEhD,WAAW,GAAG,IAAI,CAAC;QACnB,MAAM,QAAQ,GAAG,WAAW,GAAG,CAAC,CAAC;QAEjC,mDAAmD;QACnD,MAAM,UAAU,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,mBAAmB;QACrD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,KAAK,CAAC,CAAC;QAE3C,IAAA,uBAAe,EAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACtD,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,WAAW,GAAG,QAAQ,CAAC;YACvB,UAAU,GAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACnC,UAAU,GAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACnC,WAAW,GAAG,KAAK,CAAC;YACpB,KAAK,UAAU,CAAC;YAChB,MAAM,EAAE,CAAC;QACX,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACZ,WAAW,GAAG,KAAK,CAAC;YACpB,0BAA0B;YAC1B,UAAU,CAAC,UAAU,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,KAAK,OAAO,CAAC;QACb,KAAK,OAAO,CAAC;IACf,CAAC,CAAC;IAEF,8EAA8E;IAC9E,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,GAAiB,EAAE,EAAE;YACnD,IAAI,CAAC,GAAG,IAAI,WAAW;gBAAE,OAAO;YAEhC,QAAQ;YACR,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzD,IAAI,MAAM,KAAK,CAAC;oBAAE,OAAO;gBACzB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;gBACtB,IAAI,MAAM,GAAG,OAAO,EAAE,CAAC;oBACrB,OAAO,EAAE,CAAC;oBACV,MAAM,EAAE,CAAC;gBACX,CAAC;qBAAM,CAAC;oBACN,UAAU,CAAC,IAAI,CAAC,CAAC;oBACjB,UAAU,CAAC,MAAM,CAAC,CAAC;gBACrB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,QAAQ;YACR,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3D,IAAI,MAAM,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,IAAI,UAAU;oBAAE,OAAO;gBACtE,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;oBACtB,IAAI,MAAM,IAAI,OAAO,GAAG,aAAa,EAAE,CAAC;wBACtC,OAAO,EAAE,CAAC;wBACV,MAAM,EAAE,CAAC;oBACX,CAAC;yBAAM,CAAC;wBACN,UAAU,CAAC,IAAI,CAAC,CAAC;wBACjB,UAAU,CAAC,MAAM,CAAC,CAAC;oBACrB,CAAC;oBACD,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAClC,CAAC;gBACD,OAAO;YACT,CAAC;YAED,iBAAiB;YACjB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,cAAc,GAAK,MAAM,CAAC,EAAE,CAAC;gBAC7B,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,qBAAqB,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzE,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,6BAA6B;YAC7B,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,cAAc,GAAK,IAAI,CAAC;gBACxB,gBAAgB,GAAG,OAAO,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;gBACxD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,mBAAmB;YACnB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAChF,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;gBACxD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC,CAAC;QAEF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,gFAAgF;AAEhF,MAAM,SAAS,GAAuC;IACpD,IAAI,EAAQ,YAAY;IACxB,KAAK,EAAO,wBAAwB;IACpC,IAAI,EAAQ,2BAA2B;IACvC,IAAI,EAAQ,0BAA0B;IACtC,IAAI,EAAQ,uBAAuB;IACnC,IAAI,EAAQ,uBAAuB;IACnC,QAAQ,EAAI,YAAY;IACxB,SAAS,EAAG,mBAAmB;IAC/B,QAAQ,EAAI,iBAAiB;IAC7B,SAAS,EAAG,kBAAkB;IAC9B,UAAU,EAAE,qBAAqB;IACjC,OAAO,EAAK,eAAe;IAC3B,OAAO,EAAK,gBAAgB;CAC7B,CAAC;AAEF,oEAAoE;AACpE,SAAS,OAAO,CAAC,IAAwB,EAAE,OAAgB,EAAE,OAAgB;IAC3E,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjE,MAAM,OAAO,GAAI,OAAO;QACtB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,MAAM,IAAI,GAAO,OAAO;QACtB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACpD,OAAO,MAAM,GAAG,QAAQ,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,sBAAsB;IACnC,MAAM,KAAK,GAAG,IAAA,6BAAe,GAAE,CAAC;IAChC,8DAA8D;IAC9D,MAAM,OAAO,GAAc,4BAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;IACzE,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,KAAK,GAAG,4BAAc,CAAC,MAAM,CAAC;IAEpC,0BAA0B;IAC1B,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAC/B,eAAK,CAAC,GAAG,CAAC,0DAA0D,CAAC,CACtE,CAAC;QACF,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,4BAAc,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,2EAA2E;IAC3E,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE;QACjC,4EAA4E;QAC5E,8EAA8E;QAC9E,MAAM,OAAO,GAAG,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,mCAAmC;QACpE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,GAAG,CAAC,CAAC,CAAG,UAAU;QACtD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAY,aAAa;QAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,4BAAc,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC;QACjF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,GAAG,CAAC,CAAC,CAAI,iBAAiB;QAC9D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,QAAQ,EAAE,CAAC;IAEX,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QACnC,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,GAAiB,EAAE,EAAE;YACnD,IAAI,CAAC,GAAG;gBAAE,OAAO;YAEjB,QAAQ;YACR,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzD,IAAI,MAAM,KAAK,CAAC;oBAAE,OAAO;gBACzB,MAAM,IAAI,GAAG,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC;gBACT,UAAU,CAAC,IAAI,CAAC,CAAC;gBACjB,UAAU,CAAC,MAAM,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,QAAQ;YACR,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3D,IAAI,MAAM,KAAK,KAAK,GAAG,CAAC;oBAAE,OAAO;gBACjC,MAAM,IAAI,GAAG,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC;gBACT,UAAU,CAAC,IAAI,CAAC,CAAC;gBACjB,UAAU,CAAC,MAAM,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,iBAAiB;YACjB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACzB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACnC,UAAU,CAAC,MAAM,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,sBAAsB;YACtB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,MAAM,QAAQ,GAAiB,EAAE,CAAC;gBAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC/B,QAAQ,CAAC,4BAAc,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC3C,CAAC;gBACD,IAAA,6BAAe,EAAC,QAAQ,CAAC,CAAC;gBAC1B,MAAM,OAAO,GAAI,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;gBAChD,MAAM,QAAQ,GAAG,KAAK,GAAG,OAAO,CAAC;gBACjC,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,KAAK,CAAC,YAAY,CAAC;oBACzB,eAAK,CAAC,GAAG,CAAC,KAAK,OAAO,aAAa,QAAQ,YAAY,CAAC,CACzD,CAAC;gBACF,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,4BAA4B;YAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAChF,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC,CAAC;QAEF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,iFAAiF;AACjF,EAAE;AACF,QAAQ;AACR,wBAAwB;AACxB,sCAAsC;AACtC,0CAA0C;AAC1C,4CAA4C;AAC5C,0DAA0D;AAC1D,qBAAqB;AAErB,KAAK,UAAU,eAAe;IAC5B,IAAI,OAAO,GAAG,IAAA,sBAAa,GAAE,CAAC;IAC9B,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE5C,MAAM,QAAQ,GAAG,EAAE,CAAC;IAEpB,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,OAAgB,EAAU,EAAE;QAC1D,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,EAAE,GAAG,IAAA,qBAAY,EAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,OAAO;YACrB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACvC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,eAAK,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClF,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/C,OAAO,GAAG,GAAG,UAAU,GAAG,GAAG,GAAG,QAAQ,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,GAAG,CAAC;IACzE,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,KAAe,EAAE,EAAE;QACnC,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,MAAM,GAAG,CAAC;YAC7C,eAAK,CAAC,GAAG,CAAC,4FAA4F,CAAC,CACxG,CAAC;QACF,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC,CAAC;QAClF,CAAC;aAAM,CAAC;YACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,KAAe,EAAE,EAAE;QAClD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO;QACxB,MAAM,OAAO,GAAG,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE;QAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;IACjD,CAAC,CAAC;IAEF,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAErB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,KAAK,EAAE,KAAa,EAAE,GAAiB,EAAE,EAAE;YACzD,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;YAE3B,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzD,IAAI,KAAK,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC;oBAAE,OAAO;gBACxC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;gBACtB,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBACxB,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC1B,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3D,IAAI,KAAK,KAAK,CAAC,IAAI,MAAM,KAAK,KAAK,GAAG,CAAC;oBAAE,OAAO;gBAChD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;gBACtB,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBACxB,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC1B,OAAO;YACT,CAAC;YAED,gCAAgC;YAChC,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1B,MAAM,UAAU,GAAG,CAAC,IAAA,qBAAY,EAAC,GAAG,CAAC,CAAC;gBACtC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;gBAChD,IAAA,sBAAa,EAAC,OAAO,CAAC,CAAC;gBACvB,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC1B,OAAO;YACT,CAAC;YAED,4BAA4B;YAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC3B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;gBACrB,IAAA,sBAAa,EAAC,OAAO,CAAC,CAAC;gBACvB,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM;oBAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACjG,sCAAsC;gBACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,6CAA6C;gBACzF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,2BAA2B;gBAC5D,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,qEAAqE;YACrE,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;gBACpC,oBAAoB;gBACpB,OAAO,GAAG,IAAA,sBAAa,GAAE,CAAC;gBAC1B,MAAM,GAAG,CAAC,CAAC;gBACX,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBACtC,OAAO;YACT,CAAC;YAED,kCAAkC;YAClC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC7D,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1B,IAAI,CAAC,IAAA,qBAAY,EAAC,GAAG,CAAC,EAAE,CAAC;oBACvB,WAAW,CAAC,eAAK,CAAC,MAAM,CAAC,MAAM,IAAI,gBAAgB,CAAC,CAAC,CAAC;oBACtD,OAAO;gBACT,CAAC;gBACD,WAAW,CAAC,eAAK,CAAC,GAAG,CAAC,mBAAmB,IAAI,KAAK,CAAC,CAAC,CAAC;gBACrD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,sBAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;oBACnD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;oBAC3C,WAAW,CAAC,eAAK,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,KAAK,CAAC,MAAM,cAAc,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBACxG,MAAM,sBAAa,CAAC,QAAQ,EAAE,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,WAAW,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,IAAI,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC7F,CAAC;gBACD,OAAO;YACT,CAAC;YAED,+DAA+D;YAC/D,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBACrB,MAAM,OAAO,GAAG,MAAM,IAAA,4BAAU,GAAE,CAAC;gBACnC,IAAI,OAAO,EAAE,CAAC;oBACZ,WAAW,CAAC,eAAK,CAAC,KAAK,CAAC,yCAAyC,0BAAQ,GAAG,CAAC,CAAC,CAAC;oBAC/E,OAAO;gBACT,CAAC;gBACD,WAAW,CAAC,eAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC,CAAC;gBACnE,MAAM,MAAM,GAAG,MAAM,IAAA,sCAAoB,GAAE,CAAC;gBAC5C,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;oBACd,WAAW,CAAC,eAAK,CAAC,KAAK,CAAC,0CAA0C,0BAAQ,GAAG,CAAC,CAAC,CAAC;gBAClF,CAAC;qBAAM,CAAC;oBACN,WAAW,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAChD,CAAC;gBACD,OAAO;YACT,CAAC;YAED,iBAAiB;YACjB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAChF,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC,CAAC;QAEF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,qDAAqD;AACrD,KAAK,UAAU,oBAAoB,CACjC,QAAoE;IAEpE,MAAM,KAAK,GAAG,oBAAW,CAAC;IAC1B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAU,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3B,MAAM,QAAQ,GAAG,EAAE,CAAC;IAEpB,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,OAAgB,EAAU,EAAE;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,YAAY,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnG,MAAM,OAAO,GAAG,YAAY;YAC1B,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACxC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrG,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACxG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,QAAQ,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;IACxF,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE;QACjC,MAAM,OAAO,GAAG,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC;IAEF,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,eAAK,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,CAAC;IACtH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE;QAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,GAAiB,EAAE,EAAE;YACnD,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzD,IAAI,MAAM,KAAK,CAAC;oBAAE,OAAO;gBACzB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;gBACtB,UAAU,CAAC,IAAI,CAAC,CAAC;gBAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAAC,OAAO;YAC/C,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3D,IAAI,MAAM,KAAK,KAAK,GAAG,CAAC;oBAAE,OAAO;gBACjC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;gBACtB,UAAU,CAAC,IAAI,CAAC,CAAC;gBAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAAC,OAAO;YAC/C,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACzB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACrC,UAAU,CAAC,MAAM,CAAC,CAAC;gBACrB,CAAC;gBACD,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClD,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC1B,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;oBACpC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,cAAc,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;oBACtD,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG;wBAAE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5G,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;oBAAE,IAAA,sBAAa,EAAC,QAAQ,CAAC,CAAC;;oBACzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBACnD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;gBAAC,OAAO;YACpB,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAChF,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,OAAO,EAAE,CAAC;gBAAC,OAAO;YACpB,CAAC;QACH,CAAC,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,gFAAgF;AAChF,EAAE;AACF,UAAU;AACV,yFAAyF;AACzF,EAAE;AACF,0EAA0E;AAC1E,kEAAkE;AAClE,uEAAuE;AACvE,WAAW;AACX,EAAE;AACF,gGAAgG;AAEhG,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,KAAK,UAAU,kBAAkB;IAC/B,IAAI,IAAI,GAAG,CAAC,GAAG,2BAAc,CAAC,CAAC;IAC/B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,SAAS,GAAqB,IAAI,CAAC;IACvC,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,YAAY,GAAG,EAAE,CAAC;IACtB,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,MAAM,QAAQ,GAA8B;QAC1C,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;QACtC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI;QACvC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI;KACpB,CAAC;IAEF,SAAS,OAAO;QACd,IAAI,IAAI,GAAG,SAAS;YAClB,CAAC,CAAC,2BAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAU,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC,GAAG,2BAAc,CAAC,CAAC;QACxB,IAAI,WAAW;YAAE,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC1B,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC1C,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACjD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAC5C,CAAC;QACF,IAAI,GAAG,IAAI,CAAC;QACZ,MAAM,GAAG,CAAC,CAAC;QACX,OAAO,GAAG,CAAC,CAAC;IACd,CAAC;IAED,SAAS,KAAK;QACZ,IAAI,aAAa,KAAK,CAAC;YAAE,OAAO;QAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,aAAa,GAAG,UAAU,CAAC,CAAC;QAC3D,aAAa,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,SAAS,YAAY;QACnB,MAAM,MAAM,GAAG,qBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAChC,CAAC,KAAK,SAAS;YACb,CAAC,CAAC,eAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;YAC9B,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CACxB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACZ,MAAM,UAAU,GAAG,UAAU;YAC3B,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,eAAK,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,eAAK,CAAC,MAAM,CAAC,GAAG,CAAC;YACxE,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC1B,OAAO,CACL,eAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC;YAC9B,eAAK,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,GAAG,CAAC;YAC/B,IAAI,GAAG,MAAM,GAAG,IAAI;YACpB,IAAI,GAAG,UAAU,GAAG,eAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC,GAAG,IAAI,CAC7E,CAAC;IACJ,CAAC;IAED,SAAS,cAAc,CAAC,MAAc,EAAE,OAAgB;QACtD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChD,MAAM,IAAI,GAAI,OAAO;YACnB,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACxC,MAAM,IAAI,GAAI,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,MAAM,IAAI,GAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAClC,OAAO,CAAC,CAAC,CAAC,eAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAC7D,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACZ,OAAO,KAAK,KAAK,GAAG,IAAI,KAAK,IAAI,KAAK,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED,SAAS,MAAM;QACb,KAAK,EAAE,CAAC;QACR,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAE3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7D,KAAK,IAAI,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAE,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;YACrD,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;gBAClC,KAAK,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,EAAE,CAAC;IAET,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,KAAK,EAAE,KAAa,EAAE,GAAiB,EAAE,EAAE;YACzD,IAAI,UAAU;gBAAE,OAAO;YAEvB,mCAAmC;YACnC,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACrD,UAAU,GAAG,KAAK,CAAC;oBACnB,WAAW,GAAG,YAAY,CAAC;oBAC3B,OAAO,EAAE,CAAC;oBACV,MAAM,EAAE,CAAC;oBACT,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC,CAAC,4BAA4B,CAAC,CAAC;oBAC5D,OAAO;gBACT,CAAC;gBACD,IAAI,GAAG,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC9B,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACzC,MAAM,EAAE,CAAC;oBACT,OAAO;gBACT,CAAC;gBACD,IAAI,KAAK,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;oBACtC,YAAY,IAAI,KAAK,CAAC;oBACtB,MAAM,EAAE,CAAC;oBACT,OAAO;gBACT,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,KAAK,EAAE,CAAC;gBACR,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,IAAI,GAAG,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC;gBACvB,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;oBACf,MAAM,EAAE,CAAC;oBACT,IAAI,MAAM,GAAG,OAAO;wBAAE,OAAO,GAAG,MAAM,CAAC;oBACvC,MAAM,EAAE,CAAC;gBACX,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,GAAG,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;gBACzB,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,MAAM,EAAE,CAAC;oBACT,IAAI,MAAM,IAAI,OAAO,GAAG,eAAe;wBAAE,OAAO,GAAG,MAAM,GAAG,eAAe,GAAG,CAAC,CAAC;oBAChF,MAAM,EAAE,CAAC;gBACX,CAAC;gBACD,OAAO;YACT,CAAC;YAED,kCAAkC;YAClC,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACpB,KAAK,EAAE,CAAC;gBACR,UAAU,GAAG,IAAI,CAAC;gBAClB,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAElD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;gBAEvE,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAa,EAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;oBACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBACzC,CAAC,CAAC,CAAC;gBAEH,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,IAAI,YAAY,CAAC,GAAG,eAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC;gBACpG,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;oBAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACpD,CAAC;gBACD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,wBAAwB;YACxB,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAClB,UAAU,GAAG,IAAI,CAAC;gBAClB,YAAY,GAAG,EAAE,CAAC;gBAClB,MAAM,EAAE,CAAC;gBACT,OAAO;YACT,CAAC;YAED,mFAAmF;YACnF,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YAClC,IAAI,GAAG,EAAE,CAAC;gBACR,SAAS,GAAG,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC3C,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;gBACT,OAAO;YACT,CAAC;QACH,CAAC,CAAC;QAEF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,gFAAgF;AAEhF,MAAM,eAAe,GAAI,EAAE,CAAC;AAC5B,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAC5B,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,gBAAgB,GAAI,EAAE,CAAC;AAE7B,SAAS,aAAa,CAAC,EAAU;IAC/B,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,EAAE,KAAK,GAAG,CAAC,YAAY,EAAE,CAAC;IACxD,IAAI,OAAO;QAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACrF,OAAO,CAAC,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,cAAc,CAAC,CAAoB,EAAE,OAAgB;IAC5D,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,KAAK,eAAe,CAAC;IAC3C,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC1F,MAAM,IAAI,GAAI,eAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IACpD,MAAM,GAAG,GAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACjD,MAAM,OAAO,GAAG,OAAO;QACrB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;QACvB,CAAC,CAAC,SAAS;YACT,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzB,OAAO,GAAG,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;AACrD,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,GAA+C;IAE/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;IAE5D,IAAI,OAAO,GAAwB,EAAE,CAAC;IACtC,IAAI,UAAU,GAAI,CAAC,CAAC;IACpB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,UAAU,GAAI,CAAC,CAAC;IACpB,IAAI,WAAW,GAAG,KAAK,CAAC;IAExB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAA,uBAAgB,EAAC,GAAG,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAC/D,OAAO,GAAM,KAAK,CAAC,KAAK,CAAC;QACzB,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;QACnC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAEnD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,IAAI,MAAM,GAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC,CAAC;IAC5E,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC;IAE9E,MAAM,YAAY,GAAG,CAAC,CAAC;IACvB,MAAM,YAAY,GAAG,CAAC,CAAC;IACvB,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;IAC1E,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,YAAY,GAAG,OAAO,EAAE,GAAG,YAAY,CAAC;IAEjE,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,cAAc,UAAU,GAAG,CAAC;YACvC,eAAK,CAAC,GAAG,CAAC,2CAA2C,CAAC,CACvD,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,cAAc,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACrG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,UAAU,EAAE,WAAW,CAAC,CAAC;QACtD,UAAU,EAAE,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,EAAE;QACpC,MAAM,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;QAChC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,IAAI,OAAO,EAAE;YAAE,OAAO;QAC9C,MAAM,OAAO,GAAG,YAAY,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC;IAEF,UAAU,EAAE,CAAC;IAEb,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,WAAW,IAAI,WAAW,IAAI,UAAU;YAAE,OAAO;QACrD,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,iBAAiB;YAAE,OAAO;QACxD,WAAW,GAAG,IAAI,CAAC;QACnB,MAAM,QAAQ,GAAG,WAAW,GAAG,CAAC,CAAC;QACjC,MAAM,UAAU,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,YAAY,GAAG,CAAC,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,OAAO,KAAK,CAAC,CAAC;QAC3C,IAAA,uBAAgB,EAAC,GAAG,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9D,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,WAAW,GAAG,QAAQ,CAAC;YACvB,UAAU,GAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACnC,UAAU,GAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACnC,WAAW,GAAG,KAAK,CAAC;YACpB,KAAK,UAAU,CAAC;YAChB,MAAM,EAAE,CAAC;QACX,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACZ,WAAW,GAAG,KAAK,CAAC;YACpB,UAAU,CAAC,UAAU,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,GAAiB,EAAE,EAAE;YACnD,IAAI,CAAC,GAAG,IAAI,WAAW;gBAAE,OAAO;YAEhC,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzD,IAAI,MAAM,KAAK,CAAC;oBAAE,OAAO;gBACzB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;gBACtB,IAAI,MAAM,GAAG,OAAO,EAAE,CAAC;oBAAC,OAAO,EAAE,CAAC;oBAAC,MAAM,EAAE,CAAC;gBAAC,CAAC;qBACzC,CAAC;oBAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAAC,CAAC;gBAC9C,OAAO;YACT,CAAC;YAED,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3D,IAAI,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,IAAI,UAAU;oBAAE,OAAO;gBACvE,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;oBACtB,IAAI,MAAM,IAAI,OAAO,GAAG,eAAe,EAAE,CAAC;wBAAC,OAAO,EAAE,CAAC;wBAAC,MAAM,EAAE,CAAC;oBAAC,CAAC;yBAC5D,CAAC;wBAAC,UAAU,CAAC,IAAI,CAAC,CAAC;wBAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBAAC,CAAC;oBAC9C,aAAa,EAAE,CAAC;gBAClB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC/B,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC;gBAC5B,qBAAqB;gBACrB,MAAM,CAAC,GAAG,IAAA,mBAAW,GAAE,CAAC;gBACxB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC;gBACtC,IAAA,mBAAW,EAAC,CAAC,CAAC,CAAC;gBACf,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oBAAoB,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC9E,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAChF,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,iFAAiF;AAEjF,SAAS,WAAW;IAClB,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,eAAe,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,gBAAgB,EAAE,CAAC,CAAC;IACjE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,iFAAiF;AAEjF,KAAK,UAAU,IAAI,CACjB,GAA+C,EAC/C,MAAc;IAEd,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,uDAAuD,CAAC,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IAED,sDAAsD;IACtD,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAClE,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,YAAY,GAA0C,IAAI,CAAC;IAE/D,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE;QACrC,aAAa,GAAG,IAAI,CAAC;QACrB,QAAQ,GAAG,CAAC,CAAC;QACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;QAC9D,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;YAC9B,IAAI,CAAC,aAAa;gBAAE,OAAO;YAC3B,QAAQ,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;YAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,GAAG,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;QACnF,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,aAAa;YAAE,OAAO,CAAC,yDAAyD;QACrF,IAAI,YAAY,EAAE,CAAC;YAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YAAC,YAAY,GAAG,IAAI,CAAC;QAAC,CAAC;QACvE,aAAa,GAAG,KAAK,CAAC;QACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IACrD,CAAC,CAAC;IAEF,YAAY,CAAC,gBAAgB,CAAC,CAAC;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAW,EAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC/E,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,WAAW,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,0DAA0D;IAC1D,IAAI,UAAU,GAAG,IAAI,CAAC;IACtB,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC/B,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,UAAU,GAAG,KAAK,CAAC;QACnB,WAAW,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC;IAEF,MAAM,SAAS,GAAoB;QACjC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,mBAAmB,EAAE,CAAC;YACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QACD,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE;YACjC,mBAAmB,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;iBAC9C,KAAK,CAAC,IAAI,CAAC;iBACX,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;iBACzC,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,SAAS,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAC5E,CAAC;QACJ,CAAC;QACD,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE;YAClC,MAAM,OAAO,GACX,OAAO,MAAM,KAAK,QAAQ;gBACxB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gBACtB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,OAAO,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAClG,CAAC;QACJ,CAAC;QACD,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE;YACtC,mBAAmB,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,SAAS,eAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,eAAK,CAAC,MAAM,CAAC,gCAAgC,QAAQ,EAAE,CAAC,IAAI,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CACnH,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACf,mBAAmB,EAAE,CAAC;YACtB,aAAa,GAAG,IAAI,CAAC;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtE,CAAC;KACF,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,IAAA,qBAAc,EAAC,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,mBAAmB,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACpG,CAAC;IACH,CAAC;YAAS,CAAC;QACT,iEAAiE;QACjE,WAAW,EAAE,CAAC;IAChB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC;AAqBD,MAAM,IAAI,GAAoB;IAC5B,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,CAAC;IACd,aAAa,EAAE,CAAC;IAChB,MAAM,EAAE,EAAE;CACX,CAAC;AAEF,MAAM,OAAO,GAAG,EAAE,CAAC;AAEnB,uCAAuC;AACvC,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC;AACjD,CAAC;AAED,uCAAuC;AACvC,SAAS,QAAQ,CAAC,CAA4B,EAAE,QAAiB;IAC/D,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,eAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAClE,CAAC;AAGD,yEAAyE;AACzE,SAAS,KAAK,CAAC,CAAS;IACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,eAAe;IACtB,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACxC,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE;QAAE,CAAC,IAAI,gBAAgB,CAAC;IACnE,CAAC,IAAI,QAAQ,IAAI,CAAC,aAAa,GAAG,CAAC;IACnC,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,gBAAgB;IACvB,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC;QAAE,OAAO;IACrC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC;IACzB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,gFAAgF;AAChF,oDAAoD;AACpD,SAAS,cAAc,CAAC,OAAe,EAAE,OAAe;IACtD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACtC,MAAM,GAAG,GAAc,IAAI,CAAC,MAAM,CAAC;IACnC,MAAM,eAAe,GAAG,UAAU,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;IAErD,kDAAkD;IAClD,MAAM,MAAM,GAAI,OAAO,GAAG,CAAC,CAAC;IAC5B,MAAM,MAAM,GAAI,OAAO,GAAG,OAAO,CAAC,CAAC,qCAAqC;IACxE,MAAM,MAAM,GAAI,OAAO,GAAG,CAAC,CAAC,CAAO,gCAAgC;IAEnE,IAAI,GAAG,GAAG,QAAQ,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;IAE9E,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,GAAG,IAAI,QAAQ,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAC7D,CAAC;IACD,GAAG,IAAI,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3D,GAAG,IAAI,QAAQ,MAAM,WAAW,eAAe,GAAG,CAAC;IAEnD,KAAK,CAAC,GAAG,CAAC,CAAC;AACb,CAAC;AAGD,SAAS,cAAc,CAAC,GAAW;IACjC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACtC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;IAC9B,MAAM,IAAI,GAAG,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IACtE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IACxB,6DAA6D;IAC7D,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED,iFAAiF;AAE1E,KAAK,UAAU,UAAU;IAC9B,MAAM,GAAG,GAAG,IAAA,kBAAU,GAAE,CAAC;IACzB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,yDAAyD;IACzD,MAAM,OAAO,GAAG,IAAA,mBAAW,GAAE,CAAC;IAC9B,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QACpC,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9B,WAAW,CAAC,GAAG,CAAC,CAAC;IAEjB,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,kBAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAExD,IAAI,MAAM,GAAO,EAAE,CAAC;IACpB,IAAI,SAAS,GAAI,KAAK,CAAC;IACvB,IAAI,IAAI,GAAS,KAAK,CAAC;IACvB,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC,iDAAiD;IAErE,MAAM,aAAa,GAAG,eAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAK,eAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,4CAA4C;IACvF,MAAM,UAAU,GAAM,UAAU,CAAC;IACjC,MAAM,QAAQ,GAAQ,QAAQ,CAAC;IAE/B,sDAAsD;IACtD,MAAM,eAAe,GAAG,GAAa,EAAE,CACrC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CACjC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CACpD,CAAC;IAEJ,+EAA+E;IAC/E,6CAA6C;IAC7C,6DAA6D;IAC7D,MAAM,iBAAiB,GAAG,CAAC,eAAe,GAAG,KAAK,EAAE,EAAE;QACpD,MAAM,KAAK,GAAM,eAAe,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;QAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACrC,MAAM,OAAO,GAAI,QAAQ,KAAK,CAAC;YAC7B,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;QAE7D,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,mEAAmE;QACnE,IAAI,UAAU,GAAG,CAAC;YAAE,GAAG,IAAI,QAAQ,UAAU,GAAG,CAAC,GAAG,CAAC;QACrD,sEAAsE;QACtE,GAAG,IAAI,UAAU,CAAC;QAClB,wBAAwB;QACxB,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,UAAU,GAAG,QAAQ,CAAC;QAEtB,IAAI,eAAe,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YAC9E,GAAG,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9B,uDAAuD;YACvD,GAAG,IAAI,QAAQ,IAAI,CAAC,MAAM,GAAG,CAAC;YAC9B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACzB,CAAC;QAED,4CAA4C;QAC5C,GAAG,IAAI,UAAU,OAAO,GAAG,CAAC;QAC5B,gEAAgE;QAChE,KAAK,QAAQ,CAAC;QACd,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,MAAM,GAAG,EAAE,CAAC;QACZ,UAAU,GAAG,CAAC,CAAC;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC;IAC7C,CAAC,CAAC;IAEF,WAAW,EAAE,CAAC;IAEd,2EAA2E;IAC3E,MAAM,YAAY,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;QAE3C,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,GAAG,IAAI,CAAC;YACZ,MAAM,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACvB,IAAI,GAAG,KAAK,CAAC;YACb,WAAW,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAEhD,IAAI,GAAG,IAAI,CAAC;QACZ,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,GAAG,CAAC;YACT,KAAK,OAAO;gBACV,SAAS,EAAE,CAAC;gBACZ,MAAM;YACR,KAAK,UAAU;gBACb,YAAY,CAAC,GAAG,CAAC,CAAC;gBAClB,MAAM;YACR,KAAK,SAAS;gBACZ,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBAC7B,MAAM;YACR,KAAK,cAAc;gBACjB,MAAM,sBAAsB,EAAE,CAAC;gBAC/B,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,eAAe,EAAE,CAAC;gBACxB,MAAM;YACR,KAAK,UAAU;gBACb,MAAM,kBAAkB,EAAE,CAAC;gBAC3B,MAAM;YACR,KAAK,UAAU;gBACb,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;gBAC9B,MAAM;YACR,KAAK,SAAS;gBACZ,WAAW,EAAE,CAAC;gBACd,MAAM;YACR,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC;gBAC1D,IAAI,CAAC;oBACH,eAAe,GAAG,MAAM,IAAA,mBAAY,EAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;oBAC9D,MAAM,CAAC,GAAG,IAAA,mBAAW,GAAE,CAAC;oBACxB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,eAAe,CAAC;oBAC5C,IAAA,mBAAW,EAAC,CAAC,CAAC,CAAC;oBACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;oBACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;oBACnD,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,eAAe,EAAE,CAAC,CAAC;oBAC9D,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;oBACnD,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,EAAE,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;oBACvE,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,QAAQ;gBACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC9B,WAAW,CAAC,GAAG,CAAC,CAAC;gBACjB,MAAM;YACR,KAAK,OAAO,CAAC;YACb,KAAK,OAAO;gBACV,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;gBACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB;gBACE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,GAAG,KAAK,CAAC;QACb,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,IAAY,EAAE,GAAiB,EAAE,EAAE;QACrE,IAAI,IAAI;YAAE,OAAO;QAEjB,6EAA6E;QAC7E,IAAI,GAAG,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACxD,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC;gBAAE,gBAAgB,EAAE,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,6EAA6E;QAC7E,IAAI,GAAG,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC;YACvB,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,6EAA6E;QAC7E,IAAI,GAAG,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;YACzB,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,cAAc,CAAC,CAAC,CAAC,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,6EAA6E;QAC7E,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,IAAI,SAAS,EAAE,CAAC;gBACd,SAAS,GAAG,KAAK,CAAC;gBAClB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;gBAClB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;gBACrB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;gBACjB,iBAAiB,EAAE,CAAC;YACtB,CAAC;YACD,OAAO;QACT,CAAC;QAED,4EAA4E;QAC5E,yEAAyE;QACzE,IAAI,GAAG,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAI,SAAS;gBAAE,OAAO;YACtB,MAAM,IAAI,IAAI,CAAC;YACf,iBAAiB,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,4EAA4E;QAC5E,IAAI,GAAG,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;YAC9B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAChC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAE7B,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;oBAClB,SAAS,GAAG,KAAK,CAAC;gBACpB,CAAC;gBACD,kDAAkD;gBAClD,IAAI,CAAC,OAAO,GAAG,MAAM,KAAK,EAAE;oBAC1B,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;gBACjE,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;gBACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,iBAAiB,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,iBAAiB,EAAE,CAAC;YACtB,CAAC;YACD,OAAO;QACT,CAAC;QAED,4EAA4E;QAC5E,IAAI,GAAG,EAAE,IAAI,KAAK,KAAK,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChE,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC;YAC5C,SAAS,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;YACjB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;YACvB,iBAAiB,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,6EAA6E;QAC7E,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,2CAA2C;YAC3C,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC;YAC9C,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;YAE5B,kCAAkC;YAClC,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,IAAI,UAAU,GAAG,CAAC;gBAAE,GAAG,IAAI,QAAQ,UAAU,GAAG,CAAC,GAAG,CAAC;YACrD,GAAG,IAAI,UAAU,CAAC;YAElB,MAAM,GAAG,EAAE,CAAC;YACZ,SAAS,GAAG,KAAK,CAAC;YAClB,UAAU,GAAG,CAAC,CAAC;YACf,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;YAEvB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,6DAA6D;gBAC7D,KAAK,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YAED,6DAA6D;YAC7D,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAChD,GAAG,IAAI,aAAa,GAAG,WAAW,GAAG,IAAI,CAAC;YAC1C,KAAK,CAAC,GAAG,CAAC,CAAC;YAEX,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,6EAA6E;QAC7E,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEvC,MAAM,IAAI,IAAI,CAAC;QAEf,IAAI,SAAS,EAAE,CAAC;YACd,gEAAgE;YAChE,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAC5E,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACnB,SAAS,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;YAC7B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,OAAO,CAAO,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;AAC3C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function pluginsCommand(args: string[]): Promise<void>;
2
+ export declare function installCommand(args: string[]): Promise<void>;
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.pluginsCommand = pluginsCommand;
7
+ exports.installCommand = installCommand;
8
+ const chalk_1 = __importDefault(require("chalk"));
9
+ const catalog_js_1 = require("../../plugins/catalog.js");
10
+ const installer_js_1 = require("../../plugins/installer.js");
11
+ // ── redai plugins ──────────────────────────────────────────────────────────
12
+ async function pluginsCommand(args) {
13
+ const sub = args[0];
14
+ if (!sub || sub === 'list') {
15
+ const tag = args[1];
16
+ await listPlugins(tag);
17
+ return;
18
+ }
19
+ if (sub === 'search') {
20
+ const query = args.slice(1).join(' ');
21
+ await searchCommand(query);
22
+ return;
23
+ }
24
+ if (sub === 'info') {
25
+ const id = args[1];
26
+ await infoCommand(id);
27
+ return;
28
+ }
29
+ console.log(chalk_1.default.red(`Unknown subcommand: ${sub}`));
30
+ printPluginsHelp();
31
+ }
32
+ // ── redai install <id> ─────────────────────────────────────────────────────
33
+ async function installCommand(args) {
34
+ const id = args[0];
35
+ if (!id) {
36
+ console.log(chalk_1.default.yellow('Usage: redai install <plugin-id>'));
37
+ console.log(chalk_1.default.dim(' Run `redai plugins` to browse the catalog'));
38
+ return;
39
+ }
40
+ const plugin = (0, catalog_js_1.findPlugin)(id);
41
+ if (!plugin) {
42
+ console.log(chalk_1.default.red(`Plugin not found: "${id}"`));
43
+ console.log(chalk_1.default.dim(` Try: redai plugins search ${id}`));
44
+ return;
45
+ }
46
+ console.log();
47
+ console.log(chalk_1.default.bold(`Installing ${plugin.name}...`));
48
+ console.log(chalk_1.default.dim(` packages: ${plugin.packages.join(', ')}`));
49
+ console.log();
50
+ const result = await (0, installer_js_1.installPlugin)(plugin, (line) => {
51
+ process.stdout.write(chalk_1.default.dim(line));
52
+ });
53
+ console.log();
54
+ if (result.success) {
55
+ console.log(chalk_1.default.green(`✓ ${plugin.name} installed successfully`) + chalk_1.default.dim(` (${result.durationMs}ms)`));
56
+ }
57
+ else {
58
+ console.log(chalk_1.default.red(`✗ Installation failed`));
59
+ console.log(chalk_1.default.dim(result.output.slice(-500)));
60
+ process.exitCode = 1;
61
+ }
62
+ }
63
+ // ── Helpers ────────────────────────────────────────────────────────────────
64
+ async function listPlugins(tag) {
65
+ const plugins = tag ? (0, catalog_js_1.pluginsByTag)(tag) : catalog_js_1.PLUGIN_CATALOG;
66
+ console.log();
67
+ console.log(chalk_1.default.bold.white(' RedAI Plugin Catalog') + chalk_1.default.dim(' — Python packages'));
68
+ console.log();
69
+ // tag filter bar
70
+ console.log(' ' +
71
+ catalog_js_1.ALL_TAGS.map((t) => t === tag
72
+ ? chalk_1.default.bgCyan.black(` ${t} `)
73
+ : chalk_1.default.dim(`[${t}]`)).join(' '));
74
+ if (tag) {
75
+ console.log(chalk_1.default.dim(` Showing: ${catalog_js_1.TAG_LABELS[tag]} (${plugins.length} plugins)`));
76
+ }
77
+ else {
78
+ console.log(chalk_1.default.dim(` ${plugins.length} plugins total · filter: redai plugins list <tag>`));
79
+ }
80
+ console.log();
81
+ for (const plugin of plugins) {
82
+ const installed = await (0, installer_js_1.checkPluginInstalled)(plugin);
83
+ console.log((0, installer_js_1.renderPluginCard)(plugin, installed));
84
+ console.log();
85
+ }
86
+ console.log(chalk_1.default.dim(' Install: redai install <id> · Search: redai plugins search <query>'));
87
+ console.log();
88
+ }
89
+ async function searchCommand(query) {
90
+ if (!query) {
91
+ console.log(chalk_1.default.yellow('Usage: redai plugins search <query>'));
92
+ return;
93
+ }
94
+ const results = (0, catalog_js_1.searchPlugins)(query);
95
+ console.log();
96
+ if (results.length === 0) {
97
+ console.log(chalk_1.default.yellow(`No plugins found for "${query}"`));
98
+ return;
99
+ }
100
+ console.log(chalk_1.default.dim(` ${results.length} result(s) for "${query}"`));
101
+ console.log();
102
+ for (const plugin of results) {
103
+ const installed = await (0, installer_js_1.checkPluginInstalled)(plugin);
104
+ console.log((0, installer_js_1.renderPluginCard)(plugin, installed));
105
+ console.log();
106
+ }
107
+ }
108
+ async function infoCommand(id) {
109
+ if (!id) {
110
+ console.log(chalk_1.default.yellow('Usage: redai plugins info <id>'));
111
+ return;
112
+ }
113
+ const plugin = (0, catalog_js_1.findPlugin)(id);
114
+ if (!plugin) {
115
+ console.log(chalk_1.default.red(`Plugin not found: "${id}"`));
116
+ return;
117
+ }
118
+ const installed = await (0, installer_js_1.checkPluginInstalled)(plugin);
119
+ console.log();
120
+ console.log((0, installer_js_1.renderPluginCard)(plugin, installed));
121
+ if (plugin.checkCmd) {
122
+ console.log(chalk_1.default.dim(` verify: ${plugin.checkCmd}`));
123
+ }
124
+ console.log();
125
+ }
126
+ function printPluginsHelp() {
127
+ console.log();
128
+ console.log(chalk_1.default.bold('redai plugins') + chalk_1.default.dim(' — browse Python plugin catalog'));
129
+ console.log();
130
+ console.log(' redai plugins ' + chalk_1.default.dim('List all plugins'));
131
+ console.log(' redai plugins list <tag> ' + chalk_1.default.dim('Filter by tag (data, ml, nlp, viz, excel, pdf, web, db, utils, ai)'));
132
+ console.log(' redai plugins search <q> ' + chalk_1.default.dim('Search by name or description'));
133
+ console.log(' redai plugins info <id> ' + chalk_1.default.dim('Show plugin details'));
134
+ console.log(' redai install <id> ' + chalk_1.default.dim('Install a plugin'));
135
+ console.log();
136
+ }
137
+ //# sourceMappingURL=plugins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../src/cli/commands/plugins.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -12,6 +12,7 @@ const oauth_1 = require("./commands/oauth");
12
12
  const mcp_1 = require("./commands/mcp");
13
13
  const ask_1 = require("./commands/ask");
14
14
  const permission_1 = require("./commands/permission");
15
+ const plugins_1 = require("./commands/plugins");
15
16
  const serve_1 = require("./commands/serve");
16
17
  const start_1 = require("./commands/start");
17
18
  const status_1 = require("./commands/status");
@@ -78,6 +79,12 @@ function printHelp() {
78
79
  console.log(' redai mcp test <server> Ping an MCP server, verify tools available');
79
80
  console.log(' redai mcp chrome-start Launch Chrome with CDP debug profile (for chrome-devtools MCP)');
80
81
  console.log();
82
+ console.log('Python plugin catalog:');
83
+ console.log(' redai plugins Browse all Python plugins (data, ml, nlp, viz, excel, pdf...)');
84
+ console.log(' redai plugins list <tag> Filter by tag');
85
+ console.log(' redai plugins search <query> Search plugins by name or description');
86
+ console.log(' redai install <plugin-id> Install a Python plugin via pip');
87
+ console.log();
81
88
  console.log('Local permissions:');
82
89
  console.log(' redai permission list Show all tools and their enabled/disabled status');
83
90
  console.log(' redai permission enable <tool> Allow a tool to run on this machine');
@@ -161,6 +168,14 @@ async function main() {
161
168
  await (0, permission_1.permissionCommand)(process.argv.slice(3));
162
169
  return;
163
170
  }
171
+ case 'plugins': {
172
+ await (0, plugins_1.pluginsCommand)(process.argv.slice(3));
173
+ return;
174
+ }
175
+ case 'install': {
176
+ await (0, plugins_1.installCommand)(process.argv.slice(3));
177
+ return;
178
+ }
164
179
  case 'mcp': {
165
180
  const sub = process.argv[3];
166
181
  if (!sub || sub === 'list') {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { BUILD_ENV, BUILD_TIME, PKG_VERSION } from './build-info';
2
2
  export declare const CLI_PACKAGE_NAME = "@redonvn/cli";
3
3
  /** Version đồng bộ với `package.json` lúc build — KHÔNG hardcode. */
4
- export declare const CLI_VERSION = "0.1.11";
4
+ export declare const CLI_VERSION = "0.1.13";
5
5
  /** Re-export build metadata cho status command. */
6
6
  export { BUILD_ENV, BUILD_TIME, PKG_VERSION };
7
7
  export declare const REDAI_CONFIG_DIR: string;
@@ -0,0 +1,16 @@
1
+ export type PluginTag = 'data' | 'ml' | 'nlp' | 'viz' | 'excel' | 'pdf' | 'web' | 'db' | 'utils' | 'ai';
2
+ export interface Plugin {
3
+ id: string;
4
+ name: string;
5
+ description: string;
6
+ tags: PluginTag[];
7
+ packages: string[];
8
+ checkCmd?: string;
9
+ docs?: string;
10
+ }
11
+ export declare const PLUGIN_CATALOG: Plugin[];
12
+ export declare const ALL_TAGS: PluginTag[];
13
+ export declare const TAG_LABELS: Record<PluginTag, string>;
14
+ export declare function searchPlugins(query: string): Plugin[];
15
+ export declare function pluginsByTag(tag: PluginTag): Plugin[];
16
+ export declare function findPlugin(id: string): Plugin | undefined;
@@ -0,0 +1,311 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TAG_LABELS = exports.ALL_TAGS = exports.PLUGIN_CATALOG = void 0;
4
+ exports.searchPlugins = searchPlugins;
5
+ exports.pluginsByTag = pluginsByTag;
6
+ exports.findPlugin = findPlugin;
7
+ exports.PLUGIN_CATALOG = [
8
+ // ── Data manipulation ──────────────────────────────────────────────────
9
+ {
10
+ id: 'pandas',
11
+ name: 'Pandas',
12
+ description: 'Thao tác DataFrame, đọc/ghi CSV, Excel, JSON, lọc và transform dữ liệu',
13
+ tags: ['data', 'excel'],
14
+ packages: ['pandas'],
15
+ checkCmd: 'python -c "import pandas; print(pandas.__version__)"',
16
+ },
17
+ {
18
+ id: 'polars',
19
+ name: 'Polars',
20
+ description: 'DataFrame tốc độ cao hơn Pandas, lazy evaluation, multi-thread',
21
+ tags: ['data'],
22
+ packages: ['polars'],
23
+ checkCmd: 'python -c "import polars; print(polars.__version__)"',
24
+ },
25
+ {
26
+ id: 'numpy',
27
+ name: 'NumPy',
28
+ description: 'Tính toán mảng số học, ma trận, linear algebra',
29
+ tags: ['data', 'ml'],
30
+ packages: ['numpy'],
31
+ checkCmd: 'python -c "import numpy; print(numpy.__version__)"',
32
+ },
33
+ {
34
+ id: 'dask',
35
+ name: 'Dask',
36
+ description: 'Xử lý dữ liệu lớn hơn RAM, song song hóa Pandas/NumPy',
37
+ tags: ['data'],
38
+ packages: ['dask[complete]'],
39
+ checkCmd: 'python -c "import dask; print(dask.__version__)"',
40
+ },
41
+ // ── Excel / Spreadsheet ─────────────────────────────────────────────────
42
+ {
43
+ id: 'openpyxl',
44
+ name: 'OpenPyXL',
45
+ description: 'Đọc/ghi file .xlsx, hỗ trợ style, formula, chart',
46
+ tags: ['excel', 'data'],
47
+ packages: ['openpyxl'],
48
+ checkCmd: 'python -c "import openpyxl; print(openpyxl.__version__)"',
49
+ },
50
+ {
51
+ id: 'xlsxwriter',
52
+ name: 'XlsxWriter',
53
+ description: 'Tạo file Excel .xlsx với chart, format, conditional formatting',
54
+ tags: ['excel'],
55
+ packages: ['xlsxwriter'],
56
+ checkCmd: 'python -c "import xlsxwriter; print(xlsxwriter.__version__)"',
57
+ },
58
+ {
59
+ id: 'xlrd',
60
+ name: 'xlrd',
61
+ description: 'Đọc file Excel .xls (format cũ)',
62
+ tags: ['excel'],
63
+ packages: ['xlrd'],
64
+ checkCmd: 'python -c "import xlrd; print(xlrd.__version__)"',
65
+ },
66
+ // ── PDF ─────────────────────────────────────────────────────────────────
67
+ {
68
+ id: 'pypdf2',
69
+ name: 'PyPDF2',
70
+ description: 'Đọc, merge, split, rotate file PDF',
71
+ tags: ['pdf'],
72
+ packages: ['PyPDF2'],
73
+ checkCmd: 'python -c "import PyPDF2; print(PyPDF2.__version__)"',
74
+ },
75
+ {
76
+ id: 'pdfplumber',
77
+ name: 'pdfplumber',
78
+ description: 'Extract text, table từ PDF chính xác cao, kể cả PDF scan',
79
+ tags: ['pdf', 'data'],
80
+ packages: ['pdfplumber'],
81
+ checkCmd: 'python -c "import pdfplumber; print(pdfplumber.__version__)"',
82
+ },
83
+ {
84
+ id: 'reportlab',
85
+ name: 'ReportLab',
86
+ description: 'Tạo PDF từ code Python, hỗ trợ layout, table, chart, image',
87
+ tags: ['pdf'],
88
+ packages: ['reportlab'],
89
+ checkCmd: 'python -c "import reportlab; print(reportlab.Version)"',
90
+ },
91
+ {
92
+ id: 'pymupdf',
93
+ name: 'PyMuPDF (fitz)',
94
+ description: 'Render PDF/image, extract text nhanh, chỉnh sửa PDF',
95
+ tags: ['pdf'],
96
+ packages: ['pymupdf'],
97
+ checkCmd: 'python -c "import fitz; print(fitz.__version__)"',
98
+ },
99
+ // ── Visualization ────────────────────────────────────────────────────────
100
+ {
101
+ id: 'matplotlib',
102
+ name: 'Matplotlib',
103
+ description: 'Vẽ chart 2D/3D: line, bar, scatter, heatmap, save ảnh',
104
+ tags: ['viz', 'data'],
105
+ packages: ['matplotlib'],
106
+ checkCmd: 'python -c "import matplotlib; print(matplotlib.__version__)"',
107
+ },
108
+ {
109
+ id: 'seaborn',
110
+ name: 'Seaborn',
111
+ description: 'Statistical visualization đẹp hơn Matplotlib, tích hợp Pandas',
112
+ tags: ['viz', 'data'],
113
+ packages: ['seaborn'],
114
+ checkCmd: 'python -c "import seaborn; print(seaborn.__version__)"',
115
+ },
116
+ {
117
+ id: 'plotly',
118
+ name: 'Plotly',
119
+ description: 'Interactive chart, export HTML, hỗ trợ 3D, map, dashboard',
120
+ tags: ['viz'],
121
+ packages: ['plotly'],
122
+ checkCmd: 'python -c "import plotly; print(plotly.__version__)"',
123
+ },
124
+ // ── Machine Learning ─────────────────────────────────────────────────────
125
+ {
126
+ id: 'scikit-learn',
127
+ name: 'scikit-learn',
128
+ description: 'ML algorithms: classification, regression, clustering, preprocessing',
129
+ tags: ['ml', 'data'],
130
+ packages: ['scikit-learn'],
131
+ checkCmd: 'python -c "import sklearn; print(sklearn.__version__)"',
132
+ },
133
+ {
134
+ id: 'xgboost',
135
+ name: 'XGBoost',
136
+ description: 'Gradient boosting nhanh, mạnh cho tabular data',
137
+ tags: ['ml'],
138
+ packages: ['xgboost'],
139
+ checkCmd: 'python -c "import xgboost; print(xgboost.__version__)"',
140
+ },
141
+ {
142
+ id: 'lightgbm',
143
+ name: 'LightGBM',
144
+ description: 'Gradient boosting tối ưu cho dataset lớn, nhanh hơn XGBoost',
145
+ tags: ['ml'],
146
+ packages: ['lightgbm'],
147
+ checkCmd: 'python -c "import lightgbm; print(lightgbm.__version__)"',
148
+ },
149
+ // ── NLP ───────────────────────────────────────────────────────────────────
150
+ {
151
+ id: 'spacy',
152
+ name: 'spaCy',
153
+ description: 'NLP: tokenize, NER, POS tagging, dependency parsing, nhanh',
154
+ tags: ['nlp', 'ai'],
155
+ packages: ['spacy'],
156
+ checkCmd: 'python -c "import spacy; print(spacy.__version__)"',
157
+ },
158
+ {
159
+ id: 'transformers',
160
+ name: 'HuggingFace Transformers',
161
+ description: 'BERT, GPT, T5 và 100k+ model từ HuggingFace Hub',
162
+ tags: ['nlp', 'ai', 'ml'],
163
+ packages: ['transformers', 'torch'],
164
+ checkCmd: 'python -c "import transformers; print(transformers.__version__)"',
165
+ },
166
+ {
167
+ id: 'nltk',
168
+ name: 'NLTK',
169
+ description: 'Toolkit NLP cổ điển: tokenize, stemming, corpus, sentiment',
170
+ tags: ['nlp'],
171
+ packages: ['nltk'],
172
+ checkCmd: 'python -c "import nltk; print(nltk.__version__)"',
173
+ },
174
+ // ── Web / HTTP ────────────────────────────────────────────────────────────
175
+ {
176
+ id: 'requests',
177
+ name: 'Requests',
178
+ description: 'HTTP client đơn giản nhất cho Python',
179
+ tags: ['web'],
180
+ packages: ['requests'],
181
+ checkCmd: 'python -c "import requests; print(requests.__version__)"',
182
+ },
183
+ {
184
+ id: 'httpx',
185
+ name: 'HTTPX',
186
+ description: 'HTTP client hiện đại, async/sync, HTTP/2 support',
187
+ tags: ['web'],
188
+ packages: ['httpx'],
189
+ checkCmd: 'python -c "import httpx; print(httpx.__version__)"',
190
+ },
191
+ {
192
+ id: 'beautifulsoup4',
193
+ name: 'BeautifulSoup4',
194
+ description: 'Parse HTML/XML, crawl web, extract data',
195
+ tags: ['web', 'data'],
196
+ packages: ['beautifulsoup4', 'lxml'],
197
+ checkCmd: 'python -c "import bs4; print(bs4.__version__)"',
198
+ },
199
+ {
200
+ id: 'scrapy',
201
+ name: 'Scrapy',
202
+ description: 'Framework crawl web đầy đủ, spider, pipeline, export',
203
+ tags: ['web'],
204
+ packages: ['scrapy'],
205
+ checkCmd: 'python -c "import scrapy; print(scrapy.__version__)"',
206
+ },
207
+ // ── Database ──────────────────────────────────────────────────────────────
208
+ {
209
+ id: 'sqlalchemy',
210
+ name: 'SQLAlchemy',
211
+ description: 'ORM + Core SQL cho Python, hỗ trợ MySQL, PostgreSQL, SQLite',
212
+ tags: ['db'],
213
+ packages: ['sqlalchemy'],
214
+ checkCmd: 'python -c "import sqlalchemy; print(sqlalchemy.__version__)"',
215
+ },
216
+ {
217
+ id: 'pymongo',
218
+ name: 'PyMongo',
219
+ description: 'MongoDB driver chính thức cho Python',
220
+ tags: ['db'],
221
+ packages: ['pymongo'],
222
+ checkCmd: 'python -c "import pymongo; print(pymongo.__version__)"',
223
+ },
224
+ {
225
+ id: 'redis-py',
226
+ name: 'redis-py',
227
+ description: 'Redis client, hỗ trợ pipeline, pub/sub, cluster',
228
+ tags: ['db'],
229
+ packages: ['redis'],
230
+ checkCmd: 'python -c "import redis; print(redis.__version__)"',
231
+ },
232
+ // ── AI / LLM ──────────────────────────────────────────────────────────────
233
+ {
234
+ id: 'openai',
235
+ name: 'OpenAI SDK',
236
+ description: 'Official Python SDK cho OpenAI API (GPT, Embeddings, DALL-E)',
237
+ tags: ['ai'],
238
+ packages: ['openai'],
239
+ checkCmd: 'python -c "import openai; print(openai.__version__)"',
240
+ },
241
+ {
242
+ id: 'anthropic',
243
+ name: 'Anthropic SDK',
244
+ description: 'Official Python SDK cho Claude API',
245
+ tags: ['ai'],
246
+ packages: ['anthropic'],
247
+ checkCmd: 'python -c "import anthropic; print(anthropic.__version__)"',
248
+ },
249
+ {
250
+ id: 'langchain',
251
+ name: 'LangChain',
252
+ description: 'Framework xây dựng LLM app: chain, agent, RAG, tool calling',
253
+ tags: ['ai', 'nlp'],
254
+ packages: ['langchain'],
255
+ checkCmd: 'python -c "import langchain; print(langchain.__version__)"',
256
+ },
257
+ // ── Utils ──────────────────────────────────────────────────────────────────
258
+ {
259
+ id: 'python-dotenv',
260
+ name: 'python-dotenv',
261
+ description: 'Load biến môi trường từ file .env',
262
+ tags: ['utils'],
263
+ packages: ['python-dotenv'],
264
+ checkCmd: 'python -c "import dotenv; print(dotenv.__version__)"',
265
+ },
266
+ {
267
+ id: 'pydantic',
268
+ name: 'Pydantic',
269
+ description: 'Data validation với type hints, dùng rộng rãi trong FastAPI',
270
+ tags: ['utils', 'ai'],
271
+ packages: ['pydantic'],
272
+ checkCmd: 'python -c "import pydantic; print(pydantic.__version__)"',
273
+ },
274
+ {
275
+ id: 'rich',
276
+ name: 'Rich',
277
+ description: 'Terminal output đẹp: table, progress bar, syntax highlight',
278
+ tags: ['utils'],
279
+ packages: ['rich'],
280
+ checkCmd: 'python -c "import rich; print(rich.__version__)"',
281
+ },
282
+ ];
283
+ exports.ALL_TAGS = ['data', 'ml', 'nlp', 'viz', 'excel', 'pdf', 'web', 'db', 'utils', 'ai'];
284
+ exports.TAG_LABELS = {
285
+ data: 'Data',
286
+ ml: 'Machine Learning',
287
+ nlp: 'NLP',
288
+ viz: 'Visualization',
289
+ excel: 'Excel',
290
+ pdf: 'PDF',
291
+ web: 'Web / HTTP',
292
+ db: 'Database',
293
+ utils: 'Utilities',
294
+ ai: 'AI / LLM',
295
+ };
296
+ function searchPlugins(query) {
297
+ const q = query.toLowerCase().trim();
298
+ if (!q)
299
+ return exports.PLUGIN_CATALOG;
300
+ return exports.PLUGIN_CATALOG.filter((p) => p.id.includes(q) ||
301
+ p.name.toLowerCase().includes(q) ||
302
+ p.description.toLowerCase().includes(q) ||
303
+ p.tags.some((t) => t.includes(q)));
304
+ }
305
+ function pluginsByTag(tag) {
306
+ return exports.PLUGIN_CATALOG.filter((p) => p.tags.includes(tag));
307
+ }
308
+ function findPlugin(id) {
309
+ return exports.PLUGIN_CATALOG.find((p) => p.id === id);
310
+ }
311
+ //# sourceMappingURL=catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/plugins/catalog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './catalog.js';
2
+ export * from './installer.js';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./catalog.js"), exports);
18
+ __exportStar(require("./installer.js"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugins/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,iDAA+B"}
@@ -0,0 +1,9 @@
1
+ import { Plugin } from './catalog.js';
2
+ export interface InstallResult {
3
+ success: boolean;
4
+ output: string;
5
+ durationMs: number;
6
+ }
7
+ export declare function installPlugin(plugin: Plugin, onOutput?: (line: string) => void): Promise<InstallResult>;
8
+ export declare function checkPluginInstalled(plugin: Plugin): Promise<boolean>;
9
+ export declare function renderPluginCard(plugin: Plugin, installed?: boolean): string;
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.installPlugin = installPlugin;
7
+ exports.checkPluginInstalled = checkPluginInstalled;
8
+ exports.renderPluginCard = renderPluginCard;
9
+ const child_process_1 = require("child_process");
10
+ const chalk_1 = __importDefault(require("chalk"));
11
+ function getPipCmd() {
12
+ // prefer pip3, fallback to pip, fallback to python -m pip
13
+ return process.platform === 'win32'
14
+ ? ['pip', 'install']
15
+ : ['pip3', 'install'];
16
+ }
17
+ async function installPlugin(plugin, onOutput) {
18
+ const start = Date.now();
19
+ const [pipBin, ...pipArgs] = getPipCmd();
20
+ const args = [...pipArgs, ...plugin.packages];
21
+ return new Promise((resolve) => {
22
+ const proc = (0, child_process_1.spawn)(pipBin, args, { stdio: ['ignore', 'pipe', 'pipe'] });
23
+ const lines = [];
24
+ const handleLine = (chunk) => {
25
+ const text = chunk.toString();
26
+ lines.push(text);
27
+ onOutput?.(text);
28
+ };
29
+ proc.stdout.on('data', handleLine);
30
+ proc.stderr.on('data', handleLine);
31
+ proc.on('close', (code) => {
32
+ resolve({
33
+ success: code === 0,
34
+ output: lines.join(''),
35
+ durationMs: Date.now() - start,
36
+ });
37
+ });
38
+ proc.on('error', (err) => {
39
+ resolve({ success: false, output: err.message, durationMs: Date.now() - start });
40
+ });
41
+ });
42
+ }
43
+ async function checkPluginInstalled(plugin) {
44
+ if (!plugin.checkCmd)
45
+ return false;
46
+ return new Promise((resolve) => {
47
+ const proc = (0, child_process_1.spawn)(plugin.checkCmd.split(' ')[0], plugin.checkCmd.split(' ').slice(1), {
48
+ stdio: 'ignore',
49
+ shell: true,
50
+ });
51
+ proc.on('close', (code) => resolve(code === 0));
52
+ proc.on('error', () => resolve(false));
53
+ });
54
+ }
55
+ function renderPluginCard(plugin, installed = false) {
56
+ const tagStr = plugin.tags
57
+ .map((t) => chalk_1.default.bgBlue.white(` ${t} `))
58
+ .join(' ');
59
+ const statusBadge = installed ? chalk_1.default.green(' ✓ installed') : '';
60
+ const pkgs = chalk_1.default.dim(`pip: ${plugin.packages.join(', ')}`);
61
+ return [
62
+ ` ${chalk_1.default.bold.cyan(plugin.name)}${statusBadge}`,
63
+ ` ${chalk_1.default.white(plugin.description)}`,
64
+ ` ${tagStr}`,
65
+ ` ${pkgs}`,
66
+ ].join('\n');
67
+ }
68
+ //# sourceMappingURL=installer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/plugins/installer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redonvn/cli",
3
- "version": "0.1.11",
3
+ "version": "0.1.13",
4
4
  "description": "RedAI CLI — kết nối máy bạn với RedAI agent runtime. AI cloud agent có thể run tools (Read/Write/Edit/Bash/Grep/Glob/WebFetch), spawn code-CLI (Claude/Codex/Gemini), và proxy LLM request qua OAuth của bạn (Claude Code / ChatGPT / Gemini / Antigravity / Qwen / Kimi / iFlow / xAI).",
5
5
  "bin": {
6
6
  "redai": "./bin/redai.js"
@@ -58,8 +58,8 @@
58
58
  "homepage": "https://github.com/redonvn/redai-cli#readme",
59
59
  "dependencies": {
60
60
  "@modelcontextprotocol/sdk": "^1.29.0",
61
- "@redonvn/cli-protocol": "file:../redai-cli-protocol/redonvn-cli-protocol-0.1.4.tgz",
62
- "@redonvn/redai-cli-sdk": "file:../redai-sdk/packages/redai-cli-sdk/redonvn-redai-cli-sdk-0.1.3.tgz",
61
+ "@redonvn/cli-protocol": "^0.1.5",
62
+ "@redonvn/redai-cli-sdk": "^0.1.4",
63
63
  "@vscode/ripgrep": "^1.15.9",
64
64
  "axios": "^1.7.7",
65
65
  "chalk": "^4.1.2",