anantham-v2 2.0.3 → 2.0.4

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.
Files changed (31) hide show
  1. package/dist/bin/anantham.js +10 -1
  2. package/dist/bin/anantham.js.map +1 -1
  3. package/dist/cli/command-registry.d.ts.map +1 -1
  4. package/dist/cli/command-registry.js +118 -84
  5. package/dist/cli/command-registry.js.map +1 -1
  6. package/dist/persistence/model-catalog-cache.d.ts +86 -0
  7. package/dist/persistence/model-catalog-cache.d.ts.map +1 -0
  8. package/dist/persistence/model-catalog-cache.js +398 -0
  9. package/dist/persistence/model-catalog-cache.js.map +1 -0
  10. package/dist/persistence/user-config-manager.d.ts +4 -0
  11. package/dist/persistence/user-config-manager.d.ts.map +1 -1
  12. package/dist/persistence/user-config-manager.js +15 -0
  13. package/dist/persistence/user-config-manager.js.map +1 -1
  14. package/dist/tui/model-accordion-browser.d.ts +80 -0
  15. package/dist/tui/model-accordion-browser.d.ts.map +1 -0
  16. package/dist/tui/model-accordion-browser.js +487 -0
  17. package/dist/tui/model-accordion-browser.js.map +1 -0
  18. package/dist/tui/terminal-layout.js +1 -1
  19. package/dist/tui/terminal-logo-renderer.d.ts +63 -0
  20. package/dist/tui/terminal-logo-renderer.d.ts.map +1 -0
  21. package/dist/tui/terminal-logo-renderer.js +300 -0
  22. package/dist/tui/terminal-logo-renderer.js.map +1 -0
  23. package/dist/tui/tui-controller.d.ts +13 -0
  24. package/dist/tui/tui-controller.d.ts.map +1 -1
  25. package/dist/tui/tui-controller.js +101 -4
  26. package/dist/tui/tui-controller.js.map +1 -1
  27. package/dist/tui/tui-renderer.d.ts +3 -1
  28. package/dist/tui/tui-renderer.d.ts.map +1 -1
  29. package/dist/tui/tui-renderer.js +18 -3
  30. package/dist/tui/tui-renderer.js.map +1 -1
  31. package/package.json +1 -1
@@ -53,6 +53,14 @@ async function main() {
53
53
  else if (arg === "--session" && args[i + 1]) {
54
54
  initialSessionId = args[++i];
55
55
  }
56
+ else if (arg === "--logo" && args[i + 1]) {
57
+ const customLogo = args[++i];
58
+ process.env.ANANTHAM_LOGO_PATH = customLogo;
59
+ try {
60
+ UserConfigManager.getInstance().setLogoPath(customLogo);
61
+ }
62
+ catch { }
63
+ }
56
64
  else if (arg === "--help" || arg === "-h") {
57
65
  console.log(`
58
66
  Anantham V2 — Programmable AI Agent Operating Environment
@@ -68,13 +76,14 @@ Options:
68
76
  -e, --eval <cmd> Execute single slash command and exit
69
77
  --project <id> Initial active project ID
70
78
  --session <id> Initial active session ID
79
+ --logo <path> Custom logo image path (PNG/Sixel/ANSI)
71
80
  -h, --help Show this help message
72
81
  -v, --version Show runtime version
73
82
  `);
74
83
  process.exit(0);
75
84
  }
76
85
  else if (arg === "--version" || arg === "-v") {
77
- console.log("2.0.3");
86
+ console.log("2.0.4");
78
87
  process.exit(0);
79
88
  }
80
89
  else if (!arg.startsWith("-") && !executeCmd) {
@@ -1 +1 @@
1
- {"version":3,"file":"anantham.js","sourceRoot":"","sources":["../../src/bin/anantham.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anantham.js","sourceRoot":"","sources":["../../src/bin/anantham.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"command-registry.d.ts","sourceRoot":"","sources":["../../src/cli/command-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-registry.d.ts","sourceRoot":"","sources":["../../src/cli/command-registry.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { SlashMigrateCommand } from "./slash-migrate.js";
5
5
  import { maskSecret } from "../models/secret-store.js";
6
6
  import { UserConfigManager } from "../persistence/user-config-manager.js";
7
7
  import { TokenMetricsManager } from "../persistence/token-metrics-manager.js";
8
+ import { ModelCatalogCache } from "../persistence/model-catalog-cache.js";
8
9
  export const CURATED_MODELS_BY_PROVIDER = {
9
10
  openrouter: [
10
11
  "openrouter/anthropic/claude-3.5-sonnet",
@@ -65,7 +66,21 @@ export function getNumberedModelList(configMgr) {
65
66
  result.push({ id: customId, provider: "custom", isCustom: true });
66
67
  }
67
68
  }
68
- // 3. Fallback default models if no keys configured
69
+ // 3. Cached models from ModelCatalogCache (if any and not already present)
70
+ try {
71
+ const cached = ModelCatalogCache.getInstance().getCachedModels();
72
+ if (cached && cached.length > 0) {
73
+ for (const m of cached) {
74
+ if (!result.some((r) => r.id === m.id)) {
75
+ result.push({ id: m.id, provider: m.provider });
76
+ }
77
+ }
78
+ }
79
+ }
80
+ catch {
81
+ // safe fallback
82
+ }
83
+ // 4. Fallback default models if no keys configured
69
84
  if (result.length === 0) {
70
85
  const defaultOrder = ["openrouter", "gemini", "anthropic", "openai"];
71
86
  for (const prov of defaultOrder) {
@@ -119,7 +134,15 @@ export class CommandRegistry {
119
134
  }
120
135
  }
121
136
  getDescriptor(name) {
122
- return this.descriptors.get(name.toLowerCase());
137
+ const direct = this.descriptors.get(name.toLowerCase());
138
+ if (direct)
139
+ return direct;
140
+ for (const desc of this.descriptors.values()) {
141
+ if (desc.aliases.some((a) => a.toLowerCase() === name.toLowerCase())) {
142
+ return desc;
143
+ }
144
+ }
145
+ return undefined;
123
146
  }
124
147
  listDescriptors() {
125
148
  return Array.from(this.descriptors.values());
@@ -153,7 +176,7 @@ export class CommandRegistry {
153
176
  }, (cmd) => {
154
177
  if (cmd.args.length > 0) {
155
178
  const target = cmd.args[0].replace(/^\//, "").toLowerCase();
156
- const desc = this.descriptors.get(target);
179
+ const desc = this.getDescriptor(target);
157
180
  if (!desc) {
158
181
  return {
159
182
  success: false,
@@ -605,9 +628,9 @@ export class CommandRegistry {
605
628
  return {
606
629
  success: true,
607
630
  commandName: "version",
608
- message: "Anantham V2 v2.0.3",
631
+ message: "Anantham V2 v2.0.4",
609
632
  data: {
610
- version: "2.0.3",
633
+ version: "2.0.4",
611
634
  releaseChannel: "release",
612
635
  },
613
636
  exitRequested: false,
@@ -712,29 +735,69 @@ export class CommandRegistry {
712
735
  }
713
736
  throw new Error(`Unknown key subcommand '${sub}'. Use 'list', 'set <provider> <key>', or 'remove <provider>'.`);
714
737
  });
715
- // 15. /model
738
+ // 15. /models (Unified Model Command aliased to /model, /m, /model-list)
716
739
  this.registerCommand({
717
- name: "model",
718
- description: "Display, switch, or add active LLM models (supports /model <number>, /model add <id>)",
719
- aliases: ["m"],
720
- usage: "/model [<number> | <modelId> | add <modelId> | remove <modelId>]",
740
+ name: "models",
741
+ description: "Display, switch, search, or browse AI models (aliased to /model)",
742
+ aliases: ["model", "m", "model-list"],
743
+ usage: "/models [<number> | <modelId> | <provider> | add <id> | remove <id> | search <query> | all]",
721
744
  options: [],
722
- }, (cmd, ctrl) => {
745
+ }, async (cmd, ctrl) => {
723
746
  const configMgr = UserConfigManager.getInstance();
747
+ const cmdName = cmd.name.toLowerCase();
724
748
  const activeProjectId = ctrl.getContext().activeProjectId;
725
749
  const proj = activeProjectId ? this.projectRepo.findById(activeProjectId) : null;
726
750
  const currentModel = proj?.modelProfile || configMgr.getDefaultModel();
751
+ // 1. If run without arguments:
727
752
  if (cmd.args.length === 0) {
753
+ if (cmdName === "model") {
754
+ const list = getNumberedModelList(configMgr);
755
+ const customModels = configMgr.getCustomModels();
756
+ const customInfo = customModels.length > 0 ? `\nCustom models: ${customModels.join(", ")}` : "";
757
+ return {
758
+ success: true,
759
+ commandName: "model",
760
+ message: `Current active model: ${currentModel}\n\nQuick switch: /model <number> (e.g. /model 1)\nAdd custom: /model add <modelId>\nList models: /models${customInfo}`,
761
+ data: { model: currentModel, models: list, interactiveModal: true },
762
+ exitRequested: false,
763
+ };
764
+ }
765
+ const configuredKeys = configMgr.listKeys().filter((k) => k.configured);
766
+ const list = getNumberedModelList(configMgr);
767
+ let listBody;
768
+ if (configuredKeys.length > 0) {
769
+ const provNames = configuredKeys.map((k) => k.provider.toUpperCase()).join(", ");
770
+ const rows = list.map((item, idx) => {
771
+ const num = `[${idx + 1}]`.padEnd(4);
772
+ const isActive = item.id === currentModel ? " (ACTIVE)" : "";
773
+ const customTag = item.isCustom ? " [Custom]" : "";
774
+ return ` ${num} ${item.id}${customTag}${isActive}`;
775
+ });
776
+ listBody = `Available Models for Configured Providers (${provNames}):\n${rows.join("\n")}\n\nSwitch: /model <number> (e.g. /model 1) | /model <modelId>\nCustom: /model add <id> | Search: /models search <query>`;
777
+ }
778
+ else {
779
+ const fallbackRows = list.map((item, idx) => {
780
+ const num = `[${idx + 1}]`.padEnd(4);
781
+ const isActive = item.id === currentModel ? " (ACTIVE)" : "";
782
+ return ` ${num} ${item.id} [${item.provider}]${isActive}`;
783
+ });
784
+ listBody = `Curated AI Models (No API keys configured yet):\n${fallbackRows.join("\n")}\n\nConnect OpenRouter or other keys via:\n /key set openrouter <your-api-key>\nSwitch: /model <number> | View all: /models all`;
785
+ }
728
786
  return {
729
787
  success: true,
730
- commandName: "model",
731
- message: `Current active model: ${currentModel}\n\nQuick switch: /model <number> (e.g. /model 1)\nAdd custom: /model add <modelId>\nList models: /models`,
732
- data: { model: currentModel },
788
+ commandName: "models",
789
+ message: `Current active model: ${currentModel}\n\n${listBody}`,
790
+ data: {
791
+ model: currentModel,
792
+ activeModel: currentModel,
793
+ models: list,
794
+ interactiveModal: true,
795
+ },
733
796
  exitRequested: false,
734
797
  };
735
798
  }
736
799
  const sub = cmd.args[0].toLowerCase();
737
- // /model add <modelId>
800
+ // 2. /model add <modelId>
738
801
  if (sub === "add") {
739
802
  const modelId = cmd.args[1]?.trim();
740
803
  if (!modelId) {
@@ -748,13 +811,13 @@ export class CommandRegistry {
748
811
  }
749
812
  return {
750
813
  success: true,
751
- commandName: "model",
814
+ commandName: cmdName,
752
815
  message: `✔ Added custom model '${modelId}' and switched to it.\n Saved to ~/.anantham/config.json and active project.`,
753
816
  data: { model: modelId, custom: true },
754
817
  exitRequested: false,
755
818
  };
756
819
  }
757
- // /model remove <modelId>
820
+ // 3. /model remove <modelId> or delete
758
821
  if (sub === "remove" || sub === "delete") {
759
822
  const modelId = cmd.args[1]?.trim();
760
823
  if (!modelId) {
@@ -763,7 +826,7 @@ export class CommandRegistry {
763
826
  const removed = configMgr.removeCustomModel(modelId);
764
827
  return {
765
828
  success: true,
766
- commandName: "model",
829
+ commandName: cmdName,
767
830
  message: removed
768
831
  ? `✔ Removed custom model '${modelId}'.`
769
832
  : `Model '${modelId}' was not in custom models list.`,
@@ -771,44 +834,8 @@ export class CommandRegistry {
771
834
  exitRequested: false,
772
835
  };
773
836
  }
774
- let targetModel = cmd.args[0].trim();
775
- // Check if numeric selection (e.g. /model 1 or /model 2)
776
- if (/^\d+$/.test(targetModel)) {
777
- const num = parseInt(targetModel, 10);
778
- const list = getNumberedModelList(configMgr);
779
- if (num < 1 || num > list.length) {
780
- throw new Error(`Invalid model index [${num}]. Run '/models' to view available numbers (1-${list.length}).`);
781
- }
782
- targetModel = list[num - 1].id;
783
- }
784
- configMgr.setDefaultModel(targetModel);
785
- if (proj) {
786
- proj.modelProfile = targetModel;
787
- this.projectRepo.save(proj);
788
- }
789
- return {
790
- success: true,
791
- commandName: "model",
792
- message: `✔ Active model switched to '${targetModel}' (persisted to config & project).`,
793
- data: { model: targetModel },
794
- exitRequested: false,
795
- };
796
- });
797
- // 16. /models
798
- this.registerCommand({
799
- name: "models",
800
- description: "List curated AI models, search OpenRouter models, or list by provider",
801
- aliases: ["model-list"],
802
- usage: "/models [all | <provider> | search <query> | fetch]",
803
- options: [],
804
- }, async (cmd, ctrl) => {
805
- const configMgr = UserConfigManager.getInstance();
806
- const activeProjectId = ctrl.getContext().activeProjectId;
807
- const proj = activeProjectId ? this.projectRepo.findById(activeProjectId) : null;
808
- const activeModel = proj?.modelProfile || configMgr.getDefaultModel();
809
- const arg = cmd.args[0]?.toLowerCase();
810
- // /models search <query> or /models fetch
811
- if (arg === "search" || arg === "fetch") {
837
+ // 4. /models search <query> or /models fetch
838
+ if (sub === "search" || sub === "fetch") {
812
839
  const query = cmd.args.slice(1).join(" ").toLowerCase();
813
840
  const orKey = configMgr.getApiKey("openrouter");
814
841
  if (!orKey) {
@@ -850,8 +877,8 @@ export class CommandRegistry {
850
877
  throw new Error(`Failed to query OpenRouter live models: ${err.message}`);
851
878
  }
852
879
  }
853
- // /models all
854
- if (arg === "all") {
880
+ // 5. /models all
881
+ if (sub === "all") {
855
882
  const sections = [];
856
883
  for (const [provider, models] of Object.entries(CURATED_MODELS_BY_PROVIDER)) {
857
884
  sections.push(`[${provider.toUpperCase()}]:\n` + models.slice(0, 3).map((m) => ` • ${m}`).join("\n"));
@@ -864,50 +891,57 @@ export class CommandRegistry {
864
891
  exitRequested: false,
865
892
  };
866
893
  }
867
- // Specific provider e.g. /models anthropic or /models openrouter
868
- if (arg && CURATED_MODELS_BY_PROVIDER[arg]) {
869
- const list = CURATED_MODELS_BY_PROVIDER[arg].map((m) => {
870
- const activeTag = m === activeModel ? " (ACTIVE)" : "";
894
+ // 6. Specific provider e.g. /models anthropic or /models openrouter
895
+ if (CURATED_MODELS_BY_PROVIDER[sub]) {
896
+ const list = CURATED_MODELS_BY_PROVIDER[sub].map((m) => {
897
+ const activeTag = m === currentModel ? " (ACTIVE)" : "";
871
898
  return ` • ${m}${activeTag}`;
872
899
  }).join("\n");
873
900
  return {
874
901
  success: true,
875
- commandName: "models",
876
- message: `Models for [${arg.toUpperCase()}]:\n${list}\n\nSwitch via: /model <modelId>`,
877
- data: CURATED_MODELS_BY_PROVIDER[arg],
902
+ commandName: cmdName,
903
+ message: `Models for [${sub.toUpperCase()}]:\n${list}\n\nSwitch via: /model <modelId>`,
904
+ data: CURATED_MODELS_BY_PROVIDER[sub],
878
905
  exitRequested: false,
879
906
  };
880
907
  }
881
- // Default: List models for configured providers + custom models
882
- const configuredKeys = configMgr.listKeys().filter((k) => k.configured);
883
- const list = getNumberedModelList(configMgr);
884
- if (configuredKeys.length > 0) {
885
- const provNames = configuredKeys.map((k) => k.provider.toUpperCase()).join(", ");
886
- const rows = list.map((item, idx) => {
908
+ // 7. Numeric selection (e.g. /model 1 or /model 2)
909
+ let targetModel = cmd.args[0].trim();
910
+ if (/^\d+$/.test(targetModel)) {
911
+ const num = parseInt(targetModel, 10);
912
+ const list = getNumberedModelList(configMgr);
913
+ if (num < 1 || num > list.length) {
914
+ throw new Error(`Invalid model index [${num}]. Run '/models' to view available numbers (1-${list.length}).`);
915
+ }
916
+ targetModel = list[num - 1].id;
917
+ }
918
+ else if (cmdName === "models" && !targetModel.includes("/")) {
919
+ // If invoked as /models with an unknown provider argument, fall back gracefully to Curated AI Models list
920
+ const list = getNumberedModelList(configMgr);
921
+ const fallbackRows = list.map((item, idx) => {
887
922
  const num = `[${idx + 1}]`.padEnd(4);
888
- const isActive = item.id === activeModel ? " (ACTIVE)" : "";
889
- const customTag = item.isCustom ? " [Custom]" : "";
890
- return ` ${num} ${item.id}${customTag}${isActive}`;
923
+ const isActive = item.id === currentModel ? " (ACTIVE)" : "";
924
+ return ` ${num} ${item.id} [${item.provider}]${isActive}`;
891
925
  });
892
926
  return {
893
927
  success: true,
894
928
  commandName: "models",
895
- message: `Available Models for Configured Providers (${provNames}):\n${rows.join("\n")}\n\nSwitch: /model <number> (e.g. /model 1) | /model <modelId>\nCustom: /model add <id> | Search: /models search <query>`,
929
+ message: `Curated AI Models (Unknown provider '${cmd.args[0]}'):\n${fallbackRows.join("\n")}\n\nSwitch: /model <number> | View all: /models all`,
896
930
  data: list,
897
931
  exitRequested: false,
898
932
  };
899
933
  }
900
- // Fallback when no keys configured
901
- const fallbackRows = list.map((item, idx) => {
902
- const num = `[${idx + 1}]`.padEnd(4);
903
- const isActive = item.id === activeModel ? " (ACTIVE)" : "";
904
- return ` ${num} ${item.id} [${item.provider}]${isActive}`;
905
- });
934
+ // 8. Model ID switch (e.g. /model gpt-4o or /model openrouter/anthropic/claude-3.5-sonnet)
935
+ configMgr.setDefaultModel(targetModel);
936
+ if (proj) {
937
+ proj.modelProfile = targetModel;
938
+ this.projectRepo.save(proj);
939
+ }
906
940
  return {
907
941
  success: true,
908
- commandName: "models",
909
- message: `Curated AI Models (No API keys configured yet):\n${fallbackRows.join("\n")}\n\nConnect OpenRouter or other keys via:\n /key set openrouter <your-api-key>\nSwitch: /model <number> | View all: /models all`,
910
- data: list,
942
+ commandName: cmdName,
943
+ message: `✔ Active model switched to '${targetModel}' (persisted to config & project).`,
944
+ data: { model: targetModel },
911
945
  exitRequested: false,
912
946
  };
913
947
  });
@@ -1 +1 @@
1
- {"version":3,"file":"command-registry.js","sourceRoot":"","sources":["../../src/cli/command-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-registry.js","sourceRoot":"","sources":["../../src/cli/command-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ export interface CachedModel {
2
+ id: string;
3
+ name: string;
4
+ provider: string;
5
+ contextLength: number;
6
+ promptPricePerM: number;
7
+ completionPricePerM: number;
8
+ description?: string;
9
+ }
10
+ export interface ModelCacheData {
11
+ fetchedAt: number;
12
+ ttlMs: number;
13
+ models: CachedModel[];
14
+ }
15
+ export interface RawOpenRouterPricing {
16
+ prompt?: string | number;
17
+ completion?: string | number;
18
+ request?: string | number;
19
+ image?: string | number;
20
+ }
21
+ export interface RawOpenRouterModel {
22
+ id: string;
23
+ name?: string;
24
+ description?: string;
25
+ context_length?: number;
26
+ pricing?: RawOpenRouterPricing;
27
+ }
28
+ export interface RawOpenRouterResponse {
29
+ data?: RawOpenRouterModel[];
30
+ }
31
+ /**
32
+ * Normalizes an OpenRouter model ID into a standardized provider string.
33
+ */
34
+ export declare function normalizeProvider(rawId: string): string;
35
+ /**
36
+ * Parses per-token pricing to price per 1 Million tokens.
37
+ */
38
+ export declare function parsePricePerM(rawPrice?: string | number): number;
39
+ /**
40
+ * Persistent cache manager for OpenRouter live catalog models.
41
+ * Saves to ~/.anantham/models_cache.json with 1-hour TTL and atomic writes.
42
+ */
43
+ export declare class ModelCatalogCache {
44
+ private static instance;
45
+ private readonly storageDir;
46
+ private readonly storagePath;
47
+ private readonly ttlMs;
48
+ private memoryCache;
49
+ static readonly DEFAULT_TTL_MS = 3600000;
50
+ /**
51
+ * Curated high-performance fallback models across the 6 major providers.
52
+ */
53
+ static readonly CURATED_MODELS: CachedModel[];
54
+ constructor(customStorageDir?: string, ttlMs?: number);
55
+ static getInstance(customStorageDir?: string, ttlMs?: number): ModelCatalogCache;
56
+ static resetInstance(): void;
57
+ /**
58
+ * Reads cached models from disk if present and valid.
59
+ */
60
+ private loadFromDisk;
61
+ /**
62
+ * Synchronously returns cached models from memory or disk if available.
63
+ */
64
+ getCachedModels(): CachedModel[] | null;
65
+ /**
66
+ * Checks whether the current cache is within its valid TTL window.
67
+ */
68
+ isCacheFresh(): boolean;
69
+ /**
70
+ * Saves models atomically to memory and disk using a temporary file and atomic rename.
71
+ */
72
+ saveModels(models: CachedModel[]): void;
73
+ /**
74
+ * Clears in-memory and on-disk cache.
75
+ */
76
+ clearCache(): void;
77
+ /**
78
+ * Fetches the model catalog:
79
+ * 1. Returns fresh cache if not forceRefresh.
80
+ * 2. Tries live OpenRouter API fetch with configured key.
81
+ * 3. Falls back to disk cache if available.
82
+ * 4. Falls back to built-in curated models across all 6 providers.
83
+ */
84
+ getModels(forceRefresh?: boolean): Promise<CachedModel[]>;
85
+ }
86
+ //# sourceMappingURL=model-catalog-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-catalog-cache.d.ts","sourceRoot":"","sources":["../../src/persistence/model-catalog-cache.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,oBAAoB,CAAC;CAChC;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAcvD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAMjE;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgC;IACvD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,WAAW,CAA+B;IAElD,gBAAuB,cAAc,WAAa;IAElD;;OAEG;IACH,gBAAuB,cAAc,EAAE,WAAW,EAAE,CAyKlD;gBAEiB,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,MAAyC;WAOhF,WAAW,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,iBAAiB;WAOzE,aAAa,IAAI,IAAI;IAInC;;OAEG;IACH,OAAO,CAAC,YAAY;IAqBpB;;OAEG;IACI,eAAe,IAAI,WAAW,EAAE,GAAG,IAAI;IAQ9C;;OAEG;IACI,YAAY,IAAI,OAAO;IAW9B;;OAEG;IACI,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI;IAkC9C;;OAEG;IACI,UAAU,IAAI,IAAI;IAWzB;;;;;;OAMG;IACU,SAAS,CAAC,YAAY,UAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;CAkErE"}