@maadb/core 0.7.16 → 0.7.18

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 (43) hide show
  1. package/README.md +5 -4
  2. package/dist/backend/adapter.d.ts +13 -0
  3. package/dist/backend/adapter.d.ts.map +1 -1
  4. package/dist/backend/sqlite/index.d.ts +3 -0
  5. package/dist/backend/sqlite/index.d.ts.map +1 -1
  6. package/dist/backend/sqlite/index.js +127 -3
  7. package/dist/backend/sqlite/index.js.map +1 -1
  8. package/dist/backend/sqlite/schema.d.ts +1 -1
  9. package/dist/backend/sqlite/schema.d.ts.map +1 -1
  10. package/dist/backend/sqlite/schema.js +25 -1
  11. package/dist/backend/sqlite/schema.js.map +1 -1
  12. package/dist/engine/indexing.d.ts.map +1 -1
  13. package/dist/engine/indexing.js +10 -0
  14. package/dist/engine/indexing.js.map +1 -1
  15. package/dist/engine/maintenance.d.ts.map +1 -1
  16. package/dist/engine/maintenance.js +34 -23
  17. package/dist/engine/maintenance.js.map +1 -1
  18. package/dist/engine/reads.d.ts.map +1 -1
  19. package/dist/engine/reads.js +17 -26
  20. package/dist/engine/reads.js.map +1 -1
  21. package/dist/errors.d.ts +1 -1
  22. package/dist/errors.d.ts.map +1 -1
  23. package/dist/errors.js.map +1 -1
  24. package/dist/mcp/heavy-ops.d.ts +93 -0
  25. package/dist/mcp/heavy-ops.d.ts.map +1 -0
  26. package/dist/mcp/heavy-ops.js +254 -0
  27. package/dist/mcp/heavy-ops.js.map +1 -0
  28. package/dist/mcp/memory-pressure.d.ts +9 -0
  29. package/dist/mcp/memory-pressure.d.ts.map +1 -1
  30. package/dist/mcp/memory-pressure.js +16 -0
  31. package/dist/mcp/memory-pressure.js.map +1 -1
  32. package/dist/mcp/server.d.ts.map +1 -1
  33. package/dist/mcp/server.js +5 -0
  34. package/dist/mcp/server.js.map +1 -1
  35. package/dist/mcp/tools/maintain.d.ts.map +1 -1
  36. package/dist/mcp/tools/maintain.js +2 -1
  37. package/dist/mcp/tools/maintain.js.map +1 -1
  38. package/dist/mcp/with-session.d.ts.map +1 -1
  39. package/dist/mcp/with-session.js +40 -1
  40. package/dist/mcp/with-session.js.map +1 -1
  41. package/dist/types.d.ts +16 -0
  42. package/dist/types.d.ts.map +1 -1
  43. package/package.json +1 -1
@@ -27,32 +27,43 @@ export async function validate(ctx, docId, options) {
27
27
  }
28
28
  return ok(report);
29
29
  }
30
- const allDocs = ctx.backend.findDocuments({ limit: 100000 });
31
30
  const report = { total: 0, valid: 0, invalid: 0, errors: [] };
32
31
  const drift = includePrecision ? [] : undefined;
33
- for (const match of allDocs) {
34
- report.total++;
35
- const doc = ctx.backend.getDocument(match.docId);
36
- if (!doc)
37
- continue;
38
- const schema = ctx.schemaStore.getSchemaForType(doc.docType);
39
- if (!schema) {
40
- report.invalid++;
41
- report.errors.push({ docId: doc.docId, errors: [{ field: 'doc_type', message: 'No schema found' }] });
42
- continue;
43
- }
44
- const frontmatter = await readFrontmatter(ctx.projectRoot, doc);
45
- const result = validateFrontmatter(frontmatter, schema, ctx.registry, undefined, { mode: 'audit' });
46
- if (result.valid) {
47
- report.valid++;
48
- }
49
- else {
50
- report.invalid++;
51
- report.errors.push({ docId: doc.docId, errors: result.errors.map(e => ({ field: e.field, message: e.message })) });
52
- }
53
- if (drift) {
54
- drift.push(...collectPrecisionDrift(doc.docId, frontmatter, schema));
32
+ // 0.7.17 page through every live record instead of a single capped fetch.
33
+ // The prior findDocuments({ limit: 100000 }) silently dropped records past
34
+ // 100k from the audit, undercounting on large projects. PAGE-sized batches
35
+ // keep the audit unbounded while bounding per-iteration memory.
36
+ const PAGE = 1000;
37
+ for (let offset = 0;; offset += PAGE) {
38
+ const page = ctx.backend.findDocuments({ limit: PAGE, offset });
39
+ if (page.length === 0)
40
+ break;
41
+ for (const match of page) {
42
+ report.total++;
43
+ const doc = ctx.backend.getDocument(match.docId);
44
+ if (!doc)
45
+ continue;
46
+ const schema = ctx.schemaStore.getSchemaForType(doc.docType);
47
+ if (!schema) {
48
+ report.invalid++;
49
+ report.errors.push({ docId: doc.docId, errors: [{ field: 'doc_type', message: 'No schema found' }] });
50
+ continue;
51
+ }
52
+ const frontmatter = await readFrontmatter(ctx.projectRoot, doc);
53
+ const result = validateFrontmatter(frontmatter, schema, ctx.registry, undefined, { mode: 'audit' });
54
+ if (result.valid) {
55
+ report.valid++;
56
+ }
57
+ else {
58
+ report.invalid++;
59
+ report.errors.push({ docId: doc.docId, errors: result.errors.map(e => ({ field: e.field, message: e.message })) });
60
+ }
61
+ if (drift) {
62
+ drift.push(...collectPrecisionDrift(doc.docId, frontmatter, schema));
63
+ }
55
64
  }
65
+ if (page.length < PAGE)
66
+ break;
56
67
  }
57
68
  if (drift)
58
69
  report.precisionDrift = drift;
@@ -1 +1 @@
1
- {"version":3,"file":"maintenance.js","sourceRoot":"","sources":["../../src/engine/maintenance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"maintenance.js","sourceRoot":"","sources":["../../src/engine/maintenance.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reads.d.ts","sourceRoot":"","sources":["../../src/engine/reads.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reads.d.ts","sourceRoot":"","sources":["../../src/engine/reads.ts"],"names":[],"mappings":"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"}
@@ -7,11 +7,10 @@ import { existsSync } from 'node:fs';
7
7
  import path from 'node:path';
8
8
  import { createHash } from 'node:crypto';
9
9
  import { ok, singleErr } from '../errors.js';
10
- import { validateFrontmatter } from '../schema/index.js';
11
10
  import { logger } from './logger.js';
12
11
  import { docId as toDocId, docType as toDocType, filePath as toFilePath, resolveSystemSortKey, SYSTEM_SORT_KEY_ALIASES, } from '../types.js';
13
12
  import { extractBody } from '../writer/index.js';
14
- import { readFrontmatter, readFrontmatterSync, readBlockContent, collectMarkdownFiles } from './helpers.js';
13
+ import { readFrontmatter, readBlockContent, collectMarkdownFiles } from './helpers.js';
15
14
  export async function getDocument(ctx, id, depth, blockIdOrHeading) {
16
15
  const doc = ctx.backend.getDocument(id);
17
16
  if (!doc)
@@ -142,7 +141,7 @@ export function expandFilters(raw) {
142
141
  // populate field_index.numeric_value) so the backend orders on the right column.
143
142
  function validateSortBy(ctx, sortBy, docType) {
144
143
  if (resolveSystemSortKey(sortBy) !== null)
145
- return ok({ numeric: false });
144
+ return ok({ numeric: false, isList: false });
146
145
  if (!docType) {
147
146
  return singleErr('UNSUPPORTED_SORT_FIELD', `sortBy '${sortBy}' is not a system sort key (${SYSTEM_SORT_KEY_ALIASES.join(', ')}). ` +
148
147
  `Provide docType to sort by an indexed schema field.`, undefined, { provided: sortBy, systemKeys: SYSTEM_SORT_KEY_ALIASES });
@@ -168,7 +167,10 @@ function validateSortBy(ctx, sortBy, docType) {
168
167
  `Indexed fields available: [${indexedFields.join(', ')}]. ` +
169
168
  `Or use a system sort key (${SYSTEM_SORT_KEY_ALIASES.join(', ')}).`, undefined, { provided: sortBy, docType, indexedFields, systemKeys: SYSTEM_SORT_KEY_ALIASES });
170
169
  }
171
- return ok({ numeric: field.type === 'number' || field.type === 'amount' });
170
+ return ok({
171
+ numeric: field.type === 'number' || field.type === 'amount',
172
+ isList: field.type === 'list',
173
+ });
172
174
  }
173
175
  export function findDocuments(ctx, query) {
174
176
  // 0.7.1 R2 — validate + expand filters into atomic per-field arrays.
@@ -180,13 +182,15 @@ export function findDocuments(ctx, query) {
180
182
  // indexed schema field of the requested docType. Unknown or unindexed keys
181
183
  // reject up front so callers don't silently get all-NULL ordering.
182
184
  let sortNumeric = false;
185
+ let sortListField = false;
183
186
  if (query.sortBy !== undefined) {
184
187
  const sortValidation = validateSortBy(ctx, query.sortBy, query.docType);
185
188
  if (!sortValidation.ok)
186
189
  return sortValidation;
187
190
  sortNumeric = sortValidation.value.numeric;
191
+ sortListField = sortValidation.value.isList;
188
192
  }
189
- let effectiveQuery = { ...query, filters: expanded.value, sortNumeric };
193
+ let effectiveQuery = { ...query, filters: expanded.value, sortNumeric, sortListField };
190
194
  let limitClamped;
191
195
  if (query.limit !== undefined && query.limit > MAX_QUERY_LIMIT) {
192
196
  limitClamped = { requested: query.limit, applied: MAX_QUERY_LIMIT };
@@ -269,28 +273,15 @@ export function summary(ctx) {
269
273
  count: stats.documentCountByType[rt.name] ?? 0,
270
274
  sampleIds: ctx.backend.getSampleDocIds(rt.name, 3).map(id => id),
271
275
  }));
272
- // Warnings: broken refs (cheap SQL) + validation errors (scan all docs)
276
+ // Warnings: broken refs + invalid records, both cheap SQL counts. 0.7.17 —
277
+ // validationErrors now reads the per-doc validity persisted at index time
278
+ // (countInvalidDocuments) instead of re-reading and re-validating every file
279
+ // on each summary() call. This is uncapped (the prior inline scan silently
280
+ // stopped at 100k docs) and O(1) rather than O(N file reads). Index-time
281
+ // validity is structural (precision enforcement is write-time only) — the
282
+ // same posture as the read-mode validation this replaced.
273
283
  const brokenRefs = ctx.backend.countBrokenRefs();
274
- let validationErrors = 0;
275
- const allDocs = ctx.backend.findDocuments({ limit: 100000 });
276
- for (const match of allDocs) {
277
- const doc = ctx.backend.getDocument(match.docId);
278
- if (!doc)
279
- continue;
280
- const schema = ctx.schemaStore.getSchemaForType(doc.docType);
281
- if (!schema) {
282
- validationErrors++;
283
- continue;
284
- }
285
- const fm = readFrontmatterSync(ctx.projectRoot, doc);
286
- if (fm) {
287
- // Read mode: precision enforcement skipped (historical records must
288
- // never be judged on the way out).
289
- const result = validateFrontmatter(fm, schema, ctx.registry, undefined, { mode: 'read' });
290
- if (!result.valid)
291
- validationErrors++;
292
- }
293
- }
284
+ const validationErrors = ctx.backend.countInvalidDocuments();
294
285
  const emptyProject = ctx.registry.types.size === 0 && stats.totalDocuments === 0;
295
286
  return {
296
287
  types,
@@ -1 +1 @@
1
- {"version":3,"file":"reads.js","sourceRoot":"","sources":["../../src/engine/reads.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reads.js","sourceRoot":"","sources":["../../src/engine/reads.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,kEAAkE;AAClE,mDAAmD;AACnD,+EAA+E;AAE/E,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,EAAE,EAAE,SAAS,EAAe,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,KAAK,IAAI,OAAO,EAChB,OAAO,IAAI,SAAS,EACpB,QAAQ,IAAI,UAAU,EACtB,oBAAoB,EACpB,uBAAuB,GAOxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAwBjD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEvF,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,GAAkB,EAClB,EAAS,EACT,KAA8B,EAC9B,gBAAqC;IAErC,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC,gBAAgB,EAAE,aAAa,EAAY,aAAa,CAAC,CAAC;IAErF,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAEhE,MAAM,MAAM,GAAc;QACxB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,KAAK;QACL,WAAW;KACZ,CAAC;IAEF,IAAI,KAAK,KAAK,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC3B,CAAC,CAAC,EAAa,KAAK,gBAAgB;YACrC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,gBAAgB,CAAC,WAAW,EAAE,CAC3D,CAAC;QACF,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC;YACnH,MAAM,CAAC,KAAK,GAAG;gBACb,EAAE,EAAE,KAAK,CAAC,EAAmB;gBAC7B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO;aACR,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,QAAkB,CAAC,CAAC;QACnE,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,CAAC,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,kBAAkB,EAAE,sCAAsC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrJ,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;AACpB,CAAC;AAED,6EAA6E;AAC7E,+EAA+E;AAC/E,6EAA6E;AAC7E,+CAA+C;AAC/C,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AACnC,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAExC,6EAA6E;AAC7E,+CAA+C;AAC/C,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;AAE7F,8EAA8E;AAC9E,kDAAkD;AAClD,2CAA2C;AAC3C,kDAAkD;AAClD,qFAAqF;AACrF,oFAAoF;AACpF,kFAAkF;AAClF,yBAAyB;AACzB,SAAS,oBAAoB,CAAC,KAAa,EAAE,GAAY;IACvD,wBAAwB;IACxB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,eAAe;IACf,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,SAAS,CAAC,oBAAoB,EAAE,qBAAqB,KAAK,qBAAqB,CAAC,CAAC;QAC1F,CAAC;QACD,MAAM,GAAG,GAAsB,EAAE,CAAC;QAClC,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAChD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,KAAK,CAAC;YAC5B,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,wBAAwB;IACxB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,4CAA4C;QAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,GAAG,GAAG,GAAwC,CAAC;IACrD,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC,mBAAmB,EAAE,qBAAqB,KAAK,4BAA4B,CAAC,CAAC;IAChG,CAAC;IAED,kCAAkC;IAClC,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,SAAS,CAAC,wBAAwB,EAAE,sBAAsB,KAAK,4BAA4B,CAAC,CAAC;QACtG,CAAC;QACD,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,KAA2B,CAAC;QACjD,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YACvE,OAAO,SAAS,CAAC,wBAAwB,EAAE,sBAAsB,KAAK,4BAA4B,CAAC,CAAC;QACtG,CAAC;QACD,qFAAqF;QACrF,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;YAChE,OAAO,SAAS,CAAC,wBAAwB,EAAE,sBAAsB,KAAK,UAAU,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;QACtG,CAAC;QACD,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;YAChE,OAAO,SAAS,CAAC,wBAAwB,EAAE,sBAAsB,KAAK,WAAW,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;QAC1G,CAAC;QACD,OAAO,EAAE,CAAC;YACR,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAqB,EAAE;YAC3C,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAqB,EAAE;SAC5C,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QACnC,OAAO,SAAS,CAAC,mBAAmB,EAAE,sBAAsB,GAAG,CAAC,EAAE,gBAAgB,KAAK,GAAG,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,EAAE,CAAC,CAAC,GAAsB,CAAC,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,GAAwC;IAExC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,GAAG,GAAsC,EAAE,CAAC;IAClD,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,MAAM,CAAC;QAC9B,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IAC5B,CAAC;IACD,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;AACjB,CAAC;AAED,4EAA4E;AAC5E,6EAA6E;AAC7E,6EAA6E;AAC7E,6EAA6E;AAC7E,iFAAiF;AACjF,SAAS,cAAc,CACrB,GAAkB,EAClB,MAAc,EACd,OAA4B;IAE5B,IAAI,oBAAoB,CAAC,MAAM,CAAC,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAExF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC,wBAAwB,EACvC,WAAW,MAAM,+BAA+B,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YACvF,qDAAqD,EACrD,SAAS,EACT,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,uBAAuB,EAAE,CAC1D,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC,wBAAwB,EACvC,WAAW,MAAM,wDAAwD,OAAO,IAAI,EACpF,SAAS,EACT,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAC9B,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,aAAa,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;aAC9C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpB,OAAO,SAAS,CAAC,wBAAwB,EACvC,WAAW,MAAM,gCAAgC,OAAO,KAAK;YAC7D,0BAA0B,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB;YACrF,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAChC,SAAS,EACT,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,uBAAuB,EAAE,CAClF,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;aAC9C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpB,OAAO,SAAS,CAAC,wBAAwB,EACvC,WAAW,MAAM,4BAA4B,OAAO,qBAAqB;YACzE,8BAA8B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YAC3D,6BAA6B,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EACnE,SAAS,EACT,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,uBAAuB,EAAE,CAClF,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC;QACR,OAAO,EAAE,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;QAC3D,MAAM,EAAE,KAAK,CAAC,IAAI,KAAK,MAAM;KAC9B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAkB,EAAE,KAAoB;IACpE,qEAAqE;IACrE,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,OAA8C,CAAC,CAAC;IACrF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAElC,wEAAwE;IACxE,sEAAsE;IACtE,2EAA2E;IAC3E,mEAAmE;IACnE,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,cAAc,GAAG,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACxE,IAAI,CAAC,cAAc,CAAC,EAAE;YAAE,OAAO,cAAc,CAAC;QAC9C,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC;QAC3C,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC;IAC9C,CAAC;IAED,IAAI,cAAc,GAAkB,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAY,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;IAC7G,IAAI,YAAgE,CAAC;IACrE,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,GAAG,eAAe,EAAE,CAAC;QAC/D,YAAY,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QACpE,cAAc,GAAG,EAAE,GAAG,cAAc,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IACjE,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IAEzD,IAAI,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;QAC9E,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,KAAe,CAAC,IAAI,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAe,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAC9C,IAAI,YAAY;QAAE,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;IACrD,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAkB,EAAE,KAAkB;IAClE,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,GAAkB,EAClB,EAAS,EACT,SAA2C,EAC3C,KAA6B;IAE7B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAEzD,gDAAgD;IAChD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAS,CAAC;IACpC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,WAAW,KAAK,EAAE;YAAE,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;;YACvD,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;IAE/D,MAAM,QAAQ,GAA8B,EAAE,CAAC;IAC/C,MAAM,QAAQ,GAA8B,EAAE,CAAC;IAE/C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,WAAW,KAAK,EAAE,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,UAAU,GAAG,SAAS,EAAE,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;YAC9D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,UAAU,GAAG,SAAS,EAAE,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;YAC9D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAkB;IACzC,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAErC,MAAM,aAAa,GAAG,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI,EAAE,EAAE,CAAC,IAAc;QACvB,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,QAAQ,EAAE,EAAE,CAAC,QAAQ;QACrB,MAAM,EAAE,EAAE,CAAC,SAAmB;QAC9B,QAAQ,EAAE,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,IAAc,CAAC,IAAI,CAAC;KAC5D,CAAC,CAAC,CAAC;IAEJ,OAAO;QACL,aAAa;QACb,oBAAoB,EAAE;YACpB,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS;YACjD,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO;SACvE;QACD,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,gBAAgB,EAAE,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC;KACtD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAkB;IACxC,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAErC,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACxD,IAAI,EAAE,EAAE,CAAC,IAAc;QACvB,KAAK,EAAE,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,IAAc,CAAC,IAAI,CAAC;QACxD,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAY,CAAC;KAC3E,CAAC,CAAC,CAAC;IAEJ,2EAA2E;IAC3E,0EAA0E;IAC1E,6EAA6E;IAC7E,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,0DAA0D;IAC1D,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;IACjD,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAE7D,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,cAAc,KAAK,CAAC,CAAC;IAEjF,OAAO;QACL,KAAK;QACL,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,QAAQ,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE;QAC1C,YAAY;QACZ,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,IAAI;QAChE,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAkB,EAAE,EAAW;IACvD,OAAO,GAAG,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAkB,EAAE,EAAW;IACxD,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3C,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC,cAAc,EAAE,SAAS,EAAY,mBAAmB,CAAC,CAAC;IAEzF,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC,kBAAkB,EAAE,uBAAuB,EAAY,GAAG,CAAC,CAAC;IAE1F,MAAM,MAAM,GAA+B,EAAE,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAC1C,IAAI,OAAO,GAAG,KAAK,CAAC,IAAc,CAAC;QACnC,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO,GAAG,UAAU,KAAK,CAAC,MAAgB,EAAE,CAAC;QACvF,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC5C,OAAO,GAAG,WAAW,KAAK,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,MAAM;gBAAE,OAAO,IAAI,OAAO,KAAK,CAAC,MAAgB,EAAE,CAAC;QAC/D,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAEhH,2EAA2E;QAC3E,qEAAqE;QACrE,MAAM,KAAK,GAAuC;YAChD,IAAI;YACJ,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;YACxC,OAAO,EAAE,KAAK,CAAC,KAAK;SACrB,CAAC;QACF,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QACrF,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAgB,CAAC;QAC/F,IAAI,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAChD,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS;YAAE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC;QACxG,2DAA2D;QAC3D,IAAI,KAAK,CAAC,cAAc,KAAK,IAAI;YAAE,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;QAC/E,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI;YAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAChE,IAAI,KAAK,CAAC,gBAAgB,KAAK,IAAI;YAAE,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC;QACrF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,MAAM,MAAM,GAAqB;QAC/B,IAAI,EAAE,EAAY;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAkB;QACpC,SAAS,EAAE,OAAO,CAAC,SAAmB;QACtC,MAAM;KACP,CAAC;IACF,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACzF,CAAC;IACD,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;AACpB,CAAC;AAED,yEAAyE;AACzE,yEAAyE;AACzE,wEAAwE;AACxE,kCAAkC;AAClC,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAErD,MAAM,UAAU,SAAS,CAAC,GAAkB,EAAE,KAAqB;IACjE,qEAAqE;IACrE,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,OAA8C,CAAC,CAAC;IACrF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAElC,IAAI,cAAc,GAAmB,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAY,EAAE,CAAC;IAClF,IAAI,YAAgE,CAAC;IACrE,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,GAAG,mBAAmB,EAAE,CAAC;QACnE,YAAY,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;QACxE,cAAc,GAAG,EAAE,GAAG,cAAc,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;IACrE,CAAC;IAED,+EAA+E;IAC/E,oFAAoF;IACpF,qFAAqF;IACrF,2EAA2E;IAC3E,IAAI,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,OAAO,qBAAqB,CAAC,GAAG,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACrD,IAAI,YAAY;QAAE,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;IACrD,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;AACpB,CAAC;AAED,8EAA8E;AAC9E,mCAAmC;AACnC,8EAA8E;AAE9E,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,gBAAgB,CACvB,GAAkB,EAClB,UAA+B,EAC/B,IAAc;IAEd,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC,0BAA0B,EAAE,gDAAgD,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC,0BAA0B,EAAE,mDAAmD,CAAC,CAAC;IACpG,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG;YAAE,OAAO,SAAS,CAAC,0BAA0B,EAAE,4BAA4B,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,WAAW,GAAY,UAAU,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACrB,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC,0BAA0B,EAAE,uBAAuB,WAAqB,gBAAgB,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;QACzH,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC,0BAA0B,EAAE,UAAU,GAAG,wBAAwB,WAAqB,GAAG,CAAC,CAAC;QAC9G,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;gBACzB,OAAO,SAAS,CAAC,0BAA0B,EAAE,qBAAqB,GAAG,6BAA6B,WAAqB,UAAU,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;YAClJ,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClB,OAAO,SAAS,CAAC,0BAA0B,EAAE,cAAc,GAAG,SAAS,WAAqB,iBAAiB,CAAC,CAAC;YACjH,CAAC;YACD,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,0EAA0E;YAC1E,wEAAwE;QAC1E,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;AAClB,CAAC;AAED,6EAA6E;AAC7E,iFAAiF;AACjF,qBAAqB;AACrB,SAAS,eAAe,CACtB,GAAkB,EAClB,UAAkB,EAClB,IAAc;IAEd,IAAI,YAAY,GAAG,UAAU,CAAC;IAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE;YAAE,OAAO,IAAI,CAAC;QAC3D,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,MAAM;YAAE,OAAO,GAAG,CAAC;QACvB,YAAY,GAAG,GAAG,CAAC;IACrB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAWD,SAAS,UAAU;IACjB,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC5E,CAAC;AAED,SAAS,qBAAqB,CAC5B,GAAkB,EAClB,KAAqB,EACrB,YAAgE;IAEhE,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE1C,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,UAAU,CAAC,EAAE;QAAE,OAAO,UAAU,CAAC;IAEtC,kFAAkF;IAClF,8EAA8E;IAC9E,+EAA+E;IAC/E,kEAAkE;IAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;IAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,mBAAmB,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;IAE9C,MAAM,aAAa,GAAmB;QACpC,OAAO,EAAE,QAAQ;QACjB,KAAK,EAAE,mBAAmB;KAC3B,CAAC;IACF,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IACvE,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAAE,aAAa,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IACpE,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAEvE,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAE5D,yEAAyE;IACzE,2DAA2D;IAC3D,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;IAClD,IAAI,eAAe,GAAG,CAAC,CAAC;IAExB,KAAK,MAAM,KAAK,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;QAC1C,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAClE,MAAM,GAAG,GAAG,QAAQ,IAAI,oBAAoB,CAAC;QAC7C,IAAI,QAAQ,KAAK,IAAI;YAAE,eAAe,EAAE,CAAC;QAEzC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,UAAU,EAAE,CAAC;QAC5C,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;QAEzB,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;YAC5B,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;gBAC9B,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACf,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;gBACrC,uEAAuE;gBACvE,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;YAC7B,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;gBACrC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChD,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;gBACrC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChD,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;YACpB,CAAC;YACD,2CAA2C;QAC7C,CAAC;QAED,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,oBAAoB,EAC7C,GAAG,eAAe,uCAAuC,oBAAoB,8BAA8B,EAC3G,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,CAAC;IACnG,CAAC;IAED,oDAAoD;IACpD,MAAM,WAAW,GAAoE,EAAE,CAAC;IACxF,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1C,IAAI,MAAiC,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,QAAQ,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACxB,KAAK,OAAO;oBAAE,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC;oBAAC,MAAM;gBACxC,KAAK,KAAK;oBAAI,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC;oBAAC,MAAM;gBACtC,KAAK,KAAK;oBAAI,MAAM,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;oBAAC,MAAM;gBACzE,KAAK,KAAK;oBAAI,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;oBAAC,MAAM;gBAC1D,KAAK,KAAK;oBAAI,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;oBAAC,MAAM;YAC5D,CAAC;QACH,CAAC;QACD,MAAM,CAAC,GAA6D,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;QACrG,IAAI,MAAM,KAAK,SAAS;YAAE,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;QAC5C,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,0FAA0F;IAC1F,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACtD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACtD,OAAQ,IAAe,GAAI,IAAe,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,4DAA4D;IAC5D,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC;IAE1D,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAEvD,MAAM,MAAM,GAAoB,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAE3D,8EAA8E;IAC9E,mFAAmF;IACnF,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;QAC/E,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAE,CAAC,CAAC,MAAiB,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,IAAI,YAAY;QAAE,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;IACrD,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,GAAkB,EAAE,KAAgB;IACvD,4EAA4E;IAC5E,4EAA4E;IAC5E,gEAAgE;IAChE,MAAM,QAAQ,GAAkB,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IAC3D,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,OAAkC,CAAC,CAAC;QACzE,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC;QAClC,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,KAA8C,CAAC;IAC7E,CAAC;IACD,IAAI,KAAK,CAAC,KAAK;QAAE,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC9C,IAAI,KAAK,CAAC,MAAM;QAAE,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAEjD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAEzD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEtC,gDAAgD;IAChD,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,iBAAiB,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAE9E,kEAAkE;IAClE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACvC,KAAK,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,iBAAiB,EAAE,CAAC;QAC3C,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,QAAQ;gBAAE,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC3C,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACxD,KAAK,MAAM,CAAC,IAAI,UAAU;gBAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,GAAG,CAAC,IAAI,gBAAgB,CAAC,IAAI,GAAG,CAAC;QACvE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CACxB,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAW,CAAC,EACxC,CAAC,GAAG,gBAAgB,CAAC,CACtB;QACH,CAAC,CAAC,IAAI,GAAG,EAAkC,CAAC;IAE9C,2BAA2B;IAC3B,MAAM,OAAO,GAAoB,EAAE,CAAC;IACpC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,KAAe,CAAC,IAAI,EAAE,CAAC;QAEnE,kDAAkD;QAClD,MAAM,aAAa,GAA2B,EAAE,CAAC;QACjD,KAAK,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;YACrC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS;gBAAE,aAAa,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,oBAAoB;QACpB,MAAM,IAAI,GAA6E,EAAE,CAAC;QAC1F,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;YACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;gBACtB,SAAS;YACX,CAAC;YAED,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxD,MAAM,kBAAkB,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC7D,MAAM,cAAc,GAA2B,EAAE,CAAC;YAClD,KAAK,MAAM,CAAC,IAAI,kBAAkB,EAAE,CAAC;gBACnC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,SAAS;oBAAE,cAAc,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YACzE,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAC/D,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAe,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,+EAA+E;AAE/E,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,GAAkB,EAClB,EAAS,EACT,KAAa,EACb,QAAiB;IAEjB,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;YACR,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,OAAO;YACd,QAAQ;YACR,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,EAAE,KAAK,EAAE,EAAY,EAAE,QAAQ,EAAE,EAAE,EAAE;SAC9C,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;IAEjC,+DAA+D;IAC/D,sEAAsE;IACtE,iEAAiE;IACjE,2DAA2D;IAC3D,MAAM,SAAS,GAAG,MAAM,YAAY,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACvF,MAAM,WAAW,GAAG,QAAQ,YAAY,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,SAAS,KAAK,WAAW;WACrC,CAAC,MAAM,YAAY,IAAI,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;WACxF,CAAC,QAAQ,YAAY,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;WAC1F,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/G,OAAO,EAAE,CAAC;QACR,QAAQ;QACR,KAAK,EAAE,OAAO;QACd,QAAQ;QACR,MAAM;QACN,MAAM,EAAE,EAAE,KAAK,EAAE,EAAY,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAkB,EAAE;KAClE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,GAAkB,EAClB,EAAW,EACX,aAAqB,EACrB,OAA+D;IAE/D,MAAM,KAAK,GAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACvD,IAAI,OAAO,EAAE,CAAC;QACZ,6EAA6E;QAC7E,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAkC,CAAC,CAAC;QACnE,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC;QAClC,KAAK,CAAC,OAAO,GAAG,QAAQ,CAAC,KAA8C,CAAC;IAC1E,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAEjD,OAAO,EAAE,CAAC;QACR,QAAQ,EAAE,MAAM,KAAK,aAAa;QAClC,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,aAAa;QACvB,MAAM;QACN,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,yEAAyE;AACzE,2EAA2E;AAC3E,qEAAqE;AACrE,yEAAyE;AAEzE,MAAM,wBAAwB,GAAwB;IACpD,kBAAkB;IAClB,iBAAiB;IACjB,YAAY;IACZ,cAAc;IACd,aAAa;CACd,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAkB,EAClB,QAAwB,EAAE;IAE1B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAoB,KAAK,CAAC,UAAU,IAAI,wBAAwB,CAAC,CAAC;IAEzF,wEAAwE;IACxE,0EAA0E;IAC1E,gEAAgE;IAChE,IAAI,aAAa,GAAuB,IAAI,CAAC;IAC7C,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,6EAA6E;QAC7E,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,MAAiC,CAAC,CAAC;QACxE,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC;QAClC,MAAM,SAAS,GAAkB,EAAE,OAAO,EAAE,QAAQ,CAAC,KAA8C,EAAE,CAAC;QACtG,IAAI,KAAK,CAAC,OAAO;YAAE,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QACrD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACnD,aAAa,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAe,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,QAAQ,GAAsC;QAClD,gBAAgB,EAAE,CAAC;QACnB,eAAe,EAAE,CAAC;QAClB,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,CAAC;KACf,CAAC;IACF,MAAM,OAAO,GAA6B,EAAE,CAAC;IAC7C,gEAAgE;IAChE,2EAA2E;IAC3E,4EAA4E;IAC5E,kDAAkD;IAClD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAC1C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACrD,IAAI,KAAK,CAAC,OAAO,IAAK,QAAmB,KAAM,KAAK,CAAC,OAAkB;YAAE,SAAS;QAElF,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,SAAS;QAEnC,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAClD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,qEAAqE;YACrE,sEAAsE;YACtE,uEAAuE;YACvE,wEAAwE;YACxE,wCAAwC;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/E,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACzB,OAAO,EAAE,CAAC;YAEV,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,wEAAwE;gBACxE,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;oBAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBACjD,QAAQ,CAAC,gBAAgB,EAAE,CAAC;oBAC5B,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBACnC,IAAI,OAAO,EAAE,CAAC;wBACZ,OAAO,CAAC,IAAI,CAAC;4BACX,KAAK,EAAE,aAAa;4BACpB,OAAO,EAAE,QAAkB;4BAC3B,OAAO,EAAE,kBAAkB;yBAC5B,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,KAAK,CAAC,KAAK,IAAK,GAAG,CAAC,KAAgB,KAAM,KAAK,CAAC,KAAgB;gBAAE,SAAS;YAC/E,IAAI,aAAa,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,KAAe,CAAC;gBAAE,SAAS;YAEvE,IAAI,gBAAgB,GAAG,KAAK,CAAC;YAE7B,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC9B,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC1C,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChE,IAAI,QAAQ,KAAK,GAAG,CAAC,QAAQ,EAAE,CAAC;oBAC9B,QAAQ,CAAC,UAAU,EAAE,CAAC;oBACtB,gBAAgB,GAAG,IAAI,CAAC;oBACxB,IAAI,OAAO,EAAE,CAAC;wBACZ,OAAO,CAAC,IAAI,CAAC;4BACX,KAAK,EAAE,GAAG,CAAC,KAAe;4BAC1B,OAAO,EAAE,GAAG,CAAC,OAAiB;4BAC9B,OAAO,EAAE,YAAY;4BACrB,QAAQ,EAAE,UAAU,GAAG,CAAC,QAAQ,EAAE;4BAClC,MAAM,EAAE,UAAU,QAAQ,EAAE;yBAC7B,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;gBAChC,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvD,IAAI,UAAU,IAAK,GAAG,CAAC,SAAoB,KAAM,UAAU,CAAC,SAAoB,EAAE,CAAC;oBACjF,QAAQ,CAAC,YAAY,EAAE,CAAC;oBACxB,gBAAgB,GAAG,IAAI,CAAC;oBACxB,IAAI,OAAO,EAAE,CAAC;wBACZ,OAAO,CAAC,IAAI,CAAC;4BACX,KAAK,EAAE,GAAG,CAAC,KAAe;4BAC1B,OAAO,EAAE,GAAG,CAAC,OAAiB;4BAC9B,OAAO,EAAE,cAAc;4BACvB,QAAQ,EAAE,UAAU,CAAC,SAAmB;4BACxC,MAAM,EAAE,GAAG,CAAC,SAAmB;yBAChC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,gBAAgB;gBAAE,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAe,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,0EAA0E;IAC1E,uEAAuE;IACvE,0EAA0E;IAC1E,wEAAwE;IACxE,uEAAuE;IACvE,oEAAoE;IACpE,qEAAqE;IACrE,oEAAoE;IACpE,WAAW;IACX,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/B,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAClD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAiE,CAAC;QAC1F,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,aAAa,KAAM,KAAK,CAAC,OAAkB;gBAAE,SAAS;YAC7E,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,KAAM,KAAK,CAAC,KAAgB;gBAAE,SAAS;YACvE,IAAI,aAAa,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;gBAAE,SAAS;YAEjE,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACxC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;gBACjD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACrC,CAAC;YACD,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACrD,CAAC;QACD,KAAK,MAAM,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC1D,QAAQ,CAAC,WAAW,EAAE,CAAC;YACvB,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACjC,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,IAAI,CAAC;oBACX,KAAK,EAAE,WAAW;oBAClB,OAAO;oBACP,OAAO,EAAE,aAAa;oBACtB,MAAM,EAAE,MAAM;iBACf,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACjD,KAAK,MAAM,CAAC,UAAU,CAAC,IAAI,SAAS,EAAE,CAAC;YACrC,MAAM,UAAU,GAAI,UAAqB,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAC9D,IAAI,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;gBAAE,SAAS;YAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,CAAC,GAAG;gBAAE,SAAS;YACnB,IAAI,KAAK,CAAC,OAAO,IAAK,GAAG,CAAC,OAAkB,KAAM,KAAK,CAAC,OAAkB;gBAAE,SAAS;YACrF,IAAI,KAAK,CAAC,KAAK,IAAK,GAAG,CAAC,KAAgB,KAAM,KAAK,CAAC,KAAgB;gBAAE,SAAS;YAC/E,IAAI,aAAa,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,KAAe,CAAC;gBAAE,SAAS;YACvE,QAAQ,CAAC,eAAe,EAAE,CAAC;YAC3B,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,IAAI,CAAC;oBACX,KAAK,EAAE,GAAG,CAAC,KAAe;oBAC1B,OAAO,EAAE,GAAG,CAAC,OAAiB;oBAC9B,OAAO,EAAE,iBAAiB;iBAC3B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC;IAE/C,MAAM,MAAM,GAAoB;QAC9B,OAAO;QACP,OAAO;QACP,QAAQ;QACR,YAAY,EAAE;YACZ,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAE,KAAK,CAAC,OAAkB,CAAC,CAAC,CAAC,IAAI;YACzD,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAE,KAAK,CAAC,KAAgB,CAAC,CAAC,CAAC,IAAI;YACnD,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI;SACrC;QACD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;KACjC,CAAC;IACF,IAAI,OAAO;QAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAEtC,2EAA2E;IAC3E,wEAAwE;IACxE,4EAA4E;IAC5E,2DAA2D;IAC3D,IAAI,CAAC;QACH,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACnE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClF,CAAC;IAAC,MAAM,CAAC;QACP,iEAAiE;IACnE,CAAC;IAED,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;AACpB,CAAC;AAED,+EAA+E;AAC/E,2CAA2C;AAC3C,4EAA4E;AAC5E,4EAA4E;AAC5E,+EAA+E;AAE/E,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAE/B,MAAM,UAAU,mBAAmB,CAAC,MAAgC;IAClE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC,gBAAgB,EAAE,+BAA+B,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC,gBAAgB,EAAE,kCAAkC,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO,SAAS,CAAC,gBAAgB,EAAE,iCAAiC,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,GAAG,GAAG,MAAiC,CAAC;IAC9C,IAAI,OAAO,GAAG,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC3D,OAAO,SAAS,CAAC,gBAAgB,EAAE,mCAAmC,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAkB,EAAE,KAAwB;IACvE,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,IAAI,qBAAqB,CAAC;IACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QAChD,OAAO,SAAS,CAAC,gBAAgB,EAAE,kCAAkC,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAEhE,IAAI,YAAY,GAAoC,IAAI,CAAC;IACzD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QACtD,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,MAAM,CAAC;QAC9B,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC;IAC9B,CAAC;IAED,qEAAqE;IACrE,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACxC,MAAM,EAAE,YAAY;QACpB,KAAK,EAAE,KAAK,GAAG,CAAC;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACpC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEnD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/B,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,4DAA4D;QAC5D,qEAAqE;QACrE,oDAAoD;QACpD,SAAS,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAwB;KACzE,CAAC,CAAC,CAAC;IAEJ,MAAM,UAAU,GAAG,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAC9C,CAAC,CAAC,mBAAmB,CAAC;YAClB,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,SAAS;YACjD,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,KAAK;SAC1C,CAAC;QACJ,CAAC,CAAC,IAAI,CAAC;IAET,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;AAC9C,CAAC"}
package/dist/errors.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { SourceLocation } from './types.js';
2
- export type ErrorCode = 'FILE_NOT_FOUND' | 'FILE_READ_ERROR' | 'PARSE_ERROR' | 'YAML_PROFILE_VIOLATION' | 'REGISTRY_INVALID' | 'REGISTRY_NOT_FOUND' | 'SCHEMA_NOT_FOUND' | 'SCHEMA_INVALID' | 'VALIDATION_FAILED' | 'REF_NOT_FOUND' | 'DUPLICATE_DOC_ID' | 'DUPLICATE_PREFIX' | 'VERSION_CONFLICT' | 'GIT_ERROR' | 'GIT_NOT_INITIALIZED' | 'BACKEND_ERROR' | 'UNKNOWN_TYPE' | 'INVALID_DOC_ID' | 'WRITE_ERROR' | 'DELETE_ERROR' | 'READ_ONLY' | 'PATH_OUTSIDE_PROJECT' | 'INVALID_FIELDS' | 'FRONTMATTER_GUARD' | 'INSTANCE_CONFIG_INVALID' | 'INSTANCE_CONFIG_NOT_FOUND' | 'PROJECT_UNKNOWN' | 'PROJECT_REQUIRED' | 'PROJECT_NOT_WHITELISTED' | 'SESSION_UNBOUND' | 'SESSION_ALREADY_BOUND' | 'INSUFFICIENT_ROLE' | 'ROLE_UPGRADE_DENIED' | 'WRITE_TIMEOUT' | 'SHUTTING_DOWN' | 'RATE_LIMITED' | 'REQUEST_TIMEOUT' | 'MISSING_OPERATION_KIND' | 'PIN_PROJECT_INVALID' | 'PIN_PROJECT_NOT_FOUND' | 'PIN_ON_EXISTING_SESSION' | 'SESSION_PINNED' | 'INSTANCE_RELOAD_IN_PROGRESS' | 'INSTANCE_RELOAD_FAILED' | 'INSTANCE_MUTATION_UNSUPPORTED' | 'INSTANCE_RELOAD_SYNTHETIC' | 'SESSION_CANCELLED' | 'TOKENS_FILE_MISSING' | 'TOKENS_FILE_INVALID' | 'TOKENS_FILE_EMPTY' | 'TOKEN_UNKNOWN' | 'TOKEN_REVOKED' | 'TOKEN_EXPIRED' | 'TOKEN_MALFORMED' | 'TOKEN_PROJECT_FORBIDDEN' | 'TOKEN_PROJECT_UNKNOWN' | 'TOKEN_ROLE_ABOVE_GLOBAL' | 'TOKEN_IDENTITY_REQUIRED' | 'TOKEN_NOT_FOUND' | 'LEGACY_BEARER_REMOVED' | 'RESPONSE_TOO_LARGE' | 'CURSOR_INVALID' | 'SCHEMA_REF_CHAIN_INVALID' | 'FILTER_BETWEEN_INVALID' | 'FILTER_EMPTY_ARRAY' | 'FILTER_OP_INVALID' | 'BULK_LIMIT_EXCEEDED' | 'CONFIRM_REQUIRED' | 'TAG_EXISTS' | 'TAG_NOT_FOUND' | 'NO_HEAD_COMMIT' | 'REPAIR_REQUIRES_MIGRATION' | 'INVALID_PRIMITIVE' | 'UNSUPPORTED_SORT_FIELD' | 'DOC_TOO_LARGE';
2
+ export type ErrorCode = 'FILE_NOT_FOUND' | 'FILE_READ_ERROR' | 'PARSE_ERROR' | 'YAML_PROFILE_VIOLATION' | 'REGISTRY_INVALID' | 'REGISTRY_NOT_FOUND' | 'SCHEMA_NOT_FOUND' | 'SCHEMA_INVALID' | 'VALIDATION_FAILED' | 'REF_NOT_FOUND' | 'DUPLICATE_DOC_ID' | 'DUPLICATE_PREFIX' | 'VERSION_CONFLICT' | 'GIT_ERROR' | 'GIT_NOT_INITIALIZED' | 'BACKEND_ERROR' | 'UNKNOWN_TYPE' | 'INVALID_DOC_ID' | 'WRITE_ERROR' | 'DELETE_ERROR' | 'READ_ONLY' | 'PATH_OUTSIDE_PROJECT' | 'INVALID_FIELDS' | 'FRONTMATTER_GUARD' | 'INSTANCE_CONFIG_INVALID' | 'INSTANCE_CONFIG_NOT_FOUND' | 'PROJECT_UNKNOWN' | 'PROJECT_REQUIRED' | 'PROJECT_NOT_WHITELISTED' | 'SESSION_UNBOUND' | 'SESSION_ALREADY_BOUND' | 'INSUFFICIENT_ROLE' | 'ROLE_UPGRADE_DENIED' | 'WRITE_TIMEOUT' | 'SHUTTING_DOWN' | 'RATE_LIMITED' | 'REQUEST_TIMEOUT' | 'MISSING_OPERATION_KIND' | 'PIN_PROJECT_INVALID' | 'PIN_PROJECT_NOT_FOUND' | 'PIN_ON_EXISTING_SESSION' | 'SESSION_PINNED' | 'INSTANCE_RELOAD_IN_PROGRESS' | 'INSTANCE_RELOAD_FAILED' | 'INSTANCE_MUTATION_UNSUPPORTED' | 'INSTANCE_RELOAD_SYNTHETIC' | 'SESSION_CANCELLED' | 'TOKENS_FILE_MISSING' | 'TOKENS_FILE_INVALID' | 'TOKENS_FILE_EMPTY' | 'TOKEN_UNKNOWN' | 'TOKEN_REVOKED' | 'TOKEN_EXPIRED' | 'TOKEN_MALFORMED' | 'TOKEN_PROJECT_FORBIDDEN' | 'TOKEN_PROJECT_UNKNOWN' | 'TOKEN_ROLE_ABOVE_GLOBAL' | 'TOKEN_IDENTITY_REQUIRED' | 'TOKEN_NOT_FOUND' | 'LEGACY_BEARER_REMOVED' | 'RESPONSE_TOO_LARGE' | 'CURSOR_INVALID' | 'SCHEMA_REF_CHAIN_INVALID' | 'FILTER_BETWEEN_INVALID' | 'FILTER_EMPTY_ARRAY' | 'FILTER_OP_INVALID' | 'BULK_LIMIT_EXCEEDED' | 'CONFIRM_REQUIRED' | 'TAG_EXISTS' | 'TAG_NOT_FOUND' | 'NO_HEAD_COMMIT' | 'REPAIR_REQUIRES_MIGRATION' | 'INVALID_PRIMITIVE' | 'UNSUPPORTED_SORT_FIELD' | 'DOC_TOO_LARGE' | 'OVERLOADED';
3
3
  export interface MaadError {
4
4
  code: ErrorCode;
5
5
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,MAAM,SAAS,GACjB,gBAAgB,GAChB,iBAAiB,GACjB,aAAa,GACb,wBAAwB,GACxB,kBAAkB,GAClB,oBAAoB,GACpB,kBAAkB,GAClB,gBAAgB,GAChB,mBAAmB,GACnB,eAAe,GACf,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,WAAW,GACX,qBAAqB,GACrB,eAAe,GACf,cAAc,GACd,gBAAgB,GAChB,aAAa,GACb,cAAc,GACd,WAAW,GACX,sBAAsB,GACtB,gBAAgB,GAChB,mBAAmB,GACnB,yBAAyB,GACzB,2BAA2B,GAC3B,iBAAiB,GACjB,kBAAkB,GAClB,yBAAyB,GACzB,iBAAiB,GACjB,uBAAuB,GACvB,mBAAmB,GACnB,qBAAqB,GACrB,eAAe,GACf,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,wBAAwB,GACxB,qBAAqB,GACrB,uBAAuB,GACvB,yBAAyB,GACzB,gBAAgB,GAChB,6BAA6B,GAC7B,wBAAwB,GACxB,+BAA+B,GAC/B,2BAA2B,GAC3B,mBAAmB,GACnB,qBAAqB,GACrB,qBAAqB,GACrB,mBAAmB,GACnB,eAAe,GACf,eAAe,GACf,eAAe,GACf,iBAAiB,GACjB,yBAAyB,GACzB,uBAAuB,GACvB,yBAAyB,GACzB,yBAAyB,GACzB,iBAAiB,GACjB,uBAAuB,GAEvB,oBAAoB,GACpB,gBAAgB,GAChB,0BAA0B,GAC1B,wBAAwB,GACxB,oBAAoB,GACpB,mBAAmB,GAEnB,qBAAqB,GAErB,kBAAkB,GAElB,YAAY,GACZ,eAAe,GACf,gBAAgB,GAIhB,2BAA2B,GAG3B,mBAAmB,GAKnB,wBAAwB,GAOxB,eAAe,CAAC;AAEpB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CAC/C;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,IACjC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GACtB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAE7B,wBAAgB,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAEzC;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAErD;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAEtI;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAEnI"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,MAAM,SAAS,GACjB,gBAAgB,GAChB,iBAAiB,GACjB,aAAa,GACb,wBAAwB,GACxB,kBAAkB,GAClB,oBAAoB,GACpB,kBAAkB,GAClB,gBAAgB,GAChB,mBAAmB,GACnB,eAAe,GACf,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,WAAW,GACX,qBAAqB,GACrB,eAAe,GACf,cAAc,GACd,gBAAgB,GAChB,aAAa,GACb,cAAc,GACd,WAAW,GACX,sBAAsB,GACtB,gBAAgB,GAChB,mBAAmB,GACnB,yBAAyB,GACzB,2BAA2B,GAC3B,iBAAiB,GACjB,kBAAkB,GAClB,yBAAyB,GACzB,iBAAiB,GACjB,uBAAuB,GACvB,mBAAmB,GACnB,qBAAqB,GACrB,eAAe,GACf,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,wBAAwB,GACxB,qBAAqB,GACrB,uBAAuB,GACvB,yBAAyB,GACzB,gBAAgB,GAChB,6BAA6B,GAC7B,wBAAwB,GACxB,+BAA+B,GAC/B,2BAA2B,GAC3B,mBAAmB,GACnB,qBAAqB,GACrB,qBAAqB,GACrB,mBAAmB,GACnB,eAAe,GACf,eAAe,GACf,eAAe,GACf,iBAAiB,GACjB,yBAAyB,GACzB,uBAAuB,GACvB,yBAAyB,GACzB,yBAAyB,GACzB,iBAAiB,GACjB,uBAAuB,GAEvB,oBAAoB,GACpB,gBAAgB,GAChB,0BAA0B,GAC1B,wBAAwB,GACxB,oBAAoB,GACpB,mBAAmB,GAEnB,qBAAqB,GAErB,kBAAkB,GAElB,YAAY,GACZ,eAAe,GACf,gBAAgB,GAIhB,2BAA2B,GAG3B,mBAAmB,GAKnB,wBAAwB,GAOxB,eAAe,GAKf,YAAY,CAAC;AAEjB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CAC/C;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,IACjC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GACtB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAE7B,wBAAgB,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAEzC;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAErD;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAEtI;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAEnI"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,sCAAsC;AACtC,uEAAuE;AACvE,+EAA+E;AA+G/E,MAAM,UAAU,EAAE,CAAI,KAAQ;IAC5B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,GAAG,CAAI,MAAmB;IACxC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,SAAS,CAAI,IAAe,EAAE,OAAe,EAAE,QAAyB,EAAE,OAAiC;IACzH,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAe,EAAE,OAAe,EAAE,QAAyB,EAAE,OAAiC;IACtH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,sCAAsC;AACtC,uEAAuE;AACvE,+EAA+E;AAoH/E,MAAM,UAAU,EAAE,CAAI,KAAQ;IAC5B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,GAAG,CAAI,MAAmB;IACxC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,SAAS,CAAI,IAAe,EAAE,OAAe,EAAE,QAAyB,EAAE,OAAiC;IACzH,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAe,EAAE,OAAe,EAAE,QAAyB,EAAE,OAAiC;IACtH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,93 @@
1
+ export declare const HEAVY_OPS: ReadonlySet<string>;
2
+ export interface HeavyOpGuardConfig {
3
+ disabled: boolean;
4
+ minFreeHeapBytes: number;
5
+ retryAfterMs: number;
6
+ /** Max heavy ops executing at once across the whole process; 0 disables. */
7
+ maxConcurrent: number;
8
+ /** Consecutive memory sheds that trip the breaker open; 0 disables. */
9
+ breakerThreshold: number;
10
+ /** How long the breaker stays open once tripped. */
11
+ breakerCooldownMs: number;
12
+ /** Injectable point sampler; defaults to the live memory-pressure sampler. */
13
+ probe: () => {
14
+ heapUsedBytes: number;
15
+ heapCapBytes: number;
16
+ cgroupCurrentBytes: number | null;
17
+ cgroupMaxBytes: number | null;
18
+ } | null;
19
+ }
20
+ export declare function readHeavyOpGuardEnv(): Partial<HeavyOpGuardConfig>;
21
+ export type HeavyOpShedReason = 'free_heap' | 'free_cgroup' | 'concurrency' | 'breaker_open';
22
+ export interface HeavyOpRejection {
23
+ reason: HeavyOpShedReason;
24
+ retryAfterMs: number;
25
+ freeMb?: number;
26
+ minFreeMb?: number;
27
+ limit?: number;
28
+ }
29
+ export interface HeavyOpGuardSnapshot {
30
+ enabled: boolean;
31
+ minFreeHeapMb: number;
32
+ maxConcurrent: number;
33
+ inFlight: number;
34
+ breakerOpen: boolean;
35
+ shedTotal: number;
36
+ coalescedTotal: number;
37
+ concurrencyRejectedTotal: number;
38
+ breakerTrippedTotal: number;
39
+ breakerRejectedTotal: number;
40
+ lastShedAt: string | null;
41
+ }
42
+ /** Stable key for single-flight: identical (project, tool, args) coalesce. */
43
+ export declare function heavyOpKey(project: string, tool: string, args: Record<string, unknown> | undefined): string;
44
+ export declare class HeavyOpGuard {
45
+ private config;
46
+ private inFlightKeys;
47
+ private executing;
48
+ private consecutiveSheds;
49
+ private breakerOpenUntilMs;
50
+ private shedTotal;
51
+ private coalescedTotal;
52
+ private concurrencyRejectedTotal;
53
+ private breakerTrippedTotal;
54
+ private breakerRejectedTotal;
55
+ private lastShedAtMs;
56
+ private now;
57
+ constructor(opts?: Partial<HeavyOpGuardConfig>, now?: () => number);
58
+ isHeavy(tool: string): boolean;
59
+ /**
60
+ * Admission check, in order: (1) circuit breaker — if open, fast-fail
61
+ * without sampling; (2) free-headroom gate — shed when the tighter of free
62
+ * heap / free cgroup budget is below the floor. Returns a rejection or null
63
+ * to admit. Repeated sheds trip the breaker open for a cooldown; the first
64
+ * admit resets the shed streak. Never throws — an unreadable sample admits
65
+ * (fail-open: the guard is a backstop, not a correctness boundary).
66
+ */
67
+ checkAdmission(): HeavyOpRejection | null;
68
+ private shed;
69
+ /**
70
+ * Acquire a process-global concurrency slot for an executing heavy op.
71
+ * Returns a release handle, or a rejection when the cap is reached. Only the
72
+ * single-flight LEADER should acquire — followers share the leader's result
73
+ * and never execute, so they consume no slot. `maxConcurrent: 0` disables.
74
+ */
75
+ tryAcquireConcurrencySlot(): {
76
+ ok: true;
77
+ release: () => void;
78
+ } | {
79
+ ok: false;
80
+ rejection: HeavyOpRejection;
81
+ };
82
+ /**
83
+ * Single-flight: if an identical op is already running, await and share its
84
+ * result instead of starting a second. The leader runs `run`; followers
85
+ * resolve/reject with the leader's outcome. The in-flight slot clears when
86
+ * the leader settles.
87
+ */
88
+ runCoalesced<T>(key: string, run: () => Promise<T>): Promise<T>;
89
+ snapshot(): HeavyOpGuardSnapshot;
90
+ }
91
+ export declare function initHeavyOpGuard(opts?: Partial<HeavyOpGuardConfig>): void;
92
+ export declare function getHeavyOpGuard(): HeavyOpGuard;
93
+ //# sourceMappingURL=heavy-ops.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"heavy-ops.d.ts","sourceRoot":"","sources":["../../src/mcp/heavy-ops.ts"],"names":[],"mappings":"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"}