@sriinnu/kosha-discovery 1.10.0 → 1.11.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 (57) hide show
  1. package/dist/cli-cmd-doctor.d.ts +7 -0
  2. package/dist/cli-cmd-doctor.d.ts.map +1 -1
  3. package/dist/cli-cmd-doctor.js +11 -9
  4. package/dist/cli-cmd-doctor.js.map +1 -1
  5. package/dist/cli-cmd-query.d.ts +5 -0
  6. package/dist/cli-cmd-query.d.ts.map +1 -1
  7. package/dist/cli-cmd-query.js +64 -12
  8. package/dist/cli-cmd-query.js.map +1 -1
  9. package/dist/cli-cmd-spend.d.ts +6 -0
  10. package/dist/cli-cmd-spend.d.ts.map +1 -1
  11. package/dist/cli-cmd-spend.js +22 -6
  12. package/dist/cli-cmd-spend.js.map +1 -1
  13. package/dist/cli-commands.d.ts +4 -4
  14. package/dist/cli-commands.d.ts.map +1 -1
  15. package/dist/cli-commands.js +14 -12
  16. package/dist/cli-commands.js.map +1 -1
  17. package/dist/cli-help.d.ts.map +1 -1
  18. package/dist/cli-help.js +5 -1
  19. package/dist/cli-help.js.map +1 -1
  20. package/dist/cli.js +4 -1
  21. package/dist/cli.js.map +1 -1
  22. package/dist/cost.d.ts +4 -0
  23. package/dist/cost.d.ts.map +1 -1
  24. package/dist/cost.js +27 -18
  25. package/dist/cost.js.map +1 -1
  26. package/dist/index.d.ts +1 -1
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +1 -1
  29. package/dist/index.js.map +1 -1
  30. package/dist/mcp-server.d.ts.map +1 -1
  31. package/dist/mcp-server.js +12 -8
  32. package/dist/mcp-server.js.map +1 -1
  33. package/dist/price-trust.d.ts +29 -0
  34. package/dist/price-trust.d.ts.map +1 -0
  35. package/dist/price-trust.js +36 -0
  36. package/dist/price-trust.js.map +1 -0
  37. package/dist/proxy.d.ts.map +1 -1
  38. package/dist/proxy.js +138 -28
  39. package/dist/proxy.js.map +1 -1
  40. package/dist/registry-query.d.ts +1 -1
  41. package/dist/registry-query.d.ts.map +1 -1
  42. package/dist/registry-query.js +90 -25
  43. package/dist/registry-query.js.map +1 -1
  44. package/dist/registry-routing.d.ts +3 -1
  45. package/dist/registry-routing.d.ts.map +1 -1
  46. package/dist/registry-routing.js +7 -8
  47. package/dist/registry-routing.js.map +1 -1
  48. package/dist/registry.d.ts.map +1 -1
  49. package/dist/registry.js +37 -23
  50. package/dist/registry.js.map +1 -1
  51. package/dist/server.d.ts.map +1 -1
  52. package/dist/server.js +6 -0
  53. package/dist/server.js.map +1 -1
  54. package/dist/types.d.ts +13 -0
  55. package/dist/types.d.ts.map +1 -1
  56. package/package.json +1 -1
  57. package/server.json +2 -2
package/dist/proxy.js CHANGED
@@ -39,6 +39,7 @@
39
39
  */
40
40
  import { randomUUID } from "node:crypto";
41
41
  import { actualCostFromUsage, appendLedgerEntry, estimateRequestCost, readMonthlyBudgetUsd, readSpendForMonth, readTenantBudgetUsd, } from "./cost.js";
42
+ import { isUnverifiedZeroPrice } from "./price-trust.js";
42
43
  import { getProviderDescriptor, listProviderDescriptors, providerExecutionCredentialRequired, } from "./provider-catalog.js";
43
44
  import { parseRouteStrategy } from "./registry-routing.js";
44
45
  import { fallbackRegistryCredential, getRegistryCredentialResolver } from "./registry-runtime.js";
@@ -208,18 +209,6 @@ function isForwardable(model) {
208
209
  }
209
210
  return false; // cloud-sdk (bedrock, vertex) needs per-SDK translation
210
211
  }
211
- /**
212
- * True when the card says input and output are both free, but nothing other
213
- * than a catalog vouches for it. OpenRouter's `:free` ids are the exception:
214
- * the provider bills by id, so a `:free` route costs nothing whatever the
215
- * catalog says.
216
- */
217
- function isUnverifiedZeroPrice(model) {
218
- const pricing = model.pricing;
219
- if (pricing?.inputPerMillion !== 0 || pricing.outputPerMillion !== 0)
220
- return false;
221
- return !(model.provider === "openrouter" && model.id.endsWith(":free"));
222
- }
223
212
  function isExecutableRoute(registry, model) {
224
213
  if (!isForwardable(model))
225
214
  return false;
@@ -239,23 +228,28 @@ function isExecutableRoute(registry, model) {
239
228
  function resolveProxyCandidates(registry, requested) {
240
229
  const hint = parseKoshaHint(requested);
241
230
  if (hint !== null) {
242
- const ranked = registry.rankedRoutes({
231
+ // Context and forwardability filter the candidates before the cut to 20.
232
+ // Filtering after it left nothing whenever the 20 cheapest failed them,
233
+ // and in 1.10.0 those were all catalog $0 routes.
234
+ // Routes with credentials and routes without get their own cut, so 20
235
+ // cheaper routes we can't call never push out one we can.
236
+ const query = {
243
237
  mode: "chat",
244
238
  capability: hint.capability,
245
239
  provider: hint.provider,
240
+ minContextWindow: hint.minContext ?? undefined,
246
241
  limit: 20,
247
- }, hint.strategy);
248
- const filtered = hint.minContext
249
- ? ranked.filter((r) => r.model.contextWindow >= hint.minContext)
250
- : ranked;
251
- const exec = filtered.filter((r) => isExecutableRoute(registry, r.model)).map((r) => r.model);
252
- const fwd = filtered
253
- .filter((r) => isForwardable(r.model) && !isExecutableRoute(registry, r.model))
242
+ };
243
+ const exec = registry
244
+ .rankedRoutes({ ...query, where: (model) => isExecutableRoute(registry, model) }, hint.strategy)
245
+ .map((r) => r.model);
246
+ const fwd = registry
247
+ .rankedRoutes({ ...query, where: (model) => isForwardable(model) && !isExecutableRoute(registry, model) }, hint.strategy)
254
248
  .map((r) => r.model);
255
249
  // A catalog-only $0 would otherwise top every price ranking; the real
256
250
  // bill would be whatever the provider charges. Try those routes last.
257
251
  const ordered = dedupeModels([...exec, ...fwd]);
258
- const trusted = ordered.filter((m) => !isUnverifiedZeroPrice(m) || getProviderDescriptor(m.provider)?.isLocal === true);
252
+ const trusted = ordered.filter((m) => !isUnverifiedZeroPrice(m));
259
253
  const unverified = ordered.filter((m) => !trusted.includes(m));
260
254
  return [...trusted, ...unverified];
261
255
  }
@@ -430,6 +424,65 @@ function observeOpenAIStreamUsage(upstream) {
430
424
  // Route registration
431
425
  // ---------------------------------------------------------------------------
432
426
  export function registerProxyRoutes(app, registry, shutdownSignal) {
427
+ // Spend rows that didn't reach the ledger. Budgets are enforced against
428
+ // the ledger, so while any are held, budgeted requests are refused, like a
429
+ // failed read. Each budgeted request first writes the held rows again, in
430
+ // order, to their real partition files; only when all of them land does it
431
+ // go ahead. A probe file beside the ledger can't prove that (a read-only
432
+ // partition in a writable directory passes it), and the lost spend would
433
+ // never be counted.
434
+ const unwrittenRows = [];
435
+ let replaying = null;
436
+ const writeLedgerRow = (entry) => appendLedgerEntry(entry).catch((err) => {
437
+ unwrittenRows.push(entry);
438
+ console.error("kosha: ledger write failed:", err instanceof Error ? err.message : String(err));
439
+ });
440
+ const ledgerCaughtUp = () => {
441
+ if (unwrittenRows.length === 0)
442
+ return Promise.resolve(true);
443
+ // One replay at a time, so concurrent requests don't write a row twice.
444
+ replaying ??= (async () => {
445
+ try {
446
+ while (unwrittenRows.length > 0) {
447
+ await appendLedgerEntry(unwrittenRows[0]);
448
+ unwrittenRows.shift();
449
+ }
450
+ return true;
451
+ }
452
+ catch {
453
+ return false;
454
+ }
455
+ finally {
456
+ replaying = null;
457
+ }
458
+ })();
459
+ return replaying;
460
+ };
461
+ // Estimates of requests cleared to go upstream whose ledger rows haven't
462
+ // landed yet. The budget check counts them, so concurrent requests can't
463
+ // all pass against the same committed spend. In-process only: two proxy
464
+ // processes sharing one ledger can still overshoot by their in-flight work.
465
+ let reservedUsd = 0;
466
+ const reservedByTenant = new Map();
467
+ const reserve = (usd, tenant) => {
468
+ reservedUsd += usd;
469
+ if (tenant)
470
+ reservedByTenant.set(tenant, (reservedByTenant.get(tenant) ?? 0) + usd);
471
+ let released = false;
472
+ return () => {
473
+ if (released)
474
+ return;
475
+ released = true;
476
+ reservedUsd = Math.max(0, reservedUsd - usd);
477
+ if (!tenant)
478
+ return;
479
+ const left = (reservedByTenant.get(tenant) ?? 0) - usd;
480
+ if (left > 1e-12)
481
+ reservedByTenant.set(tenant, left);
482
+ else
483
+ reservedByTenant.delete(tenant);
484
+ };
485
+ };
433
486
  // OpenAI-compatible model list — returns all models the proxy can forward.
434
487
  // Required for SDK compatibility: OpenAI clients call this before chat requests.
435
488
  app.get("/proxy/v1/models", (ctx) => {
@@ -444,7 +497,7 @@ export function registerProxyRoutes(app, registry, shutdownSignal) {
444
497
  })),
445
498
  });
446
499
  });
447
- app.post("/proxy/v1/chat/completions", async (ctx) => {
500
+ const handleChat = async (ctx, hold) => {
448
501
  // ── Parse request ──────────────────────────────────────────────
449
502
  let body;
450
503
  try {
@@ -496,9 +549,15 @@ export function registerProxyRoutes(app, registry, shutdownSignal) {
496
549
  // tenant tag per request. A per-tenant cap is an additional gate.
497
550
  const budget = readMonthlyBudgetUsd();
498
551
  const tenantBudget = tenant ? readTenantBudgetUsd() : null;
552
+ let spent = 0;
553
+ let tenantSpent = 0;
499
554
  if (budget !== null || tenantBudget !== null) {
500
- let spent = 0;
501
- let tenantSpent = 0;
555
+ if (!(await ledgerCaughtUp())) {
556
+ return ctx.json({
557
+ error: "budget enforcement unavailable — spend could not be written to the ledger",
558
+ budgetUsd: budget ?? tenantBudget,
559
+ }, 503);
560
+ }
502
561
  try {
503
562
  if (budget !== null)
504
563
  spent = await readSpendForMonth(Date.now());
@@ -545,6 +604,7 @@ export function registerProxyRoutes(app, registry, shutdownSignal) {
545
604
  let sawCredentialedRoute = false;
546
605
  let lastUnsupportedWire = null;
547
606
  let skippedUnpriced = false;
607
+ let overBudgetCap = null;
548
608
  const wantsStream = body.stream === true;
549
609
  const includeUsage = wantsStream && body.stream_options?.include_usage === true;
550
610
  for (const model of candidates) {
@@ -585,6 +645,21 @@ export function registerProxyRoutes(app, registry, shutdownSignal) {
585
645
  skippedUnpriced = true;
586
646
  continue;
587
647
  }
648
+ // The gate above only knows the cap isn't reached yet. A request
649
+ // whose own estimate would cross it is refused here, per route, so a
650
+ // cheaper route can still take it.
651
+ const routeEstimate = estimateRequestCost(model, body)?.estimatedUsd ?? 0;
652
+ const tenantReserved = tenant ? (reservedByTenant.get(tenant) ?? 0) : 0;
653
+ const overGlobal = budget !== null && spent + reservedUsd + routeEstimate > budget;
654
+ const overTenant = tenantBudget !== null && tenantSpent + tenantReserved + routeEstimate > tenantBudget;
655
+ if (overGlobal || overTenant) {
656
+ attemptChain.push(`${model.provider}:over-budget`);
657
+ overBudgetCap ??= overGlobal ? "global" : "tenant";
658
+ continue;
659
+ }
660
+ // Held until this request's ledger row lands; a failover swaps it.
661
+ hold.release?.();
662
+ hold.release = reserve(routeEstimate, tenant);
588
663
  const usesAnthropicWire = model.provider === "anthropic";
589
664
  const upstreamHeaders = { "content-type": "application/json" };
590
665
  let upstreamBody;
@@ -737,7 +812,7 @@ export function registerProxyRoutes(app, registry, shutdownSignal) {
737
812
  const recordSpend = (actual) => {
738
813
  if (!estimate || !upstreamOk)
739
814
  return;
740
- appendLedgerEntry({
815
+ hold.write = writeLedgerRow({
741
816
  ts: Date.now(),
742
817
  provider: model.provider,
743
818
  modelId: model.id,
@@ -759,12 +834,12 @@ export function registerProxyRoutes(app, registry, shutdownSignal) {
759
834
  usageSource: "upstream",
760
835
  }
761
836
  : { usageSource: "estimate" }),
762
- }).catch(() => { });
837
+ });
763
838
  };
764
839
  const recordAdjustment = (actual) => {
765
840
  if (!estimate || !upstreamOk || !actual)
766
841
  return;
767
- appendLedgerEntry({
842
+ void writeLedgerRow({
768
843
  ts: Date.now(),
769
844
  provider: model.provider,
770
845
  modelId: model.id,
@@ -785,7 +860,7 @@ export function registerProxyRoutes(app, registry, shutdownSignal) {
785
860
  cacheReadTokens: actual.cacheReadTokens,
786
861
  cacheWriteTokens: actual.cacheWriteTokens,
787
862
  usageSource: "upstream",
788
- }).catch(() => { });
863
+ });
789
864
  };
790
865
  const reflectActual = (actual) => {
791
866
  if (actual) {
@@ -921,6 +996,24 @@ export function registerProxyRoutes(app, registry, shutdownSignal) {
921
996
  attemptChain,
922
997
  }, 422);
923
998
  }
999
+ if (overBudgetCap !== null && fetchAttempts === 0) {
1000
+ // Report the cap that refused it, with the same headers as the other 429s.
1001
+ const tenantCap = overBudgetCap === "tenant";
1002
+ const capUsd = (tenantCap ? tenantBudget : budget);
1003
+ const capSpent = tenantCap ? tenantSpent : spent;
1004
+ return ctx.json({
1005
+ error: tenantCap
1006
+ ? "this request would exceed the tenant monthly budget"
1007
+ : "this request would exceed the monthly budget",
1008
+ ...(tenantCap ? { tenant } : {}),
1009
+ spentUsd: capSpent,
1010
+ budgetUsd: capUsd,
1011
+ attemptChain,
1012
+ }, 429, {
1013
+ "x-kosha-budget-remaining-usd": Math.max(0, capUsd - capSpent).toFixed(4),
1014
+ "x-kosha-budget-usd": capUsd.toFixed(2),
1015
+ });
1016
+ }
924
1017
  if (skippedUnpriced && fetchAttempts === 0) {
925
1018
  return ctx.json({
926
1019
  error: "no priced route for this model; with a spend budget set, kosha only forwards models it can charge to the ledger",
@@ -928,6 +1021,23 @@ export function registerProxyRoutes(app, registry, shutdownSignal) {
928
1021
  }, 422);
929
1022
  }
930
1023
  return ctx.json({ error: "all upstream providers failed", attemptChain }, 502);
1024
+ };
1025
+ app.post("/proxy/v1/chat/completions", async (ctx) => {
1026
+ const hold = { release: null, write: null };
1027
+ try {
1028
+ return await handleChat(ctx, hold);
1029
+ }
1030
+ finally {
1031
+ // Release the budget hold once the spend it stood for is in the
1032
+ // ledger (or held for replay, which blocks budgeted requests anyway).
1033
+ const release = hold.release;
1034
+ if (release) {
1035
+ if (hold.write)
1036
+ void hold.write.finally(release);
1037
+ else
1038
+ release();
1039
+ }
1040
+ }
931
1041
  });
932
1042
  }
933
1043
  //# sourceMappingURL=proxy.js.map
package/dist/proxy.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,8 @@
6
6
  * policy while preserving the public API.
7
7
  * @module
8
8
  */
9
- import type { CapabilitySummary, CheapestModelOptions, CheapestModelResult, ModelCard, ModelMode, ModelRouteInfo, PricingMetric, ProviderCredentialPrompt, ProviderInfo, ProviderRoleInfo, RoleQueryOptions } from "./types.js";
10
9
  import type { RegistryState } from "./registry-state.js";
10
+ import type { CapabilitySummary, CheapestModelOptions, CheapestModelResult, ModelCard, ModelMode, ModelRouteInfo, PricingMetric, ProviderCredentialPrompt, ProviderInfo, ProviderRoleInfo, RoleQueryOptions } from "./types.js";
11
11
  /**
12
12
  * Return a stable provider descriptor, even for synthetic test providers.
13
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"registry-query.d.ts","sourceRoot":"","sources":["../src/registry-query.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACX,iBAAiB,EAEjB,oBAAoB,EACpB,mBAAmB,EACnB,SAAS,EACT,SAAS,EACT,cAAc,EACd,aAAa,EACb,wBAAwB,EACxB,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,YAAY,CAAC;AAQpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA+CzD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY,sDAchH;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAErD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAOrF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,KAAK,EAAE,aAAa,EACpB,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5F,SAAS,EAAE,CAuBb;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,CAoCzG;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,wBAAwB,EAAE,CAyBzH;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,mBAAmB,CAiChH;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,CAOtF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,EAAE,CAyB9F;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,iBAAiB,EAAE,CAqB9G;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,aAAa,CAOlF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAChC,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,aAAa,EACrB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,gBAAgB,CAAC,EAAE,MAAM,GACvB,MAAM,GAAG,SAAS,CAqBpB;AAiBD;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAGhE"}
1
+ {"version":3,"file":"registry-query.d.ts","sourceRoot":"","sources":["../src/registry-query.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EACX,iBAAiB,EAEjB,oBAAoB,EACpB,mBAAmB,EACnB,SAAS,EACT,SAAS,EACT,cAAc,EACd,aAAa,EACb,wBAAwB,EACxB,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,YAAY,CAAC;AA+CpB;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY,sDAgBhH;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMxD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAErD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAOrF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,KAAK,EAAE,aAAa,EACpB,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5F,SAAS,EAAE,CAuBb;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,CAuCzG;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAC/C,KAAK,EAAE,aAAa,EACpB,WAAW,CAAC,EAAE,MAAM,EAAE,GACpB,wBAAwB,EAAE,CA6B5B;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,mBAAmB,CAkEhH;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,CAOtF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,EAAE,CA2C9F;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,iBAAiB,EAAE,CA+B9G;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,aAAa,CAelF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAChC,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,aAAa,EACrB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,gBAAgB,CAAC,EAAE,MAAM,GACvB,MAAM,GAAG,SAAS,CAyBpB;AA2BD;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAGhE"}