@aeye/ai 0.3.9 → 0.4.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 (51) hide show
  1. package/README.md +79 -1
  2. package/dist/ai.d.ts +7 -1
  3. package/dist/ai.d.ts.map +1 -1
  4. package/dist/ai.js +50 -77
  5. package/dist/ai.js.map +1 -1
  6. package/dist/apis/batch.d.ts +74 -0
  7. package/dist/apis/batch.d.ts.map +1 -0
  8. package/dist/apis/batch.js +127 -0
  9. package/dist/apis/batch.js.map +1 -0
  10. package/dist/apis/chat.d.ts.map +1 -1
  11. package/dist/apis/chat.js +55 -35
  12. package/dist/apis/chat.js.map +1 -1
  13. package/dist/apis/decide.d.ts +33 -0
  14. package/dist/apis/decide.d.ts.map +1 -0
  15. package/dist/apis/decide.js +52 -0
  16. package/dist/apis/decide.js.map +1 -0
  17. package/dist/apis/embed.d.ts +4 -11
  18. package/dist/apis/embed.d.ts.map +1 -1
  19. package/dist/apis/embed.js +5 -32
  20. package/dist/apis/embed.js.map +1 -1
  21. package/dist/apis/get.d.ts +18 -0
  22. package/dist/apis/get.d.ts.map +1 -0
  23. package/dist/apis/get.js +30 -0
  24. package/dist/apis/get.js.map +1 -0
  25. package/dist/apis/image.d.ts +2 -2
  26. package/dist/apis/image.d.ts.map +1 -1
  27. package/dist/apis/image.js +45 -40
  28. package/dist/apis/image.js.map +1 -1
  29. package/dist/apis/rerank.d.ts +24 -0
  30. package/dist/apis/rerank.d.ts.map +1 -0
  31. package/dist/apis/rerank.js +40 -0
  32. package/dist/apis/rerank.js.map +1 -0
  33. package/dist/apis/schema-fallback.d.ts +9 -14
  34. package/dist/apis/schema-fallback.d.ts.map +1 -1
  35. package/dist/apis/schema-fallback.js +15 -64
  36. package/dist/apis/schema-fallback.js.map +1 -1
  37. package/dist/common.d.ts +20 -2
  38. package/dist/common.d.ts.map +1 -1
  39. package/dist/common.js +36 -0
  40. package/dist/common.js.map +1 -1
  41. package/dist/index.d.ts +4 -0
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +4 -0
  44. package/dist/index.js.map +1 -1
  45. package/dist/registry.d.ts +30 -1
  46. package/dist/registry.d.ts.map +1 -1
  47. package/dist/registry.js +61 -1
  48. package/dist/registry.js.map +1 -1
  49. package/dist/types.d.ts +177 -40
  50. package/dist/types.d.ts.map +1 -1
  51. package/package.json +67 -67
package/dist/registry.js CHANGED
@@ -4,7 +4,7 @@
4
4
  * Centralized model management with provider ordering and adapter registration.
5
5
  * Provider order ensures deterministic model resolution: first provider to return a model ID wins.
6
6
  */
7
- import { getDescriptor, getModel, hasDescriptorFamily, LENIENT } from '@aeye/core';
7
+ import { getDescriptor, getModel, hasDescriptorFamily, LENIENT, SchemaBudget, strictPriority } from '@aeye/core';
8
8
  import { detectTier } from './modelDetection';
9
9
  // ============================================================================
10
10
  // Strict-format resolution
@@ -45,6 +45,49 @@ export function resolveStrictFormat(model) {
45
45
  }
46
46
  return undefined;
47
47
  }
48
+ /**
49
+ * Build a SchemaBudget over the model's tool and structured-output dialects.
50
+ * Anthropic-style per-request limits apply across BOTH tool schemas and the
51
+ * output schema, so a provider shares one budget between them, but each kind
52
+ * keeps its own descriptor: a model with strict output and no strict tools
53
+ * must not send `strict: true` tools.
54
+ *
55
+ * Strict mode engages only when the model's resolved family is one the
56
+ * provider speaks (`families`) AND the model has the corresponding capability
57
+ * (`'toolsStrict'` for tools, `'structured'` for output). Otherwise the
58
+ * family's non-strict descriptor applies, which keeps the dialect's own
59
+ * constraints (Gemini rejects LENIENT's recursive `$defs/Any`) even when only
60
+ * the model id is known. Families the provider doesn't speak fall back to
61
+ * LENIENT, so the wire never receives a dialect the API doesn't understand.
62
+ *
63
+ * @param model The full model, or just its id and provider when selection
64
+ * didn't supply one
65
+ * @param families The strict descriptor families the provider speaks
66
+ */
67
+ export function buildSchemaBudget(model, families) {
68
+ const family = resolveStrictFormat(model);
69
+ const descriptorFor = (capability) => family !== undefined && families.has(family)
70
+ ? getDescriptor(family, model.capabilities?.has(capability) ?? false)
71
+ : LENIENT;
72
+ return new SchemaBudget(descriptorFor('toolsStrict'), descriptorFor('structured'));
73
+ }
74
+ /**
75
+ * Allocate per-tool descriptors in descending-priority order, so the
76
+ * most-wanted strict tools consume the budget first, then return them in
77
+ * declaration order. Records each chosen id on `tools[i].descriptor` for the
78
+ * Prompt's validation roundtrip.
79
+ */
80
+ export function allocateToolDescriptors(tools, budget) {
81
+ const descriptors = new Array(tools.length);
82
+ tools
83
+ .map((tool, i) => ({ i, p: strictPriority(tool.strict) }))
84
+ .sort((a, b) => b.p - a.p)
85
+ .forEach(({ i }) => {
86
+ descriptors[i] = budget.allocateTool(tools[i].parameters, tools[i].strict);
87
+ tools[i].descriptor = descriptors[i].id;
88
+ });
89
+ return descriptors;
90
+ }
48
91
  // ============================================================================
49
92
  // Generic Constraint Helpers
50
93
  // ============================================================================
@@ -274,6 +317,9 @@ export function getProviderCapabilities(provider) {
274
317
  // Vision is handled through chat messages with image content
275
318
  // It cannot be detected from provider methods alone
276
319
  capabilities.add('vision');
320
+ // files, videoInput - Like vision, carried by chat messages
321
+ capabilities.add('files');
322
+ capabilities.add('videoInput');
277
323
  // audio - Text-to-speech synthesis
278
324
  if (provider.speech !== undefined) {
279
325
  capabilities.add('audio');
@@ -286,6 +332,14 @@ export function getProviderCapabilities(provider) {
286
332
  if (provider.embed !== undefined) {
287
333
  capabilities.add('embedding');
288
334
  }
335
+ // rerank - Ordering documents by relevance
336
+ if (provider.rerank !== undefined) {
337
+ capabilities.add('rerank');
338
+ }
339
+ // decision - Typed answers about an input
340
+ if (provider.decide !== undefined) {
341
+ capabilities.add('decision');
342
+ }
289
343
  // tools - Function/tool calling
290
344
  // Note: This is typically a model capability, not detected from provider methods
291
345
  // Function calling is handled through createExecutor with tools parameter
@@ -619,6 +673,10 @@ export class ModelRegistry {
619
673
  * Returns null if not applicable, or an object with matched capabilities if applicable.
620
674
  */
621
675
  isModelApplicable(model, criteria) {
676
+ // Retired models can no longer serve requests (ISO dates compare as strings)
677
+ if (model.retiresAt && model.retiresAt <= new Date().toISOString().slice(0, 10)) {
678
+ return null;
679
+ }
622
680
  // Check provider allowlist/blocklist
623
681
  if (criteria.providers) {
624
682
  if (criteria.providers.deny?.includes(model.provider)) {
@@ -918,6 +976,8 @@ export class ModelRegistry {
918
976
  supportedParameters: source.supportedParameters ?? base.supportedParameters,
919
977
  tokenizer: source.tokenizer ?? base.tokenizer,
920
978
  strictFormat: source.strictFormat ?? base.strictFormat,
979
+ reasoningEfforts: source.reasoningEfforts ?? base.reasoningEfforts,
980
+ retiresAt: source.retiresAt ?? base.retiresAt,
921
981
  };
922
982
  }
923
983
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAgD,aAAa,EAAE,QAAQ,EAAE,mBAAmB,EAAE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAuB,MAAM,YAAY,CAAC;AACpL,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAe9C,+EAA+E;AAC/E,2BAA2B;AAC3B,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAInC;IACC,IAAI,KAAK,CAAC,YAAY,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IACpD,IAAI,KAAK,CAAC,YAAY;QAAE,OAAO,KAAK,CAAC,YAAY,CAAC;IAClD,IAAI,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC,QAAQ,CAAC;IAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QACjB,iEAAiE;QACjE,mEAAmE;QACnE,iDAAiD;QACjD,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7D,IAAI,mBAAmB,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;IACjD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAC/B,KAAyG,EACzG,QAAuC;IAEvC,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG,CAAC,UAAwC,EAAE,EAAE,CACjE,MAAM,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;QAC1C,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC;QACrE,CAAC,CAAC,OAAO,CAAC;IACd,OAAO,IAAI,YAAY,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC;AACrF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAuB,EAAE,MAAoB;IACnF,MAAM,WAAW,GAAuB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChE,KAAK;SACF,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SACzD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SACzB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE;QACjB,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC3E,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;IACL,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,+EAA+E;AAC/E,6BAA6B;AAC7B,+EAA+E;AAE/E;;;;;;GAMG;AACH,SAAS,mBAAmB,CAC1B,UAAyB,EACzB,GAAkB,EAClB,GAAkB;IAElB,sCAAsC;IACtC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4EAA4E;IAC5E,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,mCAAmC;IACnC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,GAAyB,CAAC;QACzC,MAAM,MAAM,GAAG,GAAyB,CAAC;QAEzC,IAAI,MAAM,KAAK,SAAS,IAAI,UAAU,GAAG,MAAM,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,MAAM,KAAK,SAAS,IAAI,UAAU,GAAG,MAAM,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,GAAU,CAAC;QAC1B,MAAM,MAAM,GAAG,GAAU,CAAC;QAE1B,iDAAiD;QACjD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;QACvC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5D,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAI,UAAkB,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;YAE9B,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;gBACtD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wCAAwC;IACxC,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CACrB,UAAyB,EACzB,UAAyB,EACzB,UAAyB;IAEzB,wDAAwD;IACxD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;IAC9C,CAAC;IAED,mCAAmC;IACnC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,UAAgC,CAAC;QAChD,MAAM,MAAM,GAAG,UAAgC,CAAC;QAEhD,OAAO;YACL,GAAG,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAM;YAC5E,GAAG,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAM;SAC7E,CAAC;IACJ,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,CAAC,UAAU,IAAI,EAAE,CAAQ,CAAC;QACzC,MAAM,MAAM,GAAG,CAAC,UAAU,IAAI,EAAE,CAAQ,CAAC;QACzC,MAAM,SAAS,GAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;QACrC,MAAM,SAAS,GAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;QAErC,uCAAuC;QACvC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAI,UAAkB,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,cAAc,CACjD,SAAS,EACT,MAAM,CAAC,GAAG,CAAC,EACX,MAAM,CAAC,GAAG,CAAC,CACZ,CAAC;YAEF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;YAC1B,CAAC;YACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,OAAO;YACL,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAkB;YACjF,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAkB;SAClF,CAAC;IACJ,CAAC;IAED,yCAAyC;IACzC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;AAC9C,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,cAAc,CACrB,UAAyB,EACzB,MAAqB,EACrB,GAAkB,EAClB,GAAkB;IAElB,wDAAwD;IACxD,IAAI,MAAM,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACrD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,mCAAmC;IACnC,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACjE,MAAM,MAAM,GAAG,GAAyB,CAAC;QACzC,MAAM,MAAM,GAAG,GAAyB,CAAC;QAEzC,qCAAqC;QACrC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACjD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,8DAA8D;QAC9D,MAAM,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;QAC9B,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChB,OAAO,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC;QAED,4CAA4C;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;QAC/C,MAAM,kBAAkB,GAAG,QAAQ,GAAG,KAAK,CAAC;QAE5C,qDAAqD;QACrD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAC3G,MAAM,SAAS,GAAG,MAAa,CAAC;QAChC,MAAM,MAAM,GAAG,GAAU,CAAC;QAC1B,MAAM,MAAM,GAAG,GAAU,CAAC;QAE1B,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,gDAAgD;QAChD,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAI,UAAkB,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;YAE9B,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACtE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QAED,uCAAuC;QACvC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;IACvE,CAAC;IAED,oDAAoD;IACpD,OAAO,SAAS,CAAC;AACnB,CAAC;AAQD,+EAA+E;AAC/E,gCAAgC;AAChC,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAkB;IACxD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAmB,CAAC;IAEhD,+BAA+B;IAC/B,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACnF,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED,2CAA2C;IAC3C,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC1C,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAChC,CAAC;IAED,4DAA4D;IAC5D,oDAAoD;IACpD,IAAI,QAAQ,CAAC,aAAa,KAAK,SAAS,IAAI,QAAQ,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;QACvF,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QAC/E,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAED,wCAAwC;IACxC,4DAA4D;IAC5D,6DAA6D;IAC7D,oDAAoD;IACpD,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE3B,4DAA4D;IAC5D,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1B,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAE/B,mCAAmC;IACnC,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAClC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAED,yCAAyC;IACzC,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS,IAAI,QAAQ,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACjF,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAED,kDAAkD;IAClD,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACjC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAChC,CAAC;IAED,2CAA2C;IAC3C,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAClC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,0CAA0C;IAC1C,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAClC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;IAED,gCAAgC;IAChC,iFAAiF;IACjF,0EAA0E;IAC1E,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAE1B,0BAA0B;IAC1B,0DAA0D;IAC1D,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEzB,8CAA8C;IAC9C,0DAA0D;IAC1D,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAE/B,kDAAkD;IAClD,0DAA0D;IAC1D,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE9B,4BAA4B;IAC5B,iFAAiF;IACjF,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAExB,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,MAAM,OAAO,aAAa;IAMhB,MAAM,GAAyC,IAAI,GAAG,EAAE,CAAC,CAAC,wBAAwB;IAClF,aAAa,GAA8B,IAAI,GAAG,EAAE,CAAC;IACrD,SAAS,GAAiC,IAAI,GAAG,EAAE,CAAC;IACpD,oBAAoB,GAA4C,IAAI,GAAG,EAAE,CAAC;IAC1E,YAAY,GAAkB,EAAE,CAAC;IACjC,cAAc,CAAkB;IAChC,2BAA2B,CAAS;IACpC,cAAc,CAAyB;IACvC,cAAc,CAAwC;IAE9D,YACE,SAAqB,EACrB,iBAAkC,EAAE,EACpC,8BAAsC,GAAG,EACzC,eAA8B,EAAE,EAChC,cAAsC,EACtC,iBAAwD,EAAE;QAE1D,kBAAkB;QAClB,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAiC,CAAC;QAEpF,0EAA0E;QAC1E,KAAK,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YAChE,MAAM,YAAY,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YACvD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAC5D,CAAC;QAED,gFAAgF;QAChF,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,2BAA2B,GAAG,2BAA2B,CAAC;QAC/D,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,OAAsB;QACpC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;;;OAQG;IACH,aAAa,CAAC,KAA8B;QAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAElD,2BAA2B;QAC3B,MAAM,IAAI,GAAG;YACX,KAAK,CAAC,EAAE,EAA+B,4BAA4B;YACnE,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,EAAE,EAAQ,8CAA8C;SACtF,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzB,sBAAsB;gBACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;gBACvC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBAC7D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,MAAiC;QAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,EAAU;QACjB,iCAAiC;QACjC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,gBAAgB,GAAG,EAAE,CAAC;QAC1B,IAAI,aAAa,GAAwC,SAAS,CAAC;QAEnE,6BAA6B;QAC7B,KAAK,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YAChE,MAAM,GAAG,GAAG,GAAG,YAAsB,IAAI,EAAE,EAAE,CAAC;YAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,KAAK,IAAI,CAAC,CAAC,aAAa,IAAI,QAAQ,GAAG,gBAAgB,CAAC,EAAE,CAAC;gBAC7D,aAAa,GAAG,KAAK,CAAC;gBACtB,gBAAgB,GAAG,QAAQ,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,EAAU;QACvB,IAAI,gBAAgB,GAA0B,SAAS,CAAC;QACxD,IAAI,WAAW,GAA6B,SAAS,CAAC;QAEtD,KAAK,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YAC/D,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC;YACnC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC1E,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACjC,CAAC;YACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,gBAAgB,IAAI,QAAQ,GAAG,CAAC,gBAAgB,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC;gBACtE,gBAAgB,GAAG,QAAQ,CAAC;gBAC5B,WAAW,GAAG,WAAW,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,OAAO,WAAW,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACtC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,QAAwB,CAAC,EAAE,CAAC;gBACxD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,mDAAmD;YACnD,MAAM,SAAS,GAAG,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;YAClD,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,QAAoC;QAC/C,8CAA8C;QAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE7C,sCAAsC;QACtC,MAAM,gBAAgB,GAAiF,EAAE,CAAC;QAE1G,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;YACnC,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC9D,IAAI,aAAa,EAAE,CAAC;gBAClB,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,wDAAwD;QACxD,IAAI,QAAQ,GAAqC,EAAE,CAAC;QACpD,IAAI,QAAQ,GAAqC,EAAE,CAAC;QAEpD,KAAK,MAAM,EAAE,KAAK,EAAE,IAAI,gBAAgB,EAAE,CAAC;YACzC,8BAA8B;YAC9B,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACvF,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC;gBACvB,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC;YACzB,CAAC;YAED,oCAAoC;YACpC,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;gBACxB,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;gBACzG,QAAQ,CAAC,aAAa,GAAG,GAAG,CAAC;gBAC7B,QAAQ,CAAC,aAAa,GAAG,GAAG,CAAC;YAC/B,CAAC;YAED,sCAAsC;YACtC,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;gBAC1B,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,eAAe,EAAE,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;gBAC/G,QAAQ,CAAC,eAAe,GAAG,GAAG,CAAC;gBAC/B,QAAQ,CAAC,eAAe,GAAG,GAAG,CAAC;YACjC,CAAC;YAED,8BAA8B;YAC9B,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACvF,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC;gBACvB,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC;YACzB,CAAC;QACH,CAAC;QAED,kDAAkD;QAClD,MAAM,MAAM,GAAgC,EAAE,CAAC;QAE/C,KAAK,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,gBAAgB,EAAE,CAAC;YACxD,MAAM,MAAM,GAA8B;gBACxC,KAAK;gBACL,KAAK,EAAE,CAAC;gBACR,eAAe,EAAE,aAAa,CAAC,eAAe;gBAC9C,eAAe,EAAE,aAAa,CAAC,eAAe;gBAC9C,eAAe,EAAE,aAAa,CAAC,eAAe;aAC/C,CAAC;YAEF,oBAAoB;YACpB,IAAI,OAA8B,CAAC;YACnC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC7B,CAAC;iBAAM,IAAI,QAAQ,CAAC,aAAa,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;gBACjF,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC/B,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;YACrD,CAAC;YAED,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAEzF,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QAED,2BAA2B;QAC3B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAEzC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,QAAoC;QAC9C,wCAAwC;QACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,KAAK,EAAE,EAAE,CAAC;QAE1B,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACrC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACpD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,+BAA+B;YAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC9D,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,OAAO;gBACL,KAAK;gBACL,QAAQ;gBACR,cAAc,EAAE,QAAQ,CAAC,MAAM;gBAC/B,KAAK,EAAE,GAAG;aACX,CAAC;QACJ,CAAC;QAED,yCAAyC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ;YACR,cAAc,EAAE,QAAQ,CAAC,MAAM;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,OAA0B;QACxC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,QAAgB,EAAE,KAAa;QACxC,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;IACzF,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAkB;QAC5B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACH,uBAAuB,CAAC,IAAkB;QACxC,OAAO,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,eAAe,CACb,KAA8B,EAC9B,SAAkB;QAElB,IAAI,CAAC,SAAS;YAAE,OAAO,OAAO,CAAC;QAC/B,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC;QAC5B,OAAO,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;;OAGG;IACK,iBAAiB,CACvB,KAA8B,EAC9B,QAAoC;QAEpC,6EAA6E;QAC7E,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YAChF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,qCAAqC;QACrC,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACvB,IAAI,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,QAAQ,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnF,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,MAAM,eAAe,GAAsB,EAAE,CAAC;QAC9C,MAAM,eAAe,GAAsB,EAAE,CAAC;QAC9C,MAAM,eAAe,GAAsB,EAAE,CAAC;QAE9C,8DAA8D;QAC9D,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAEnE,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACpC,oCAAoC;gBACpC,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAEhD,4CAA4C;gBAC5C,0FAA0F;gBAC1F,MAAM,mBAAmB,GAAG,CAAC,YAAY,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAEnE,sDAAsD;gBACtD,IAAI,WAAW,IAAI,mBAAmB,EAAE,CAAC;oBACvC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACN,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;YAED,2DAA2D;YAC3D,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,8BAA8B;QAC9B,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACpC,IAAI,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,IAAI,QAAQ,CAAC,kBAAkB,IAAI,QAAQ,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1E,MAAM,cAAc,GAAG,QAAQ,CAAC,kBAAkB,IAAI,EAAE,CAAC;YAEzD,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,kBAAkB,EAAE,CAAC;gBAChD,kEAAkE;gBAClE,IAAI,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBACnC,SAAS;gBACX,CAAC;gBAED,yCAAyC;gBACzC,MAAM,kBAAkB,GAAG,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;gBAE1E,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,4CAA4C;oBAC5C,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;YACtF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,mCAAmC;QACnC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC;YACxG,OAAO,IAAI,CAAC;QACd,CAAC;QAED,kCAAkC;QAClC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,eAAe,EAAE,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC;YACxG,OAAO,IAAI,CAAC;QACd,CAAC;QAED,4BAA4B;QAC5B,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;YACtF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC;IAC/D,CAAC;IAED;;;;;OAKG;IACK,UAAU,CAChB,KAA8B,EAC9B,QAAoC,EACpC,yBAAkC,KAAK,EACvC,QAA2C,EAC3C,QAA2C;QAE3C,MAAM,MAAM,GAA8B;YACxC,KAAK;YACL,KAAK,EAAE,CAAC;YACR,eAAe,EAAE,EAAE;YACnB,eAAe,EAAE,EAAE;YACnB,eAAe,EAAE,EAAE;SACpB,CAAC;QAEF,wDAAwD;QACxD,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC9D,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO,MAAM,CAAC,CAAC,YAAY;YAC7B,CAAC;YACD,MAAM,CAAC,eAAe,GAAG,aAAa,CAAC,eAAe,CAAC;YACvD,MAAM,CAAC,eAAe,GAAG,aAAa,CAAC,eAAe,CAAC;YACvD,MAAM,CAAC,eAAe,GAAG,aAAa,CAAC,eAAe,CAAC;QACzD,CAAC;QAED,qFAAqF;QACrF,IAAI,OAA8B,CAAC;QACnC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC7B,CAAC;aAAM,IAAI,QAAQ,CAAC,aAAa,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACjF,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/B,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;QACrD,CAAC;QAED,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEzF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACK,sBAAsB,CAC5B,KAAgB,EAChB,OAA8B,EAC9B,QAAoC,EACpC,QAA2C,EAC3C,QAA2C;QAE3C,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,QAAQ,GAAG,CAAC,CAAC;QAEjB,gDAAgD;QAChD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,SAA6B,CAAC;YAElC,0EAA0E;YAC1E,IAAI,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBACrD,SAAS,GAAG,cAAc,CACxB,KAAK,CAAC,OAAO,EACb,QAAQ,CAAC,OAAO,CAAC,MAAM,EACvB,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,OAAO,CACjB,CAAC;YACJ,CAAC;YAED,uDAAuD;YACvD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,0CAA0C;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC;gBAClD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC;gBACpD,MAAM,OAAO,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;gBAE7C,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;oBAChB,gCAAgC;oBAChC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;YAED,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,KAAK,IAAI,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;gBAClC,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,IAAI,UAA8B,CAAC;YAEnC,0EAA0E;YAC1E,IAAI,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBACrD,UAAU,GAAG,cAAc,CACzB,KAAK,CAAC,OAAO,EACb,QAAQ,CAAC,OAAO,CAAC,MAAM,EACvB,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,OAAO,CACjB,CAAC;YACJ,CAAC;YAED,uDAAuD;YACvD,IAAI,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,EAAE,eAAe,KAAK,SAAS,EAAE,CAAC;gBAC7E,qDAAqD;gBACrD,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;YAChE,CAAC;YAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,KAAK,IAAI,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC;gBACpC,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;QAED,kEAAkE;QAClE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,IAAI,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC;gBACjC,KAAK,IAAI,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;gBACxD,QAAQ,EAAE,CAAC;YACb,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACtB,6DAA6D;gBAC7D,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC3F,KAAK,IAAI,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;gBACtC,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;QAED,0DAA0D;QAC1D,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1B,IAAI,YAAgC,CAAC;YAErC,iFAAiF;YACjF,IAAI,QAAQ,CAAC,aAAa,EAAE,MAAM,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBAC3D,YAAY,GAAG,cAAc,CAC3B,KAAK,CAAC,aAAa,EACnB,QAAQ,CAAC,aAAa,CAAC,MAAM,EAC7B,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,aAAa,CACvB,CAAC;YACJ,CAAC;YAED,uDAAuD;YACvD,IAAI,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;gBAC1D,8DAA8D;gBAC9D,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC;YAC3D,CAAC;YAED,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,KAAK,IAAI,OAAO,CAAC,aAAa,GAAG,YAAY,CAAC;gBAC9C,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;QAED,+FAA+F;QAC/F,4DAA4D;QAC5D,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,eAAe,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;YAC5F,MAAM,UAAU,GAAG,eAAe,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC9D,wEAAwE;YACxE,qEAAqE;YACrE,MAAM,UAAU,GAAG,GAAG,GAAG,UAAU,CAAC;YACpC,KAAK,IAAI,UAAU,CAAC;QACtB,CAAC;QAED,sFAAsF;QACtF,IAAI,QAAQ,CAAC,kBAAkB,IAAI,QAAQ,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1E,IAAI,uBAAuB,GAAG,CAAC,CAAC;YAChC,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,kBAAkB,EAAE,CAAC;gBAChD,IAAI,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1C,uBAAuB,EAAE,CAAC;gBAC5B,CAAC;YACH,CAAC;YACD,MAAM,UAAU,GAAG,uBAAuB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,MAAM,CAAC;YAChF,uEAAuE;YACvE,MAAM,UAAU,GAAG,GAAG,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;YAC5C,KAAK,IAAI,UAAU,CAAC;QACtB,CAAC;QAED,OAAO,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7D,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,KAA8B;QACnD,IAAI,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QAE1B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC3C,4BAA4B;YAC5B,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC9D,SAAS;YACX,CAAC;YACD,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE,EAAE,CAAC;gBACtD,SAAS;YACX,CAAC;YACD,IAAI,QAAQ,CAAC,YAAY,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnE,SAAS;YACX,CAAC;YAED,kBAAkB;YAClB,MAAM,GAAG;gBACP,GAAG,MAAM;gBACT,GAAG,QAAQ,CAAC,SAAS;gBACrB,uBAAuB;gBACvB,OAAO,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE;gBAC7D,OAAO,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE;gBAC7D,QAAQ,EAAE,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE;aACjE,CAAC;QACJ,CAAC;QAED,sEAAsE;QACtE,sEAAsE;QACtE,wEAAwE;QACxE,kEAAkE;QAClE,EAAE;QACF,0EAA0E;QAC1E,yEAAyE;QACzE,6CAA6C;QAC7C,6DAA6D;QAC7D,IAAI,MAAM,CAAC,YAAY,KAAK,MAAM,EAAE,CAAC;YACnC,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC3C,MAAM,CAAC,YAAY,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBACnD,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,IAA6B,EAAE,MAA+B;QACnF,qBAAqB;QACrB,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QAEnF,0DAA0D;QAC1D,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAE7D,6CAA6C;QAC7C,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;QAErD,gEAAgE;QAChE,MAAM,cAAc,GAAG;YACrB,GAAG,IAAI,CAAC,QAAQ;YAChB,GAAG,MAAM,CAAC,QAAQ;SACnB,CAAC;QAEF,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;YAC9B,YAAY,EAAE,kBAAkB;YAChC,IAAI,EAAE,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;YAC9D,OAAO,EAAE,aAAa;YACtB,aAAa,EAAE,MAAM,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa;YACnF,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe;YAC/D,OAAO,EAAE,aAAa;YACtB,QAAQ,EAAE,cAAc;YACxB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,IAAI,IAAI,CAAC,mBAAmB;YAC3E,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS;YAC7C,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY;YACtD,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB;YAClE,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS;SAC9C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAEpB,sDAAsD;QACtD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAmC,CAAC;QAChE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,EAA+B,CAAC;gBACvE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;oBAC5C,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,MAAM,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACtB,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC;YACtC,OAAO,SAAS,GAAG,SAAS,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,gEAAgE;QAChE,KAAK,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,CAAC;YAEjD,IAAI,CAAC;gBACH,gDAAgD;gBAChD,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;oBACzB,SAAS;gBACX,CAAC;gBAED,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAE/C,+BAA+B;gBAC/B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;oBACnC,wCAAwC;oBACxC,MAAM,GAAG,GAAG,GAAG,YAAsB,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC;oBAExD,kEAAkE;oBAClE,sDAAsD;oBACtD,gEAAgE;oBAChE,6DAA6D;oBAC7D,IAAI,SAAS,GAA4B;wBACvC,GAAG,SAAS;wBACZ,EAAE,EAAE,SAAS,CAAC,EAAE;wBAChB,QAAQ,EAAE,YAAY;wBACtB,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,EAAE;wBACpC,YAAY,EAAE,SAAS,CAAC,YAAY,IAAI,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,CAAsB,CAAC;wBAC3F,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,UAAU,CAAC,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,EAAE,CAAC;wBAClE,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI;4BAC5B,IAAI,EAAE;gCACJ,KAAK,EAAE,IAAI,CAAC,2BAA2B;gCACvC,MAAM,EAAE,IAAI,CAAC,2BAA2B,GAAG,CAAC;6BAC7C;yBACF;wBACD,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,IAAI;wBAC9C,eAAe,EAAE,SAAS,CAAC,eAAe;wBAC1C,OAAO,EAAE,SAAS,CAAC,OAAO;wBAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,EAAE;qBACnC,CAAC;oBAEF,4CAA4C;oBAC5C,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC1C,IAAI,WAAW,EAAE,CAAC;wBAChB,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;oBAC1D,CAAC;oBAED,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,6CAA6C;gBAC7C,OAAO,CAAC,KAAK,CAAC,+BAA+B,YAAY,GAAG,EAAE,KAAK,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAED,+DAA+D;QAC/D,KAAK,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;CAEF"}
package/dist/types.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Type definitions for the class-based AI library.
5
5
  * Reuses core types from @server/ai/core for consistency.
6
6
  */
7
- import type { AgentInput, AnyComponent, BaseChunk, BaseRequest, BaseResponse, Chunk, Component, ComponentCompatible, ComponentInput, ComponentOutput, Context as CoreContext, DescriptorFamily, Executor, Message, Model, ModelInput, OptionalParams, PromptInput, Request, Resource, Response, Simplify, Streamer, ToolCompatible, ToolInput, Usage } from '@aeye/core';
7
+ import type { AgentInput, AnyComponent, AudioFormat, BaseChunk, BaseRequest, BaseResponse, Chunk, Component, ComponentCompatible, ComponentInput, ComponentOutput, Context as CoreContext, DescriptorFamily, Executor, GeneratedImage, HostedToolType, Message, Model, ModelInput, OptionalParams, PromptInput, ReasoningEffort, Request, Resource, Response, Simplify, Streamer, ToolCompatible, ToolInput, Usage } from '@aeye/core';
8
8
  import { AI } from './ai';
9
9
  export type { AgentInput, AnyComponent, Chunk, Component, ComponentInput, ComponentOutput, CoreContext, Executor, Message, OptionalParams, PromptInput, Request, Response, Streamer, ToolInput, Usage };
10
10
  /**
@@ -33,17 +33,21 @@ export type Providers = Record<string, Provider<any>>;
33
33
  * - chat: Basic text completion
34
34
  * - tools: Function/tool calling
35
35
  * - vision: Image understanding
36
+ * - files: Document (e.g. PDF) understanding
37
+ * - videoInput: Video understanding
36
38
  * - json: JSON output mode
37
39
  * - structured: Structured output with schemas
38
40
  * - streaming: Streaming responses
39
41
  * - reasoning: Extended reasoning (like OpenAI o1)
40
42
  * - image: Image generation
41
- * - audio: Text-to-speech
42
- * - hearing: Speech-to-text
43
+ * - audio: Audio output (text-to-speech, or a chat model that speaks)
44
+ * - hearing: Audio input (speech-to-text, or a chat model that listens)
43
45
  * - embedding: Text embeddings
46
+ * - rerank: Ordering documents by relevance to a query
47
+ * - decision: Typed answers (probabilities, choices, scores) about an input
44
48
  * - zdr: Zero data retention
45
49
  */
46
- export type ModelCapability = 'chat' | 'tools' | 'vision' | 'json' | 'structured' | 'streaming' | 'reasoning' | 'image' | 'audio' | 'hearing' | 'embedding' | 'zdr' | 'toolsStrict';
50
+ export type ModelCapability = 'chat' | 'tools' | 'vision' | 'files' | 'videoInput' | 'json' | 'structured' | 'streaming' | 'reasoning' | 'image' | 'audio' | 'hearing' | 'embedding' | 'rerank' | 'decision' | 'zdr' | 'toolsStrict';
47
51
  /**
48
52
  * Model performance and quality tiers.
49
53
  * Used for categorizing models by their capabilities and cost.
@@ -63,6 +67,7 @@ export interface ModelPricing {
63
67
  input?: number;
64
68
  output?: number;
65
69
  cached?: number;
70
+ cacheWrite?: number;
66
71
  };
67
72
  audio?: {
68
73
  input?: number;
@@ -71,6 +76,7 @@ export interface ModelPricing {
71
76
  };
72
77
  image?: {
73
78
  input?: number;
79
+ tokens?: number;
74
80
  output?: {
75
81
  quality: string;
76
82
  sizes: {
@@ -88,6 +94,7 @@ export interface ModelPricing {
88
94
  embeddings?: {
89
95
  cost?: number;
90
96
  };
97
+ tools?: Partial<Record<HostedToolType, number>>;
91
98
  perRequest?: number;
92
99
  }
93
100
  /**
@@ -143,16 +150,18 @@ export interface ModelInfo<TProvider extends string = string> extends Model {
143
150
  * auto-derived from a successful resolution.
144
151
  */
145
152
  strictFormat?: DescriptorFamily | 'none';
153
+ reasoningEfforts?: ReasoningEffort[];
154
+ retiresAt?: string;
146
155
  metadata?: Record<string, unknown>;
147
156
  }
148
157
  /**
149
158
  * Tokenizer type used by the model.
150
159
  */
151
- export type ModelTokenizer = 'Other' | 'GPT' | 'Mistral' | 'Llama3' | 'Qwen3' | 'Qwen' | 'Gemini' | 'Gemma' | 'DeepSeek' | 'Claude' | 'Grok' | 'Llama4' | 'Llama2' | 'Cohere' | 'Nova' | 'Router';
160
+ export type ModelTokenizer = 'Other' | 'GPT' | 'Mistral' | 'Llama3' | 'Qwen3' | 'Qwen' | 'Gemini' | 'Gemma' | 'DeepSeek' | 'Claude' | 'Grok' | 'Llama4' | 'Llama2' | 'Cohere' | 'Nova' | 'Router' | 'Media';
152
161
  /**
153
162
  * Parameter names supported by models.
154
163
  */
155
- export type ModelParameter = 'maxTokens' | 'temperature' | 'topP' | 'frequencyPenalty' | 'presencePenalty' | 'stop' | 'seed' | 'responseFormat' | 'structuredOutput' | 'tools' | 'toolChoice' | 'logitBias' | 'logProbabilities' | 'reason' | 'imageBackground' | 'imageMultiple' | 'imageFormat' | 'imageStream' | 'imageStyle' | 'embeddingDimensions' | 'transcribeStream' | 'transcribePrompt' | 'speechInstructions' | 'toolsStrict';
164
+ export type ModelParameter = 'maxTokens' | 'temperature' | 'topP' | 'frequencyPenalty' | 'presencePenalty' | 'stop' | 'seed' | 'responseFormat' | 'structuredOutput' | 'tools' | 'toolChoice' | 'logitBias' | 'logProbabilities' | 'reason' | 'verbosity' | 'serviceTier' | 'imageBackground' | 'imageMultiple' | 'imageFormat' | 'imageStream' | 'imageStyle' | 'embeddingDimensions' | 'transcribeStream' | 'transcribePrompt' | 'speechInstructions' | 'toolsStrict';
156
165
  /**
157
166
  * Override configuration for model properties.
158
167
  * Allows customizing model information without modifying the provider implementation.
@@ -346,55 +355,54 @@ export type ComponentFor<T extends AIBaseTypes> = ComponentCompatible<AIContextR
346
355
  */
347
356
  export type ToolInfer<A> = A extends AI<infer T> ? ToolCompatible<AIContextRequired<T>, AIMetadataRequired<T>> : never;
348
357
  /**
349
- * Request for generating images from text prompts.
358
+ * Image quality, cheapest to best. Models accept different subsets.
359
+ */
360
+ export type ImageQuality = 'auto' | 'low' | 'medium' | 'high' | 'xhigh' | 'max';
361
+ /**
362
+ * Output options shared by image generation and editing.
350
363
  */
351
- export interface ImageGenerationRequest extends BaseRequest {
364
+ export interface ImageOutputOptions extends BaseRequest {
352
365
  prompt: string;
353
366
  n?: number;
354
367
  size?: string;
355
- quality?: 'low' | 'medium' | 'high';
356
- style?: 'vivid' | 'natural';
357
- responseFormat?: 'url' | 'b64_json';
368
+ quality?: ImageQuality;
358
369
  background?: 'transparent' | 'opaque' | 'auto';
370
+ outputFormat?: 'png' | 'jpeg' | 'webp';
371
+ outputCompression?: number;
372
+ responseFormat?: 'url' | 'b64_json';
359
373
  streamCount?: number;
360
374
  seed?: number;
361
375
  userIdentifier?: string;
362
376
  }
377
+ /**
378
+ * Request for generating images from text prompts.
379
+ */
380
+ export interface ImageGenerationRequest extends ImageOutputOptions {
381
+ style?: 'vivid' | 'natural';
382
+ moderation?: 'auto' | 'low';
383
+ }
363
384
  /**
364
385
  * Request for editing existing images with text prompts.
365
386
  */
366
- export interface ImageEditRequest extends BaseRequest {
367
- prompt: string;
387
+ export interface ImageEditRequest extends ImageOutputOptions {
368
388
  image: Resource;
389
+ references?: Resource[];
369
390
  mask?: Resource;
370
- n?: number;
371
- size?: string;
372
- responseFormat?: 'url' | 'b64_json';
373
- seed?: number;
374
- streamCount?: number;
375
- userIdentifier?: string;
391
+ inputFidelity?: 'low' | 'high';
376
392
  }
377
393
  /**
378
394
  * Response from image generation/editing operations.
379
395
  */
380
396
  export interface ImageGenerationResponse extends BaseResponse {
381
- images: Array<{
382
- url?: string;
383
- b64_json?: string;
384
- revisedPrompt?: string;
385
- }>;
397
+ images: GeneratedImage[];
386
398
  }
387
399
  /**
388
400
  * Streaming chunk for image generation progress.
389
401
  */
390
402
  export interface ImageGenerationChunk extends BaseChunk {
391
- imageData?: string;
392
403
  progress?: number;
393
404
  done?: boolean;
394
- image?: {
395
- url?: string;
396
- b64_json?: string;
397
- };
405
+ image?: GeneratedImage;
398
406
  }
399
407
  /**
400
408
  * Request for transcribing audio to text.
@@ -404,14 +412,29 @@ export interface TranscriptionRequest extends BaseRequest {
404
412
  language?: string;
405
413
  prompt?: string;
406
414
  temperature?: number;
407
- responseFormat?: 'json' | 'text' | 'srt' | 'vtt' | 'verbose_json';
415
+ responseFormat?: 'json' | 'text' | 'srt' | 'vtt' | 'verbose_json' | 'diarized_json';
408
416
  timestampGranularities?: Array<'word' | 'segment'>;
417
+ knownSpeakers?: Array<{
418
+ name: string;
419
+ audio: Resource;
420
+ }>;
421
+ }
422
+ /**
423
+ * A timed span of a transcription.
424
+ */
425
+ export interface TranscriptionSegment {
426
+ id: string;
427
+ start: number;
428
+ end: number;
429
+ text: string;
430
+ speaker?: string;
409
431
  }
410
432
  /**
411
433
  * Response from audio transcription.
412
434
  */
413
435
  export interface TranscriptionResponse extends BaseResponse {
414
436
  text: string;
437
+ segments?: TranscriptionSegment[];
415
438
  }
416
439
  /**
417
440
  * Streaming chunk for transcription progress.
@@ -419,13 +442,7 @@ export interface TranscriptionResponse extends BaseResponse {
419
442
  export interface TranscriptionChunk extends BaseChunk {
420
443
  delta?: string;
421
444
  text?: string;
422
- segment?: {
423
- start: number;
424
- end: number;
425
- speaker: string;
426
- text: string;
427
- id: string;
428
- };
445
+ segment?: TranscriptionSegment;
429
446
  status?: string;
430
447
  }
431
448
  /**
@@ -436,14 +453,14 @@ export interface SpeechRequest extends BaseRequest {
436
453
  instructions?: string;
437
454
  voice?: string;
438
455
  speed?: number;
439
- responseFormat?: 'mp3' | 'opus' | 'aac' | 'flac' | 'wav' | 'pcm';
456
+ responseFormat?: AudioFormat;
440
457
  }
441
458
  /**
442
459
  * Response from speech synthesis.
443
460
  */
444
461
  export interface SpeechResponse extends BaseResponse {
445
462
  audio: ReadableStream<any>;
446
- responseFormat?: 'mp3' | 'opus' | 'aac' | 'flac' | 'wav' | 'pcm';
463
+ responseFormat?: AudioFormat;
447
464
  }
448
465
  /**
449
466
  * Request for generating text embeddings.
@@ -463,6 +480,77 @@ export interface EmbeddingResponse extends BaseResponse {
463
480
  index: number;
464
481
  }>;
465
482
  }
483
+ /**
484
+ * Request to order documents by how relevant they are to a query.
485
+ */
486
+ export interface RerankRequest extends BaseRequest {
487
+ query: string;
488
+ documents: string[];
489
+ topN?: number;
490
+ }
491
+ /**
492
+ * Documents by relevance, most relevant first.
493
+ */
494
+ export interface RerankResponse extends BaseResponse {
495
+ results: Array<{
496
+ index: number;
497
+ score: number;
498
+ }>;
499
+ }
500
+ /**
501
+ * A question a decision model answers about the input.
502
+ *
503
+ * - predicate: how likely a condition is true
504
+ * - choice: which one of the choices applies, keyed by value with a
505
+ * description of when it applies
506
+ * - score: where the input falls on ordered levels, lowest first
507
+ */
508
+ export type DecisionQuestion = {
509
+ type: 'predicate';
510
+ instructions: string;
511
+ } | {
512
+ type: 'choice';
513
+ instructions: string;
514
+ choices: Record<string, string>;
515
+ } | {
516
+ type: 'score';
517
+ instructions: string;
518
+ levels: string[];
519
+ };
520
+ /**
521
+ * A decision model's answer to one question. Probabilities run from 0 to 1;
522
+ * a score is the probability-weighted average of the level indices, so it
523
+ * can fall between levels.
524
+ */
525
+ export type DecisionAnswer = {
526
+ type: 'predicate';
527
+ probability: number;
528
+ } | {
529
+ type: 'choice';
530
+ choice: string;
531
+ probabilities: Record<string, number>;
532
+ confidence: number;
533
+ } | {
534
+ type: 'score';
535
+ score: number;
536
+ probabilities: number[];
537
+ confidence: number;
538
+ } | {
539
+ type: 'refusal';
540
+ };
541
+ /**
542
+ * Request for typed answers about an input, from a decision model.
543
+ */
544
+ export interface DecisionRequest extends BaseRequest {
545
+ input: string | Message[];
546
+ questions: Record<string, DecisionQuestion>;
547
+ }
548
+ /**
549
+ * Answers to a decision request.
550
+ */
551
+ export interface DecisionResponse extends BaseResponse {
552
+ answers: Record<string, DecisionAnswer>;
553
+ }
466
554
  /**
467
555
  * Request for analyzing images with vision models.
468
556
  */
@@ -472,6 +560,35 @@ export interface ImageAnalyzeRequest extends BaseRequest {
472
560
  maxTokens?: number;
473
561
  temperature?: number;
474
562
  }
563
+ /**
564
+ * Where a batch is in its run.
565
+ */
566
+ export type BatchStatus = 'validating' | 'in_progress' | 'finalizing' | 'completed' | 'failed' | 'expired' | 'cancelling' | 'cancelled';
567
+ /**
568
+ * A batch of chat requests running at a provider: cheaper than running
569
+ * them one by one, with results within about a day.
570
+ */
571
+ export interface BatchJob {
572
+ id: string;
573
+ provider: string;
574
+ model: string;
575
+ status: BatchStatus;
576
+ counts?: {
577
+ total: number;
578
+ completed: number;
579
+ failed: number;
580
+ };
581
+ error?: string;
582
+ cost?: number;
583
+ results?: BatchResult[];
584
+ }
585
+ /**
586
+ * The outcome of one request in a batch.
587
+ */
588
+ export interface BatchResult {
589
+ response?: Response;
590
+ error?: string;
591
+ }
475
592
  /**
476
593
  * Model-specific handler that overrides default provider behavior.
477
594
  * Use handlers to provide custom implementations for specific models that differ
@@ -510,7 +627,7 @@ export interface ModelHandler<TContext extends AIContextAny = AIContextAny> {
510
627
  };
511
628
  imageAnalyze?: {
512
629
  get?: <TRuntimeContext extends TContext>(request: ImageAnalyzeRequest, ctx: TRuntimeContext) => Promise<Response>;
513
- streem?: <TRuntimeContext extends TContext>(request: ImageAnalyzeRequest, ctx: TRuntimeContext) => AsyncIterable<Chunk>;
630
+ stream?: <TRuntimeContext extends TContext>(request: ImageAnalyzeRequest, ctx: TRuntimeContext) => AsyncIterable<Chunk>;
514
631
  };
515
632
  transcribe?: {
516
633
  get?: <TRuntimeContext extends TContext>(request: TranscriptionRequest, ctx: TRuntimeContext) => Promise<TranscriptionResponse>;
@@ -522,6 +639,12 @@ export interface ModelHandler<TContext extends AIContextAny = AIContextAny> {
522
639
  embed?: {
523
640
  get?: <TRuntimeContext extends TContext>(request: EmbeddingRequest, ctx: TRuntimeContext) => Promise<EmbeddingResponse>;
524
641
  };
642
+ rerank?: {
643
+ get?: <TRuntimeContext extends TContext>(request: RerankRequest, ctx: TRuntimeContext) => Promise<RerankResponse>;
644
+ };
645
+ decide?: {
646
+ get?: <TRuntimeContext extends TContext>(request: DecisionRequest, ctx: TRuntimeContext) => Promise<DecisionResponse>;
647
+ };
525
648
  }
526
649
  /**
527
650
  * Model handler for AIBaseTypes instance
@@ -647,8 +770,12 @@ export interface Provider<TConfig = any> {
647
770
  transcribeStream?(request: TranscriptionRequest, ctx: AIContextAny, config?: TConfig): AsyncIterable<TranscriptionChunk>;
648
771
  speech?(request: SpeechRequest, ctx: AIContextAny, config?: TConfig): Promise<SpeechResponse>;
649
772
  embed?(request: EmbeddingRequest, ctx: AIContextAny, config?: TConfig): Promise<EmbeddingResponse>;
773
+ rerank?(request: RerankRequest, ctx: AIContextAny, config?: TConfig): Promise<RerankResponse>;
774
+ decide?(request: DecisionRequest, ctx: AIContextAny, config?: TConfig): Promise<DecisionResponse>;
650
775
  analyzeImage?(request: ImageAnalyzeRequest, ctx: AIContextAny, config?: TConfig): Promise<Response>;
651
776
  analyzeImageStream?(request: ImageAnalyzeRequest, ctx: AIContextAny, config?: TConfig): AsyncIterable<Chunk>;
777
+ submitBatch?(requests: Request[], ctx: AIContextAny, config?: TConfig): Promise<BatchJob>;
778
+ getBatch?(job: BatchJob, ctx: AIContextAny, config?: TConfig): Promise<BatchJob>;
652
779
  }
653
780
  /**
654
781
  * Lifecycle hooks for AI operations.
@@ -704,6 +831,12 @@ export interface AIHooks<T extends AIBaseTypes> {
704
831
  * Use this to track usage, update budgets, or log metrics.
705
832
  */
706
833
  afterRequest?: (ctx: AIContext<T>, request: BaseRequest, response: BaseResponse, responseComplete: boolean, selected: SelectedModelFor<T>, usage: Usage, cost: number) => Promise<void> | void;
834
+ /**
835
+ * Called once when a batch is first seen completed (`ai.batch.get` or
836
+ * `wait`), with its total usage and cost. Batches don't run afterRequest:
837
+ * a completed batch read back later no longer has its requests.
838
+ */
839
+ afterBatch?: (ctx: AIContext<T>, job: BatchJob, usage: Usage, cost: number) => Promise<void> | void;
707
840
  /**
708
841
  * Called when an error occurs in any AI operation.
709
842
  * Use this for centralized error logging and monitoring.
@@ -783,6 +916,10 @@ export interface AIConfig<TContext extends AIContextUser, TMetadata extends AIMe
783
916
  audioBase64Divisor?: number;
784
917
  audioFallback?: number;
785
918
  audioMax?: number;
919
+ videoDivisor?: number;
920
+ videoBase64Divisor?: number;
921
+ videoFallback?: number;
922
+ videoMax?: number;
786
923
  };
787
924
  defaultCostPerMillionTokens?: number;
788
925
  }