codebuff 1.0.298 → 1.0.300

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 (119) hide show
  1. package/dist/cli-handlers/initialization-flow.d.ts +1 -0
  2. package/dist/cli-handlers/initialization-flow.js +24 -0
  3. package/dist/cli-handlers/initialization-flow.js.map +1 -0
  4. package/dist/cli-modules/command-processor.d.ts +2 -0
  5. package/dist/cli-modules/command-processor.js +112 -0
  6. package/dist/cli-modules/command-processor.js.map +1 -0
  7. package/dist/cli-modules/input-handler.d.ts +4 -0
  8. package/dist/cli-modules/input-handler.js +75 -0
  9. package/dist/cli-modules/input-handler.js.map +1 -0
  10. package/dist/cli-modules/readline-handler.d.ts +11 -0
  11. package/dist/cli-modules/readline-handler.js +158 -0
  12. package/dist/cli-modules/readline-handler.js.map +1 -0
  13. package/dist/cli-modules/signal-handler.d.ts +7 -0
  14. package/dist/cli-modules/signal-handler.js +128 -0
  15. package/dist/cli-modules/signal-handler.js.map +1 -0
  16. package/dist/cli-modules/types.d.ts +51 -0
  17. package/dist/{common/types/organization.js → cli-modules/types.js} +1 -1
  18. package/dist/cli-modules/types.js.map +1 -0
  19. package/dist/cli-modules/websocket-handler.d.ts +16 -0
  20. package/dist/cli-modules/websocket-handler.js +53 -0
  21. package/dist/cli-modules/websocket-handler.js.map +1 -0
  22. package/dist/cli.js +4 -1
  23. package/dist/cli.js.map +1 -1
  24. package/dist/code-map/__mocks__/tree-sitter-typescript.d.ts +12 -0
  25. package/dist/code-map/__mocks__/tree-sitter-typescript.d.ts.map +1 -0
  26. package/dist/code-map/__mocks__/tree-sitter-typescript.js +14 -0
  27. package/dist/code-map/__mocks__/tree-sitter-typescript.js.map +1 -0
  28. package/dist/code-map/__mocks__/wasm-mock.d.ts +2 -0
  29. package/dist/code-map/__mocks__/wasm-mock.d.ts.map +1 -0
  30. package/dist/code-map/__mocks__/wasm-mock.js +3 -0
  31. package/dist/code-map/__mocks__/wasm-mock.js.map +1 -0
  32. package/dist/code-map/__tests__/parse.test.d.ts +2 -0
  33. package/dist/code-map/__tests__/parse.test.d.ts.map +1 -0
  34. package/dist/code-map/__tests__/parse.test.js +231 -0
  35. package/dist/code-map/__tests__/parse.test.js.map +1 -0
  36. package/dist/code-map/__tests__/test-langs/consumer.d.ts +2 -0
  37. package/dist/code-map/__tests__/test-langs/consumer.d.ts.map +1 -0
  38. package/dist/code-map/__tests__/test-langs/consumer.js +6 -0
  39. package/dist/code-map/__tests__/test-langs/consumer.js.map +1 -0
  40. package/dist/code-map/__tests__/test-langs/empty.d.ts +1 -0
  41. package/dist/code-map/__tests__/test-langs/empty.d.ts.map +1 -0
  42. package/dist/code-map/__tests__/test-langs/empty.js +2 -0
  43. package/dist/code-map/__tests__/test-langs/empty.js.map +1 -0
  44. package/dist/code-map/__tests__/test-langs/test.d.ts +12 -0
  45. package/dist/code-map/__tests__/test-langs/test.d.ts.map +1 -0
  46. package/dist/code-map/__tests__/test-langs/test.js +23 -0
  47. package/dist/code-map/__tests__/test-langs/test.js.map +1 -0
  48. package/dist/code-map/__tests__/test-langs/unused.d.ts +2 -0
  49. package/dist/code-map/__tests__/test-langs/unused.d.ts.map +1 -0
  50. package/dist/code-map/__tests__/test-langs/unused.js +7 -0
  51. package/dist/code-map/__tests__/test-langs/unused.js.map +1 -0
  52. package/dist/code-map/__tests__/test-langs/utils1.d.ts +2 -0
  53. package/dist/code-map/__tests__/test-langs/utils1.d.ts.map +1 -0
  54. package/dist/code-map/__tests__/test-langs/utils1.js +7 -0
  55. package/dist/code-map/__tests__/test-langs/utils1.js.map +1 -0
  56. package/dist/code-map/__tests__/test-langs/utils2.d.ts +2 -0
  57. package/dist/code-map/__tests__/test-langs/utils2.d.ts.map +1 -0
  58. package/dist/code-map/__tests__/test-langs/utils2.js +8 -0
  59. package/dist/code-map/__tests__/test-langs/utils2.js.map +1 -0
  60. package/dist/code-map/__tests__/tree-sitter-minimal.test.d.ts +2 -0
  61. package/dist/code-map/__tests__/tree-sitter-minimal.test.d.ts.map +1 -0
  62. package/dist/code-map/__tests__/tree-sitter-minimal.test.js +79 -0
  63. package/dist/code-map/__tests__/tree-sitter-minimal.test.js.map +1 -0
  64. package/dist/code-map/jest.config.d.ts +4 -0
  65. package/dist/code-map/jest.config.d.ts.map +1 -0
  66. package/dist/code-map/jest.config.js +18 -0
  67. package/dist/code-map/jest.config.js.map +1 -0
  68. package/dist/code-map/parse.test.d.ts +2 -0
  69. package/dist/code-map/parse.test.d.ts.map +1 -0
  70. package/dist/code-map/parse.test.js +218 -0
  71. package/dist/code-map/parse.test.js.map +1 -0
  72. package/dist/code-map/scripts/tree-sitter-test.cjs +27 -0
  73. package/dist/code-map/scripts/tree-sitter-test.cjs.map +1 -0
  74. package/dist/code-map/scripts/tree-sitter-test.d.cts +2 -0
  75. package/dist/code-map/scripts/tree-sitter-test.d.cts.map +1 -0
  76. package/dist/code-map/scripts/tree-sitter-test.d.ts +2 -0
  77. package/dist/code-map/scripts/tree-sitter-test.d.ts.map +1 -0
  78. package/dist/code-map/scripts/tree-sitter-test.js +54 -0
  79. package/dist/code-map/scripts/tree-sitter-test.js.map +1 -0
  80. package/dist/code-map/test-parser.d.ts +2 -0
  81. package/dist/code-map/test-parser.d.ts.map +1 -0
  82. package/dist/code-map/test-parser.js +42 -0
  83. package/dist/code-map/test-parser.js.map +1 -0
  84. package/dist/code-map/tsconfig.tsbuildinfo +1 -1
  85. package/dist/common/actions.d.ts +3 -3
  86. package/dist/common/bigquery/client.d.ts +15 -0
  87. package/dist/common/bigquery/client.js +265 -0
  88. package/dist/common/bigquery/client.js.map +1 -0
  89. package/dist/common/bigquery/schema.d.ts +55 -0
  90. package/dist/common/bigquery/schema.js +24 -0
  91. package/dist/common/bigquery/schema.js.map +1 -0
  92. package/dist/common/constants.d.ts +1 -1
  93. package/dist/common/constants.js +4 -1
  94. package/dist/common/constants.js.map +1 -1
  95. package/dist/common/types/message.d.ts +8 -0
  96. package/dist/common/types/message.js +9 -1
  97. package/dist/common/types/message.js.map +1 -1
  98. package/dist/common/util/file-metadata.d.ts +9 -0
  99. package/dist/common/util/file-metadata.js +24 -0
  100. package/dist/common/util/file-metadata.js.map +1 -0
  101. package/dist/common/websockets/websocket-schema.d.ts +10 -10
  102. package/dist/index.js +14 -2
  103. package/dist/menu.js +7 -0
  104. package/dist/menu.js.map +1 -1
  105. package/package.json +1 -1
  106. package/dist/common/credit-delegation.d.ts +0 -19
  107. package/dist/common/credit-delegation.js +0 -97
  108. package/dist/common/credit-delegation.js.map +0 -1
  109. package/dist/common/types/organization.d.ts +0 -102
  110. package/dist/common/types/organization.js.map +0 -1
  111. package/dist/organization-context.d.ts +0 -47
  112. package/dist/organization-context.js +0 -171
  113. package/dist/organization-context.js.map +0 -1
  114. package/dist/slash-commands.d.ts +0 -7
  115. package/dist/slash-commands.js +0 -21
  116. package/dist/slash-commands.js.map +0 -1
  117. package/dist/utils/image.d.ts +0 -4
  118. package/dist/utils/image.js +0 -67
  119. package/dist/utils/image.js.map +0 -1
@@ -1,171 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OrganizationContextManager = void 0;
4
- exports.getOrganizationContext = getOrganizationContext;
5
- exports.displayOrganizationContext = displayOrganizationContext;
6
- exports.formatCreditUsage = formatCreditUsage;
7
- exports.canOverrideOrganizationCredits = canOverrideOrganizationCredits;
8
- exports.getOrganizationCommands = getOrganizationCommands;
9
- const logger_1 = require("./utils/logger");
10
- const git_1 = require("./utils/git");
11
- class OrganizationContextManager {
12
- context = {
13
- fallbackToPersonal: true,
14
- usingOrganizationCredits: false
15
- };
16
- async updateContextForRepository(repositoryUrl) {
17
- try {
18
- this.context.repositoryUrl = repositoryUrl;
19
- // Call backend to determine organization for this repo
20
- const response = await fetch('/api/user/repository-organization', {
21
- method: 'POST',
22
- headers: {
23
- 'Content-Type': 'application/json',
24
- },
25
- body: JSON.stringify({ repositoryUrl })
26
- });
27
- if (response.ok) {
28
- const { organization } = await response.json();
29
- if (organization) {
30
- this.context.repositoryOrganization = organization;
31
- this.context.usingOrganizationCredits = true;
32
- this.context.fallbackToPersonal = false;
33
- }
34
- else {
35
- this.context.repositoryOrganization = undefined;
36
- this.context.usingOrganizationCredits = false;
37
- this.context.fallbackToPersonal = true;
38
- }
39
- }
40
- else {
41
- // API call failed, fall back to personal
42
- this.context.repositoryOrganization = undefined;
43
- this.context.usingOrganizationCredits = false;
44
- this.context.fallbackToPersonal = true;
45
- }
46
- }
47
- catch (error) {
48
- logger_1.logger.error({ error }, 'Error updating organization context');
49
- this.context.repositoryOrganization = undefined;
50
- this.context.usingOrganizationCredits = false;
51
- this.context.fallbackToPersonal = true;
52
- }
53
- }
54
- getDisplayMessage() {
55
- if (this.context.repositoryOrganization) {
56
- return `Credits will be charged to ${this.context.repositoryOrganization.name}`;
57
- }
58
- return 'Credits will be charged to your personal account';
59
- }
60
- getContext() {
61
- return { ...this.context };
62
- }
63
- }
64
- exports.OrganizationContextManager = OrganizationContextManager;
65
- /**
66
- * Determines organization context for the current project
67
- */
68
- async function getOrganizationContext(client) {
69
- try {
70
- const repoMetrics = await (0, git_1.getRepoMetrics)();
71
- const repositoryUrl = repoMetrics.remoteUrl;
72
- if (!repositoryUrl) {
73
- return {
74
- usingOrganizationCredits: false,
75
- fallbackToPersonal: true,
76
- };
77
- }
78
- // Check if this repository is associated with an organization
79
- // This would typically be done via an API call to the backend
80
- // For now, we'll implement a placeholder
81
- const context = {
82
- repositoryUrl,
83
- usingOrganizationCredits: false,
84
- fallbackToPersonal: true,
85
- };
86
- // TODO: Implement API call to check organization association
87
- // const orgInfo = await client.checkOrganizationForRepository(repositoryUrl)
88
- // if (orgInfo) {
89
- // context.organizationId = orgInfo.id
90
- // context.organizationName = orgInfo.name
91
- // context.usingOrganizationCredits = true
92
- // context.organizationBalance = orgInfo.balance
93
- // }
94
- return context;
95
- }
96
- catch (error) {
97
- logger_1.logger.error({ error }, 'Error getting organization context');
98
- return {
99
- usingOrganizationCredits: false,
100
- fallbackToPersonal: true,
101
- };
102
- }
103
- }
104
- /**
105
- * Displays organization context information to the user
106
- */
107
- function displayOrganizationContext(context) {
108
- if (!context.usingOrganizationCredits) {
109
- return 'Using personal credits';
110
- }
111
- const parts = [];
112
- if (context.repositoryOrganization?.name) {
113
- parts.push(`Organization: ${context.repositoryOrganization.name}`);
114
- }
115
- if (context.organizationBalance !== undefined) {
116
- parts.push(`Org Credits: ${context.organizationBalance.toLocaleString()}`);
117
- }
118
- if (context.userBalance !== undefined) {
119
- parts.push(`Personal Credits: ${context.userBalance.toLocaleString()}`);
120
- }
121
- return parts.join(' | ');
122
- }
123
- /**
124
- * Formats credit usage information with organization context
125
- */
126
- function formatCreditUsage(creditsUsed, context) {
127
- const baseMessage = `Used ${creditsUsed.toLocaleString()} credits`;
128
- if (context.usingOrganizationCredits && context.repositoryOrganization?.name) {
129
- return `${baseMessage} (from ${context.repositoryOrganization.name})`;
130
- }
131
- return `${baseMessage} (personal)`;
132
- }
133
- /**
134
- * Checks if user can override organization credit usage
135
- */
136
- function canOverrideOrganizationCredits(context) {
137
- // Users can always fall back to personal credits if they have them
138
- return context.userBalance !== undefined && context.userBalance > 0;
139
- }
140
- /**
141
- * Gets organization-specific CLI commands
142
- */
143
- function getOrganizationCommands() {
144
- return [
145
- {
146
- command: '/org-status',
147
- description: 'Show organization credit status',
148
- handler: async () => {
149
- // TODO: Implement organization status display
150
- console.log('Organization status not yet implemented');
151
- },
152
- },
153
- {
154
- command: '/org-switch',
155
- description: 'Switch between personal and organization credits',
156
- handler: async () => {
157
- // TODO: Implement organization switching
158
- console.log('Organization switching not yet implemented');
159
- },
160
- },
161
- {
162
- command: '/org-usage',
163
- description: 'Show organization usage breakdown',
164
- handler: async () => {
165
- // TODO: Implement organization usage display
166
- console.log('Organization usage display not yet implemented');
167
- },
168
- },
169
- ];
170
- }
171
- //# sourceMappingURL=organization-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"organization-context.js","sourceRoot":"","sources":["../src/organization-context.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- export interface SlashCommand {
2
- command: string;
3
- description: string;
4
- aliases?: string[];
5
- fullCommand?: string;
6
- }
7
- export declare const slashCommands: SlashCommand[];
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.slashCommands = void 0;
4
- exports.slashCommands = [
5
- { command: '/help', fullCommand: 'help', description: 'Show help menu', aliases: ['/h'] },
6
- { command: '/login', fullCommand: 'login', description: 'Authenticate your session' },
7
- { command: '/logout', fullCommand: 'logout', description: 'Sign out of your session' },
8
- { command: '/init', fullCommand: 'init', description: 'Configure project for better results' },
9
- { command: '/diff', fullCommand: 'diff', description: 'Show last assistant change diff', aliases: ['/d'] },
10
- { command: '/undo', fullCommand: 'undo', description: 'Revert to previous checkpoint', aliases: ['/u'] },
11
- { command: '/redo', fullCommand: 'redo', description: 'Re-apply previously undone checkpoint', aliases: ['/r'] },
12
- { command: '/checkpoint save', fullCommand: 'checkpoint save', description: 'Save current state as a new checkpoint' },
13
- { command: '/checkpoint list', fullCommand: 'checkpoint list', description: 'List all saved checkpoints' },
14
- { command: '/checkpoint clear', fullCommand: 'checkpoint clear', description: 'Clear all checkpoints' },
15
- // For commands like "checkpoint <id>", direct slash command is tricky.
16
- // User would type "/checkpoint restore" then space and the id.
17
- { command: '/checkpoint restore', fullCommand: 'checkpoint restore', description: 'Restore to checkpoint <id> (type ID after)' },
18
- { command: '/usage', fullCommand: 'usage', description: 'View remaining/bonus AI credits', aliases: ['/credits'] },
19
- { command: '/exit', fullCommand: 'exit', description: 'Quit Codebuff', aliases: ['/quit', '/q'] },
20
- ];
21
- //# sourceMappingURL=slash-commands.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"slash-commands.js","sourceRoot":"","sources":["../src/slash-commands.ts"],"names":[],"mappings":";;;AAOa,QAAA,aAAa,GAAmB;IAC3C,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE;IACzF,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,2BAA2B,EAAE;IACrF,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;IACtF,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,sCAAsC,EAAE;IAC9F,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,iCAAiC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE;IAC1G,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,+BAA+B,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE;IACxG,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,uCAAuC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE;IAChH,EAAE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,wCAAwC,EAAE;IACtH,EAAE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,4BAA4B,EAAE;IAC1G,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,uBAAuB,EAAE;IACvG,uEAAuE;IACvE,+DAA+D;IAC/D,EAAE,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,oBAAoB,EAAE,WAAW,EAAE,4CAA4C,EAAE;IAChI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,iCAAiC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE;IAClH,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE;CAClG,CAAC"}
@@ -1,4 +0,0 @@
1
- export declare function extractImagesFromInput(input: string): Promise<{
2
- text: string;
3
- images: string[];
4
- }>;
@@ -1,67 +0,0 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.extractImagesFromInput = extractImagesFromInput;
30
- const fs_1 = require("fs");
31
- const path_1 = __importDefault(require("path"));
32
- const os_1 = require("os");
33
- const IMAGE_EXTENSIONS = ['.png', '.jpg', '.jpeg', '.gif'];
34
- function resolvePath(p) {
35
- if (p.startsWith('~'))
36
- return path_1.default.join((0, os_1.homedir)(), p.slice(1));
37
- return path_1.default.isAbsolute(p) ? p : path_1.default.resolve(process.cwd(), p);
38
- }
39
- async function extractImagesFromInput(input) {
40
- const tokens = input.split(/\s+/);
41
- const imagePaths = [];
42
- const textTokens = [];
43
- for (const token of tokens) {
44
- const resolved = resolvePath(token.replace(/^['\"]|['\"]$/g, ''));
45
- if (IMAGE_EXTENSIONS.some((ext) => resolved.toLowerCase().endsWith(ext)) && (0, fs_1.existsSync)(resolved)) {
46
- imagePaths.push(resolved);
47
- }
48
- else {
49
- textTokens.push(token);
50
- }
51
- }
52
- const images = [];
53
- for (const imgPath of imagePaths) {
54
- try {
55
- // @ts-ignore - optional dependency
56
- const sharp = await Promise.resolve().then(() => __importStar(require('sharp')));
57
- const buffer = await sharp.default(imgPath).png().toBuffer();
58
- images.push(buffer.toString('base64'));
59
- }
60
- catch {
61
- const data = (0, fs_1.readFileSync)(imgPath);
62
- images.push(data.toString('base64'));
63
- }
64
- }
65
- return { text: textTokens.join(' ').trim(), images };
66
- }
67
- //# sourceMappingURL=image.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"image.js","sourceRoot":"","sources":["../../src/utils/image.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,wDA4BC;AAvCD,2BAA6C;AAC7C,gDAAuB;AACvB,2BAA4B;AAE5B,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;AAE1D,SAAS,WAAW,CAAC,CAAS;IAC5B,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,cAAI,CAAC,IAAI,CAAC,IAAA,YAAO,GAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9D,OAAO,cAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA;AAChE,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAAC,KAAa;IACxD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACjC,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,MAAM,UAAU,GAAa,EAAE,CAAA;IAE/B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAA;QACjE,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;YACjG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3B,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACxB,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,KAAK,MAAM,OAAO,IAAI,UAAU,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,mCAAmC;YACnC,MAAM,KAAK,GAAG,wDAAa,OAAO,GAAC,CAAA;YACnC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAA;YAC5D,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,GAAG,IAAA,iBAAY,EAAC,OAAO,CAAC,CAAA;YAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAA;AACtD,CAAC"}