@n8n/expression-runtime 0.28.1 → 0.29.1

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 (58) hide show
  1. package/README.md +2 -2
  2. package/dist/bundle/runtime.esm.js +6 -6
  3. package/dist/bundle/runtime.esm.js.map +3 -3
  4. package/dist/bundle/runtime.iife.js +6 -6
  5. package/dist/bundle/runtime.iife.js.map +3 -3
  6. package/dist/cjs/bridge/isolated-vm-bridge.d.ts +10 -3
  7. package/dist/cjs/bridge/isolated-vm-bridge.d.ts.map +1 -1
  8. package/dist/cjs/bridge/isolated-vm-bridge.js +33 -5
  9. package/dist/cjs/bridge/isolated-vm-bridge.js.map +1 -1
  10. package/dist/cjs/bridge/quickjs-bridge.d.ts +100 -0
  11. package/dist/cjs/bridge/quickjs-bridge.d.ts.map +1 -0
  12. package/dist/cjs/bridge/quickjs-bridge.js +1243 -0
  13. package/dist/cjs/bridge/quickjs-bridge.js.map +1 -0
  14. package/dist/cjs/build.tsbuildinfo +1 -1
  15. package/dist/cjs/evaluator/expression-evaluator.d.ts +13 -0
  16. package/dist/cjs/evaluator/expression-evaluator.d.ts.map +1 -1
  17. package/dist/cjs/evaluator/expression-evaluator.js +39 -12
  18. package/dist/cjs/evaluator/expression-evaluator.js.map +1 -1
  19. package/dist/cjs/extensions/array-extensions.d.ts.map +1 -1
  20. package/dist/cjs/extensions/array-extensions.js +6 -0
  21. package/dist/cjs/extensions/array-extensions.js.map +1 -1
  22. package/dist/cjs/index.d.ts +1 -0
  23. package/dist/cjs/index.d.ts.map +1 -1
  24. package/dist/cjs/index.js +5 -1
  25. package/dist/cjs/index.js.map +1 -1
  26. package/dist/cjs/runtime/lazy-proxy.d.ts.map +1 -1
  27. package/dist/cjs/runtime/lazy-proxy.js +74 -19
  28. package/dist/cjs/runtime/lazy-proxy.js.map +1 -1
  29. package/dist/cjs/types/bridge.d.ts +9 -1
  30. package/dist/cjs/types/bridge.d.ts.map +1 -1
  31. package/dist/cjs/types/bridge.js.map +1 -1
  32. package/dist/esm/bridge/isolated-vm-bridge.d.ts +10 -3
  33. package/dist/esm/bridge/isolated-vm-bridge.d.ts.map +1 -1
  34. package/dist/esm/bridge/isolated-vm-bridge.js +33 -5
  35. package/dist/esm/bridge/isolated-vm-bridge.js.map +1 -1
  36. package/dist/esm/bridge/quickjs-bridge.d.ts +100 -0
  37. package/dist/esm/bridge/quickjs-bridge.d.ts.map +1 -0
  38. package/dist/esm/bridge/quickjs-bridge.js +1206 -0
  39. package/dist/esm/bridge/quickjs-bridge.js.map +1 -0
  40. package/dist/esm/build.tsbuildinfo +1 -1
  41. package/dist/esm/evaluator/expression-evaluator.d.ts +13 -0
  42. package/dist/esm/evaluator/expression-evaluator.d.ts.map +1 -1
  43. package/dist/esm/evaluator/expression-evaluator.js +39 -12
  44. package/dist/esm/evaluator/expression-evaluator.js.map +1 -1
  45. package/dist/esm/extensions/array-extensions.d.ts.map +1 -1
  46. package/dist/esm/extensions/array-extensions.js +6 -0
  47. package/dist/esm/extensions/array-extensions.js.map +1 -1
  48. package/dist/esm/index.d.ts +1 -0
  49. package/dist/esm/index.d.ts.map +1 -1
  50. package/dist/esm/index.js +3 -0
  51. package/dist/esm/index.js.map +1 -1
  52. package/dist/esm/runtime/lazy-proxy.d.ts.map +1 -1
  53. package/dist/esm/runtime/lazy-proxy.js +74 -19
  54. package/dist/esm/runtime/lazy-proxy.js.map +1 -1
  55. package/dist/esm/types/bridge.d.ts +9 -1
  56. package/dist/esm/types/bridge.d.ts.map +1 -1
  57. package/dist/esm/types/bridge.js.map +1 -1
  58. package/package.json +4 -3
@@ -212,8 +212,9 @@ export declare class IsolatedVmBridge implements RuntimeBridge {
212
212
  * Handler for `$evaluateExpression(expression, itemIndex?)`. Forwards
213
213
  * the string to the host's nested-evaluation helper, which re-enters
214
214
  * the expression engine on the inner expression. Under the VM engine
215
- * this round-trips through the bridge again on a fresh evaluation
216
- * cycle, which is the same shape the legacy engine supports.
215
+ * this round-trips through the bridge again as a new evaluation on the
216
+ * enclosing call's time budget, which is the same shape the legacy
217
+ * engine supports.
217
218
  *
218
219
  * @private
219
220
  */
@@ -245,7 +246,8 @@ export declare class IsolatedVmBridge implements RuntimeBridge {
245
246
  * from the closure-scoped references.
246
247
  *
247
248
  * Each call gets its own closure, so nested and concurrent evaluations
248
- * cannot interfere with each other.
249
+ * cannot see each other's data. Time is the exception: a nested call runs
250
+ * on what is left of the enclosing call's budget (see `elapsedMs`).
249
251
  *
250
252
  * @param code - JavaScript expression to evaluate
251
253
  * @param data - Workflow data (e.g., { $json: {...}, $runIndex: 0 })
@@ -253,6 +255,11 @@ export declare class IsolatedVmBridge implements RuntimeBridge {
253
255
  * @throws {Error} If bridge not initialized or execution fails
254
256
  */
255
257
  execute(code: string, data: WorkflowData, options?: ExecuteOptions): unknown;
258
+ /**
259
+ * Always names the configured limit, never the reduced budget a nested call
260
+ * ran on — reporting "timed out after 137ms" would misstate the limit.
261
+ */
262
+ private timeoutError;
256
263
  /**
257
264
  * Reconstruct an error from serialized isolate data.
258
265
  *
@@ -1 +1 @@
1
- {"version":3,"file":"isolated-vm-bridge.d.ts","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AA+E1F;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,YAAW,aAAa;IACrD,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,MAAM,CAAmC;IAEjD,YAAY,MAAM,GAAE,YAAiB,EAUpC;IAED;;;;;;;;;;OAUG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA4BhC;IAED;;;;;;;;;;;OAWG;YACW,mBAAmB;IAgCjC;;;;;;;;OAQG;YACW,iBAAiB;IA4B/B;;;;;;;;;;;;;;;;;;;;;;OAsBG;YACW,kBAAkB;IAwBhC;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,uBAAuB;IAqE/B;;;;;;;OAOG;IACH,OAAO,CAAC,wBAAwB;IA4EhC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,OAAO,CAAC,iBAAiB;IA+CzB;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,gBAAgB;IAOxB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,iBAAiB;IAIzB;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IAOtB;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,YAAY;IAOpB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,iBAAiB;IAUzB;;;;;;;;OAQG;IACH,OAAO,CAAC,wBAAwB;IAOhC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CA2F3E;IAED;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAexB;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAc7B;IAED;;;;OAIG;IACH,UAAU,IAAI,OAAO,CAEpB;CACD"}
1
+ {"version":3,"file":"isolated-vm-bridge.d.ts","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AA+E1F;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,YAAW,aAAa;IACrD,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,MAAM,CAAmC;IAEjD,YAAY,MAAM,GAAE,YAAiB,EAUpC;IAED;;;;;;;;;;OAUG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA4BhC;IAED;;;;;;;;;;;OAWG;YACW,mBAAmB;IAgCjC;;;;;;;;OAQG;YACW,iBAAiB;IA4B/B;;;;;;;;;;;;;;;;;;;;;;OAsBG;YACW,kBAAkB;IAwBhC;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,uBAAuB;IAqE/B;;;;;;;OAOG;IACH,OAAO,CAAC,wBAAwB;IA4EhC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,OAAO,CAAC,iBAAiB;IA+CzB;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,gBAAgB;IAOxB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,iBAAiB;IAIzB;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IAOtB;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,YAAY;IAOpB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,iBAAiB;IAUzB;;;;;;;;;OASG;IACH,OAAO,CAAC,wBAAwB;IAOhC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CA4G3E;IAED;;;OAGG;IACH,OAAO,CAAC,YAAY;IASpB;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAexB;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAc7B;IAED;;;;OAIG;IACH,UAAU,IAAI,OAAO,CAEpB;CACD"}
@@ -607,8 +607,9 @@ class IsolatedVmBridge {
607
607
  * Handler for `$evaluateExpression(expression, itemIndex?)`. Forwards
608
608
  * the string to the host's nested-evaluation helper, which re-enters
609
609
  * the expression engine on the inner expression. Under the VM engine
610
- * this round-trips through the bridge again on a fresh evaluation
611
- * cycle, which is the same shape the legacy engine supports.
610
+ * this round-trips through the bridge again as a new evaluation on the
611
+ * enclosing call's time budget, which is the same shape the legacy
612
+ * engine supports.
612
613
  *
613
614
  * @private
614
615
  */
@@ -644,7 +645,8 @@ class IsolatedVmBridge {
644
645
  * from the closure-scoped references.
645
646
  *
646
647
  * Each call gets its own closure, so nested and concurrent evaluations
647
- * cannot interfere with each other.
648
+ * cannot see each other's data. Time is the exception: a nested call runs
649
+ * on what is left of the enclosing call's budget (see `elapsedMs`).
648
650
  *
649
651
  * @param code - JavaScript expression to evaluate
650
652
  * @param data - Workflow data (e.g., { $json: {...}, $runIndex: 0 })
@@ -655,6 +657,23 @@ class IsolatedVmBridge {
655
657
  if (!this.initialized || !this.context) {
656
658
  throw new Error('Bridge not initialized. Call initialize() first.');
657
659
  }
660
+ // A nested call runs on what is left of the configured timeout, so the
661
+ // chain shares one budget: subtracting elapsed makes every frame's
662
+ // deadline the same instant. A configured timeout of 0 means "no limit",
663
+ // so there is nothing to share. A positive elapsed is the only nested
664
+ // case that needs handling — a frame that has spent nothing is owed the
665
+ // full timeout anyway.
666
+ const elapsedMs = options?.elapsedMs ?? 0;
667
+ const nested = elapsedMs > 0 && this.config.timeout > 0;
668
+ let timeout = this.config.timeout;
669
+ if (nested) {
670
+ // isolated-vm rejects a fractional timeout and reads 0 or less as "no
671
+ // timeout at all", so truncate, and fail here rather than pass on a
672
+ // budget that is already gone.
673
+ timeout = Math.trunc(this.config.timeout - elapsedMs);
674
+ if (timeout <= 0)
675
+ throw this.timeoutError(true);
676
+ }
658
677
  // Host callbacks are ivm.Callback instances: inside the isolate they
659
678
  // arrive as plain functions with structured-clone marshaling, so the
660
679
  // runtime invokes them directly. Callbacks are GC-managed; there is no
@@ -701,7 +720,7 @@ try {
701
720
  extra: extra
702
721
  };
703
722
  }`;
704
- const result = this.context.evalClosureSync(wrappedCode, [getValueAtPath, getArrayElement, callHost], { result: { copy: true }, timeout: this.config.timeout });
723
+ const result = this.context.evalClosureSync(wrappedCode, [getValueAtPath, getArrayElement, callHost], { result: { copy: true }, timeout });
705
724
  if (isErrorSentinel(result)) {
706
725
  throw this.reconstructError(result);
707
726
  }
@@ -720,7 +739,7 @@ try {
720
739
  }
721
740
  const errorMessage = error instanceof Error ? error.message : String(error);
722
741
  if (errorMessage.includes('Script execution timed out')) {
723
- throw new types_1.TimeoutError(`Expression timed out after ${this.config.timeout}ms`, {});
742
+ throw this.timeoutError(nested);
724
743
  }
725
744
  if (errorMessage.includes('memory limit')) {
726
745
  throw new types_1.MemoryLimitError(`Expression exceeded memory limit of ${this.config.memoryLimit}MB`, {});
@@ -728,6 +747,15 @@ try {
728
747
  throw new Error(`Expression evaluation failed: ${errorMessage}`);
729
748
  }
730
749
  }
750
+ /**
751
+ * Always names the configured limit, never the reduced budget a nested call
752
+ * ran on — reporting "timed out after 137ms" would misstate the limit.
753
+ */
754
+ timeoutError(nested) {
755
+ return new types_1.TimeoutError(nested
756
+ ? `Nested expressions timed out after sharing the ${this.config.timeout}ms limit`
757
+ : `Expression timed out after ${this.config.timeout}ms`, {});
758
+ }
731
759
  /**
732
760
  * Reconstruct an error from serialized isolate data.
733
761
  *
@@ -1 +1 @@
1
- {"version":3,"file":"isolated-vm-bridge.js","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"isolated-vm-bridge.js","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ import type { RuntimeBridge, BridgeConfig, ExecuteOptions, WorkflowData } from '../types';
2
+ /**
3
+ * QuickJsBridge - Runtime bridge using quickjs-emscripten for expression evaluation.
4
+ *
5
+ * Mirrors the IsolatedVmBridge contract:
6
+ * - Memory limit enforcement
7
+ * - No access to Node.js APIs
8
+ * - Timeout enforcement via interrupt handler
9
+ * - Complete isolation from host process
10
+ *
11
+ * Callbacks are scoped per execute() call (see createCallbackHandles), so
12
+ * concurrent / nested evaluations see fresh data. The runtime treats bridge
13
+ * callbacks as plain functions, so `buildContext(callbacks, timezone)` gets
14
+ * the host callback functions directly.
15
+ */
16
+ export declare class QuickJsBridge implements RuntimeBridge {
17
+ private runtime;
18
+ private vm;
19
+ private initialized;
20
+ private disposed;
21
+ private config;
22
+ private logger;
23
+ private intlHandles;
24
+ private deadlines;
25
+ constructor(config?: BridgeConfig);
26
+ initialize(): Promise<void>;
27
+ /**
28
+ * Load the runtime IIFE bundle and verify required globals are present.
29
+ */
30
+ private loadRuntimeBundle;
31
+ /**
32
+ * Inject a polyfill for the Intl API.
33
+ *
34
+ * QuickJS doesn't include Intl, but Luxon (bundled in the runtime) uses
35
+ * Intl.DateTimeFormat, Intl.NumberFormat, Intl.RelativeTimeFormat, and
36
+ * Intl.ListFormat extensively. Rather than shimming all of this in pure JS,
37
+ * we register host callback functions that delegate to Node.js's real Intl
38
+ * implementation, then build lightweight JS wrapper classes that call them.
39
+ */
40
+ private injectIntlPolyfill;
41
+ /**
42
+ * Wrap __prepareForTransfer so values that don't survive vm.dump()
43
+ * (Date, NaN, Map, Set, Error) are converted to sentinel objects.
44
+ * The host post-processes vm.dump() output to reconstruct real instances
45
+ * via unwrapSentinels(). Also injects __unwrapFromHost, the guest-side
46
+ * reverse: it rebuilds instances from the sentinels the host's
47
+ * wrapSpecialValuesForGuest() emits for callback results.
48
+ */
49
+ private injectTransferWrapper;
50
+ /**
51
+ * Inject the E() error handler matching IsolatedVmBridge semantics:
52
+ * - Re-throw ExpressionError / ExpressionExtensionError
53
+ * - Swallow everything else (TypeErrors, generic Errors, etc.)
54
+ *
55
+ * Errors from host callbacks arrive as sentinel objects (not class
56
+ * instances), so we match by `name` instead of instanceof.
57
+ */
58
+ private injectErrorHandler;
59
+ private verifyProxySystem;
60
+ /**
61
+ * Create per-execute callback function handles, closure-scoped to `data`.
62
+ *
63
+ * The handles are passed as arguments into the per-call wrapper function
64
+ * (see execute()) instead of being set as VM globals: `execute()` can
65
+ * re-enter synchronously (e.g. `$evaluateExpression`), and globals would
66
+ * let the nested call's callbacks clobber the in-flight outer call's data
67
+ * bindings. This mirrors IsolatedVmBridge's closure-scoped `$0`/`$1`/`$2`
68
+ * evalClosureSync references.
69
+ *
70
+ * Callers must dispose the returned handles when the call completes.
71
+ */
72
+ private createCallbackHandles;
73
+ /**
74
+ * Convert a host JavaScript value to a QuickJS handle.
75
+ *
76
+ * For primitives, uses the dedicated vm.newXxx() methods.
77
+ * For complex objects (arrays, objects), uses JSON round-trip via evalCode.
78
+ */
79
+ private hostValueToQuickJSHandle;
80
+ /**
81
+ * Execute JavaScript code in the QuickJS context.
82
+ *
83
+ * Mirrors IsolatedVmBridge.execute():
84
+ * 1. Create per-call host callbacks scoped to `data` (createCallbackHandles)
85
+ * 2. Build a fresh evaluation context via buildContext(callbacks, timezone)
86
+ * 3. Run wrapped code with `this` set to the context
87
+ * 4. Reconstruct error sentinels into real Errors
88
+ */
89
+ execute(code: string, data: WorkflowData, options?: ExecuteOptions): unknown;
90
+ /**
91
+ * Always names the configured limit, never the reduced budget a nested call
92
+ * ran on — reporting "timed out after 137ms" would misstate the limit.
93
+ */
94
+ private timeoutError;
95
+ private reconstructError;
96
+ private evalCodeOrThrow;
97
+ dispose(): Promise<void>;
98
+ isDisposed(): boolean;
99
+ }
100
+ //# sourceMappingURL=quickjs-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quickjs-bridge.d.ts","sourceRoot":"","sources":["../../../src/bridge/quickjs-bridge.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAkc1F;;;;;;;;;;;;;GAaG;AACH,qBAAa,aAAc,YAAW,aAAa;IAClD,OAAO,CAAC,OAAO,CAA0D;IACzE,OAAO,CAAC,EAAE,CAA0D;IACpE,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,MAAM,CAAmC;IAGjD,OAAO,CAAC,WAAW,CAAyD;IAM5E,OAAO,CAAC,SAAS,CAAgB;IAEjC,YAAY,MAAM,GAAE,YAAiB,EAMpC;IAEK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAyChC;IAED;;OAEG;YACW,iBAAiB;IAqB/B;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IAsR1B;;;;;;;OAOG;IACH,OAAO,CAAC,qBAAqB;IA2H7B;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,iBAAiB;IA0BzB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,qBAAqB;IAyC7B;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAoChC;;;;;;;;OAQG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAkI3E;IAED;;;OAGG;IACH,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,eAAe;IAcjB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAqB7B;IAED,UAAU,IAAI,OAAO,CAEpB;CACD"}