@nxuss/lemma 0.4.13 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/README.md +16 -10
  2. package/dist/cjs/cli/lemma-proxy.d.ts.map +1 -1
  3. package/dist/cjs/cli/lemma-proxy.js +94 -14
  4. package/dist/cjs/cli/lemma-proxy.js.map +1 -1
  5. package/dist/cjs/mcp/index.js +198 -1
  6. package/dist/cjs/mcp/index.js.map +1 -1
  7. package/dist/cjs/observability/IdeContextSync.d.ts.map +1 -1
  8. package/dist/cjs/observability/IdeContextSync.js +22 -10
  9. package/dist/cjs/observability/IdeContextSync.js.map +1 -1
  10. package/dist/cjs/proxy/KeyManager.d.ts +3 -0
  11. package/dist/cjs/proxy/KeyManager.d.ts.map +1 -1
  12. package/dist/cjs/proxy/KeyManager.js +44 -1
  13. package/dist/cjs/proxy/KeyManager.js.map +1 -1
  14. package/dist/cjs/utils/ClipboardWatcher.d.ts +19 -0
  15. package/dist/cjs/utils/ClipboardWatcher.d.ts.map +1 -0
  16. package/dist/cjs/utils/ClipboardWatcher.js +99 -0
  17. package/dist/cjs/utils/ClipboardWatcher.js.map +1 -0
  18. package/dist/cjs/utils/ContextSqueezer.d.ts +27 -1
  19. package/dist/cjs/utils/ContextSqueezer.d.ts.map +1 -1
  20. package/dist/cjs/utils/ContextSqueezer.js +279 -6
  21. package/dist/cjs/utils/ContextSqueezer.js.map +1 -1
  22. package/dist/esm/cli/lemma-proxy.d.ts.map +1 -1
  23. package/dist/esm/cli/lemma-proxy.js +94 -14
  24. package/dist/esm/cli/lemma-proxy.js.map +1 -1
  25. package/dist/esm/mcp/index.js +198 -1
  26. package/dist/esm/mcp/index.js.map +1 -1
  27. package/dist/esm/observability/IdeContextSync.d.ts.map +1 -1
  28. package/dist/esm/observability/IdeContextSync.js +22 -10
  29. package/dist/esm/observability/IdeContextSync.js.map +1 -1
  30. package/dist/esm/proxy/KeyManager.d.ts +3 -0
  31. package/dist/esm/proxy/KeyManager.d.ts.map +1 -1
  32. package/dist/esm/proxy/KeyManager.js +44 -1
  33. package/dist/esm/proxy/KeyManager.js.map +1 -1
  34. package/dist/esm/utils/ClipboardWatcher.d.ts +19 -0
  35. package/dist/esm/utils/ClipboardWatcher.d.ts.map +1 -0
  36. package/dist/esm/utils/ClipboardWatcher.js +93 -0
  37. package/dist/esm/utils/ClipboardWatcher.js.map +1 -0
  38. package/dist/esm/utils/ContextSqueezer.d.ts +27 -1
  39. package/dist/esm/utils/ContextSqueezer.d.ts.map +1 -1
  40. package/dist/esm/utils/ContextSqueezer.js +273 -6
  41. package/dist/esm/utils/ContextSqueezer.js.map +1 -1
  42. package/package.json +2 -2
@@ -82,7 +82,7 @@ export function treeShakeCode(code, query) {
82
82
  return squeezeCode(code);
83
83
  }
84
84
  // Strip comments first to preserve tree-shaker comment markers in the final output
85
- const cleanCode = stripComments(code);
85
+ const cleanCode = stripImports(stripComments(code));
86
86
  const lines = cleanCode.split('\n');
87
87
  const resultLines = [];
88
88
  let inFunctionBody = false;
@@ -139,19 +139,58 @@ export function treeShakeCode(code, query) {
139
139
  */
140
140
  export function squeezeCode(code) {
141
141
  const withoutComments = stripComments(code);
142
- return compactWhitespace(withoutComments);
142
+ const withoutImports = stripImports(withoutComments);
143
+ return compactWhitespace(withoutImports);
144
+ }
145
+ /**
146
+ * Detects the file path from the first line comment inside a code block
147
+ */
148
+ export function detectFilePath(code) {
149
+ const firstLine = code.trim().split('\n')[0]?.trim();
150
+ if (!firstLine)
151
+ return null;
152
+ // Matches comments like:
153
+ // // src/proxy/KeyManager.ts
154
+ // # src/proxy/KeyManager.py
155
+ // /* src/proxy/KeyManager.ts */
156
+ const match = firstLine.match(/^(?:\/\/#?|#|\/\*)\s*([a-zA-Z0-9_\-\.\/\\:]{3,120})(?:\s*\*\/)?$/);
157
+ if (match && match[1]) {
158
+ return match[1];
159
+ }
160
+ return null;
143
161
  }
144
162
  /**
145
163
  * Squeezes all markdown code blocks (``` ... ```) inside a prompt string
146
164
  */
147
- export function squeezePrompt(prompt, query = '') {
165
+ export function squeezePrompt(prompt, query = '', fileHistory) {
166
+ // Apply codebase search RAG filtering first to throw away trash search snippets
167
+ const ragFiltered = filterHighDensityRAG(prompt, query);
148
168
  const codeBlockRegex = /(```[a-zA-Z0-9+#-]*\n)([\s\S]*?)(```)/g;
149
169
  const originalSize = prompt.length;
150
170
  // Clean the query by stripping all code blocks. This prevents false positive matches
151
171
  // on function names that are only present inside attached codebase files.
152
172
  const cleanQuery = query ? query.replace(codeBlockRegex, '').trim() : '';
153
- const squeezed = prompt.replace(codeBlockRegex, (match, prefix, code, suffix) => {
173
+ const squeezed = ragFiltered.replace(codeBlockRegex, (match, prefix, code, suffix) => {
154
174
  try {
175
+ const filePath = detectFilePath(code);
176
+ if (filePath && fileHistory) {
177
+ const previousContent = fileHistory.get(filePath);
178
+ if (previousContent) {
179
+ if (previousContent.trim() === code.trim()) {
180
+ // File is identical! Return a placeholder to completely omit it and save 100% tokens!
181
+ return `${prefix}// [Lemma AST: Omitted ${filePath} - identical to previous message]\n${suffix}`;
182
+ }
183
+ // File has changed! Generate an AST diff instead of squeezing full code
184
+ const diffContent = generateAstDiff(previousContent, code);
185
+ const firstLine = code.split('\n')[0] || '';
186
+ const replacement = `${firstLine}\n${diffContent}`;
187
+ // Update history with the latest version for subsequent incremental diffs
188
+ fileHistory.set(filePath, code);
189
+ return `${prefix}${replacement}\n${suffix}`;
190
+ }
191
+ // First time seeing this file, save the raw content in session history
192
+ fileHistory.set(filePath, code);
193
+ }
155
194
  const language = prefix.match(/```([a-zA-Z0-9+#-]+)/)?.[1] || '';
156
195
  if (['typescript', 'javascript', 'ts', 'js', 'tsx', 'jsx'].includes(language.toLowerCase()) && cleanQuery) {
157
196
  const squeezedCode = treeShakeCode(code, cleanQuery);
@@ -177,6 +216,82 @@ export function squeezePrompt(prompt, query = '') {
177
216
  compressionRatio
178
217
  };
179
218
  }
219
+ /**
220
+ * Extract plain text string content from message formats (string or content block arrays)
221
+ */
222
+ export function extractContentText(content) {
223
+ if (typeof content === 'string') {
224
+ return content;
225
+ }
226
+ if (Array.isArray(content)) {
227
+ return content
228
+ .map(part => {
229
+ if (part && typeof part === 'object') {
230
+ if (part.type === 'text' && typeof part.text === 'string') {
231
+ return part.text;
232
+ }
233
+ if (typeof part.text === 'string') {
234
+ return part.text;
235
+ }
236
+ }
237
+ return '';
238
+ })
239
+ .filter(Boolean)
240
+ .join('\n');
241
+ }
242
+ if (content && typeof content === 'object') {
243
+ if (typeof content.text === 'string') {
244
+ return content.text;
245
+ }
246
+ }
247
+ return '';
248
+ }
249
+ /**
250
+ * Decimates older conversational history turns by replacing them with high-density,
251
+ * single-line structured summaries of what was asked and what was resolved.
252
+ */
253
+ export function decimateHistory(messages) {
254
+ if (!messages || messages.length <= 6) {
255
+ return messages;
256
+ }
257
+ const decimated = [];
258
+ // Keep the first message (typically system prompt or initial prompt) completely intact
259
+ decimated.push(messages[0]);
260
+ // We want to summarize the "middle" turns, keeping the last 4 messages fully intact
261
+ const middleEndIndex = messages.length - 4;
262
+ const summaries = [];
263
+ let idx = 1;
264
+ while (idx < middleEndIndex) {
265
+ const msg = messages[idx];
266
+ const nextMsg = messages[idx + 1];
267
+ const userText = msg.role === 'user' ? extractContentText(msg.content) : '';
268
+ const assistantText = (nextMsg && nextMsg.role === 'assistant') ? extractContentText(nextMsg.content) : '';
269
+ if (userText) {
270
+ const userIntent = userText.length > 80 ? userText.substring(0, 80) + '...' : userText;
271
+ let assistantResolution = '';
272
+ if (assistantText) {
273
+ const cleanAsst = assistantText.replace(/```[\s\S]*?```/g, '[code block]');
274
+ assistantResolution = cleanAsst.length > 120 ? cleanAsst.substring(0, 120) + '...' : cleanAsst;
275
+ }
276
+ summaries.push(`- Turn ${Math.floor(idx / 2) + 1}: User asked: "${userIntent.trim()}" | Assistant resolved: "${assistantResolution.trim().replace(/\\s+/g, ' ')}"`);
277
+ idx += 2;
278
+ }
279
+ else {
280
+ idx++;
281
+ }
282
+ }
283
+ if (summaries.length > 0) {
284
+ decimated.push({
285
+ role: 'system',
286
+ content: `// [Lemma Conversational Context Decimator: Compressed ${summaries.length} older history turns to save tokens]\n${summaries.join('\n')}`
287
+ });
288
+ }
289
+ // Append the remaining messages
290
+ for (let i = middleEndIndex; i < messages.length; i++) {
291
+ decimated.push(messages[i]);
292
+ }
293
+ return decimated;
294
+ }
180
295
  /**
181
296
  * Prunes conversational message history to compress large repeated codeblocks in historical messages.
182
297
  * Keeps only the most recent message's codeblocks fully intact, and prunes older historical messages
@@ -186,10 +301,11 @@ export function pruneHistoryMessages(messages) {
186
301
  if (!messages || messages.length <= 2) {
187
302
  return { messages, tokensSavedEstimate: 0 };
188
303
  }
304
+ const decimatedMessages = decimateHistory(messages);
189
305
  let tokensSavedEstimate = 0;
190
- const pruned = messages.map((msg, index) => {
306
+ const pruned = decimatedMessages.map((msg, index) => {
191
307
  // Keep system messages and the last user/assistant turn completely untouched to avoid losing coherence
192
- if (index >= messages.length - 2 || msg.role === 'system') {
308
+ if (index >= decimatedMessages.length - 2 || msg.role === 'system') {
193
309
  return msg;
194
310
  }
195
311
  const codeBlockRegex = /(```[a-zA-Z0-9+#-]*\n)([\s\S]*?)(```)/g;
@@ -229,4 +345,155 @@ export function pruneHistoryMessages(messages) {
229
345
  });
230
346
  return { messages: pruned, tokensSavedEstimate };
231
347
  }
348
+ /**
349
+ * Strip import statements and require declarations from JavaScript, TypeScript, Python and CSS code
350
+ */
351
+ export function stripImports(code) {
352
+ const lines = code.split('\n');
353
+ let removedCount = 0;
354
+ const processedLines = lines.filter(line => {
355
+ const trimmed = line.trim();
356
+ // JS/TS standard imports: import ... from ... or import '...'
357
+ if (trimmed.startsWith('import ') || trimmed.startsWith('import{') || trimmed.startsWith('import*')) {
358
+ removedCount++;
359
+ return false;
360
+ }
361
+ // CommonJS require statement: const ... = require(...)
362
+ if (trimmed.includes('require(') && (trimmed.startsWith('const ') || trimmed.startsWith('let ') || trimmed.startsWith('var ') || trimmed.startsWith('import '))) {
363
+ removedCount++;
364
+ return false;
365
+ }
366
+ // Python imports: import ... or from ... import ...
367
+ if (trimmed.startsWith('import ') || trimmed.startsWith('from ') && trimmed.includes(' import ')) {
368
+ removedCount++;
369
+ return false;
370
+ }
371
+ // CSS imports: @import ...
372
+ if (trimmed.startsWith('@import ')) {
373
+ removedCount++;
374
+ return false;
375
+ }
376
+ return true;
377
+ });
378
+ if (removedCount > 0) {
379
+ processedLines.unshift(`// [Lemma Squeezer: Squeezed ${removedCount} import/dependency lines]`);
380
+ }
381
+ return processedLines.join('\n');
382
+ }
383
+ /**
384
+ * Generate a highly compact, unified line-by-line diff between two versions of code blocks
385
+ */
386
+ export function generateAstDiff(oldCode, newCode) {
387
+ const oldLines = oldCode.split('\n').map(l => l.trimEnd());
388
+ const newLines = newCode.split('\n').map(l => l.trimEnd());
389
+ const diffLines = [];
390
+ let oldIdx = 0;
391
+ let newIdx = 0;
392
+ while (oldIdx < oldLines.length || newIdx < newLines.length) {
393
+ if (oldIdx < oldLines.length && newIdx < newLines.length) {
394
+ if (oldLines[oldIdx] === newLines[newIdx]) {
395
+ oldIdx++;
396
+ newIdx++;
397
+ }
398
+ else {
399
+ // Detect a modified line vs inserted vs deleted
400
+ let matchOffset = -1;
401
+ for (let offset = 1; offset < 5; offset++) {
402
+ if (newIdx + offset < newLines.length && oldLines[oldIdx] === newLines[newIdx + offset]) {
403
+ matchOffset = offset;
404
+ break;
405
+ }
406
+ }
407
+ if (matchOffset !== -1) {
408
+ for (let i = 0; i < matchOffset; i++) {
409
+ diffLines.push(`+ ${newLines[newIdx + i]}`);
410
+ }
411
+ newIdx += matchOffset;
412
+ }
413
+ else {
414
+ let deleteOffset = -1;
415
+ for (let offset = 1; offset < 5; offset++) {
416
+ if (oldIdx + offset < oldLines.length && oldLines[oldIdx + offset] === newLines[newIdx]) {
417
+ deleteOffset = offset;
418
+ break;
419
+ }
420
+ }
421
+ if (deleteOffset !== -1) {
422
+ for (let i = 0; i < deleteOffset; i++) {
423
+ diffLines.push(`- ${oldLines[oldIdx + i]}`);
424
+ }
425
+ oldIdx += deleteOffset;
426
+ }
427
+ else {
428
+ diffLines.push(`- ${oldLines[oldIdx]}`);
429
+ diffLines.push(`+ ${newLines[newIdx]}`);
430
+ oldIdx++;
431
+ newIdx++;
432
+ }
433
+ }
434
+ }
435
+ }
436
+ else if (newIdx < newLines.length) {
437
+ diffLines.push(`+ ${newLines[newIdx]}`);
438
+ newIdx++;
439
+ }
440
+ else if (oldIdx < oldLines.length) {
441
+ diffLines.push(`- ${oldLines[oldIdx]}`);
442
+ oldIdx++;
443
+ }
444
+ }
445
+ if (diffLines.length === 0) {
446
+ return `// [Lemma AST Diff: No structural differences found]`;
447
+ }
448
+ return [
449
+ `// [Lemma AST Incremental Diff: showing only modified/inserted lines]`,
450
+ ...diffLines
451
+ ].join('\n');
452
+ }
453
+ /**
454
+ * Filters large codebase search results / RAG dumps in the prompt, keeping only the most
455
+ * semantically relevant snippets based on keyword intersection (Jaccard similarity).
456
+ */
457
+ export function filterHighDensityRAG(prompt, query) {
458
+ // If prompt is short, don't do RAG filtering
459
+ if (prompt.length < 2000 || !query)
460
+ return prompt;
461
+ const searchResultRegex = /(?:Codebase search results|Context from search|Files found from search|Selected codebase snippets|Search results):([\s\S]*?)(?=\n\n\w|\n\n#|$)/i;
462
+ const match = prompt.match(searchResultRegex);
463
+ if (!match || !match[1])
464
+ return prompt;
465
+ const rawSection = match[1];
466
+ // Snippets inside the search results section are usually separated by dashed lines, newlines, or headers
467
+ // Let's split by double newlines or markdown headers or code block borders
468
+ const snippets = rawSection.split(/(?=^#|\/\/ File:|^File:)/m).map(s => s.trim()).filter(Boolean);
469
+ if (snippets.length <= 3)
470
+ return prompt; // Don't filter if there are very few snippets
471
+ const scoredSnippets = snippets.map(snippet => {
472
+ // Calculate Jaccard similarity between snippet and user query
473
+ const wordsQuery = new Set(query.toLowerCase().match(/\w+/g) || []);
474
+ const wordsSnippet = new Set(snippet.toLowerCase().match(/\w+/g) || []);
475
+ let intersection = 0;
476
+ for (const w of wordsQuery) {
477
+ if (wordsSnippet.has(w))
478
+ intersection++;
479
+ }
480
+ const similarity = wordsQuery.size + wordsSnippet.size > 0
481
+ ? intersection / (wordsQuery.size + wordsSnippet.size - intersection)
482
+ : 0;
483
+ return { snippet, similarity };
484
+ });
485
+ // Sort by similarity descending
486
+ scoredSnippets.sort((a, b) => b.similarity - a.similarity);
487
+ // Keep only the top 3 most relevant snippets, or any snippet with a similarity above 0.05
488
+ const threshold = 0.05;
489
+ const kept = scoredSnippets.filter((item, idx) => idx < 3 || item.similarity >= threshold);
490
+ const discardedCount = scoredSnippets.length - kept.length;
491
+ if (discardedCount > 0) {
492
+ const keptSection = kept.map(k => k.snippet).join('\n\n');
493
+ const summary = `\n\n// [Lemma RAG Filter: Omitted ${discardedCount} low-relevance fuzzy-match snippets, saving ~${discardedCount * 300} context tokens]\n\n`;
494
+ const newSection = `${keptSection}${summary}`;
495
+ return prompt.replace(rawSection, newSection);
496
+ }
497
+ return prompt;
498
+ }
232
499
  //# sourceMappingURL=ContextSqueezer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContextSqueezer.js","sourceRoot":"","sources":["../../../src/utils/ContextSqueezer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContextSqueezer.js","sourceRoot":"","sources":["../../../src/utils/ContextSqueezer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,0CAA0C;IAC1C,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IAElD,wCAAwC;IACxC,iEAAiE;IACjE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACtC,uEAAuE;QACvE,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1D,8EAA8E;YAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,YAAY,KAAK,CAAC,CAAC,IAAI,YAAY,GAAG,QAAQ,EAAE,CAAC;gBACnD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;YACzC,CAAC;YACD,8BAA8B;YAC9B,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;YACxD,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,IAAI;SACR,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,uBAAuB;SACnD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,qBAAqB;SAC5D,IAAI,CAAC,IAAI,CAAC;SACV,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,oDAAoD;AAClF,CAAC;AAGD,MAAM,UAAU,yBAAyB,CAAC,OAAe;IACvD,wBAAwB;IACxB,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAEvD,qDAAqD;IACrD,MAAM,SAAS,GAAG,iHAAiH,CAAC;IACpI,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAI,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,2CAA2C;IAC3C,MAAM,UAAU,GAAG,mIAAmI,CAAC;IACvJ,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChD,IAAI,UAAU,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAED,+CAA+C;IAC/C,MAAM,WAAW,GAAG,mJAAmJ,CAAC;IACxK,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAClD,IAAI,WAAW,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,KAAa;IACvD,wCAAwC;IACxC,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACtB,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,mFAAmF;IACnF,MAAM,SAAS,GAAG,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAE1B,qEAAqE;IACrE,MAAM,aAAa,GAAa,EAAE,CAAC;IAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAE5B,IAAI,cAAc,EAAE,CAAC;YACnB,yDAAyD;YACzD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YAC/C,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YAChD,eAAe,IAAI,KAAK,GAAG,MAAM,CAAC;YAElC,IAAI,eAAe,IAAI,CAAC,EAAE,CAAC;gBACzB,cAAc,GAAG,KAAK,CAAC;gBACvB,WAAW,CAAC,IAAI,CAAC,uDAAuD,iBAAiB,GAAG,CAAC,kBAAkB,CAAC,CAAC;gBACjH,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,eAAe;YAC3C,CAAC;iBAAM,CAAC;gBACN,iBAAiB,EAAE,CAAC;YACtB,CAAC;YACD,SAAS;QACX,CAAC;QAED,qCAAqC;QACrC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,aAAa,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;QAED,kFAAkF;QAClF,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,oDAAoD;YACpD,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,gBAAgB,CAAC,CAAC;YAE7D,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;gBAClE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,eAAe;gBAEzC,2EAA2E;gBAC3E,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBACnE,cAAc,GAAG,IAAI,CAAC;oBACtB,eAAe,GAAG,CAAC,CAAC;oBACpB,iBAAiB,GAAG,CAAC,CAAC;oBACtB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAED,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,OAAO,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;IACrD,OAAO,iBAAiB,CAAC,cAAc,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;IACrD,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,yBAAyB;IACzB,6BAA6B;IAC7B,4BAA4B;IAC5B,gCAAgC;IAChC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,kEAAkE,CAAC,CAAC;IAClG,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,MAAc,EACd,QAAgB,EAAE,EAClB,WAAiC;IAEjC,gFAAgF;IAChF,MAAM,WAAW,GAAG,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAExD,MAAM,cAAc,GAAG,wCAAwC,CAAC;IAEhE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IAEnC,qFAAqF;IACrF,0EAA0E;IAC1E,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzE,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;QACnF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;gBAC5B,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAClD,IAAI,eAAe,EAAE,CAAC;oBACpB,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC3C,sFAAsF;wBACtF,OAAO,GAAG,MAAM,0BAA0B,QAAQ,sCAAsC,MAAM,EAAE,CAAC;oBACnG,CAAC;oBAED,wEAAwE;oBACxE,MAAM,WAAW,GAAG,eAAe,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;oBAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC5C,MAAM,WAAW,GAAG,GAAG,SAAS,KAAK,WAAW,EAAE,CAAC;oBAEnD,0EAA0E;oBAC1E,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBAEhC,OAAO,GAAG,MAAM,GAAG,WAAW,KAAK,MAAM,EAAE,CAAC;gBAC9C,CAAC;gBAED,uEAAuE;gBACvE,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAClC,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACjE,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;gBAC1G,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBACrD,OAAO,GAAG,MAAM,GAAG,YAAY,KAAK,MAAM,EAAE,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;gBACvC,OAAO,GAAG,MAAM,GAAG,YAAY,KAAK,MAAM,EAAE,CAAC;YAC/C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC,CAAC,iDAAiD;QACjE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC;IACrC,MAAM,gBAAgB,GAAG,YAAY,GAAG,CAAC;QACvC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,GAAG,YAAY,CAAC,GAAG,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC,CAAC;IAEN,OAAO;QACL,QAAQ;QACR,YAAY;QACZ,YAAY;QACZ,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAY;IAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO;aACX,GAAG,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC1D,OAAO,IAAI,CAAC,IAAI,CAAC;gBACnB,CAAC;gBACD,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAClC,OAAO,IAAI,CAAC,IAAI,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IACD,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC3C,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,OAAO,CAAC,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,QAAe;IAC7C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,SAAS,GAAU,EAAE,CAAC;IAC5B,uFAAuF;IACvF,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5B,oFAAoF;IACpF,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAE3C,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,OAAO,GAAG,GAAG,cAAc,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC1B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,MAAM,aAAa,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE3G,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;YACvF,IAAI,mBAAmB,GAAG,EAAE,CAAC;YAC7B,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;gBAC3E,mBAAmB,GAAG,SAAS,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACjG,CAAC;YAED,SAAS,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,kBAAkB,UAAU,CAAC,IAAI,EAAE,4BAA4B,mBAAmB,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YACpK,GAAG,IAAI,CAAC,CAAC;QACX,CAAC;aAAM,CAAC;YACN,GAAG,EAAE,CAAC;QACR,CAAC;IACH,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,SAAS,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,0DAA0D,SAAS,CAAC,MAAM,yCAAyC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACnJ,CAAC,CAAC;IACL,CAAC;IAED,gCAAgC;IAChC,KAAK,IAAI,CAAC,GAAG,cAAc,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAe;IAClD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC,EAAE,CAAC;IAC9C,CAAC;IAED,MAAM,iBAAiB,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAEpD,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAC5B,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAClD,uGAAuG;QACvG,IAAI,KAAK,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnE,OAAO,GAAG,CAAC;QACb,CAAC;QAED,MAAM,cAAc,GAAG,wCAAwC,CAAC;QAEhE,MAAM,WAAW,GAAG,CAAC,IAAY,EAAU,EAAE;YAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAC3C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,KAAa,EAAE,MAAc,EAAE,IAAY,EAAE,MAAc,EAAE,EAAE;oBAClG,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;wBACtB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBACtC,MAAM,OAAO,GAAG,yCAAyC,KAAK,CAAC,MAAM,+CAA+C,CAAC;wBACrH,mBAAmB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;wBACtD,OAAO,GAAG,MAAM,GAAG,OAAO,KAAK,MAAM,EAAE,CAAC;oBAC1C,CAAC;oBACD,OAAO,KAAK,CAAC;gBACf,CAAC,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QACvD,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;gBAC/C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACrC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC1D,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnD,CAAC;oBACD,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAClC,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnD,CAAC;gBACH,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QACzC,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,8DAA8D;QAC9D,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACpG,YAAY,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;QACD,uDAAuD;QACvD,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAChK,YAAY,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;QACD,oDAAoD;QACpD,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACjG,YAAY,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;QACD,2BAA2B;QAC3B,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,YAAY,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACrB,cAAc,CAAC,OAAO,CAAC,gCAAgC,YAAY,2BAA2B,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,OAAe;IAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAE3D,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,OAAO,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC5D,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;YACzD,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1C,MAAM,EAAE,CAAC;gBACT,MAAM,EAAE,CAAC;YACX,CAAC;iBAAM,CAAC;gBACN,gDAAgD;gBAChD,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC;gBACrB,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;oBAC1C,IAAI,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;wBACxF,WAAW,GAAG,MAAM,CAAC;wBACrB,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;oBACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;wBACrC,SAAS,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC9C,CAAC;oBACD,MAAM,IAAI,WAAW,CAAC;gBACxB,CAAC;qBAAM,CAAC;oBACN,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;oBACtB,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;wBAC1C,IAAI,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;4BACxF,YAAY,GAAG,MAAM,CAAC;4BACtB,MAAM;wBACR,CAAC;oBACH,CAAC;oBAED,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;wBACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;4BACtC,SAAS,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;wBAC9C,CAAC;wBACD,MAAM,IAAI,YAAY,CAAC;oBACzB,CAAC;yBAAM,CAAC;wBACN,SAAS,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;wBACxC,SAAS,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;wBACxC,MAAM,EAAE,CAAC;wBACT,MAAM,EAAE,CAAC;oBACX,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpC,SAAS,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,EAAE,CAAC;QACX,CAAC;aAAM,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpC,SAAS,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,EAAE,CAAC;QACX,CAAC;IACH,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,sDAAsD,CAAC;IAChE,CAAC;IAED,OAAO;QACL,uEAAuE;QACvE,GAAG,SAAS;KACb,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc,EAAE,KAAa;IAChE,6CAA6C;IAC7C,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,MAAM,CAAC;IAElD,MAAM,iBAAiB,GAAG,iJAAiJ,CAAC;IAC5K,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC9C,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC;IAEvC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE5B,yGAAyG;IACzG,2EAA2E;IAC3E,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClG,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC,CAAC,8CAA8C;IAEvF,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC5C,8DAA8D;QAC9D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACpE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAExE,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,YAAY,EAAE,CAAC;QAC1C,CAAC;QAED,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,GAAG,CAAC;YACxD,CAAC,CAAC,YAAY,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC;YACrE,CAAC,CAAC,CAAC,CAAC;QAEN,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,gCAAgC;IAChC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;IAE3D,0FAA0F;IAC1F,MAAM,SAAS,GAAG,IAAI,CAAC;IACvB,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC;IAC3F,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAE3D,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,qCAAqC,cAAc,gDAAgD,cAAc,GAAG,GAAG,sBAAsB,CAAC;QAE9J,MAAM,UAAU,GAAG,GAAG,WAAW,GAAG,OAAO,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nxuss/lemma",
3
- "version": "0.4.13",
3
+ "version": "0.5.0",
4
4
  "description": "Intelligent AI Gateway for IDEs & Agents — Semantic cache, Privacy Firewall, and Autonomous Cost-Optimization.",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -162,7 +162,7 @@
162
162
  "dependencies": {
163
163
  "@chroma-core/default-embed": "^0.1.9",
164
164
  "@modelcontextprotocol/sdk": "^1.29.0",
165
- "@nxuss/lemma": "^0.4.12",
165
+ "@nxuss/lemma": "^0.5.0",
166
166
  "@types/cors": "^2.8.19",
167
167
  "axios": "^1.6.0",
168
168
  "commander": "^14.0.3",