@vorionsys/atsf-core 0.4.1 → 0.4.3

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/dist/basis/parser.d.ts +74 -74
  2. package/dist/basis/parser.js +3 -3
  3. package/dist/basis/parser.js.map +1 -1
  4. package/dist/common/config.d.ts +16 -16
  5. package/dist/enforce/fast-path.d.ts +134 -0
  6. package/dist/enforce/fast-path.d.ts.map +1 -0
  7. package/dist/enforce/fast-path.js +257 -0
  8. package/dist/enforce/fast-path.js.map +1 -0
  9. package/dist/enforce/pipeline-optimizer.d.ts +111 -0
  10. package/dist/enforce/pipeline-optimizer.d.ts.map +1 -0
  11. package/dist/enforce/pipeline-optimizer.js +370 -0
  12. package/dist/enforce/pipeline-optimizer.js.map +1 -0
  13. package/dist/enforce/policy-cache.d.ts +92 -0
  14. package/dist/enforce/policy-cache.d.ts.map +1 -0
  15. package/dist/enforce/policy-cache.js +186 -0
  16. package/dist/enforce/policy-cache.js.map +1 -0
  17. package/dist/enforce/trust-cache.d.ts +118 -0
  18. package/dist/enforce/trust-cache.d.ts.map +1 -0
  19. package/dist/enforce/trust-cache.js +218 -0
  20. package/dist/enforce/trust-cache.js.map +1 -0
  21. package/dist/paramesphere/gpu-svd.d.ts +102 -0
  22. package/dist/paramesphere/gpu-svd.d.ts.map +1 -0
  23. package/dist/paramesphere/gpu-svd.js +668 -0
  24. package/dist/paramesphere/gpu-svd.js.map +1 -0
  25. package/dist/paramesphere/index.d.ts +2 -0
  26. package/dist/paramesphere/index.d.ts.map +1 -1
  27. package/dist/paramesphere/index.js +1 -0
  28. package/dist/paramesphere/index.js.map +1 -1
  29. package/dist/paramesphere/paramesphere-engine.d.ts +40 -3
  30. package/dist/paramesphere/paramesphere-engine.d.ts.map +1 -1
  31. package/dist/paramesphere/paramesphere-engine.js +133 -6
  32. package/dist/paramesphere/paramesphere-engine.js.map +1 -1
  33. package/dist/paramesphere/scheduled-verifier.d.ts +136 -0
  34. package/dist/paramesphere/scheduled-verifier.d.ts.map +1 -0
  35. package/dist/paramesphere/scheduled-verifier.js +338 -0
  36. package/dist/paramesphere/scheduled-verifier.js.map +1 -0
  37. package/dist/paramesphere/svd-worker-pool.d.ts +37 -0
  38. package/dist/paramesphere/svd-worker-pool.d.ts.map +1 -0
  39. package/dist/paramesphere/svd-worker-pool.js +144 -0
  40. package/dist/paramesphere/svd-worker-pool.js.map +1 -0
  41. package/dist/paramesphere/svd-worker.d.ts +2 -0
  42. package/dist/paramesphere/svd-worker.d.ts.map +1 -0
  43. package/dist/paramesphere/svd-worker.js +103 -0
  44. package/dist/paramesphere/svd-worker.js.map +1 -0
  45. package/dist/paramesphere/types.d.ts +14 -0
  46. package/dist/paramesphere/types.d.ts.map +1 -1
  47. package/dist/paramesphere/types.js.map +1 -1
  48. package/dist/phase6/types.d.ts +257 -257
  49. package/dist/phase6/types.js +1 -1
  50. package/dist/phase6/types.js.map +1 -1
  51. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpu-svd.js","sourceRoot":"","sources":["../../src/paramesphere/gpu-svd.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@
8
8
  * @packageDocumentation
9
9
  */
10
10
  export { ParameSphereEngine } from './paramesphere-engine.js';
11
+ export { CpuFallbackProvider, WebGpuSvdProvider, OnnxSvdProvider, createSvdProvider, } from './gpu-svd.js';
12
+ export type { GpuSvdProvider } from './gpu-svd.js';
11
13
  export { CognitiveEnvelope } from './cognitive-envelope.js';
12
14
  export { FingerprintMonitor } from './fingerprint-monitor.js';
13
15
  export { ActivationCollector } from './activation-collector.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/paramesphere/index.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,YAAY,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACzE,YAAY,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC3E,YAAY,EACV,wBAAwB,EACxB,kBAAkB,EAClB,aAAa,EACb,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACvD,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/paramesphere/index.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,YAAY,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACzE,YAAY,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC3E,YAAY,EACV,wBAAwB,EACxB,kBAAkB,EAClB,aAAa,EACb,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACvD,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,YAAY,CAAC"}
@@ -10,6 +10,7 @@
10
10
  * @packageDocumentation
11
11
  */
12
12
  export { ParameSphereEngine } from './paramesphere-engine.js';
13
+ export { CpuFallbackProvider, WebGpuSvdProvider, OnnxSvdProvider, createSvdProvider, } from './gpu-svd.js';
13
14
  export { CognitiveEnvelope } from './cognitive-envelope.js';
14
15
  export { FingerprintMonitor } from './fingerprint-monitor.js';
15
16
  export { ActivationCollector } from './activation-collector.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/paramesphere/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;;;;;GAQG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAc1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/paramesphere/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;;;;;GAQG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAc1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC"}
@@ -20,10 +20,26 @@ declare function l2Distance(a: Float64Array, b: Float64Array): number;
20
20
  /**
21
21
  * Select which layer indices to sample.
22
22
  *
23
- * Uses a deterministic spread strategy: always include first and last layer,
24
- * then fill in evenly-spaced layers up to the target count.
23
+ * **Security rationale:** The previous implementation used deterministic
24
+ * evenly-spaced selection (first, last, and uniform steps between). An
25
+ * attacker who knows the model architecture could calculate exactly which
26
+ * layers are sampled and confine weight modifications to the unsampled
27
+ * ~85% of layers, completely evading fingerprint drift detection.
28
+ *
29
+ * The current implementation always anchors on the first and last layers
30
+ * (required for stable fingerprint boundaries) but randomises the
31
+ * intermediate layer selection using `crypto.randomInt()` so the sampled
32
+ * set is unpredictable across invocations.
33
+ *
34
+ * When a numeric `seed` is provided, a simple seeded PRNG (xorshift64) is
35
+ * used instead of `crypto.randomInt()`, making the selection deterministic
36
+ * and reproducible — useful for testing and debugging only.
37
+ *
38
+ * @param totalLayers - Total number of layers in the model.
39
+ * @param ratio - Fraction of layers to sample (0, 1].
40
+ * @param seed - Optional seed for reproducible selection (testing only).
25
41
  */
26
- declare function selectLayers(totalLayers: number, ratio: number): number[];
42
+ declare function selectLayers(totalLayers: number, ratio: number, seed?: number): number[];
27
43
  export declare class ParameSphereEngine {
28
44
  private readonly config;
29
45
  private baseline;
@@ -34,6 +50,8 @@ export declare class ParameSphereEngine {
34
50
  private readonly store;
35
51
  /** Entity ID for store operations. */
36
52
  private readonly entityId;
53
+ /** Optional GPU-offloaded SVD provider for T5-T7 scale models. */
54
+ private readonly svdProvider;
37
55
  constructor(config?: Partial<ParameSphereConfig>);
38
56
  /**
39
57
  * Compute a full fingerprint from scratch.
@@ -53,6 +71,25 @@ export declare class ParameSphereEngine {
53
71
  * recomputing layers whose weights have changed significantly.
54
72
  */
55
73
  updateFingerprint(newWeights: Float32Array[], activationStats?: ActivationStats[]): ParameSphereFingerprint;
74
+ /**
75
+ * Async variant of `computeFingerprint` that uses the configured
76
+ * `svdProvider` for GPU-offloaded SVD computation.
77
+ *
78
+ * When no `svdProvider` is configured, this falls back to the
79
+ * synchronous CPU path (identical to `computeFingerprint()`).
80
+ *
81
+ * Recommended for T5-T7 scale models where CPU power iteration
82
+ * becomes expensive on large weight matrices.
83
+ */
84
+ computeFingerprintAsync(weights: Float32Array[], activationStats?: ActivationStats[]): Promise<ParameSphereFingerprint>;
85
+ /**
86
+ * Async variant of `updateFingerprint` that uses the configured
87
+ * `svdProvider` for GPU-offloaded SVD computation.
88
+ *
89
+ * When no `svdProvider` is configured, this falls back to the
90
+ * synchronous CPU path (identical to `updateFingerprint()`).
91
+ */
92
+ updateFingerprintAsync(newWeights: Float32Array[], activationStats?: ActivationStats[]): Promise<ParameSphereFingerprint>;
56
93
  /**
57
94
  * Compare two fingerprints.
58
95
  */
@@ -1 +1 @@
1
- {"version":3,"file":"paramesphere-engine.d.ts","sourceRoot":"","sources":["../../src/paramesphere/paramesphere-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paramesphere-engine.d.ts","sourceRoot":"","sources":["../../src/paramesphere/paramesphere-engine.ts"],"names":[],"mappings":"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"}
@@ -193,10 +193,26 @@ function l2Distance(a, b) {
193
193
  /**
194
194
  * Select which layer indices to sample.
195
195
  *
196
- * Uses a deterministic spread strategy: always include first and last layer,
197
- * then fill in evenly-spaced layers up to the target count.
196
+ * **Security rationale:** The previous implementation used deterministic
197
+ * evenly-spaced selection (first, last, and uniform steps between). An
198
+ * attacker who knows the model architecture could calculate exactly which
199
+ * layers are sampled and confine weight modifications to the unsampled
200
+ * ~85% of layers, completely evading fingerprint drift detection.
201
+ *
202
+ * The current implementation always anchors on the first and last layers
203
+ * (required for stable fingerprint boundaries) but randomises the
204
+ * intermediate layer selection using `crypto.randomInt()` so the sampled
205
+ * set is unpredictable across invocations.
206
+ *
207
+ * When a numeric `seed` is provided, a simple seeded PRNG (xorshift64) is
208
+ * used instead of `crypto.randomInt()`, making the selection deterministic
209
+ * and reproducible — useful for testing and debugging only.
210
+ *
211
+ * @param totalLayers - Total number of layers in the model.
212
+ * @param ratio - Fraction of layers to sample (0, 1].
213
+ * @param seed - Optional seed for reproducible selection (testing only).
198
214
  */
199
- function selectLayers(totalLayers, ratio) {
215
+ function selectLayers(totalLayers, ratio, seed) {
200
216
  if (totalLayers <= 0)
201
217
  return [];
202
218
  if (totalLayers === 1)
@@ -205,15 +221,45 @@ function selectLayers(totalLayers, ratio) {
205
221
  if (count >= totalLayers) {
206
222
  return Array.from({ length: totalLayers }, (_, i) => i);
207
223
  }
224
+ // Always include first and last layers as anchors.
208
225
  const indices = new Set();
209
226
  indices.add(0);
210
227
  indices.add(totalLayers - 1);
211
- const step = (totalLayers - 1) / (count - 1);
212
- for (let i = 1; i < count - 1; i++) {
213
- indices.add(Math.round(i * step));
228
+ // Build pool of candidate intermediate layers (1 .. totalLayers-2).
229
+ const pool = [];
230
+ for (let i = 1; i < totalLayers - 1; i++) {
231
+ pool.push(i);
232
+ }
233
+ // Choose a random-index generator: seeded PRNG or crypto.randomInt.
234
+ const randomBelow = seed !== undefined
235
+ ? seededRandomBelow(seed)
236
+ : (max) => nodeCrypto.randomInt(max);
237
+ // Fisher-Yates partial shuffle to pick (count - 2) from the pool.
238
+ const needed = count - 2;
239
+ for (let i = 0; i < needed && i < pool.length; i++) {
240
+ const j = i + randomBelow(pool.length - i);
241
+ [pool[i], pool[j]] = [pool[j], pool[i]];
242
+ indices.add(pool[i]);
214
243
  }
215
244
  return Array.from(indices).sort((a, b) => a - b);
216
245
  }
246
+ /**
247
+ * Create a bounded random-integer generator backed by a seeded xorshift64
248
+ * PRNG. Used exclusively in testing to make `selectLayers` reproducible.
249
+ */
250
+ function seededRandomBelow(seed) {
251
+ // xorshift64 state — ensure non-zero initial state.
252
+ let state = BigInt(seed === 0 ? 1 : Math.abs(seed));
253
+ return (max) => {
254
+ // xorshift64 step (Marsaglia)
255
+ state ^= state << 13n;
256
+ state ^= state >> 7n;
257
+ state ^= state << 17n;
258
+ // Mask to 64-bit unsigned
259
+ state &= 0xffffffffffffffffn;
260
+ return Number(state % BigInt(max));
261
+ };
262
+ }
217
263
  // ---------------------------------------------------------------------------
218
264
  // ParameSphereEngine
219
265
  // ---------------------------------------------------------------------------
@@ -227,6 +273,8 @@ export class ParameSphereEngine {
227
273
  store;
228
274
  /** Entity ID for store operations. */
229
275
  entityId;
276
+ /** Optional GPU-offloaded SVD provider for T5-T7 scale models. */
277
+ svdProvider;
230
278
  constructor(config) {
231
279
  this.config = { ...DEFAULT_CONFIG, ...config };
232
280
  if (this.config.layerSampleRatio <= 0 || this.config.layerSampleRatio > 1) {
@@ -237,6 +285,7 @@ export class ParameSphereEngine {
237
285
  }
238
286
  this.store = this.config.store;
239
287
  this.entityId = this.config.entityId;
288
+ this.svdProvider = this.config.svdProvider;
240
289
  if (this.store && !this.entityId) {
241
290
  throw new Error('entityId is required when a fingerprint store is provided');
242
291
  }
@@ -317,6 +366,84 @@ export class ParameSphereEngine {
317
366
  }
318
367
  return this.buildFingerprint(allSigmas, sampledLayers, newWeights.length, activationStats);
319
368
  }
369
+ /**
370
+ * Async variant of `computeFingerprint` that uses the configured
371
+ * `svdProvider` for GPU-offloaded SVD computation.
372
+ *
373
+ * When no `svdProvider` is configured, this falls back to the
374
+ * synchronous CPU path (identical to `computeFingerprint()`).
375
+ *
376
+ * Recommended for T5-T7 scale models where CPU power iteration
377
+ * becomes expensive on large weight matrices.
378
+ */
379
+ async computeFingerprintAsync(weights, activationStats) {
380
+ if (!this.svdProvider) {
381
+ return this.computeFingerprint(weights, activationStats);
382
+ }
383
+ if (weights.length === 0) {
384
+ return this.emptyFingerprint(0);
385
+ }
386
+ const sampledLayers = selectLayers(weights.length, this.config.layerSampleRatio);
387
+ const allSigmas = [];
388
+ for (const idx of sampledLayers) {
389
+ const w = weights[idx];
390
+ if (w.length === 0) {
391
+ throw new Error(`Invalid weight matrix at layer ${idx}: matrix is empty (0 elements). ` +
392
+ `Expected a non-empty Float32Array.`);
393
+ }
394
+ const { rows, cols } = inferShape(w.length);
395
+ const data = float32ToFloat64(w);
396
+ const sigmas = await this.svdProvider.topKSingularValues(data, rows, cols, this.config.K);
397
+ allSigmas.push(sigmas);
398
+ this.prevSingularValues.set(idx, new Float64Array(sigmas));
399
+ }
400
+ return this.buildFingerprint(allSigmas, sampledLayers, weights.length, activationStats);
401
+ }
402
+ /**
403
+ * Async variant of `updateFingerprint` that uses the configured
404
+ * `svdProvider` for GPU-offloaded SVD computation.
405
+ *
406
+ * When no `svdProvider` is configured, this falls back to the
407
+ * synchronous CPU path (identical to `updateFingerprint()`).
408
+ */
409
+ async updateFingerprintAsync(newWeights, activationStats) {
410
+ if (!this.svdProvider) {
411
+ return this.updateFingerprint(newWeights, activationStats);
412
+ }
413
+ if (newWeights.length === 0) {
414
+ return this.emptyFingerprint(0);
415
+ }
416
+ const sampledLayers = selectLayers(newWeights.length, this.config.layerSampleRatio);
417
+ const allSigmas = [];
418
+ for (const idx of sampledLayers) {
419
+ const w = newWeights[idx];
420
+ if (w.length === 0) {
421
+ throw new Error(`Invalid weight matrix at layer ${idx}: matrix is empty (0 elements). ` +
422
+ `Expected a non-empty Float32Array.`);
423
+ }
424
+ const { rows, cols } = inferShape(w.length);
425
+ const data = float32ToFloat64(w);
426
+ const sigmas = await this.svdProvider.topKSingularValues(data, rows, cols, this.config.K);
427
+ // Compute delta from cached if available
428
+ const prev = this.prevSingularValues.get(idx);
429
+ if (prev && prev.length === sigmas.length) {
430
+ let maxDelta = 0;
431
+ for (let i = 0; i < sigmas.length; i++) {
432
+ const d = Math.abs(sigmas[i] - prev[i]);
433
+ if (d > maxDelta)
434
+ maxDelta = d;
435
+ }
436
+ const largest = Math.max(sigmas[0] || 0, prev[0] || 0);
437
+ if (largest > 0 && maxDelta / largest < 0.01) {
438
+ allSigmas.push(prev);
439
+ continue;
440
+ }
441
+ }
442
+ this.prevSingularValues.set(idx, new Float64Array(sigmas));
443
+ allSigmas.push(sigmas);
444
+ }
445
+ return this.buildFingerprint(allSigmas, sampledLayers, newWeights.length, activationStats);
446
+ }
320
447
  /**
321
448
  * Compare two fingerprints.
322
449
  */
@@ -1 +1 @@
1
- {"version":3,"file":"paramesphere-engine.js","sourceRoot":"","sources":["../../src/paramesphere/paramesphere-engine.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,UAAU,MAAM,aAAa,CAAC;AAU1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAGvD,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,MAAM,cAAc,GAAuB;IACzC,CAAC,EAAE,EAAE;IACL,gBAAgB,EAAE,IAAI;IACtB,SAAS,EAAE,CAAC;IACZ,cAAc,EAAE,IAAI;IACpB,QAAQ,EAAE,KAAK;CAChB,CAAC;AAEF,6BAA6B;AAC7B,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,cAAc,GAAG,KAAK,CAAC;AAE7B,8EAA8E;AAC9E,+CAA+C;AAC/C,8EAA8E;AAE9E;;;;;;;;;;;;;;GAcG;AACH,SAAS,kBAAkB,CACzB,IAAkB,EAClB,IAAY,EACZ,IAAY,EACZ,CAAS;IAET,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,uEAAuE,IAAI,MAAM,IAAI,GAAG,CACzF,CAAC;IACJ,CAAC;IACD,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC;IACnC,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACb,mDAAmD,cAAc,oBAAoB,IAAI,MAAM,IAAI,UAAU,IAAI,CAAC,MAAM,EAAE,CAC3H,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAEtC,wDAAwD;IACxD,MAAM,CAAC,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9B,8EAA8E;QAC9E,IAAI,CAAC,GAAiB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;QAC7C,wEAAwE;QACxE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;QAC9C,CAAC;QACD,YAAY,CAAC,CAAC,CAAC,CAAC;QAEhB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,cAAc,EAAE,IAAI,EAAE,EAAE,CAAC;YACjD,YAAY;YACZ,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,KAAK,GAAG,KAAK;gBAAE,MAAM;YACzB,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;YAEvB,kBAAkB;YAClB,MAAM,IAAI,GAAG,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9C,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,QAAQ,GAAG,KAAK;gBAAE,MAAM;YAC5B,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC;YAE7B,gDAAgD;YAChD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;YACxC,CAAC,GAAG,IAAI,CAAC;YACT,KAAK,GAAG,QAAQ,CAAC;YACjB,IAAI,IAAI,GAAG,cAAc,GAAG,KAAK;gBAAE,MAAM;QAC3C,CAAC;QACD,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;QAElB,oCAAoC;QACpC,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;YAClB,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;YACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC9B,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,iEAAiE;AACjE,SAAS,SAAS,CAAC,CAAe,EAAE,CAAS,EAAE,CAAS,EAAE,CAAe;IACvE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,GAAG,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC;QACD,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,iDAAiD;AACjD,SAAS,cAAc,CAAC,CAAe,EAAE,CAAS,EAAE,CAAS,EAAE,CAAe;IAC5E,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;QACD,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kCAAkC;AAClC,SAAS,OAAO,CAAC,CAAe;IAC9B,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,8BAA8B;AAC9B,SAAS,YAAY,CAAC,CAAe;IACnC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,CAAC,GAAG,KAAK;QAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,gCAAgC;AAChC,SAAS,QAAQ,CAAC,CAAe,EAAE,CAAS;IAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAC/C,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,SAAS,SAAS,CAAC,KAA0B;IAC3C,OAAO,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,WAAW,CAAC,KAA0B;IAC7C,OAAO,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACvE,CAAC;AAED,6DAA6D;AAC7D,SAAS,cAAc,CAAC,GAAiB;IACvC,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;AACpE,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,SAAS,gBAAgB,CAAC,CAAe,EAAE,CAAe;IACxD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,OAAO,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC;AACzC,CAAC;AAED,SAAS,UAAU,CAAC,CAAe,EAAE,CAAe;IAClD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACtB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E;;;;;GAKG;AACH,SAAS,YAAY,CAAC,WAAmB,EAAE,KAAa;IACtD,IAAI,WAAW,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAChC,IAAI,WAAW,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAElC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACjF,IAAI,KAAK,IAAI,WAAW,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACf,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAqB;IACpC,QAAQ,GAAmC,IAAI,CAAC;IAChD,KAAK,GAA8B,EAAE,CAAC;IAE9C,8EAA8E;IACtE,kBAAkB,GAA8B,IAAI,GAAG,EAAE,CAAC;IAElE,gEAAgE;IAC/C,KAAK,CAAgC;IACtD,sCAAsC;IACrB,QAAQ,CAAqB;IAE9C,YAAY,MAAoC;QAC9C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;QAC/C,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QACrC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,aAAa;IACb,0EAA0E;IAE1E;;;;;;;;;OASG;IACH,kBAAkB,CAChB,OAAuB,EACvB,eAAmC;QAEnC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACjF,MAAM,SAAS,GAAmB,EAAE,CAAC;QAErC,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YAChC,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CACb,kCAAkC,GAAG,kCAAkC;oBACvE,oCAAoC,CACrC,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACnE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvB,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,EAAE,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC1F,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CACf,UAA0B,EAC1B,eAAmC;QAEnC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,MAAM,aAAa,GAAG,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACpF,MAAM,SAAS,GAAmB,EAAE,CAAC;QAErC,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YAChC,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CACb,kCAAkC,GAAG,kCAAkC;oBACvE,oCAAoC,CACrC,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAEnE,yCAAyC;YACzC,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC1C,qEAAqE;gBACrE,IAAI,QAAQ,GAAG,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACvC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACxC,IAAI,CAAC,GAAG,QAAQ;wBAAE,QAAQ,GAAG,CAAC,CAAC;gBACjC,CAAC;gBACD,mFAAmF;gBACnF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBACvD,IAAI,OAAO,GAAG,CAAC,IAAI,QAAQ,GAAG,OAAO,GAAG,IAAI,EAAE,CAAC;oBAC7C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrB,SAAS;gBACX,CAAC;YACH,CAAC;YAED,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3D,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,EAAE,UAAU,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACH,mBAAmB,CACjB,CAA0B,EAC1B,CAA0B;QAE1B,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC;QACrB,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAE1C,iDAAiD;QACjD,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACvE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,GAAG,UAAU;gBAAE,UAAU,GAAG,CAAC,CAAC;QACrC,CAAC;QAED,OAAO;YACL,gBAAgB,EAAE,GAAG;YACrB,cAAc,EAAE,IAAI;YACpB,UAAU,EAAE,EAAE;YACd,aAAa,EAAE,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc;YAChD,qBAAqB,EAAE,UAAU;SAClC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAC,WAAoC;QAC9C,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;QAE5B,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACvD,gCAAgC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CAAC,OAAgC;QACzC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpE,OAAO;YACL,OAAO,EAAE,UAAU,CAAC,aAAa;YACjC,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,qBAAqB,EAAE,UAAU,CAAC,qBAAqB;YACvD,UAAU;SACX,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CAAC,OAAgC;QACpD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3D,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,oDAAoD;IACpD,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,0EAA0E;IAC1E,WAAW;IACX,0EAA0E;IAElE,gBAAgB,CACtB,SAAyB,EACzB,aAAuB,EACvB,WAAmB,EACnB,eAAmC;QAEnC,0BAA0B;QAC1B,MAAM,UAAU,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAElD,mEAAmE;QACnE,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;QAChF,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;QAE7D,qBAAqB;QACrB,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEnE,MAAM,EAAE,GAA4B;YAClC,MAAM;YACN,MAAM;YACN,QAAQ,EAAE,IAAI;YACd,aAAa;YACb,cAAc,EAAE,UAAU;YAC1B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,WAAW;SACZ,CAAC;QAEF,mBAAmB;QACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC9C,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;QAED,yEAAyE;QACzE,kEAAkE;QAClE,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;YAC7D,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC3D,gCAAgC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,+EAA+E;IACvE,uBAAuB,CAC7B,KAAoC,EACpC,aAAuB;QAEvB,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;QAE7D,2CAA2C;QAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YAChC,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QACD,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAEO,gBAAgB,CAAC,WAAmB;QAC1C,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACrC,OAAO;YACL,MAAM;YACN,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC;YACxB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YAC/D,aAAa,EAAE,EAAE;YACjB,cAAc,EAAE,IAAI,YAAY,CAAC,CAAC,CAAC;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,2BAA2B;IAC3B,0EAA0E;IAE1E,gFAAgF;IACxE,mBAAmB,CACzB,EAA2B,EAC3B,eAAmC;QAEnC,MAAM,MAAM,GAAsB;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAS;YACxB,IAAI,EAAE,EAAE,CAAC,MAAM;YACf,cAAc,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC;YAC7C,SAAS,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC;YACjC,QAAQ,EAAE;gBACR,aAAa,EAAE,EAAE,CAAC,aAAa;gBAC/B,WAAW,EAAE,EAAE,CAAC,WAAW;gBAC3B,QAAQ,EAAE,EAAE,CAAC,QAAQ;gBACrB,YAAY,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM;gBAC9B,4DAA4D;gBAC5D,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;aAC9B;SACF,CAAC;QACF,IAAI,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,MAAM,CAAC,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACnD,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;aACrB,CAAC,CAAC,CAAC;QACN,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,sEAAsE;IAC9D,qBAAqB,CAAC,MAAyB;QACrD,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAA4B,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,MAA8B,CAAC;QACtD,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACnG,OAAO;YACL,MAAM;YACN,MAAM,EAAE,MAAM,CAAC,IAAI;YACnB,QAAQ,EAAE,IAAI,CAAC,QAA8B;YAC7C,aAAa,EAAG,IAAI,CAAC,aAA0B,IAAI,EAAE;YACrD,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;YACxD,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE;YACzC,WAAW,EAAG,IAAI,CAAC,WAAsB,IAAI,CAAC;SAC/C,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,4BAA4B;IAC5B,0EAA0E;IAE1E;;;;;;;;;;;;;OAaG;IACH,0BAA0B,CACxB,WAA+B,EAC/B,iBAAyB,GAAG,EAC5B,UAAqC,yBAAyB;QAE9D,4DAA4D;QAC5D,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnC,OAAO;gBACL,SAAS,EAAE,GAAG;gBACd,oBAAoB,EAAE,OAAO,CAAC,iBAAiB;gBAC/C,cAAc,EAAE,OAAO,CAAC,WAAW;gBACnC,iBAAiB,EAAE,OAAO,CAAC,cAAc;gBACzC,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACrC,CAAC;QACJ,CAAC;QAED,yBAAyB;QACzB,MAAM,gBAAgB,GAAG,WAAW;YAClC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;YAC1D,CAAC,CAAC,GAAG,CAAC;QAER,MAAM,eAAe,GAAG,WAAW;YACjC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACnF,CAAC,CAAC,GAAG,CAAC;QAER,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;QAEvE,sBAAsB;QACtB,MAAM,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;QAC1E,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;QACnE,MAAM,iBAAiB,GAAG,OAAO,CAAC,cAAc,GAAG,qBAAqB,CAAC;QAEzE,2DAA2D;QAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EACtC,oBAAoB,GAAG,cAAc,GAAG,iBAAiB,CAC1D,CAAC,CAAC;QAEH,OAAO;YACL,SAAS;YACT,oBAAoB;YACpB,cAAc;YACd,iBAAiB;YACjB,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACrC,CAAC;IACJ,CAAC;CACF;AAED,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,SAAS,gBAAgB,CAAC,GAAiB;IACzC,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACrD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAsB;IACjD,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,QAAQ,IAAI,CAAC,CAAC,MAAM,CAAC;IAC7C,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACtB,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAS,UAAU,CAAC,MAAc;IAChC,IAAI,MAAM,IAAI,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAC7C,IAAI,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAE9C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,IAAI,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AACnC,CAAC;AAED,8EAA8E;AAC9E,wDAAwD;AACxD,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAoB,EACpB,OAAO,GAAG,IAAI;IAEd,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IACpD,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAElD,gBAAgB;IAChB,IAAI,GAAG,GAAG,QAAQ,CAAC;IACnB,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,IAAI,MAAM,CAAC,CAAC,CAAE,GAAG,GAAG;YAAE,GAAG,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;QACvC,IAAI,MAAM,CAAC,CAAC,CAAE,GAAG,GAAG;YAAE,GAAG,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;IACzC,CAAC;IAED,MAAM,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC;IACxB,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB;IAEnE,qDAAqD;IACrD,qEAAqE;IACrE,wEAAwE;IACxE,uEAAuE;IACvE,MAAM,UAAU,GAAG,KAAK,GAAG,OAAO,CAAC;IACnC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAE,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,WAAoC,EACpC,OAAO,GAAG,IAAI;IAEd,MAAM,WAAW,GAAG,sBAAsB,CAAC,WAAW,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAEhF,4EAA4E;IAC5E,iFAAiF;IACjF,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC;IACpC,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC;IACzD,MAAM,SAAS,GAAG,IAAI,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC9B,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACpB,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED,iBAAiB;IACjB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE/E,OAAO;QACL,GAAG,WAAW;QACd,MAAM,EAAE,SAAS;QACjB,cAAc,EAAE,WAAW;QAC3B,MAAM;QACN,QAAQ,EAAE,WAAW,CAAC,QAAQ,KAAK,SAAS;YAC1C,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YACnE,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC;AAED,6BAA6B;AAC7B,OAAO,EACL,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,GAC3E,CAAC"}
1
+ {"version":3,"file":"paramesphere-engine.js","sourceRoot":"","sources":["../../src/paramesphere/paramesphere-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,136 @@
1
+ /**
2
+ * Scheduled ParameSphere Batch Verifier
3
+ *
4
+ * Runs I(θ) verification on a configurable schedule instead of on-demand,
5
+ * designed for 100K-agent fleet operations where per-request SVD computation
6
+ * is impractical. Verifies agents in priority order (T7 first — highest
7
+ * blast radius if compromised) with configurable batch size and concurrency.
8
+ *
9
+ * Key design choices:
10
+ * - Priority queue: T5-T7 first, then T3-T4, then T0-T2
11
+ * - I(θ) result cache with configurable TTL (default: 24h)
12
+ * - Bounded concurrency via semaphore pattern
13
+ * - Event emission for monitoring and alerting pipelines
14
+ * - Metrics: verified/sec, avg SVD latency, cache hit rate
15
+ *
16
+ * @packageDocumentation
17
+ */
18
+ import { EventEmitter } from 'node:events';
19
+ import type { IntegrityMultiplier } from './types.js';
20
+ /** Agent registration record for the scheduled verifier. */
21
+ export interface VerifiableAgent {
22
+ agentId: string;
23
+ tier: number;
24
+ /** Weight data provider — called when verification needs fresh weights. */
25
+ getWeights?: () => Promise<Float32Array[]>;
26
+ /** Pre-computed I(θ) for agents that supply it externally. */
27
+ lastIntegrity?: IntegrityMultiplier;
28
+ }
29
+ /** Configuration for the scheduled batch verifier. */
30
+ export interface ScheduledParameSphereVerifierConfig {
31
+ /** How often the full verification cycle runs (ms). Default: 86_400_000 (24h). */
32
+ verificationInterval: number;
33
+ /** Number of agents per batch. Default: 100. */
34
+ batchSize: number;
35
+ /** Maximum parallel SVD computations. Default: 4. */
36
+ maxConcurrency: number;
37
+ /** Priority order: tiers to verify first. Default: [7,6,5,4,3,2,1,0]. */
38
+ priorityTiers: number[];
39
+ /** TTL for cached I(θ) results (ms). Default: 86_400_000 (24h). */
40
+ cacheTtlMs: number;
41
+ /** I(θ) threshold below which an integrity_alert is emitted. Default: 0.7. */
42
+ alertThreshold: number;
43
+ }
44
+ /** Cached I(θ) result. */
45
+ export interface CachedIntegrityResult {
46
+ agentId: string;
47
+ integrity: IntegrityMultiplier;
48
+ cachedAt: number;
49
+ latencyMs: number;
50
+ }
51
+ /** Verification status snapshot. */
52
+ export interface VerificationStatus {
53
+ lastRun: Date | null;
54
+ nextRun: Date | null;
55
+ agentsVerified: number;
56
+ agentsPending: number;
57
+ avgLatencyMs: number;
58
+ }
59
+ /** Metrics snapshot. */
60
+ export interface VerifierMetrics {
61
+ agentsVerifiedPerSec: number;
62
+ avgSvdLatencyMs: number;
63
+ cacheHitRate: number;
64
+ totalVerifications: number;
65
+ totalCacheHits: number;
66
+ totalCacheMisses: number;
67
+ }
68
+ /** Event types emitted by the verifier. */
69
+ export type ParameSphereVerifierEvent = 'verification_started' | 'verification_completed' | 'integrity_alert' | 'batch_completed' | 'error';
70
+ /** Verification function — injected by the caller. */
71
+ export type VerifyAgentFn = (agentId: string, weights?: Float32Array[]) => Promise<IntegrityMultiplier>;
72
+ export declare class ScheduledParameSphereVerifier extends EventEmitter {
73
+ private readonly config;
74
+ private readonly verifyFn;
75
+ private agents;
76
+ private cache;
77
+ private schedulerTimer;
78
+ private running;
79
+ private lastRun;
80
+ private nextRun;
81
+ private totalVerifications;
82
+ private totalCacheHits;
83
+ private totalCacheMisses;
84
+ private latencyAccumulatorMs;
85
+ private verificationStartTime;
86
+ private lastCycleDurationMs;
87
+ constructor(verifyFn: VerifyAgentFn, config?: Partial<ScheduledParameSphereVerifierConfig>);
88
+ /** Register an agent for scheduled verification. */
89
+ registerAgent(agent: VerifiableAgent): void;
90
+ /** Remove an agent from scheduled verification. */
91
+ unregisterAgent(agentId: string): void;
92
+ /** Get all registered agent IDs. */
93
+ getRegisteredAgents(): string[];
94
+ /** Start the scheduled verification loop. */
95
+ start(): void;
96
+ /** Stop the verifier gracefully. */
97
+ stop(): void;
98
+ /** Check if the verifier is running. */
99
+ isRunning(): boolean;
100
+ /**
101
+ * Run a full verification cycle across all agents, ordered by priority tier.
102
+ */
103
+ runFullCycle(): Promise<CachedIntegrityResult[]>;
104
+ /**
105
+ * Verify a specific batch of agents by ID.
106
+ * Uses bounded concurrency (semaphore pattern).
107
+ */
108
+ verifyBatch(agentIds: string[]): Promise<CachedIntegrityResult[]>;
109
+ /**
110
+ * Get the current verification status.
111
+ */
112
+ getVerificationStatus(): VerificationStatus;
113
+ /**
114
+ * Get metrics snapshot.
115
+ */
116
+ getMetrics(): VerifierMetrics;
117
+ /**
118
+ * Get a cached I(θ) result for an agent (if available and not expired).
119
+ */
120
+ getCachedResult(agentId: string): CachedIntegrityResult | null;
121
+ /**
122
+ * Invalidate a cached result (forces re-verification on next cycle).
123
+ */
124
+ invalidateCache(agentId: string): void;
125
+ /**
126
+ * Clear the entire cache.
127
+ */
128
+ clearCache(): void;
129
+ private getPriorityOrderedAgents;
130
+ private verifySingleAgent;
131
+ }
132
+ /**
133
+ * Create a scheduled ParameSphere batch verifier.
134
+ */
135
+ export declare function createScheduledParameSphereVerifier(verifyFn: VerifyAgentFn, config?: Partial<ScheduledParameSphereVerifierConfig>): ScheduledParameSphereVerifier;
136
+ //# sourceMappingURL=scheduled-verifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduled-verifier.d.ts","sourceRoot":"","sources":["../../src/paramesphere/scheduled-verifier.ts"],"names":[],"mappings":"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"}