@inco/js 0.8.0-devnet-2 → 0.8.0-devnet-4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/cjs/advancedacl/session-key.d.ts +12 -2
  2. package/dist/cjs/advancedacl/session-key.js +49 -6
  3. package/dist/cjs/encryption/encryption.d.ts +5 -1
  4. package/dist/cjs/encryption/encryption.js +14 -5
  5. package/dist/cjs/generated/abis/lightning.d.ts +10 -1
  6. package/dist/cjs/generated/abis/lightning.js +4 -2
  7. package/dist/cjs/generated/abis/verifier.d.ts +0 -12
  8. package/dist/cjs/generated/abis/verifier.js +1 -9
  9. package/dist/cjs/generated/es/inco/covalidator/compute/v1/server_pb.d.ts +13 -0
  10. package/dist/cjs/generated/es/inco/covalidator/compute/v1/server_pb.js +3 -2
  11. package/dist/cjs/generated/es/inco/covalidator/compute/v1/types_pb.d.ts +43 -2
  12. package/dist/cjs/generated/es/inco/covalidator/compute/v1/types_pb.js +41 -3
  13. package/dist/cjs/generated/es/inco/helioswrapper/v1/helioswrapper_pb.d.ts +77 -0
  14. package/dist/cjs/generated/es/inco/helioswrapper/v1/helioswrapper_pb.js +28 -0
  15. package/dist/cjs/handle.d.ts +1 -0
  16. package/dist/cjs/handle.js +6 -3
  17. package/dist/cjs/kms/thresholdPromises.js +2 -2
  18. package/dist/cjs/lite/ecies.js +6 -3
  19. package/dist/cjs/lite/lightning.d.ts +33 -6
  20. package/dist/cjs/lite/lightning.js +59 -9
  21. package/dist/cjs/local/local-node.d.ts +3 -3
  22. package/dist/cjs/local/local-node.js +8 -4
  23. package/dist/cjs/retry.js +4 -2
  24. package/dist/esm/advancedacl/session-key.d.ts +12 -2
  25. package/dist/esm/advancedacl/session-key.js +48 -6
  26. package/dist/esm/encryption/encryption.d.ts +5 -1
  27. package/dist/esm/encryption/encryption.js +15 -6
  28. package/dist/esm/generated/abis/lightning.d.ts +10 -1
  29. package/dist/esm/generated/abis/lightning.js +4 -2
  30. package/dist/esm/generated/abis/verifier.d.ts +0 -12
  31. package/dist/esm/generated/abis/verifier.js +1 -9
  32. package/dist/esm/generated/es/inco/covalidator/compute/v1/server_pb.d.ts +13 -0
  33. package/dist/esm/generated/es/inco/covalidator/compute/v1/server_pb.js +3 -2
  34. package/dist/esm/generated/es/inco/covalidator/compute/v1/types_pb.d.ts +43 -2
  35. package/dist/esm/generated/es/inco/covalidator/compute/v1/types_pb.js +41 -3
  36. package/dist/esm/generated/es/inco/helioswrapper/v1/helioswrapper_pb.d.ts +77 -0
  37. package/dist/esm/generated/es/inco/helioswrapper/v1/helioswrapper_pb.js +25 -0
  38. package/dist/esm/handle.d.ts +1 -0
  39. package/dist/esm/handle.js +6 -3
  40. package/dist/esm/kms/thresholdPromises.js +2 -2
  41. package/dist/esm/lite/ecies.js +6 -3
  42. package/dist/esm/lite/lightning.d.ts +33 -6
  43. package/dist/esm/lite/lightning.js +60 -10
  44. package/dist/esm/local/local-node.d.ts +3 -3
  45. package/dist/esm/local/local-node.js +8 -4
  46. package/dist/esm/retry.js +4 -2
  47. package/dist/types/advancedacl/session-key.d.ts +12 -2
  48. package/dist/types/encryption/encryption.d.ts +5 -1
  49. package/dist/types/generated/abis/lightning.d.ts +10 -1
  50. package/dist/types/generated/abis/verifier.d.ts +0 -12
  51. package/dist/types/generated/es/inco/covalidator/compute/v1/server_pb.d.ts +13 -0
  52. package/dist/types/generated/es/inco/covalidator/compute/v1/types_pb.d.ts +43 -2
  53. package/dist/types/generated/es/inco/helioswrapper/v1/helioswrapper_pb.d.ts +77 -0
  54. package/dist/types/handle.d.ts +1 -0
  55. package/dist/types/lite/lightning.d.ts +33 -6
  56. package/dist/types/local/local-node.d.ts +3 -3
  57. package/package.json +1 -1
@@ -39,6 +39,7 @@ exports.InputContext = effect_1.Schema.Struct({
39
39
  aclAddress: binary_js_1.HexString,
40
40
  userAddress: binary_js_1.HexString,
41
41
  contractAddress: binary_js_1.HexString,
42
+ version: effect_1.Schema.Number,
42
43
  });
43
44
  // Returns the FheType of the handle. See:
44
45
  // https://github.com/Inco-fhevm/inco-monorepo/blob/636756f512ae16535bdcb9a43df76bf14fbd6ba7/pkg/fhe/handle.md
@@ -91,7 +92,7 @@ function computeHandle({ prehandle, context, }) {
91
92
  if (prehandle.length !== 32) {
92
93
  throw new Error(`prehandle should be 32 bytes but is: ${prehandle.length}`);
93
94
  }
94
- const packed = (0, viem_1.encodePacked)(['bytes32', 'string', 'uint256', 'address', 'address', 'address'], [
95
+ const packed = (0, viem_1.encodePacked)(['bytes32', 'string', 'uint256', 'address', 'address', 'address', 'int32'], [
95
96
  (0, viem_1.toHex)(prehandle),
96
97
  // Note: The x/hostchain spec requires the chain ID to be prefixed with 'evm/' for EVM chains
97
98
  'evm/',
@@ -99,6 +100,7 @@ function computeHandle({ prehandle, context, }) {
99
100
  context.aclAddress,
100
101
  context.userAddress,
101
102
  context.contractAddress,
103
+ context.version,
102
104
  ]);
103
105
  return Buffer.concat([
104
106
  new sha3_1.Keccak(256)
@@ -110,13 +112,14 @@ function computeHandle({ prehandle, context, }) {
110
112
  ]);
111
113
  }
112
114
  function hashInputContext(context) {
113
- const packed = (0, viem_1.encodePacked)(['string', 'uint256', 'address', 'address', 'address'], [
115
+ const packed = (0, viem_1.encodePacked)(['string', 'uint256', 'address', 'address', 'address', 'int32'], [
114
116
  // Note: The x/hostchain spec requires the chain ID to be prefixed with 'evm/' for EVM chains
115
117
  'evm/',
116
118
  context.hostChainId,
117
119
  context.aclAddress,
118
120
  context.userAddress,
119
121
  context.contractAddress,
122
+ context.version,
120
123
  ]);
121
124
  return new sha3_1.Keccak(256).update(Buffer.from((0, viem_1.hexToBytes)(packed))).digest();
122
125
  }
@@ -125,4 +128,4 @@ function assertUint8(value) {
125
128
  throw new Error(`Invalid uint8 value: ${value}`);
126
129
  }
127
130
  }
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhbmRsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFvQ0EsOEJBRUM7QUF3QkQsc0NBT0M7QUFlRCw0Q0EyQkM7QUFTRCxzQ0E4QkM7QUFFRCw0Q0FhQztBQXJLRCx1SEFBdUg7QUFDdkgsbUNBQWdDO0FBQ2hDLCtCQUE4QjtBQUM5QiwrQkFBdUQ7QUFDdkQsMkNBQXdDO0FBRTNCLFFBQUEsY0FBYyxHQUFHLENBQUMsQ0FBQztBQUVoQyxtSEFBbUg7QUFDbkgsd0hBQXdIO0FBQ3hILDJCQUEyQjtBQUNkLFFBQUEsV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDdkMsS0FBSyxFQUFFLENBQUM7SUFDUixNQUFNLEVBQUUsQ0FBQztJQUNULE1BQU0sRUFBRSxDQUFDO0lBQ1QsT0FBTyxFQUFFLENBQUM7SUFDVixPQUFPLEVBQUUsQ0FBQztJQUNWLE9BQU8sRUFBRSxDQUFDO0lBQ1YsUUFBUSxFQUFFLENBQUM7SUFDWCxRQUFRLEVBQUUsQ0FBQztJQUNYLFFBQVEsRUFBRSxDQUFDO0lBQ1gsUUFBUSxFQUFFLENBQUM7SUFDWCxTQUFTLEVBQUUsRUFBRTtJQUNiLFNBQVMsRUFBRSxFQUFFO0NBQ2QsQ0FBQyxDQUFDO0FBRUgsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxtQkFBVyxDQUFpQyxDQUFDO0FBRWhFLFFBQUEsY0FBYyxHQUFHLGVBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQztBQVE3RCxTQUFnQixTQUFTLENBQUMsS0FBYTtJQUNyQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsbUJBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFnQixDQUFDLENBQUM7QUFDL0QsQ0FBQztBQUVZLFFBQUEsWUFBWSxHQUFHLGVBQU0sQ0FBQyxNQUFNLENBQUM7SUFDeEMsV0FBVyxFQUFFLGVBQU0sQ0FBQyxNQUFNO0lB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
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhbmRsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFvQ0EsOEJBRUM7QUF5QkQsc0NBT0M7QUFlRCw0Q0EyQkM7QUFTRCxzQ0ErQkM7QUFFRCw0Q0FjQztBQXhLRCx1SEFBdUg7QUFDdkgsbUNBQWdDO0FBQ2hDLCtCQUE4QjtBQUM5QiwrQkFBdUQ7QUFDdkQsMkNBQXdDO0FBRTNCLFFBQUEsY0FBYyxHQUFHLENBQUMsQ0FBQztBQUVoQyxtSEFBbUg7QUFDbkgsd0hBQXdIO0FBQ3hILDJCQUEyQjtBQUNkLFFBQUEsV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDdkMsS0FBSyxFQUFFLENBQUM7SUFDUixNQUFNLEVBQUUsQ0FBQztJQUNULE1BQU0sRUFBRSxDQUFDO0lBQ1QsT0FBTyxFQUFFLENBQUM7SUFDVixPQUFPLEVBQUUsQ0FBQztJQUNWLE9BQU8sRUFBRSxDQUFDO0lBQ1YsUUFBUSxFQUFFLENBQUM7SUFDWCxRQUFRLEVBQUUsQ0FBQztJQUNYLFFBQVEsRUFBRSxDQUFDO0lBQ1gsUUFBUSxFQUFFLENBQUM7SUFDWCxTQUFTLEVBQUUsRUFBRTtJQUNiLFNBQVMsRUFBRSxFQUFFO0NBQ2QsQ0FBQyxDQUFDO0FBRUgsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxtQkFBVyxDQUFpQyxDQUFDO0FBRWhFLFFBQUEsY0FBYyxHQUFHLGVBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQztBQVE3RCxTQUFnQixTQUFTLENBQUMsS0FBYTtJQUNyQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsbUJBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFnQixDQUFDLENBQUM7QUFDL0QsQ0FBQztBQUVZLFFBQUEsWUFBWSxHQUFHLGVBQU0sQ0FBQyxNQUFNLENBQUM7SUFDeEMsV0FBVyxFQUFFLGVBQU0sQ0FBQyxNQUFNO0lB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
@@ -43,10 +43,10 @@ async function executeWithThreshold(promises, threshold) {
43
43
  const remainingPromises = promises.length - results.length - failures;
44
44
  const neededSuccesses = threshold - results.length;
45
45
  if (remainingPromises < neededSuccesses) {
46
- reject(new Error(`Cannot reach threshold of ${threshold} responses. Failed clients exceed limit.`));
46
+ reject(new Error(`Cannot reach threshold of ${threshold} responses. Failed clients exceed limit. Last error: ${error}`));
47
47
  }
48
48
  });
49
49
  });
50
50
  });
51
51
  }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhyZXNob2xkUHJvbWlzZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMva21zL3RocmVzaG9sZFByb21pc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBTUEsb0RBb0RDO0FBMUREOzs7OztHQUtHO0FBQ0ksS0FBSyxVQUFVLG9CQUFvQixDQUN4QyxRQUFzQixFQUN0QixTQUFpQjtJQUVqQixJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNELDBDQUEwQztJQUMxQyxJQUFJLFNBQVMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNwQixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUNELElBQUksU0FBUyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQyxNQUFNLElBQUksS0FBSyxDQUNiLGFBQWEsU0FBUywrQkFBK0IsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUN2RSxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sT0FBTyxHQUFRLEVBQUUsQ0FBQztJQUN4QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7SUFFakIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUNyQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDM0IsT0FBTztpQkFDSixJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLFNBQVMsRUFBRSxDQUFDO29CQUMvQixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUN2QixJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7d0JBQ2pDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDbkIsQ0FBQztnQkFDSCxDQUFDO1lBQ0gsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQ25ELFFBQVEsRUFBRSxDQUFDO2dCQUNYLDRDQUE0QztnQkFDNUMsc0RBQXNEO2dCQUN0RCx3RUFBd0U7Z0JBQ3hFLE1BQU0saUJBQWlCLEdBQUcsUUFBUSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQztnQkFDdEUsTUFBTSxlQUFlLEdBQUcsU0FBUyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUM7Z0JBQ25ELElBQUksaUJBQWlCLEdBQUcsZUFBZSxFQUFFLENBQUM7b0JBQ3hDLE1BQU0sQ0FDSixJQUFJLEtBQUssQ0FDUCw2QkFBNkIsU0FBUywwQ0FBMEMsQ0FDakYsQ0FDRixDQUFDO2dCQUNKLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIn0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhyZXNob2xkUHJvbWlzZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMva21zL3RocmVzaG9sZFByb21pc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBTUEsb0RBb0RDO0FBMUREOzs7OztHQUtHO0FBQ0ksS0FBSyxVQUFVLG9CQUFvQixDQUN4QyxRQUFzQixFQUN0QixTQUFpQjtJQUVqQixJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNELDBDQUEwQztJQUMxQyxJQUFJLFNBQVMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNwQixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUNELElBQUksU0FBUyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQyxNQUFNLElBQUksS0FBSyxDQUNiLGFBQWEsU0FBUywrQkFBK0IsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUN2RSxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sT0FBTyxHQUFRLEVBQUUsQ0FBQztJQUN4QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7SUFFakIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUNyQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDM0IsT0FBTztpQkFDSixJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLFNBQVMsRUFBRSxDQUFDO29CQUMvQixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUN2QixJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7d0JBQ2pDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDbkIsQ0FBQztnQkFDSCxDQUFDO1lBQ0gsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQ25ELFFBQVEsRUFBRSxDQUFDO2dCQUNYLDRDQUE0QztnQkFDNUMsc0RBQXNEO2dCQUN0RCx3RUFBd0U7Z0JBQ3hFLE1BQU0saUJBQWlCLEdBQUcsUUFBUSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQztnQkFDdEUsTUFBTSxlQUFlLEdBQUcsU0FBUyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUM7Z0JBQ25ELElBQUksaUJBQWlCLEdBQUcsZUFBZSxFQUFFLENBQUM7b0JBQ3hDLE1BQU0sQ0FDSixJQUFJLEtBQUssQ0FDUCw2QkFBNkIsU0FBUyx3REFBd0QsS0FBSyxFQUFFLENBQ3RHLENBQ0YsQ0FBQztnQkFDSixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyJ9
@@ -108,8 +108,9 @@ function getEciesEncryptor({ pubKeyA, privKeyB, }) {
108
108
  ciphertext: {
109
109
  scheme: encryption_js_1.encryptionSchemes.ecies,
110
110
  type: plaintext.type,
111
+ // The prepended version keeps the bundle self-describing, avoiding a loose parameter.
111
112
  // The prepended handle serves as a checksum on the encrypted payload, so we can fail early on an accidental mismatch
112
- value: (0, encryption_js_1.encodeCiphertextInput)((0, binary_js_1.bytesToHex)(handle), (0, binary_js_1.bytesToHex)(ct)),
113
+ value: (0, encryption_js_1.encodeCiphertextInput)(context.version, (0, binary_js_1.bytesToHex)(handle), (0, binary_js_1.bytesToHex)(ct)),
113
114
  },
114
115
  };
115
116
  };
@@ -128,7 +129,9 @@ function getEciesDecryptor({ privKeyA, }) {
128
129
  if (scheme !== encryption_js_1.encryptionSchemes.ecies) {
129
130
  throw new Error(`Ciphertext with scheme ${(0, encryption_js_1.getEncryptionSchemeName)(scheme)} cannot be decrypted with ECIES`);
130
131
  }
131
- // remove the prepended handle
132
+ // remove the prepended version and handle
133
+ // We could verify or dispatch on the version here,
134
+ // but the intention is for the SDK to only support one input version at a time.
132
135
  const { ciphertext } = (0, encryption_js_1.decodeCiphertextInput)(value);
133
136
  const ptBuf = await (0, ecies_geth_1.decrypt)(privKeyABuffer, (0, binary_js_1.bytesFromHexString)(ciphertext));
134
137
  const payload = (0, hadu_js_1.decodeInput)(ptBuf);
@@ -140,4 +143,4 @@ function getEciesDecryptor({ privKeyA, }) {
140
143
  return (0, encryption_js_1.bytesToPlaintext)(computable.value.value, encryption_js_1.encryptionSchemes.ecies, typ);
141
144
  };
142
145
  }
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGl0ZS9lY2llcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF5Q0EsZ0RBVUM7QUFHRCw0REFFQztBQUdELDREQUVDO0FBR0QsNERBSUM7QUFzQkQsOERBSUM7QUFNRCwwQkFhQztBQU9ELDhDQStDQztBQUtELDBCQU9DO0FBTUQsOENBa0NDO0FBM05ELDJDQUE4RTtBQUM5RSx3Q0FBd0M7QUFDeEMsNENBQXlFO0FBQ3pFLCtEQWNxQztBQUNyQyw0Q0FBK0Q7QUFFL0QsNENBQXFDO0FBQ3JDLHVDQUFxRDtBQUVyRCxNQUFNLFNBQVMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUM7QUFFbEQsNENBQTRDO0FBQy9CLFFBQUEsbUJBQW1CLEdBQzlCLHNFQUFzRSxDQUFDO0FBQzVELFFBQUEsd0JBQXdCLEdBQ25DLG9FQUFvRSxDQUFDO0FBVXZFLG9GQUFvRjtBQUNwRiwwREFBMEQ7QUFDMUQsU0FBZ0Isa0JBQWtCLENBQ2hDLEVBQTBCO0lBRTFCLE9BQU87UUFDTCxNQUFNLEVBQUUsaUNBQWlCLENBQUMsS0FBSztRQUMvQixFQUFFO1FBQ0YsZUFBZTtZQUNiLE9BQU8sSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUM5RCxDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRCxxREFBcUQ7QUFDckQsU0FBZ0Isd0JBQXdCO0lBQ3RDLE9BQU8sa0JBQWtCLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUVELDRFQUE0RTtBQUM1RSxTQUFnQix3QkFBd0IsQ0FBQyxHQUFvQjtJQUMzRCxPQUFPLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFD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
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGl0ZS9lY2llcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF5Q0EsZ0RBVUM7QUFHRCw0REFFQztBQUdELDREQUVDO0FBR0QsNERBSUM7QUFzQkQsOERBSUM7QUFNRCwwQkFhQztBQU9ELDhDQW9EQztBQUtELDBCQU9DO0FBTUQsOENBb0NDO0FBbE9ELDJDQUE4RTtBQUM5RSx3Q0FBd0M7QUFDeEMsNENBQXlFO0FBQ3pFLCtEQWNxQztBQUNyQyw0Q0FBK0Q7QUFFL0QsNENBQXFDO0FBQ3JDLHVDQUFxRDtBQUVyRCxNQUFNLFNBQVMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUM7QUFFbEQsNENBQTRDO0FBQy9CLFFBQUEsbUJBQW1CLEdBQzlCLHNFQUFzRSxDQUFDO0FBQzVELFFBQUEsd0JBQXdCLEdBQ25DLG9FQUFvRSxDQUFDO0FBVXZFLG9GQUFvRjtBQUNwRiwwREFBMEQ7QUFDMUQsU0FBZ0Isa0JBQWtCLENBQ2hDLEVBQTBCO0lBRTFCLE9BQU87UUFDTCxNQUFNLEVBQUUsaUNBQWlCLENBQUMsS0FBSztRQUMvQixFQUFFO1FBQ0YsZUFBZTtZQUNiLE9BQU8sSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUM5RCxDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRCxxREFBcUQ7QUFDckQsU0FBZ0Isd0JBQXdCO0lBQ3RDLE9BQU8sa0JBQWtCLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUVELDRFQUE0RTtBQUM1RSxTQUFnQix3QkFBd0IsQ0FBQyxHQUFvQjtJQUMzRCxPQUFPLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFD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
@@ -157,6 +157,33 @@ export declare class Lightning<T extends DeploymentSlice = DeploymentSlice> {
157
157
  * ```
158
158
  */
159
159
  grantSessionKeyAllowanceVoucher(walletClient: WalletClient<Transport, Chain, Account>, granteeAddress: string, expiresAt: Date, sessionVerifierAddress: string): Promise<AllowanceVoucherWithSig>;
160
+ /**
161
+ * Grants a session key allowance voucher using a custom session verifier contract.
162
+ *
163
+ * This method creates a signed allowance voucher that authorizes reencryption operations
164
+ * using a custom session verifier. Unlike `grantSessionKeyAllowanceVoucher`, this method
165
+ * allows specifying custom `sharerArgData` for use with custom verifier contracts that
166
+ * require additional authorization parameters.
167
+ *
168
+ * @param walletClient - The wallet client used for signing the allowance voucher
169
+ * @param sessionVerifierAddress - The address of the custom session verifier contract
170
+ * @param sharerArgData - Custom encoded arguments for the session verifier's `canUseSession` function
171
+ * @returns A promise that resolves to an AllowanceVoucherWithSig containing the signed allowance voucher
172
+ *
173
+ * @example
174
+ * ```typescript
175
+ * const sharerArgData = encodeAbiParameters(
176
+ * [{ type: 'address' }, { type: 'uint256' }],
177
+ * [granteeAddress, expiresAt]
178
+ * );
179
+ * const voucher = await lightning.grantCustomSessionKeyAllowanceVoucher(
180
+ * walletClient,
181
+ * "0x5678...", // custom verifier address
182
+ * sharerArgData
183
+ * );
184
+ * ```
185
+ */
186
+ grantCustomSessionKeyAllowanceVoucher(walletClient: WalletClient<Transport, Chain, Account>, sessionVerifierAddress: string, sharerArgData: HexString): Promise<AllowanceVoucherWithSig>;
160
187
  /**
161
188
  * Updates the active session nonce for the given wallet client.
162
189
  *
@@ -230,9 +257,9 @@ export declare class Lightning<T extends DeploymentSlice = DeploymentSlice> {
230
257
  * );
231
258
  * ```
232
259
  */
233
- attestedDecryptWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, handles: HexString[], backoffConfig?: Partial<BackoffConfig>): Promise<Array<DecryptionAttestation<EciesScheme, SupportedFheType>>>;
234
- attestedDecryptWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, handles: HexString[], reencryptPubKey: Uint8Array, backoffConfig?: Partial<BackoffConfig>): Promise<Array<EncryptedDecryptionAttestation<EciesScheme, SupportedFheType>>>;
235
- attestedDecryptWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, handles: HexString[], reencryptPubKey: Uint8Array, reencryptKeypair: Secp256k1Keypair, backoffConfig?: Partial<BackoffConfig>): Promise<Array<DecryptionAttestation<EciesScheme, SupportedFheType>>>;
260
+ attestedDecryptWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, handles: HexString[], requesterArgData?: HexString, backoffConfig?: Partial<BackoffConfig>): Promise<Array<DecryptionAttestation<EciesScheme, SupportedFheType>>>;
261
+ attestedDecryptWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, handles: HexString[], reencryptPubKey: Uint8Array, requesterArgData?: HexString, backoffConfig?: Partial<BackoffConfig>): Promise<Array<EncryptedDecryptionAttestation<EciesScheme, SupportedFheType>>>;
262
+ attestedDecryptWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, handles: HexString[], reencryptPubKey: Uint8Array, reencryptKeypair: Secp256k1Keypair, requesterArgData?: HexString, backoffConfig?: Partial<BackoffConfig>): Promise<Array<DecryptionAttestation<EciesScheme, SupportedFheType>>>;
236
263
  /**
237
264
  * Get an attested compute for the given wallet client.
238
265
  *
@@ -323,9 +350,9 @@ export declare class Lightning<T extends DeploymentSlice = DeploymentSlice> {
323
350
  * console.log(decrypted.plaintext.value);
324
351
  * ```
325
352
  */
326
- attestedComputeWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, lhsHandle: HexString, op: AttestedComputeOP, rhsPlaintext: bigint | boolean, backoffConfig?: Partial<BackoffConfig>): Promise<DecryptionAttestation<EciesScheme, SupportedFheType>>;
327
- attestedComputeWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, lhsHandle: HexString, op: AttestedComputeOP, rhsPlaintext: bigint | boolean, reencryptPubKey: Uint8Array, backoffConfig?: Partial<BackoffConfig>): Promise<EncryptedDecryptionAttestation<EciesScheme, SupportedFheType>>;
328
- attestedComputeWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, lhsHandle: HexString, op: AttestedComputeOP, rhsPlaintext: bigint | boolean, reencryptPubKey: Uint8Array, reencryptKeypair: Secp256k1Keypair, backoffConfig?: Partial<BackoffConfig>): Promise<DecryptionAttestation<EciesScheme, SupportedFheType>>;
353
+ attestedComputeWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, lhsHandle: HexString, op: AttestedComputeOP, rhsPlaintext: bigint | boolean, requesterArgData?: HexString, backoffConfig?: Partial<BackoffConfig>): Promise<DecryptionAttestation<EciesScheme, SupportedFheType>>;
354
+ attestedComputeWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, lhsHandle: HexString, op: AttestedComputeOP, rhsPlaintext: bigint | boolean, reencryptPubKey: Uint8Array, requesterArgData?: HexString, backoffConfig?: Partial<BackoffConfig>): Promise<EncryptedDecryptionAttestation<EciesScheme, SupportedFheType>>;
355
+ attestedComputeWithVoucher(ephemeralKeypair: Secp256k1Keypair, allowanceVoucherWithSig: AllowanceVoucherWithSig, ethClient: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account>, lhsHandle: HexString, op: AttestedComputeOP, rhsPlaintext: bigint | boolean, reencryptPubKey: Uint8Array, reencryptKeypair: Secp256k1Keypair, requesterArgData?: HexString, backoffConfig?: Partial<BackoffConfig>): Promise<DecryptionAttestation<EciesScheme, SupportedFheType>>;
329
356
  /**
330
357
  * Get an decryption of publicly revealed handles.
331
358
  *
@@ -227,6 +227,7 @@ class Lightning {
227
227
  aclAddress: this.executorAddress,
228
228
  userAddress: (0, binary_js_1.parseAddress)(accountAddress),
229
229
  contractAddress: (0, binary_js_1.parseAddress)(dappAddress),
230
+ version: 1, // ECIES
230
231
  },
231
232
  });
232
233
  return ciphertext.value;
@@ -264,6 +265,41 @@ class Lightning {
264
265
  expiresAt,
265
266
  });
266
267
  }
268
+ /**
269
+ * Grants a session key allowance voucher using a custom session verifier contract.
270
+ *
271
+ * This method creates a signed allowance voucher that authorizes reencryption operations
272
+ * using a custom session verifier. Unlike `grantSessionKeyAllowanceVoucher`, this method
273
+ * allows specifying custom `sharerArgData` for use with custom verifier contracts that
274
+ * require additional authorization parameters.
275
+ *
276
+ * @param walletClient - The wallet client used for signing the allowance voucher
277
+ * @param sessionVerifierAddress - The address of the custom session verifier contract
278
+ * @param sharerArgData - Custom encoded arguments for the session verifier's `canUseSession` function
279
+ * @returns A promise that resolves to an AllowanceVoucherWithSig containing the signed allowance voucher
280
+ *
281
+ * @example
282
+ * ```typescript
283
+ * const sharerArgData = encodeAbiParameters(
284
+ * [{ type: 'address' }, { type: 'uint256' }],
285
+ * [granteeAddress, expiresAt]
286
+ * );
287
+ * const voucher = await lightning.grantCustomSessionKeyAllowanceVoucher(
288
+ * walletClient,
289
+ * "0x5678...", // custom verifier address
290
+ * sharerArgData
291
+ * );
292
+ * ```
293
+ */
294
+ grantCustomSessionKeyAllowanceVoucher(walletClient, sessionVerifierAddress, sharerArgData) {
295
+ return (0, session_key_js_1.grantSessionKeyCustomVerifier)({
296
+ chainId: this.chainId,
297
+ incoLiteAddress: this.executorAddress,
298
+ sessionVerifierContractAddress: (0, binary_js_1.parseAddress)(sessionVerifierAddress),
299
+ sharerWalletClient: walletClient,
300
+ sharerArgData: sharerArgData,
301
+ });
302
+ }
267
303
  /**
268
304
  * Updates the active session nonce for the given wallet client.
269
305
  *
@@ -324,17 +360,20 @@ class Lightning {
324
360
  reencryptKeypair,
325
361
  });
326
362
  }
327
- attestedDecryptWithVoucher(ephemeralKeypair, allowanceVoucherWithSig, ethClient, handles, arg4, arg5, arg6) {
363
+ attestedDecryptWithVoucher(ephemeralKeypair, allowanceVoucherWithSig, ethClient, handles, arg4, arg5, arg6, arg7) {
328
364
  if (arg4 instanceof Uint8Array) {
329
365
  const reencryptPubKey = arg4;
330
366
  let reencryptKeypair;
367
+ let requesterArgData;
331
368
  let backoffConfig;
332
369
  if (arg5 && isSecp256k1Keypair(arg5)) {
333
370
  reencryptKeypair = arg5;
334
- backoffConfig = arg6;
371
+ requesterArgData = arg6;
372
+ backoffConfig = arg7;
335
373
  }
336
374
  else {
337
- backoffConfig = arg5;
375
+ requesterArgData = arg5;
376
+ backoffConfig = arg6;
338
377
  }
339
378
  if (reencryptKeypair) {
340
379
  return (0, session_key_js_1.sessionKeyAttestedDecrypt)({
@@ -344,6 +383,7 @@ class Lightning {
344
383
  ephemeralKeypair,
345
384
  allowanceVoucherWithSig,
346
385
  handles,
386
+ requesterArgData,
347
387
  reencryptPubKey,
348
388
  reencryptKeypair,
349
389
  ethClient,
@@ -357,12 +397,14 @@ class Lightning {
357
397
  ephemeralKeypair,
358
398
  allowanceVoucherWithSig,
359
399
  handles,
400
+ requesterArgData,
360
401
  reencryptPubKey,
361
402
  ethClient,
362
403
  executorAddress: this.executorAddress,
363
404
  });
364
405
  }
365
- const backoffConfig = arg4;
406
+ const requesterArgData = arg4;
407
+ const backoffConfig = arg5;
366
408
  const reencryptKeypair = (0, ecies_js_1.generateSecp256k1Keypair)();
367
409
  const reencryptPubKey = reencryptKeypair.encodePublicKey();
368
410
  return (0, session_key_js_1.sessionKeyAttestedDecrypt)({
@@ -372,6 +414,7 @@ class Lightning {
372
414
  ephemeralKeypair,
373
415
  allowanceVoucherWithSig,
374
416
  handles,
417
+ requesterArgData,
375
418
  ethClient,
376
419
  executorAddress: this.executorAddress,
377
420
  reencryptPubKey,
@@ -434,18 +477,21 @@ class Lightning {
434
477
  backoffConfig,
435
478
  });
436
479
  }
437
- attestedComputeWithVoucher(ephemeralKeypair, allowanceVoucherWithSig, ethClient, lhsHandle, op, rhsPlaintext, arg6, arg7, arg8) {
480
+ attestedComputeWithVoucher(ephemeralKeypair, allowanceVoucherWithSig, ethClient, lhsHandle, op, rhsPlaintext, arg6, arg7, arg8, arg9) {
438
481
  // Reencrypt path (with or without local keypair)
439
482
  if (arg6 instanceof Uint8Array) {
440
483
  const reencryptPubKey = arg6;
441
484
  let reencryptKeypair;
485
+ let requesterArgData;
442
486
  let backoffConfig;
443
487
  if (arg7 && isSecp256k1Keypair(arg7)) {
444
488
  reencryptKeypair = arg7;
445
- backoffConfig = arg8;
489
+ requesterArgData = arg8;
490
+ backoffConfig = arg9;
446
491
  }
447
492
  else {
448
- backoffConfig = arg7;
493
+ requesterArgData = arg7;
494
+ backoffConfig = arg8;
449
495
  }
450
496
  if (reencryptKeypair) {
451
497
  return (0, session_key_js_1.sessionKeyAttestedCompute)({
@@ -456,6 +502,7 @@ class Lightning {
456
502
  lhsHandle,
457
503
  op,
458
504
  rhsPlaintext,
505
+ requesterArgData,
459
506
  ethClient,
460
507
  executorAddress: this.executorAddress,
461
508
  reencryptPubKey,
@@ -471,6 +518,7 @@ class Lightning {
471
518
  lhsHandle,
472
519
  op,
473
520
  rhsPlaintext,
521
+ requesterArgData,
474
522
  ethClient,
475
523
  executorAddress: this.executorAddress,
476
524
  reencryptPubKey,
@@ -478,7 +526,8 @@ class Lightning {
478
526
  });
479
527
  }
480
528
  // Plaintext path
481
- const backoffConfig = arg6;
529
+ const requesterArgData = arg6;
530
+ const backoffConfig = arg7;
482
531
  const reencryptKeypair = (0, ecies_js_1.generateSecp256k1Keypair)();
483
532
  const reencryptPubKey = reencryptKeypair.encodePublicKey();
484
533
  return (0, session_key_js_1.sessionKeyAttestedCompute)({
@@ -489,6 +538,7 @@ class Lightning {
489
538
  lhsHandle,
490
539
  op,
491
540
  rhsPlaintext,
541
+ requesterArgData,
492
542
  ethClient,
493
543
  executorAddress: this.executorAddress,
494
544
  reencryptPubKey,
@@ -647,4 +697,4 @@ class Lightning {
647
697
  }
648
698
  }
649
699
  exports.Lightning = Lightning;
650
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpdGUvbGlnaHRuaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQVljO0FBQ2Qsd0NBQTBDO0FBQzFDLGtFQUt1QztBQUV2QyxnRkFBbUc7QUFFbkcsZ0ZBQXlFO0FBS3pFLDRDQUFnRTtBQUVoRSxxREFNZ0M7QUFDaEMsaUVBQWtFO0FBQ2xFLCtEQUFnRTtBQUNoRSw0REFBaUU7QUFDakUsOERBQXNFO0FBQ3RFLDRDQUFvRDtBQUNwRCwwQ0FBMkM7QUFDM0MsNERBQXlEO0FBQ3pELGdEQUFnRTtBQUVoRSw0Q0FBcUM7QUFDckMseUNBTW9CO0FBNkJwQixNQUFNLGFBQWEsR0FBb0IsU0FBUyxDQUFDO0FBRWpELFNBQVMsa0JBQWtCLENBQUMsS0FBYztJQUN4QyxPQUFPLENBQUMsQ0FBQyxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLElBQUksSUFBSSxLQUFLLENBQUM7QUFDL0QsQ0FBQztBQXdDRCxTQUFTLHdCQUF3QixDQUMvQixLQUEyRDtJQUUzRCxPQUFPLENBQ0wsQ0FBQyxDQUFDLEtBQUs7UUFDUCxPQUFPLEtBQUssS0FBSyxRQUFRO1FBQ3pCLFVBQVUsSUFBSSxLQUFLO1FBQ25CLE9BQVEsS0FBaUMsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUNoRSxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQWEsU0FBUztJQVNEO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFaSCxlQUFlLENBQVU7SUFDekIsT0FBTyxDQUFTO0lBRWYsZ0JBQWdCLENBQW1CO0lBQ25DLGVBQWUsQ0FBa0I7SUFDakMsU0FBUyxDQUF5QjtJQUVuRCxZQUNtQixXQUFjLEVBQ2QsZUFBeUIsRUFDekIsT0FBa0IsRUFDbEIsU0FBaUIsRUFDakIsYUFBd0I7UUFKeEIsZ0JBQVcsR0FBWCxXQUFXLENBQUc7UUFDZCxvQkFBZSxHQUFmLGVBQWUs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
700
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpdGUvbGlnaHRuaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQVljO0FBQ2Qsd0NBQTBDO0FBQzFDLGtFQU11QztBQUV2QyxnRkFBbUc7QUFFbkcsZ0ZBQXlFO0FBS3pFLDRDQUFnRTtBQUVoRSxxREFNZ0M7QUFDaEMsaUVBQWtFO0FBQ2xFLCtEQUFnRTtBQUNoRSw0REFBaUU7QUFDakUsOERBQXNFO0FBQ3RFLDRDQUFvRDtBQUNwRCwwQ0FBMkM7QUFDM0MsNERBQXlEO0FBQ3pELGdEQUFnRTtBQUVoRSw0Q0FBcUM7QUFDckMseUNBTW9CO0FBNkJwQixNQUFNLGFBQWEsR0FBb0IsU0FBUyxDQUFDO0FBRWpELFNBQVMsa0JBQWtCLENBQUMsS0FBYztJQUN4QyxPQUFPLENBQUMsQ0FBQyxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLElBQUksSUFBSSxLQUFLLENBQUM7QUFDL0QsQ0FBQztBQXdDRCxTQUFTLHdCQUF3QixDQUMvQixLQUEyRDtJQUUzRCxPQUFPLENBQ0wsQ0FBQyxDQUFDLEtBQUs7UUFDUCxPQUFPLEtBQUssS0FBSyxRQUFRO1FBQ3pCLFVBQVUsSUFBSSxLQUFLO1FBQ25CLE9BQVEsS0FBaUMsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUNoRSxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQWEsU0FBUztJQVNEO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFaSCxlQUFlLENBQVU7SUFDekIsT0FBTyxDQUFTO0lBRWYsZ0JBQWdCLENBQW1CO0lBQ25DLGVBQWUsQ0FBa0I7SUFDakMsU0FBUyxDQUF5QjtJQUVuRCxZQUNtQixXQUFjLEVBQ2QsZUFBeUIsRUFDekIsT0FBa0IsRUFDbEIsU0FBaUIsRUFDakIsYUFBd0I7UUFKeEIsZ0JBQVcsR0FBWCxXQUFXLENBQUc7UUFDZCxvQkFBZSxHQUFmLGVBQWUsQ0FBVTtRQUN6QixZQUFPLEdBQVAsT0FBTyxDQUFXO1FBQ2xCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsa0JBQWEsR0FBYixhQUFhLENBQVc7UUFFekMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFBLHdCQUFZLEVBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUzQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBQSxtQ0FBd0IsR0FBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBQSw0QkFBaUIsRUFBQztZQUNqQyxPQUFPLEVBQUUsSUFBQSxtQ0FBd0IsRUFDL0IsSUFBQSxpQkFBVSxFQUFDLElBQUEsaUJBQUssRUFBQyxxQkFBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUNqRDtZQUNELFFBQVEsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1NBQ2hDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxlQUFlLEdBQUcsaUNBQWUsQ0FBQyxRQUFRLENBQzdDLElBQUksQ0FBQyxlQUFlLEVBQ3BCLElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLFNBQVMsQ0FDZixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxrQkFBa0I7UUFDN0IsT0FBTyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxvQkFBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7T0FjRztJQUNILE1BQU0sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUNwQixHQUFvQztRQUVwQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDVCxNQUFNLE1BQU0sR0FBRyx3Q0FBd0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUN2RCxPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUM7Z0JBQ3RCLEdBQUcsTUFBTTtnQkFDVCxlQUFlLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7Z0JBQzVDLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBQSx3QkFBWSxFQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3BELENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVCLE1BQU0sTUFBTSxHQUFHLHdDQUF3QixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdDLE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQztnQkFDdEIsR0FBRyxNQUFNO2dCQUNULGVBQWUsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQztnQkFDNUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFBLHdCQUFZLEVBQUMsQ0FBQyxDQUFDLENBQUM7YUFDcEQsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE1BQU0sSUFBSSxHQUFHLHdDQUF3QixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXJELE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQztZQUN0QixzRUFBc0U7WUFDdEUsT0FBTyxFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7Z0JBQ3BDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDO2dCQUN2QyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU87WUFDaEIsZUFBZSxFQUFFLEdBQUcsQ0FBQyxlQUFlO2dCQUNsQyxDQUFDLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO2dCQUNoQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7WUFDN0IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7Z0JBQ2hDLENBQUMsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQ25ELElBQUEsd0JBQVksRUFBQyxPQUFPLENBQUMsQ0FDdEI7Z0JBQ0gsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFBLHdCQUFZLEVBQUMsQ0FBQyxDQUFDLENBQUM7WUFDNUMsZUFBZSxFQUNiLEdBQUcsQ0FBQyw4QkFBOEI7Z0JBQ2xDLElBQUksQ0FBQyxlQUFlO2dCQUNwQix1QkFBdUI7WUFDekIsdUNBQXVDO1lBQ3ZDLGVBQWUsRUFBRSxHQUFHLENBQUMsZ0JBQWdCO1lBQ3JDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7U0FDekMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUMzQixNQUFpRDtRQUVqRCxJQUFJLFVBQXVDLENBQUM7UUFDNUMsSUFBSSx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ3JDLElBQUksT0FBTyxPQUFPLEtBQUssV0FBVyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDOUQsTUFBTSxJQUFJLEtBQUssQ0FDYixxRkFBcUYsQ0FDdEYsQ0FBQztZQUNKLENBQUM7WUFDRCxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsMkNBQWEsYUFBYSxFQUFDLENBQUM7WUFDakQsVUFBVSxHQUFHLE1BQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvQyxDQUFDO2FBQU0sQ0FBQztZQUNOLFVBQVUsR0FBRyxNQUFNLENBQUM7UUFDdEIsQ0FBQztRQUNELE1BQU0sR0FBRyxHQUFHLElBQUEsd0JBQWEsRUFBQyxVQUFVLENBQUMsQ0FBQztRQUN0QyxPQUFPLE1BQU0sU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQWdCO1FBQzlCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxtQ0FBb0IsQ0FBQyxJQUFJLENBQ3ZCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsT0FBTyxDQUN0RDtZQUNILENBQUMsQ0FBQyxtQ0FBb0IsQ0FBQyxJQUFJLENBQ3ZCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDSixDQUFDLENBQUMsZUFBZSxLQUFLLEVBQUUsQ0FBQyxlQUFlO2dCQUN4QyxDQUFDLENBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQzNCLENBQUM7UUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbkUsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLElBQUEsdUJBQVksRUFBQyxFQUFFLEVBQUUsRUFBRSxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN2RCxNQUFNLE1BQU0sR0FBRyxJQUFBLHlCQUFrQixFQUFDO1lBQ2hDLEtBQUs7WUFDTCxTQUFTLEVBQUUsSUFBQSxXQUFJLEdBQUU7U0FDbEIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLEdBQ3pDLE1BQU0sU0FBUyxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFckQsT0FBTyxJQUFJLFNBQVMsQ0FDbEIsVUFBVSxFQUNWLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLEVBQ25ELE9BQU8sRUFDUCxTQUFTLEVBQ1QsYUFBYSxDQUNkLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDakIsTUFBUztRQUVULE1BQU0sS0FBSyxHQUFHLElBQUEsdUJBQVksRUFBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNuRCxNQUFNLE1BQU0sR0FBRyxJQUFBLHlCQUFrQixFQUFDO1lBQ2hDLEtBQUs7WUFDTCxTQUFTLEVBQUUsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBQSxXQUFJLEVBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFBLFdBQUksR0FBRTtTQUMxRSxDQUFDLENBQUM7UUFFSCxNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsR0FDekMsTUFBTSxTQUFTLENBQUMsMEJBQTBCLENBQ3hDLE1BQU0sQ0FBQyxlQUEwQixFQUNqQyxNQUFNLENBQ1AsQ0FBQztRQUVKLE9BQU8sSUFBSSxTQUFTLENBQ2xCLE1BQU0sRUFDTixNQUFNLENBQUMsZUFBZSxFQUN0QixPQUFPLEVBQ1AsU0FBUyxFQUNULGFBQWEsQ0FDZCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FDckIsTUFBUyxFQUNULE9BQWdCO1FBRWhCLHNFQUFzRTtRQUN0RSxNQUFNLGNBQWMsR0FBRyxtQ0FBb0IsQ0FBQyxJQUFJLENBQzlDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLE1BQU0sSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FDcEQsQ0FBQztRQUNGLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNwQiw0R0FBNEc7WUFDNUcsd0JBQXdCO1lBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUNELE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ2pCLE1BQVMsRUFDVCxPQUFnQjtRQUVoQixPQUFPLFNBQVMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFJLFVBQVU7UUFDWixPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FDWCxLQUFRLEVBQ1IsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBcUI7UUFFOUQsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUMxQyxTQUFTLEVBQUUsU0FBUyxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxVQUFVLENBQUM7WUFDMUQsT0FBTyxFQUFFO2dCQUNQLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTztnQkFDekIsVUFBVSxFQUFFLElBQUksQ0FBQyxlQUFlO2dCQUNoQyxXQUFXLEVBQUUsSUFBQSx3QkFBWSxFQUFDLGNBQWMsQ0FBQztnQkFDekMsZUFBZSxFQUFFLElBQUEsd0JBQVksRUFBQyxXQUFXLENBQUM7Z0JBQzFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsUUFBUTthQUNyQjtTQUNGLENBQUMsQ0FBQztRQUVILE9BQU8sVUFBVSxDQUFDLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FzQkc7SUFDSCwrQkFBK0IsQ0FDN0IsWUFBcUQsRUFDckQsY0FBc0IsRUFDdEIsU0FBZSxFQUNmLHNCQUE4QjtRQUU5QixPQUFPLElBQUEsZ0NBQWUsRUFBQztZQUNyQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLDhCQUE4QixFQUFFLElBQUEsd0JBQVksRUFBQyxzQkFBc0IsQ0FBQztZQUNwRSxjQUFjLEVBQUUsSUFBQSx3QkFBWSxFQUFDLGNBQWMsQ0FBQztZQUM1QyxrQkFBa0IsRUFBRSxZQUFZO1lBQ2hDLFNBQVM7U0FDVixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0F5Qkc7SUFDSCxxQ0FBcUMsQ0FDbkMsWUFBcUQsRUFDckQsc0JBQThCLEVBQzlCLGFBQXdCO1FBRXhCLE9BQU8sSUFBQSw4Q0FBNkIsRUFBQztZQUNuQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLDhCQUE4QixFQUFFLElBQUEsd0JBQVksRUFBQyxzQkFBc0IsQ0FBQztZQUNwRSxrQkFBa0IsRUFBRSxZQUFZO1lBQ2hDLGFBQWEsRUFBRSxhQUFhO1NBQzdCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILGdDQUFnQyxDQUM5QixZQUFxRDtRQUVyRCxPQUFPLElBQUEsaURBQWdDLEVBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBb0RELGVBQWUsQ0FDYixZQUFxRCxFQUNyRCxPQUFvQixFQUNwQixJQUEwQyxFQUMxQyxJQUFnRCxFQUNoRCxJQUE2QjtRQU03QixJQUFJLElBQUksWUFBWSxVQUFVLEVBQUUsQ0FBQztZQUMvQixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUM7WUFDN0IsSUFBSSxnQkFBOEMsQ0FBQztZQUNuRCxJQUFJLGFBQWlELENBQUM7WUFFdEQsSUFBSSxJQUFJLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDckMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO2dCQUN4QixhQUFhLEdBQUcsSUFBMEMsQ0FBQztZQUM3RCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sYUFBYSxHQUFHLElBQTBDLENBQUM7WUFDN0QsQ0FBQztZQUVELElBQUksZ0JBQWdCLEVBQUUsQ0FBQztnQkFDckIsT0FBTyxJQUFBLHFDQUFlLEVBQUM7b0JBQ3JCLE9BQU87b0JBQ1AsYUFBYTtvQkFDYixPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQXFCO29CQUNqRCxZQUFZO29CQUNaLGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtvQkFDckMsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO29CQUNyQyxlQUFlO29CQUNmLGdCQUFnQjtpQkFDakIsQ0FFQSxDQUFDO1lBQ0osQ0FBQztZQUVELE9BQU8sSUFBQSxxQ0FBZSxFQUFDO2dCQUNyQixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7Z0JBQ3JDLE9BQU87Z0JBQ1AsYUFBYTtnQkFDYixPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQXFCO2dCQUNqRCxZQUFZO2dCQUNaLGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtnQkFDckMsZUFBZTthQUNoQixDQUVBLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxhQUFhLEdBQUcsSUFBMEMsQ0FBQztRQUNqRSxNQUFNLGdCQUFnQixHQUFHLElBQUEsbUNBQXdCLEdBQUUsQ0FBQztRQUNwRCxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMzRCxPQUFPLElBQUEscUNBQWUsRUFBQztZQUNyQixPQUFPO1lBQ1AsYUFBYTtZQUNiLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBcUI7WUFDakQsWUFBWTtZQUNaLGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtZQUNyQyxlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDckMsZUFBZTtZQUNmLGdCQUFnQjtTQUNqQixDQUF5RSxDQUFDO0lBQzdFLENBQUM7SUFtRUQsMEJBQTBCLENBQ3hCLGdCQUFrQyxFQUNsQyx1QkFBZ0QsRUFDaEQsU0FFMkMsRUFDM0MsT0FBb0IsRUFDcEIsSUFBc0QsRUFDdEQsSUFBNEQsRUFDNUQsSUFBeUMsRUFDekMsSUFBNkI7UUFNN0IsSUFBSSxJQUFJLFlBQVksVUFBVSxFQUFFLENBQUM7WUFDL0IsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzdCLElBQUksZ0JBQThDLENBQUM7WUFDbkQsSUFBSSxnQkFBdUMsQ0FBQztZQUM1QyxJQUFJLGFBQWlELENBQUM7WUFFdEQsSUFBSSxJQUFJLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDckMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO2dCQUN4QixnQkFBZ0IsR0FBRyxJQUE2QixDQUFDO2dCQUNqRCxhQUFhLEdBQUcsSUFBMEMsQ0FBQztZQUM3RCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sZ0JBQWdCLEdBQUcsSUFBNkIsQ0FBQztnQkFDakQsYUFBYSxHQUFHLElBQTBDLENBQUM7WUFDN0QsQ0FBQztZQUVELElBQUksZ0JBQWdCLEVBQUUsQ0FBQztnQkFDckIsT0FBTyxJQUFBLDBDQUF5QixFQUFDO29CQUMvQixhQUFhO29CQUNiLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBcUI7b0JBQ2pELGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtvQkFDckMsZ0JBQWdCO29CQUNoQix1QkFBdUI7b0JBQ3ZCLE9BQU87b0JBQ1AsZ0JBQWdCO29CQUNoQixlQUFlO29CQUNmLGdCQUFnQjtvQkFDaEIsU0FBUztvQkFDVCxlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7aUJBQ3RDLENBRUEsQ0FBQztZQUNKLENBQUM7WUFFRCxPQUFPLElBQUEsMENBQXlCLEVBQUM7Z0JBQy9CLGFBQWE7Z0JBQ2IsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFxQjtnQkFDakQsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO2dCQUNyQyxnQkFBZ0I7Z0JBQ2hCLHVCQUF1QjtnQkFDdkIsT0FBTztnQkFDUCxnQkFBZ0I7Z0JBQ2hCLGVBQWU7Z0JBQ2YsU0FBUztnQkFDVCxlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7YUFDdEMsQ0FFQSxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sZ0JBQWdCLEdBQUcsSUFBNkIsQ0FBQztRQUN2RCxNQUFNLGFBQWEsR0FBRyxJQUEwQyxDQUFDO1FBQ2pFLE1BQU0sZ0JBQWdCLEdBQUcsSUFBQSxtQ0FBd0IsR0FBRSxDQUFDO1FBQ3BELE1BQU0sZUFBZSxHQUFHLGdCQUFnQixDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzNELE9BQU8sSUFBQSwwQ0FBeUIsRUFBQztZQUMvQixhQUFhO1lBQ2IsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFxQjtZQUNqRCxlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDckMsZ0JBQWdCO1lBQ2hCLHVCQUF1QjtZQUN2QixPQUFPO1lBQ1AsZ0JBQWdCO1lBQ2hCLFNBQVM7WUFDVCxlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDckMsZUFBZTtZQUNmLGdCQUFnQjtTQUNqQixDQUF5RSxDQUFDO0lBQzdFLENBQUM7SUF1RUQsZUFBZSxDQUNiLFlBQXFELEVBQ3JELFNBQW9CLEVBQ3BCLEVBQXFCLEVBQ3JCLFlBQThCLEVBQzlCLElBQTBDLEVBQzFDLElBQWdELEVBQ2hELElBQTZCO1FBSTdCLGlEQUFpRDtRQUNqRCxJQUFJLElBQUksWUFBWSxVQUFVLEVBQUUsQ0FBQztZQUMvQixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUM7WUFDN0IsSUFBSSxnQkFBOEMsQ0FBQztZQUNuRCxJQUFJLGFBQWlELENBQUM7WUFFdEQsSUFBSSxJQUFJLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDckMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO2dCQUN4QixhQUFhLEdBQUcsSUFBMEMsQ0FBQztZQUM3RCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sYUFBYSxHQUFHLElBQTBDLENBQUM7WUFDN0QsQ0FBQztZQUVELElBQUksZ0JBQWdCLEVBQUUsQ0FBQztnQkFDckIsT0FBTyxJQUFBLHFDQUFzQixFQUFDO29CQUM1QixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7b0JBQ3JDLFlBQVk7b0JBQ1osZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO29CQUNyQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQXFCO29CQUNqRCxTQUFTO29CQUNULEVBQUU7b0JBQ0YsWUFBWTtvQkFDWixlQUFlO29CQUNmLGdCQUFnQjtvQkFDaEIsYUFBYTtpQkFDZCxDQUFrRSxDQUFDO1lBQ3RFLENBQUM7WUFFRCxPQUFPLElBQUEscUNBQXNCLEVBQUM7Z0JBQzVCLGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtnQkFDckMsWUFBWTtnQkFDWixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7Z0JBQ3JDLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBcUI7Z0JBQ2pELFNBQVM7Z0JBQ1QsRUFBRTtnQkFDRixZQUFZO2dCQUNaLGVBQWU7Z0JBQ2YsYUFBYTthQUNkLENBRUEsQ0FBQztRQUNKLENBQUM7UUFFRCxpQkFBaUI7UUFDakIsTUFBTSxhQUFhLEdBQUcsSUFBMEMsQ0FBQztRQUNqRSxNQUFNLGdCQUFnQixHQUFHLElBQUEsbUNBQXdCLEdBQUUsQ0FBQztRQUNwRCxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMzRCxPQUFPLElBQUEscUNBQXNCLEVBQUM7WUFDNUIsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLFlBQVk7WUFDWixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDckMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFxQjtZQUNqRCxTQUFTO1lBQ1QsRUFBRTtZQUNGLFlBQVk7WUFDWixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGFBQWE7U0FDZCxDQUFrRSxDQUFDO0lBQ3RFLENBQUM7SUFtRkQsMEJBQTBCLENBQ3hCLGdCQUFrQyxFQUNsQyx1QkFBZ0QsRUFDaEQsU0FFMkMsRUFDM0MsU0FBb0IsRUFDcEIsRUFBcUIsRUFDckIsWUFBOEIsRUFDOUIsSUFBc0QsRUFDdEQsSUFBNEQsRUFDNUQsSUFBeUMsRUFDekMsSUFBNkI7UUFJN0IsaURBQWlEO1FBQ2pELElBQUksSUFBSSxZQUFZLFVBQVUsRUFBRSxDQUFDO1lBQy9CLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQztZQUM3QixJQUFJLGdCQUE4QyxDQUFDO1lBQ25ELElBQUksZ0JBQXVDLENBQUM7WUFDNUMsSUFBSSxhQUFpRCxDQUFDO1lBRXRELElBQUksSUFBSSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ3JDLGdCQUFnQixHQUFHLElBQUksQ0FBQztnQkFDeEIsZ0JBQWdCLEdBQUcsSUFBNkIsQ0FBQztnQkFDakQsYUFBYSxHQUFHLElBQTBDLENBQUM7WUFDN0QsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLGdCQUFnQixHQUFHLElBQTZCLENBQUM7Z0JBQ2pELGFBQWEsR0FBRyxJQUEwQyxDQUFDO1lBQzdELENBQUM7WUFFRCxJQUFJLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3JCLE9BQU8sSUFBQSwwQ0FBeUIsRUFBQztvQkFDL0IsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFxQjtvQkFDakQsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO29CQUNyQyxnQkFBZ0I7b0JBQ2hCLHVCQUF1QjtvQkFDdkIsU0FBUztvQkFDVCxFQUFFO29CQUNGLFlBQVk7b0JBQ1osZ0JBQWdCO29CQUNoQixTQUFTO29CQUNULGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtvQkFDckMsZUFBZTtvQkFDZixnQkFBZ0I7b0JBQ2hCLGFBQWE7aUJBQ2QsQ0FBa0UsQ0FBQztZQUN0RSxDQUFDO1lBRUQsT0FBTyxJQUFBLDBDQUF5QixFQUFDO2dCQUMvQixPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQXFCO2dCQUNqRCxlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7Z0JBQ3JDLGdCQUFnQjtnQkFDaEIsdUJBQXVCO2dCQUN2QixTQUFTO2dCQUNULEVBQUU7Z0JBQ0YsWUFBWTtnQkFDWixnQkFBZ0I7Z0JBQ2hCLFNBQVM7Z0JBQ1QsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO2dCQUNyQyxlQUFlO2dCQUNmLGFBQWE7YUFDZCxDQUVBLENBQUM7UUFDSixDQUFDO1FBRUQsaUJBQWlCO1FBQ2pCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBNkIsQ0FBQztRQUN2RCxNQUFNLGFBQWEsR0FBRyxJQUEwQyxDQUFDO1FBQ2pFLE1BQU0sZ0JBQWdCLEdBQUcsSUFBQSxtQ0FBd0IsR0FBRSxDQUFDO1FBQ3BELE1BQU0sZUFBZSxHQUFHLGdCQUFnQixDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzNELE9BQU8sSUFBQSwwQ0FBeUIsRUFBQztZQUMvQixPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQXFCO1lBQ2pELGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtZQUNyQyxnQkFBZ0I7WUFDaEIsdUJBQXVCO1lBQ3ZCLFNBQVM7WUFDVCxFQUFFO1lBQ0YsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixTQUFTO1lBQ1QsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsYUFBYTtTQUNkLENBQWtFLENBQUM7SUFDdEUsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7T0FZRztJQUNILGNBQWMsQ0FDWixPQUFvQixFQUNwQixhQUFzQztRQUV0QyxPQUFPLElBQUEscUNBQWUsRUFBQztZQUNyQixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDckMsT0FBTztZQUNQLGFBQWE7WUFDYixPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQXFCO1lBQ2pELGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtTQUN0QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsa0JBQWtCLENBQzlCLFVBQWdELEVBQ2hELFNBQWlCO1FBRWpCLE1BQU0sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQztRQUN4RCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQ2YsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEVBQ3JCLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ1AsdUNBQXVDO1FBQ3ZDLFdBQVcsZUFBZSxDQUFDLFdBQVcsRUFBRSxJQUFJLE9BQU8sSUFBSSxNQUFNLFdBQVcsQ0FDM0UsQ0FBQztJQUNKLENBQUM7SUFFTyxNQUFNLENBQUMsVUFBVSxDQUFDLEVBQWdCO1FBQ3hDLE9BQVEsRUFBdUIsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDO0lBQ3JELENBQUM7SUFFTyxNQUFNLENBQUMsa0JBQWtCLENBQy9CLEtBQVEsRUFDUixJQUFjO1FBRWQsSUFBSSxPQUFPLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMvQixPQUFPO2dCQUNMLE1BQU0sRUFBRSw0QkFBaUIsQ0FBQyxLQUFLO2dCQUMvQixJQUFJLEVBQUUsdUJBQVcsQ0FBQyxLQUFLO2dCQUN2QixLQUFLLEVBQUUsS0FBSzthQUNzQyxDQUFDO1FBQ3ZELENBQUM7YUFBTSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNsRSxPQUFPO2dCQUNMLE1BQU0sRUFBRSw0QkFBaUIsQ0FBQyxLQUFLO2dCQUMvQixJQUFJLEVBQUUsSUFBSSxJQUFJLHVCQUFXLENBQUMsUUFBUTtnQkFDbEMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUM7YUFDOEIsQ0FBQztRQUN2RCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN0RCxDQUFDO0lBQ0gsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQ2xDLE1BQW9CLEVBQ3BCLGVBQXdCO1FBRXhCLE1BQU0sWUFBWSxHQUFHLE1BQU0sU0FBUyxDQUFDLHVCQUF1QixDQUMxRCxNQUFNLEVBQ04sZUFBZSxDQUNoQixDQUFDO1FBRUYsZ0ZBQWdGO1FBQ2hGLGdDQUFnQztRQUNoQyxtR0FBbUc7UUFDbkcsRUFBRTtRQUNGLDZEQUE2RDtRQUM3RCwrSEFBK0g7UUFDL0gscUJBQXFCO1FBQ3JCLElBQUksQ0FBQztZQUNILE9BQU8sTUFBTSxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ2pELENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxzREFBc0Q7WUFDdEQsdUNBQXVDO1lBQ3ZDLGNBQWM7WUFDZCw4REFBOEQ7WUFDOUQsTUFBTTtZQUNOLE1BQU0sY0FBYyxHQUFHO2dCQUNyQjtvQkFDRSxJQUFJLEVBQUUsVUFBVTtvQkFDaEIsTUFBTSxFQUFFLEVBQUU7b0JBQ1YsSUFBSSxFQUFFLGFBQWE7b0JBQ25CLE9BQU8sRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztvQkFDN0QsZUFBZSxFQUFFLE1BQU07aUJBQ3hCO2FBQ08sQ0FBQztZQUVYLE1BQU0saUJBQWlCLEdBQUcsSUFBQSxrQkFBVyxFQUFDO2dCQUNwQyxHQUFHLEVBQUUsY0FBYztnQkFDbkIsT0FBTyxFQUFFLFlBQVksQ0FBQyxPQUFPO2dCQUM3QixNQUFNO2FBQ1AsQ0FBQyxDQUFDO1lBRUgsT0FBTyxNQUFNLGlCQUFpQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwRCxDQUFDO0lBQ0gsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsdUJBQXVCLENBQ3pDLE1BQW9CLEVBQ3BCLGVBQXdCO1FBSXhCLE1BQU0scUJBQXFCLEdBQUcsSUFBQSxrQkFBVyxFQUFDO1lBQ3hDLEdBQUcsRUFBRSwrQkFBZ0I7WUFDckIsT0FBTyxFQUFFLGVBQWU7WUFDeEIsTUFBTTtTQUNQLENBQUMsQ0FBQztRQUNILE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDNUUsTUFBTSxZQUFZLEdBQUcsSUFBQSxrQkFBVyxFQUFDO1lBQy9CLEdBQUcsRUFBRSw2QkFBZTtZQUNwQixPQUFPLEVBQUUsbUJBQThCO1lBQ3ZDLE1BQU07U0FDUCxDQUFDLENBQUM7UUFFSCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssTUFBTSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FDN0MsZUFBd0IsRUFDeEIsTUFBb0I7UUFFcEIsTUFBTSxZQUFZLEdBQUcsTUFBTSxTQUFTLENBQUMsdUJBQXVCLENBQzFELE1BQU0sRUFDTixlQUFlLENBQ2hCLENBQUM7UUFFRixNQUFNLFNBQVMsR0FBRyxNQUFNLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekQsTUFBTSxhQUFhLEdBQUcsTUFBTSxTQUFTLENBQUMsZ0JBQWdCLENBQ3BELE1BQU0sRUFDTixlQUFlLENBQ2hCLENBQUM7UUFFRixNQUFNLFlBQVksR0FBRyxNQUFNLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDL0QsTUFBTSxlQUFlLEdBQUcsRUFBRSxDQUFDO1FBQzNCLEtBQUssSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxZQUFZLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUM5QyxlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEUsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVuRCxPQUFPO1lBQ0wsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUM7WUFDNUIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsd0JBQVksQ0FBQztZQUNsQyxhQUFhO1NBQ2QsQ0FBQztJQUNKLENBQUM7SUFFTyxNQUFNLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FDakMsVUFBc0IsRUFDdEIsTUFBb0I7UUFFcEIsSUFBSSxJQUFJLENBQUMsMEJBQTBCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUNoRCxPQUFPLE1BQU0sSUFBSSxDQUFDLDBCQUEwQixDQUMxQyxVQUFVLENBQUMsZUFBMEIsRUFDckMsTUFBTSxDQUNQLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsNkJBQTZCLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBRUQsNEVBQTRFO0lBQ3BFLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxVQUFzQjtRQUM5RCxpSUFBaUk7UUFDakksSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1FBQzVFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQztRQUM1QyxPQUFPLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsb0dBQW9HO0lBQ3BHLDhFQUE4RTtJQUM5RSwwR0FBMEc7SUFDbEcsTUFBTSxDQUFDLDZCQUE2QjtRQUMxQyxPQUFPO1lBQ0wsU0FBUyxFQUFFLENBQUM7WUFDWixPQUFPLEVBQUUsQ0FBQyxrQkFBc0IsQ0FBQztZQUNqQyxhQUFhLEVBQUUsOEJBQW1CO1NBQ25DLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFobkNELDhCQWduQ0MifQ==
@@ -3,13 +3,13 @@ export declare const LocalNodeEnv: Schema.Struct<{
3
3
  DEPLOYER_ADDRESS: Schema.brand<Schema.filter<Schema.TemplateLiteral<`0x${string}`>>, "Address">;
4
4
  STATE_DUMP: typeof Schema.String;
5
5
  EXECUTOR_ADDRESS: Schema.brand<Schema.filter<Schema.TemplateLiteral<`0x${string}`>>, "Address">;
6
- NETWORK_PUBKEY: Schema.TemplateLiteral<`0x${string}`>;
6
+ NETWORK_PUBKEY: Schema.optional<Schema.TemplateLiteral<`0x${string}`>>;
7
7
  SENDER_ADDRESS: Schema.brand<Schema.filter<Schema.TemplateLiteral<`0x${string}`>>, "Address">;
8
8
  SENDER_PRIVATE_KEY: Schema.TemplateLiteral<`0x${string}`>;
9
9
  EIP712_SIGNER_ADDRESS: Schema.optional<Schema.TemplateLiteral<`0x${string}`>>;
10
10
  PEPPER: typeof Schema.String;
11
- COVALIDATOR_NETWORK_PRIVATE_KEY: Schema.TemplateLiteral<`0x${string}`>;
12
- COVALIDATOR_EIP712_PRIVATE_SIGNING_KEY: Schema.TemplateLiteral<`0x${string}`>;
11
+ COVALIDATOR_NETWORK_PRIVATE_KEY: Schema.optional<Schema.TemplateLiteral<`0x${string}`>>;
12
+ COVALIDATOR_EIP712_PRIVATE_SIGNING_KEY: Schema.optional<Schema.TemplateLiteral<`0x${string}`>>;
13
13
  COVALIDATOR_INCO_EXECUTOR_ADDR: Schema.brand<Schema.filter<Schema.TemplateLiteral<`0x${string}`>>, "Address">;
14
14
  COVALIDATOR_HOST_CHAIN_ID: Schema.optional<typeof Schema.String>;
15
15
  COVALIDATOR_URL: Schema.optional<typeof Schema.String>;
@@ -8,13 +8,17 @@ exports.LocalNodeEnv = effect_1.Schema.Struct({
8
8
  DEPLOYER_ADDRESS: binary_js_1.Address,
9
9
  STATE_DUMP: effect_1.Schema.String,
10
10
  EXECUTOR_ADDRESS: binary_js_1.Address,
11
- NETWORK_PUBKEY: binary_js_1.HexString,
11
+ // Empty if compute-server is remote
12
+ NETWORK_PUBKEY: effect_1.Schema.optional(binary_js_1.HexString),
12
13
  SENDER_ADDRESS: binary_js_1.Address,
13
14
  SENDER_PRIVATE_KEY: binary_js_1.HexString,
15
+ // Empty if compute-server is remote
14
16
  EIP712_SIGNER_ADDRESS: effect_1.Schema.optional(binary_js_1.HexString),
15
17
  PEPPER: effect_1.Schema.String,
16
- COVALIDATOR_NETWORK_PRIVATE_KEY: binary_js_1.HexString,
17
- COVALIDATOR_EIP712_PRIVATE_SIGNING_KEY: binary_js_1.HexString,
18
+ // Empty if compute-server is remote
19
+ COVALIDATOR_NETWORK_PRIVATE_KEY: effect_1.Schema.optional(binary_js_1.HexString),
20
+ // Empty if compute-server is remote
21
+ COVALIDATOR_EIP712_PRIVATE_SIGNING_KEY: effect_1.Schema.optional(binary_js_1.HexString),
18
22
  COVALIDATOR_INCO_EXECUTOR_ADDR: binary_js_1.Address,
19
23
  COVALIDATOR_HOST_CHAIN_ID: effect_1.Schema.optional(effect_1.Schema.String),
20
24
  COVALIDATOR_URL: effect_1.Schema.optional(effect_1.Schema.String),
@@ -58,4 +62,4 @@ function parseEnv(envContent) {
58
62
  }
59
63
  return env;
60
64
  }
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sb2NhbC9sb2NhbC1ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXdCQSxzQ0FHQztBQTNCRCxtQ0FBZ0M7QUFDaEMsNENBQWtEO0FBRXJDLFFBQUEsWUFBWSxHQUFHLGVBQU0sQ0FBQyxNQUFNLENBQUM7SUFDeEMsZ0JBQWdCLEVBQUUsbUJBQU87SUFDekIsVUFBVSxFQUFFLGVBQU0sQ0FBQyxNQUFNO0lBQ3pCLGdCQUFnQixFQUFFLG1CQUFPO0lBQ3pCLGNBQWMsRUFBRSxxQkFBUztJQUN6QixjQUFjLEVBQUUsbUJBQU87SUFDdkIsa0JBQWtCLEVBQUUscUJBQVM7SUFDN0IscUJBQXFCLEVBQUUsZUFBTSxDQUFDLFFBQVEsQ0FBQyxxQkFBUyxDQUFDO0lBQ2pELE1BQU0sRUFBRSxlQUFNLENBQUMsTUFBTTtJQUNyQiwrQkFBK0IsRUFBRSxxQkFBUztJQUMxQyxzQ0FBc0MsRUFBRSxxQkFBUztJQUNqRCw4QkFBOEIsRUFBRSxtQkFBTztJQUN2Qyx5QkFBeUIsRUFBRSxlQUFNLENBQUMsUUFBUSxDQUFDLGVBQU0sQ0FBQyxNQUFNLENBQUM7SUFDekQsZUFBZSxFQUFFLGVBQU0sQ0FBQyxRQUFRLENBQUMsZUFBTSxDQUFDLE1BQU0sQ0FBQztJQUMvQyw4QkFBOEIsRUFBRSxlQUFNLENBQUMsUUFBUSxDQUFDLGVBQU0sQ0FBQyxNQUFNLENBQUM7Q0FDL0QsQ0FBQyxDQUFDO0FBSUgsc0VBQXNFO0FBQ3RFLGdFQUFnRTtBQUNoRSxTQUFnQixhQUFhLENBQUMsWUFBOEI7SUFDMUQsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7SUFDbEUsT0FBTyxlQUFNLENBQUMsaUJBQWlCLENBQUMsb0JBQVksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFFRCxTQUFTLE9BQU8sQ0FBQyxVQUEyQjtJQUMxQyxPQUFPLFFBQVEsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQsbUZBQW1GO0FBQ25GLFNBQVMsUUFBUSxDQUFDLFVBQWtCO0lBQ2xDLElBQUksR0FBRyxHQUEyQixFQUFFLENBQUM7SUFDckMsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVyQyxpQ0FBaUM7SUFDakMsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUN6QixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEMsSUFBSSxXQUFXLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDaEQsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM1QyxJQUFJLFVBQVUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUN0QixNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDeEQsSUFBSSxLQUFLLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBRXpELHVCQUF1QjtnQkFDdkIsSUFDRSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDOUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsRUFDOUMsQ0FBQztvQkFDRCxLQUFLLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDL0MsQ0FBQztnQkFFRCxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQ25CLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELHlEQUF5RDtJQUN6RCxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQy9DLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsRUFBRSxPQUFlLEVBQUUsRUFBRTtZQUM5RCxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDIn0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtbm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sb2NhbC9sb2NhbC1ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTRCQSxzQ0FHQztBQS9CRCxtQ0FBZ0M7QUFDaEMsNENBQWtEO0FBRXJDLFFBQUEsWUFBWSxHQUFHLGVBQU0sQ0FBQyxNQUFNLENBQUM7SUFDeEMsZ0JBQWdCLEVBQUUsbUJBQU87SUFDekIsVUFBVSxFQUFFLGVBQU0sQ0FBQyxNQUFNO0lBQ3pCLGdCQUFnQixFQUFFLG1CQUFPO0lBQ3pCLG9DQUFvQztJQUNwQyxjQUFjLEVBQUUsZUFBTSxDQUFDLFFBQVEsQ0FBQyxxQkFBUyxDQUFDO0lBQzFDLGNBQWMsRUFBRSxtQkFBTztJQUN2QixrQkFBa0IsRUFBRSxxQkFBUztJQUM3QixvQ0FBb0M7SUFDcEMscUJBQXFCLEVBQUUsZUFBTSxDQUFDLFFBQVEsQ0FBQyxxQkFBUyxDQUFDO0lBQ2pELE1BQU0sRUFBRSxlQUFNLENBQUMsTUFBTTtJQUNyQixvQ0FBb0M7SUFDcEMsK0JBQStCLEVBQUUsZUFBTSxDQUFDLFFBQVEsQ0FBQyxxQkFBUyxDQUFDO0lBQzNELG9DQUFvQztJQUNwQyxzQ0FBc0MsRUFBRSxlQUFNLENBQUMsUUFBUSxDQUFDLHFCQUFTLENBQUM7SUFDbEUsOEJBQThCLEVBQUUsbUJBQU87SUFDdkMseUJBQXlCLEVBQUUsZUFBTSxDQUFDLFFBQVEsQ0FBQyxlQUFNLENBQUMsTUFBTSxDQUFDO0lBQ3pELGVBQWUsRUFBRSxlQUFNLENBQUMsUUFBUSxDQUFDLGVBQU0sQ0FBQyxNQUFNLENBQUM7SUFDL0MsOEJBQThCLEVBQUUsZUFBTSxDQUFDLFFBQVEsQ0FBQyxlQUFNLENBQUMsTUFBTSxDQUFDO0NBQy9ELENBQUMsQ0FBQztBQUlILHNFQUFzRTtBQUN0RSxnRUFBZ0U7QUFDaEUsU0FBZ0IsYUFBYSxDQUFDLFlBQThCO0lBQzFELE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO0lBQ2xFLE9BQU8sZUFBTSxDQUFDLGlCQUFpQixDQUFDLG9CQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN4RCxDQUFDO0FBRUQsU0FBUyxPQUFPLENBQUMsVUFBMkI7SUFDMUMsT0FBTyxRQUFRLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7QUFDekMsQ0FBQztBQUVELG1GQUFtRjtBQUNuRixTQUFTLFFBQVEsQ0FBQyxVQUFrQjtJQUNsQyxJQUFJLEdBQUcsR0FBMkIsRUFBRSxDQUFDO0lBQ3JDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFckMsaUNBQWlDO0lBQ2pDLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7UUFDekIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hDLElBQUksV0FBVyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ2hELE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUMsSUFBSSxVQUFVLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDdEIsTUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3hELElBQUksS0FBSyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUV6RCx1QkFBdUI7Z0JBQ3ZCLElBQ0UsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQzlDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQzlDLENBQUM7b0JBQ0QsS0FBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQy9DLENBQUM7Z0JBRUQsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztZQUNuQixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCx5REFBeUQ7SUFDekQsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUMvQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBZSxFQUFFLEVBQUU7WUFDOUQsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyJ9
package/dist/cjs/retry.js CHANGED
@@ -7,7 +7,9 @@ exports.retryWithBackoff = retryWithBackoff;
7
7
  * @param config - Optional backoff configuration
8
8
  * @returns Promise that resolves with the result of the function
9
9
  */
10
- async function retryWithBackoff(fn, { maxRetries = 10, baseDelayInMs = 1000, backoffFactor = 1.5, errHandler = () => 'continue', } = {}) {
10
+ async function retryWithBackoff(fn, {
11
+ // These default values will make it return an error after ~10s if the fn response is fast.
12
+ maxRetries = 5, baseDelayInMs = 1000, backoffFactor = 1.5, errHandler = () => 'continue', } = {}) {
11
13
  let lastError;
12
14
  for (let attempt = 0; attempt < maxRetries; attempt++) {
13
15
  try {
@@ -26,4 +28,4 @@ async function retryWithBackoff(fn, { maxRetries = 10, baseDelayInMs = 1000, bac
26
28
  }
27
29
  throw lastError;
28
30
  }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmV0cnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFnQkEsNENBNkJDO0FBbkNEOzs7OztHQUtHO0FBQ0ksS0FBSyxVQUFVLGdCQUFnQixDQUNwQyxFQUFvQixFQUNwQixFQUNFLFVBQVUsR0FBRyxFQUFFLEVBQ2YsYUFBYSxHQUFHLElBQUksRUFDcEIsYUFBYSxHQUFHLEdBQUcsRUFDbkIsVUFBVSxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsTUFDSCxFQUFFO0lBRTlCLElBQUksU0FBNEIsQ0FBQztJQUVqQyxLQUFLLElBQUksT0FBTyxHQUFHLENBQUMsRUFBRSxPQUFPLEdBQUcsVUFBVSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUM7UUFDdEQsSUFBSSxDQUFDO1lBQ0gsT0FBTyxNQUFNLEVBQUUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsU0FBUyxHQUFHLEtBQWMsQ0FBQztZQUMzQixJQUNFLFVBQVUsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLEtBQUssVUFBVTtnQkFDN0MsT0FBTyxLQUFLLFVBQVUsR0FBRyxDQUFDLEVBQzFCLENBQUM7Z0JBQ0QsTUFBTTtZQUNSLENBQUM7WUFDRCxNQUFNLEtBQUssR0FBRyxhQUFhLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDL0QsTUFBTSxNQUFNLEdBQUcsS0FBSyxHQUFHLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLDBDQUEwQztZQUM5RixNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDOUQsQ0FBQztJQUNILENBQUM7SUFFRCxNQUFNLFNBQVMsQ0FBQztBQUNsQixDQUFDIn0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmV0cnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFnQkEsNENBOEJDO0FBcENEOzs7OztHQUtHO0FBQ0ksS0FBSyxVQUFVLGdCQUFnQixDQUNwQyxFQUFvQixFQUNwQjtBQUNFLDJGQUEyRjtBQUMzRixVQUFVLEdBQUcsQ0FBQyxFQUNkLGFBQWEsR0FBRyxJQUFJLEVBQ3BCLGFBQWEsR0FBRyxHQUFHLEVBQ25CLFVBQVUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxVQUFVLE1BQ0gsRUFBRTtJQUU5QixJQUFJLFNBQTRCLENBQUM7SUFFakMsS0FBSyxJQUFJLE9BQU8sR0FBRyxDQUFDLEVBQUUsT0FBTyxHQUFHLFVBQVUsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQ3RELElBQUksQ0FBQztZQUNILE9BQU8sTUFBTSxFQUFFLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLFNBQVMsR0FBRyxLQUFjLENBQUM7WUFDM0IsSUFDRSxVQUFVLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxLQUFLLFVBQVU7Z0JBQzdDLE9BQU8sS0FBSyxVQUFVLEdBQUcsQ0FBQyxFQUMxQixDQUFDO2dCQUNELE1BQU07WUFDUixDQUFDO1lBQ0QsTUFBTSxLQUFLLEdBQUcsYUFBYSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQy9ELE1BQU0sTUFBTSxHQUFHLEtBQUssR0FBRyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQywwQ0FBMEM7WUFDOUYsTUFBTSxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzlELENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTSxTQUFTLENBQUM7QUFDbEIsQ0FBQyJ9
@@ -21,7 +21,15 @@ export interface GrantSessionKeyArgs {
21
21
  sharerWalletClient: WalletClient<Transport, Chain, Account>;
22
22
  expiresAt: Date;
23
23
  }
24
+ export interface GrantSessionKeyCustomVerifierArgs {
25
+ chainId: bigint;
26
+ incoLiteAddress: Address;
27
+ sessionVerifierContractAddress: Address;
28
+ sharerWalletClient: WalletClient<Transport, Chain, Account>;
29
+ sharerArgData: Hex;
30
+ }
24
31
  export declare function grantSessionKey({ chainId, incoLiteAddress, sessionVerifierContractAddress, granteeAddress, sharerWalletClient, expiresAt, }: GrantSessionKeyArgs): Promise<AllowanceVoucherWithSig>;
32
+ export declare function grantSessionKeyCustomVerifier({ chainId, incoLiteAddress, sessionVerifierContractAddress, sharerWalletClient, sharerArgData, }: GrantSessionKeyCustomVerifierArgs): Promise<AllowanceVoucherWithSig>;
25
33
  export declare function updateActiveVouchersSessionNonce(incoLiteAddress: Address, sharerWalletClient: WalletClient<Transport, Chain, Account>): Promise<`0x${string}`>;
26
34
  export interface SessionKeyAttestedComputeArgs {
27
35
  chainId: SupportedChainId;
@@ -31,19 +39,21 @@ export interface SessionKeyAttestedComputeArgs {
31
39
  lhsHandle: HexString;
32
40
  op: AttestedComputeOP;
33
41
  rhsPlaintext: bigint | boolean;
42
+ requesterArgData?: Hex | undefined;
34
43
  backoffConfig?: Partial<BackoffConfig> | undefined;
35
44
  ethClient?: PublicClient<Transport, Chain> | WalletClient<Transport, Chain, Account> | undefined;
36
45
  executorAddress?: HexString | undefined;
37
46
  reencryptPubKey?: Uint8Array | undefined;
38
47
  reencryptKeypair?: Secp256k1Keypair | undefined;
39
48
  }
40
- export declare function sessionKeyAttestedCompute<T extends SupportedFheType>({ lhsHandle, op, rhsPlaintext, backoffConfig, chainId, kmsQuorumClient, ephemeralKeypair, allowanceVoucherWithSig, ethClient, executorAddress, reencryptPubKey, reencryptKeypair, }: SessionKeyAttestedComputeArgs): Promise<DecryptionAttestation<EciesScheme, SupportedFheType> | EncryptedDecryptionAttestation<EciesScheme, SupportedFheType>>;
49
+ export declare function sessionKeyAttestedCompute<T extends SupportedFheType>({ lhsHandle, op, rhsPlaintext, backoffConfig, chainId, kmsQuorumClient, ephemeralKeypair, allowanceVoucherWithSig, requesterArgData, ethClient, executorAddress, reencryptPubKey, reencryptKeypair, }: SessionKeyAttestedComputeArgs): Promise<DecryptionAttestation<EciesScheme, SupportedFheType> | EncryptedDecryptionAttestation<EciesScheme, SupportedFheType>>;
41
50
  export interface SessionKeyAttestedDecryptArgs {
42
51
  chainId: SupportedChainId;
43
52
  ephemeralKeypair: Secp256k1Keypair;
44
53
  kmsQuorumClient: KmsQuorumClient;
45
54
  allowanceVoucherWithSig: AllowanceVoucherWithSig;
46
55
  handles: HexString[];
56
+ requesterArgData?: Hex | undefined;
47
57
  backoffConfig?: Partial<BackoffConfig> | undefined;
48
58
  reencryptPubKey?: Uint8Array | undefined;
49
59
  reencryptKeypair?: Secp256k1Keypair | undefined;
@@ -80,4 +90,4 @@ export interface SessionKeyAttestedDecryptArgs {
80
90
  * );
81
91
  * ```
82
92
  */
83
- export declare function sessionKeyAttestedDecrypt({ chainId, kmsQuorumClient, handles, ephemeralKeypair, allowanceVoucherWithSig, backoffConfig, reencryptPubKey, reencryptKeypair, ethClient, executorAddress, }: SessionKeyAttestedDecryptArgs): Promise<Array<DecryptionAttestation<EciesScheme, SupportedFheType> | EncryptedDecryptionAttestation<EciesScheme, SupportedFheType>>>;
93
+ export declare function sessionKeyAttestedDecrypt({ chainId, kmsQuorumClient, handles, ephemeralKeypair, allowanceVoucherWithSig, requesterArgData, backoffConfig, reencryptPubKey, reencryptKeypair, ethClient, executorAddress, }: SessionKeyAttestedDecryptArgs): Promise<Array<DecryptionAttestation<EciesScheme, SupportedFheType> | EncryptedDecryptionAttestation<EciesScheme, SupportedFheType>>>;