log10x-mcp 1.29.37 → 1.29.38

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.
@@ -88,6 +88,22 @@ export interface DestinationCostModel {
88
88
  storage_per_gb_month: number;
89
89
  billing_basis: BillingBasis;
90
90
  compact_mode: CompactMode;
91
+ /**
92
+ * What the customer must have for compact to be real here — the app, plugin,
93
+ * or view that expands compacted events again, with its platform and version
94
+ * constraint. Rendered on any plan that prices compact: a lever whose
95
+ * prerequisite is unstated is a lever we are guessing at.
96
+ */
97
+ compact_requires?: string;
98
+ /** Same contract for tier_down: the tier, and what enables it. */
99
+ tier_down_requires?: string;
100
+ /**
101
+ * Why compact is not offered here, when the reason is NOT "the destination
102
+ * cannot accept encoded events". Serverless-style platforms accept them
103
+ * happily and have nowhere to install an expander, which would leave the
104
+ * customer with unreadable events — not a keep-everything lever.
105
+ */
106
+ compact_unavailable_reason?: string;
91
107
  /**
92
108
  * Ratio of POST-compact bytes / PRE-compact bytes for the destination's
93
109
  * billed measure. Lower = better savings. Range describes uncertainty.
@@ -283,18 +299,21 @@ export declare function getAllowedActionsForDestination(destination: string): Ac
283
299
  * numbering jumps 5 to 7. `test/compaction-claim-drift.test.ts` fails if
284
300
  * a rival notion appears.
285
301
  */
286
- export declare function compactsInPlace(destination: string): boolean;
287
302
  /**
288
- * Returns the cost model for a destination, with ES-unpruned override.
289
- *
290
- * ES-unpruned ratios default to the 0.45-0.55 band. Pruning detection is
291
- * the caller's job: read the customer's index template or helm values for
292
- * `_source.excludes`.
303
+ * The actions available on a destination GIVEN THE DEPLOYMENT — the single
304
+ * source of truth for availability, so the lever choice and the plan's action
305
+ * set can never disagree.
293
306
  *
294
- * @param dest destination SIEM id
295
- * @param opts esPruned: when destination is 'elasticsearch' and this
296
- * is explicitly false, the unpruned ratio band is used.
307
+ * The base list omits compaction on the Elasticsearch/OpenSearch family
308
+ * because the expander is the l1es plugin, installable only on nodes the
309
+ * customer controls. A CONFIRMED self-managed deployment adds it back.
310
+ * Serverless never qualifies: its compact_mode is 'no-op' precisely because
311
+ * there is no plugin surface, so the guard below refuses it there too.
297
312
  */
313
+ export declare function getAvailableActions(destination: SiemId, opts?: {
314
+ selfManaged?: boolean;
315
+ }): Action[];
316
+ export declare function compactsInPlace(destination: string): boolean;
298
317
  export declare function getDestinationCostModel(dest: SiemId, opts?: {
299
318
  esPruned?: boolean;
300
319
  }): DestinationCostModel;
package/build/lib/cost.js CHANGED
@@ -109,6 +109,7 @@ export const COST_MODEL_BY_DESTINATION = {
109
109
  storage_per_gb_month: 0.1,
110
110
  billing_basis: 'uncompressed-ingest',
111
111
  compact_mode: 'envelope',
112
+ compact_requires: 'the 10x Splunk app installed (it decodes compacted events at search time)',
112
113
  compact_ratio_low: 0.08,
113
114
  compact_ratio_high: 0.15,
114
115
  small_event_floor_bytes: 100,
@@ -142,7 +143,15 @@ export const COST_MODEL_BY_DESTINATION = {
142
143
  ingest_per_gb: DEFAULT_ANALYZER_COST_PER_GB.elasticsearch,
143
144
  storage_per_gb_month: 0.05,
144
145
  billing_basis: 'indexed-uncompressed',
146
+ // compact_mode describes the MECHANISM (encoded events shrink the _source
147
+ // footprint ES bills on). Whether it is AVAILABLE depends on the
148
+ // deployment: the l1es plugin installs on self-managed nodes only, and is
149
+ // built against specific versions. So this generic key does not offer
150
+ // compact — `elasticsearch_self` does. Ask which deployment before
151
+ // pricing compact on Elasticsearch.
145
152
  compact_mode: 'index-pruned',
153
+ compact_requires: 'the l1es plugin installed on your nodes (self-managed Elasticsearch 8.17.0; OpenSearch 2.19.0) — pass destination=elasticsearch_self once confirmed',
154
+ tier_down_requires: 'frozen searchable snapshots — an Enterprise licence self-managed, or Gold+ on Elastic Cloud Hosted',
146
155
  compact_ratio_low: 0.3,
147
156
  compact_ratio_high: 0.4,
148
157
  small_event_floor_bytes: 100,
@@ -192,10 +201,20 @@ export const COST_MODEL_BY_DESTINATION = {
192
201
  ingest_per_gb: DEFAULT_ANALYZER_COST_PER_GB['elastic-serverless'],
193
202
  storage_per_gb_month: 0.017,
194
203
  billing_basis: 'uncompressed-ingest',
195
- compact_mode: 'index-pruned',
196
- compact_ratio_low: 0.3,
197
- compact_ratio_high: 0.4,
204
+ // COMPACT IS NOT A LEVER ON SERVERLESS. The bytes would shrink, but the
205
+ // expander is an Elasticsearch PLUGIN (l1es, installed with
206
+ // `bin/elasticsearch-plugin install` or baked into a node image) and
207
+ // Serverless has no plugin surface at all. Shipping encoded events with
208
+ // nothing to expand them leaves the customer reading `~hash,val,val`,
209
+ // which is not a keep-everything lever whatever the byte number says.
210
+ // This entry previously inherited ES's index-pruned mode and priced a
211
+ // 65% saving the platform cannot deliver.
212
+ compact_mode: 'no-op',
213
+ compact_unavailable_reason: 'the l1es expander is an Elasticsearch plugin and Elastic Serverless has no plugin surface — compacted events would arrive unreadable',
214
+ compact_ratio_low: 1.0,
215
+ compact_ratio_high: 1.0,
198
216
  small_event_floor_bytes: 100,
217
+ tier_down_requires: 'the Serverless cost-efficient tier (rate below is derived, not quoted — confirm against your live Serverless price)',
199
218
  // Elastic Serverless DOES offer a cheaper searchable tier (confirmed with
200
219
  // product): tier_down routes there, and per the ladder it is taken before
201
220
  // offload. Rate is the conservative 0.60 cost-delta on the ingest floor
@@ -212,6 +231,7 @@ export const COST_MODEL_BY_DESTINATION = {
212
231
  storage_per_gb_month: 0.023,
213
232
  billing_basis: 'stored-month',
214
233
  compact_mode: 'dict-udf-view',
234
+ compact_requires: 'the 10x ClickHouse dictionary + UDF + view installed',
215
235
  compact_ratio_low: 0.22,
216
236
  compact_ratio_high: 0.3,
217
237
  small_event_floor_bytes: 80,
@@ -324,14 +344,19 @@ export const DEFAULT_ACTION_BY_DESTINATION = {
324
344
  // Splunk: 10x envelope-compact app installable on both Cloud and Enterprise.
325
345
  splunk: ['compact', 'offload'],
326
346
  splunk_cloud: ['compact', 'offload'],
327
- // Self-hosted ES/OS can run the 10x plugin; managed offerings cannot.
347
+ // Self-hosted ES/OS can run the l1es plugin (built for ES 8.17.0 /
348
+ // OpenSearch 2.19.0); managed offerings cannot, and Serverless has no plugin
349
+ // surface at all.
328
350
  // tier_down works via a frozen searchable snapshot (identity
329
351
  // survives). Needs an Enterprise licence self-managed, or Gold+ on Elastic
330
352
  // Cloud Hosted; the recipe states that as a prerequisite.
331
- elasticsearch: ['tier_down', 'offload', 'compact'],
332
- // Same actions as self-hosted, different rates. tier_down is absent on
333
- // purpose: Serverless retention is already near object-storage cost.
334
- 'elastic-serverless': ['tier_down', 'compact', 'offload'],
353
+ // Deployment unknown: tier_down is a PLATFORM feature (frozen searchable
354
+ // snapshots, licence-gated) so it holds either way; compact needs OUR plugin
355
+ // and therefore self-managed, which only `elasticsearch_self` asserts.
356
+ elasticsearch: ['tier_down', 'offload'],
357
+ // Serverless: the cheaper searchable tier is confirmed with product; compact
358
+ // is not offered (no plugin surface for the expander — see the model entry).
359
+ 'elastic-serverless': ['tier_down', 'offload'],
335
360
  elasticsearch_self: ['compact', 'offload'],
336
361
  elasticsearch_managed: ['offload'],
337
362
  opensearch_self: ['compact', 'offload'],
@@ -395,8 +420,41 @@ export function getAllowedActionsForDestination(destination) {
395
420
  * numbering jumps 5 to 7. `test/compaction-claim-drift.test.ts` fails if
396
421
  * a rival notion appears.
397
422
  */
423
+ /**
424
+ * The actions available on a destination GIVEN THE DEPLOYMENT — the single
425
+ * source of truth for availability, so the lever choice and the plan's action
426
+ * set can never disagree.
427
+ *
428
+ * The base list omits compaction on the Elasticsearch/OpenSearch family
429
+ * because the expander is the l1es plugin, installable only on nodes the
430
+ * customer controls. A CONFIRMED self-managed deployment adds it back.
431
+ * Serverless never qualifies: its compact_mode is 'no-op' precisely because
432
+ * there is no plugin surface, so the guard below refuses it there too.
433
+ */
434
+ export function getAvailableActions(destination, opts) {
435
+ const base = getAllowedActionsForDestination(destination);
436
+ const d = String(destination);
437
+ const pluginFamily = d.startsWith('elasticsearch') || d.startsWith('opensearch');
438
+ if (opts?.selfManaged === true &&
439
+ pluginFamily &&
440
+ !base.includes('compact') &&
441
+ compactsInPlace(destination)) {
442
+ return [...base, 'compact'];
443
+ }
444
+ return base;
445
+ }
398
446
  export function compactsInPlace(destination) {
399
- const model = COST_MODEL_BY_DESTINATION[destination];
447
+ // Alias-aware: a deployment variant (elasticsearch_self, splunk_cloud …)
448
+ // has no model of its own but compacts exactly like its base. Reading the
449
+ // raw table here made every variant silently non-compacting, which sent the
450
+ // solver past a real lever to offload.
451
+ let model;
452
+ try {
453
+ model = getDestinationCostModel(destination);
454
+ }
455
+ catch {
456
+ return false; // unmodeled destination: no compact claim
457
+ }
400
458
  if (!model)
401
459
  return false;
402
460
  return model.compact_mode !== 'no-op';
@@ -412,8 +470,37 @@ export function compactsInPlace(destination) {
412
470
  * @param opts esPruned: when destination is 'elasticsearch' and this
413
471
  * is explicitly false, the unpruned ratio band is used.
414
472
  */
473
+ /**
474
+ * Deployment variants that share a modeled sibling's economics. The variant
475
+ * exists to assert a different LEVER SET (self-managed can run our plugin,
476
+ * managed cannot), not different rates — so it resolves to the base model.
477
+ * Without this, every variant key returned `undefined` and the first read of
478
+ * a rate crashed inside projectAction with a bare TypeError.
479
+ */
480
+ const COST_MODEL_ALIAS = {
481
+ splunk_cloud: 'splunk',
482
+ elasticsearch_self: 'elasticsearch',
483
+ elasticsearch_managed: 'elasticsearch',
484
+ opensearch_self: 'elasticsearch',
485
+ opensearch_managed: 'elasticsearch',
486
+ };
415
487
  export function getDestinationCostModel(dest, opts) {
488
+ const aliased = COST_MODEL_ALIAS[dest];
489
+ if (aliased) {
490
+ const model = getDestinationCostModel(aliased, opts);
491
+ // Keep the caller's destination on the returned model so disclosure lines
492
+ // name what the user actually asked about, not the sibling we priced from.
493
+ return { ...model, destination: dest };
494
+ }
416
495
  const base = COST_MODEL_BY_DESTINATION[dest];
496
+ if (!base) {
497
+ // Offload-only destinations (loki, honeycomb, newrelic, grafana, generic)
498
+ // have no rate model. Say so instead of handing back undefined and letting
499
+ // the first property read explode three frames deeper.
500
+ throw new Error(`No cost model for destination "${dest}". Modeled destinations: ` +
501
+ `${Object.keys(COST_MODEL_BY_DESTINATION).join(', ')}. ` +
502
+ `Pass effective_ingest_per_gb to price an unmodeled destination, or pick a modeled one.`);
503
+ }
417
504
  if (dest === 'elasticsearch' && opts?.esPruned === false) {
418
505
  return {
419
506
  ...base,
@@ -1 +1 @@
1
- {"version":3,"file":"cost.js","sourceRoot":"","sources":["../../src/lib/cost.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cost.js","sourceRoot":"","sources":["../../src/lib/cost.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAGH,OAAO,EAAE,4BAA4B,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAErF,qEAAqE;AACrE,qEAAqE;AACrE,qEAAqE;AACrE,sEAAsE;AACtE,iBAAiB;AACjB,MAAM,EAAE,GAAG,aAAa,CAAC;AAEzB,8EAA8E;AAC9E,+EAA+E;AAC/E,4EAA4E;AAC5E,2EAA2E;AAC3E,gFAAgF;AAChF,4EAA4E;AAC5E,iFAAiF;AACjF,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAE7C,8EAA8E;AAC9E,gDAAgD;AAChD,8EAA8E;AAE9E,+DAA+D;AAC/D,MAAM,UAAU,WAAW,CAAC,KAAa,EAAE,SAAiB;IAC1D,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC;AAClC,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,KAAK,GAAG,EAAE,CAAC;AACpB,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,oBAAoB,CAAC,MAAoC;IACvE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAC9B,CAAC;AA2ID;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAa,EACb,MAAoB,EACpB,SAAwB,EACxB,aAA4B;IAE5B,IAAI,MAAM,KAAK,mBAAmB,EAAE,CAAC;QACnC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC7C,CAAC;IACD,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACvB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,qGAAqG,EAAE,CAAC;IAC9I,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,IAAI,MAAM,CAAC;IACjC,MAAM,IAAI,GAAG,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;IACtF,OAAO;QACL,KAAK;QACL,MAAM;QACN,UAAU,EAAE,OAAO,IAAI,eAAe,IAAI,wLAAwL;KACnO,CAAC;AACJ,CAAC;AAED,iGAAiG;AACjG,MAAM,CAAC,MAAM,mBAAmB,GAAG,yBAAyB,CAAC;AAkF7D;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAyC;IAC7E,MAAM,EAAE;QACN,WAAW,EAAE,QAAQ;QACrB,aAAa,EAAE,4BAA4B,CAAC,MAAM;QAClD,oBAAoB,EAAE,GAAG;QACzB,aAAa,EAAE,qBAAqB;QACpC,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,2EAA2E;QAC7F,iBAAiB,EAAE,IAAI;QACvB,kBAAkB,EAAE,IAAI;QACxB,uBAAuB,EAAE,GAAG;KAC7B;IACD,OAAO,EAAE;QACP,WAAW,EAAE,SAAS;QACtB,aAAa,EAAE,4BAA4B,CAAC,OAAO;QACnD,2EAA2E;QAC3E,qEAAqE;QACrE,YAAY,EAAE,QAAQ;QACtB,oBAAoB,EAAE,GAAG;QACzB,aAAa,EAAE,mBAAmB;QAClC,YAAY,EAAE,OAAO;QACrB,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,GAAG;QACvB,uBAAuB,EAAE,GAAG;QAC5B,8EAA8E;QAC9E,4EAA4E;QAC5E,6EAA6E;QAC7E,qEAAqE;QACrE,4EAA4E;QAC5E,6EAA6E;QAC7E,qBAAqB,EAAE;YACrB,IAAI,EAAE,mBAAmB;YACzB,sBAAsB,EAAE,GAAG;YAC3B,6BAA6B,EAAE,GAAG;SACnC;KACF;IACD,aAAa,EAAE;QACb,WAAW,EAAE,eAAe;QAC5B,aAAa,EAAE,4BAA4B,CAAC,aAAa;QACzD,oBAAoB,EAAE,IAAI;QAC1B,aAAa,EAAE,sBAAsB;QACrC,0EAA0E;QAC1E,iEAAiE;QACjE,0EAA0E;QAC1E,sEAAsE;QACtE,mEAAmE;QACnE,oCAAoC;QACpC,YAAY,EAAE,cAAc;QAC5B,gBAAgB,EACd,qJAAqJ;QACvJ,kBAAkB,EAChB,oGAAoG;QACtG,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,GAAG;QACvB,uBAAuB,EAAE,GAAG;QAC5B,oEAAoE;QACpE,yDAAyD;QACzD,kEAAkE;QAClE,kEAAkE;QAClE,sDAAsD;QACtD,0EAA0E;QAC1E,4DAA4D;QAC5D,EAAE;QACF,2EAA2E;QAC3E,wEAAwE;QACxE,mFAAmF;QACnF,uEAAuE;QACvE,gEAAgE;QAChE,+CAA+C;QAC/C,EAAE;QACF,2EAA2E;QAC3E,yEAAyE;QACzE,2EAA2E;QAC3E,4EAA4E;QAC5E,qBAAqB,EAAE;YACrB,IAAI,EAAE,kDAAkD;YACxD,sBAAsB,EAAE,GAAG;YAC3B,6BAA6B,EAAE,IAAI;SACpC;KACF;IACD,2EAA2E;IAC3E,qEAAqE;IACrE,kCAAkC;IAClC,EAAE;IACF,4EAA4E;IAC5E,uEAAuE;IACvE,8EAA8E;IAC9E,yEAAyE;IACzE,gBAAgB;IAChB,EAAE;IACF,8EAA8E;IAC9E,wEAAwE;IACxE,0EAA0E;IAC1E,4EAA4E;IAC5E,wEAAwE;IACxE,gDAAgD;IAChD,oBAAoB,EAAE;QACpB,WAAW,EAAE,oBAAoB;QACjC,aAAa,EAAE,4BAA4B,CAAC,oBAAoB,CAAC;QACjE,oBAAoB,EAAE,KAAK;QAC3B,aAAa,EAAE,qBAAqB;QACpC,wEAAwE;QACxE,4DAA4D;QAC5D,qEAAqE;QACrE,wEAAwE;QACxE,sEAAsE;QACtE,sEAAsE;QACtE,sEAAsE;QACtE,0CAA0C;QAC1C,YAAY,EAAE,OAAO;QACrB,0BAA0B,EACxB,sIAAsI;QACxI,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,GAAG;QACvB,uBAAuB,EAAE,GAAG;QAC5B,kBAAkB,EAChB,qHAAqH;QACvH,0EAA0E;QAC1E,0EAA0E;QAC1E,wEAAwE;QACxE,2EAA2E;QAC3E,qBAAqB,EAAE;YACrB,IAAI,EAAE,wCAAwC;YAC9C,sBAAsB,EAAE,KAAK;YAC7B,6BAA6B,EAAE,KAAK;SACrC;KACF;IACD,UAAU,EAAE;QACV,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,GAAG;QAClB,oBAAoB,EAAE,KAAK;QAC3B,aAAa,EAAE,cAAc;QAC7B,YAAY,EAAE,eAAe;QAC7B,gBAAgB,EAAE,sDAAsD;QACxE,iBAAiB,EAAE,IAAI;QACvB,kBAAkB,EAAE,GAAG;QACvB,uBAAuB,EAAE,EAAE;KAC5B;IACD,UAAU,EAAE;QACV,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,4BAA4B,CAAC,UAAU,EAAE,yBAAyB;QACjF,oBAAoB,EAAE,IAAI,EAAE,gBAAgB;QAC5C,aAAa,EAAE,mBAAmB;QAClC,YAAY,EAAE,OAAO;QACrB,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,GAAG;QACvB,uBAAuB,EAAE,GAAG;QAC5B,+CAA+C;QAC/C,oDAAoD;QACpD,6DAA6D;QAC7D,0EAA0E;QAC1E,qBAAqB,EAAE;YACrB,IAAI,EAAE,mCAAmC;YACzC,sBAAsB,EAAE,IAAI;YAC5B,6BAA6B,EAAE,MAAM;SACtC;KACF;IACD,eAAe,EAAE;QACf,WAAW,EAAE,eAAe;QAC5B,aAAa,EAAE,4BAA4B,CAAC,eAAe,CAAC,EAAE,2CAA2C;QACzG,oBAAoB,EAAE,IAAI,EAAE,kCAAkC;QAC9D,aAAa,EAAE,mBAAmB;QAClC,YAAY,EAAE,OAAO;QACrB,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,GAAG;QACvB,uBAAuB,EAAE,GAAG;QAC5B,2EAA2E;QAC3E,6EAA6E;QAC7E,2EAA2E;QAC3E,sEAAsE;QACtE,6EAA6E;QAC7E,wBAAwB;QACxB,qBAAqB,EAAE;YACrB,IAAI,EAAE,0BAA0B;YAChC,sBAAsB,EAAE,GAAG,EAAE,uCAAuC;YACpE,6BAA6B,EAAE,GAAG,EAAE,wBAAwB;SAC7D;QACD,mBAAmB,EAAE;YACnB;gBACE,IAAI,EAAE,8BAA8B;gBACpC,sBAAsB,EAAE,IAAI,EAAE,uCAAuC;gBACrE,6BAA6B,EAAE,IAAI,EAAE,sBAAsB;aAC5D;SACF;KACF;IACD,aAAa,EAAE;QACb,WAAW,EAAE,aAAa;QAC1B,aAAa,EAAE,4BAA4B,CAAC,aAAa,CAAC;QAC1D,oBAAoB,EAAE,IAAI;QAC1B,aAAa,EAAE,mBAAmB;QAClC,YAAY,EAAE,OAAO;QACrB,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,GAAG;QACvB,uBAAuB,EAAE,GAAG;KAC7B;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,MAAM;QACnB,aAAa,EAAE,4BAA4B,CAAC,IAAI;QAChD,oBAAoB,EAAE,IAAI;QAC1B,aAAa,EAAE,mBAAmB;QAClC,YAAY,EAAE,OAAO;QACrB,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,GAAG;QACvB,uBAAuB,EAAE,GAAG;KAC7B;IACD,SAAS,EAAE;QACT,WAAW,EAAE,WAAW;QACxB,aAAa,EAAE,4BAA4B,CAAC,SAAS,EAAE,2BAA2B;QAClF,oBAAoB,EAAE,GAAG,EAAE,yDAAyD;QACpF,aAAa,EAAE,mBAAmB;QAClC,wEAAwE;QACxE,sEAAsE;QACtE,YAAY,EAAE,OAAO;QACrB,iBAAiB,EAAE,GAAG;QACtB,kBAAkB,EAAE,GAAG;QACvB,uBAAuB,EAAE,GAAG;QAC5B,2EAA2E;QAC3E,2EAA2E;QAC3E,2EAA2E;QAC3E,kDAAkD;QAClD,EAAE;QACF,kEAAkE;QAClE,4EAA4E;QAC5E,6DAA6D;QAC7D,2EAA2E;QAC3E,8BAA8B;QAC9B,qBAAqB,EAAE;YACrB,IAAI,EAAE,wCAAwC;YAC9C,sBAAsB,EAAE,GAAG;YAC3B,6BAA6B,EAAE,GAAG;SACnC;KACF;CACF,CAAC;AA6CF,MAAM,CAAC,MAAM,6BAA6B,GAAqC;IAC7E,6DAA6D;IAC7D,OAAO,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC;IACjC,UAAU,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC;IACpC,yEAAyE;IACzE,sEAAsE;IACtE,8EAA8E;IAC9E,0EAA0E;IAC1E,mCAAmC;IACnC,SAAS,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC;IACnC,6EAA6E;IAC7E,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,YAAY,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IACpC,mEAAmE;IACnE,6EAA6E;IAC7E,kBAAkB;IAClB,6DAA6D;IAC7D,2EAA2E;IAC3E,0DAA0D;IAC1D,yEAAyE;IACzE,6EAA6E;IAC7E,uEAAuE;IACvE,aAAa,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC;IACvC,6EAA6E;IAC7E,6EAA6E;IAC7E,oBAAoB,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC;IAC9C,kBAAkB,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IAC1C,qBAAqB,EAAE,CAAC,SAAS,CAAC;IAClC,eAAe,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IACvC,kBAAkB,EAAE,CAAC,SAAS,CAAC;IAC/B,iFAAiF;IACjF,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;IAClC,6BAA6B;IAC7B,IAAI,EAAE,CAAC,SAAS,CAAC;IACjB,QAAQ,EAAE,CAAC,SAAS,CAAC;IACrB,SAAS,EAAE,CAAC,SAAS,CAAC;IACtB,kBAAkB,EAAE,CAAC,SAAS,CAAC;IAC/B,IAAI,EAAE,CAAC,SAAS,CAAC;IACjB,sEAAsE;IACtE,gDAAgD;IAChD,eAAe,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC;IACzC,2EAA2E;IAC3E,2EAA2E;IAC3E,mDAAmD;IACnD,aAAa,EAAE,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,CAAC,SAAS,CAAC;CACrB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAC5C,WAAmB,EACnB,QAAgB,CAAC;IAEjB,MAAM,IAAI,GAAG,6BAA6B,CAAC,WAA6B,CAAC;WACpE,6BAA6B,CAAC,OAAO,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAAC,WAAmB;IACjE,OAAO,6BAA6B,CAAC,WAA6B,CAAC;WAC9D,6BAA6B,CAAC,OAAO,CAAC;AAC7C,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CACjC,WAAmB,EACnB,IAAgC;IAEhC,MAAM,IAAI,GAAG,+BAA+B,CAAC,WAAW,CAAC,CAAC;IAC1D,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IAC9B,MAAM,YAAY,GAAG,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACjF,IACE,IAAI,EAAE,WAAW,KAAK,IAAI;QAC1B,YAAY;QACZ,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QACzB,eAAe,CAAC,WAAW,CAAC,EAC5B,CAAC;QACD,OAAO,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,WAAmB;IACjD,yEAAyE;IACzE,0EAA0E;IAC1E,4EAA4E;IAC5E,uCAAuC;IACvC,IAAI,KAAuC,CAAC;IAC5C,IAAI,CAAC;QACH,KAAK,GAAG,uBAAuB,CAAC,WAAqB,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC,CAAC,0CAA0C;IAC1D,CAAC;IACD,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,OAAO,KAAK,CAAC,YAAY,KAAK,OAAO,CAAC;AACxC,CAAC;AAED;;;;;;;;;;GAUG;AACH;;;;;;GAMG;AACH,MAAM,gBAAgB,GAAoC;IACxD,YAAY,EAAE,QAAQ;IACtB,kBAAkB,EAAE,eAAe;IACnC,qBAAqB,EAAE,eAAe;IACtC,eAAe,EAAE,eAAe;IAChC,kBAAkB,EAAE,eAAe;CACpC,CAAC;AAEF,MAAM,UAAU,uBAAuB,CACrC,IAAY,EACZ,IAA6B;IAE7B,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAc,CAAC,CAAC;IACjD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,uBAAuB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrD,0EAA0E;QAC1E,2EAA2E;QAC3E,OAAO,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACzC,CAAC;IACD,MAAM,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,0EAA0E;QAC1E,2EAA2E;QAC3E,uDAAuD;QACvD,MAAM,IAAI,KAAK,CACb,kCAAkC,IAAI,2BAA2B;YAC/D,GAAG,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;YACxD,wFAAwF,CAC3F,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,KAAK,eAAe,IAAI,IAAI,EAAE,QAAQ,KAAK,KAAK,EAAE,CAAC;QACzD,OAAO;YACL,GAAG,IAAI;YACP,YAAY,EAAE,gBAAgB;YAC9B,iBAAiB,EAAE,IAAI;YACvB,kBAAkB,EAAE,IAAI;SACzB,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CACxC,SAAiB,EACjB,OAAgB,EAChB,KAAK,GAAG,GAAG;IAEX,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,KAAK;QAAE,OAAO,SAAS,CAAC;IACnD,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAC3B,MAAM,OAAO,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO;IAClD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS,EAAE,CAAS;IACpC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC;AAoDD;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAAiB,EACjB,WAAqE;IAErE,MAAM,GAAG,GAAG,CAAC,GAAW,EAAU,EAAE;QAClC,IAAI,SAAS,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC;QAClD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC;IACF,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;QAC3B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO;QACL,GAAG,EAAE,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC;QACzB,QAAQ,EAAE,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC;QACnC,IAAI,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;KAC5B,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAA2B,EAC3B,YAA4B;IAE5B,MAAM,WAAW,GAAG,KAAK,CAAC,qBAAqB,CAAC;IAChD,MAAM,IAAI,GAAG,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACxD,MAAM,QAAQ,GAAG,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,YAAY,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAClD,IAAI,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAC7B,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7D,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,QAAQ,CAAC;AAC5E,CAAC;AAED,SAAS,sBAAsB,CAC7B,IAAuB,EACvB,KAAa,EACb,UAAuC;IAEvC,MAAM,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE;QACtD,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC;IACH,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,SAAiB,CAAC;IACtB,8EAA8E;IAC9E,6EAA6E;IAC7E,qCAAqC;IACrC,MAAM,oBAAoB,GACxB,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5F,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,MAAM;YACT,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC1B,MAAM;QACR,KAAK,MAAM;YACT,SAAS,GAAG,CAAC,CAAC;YACd,MAAM;QACR,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;YAC3C,SAAS,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC9B,MAAM;QACR,CAAC;QACD,KAAK,WAAW;YACd,oEAAoE;YACpE,qEAAqE;YACrE,gEAAgE;YAChE,+DAA+D;YAC/D,sEAAsE;YACtE,qEAAqE;YACrE,4DAA4D;YAC5D,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC1B,IAAI,oBAAoB,EAAE,CAAC;gBACzB,KAAK,CAAC,IAAI,CACR,sBAAsB,oBAAoB,CAAC,IAAI,MAAM,oBAAoB,CAAC,sBAAsB,iBAAiB,oBAAoB,CAAC,6BAA6B,+EAA+E,CACnP,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CACR,2JAA2J,CAC5J,CAAC;YACJ,CAAC;YACD,MAAM;QACR,KAAK,SAAS;YACZ,oEAAoE;YACpE,uEAAuE;YACvE,oEAAoE;YACpE,kEAAkE;YAClE,kDAAkD;YAClD,SAAS,GAAG,CAAC,CAAC;YACd,MAAM;QACR,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,IAAI,KAAK,CAAC,YAAY,KAAK,OAAO,EAAE,CAAC;gBACnC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC1B,KAAK,CAAC,IAAI,CAAC,4BAA4B,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAC7D,CAAC;iBAAM,IACL,IAAI,CAAC,sBAAsB,KAAK,SAAS;gBACzC,IAAI,CAAC,sBAAsB,IAAI,IAAI;gBACnC,IAAI,CAAC,sBAAsB,IAAI,GAAG;gBAClC,KAAK,CAAC,YAAY,KAAK,UAAU,EACjC,CAAC;gBACD,kEAAkE;gBAClE,+DAA+D;gBAC/D,kEAAkE;gBAClE,oEAAoE;gBACpE,oEAAoE;gBACpE,SAAS,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC;gBACxD,KAAK,CAAC,IAAI,CACR,iBAAiB,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,oDAAoD,CAC5G,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,SAAS,GAAG,0BAA0B,CAC1C,KAAK,EACL,IAAI,CAAC,oBAAoB,EACzB,KAAK,CAAC,uBAAuB,CAC9B,CAAC;gBACF,SAAS,GAAG,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;gBACtC,IACE,IAAI,CAAC,oBAAoB,KAAK,SAAS;oBACvC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,uBAAuB,EACzD,CAAC;oBACD,KAAK,CAAC,IAAI,CACR,kBAAkB,IAAI,CAAC,oBAAoB,iBAAiB,KAAK,CAAC,uBAAuB,sCAAsC,CAChI,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,MAAM;QACR,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,SAAS,GAAG,EAAE,CAAC;IAE7B,sEAAsE;IACtE,sEAAsE;IACtE,uEAAuE;IACvE,kEAAkE;IAClE,2EAA2E;IAC3E,kFAAkF;IAClF,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC;IAC/C,MAAM,UAAU,GAAG,oBAAoB,CAAC;IACxC,MAAM,uBAAuB,GAAG,UAAU;QACxC,CAAC,CAAC,UAAU,CAAC,sBAAsB;QACnC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC;IACxB,MAAM,wBAAwB,GAAG,UAAU;QACzC,CAAC,CAAC,UAAU,CAAC,6BAA6B;QAC1C,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;IAE/B,2EAA2E;IAC3E,4EAA4E;IAC5E,oEAAoE;IACpE,kEAAkE;IAClE,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,EAAE,sBAAsB,CAAC;IAClE,IAAI,cAA6B,CAAC;IAClC,IAAI,YAAoD,CAAC;IACzD,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;QAC3B,qEAAqE;QACrE,6EAA6E;QAC7E,MAAM,eAAe,GACnB,UAAU,IAAI,UAAU,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC;YACjD,CAAC,CAAC,UAAU,CAAC,sBAAsB,GAAG,KAAK,CAAC,aAAa;YACzD,CAAC,CAAC,CAAC,CAAC;QACR,cAAc,GAAG,KAAK,GAAG,cAAc,GAAG,eAAe,CAAC;QAC1D,YAAY,GAAG,mBAAmB,CAAC;IACrC,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACpD,cAAc,GAAG,KAAK,GAAG,uBAAuB,CAAC;QACjD,YAAY,GAAG,MAAM,CAAC;IACxB,CAAC;SAAM,CAAC;QACN,cAAc,GAAG,IAAI,CAAC;QACtB,YAAY,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,2EAA2E;IAC3E,0EAA0E;IAC1E,0BAA0B;IAC1B,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,EAAE,6BAA6B,CAAC;IAC1E,IAAI,eAA8B,CAAC;IACnC,IAAI,aAAqD,CAAC;IAC1D,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;QAC5B,MAAM,eAAe,GACnB,UAAU,IAAI,UAAU,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC;YACxD,CAAC,CAAC,UAAU,CAAC,6BAA6B,GAAG,KAAK,CAAC,oBAAoB;YACvE,CAAC,CAAC,CAAC,CAAC;QACR,eAAe,GAAG,KAAK,GAAG,eAAe,GAAG,eAAe,GAAG,MAAM,CAAC;QACrE,aAAa,GAAG,mBAAmB,CAAC;IACtC,CAAC;SAAM,IAAI,wBAAwB,IAAI,CAAC,EAAE,CAAC;QACzC,eAAe,GAAG,KAAK,GAAG,wBAAwB,GAAG,MAAM,CAAC;QAC5D,aAAa,GAAG,MAAM,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,eAAe,GAAG,IAAI,CAAC;QACvB,aAAa,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,qDAAqD;IACrD,MAAM,gBAAgB,GACpB,IAAI,CAAC,aAAa,EAAE,wBAAwB,IAAI,uBAAuB,CAAC;IAC1E,MAAM,kBAAkB,GACtB,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,GAAG,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CACR,qBAAqB,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB,MAAM,UAAU,gBAAgB,wCAAwC,CACpJ,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,2EAA2E;IAC3E,yEAAyE;IACzE,oBAAoB;IACpB,MAAM,aAAa,GACjB,cAAc,IAAI,IAAI,IAAI,eAAe,IAAI,IAAI;QAC/C,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,cAAc,GAAG,eAAe,GAAG,kBAAkB,CAAC;IAE5D,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC;IAEhE,yEAAyE;IACzE,kDAAkD;IAClD,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;IAC/D,oEAAoE;IACpE,yEAAyE;IACzE,MAAM,UAAU,GAAG,cAAc,IAAI,IAAI;QACvC,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAChF,MAAM,WAAW,GAAG,eAAe,IAAI,IAAI;QACzC,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,CAAC,wBAAwB,IAAI,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,CAAC,CAAyC,EAAgB,EAAE,CAC/E,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,wBAAwB,GAAG,cAAc,IAAI,IAAI;QACrD,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,yBAAyB,CAAC,cAAc,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IACjG,MAAM,yBAAyB,GAAG,eAAe,IAAI,IAAI;QACvD,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,yBAAyB,CAAC,eAAe,EAAE,YAAY,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACpG,4EAA4E;IAC5E,4EAA4E;IAC5E,cAAc;IACd,IAAI,WAAyB,CAAC;IAC9B,IAAI,YAAY,KAAK,mBAAmB,IAAI,aAAa,KAAK,mBAAmB,EAAE,CAAC;QAClF,WAAW,GAAG,mBAAmB,CAAC;IACpC,CAAC;SAAM,IAAI,YAAY,KAAK,MAAM,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;QAC/D,WAAW,GAAG,YAAY,CAAC;IAC7B,CAAC;SAAM,IAAI,YAAY,KAAK,MAAM,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;QAC/D,WAAW,GAAG,YAAY,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,OAAO,CAAC;IACxB,CAAC;IACD,MAAM,uBAAuB,GAAG,aAAa,IAAI,IAAI;QACnD,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,yBAAyB,CAAC,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAE3E,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS;QACT,cAAc;QACd,eAAe;QACf,aAAa;QACb,kBAAkB;QAClB,wBAAwB;QACxB,yBAAyB;QACzB,uBAAuB;QACvB,KAAK,EAAE,KAAK,CAAC,aAAa;QAC1B,UAAU;QACV,iBAAiB,EAAE,GAAG;QACtB,WAAW,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE;QAC7D,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;KACxC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,IAAuB;IACnD,MAAM,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE;QACtD,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC1E,OAAO,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAuB;IASxD,MAAM,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE;QACtD,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,sBAAsB,CACrC,IAAI,EACJ,QAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,kBAAkB,CAAC,EAC3D,UAAU,CACX,CAAC;IACF,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAC3E,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC1C,uEAAuE;QACvE,yEAAyE;QACzE,wEAAwE;QACxE,2CAA2C;QAC3C,GAAG,EAAE,GAAG,CAAC,SAAS;QAClB,QAAQ,EAAE,QAAQ,CAAC,SAAS;QAC5B,IAAI,EAAE,IAAI,CAAC,SAAS;KACrB,CAAC,CAAC;IACH,OAAO;QACL,GAAG;QACH,QAAQ;QACR,IAAI;QACJ,qBAAqB,EAAE,GAAG,CAAC,GAAG;QAC9B,0BAA0B,EAAE,GAAG,CAAC,QAAQ;QACxC,sBAAsB,EAAE,GAAG,CAAC,IAAI;QAChC,qEAAqE;QACrE,wDAAwD;QACxD,WAAW,EAAE,QAAQ,CAAC,WAAW;KAClC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,cAAc,CAC5B,IAA8D;IAE9D,MAAM,MAAM,GAAsB;QAChC,GAAG,IAAI;QACP,aAAa,EAAE;YACb,GAAG,IAAI,CAAC,aAAa;YACrB,sBAAsB,EACpB,IAAI,CAAC,aAAa,EAAE,sBAAsB;gBAC1C,IAAI,CAAC,uBAAuB;SAC/B;KACF,CAAC;IAEF,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC;IAE7B,IAAI,GAAmC,CAAC;IACxC,IAAI,EAAE,CAAC,MAAM,KAAK,mBAAmB,IAAI,EAAE,CAAC,OAAO,KAAK,mBAAmB,EAAE,CAAC;QAC5E,GAAG,GAAG,mBAAmB,CAAC;IAC5B,CAAC;SAAM,IAAI,EAAE,CAAC,MAAM,KAAK,MAAM,IAAI,EAAE,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QACzD,GAAG,GAAG,YAAY,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,GAAG,GAAG,OAAO,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAoB;QAChC,OAAO,EAAE;YACP,GAAG,EAAE,KAAK,CAAC,qBAAqB;YAChC,QAAQ,EAAE,KAAK,CAAC,0BAA0B;YAC1C,IAAI,EAAE,KAAK,CAAC,sBAAsB;SACnC;QACD,KAAK,EAAE;YACL,EAAE,EAAE,IAAI,CAAC,QAAQ;YACjB,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS;SACvC;QACD,WAAW,EAAE,GAAG;QAChB,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;KACtE,CAAC;IAEF,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,MAAM,OAAO,GAA4C,EAAE,CAAC;QAC5D,MAAM,iBAAiB,GAAsD,EAAE,CAAC;QAChF,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;QAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,MAAM,KAAK,MAAM,IAAI,EAAE,CAAC,OAAO,KAAK,MAAM,CAAC;QAC9D,MAAM,WAAW,GACf,EAAE,CAAC,MAAM,KAAK,mBAAmB,IAAI,EAAE,CAAC,OAAO,KAAK,mBAAmB,CAAC;QAC1E,IAAI,OAAO,EAAE,CAAC;YACZ,iEAAiE;YACjE,qCAAqC;YACrC,MAAM,QAAQ,GAAG,kBAAkB,CAAC;gBAClC,GAAG,IAAI;gBACP,aAAa,EAAE,SAAS;aACzB,CAAC,CAAC;YACH,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,aAAa,IAAI,SAAS,CAAC;YAC3D,OAAO,CAAC,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,IAAI,SAAS,CAAC;YACrE,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC;YAC7D,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;gBACvC,iBAAiB,CAAC,QAAQ;oBACxB,yBAAyB,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YACzF,CAAC;YACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;gBAC5C,iBAAiB,CAAC,aAAa;oBAC7B,yBAAyB,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAC9F,CAAC;YACD,IAAI,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;gBACxC,iBAAiB,CAAC,SAAS;oBACzB,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,IAAI,SAAS,CAAC;YAC5D,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC,QAAQ,CAAC,aAAa,IAAI,SAAS,CAAC;YACtE,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC;YAC9D,IAAI,KAAK,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;gBACpC,iBAAiB,CAAC,YAAY;oBAC5B,yBAAyB,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAC7F,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;gBACzC,iBAAiB,CAAC,iBAAiB;oBACjC,yBAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAClG,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;gBACrC,iBAAiB,CAAC,aAAa;oBAC7B,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAC9F,CAAC;QACH,CAAC;QACD,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC;QAC3B,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IACjD,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,aAAqB,EAAE,UAAkB;IACxE,IAAI,CAAC,UAAU,IAAI,UAAU,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAC7C,OAAO,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,UAAU,CAAC;AAC5C,CAAC"}
@@ -109,6 +109,14 @@ export interface SolveOpts {
109
109
  * user explicitly trades it back in. Pinned like protected severities.
110
110
  */
111
111
  pinnedHashes?: string[];
112
+ /**
113
+ * Whether the customer runs this destination themselves. Decides whether
114
+ * compaction is available on the Elasticsearch/OpenSearch family: the
115
+ * expander is the l1es PLUGIN, installable on your own nodes and nowhere
116
+ * else. Absent = unknown, and unknown prices only the levers that hold on
117
+ * any deployment. Never inferred.
118
+ */
119
+ selfManaged?: boolean;
112
120
  /**
113
121
  * Specific pattern hashes the user EXPLICITLY unpinned from the severity
114
122
  * floor — a warn-level retry storm they chose to act on. Bypasses ONLY the
@@ -166,6 +174,13 @@ export interface Plan {
166
174
  /** Whose dollars these are: the destination list-price model, or the
167
175
  * customer's supplied blended rate scaled over the list structure. */
168
176
  rateSource: 'list_price' | 'customer_supplied';
177
+ /**
178
+ * What the levers this plan actually uses REQUIRE — the app, plugin, tier,
179
+ * or licence, with its platform and version constraint. Only for levers the
180
+ * plan uses. A priced lever with an unstated prerequisite is a lever we are
181
+ * guessing at, so the render states these before the user agrees.
182
+ */
183
+ prerequisites: string[];
169
184
  /** Echo of the supplied blended rate when rateSource is customer_supplied. */
170
185
  customerRatePerGb?: number;
171
186
  /** Total scoped bytes/mo behind the bill — the reconciliation multiplicand:
@@ -190,5 +205,7 @@ export interface Plan {
190
205
  * retriever gate. compact wins over tier_down (both keep in-SIEM queryability;
191
206
  * compact also shrinks the bytes); offload is last and needs the retriever.
192
207
  */
193
- export declare function keepEverythingLever(destination: SiemId, retrieverInstalled: boolean): Action | null;
208
+ export declare function keepEverythingLever(destination: SiemId, retrieverInstalled: boolean, opts?: {
209
+ selfManaged?: boolean;
210
+ }): Action | null;
194
211
  export declare function solvePlan(rawPatterns: SolverPattern[], opts: SolveOpts): Plan;
@@ -28,7 +28,7 @@
28
28
  * - Scope is a set of services (or all). A pattern touching any scoped service
29
29
  * is a candidate, weighted by its bytes in those services.
30
30
  */
31
- import { getAllowedActionsForDestination, getDestinationCostModel, compactsInPlace, projectAction, } from './cost.js';
31
+ import { getAvailableActions, getDestinationCostModel, compactsInPlace, projectAction, } from './cost.js';
32
32
  import { isProtectedSeverity } from './severity-policy.js';
33
33
  /** True ladder order: keep-everything (in-SIEM before out) then lossy. */
34
34
  const LADDER = ['compact', 'tier_down', 'offload', 'sample', 'drop'];
@@ -37,8 +37,8 @@ const LADDER = ['compact', 'tier_down', 'offload', 'sample', 'drop'];
37
37
  * retriever gate. compact wins over tier_down (both keep in-SIEM queryability;
38
38
  * compact also shrinks the bytes); offload is last and needs the retriever.
39
39
  */
40
- export function keepEverythingLever(destination, retrieverInstalled) {
41
- const allowed = new Set(getAllowedActionsForDestination(destination));
40
+ export function keepEverythingLever(destination, retrieverInstalled, opts) {
41
+ const allowed = new Set(getAvailableActions(destination, opts));
42
42
  // in-SIEM rungs, in ladder order, gated by whether compact is real here
43
43
  for (const lever of ['compact', 'tier_down']) {
44
44
  if (!allowed.has(lever))
@@ -125,7 +125,9 @@ export function solvePlan(rawPatterns, opts) {
125
125
  }
126
126
  const patterns = [...byHash.values()];
127
127
  const scopeSet = opts.scope && opts.scope !== 'all' ? new Set(opts.scope) : null;
128
- const lever = keepEverythingLever(opts.destination, opts.retrieverInstalled);
128
+ const lever = keepEverythingLever(opts.destination, opts.retrieverInstalled, {
129
+ selfManaged: opts.selfManaged,
130
+ });
129
131
  // Scope: keep patterns touching a scoped service; weight by scoped bytes.
130
132
  const exceptions = new Set((opts.exceptionServices ?? []).map((x) => x.toLowerCase()));
131
133
  const pinnedHashes = new Set(opts.pinnedHashes ?? []);
@@ -174,7 +176,7 @@ export function solvePlan(rawPatterns, opts) {
174
176
  const gain = (action, bytes, avg) => denom === 'usd'
175
177
  ? saveUsd(action, bytes, opts.destination, avg) * dollarScale
176
178
  : saveBytes(action, bytes, opts.destination, avg);
177
- const allowed = new Set(getAllowedActionsForDestination(opts.destination));
179
+ const allowed = new Set(getAvailableActions(opts.destination, { selfManaged: opts.selfManaged }));
178
180
  const canOffload = opts.retrieverInstalled && allowed.has('offload');
179
181
  // The in-SIEM keep-everything lever (compact/tier_down), separate from offload
180
182
  // so the two can be applied as an escalation, not an either/or. For a VOLUME
@@ -346,6 +348,16 @@ export function solvePlan(rawPatterns, opts) {
346
348
  if (lever === 'compact' && model.compact_mode !== 'no-op') {
347
349
  structureParts.push(`compact assumed ${Math.round(model.compact_ratio_low * 100)}-${Math.round(model.compact_ratio_high * 100)}% of original size`);
348
350
  }
351
+ // Prerequisites for the levers this plan actually uses — not the menu.
352
+ const usedActions = new Set(planned.map((r) => r.action));
353
+ const prerequisites = [];
354
+ if (usedActions.has('compact') && model.compact_requires)
355
+ prerequisites.push(model.compact_requires);
356
+ if (usedActions.has('tier_down') && model.tier_down_requires)
357
+ prerequisites.push(model.tier_down_requires);
358
+ if (usedActions.has('offload')) {
359
+ prerequisites.push('the S3 retriever installed, so offloaded events stay recoverable');
360
+ }
349
361
  const rateSource = dollarScale !== 1 ? 'customer_supplied' : 'list_price';
350
362
  let rateBasis;
351
363
  if (rateSource === 'customer_supplied') {
@@ -375,6 +387,7 @@ export function solvePlan(rawPatterns, opts) {
375
387
  totalSavedUsd,
376
388
  rateBasis,
377
389
  rateSource,
390
+ prerequisites,
378
391
  ...(rateSource === 'customer_supplied' ? { customerRatePerGb: opts.customerRatePerGb } : {}),
379
392
  bytesInMonthly: bytesIn,
380
393
  landsAtUsd,
@@ -1 +1 @@
1
- {"version":3,"file":"plan-solver.js","sourceRoot":"","sources":["../../src/lib/plan-solver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-solver.js","sourceRoot":"","sources":["../../src/lib/plan-solver.ts"],"names":[],"mappings":"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"}
@@ -1134,7 +1134,13 @@ export function renderPocReport(input) {
1134
1134
  // Section 6: Compact-byte ratio (measured, only where the engine
1135
1135
  // emitted encoded lines and only for SIEMs that ingest forwarder-
1136
1136
  // compacted streams).
1137
- const compactionApplies = compactsInPlace(input.siem);
1137
+ // AVAILABILITY, not mechanism — the same rule the lossless-lever list above
1138
+ // already follows. compactsInPlace() answers "does the encode mechanism land
1139
+ // on this destination's billed measure", which is true for Elasticsearch
1140
+ // generally; whether the customer can RUN the expander depends on their
1141
+ // deployment (the l1es plugin needs self-managed). A measured ratio printed
1142
+ // for a platform that cannot expand reads as an offer we cannot keep.
1143
+ const compactionApplies = getAllowedActionsForDestination(input.siem).includes('compact');
1138
1144
  if (compactionApplies) {
1139
1145
  const measured = patterns.filter((p) => (p.encodedBytes ?? 0) > 0).slice(0, 8);
1140
1146
  lines.push(sec('Compact-byte Ratio (Measured)'));