@bitgo/sdk-core 8.4.0 → 8.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/src/account-lib/mpc/curves/baseCurve.d.ts +3 -15
  3. package/dist/src/account-lib/mpc/curves/baseCurve.d.ts.map +1 -1
  4. package/dist/src/account-lib/mpc/curves/baseCurve.js +1 -4
  5. package/dist/src/account-lib/mpc/curves/secp256k1.d.ts +4 -16
  6. package/dist/src/account-lib/mpc/curves/secp256k1.d.ts.map +1 -1
  7. package/dist/src/account-lib/mpc/curves/secp256k1.js +6 -67
  8. package/dist/src/account-lib/mpc/hdTree.d.ts +2 -1
  9. package/dist/src/account-lib/mpc/hdTree.d.ts.map +1 -1
  10. package/dist/src/account-lib/mpc/hdTree.js +3 -2
  11. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +8 -5
  12. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
  13. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +17 -50
  14. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +6 -76
  15. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
  16. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +6 -399
  17. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +50 -81
  18. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
  19. package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
  20. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +1 -0
  21. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
  22. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +16 -1
  23. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +4 -0
  24. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
  25. package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
  26. package/dist/src/account-lib/mpc/util.d.ts +3 -12
  27. package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
  28. package/dist/src/account-lib/mpc/util.js +10 -50
  29. package/dist/src/account-lib/util/crypto.d.ts +5 -25
  30. package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
  31. package/dist/src/account-lib/util/crypto.js +10 -55
  32. package/dist/src/bitgo/enterprise/enterprise.d.ts +3 -3
  33. package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
  34. package/dist/src/bitgo/enterprise/enterprise.js +7 -6
  35. package/dist/src/bitgo/enterprise/iEnterprise.d.ts +3 -3
  36. package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
  37. package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
  38. package/dist/src/bitgo/environments.d.ts +1 -0
  39. package/dist/src/bitgo/environments.d.ts.map +1 -1
  40. package/dist/src/bitgo/environments.js +3 -1
  41. package/dist/src/bitgo/keychain/iKeychains.d.ts +2 -0
  42. package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
  43. package/dist/src/bitgo/keychain/iKeychains.js +1 -1
  44. package/dist/src/bitgo/keychain/index.d.ts +1 -0
  45. package/dist/src/bitgo/keychain/index.d.ts.map +1 -1
  46. package/dist/src/bitgo/keychain/index.js +2 -1
  47. package/dist/src/bitgo/keychain/keychains.d.ts +9 -0
  48. package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
  49. package/dist/src/bitgo/keychain/keychains.js +100 -1
  50. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +196 -0
  51. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -0
  52. package/dist/src/bitgo/keychain/ovcJsonCodec.js +78 -0
  53. package/dist/src/bitgo/tss/common.d.ts +4 -5
  54. package/dist/src/bitgo/tss/common.d.ts.map +1 -1
  55. package/dist/src/bitgo/tss/common.js +2 -2
  56. package/dist/src/bitgo/utils/index.d.ts +1 -0
  57. package/dist/src/bitgo/utils/index.d.ts.map +1 -1
  58. package/dist/src/bitgo/utils/index.js +2 -1
  59. package/dist/src/bitgo/utils/opengpgUtils.d.ts +13 -0
  60. package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
  61. package/dist/src/bitgo/utils/opengpgUtils.js +22 -5
  62. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +17 -9
  63. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
  64. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +50 -27
  65. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +4 -3
  66. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
  67. package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
  68. package/dist/src/bitgo/wallet/iWallet.d.ts +5 -0
  69. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  70. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  71. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  72. package/dist/src/bitgo/wallet/wallet.js +6 -3
  73. package/dist/src/openssl/openssl.d.ts +3 -0
  74. package/dist/src/openssl/openssl.d.ts.map +1 -1
  75. package/dist/src/openssl/openssl.js +4 -1
  76. package/dist/tsconfig.tsbuildinfo +545 -482
  77. package/package.json +5 -5
@@ -1,52 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPaillierPublicKey = exports.clamp = exports.bigIntToBufferBE = exports.bigIntFromU8ABE = exports.bigIntFromBufferBE = exports.bigIntToBufferLE = exports.bigIntFromBufferLE = void 0;
4
- const paillier_bigint_1 = require("paillier-bigint");
5
- function bigIntFromBufferLE(buf) {
6
- return BigInt('0x' + Buffer.from(buf).reverse().toString('hex'));
7
- }
8
- exports.bigIntFromBufferLE = bigIntFromBufferLE;
9
- function bigIntToBufferLE(n, bytes) {
10
- let v = n.toString(16);
11
- v = '0'.slice(0, v.length % 2) + v;
12
- const buf = Buffer.from(v, 'hex').reverse();
13
- if (bytes && buf.length < bytes) {
14
- return Buffer.concat([buf, Buffer.alloc(bytes - buf.length)]);
15
- }
16
- return buf;
17
- }
18
- exports.bigIntToBufferLE = bigIntToBufferLE;
19
- function bigIntFromBufferBE(buf) {
20
- return BigInt('0x' + buf.toString('hex'));
21
- }
22
- exports.bigIntFromBufferBE = bigIntFromBufferBE;
23
- function bigIntFromU8ABE(buf) {
24
- return bigIntFromBufferBE(Buffer.from(buf));
25
- }
26
- exports.bigIntFromU8ABE = bigIntFromU8ABE;
27
- function bigIntToBufferBE(n, bytes) {
28
- let v = n.toString(16);
29
- v = '0'.slice(0, v.length % 2) + v;
30
- const buf = Buffer.from(v, 'hex');
31
- if (bytes && buf.length < bytes) {
32
- return Buffer.concat([Buffer.alloc(bytes - buf.length), buf]);
33
- }
34
- return buf;
35
- }
36
- exports.bigIntToBufferBE = bigIntToBufferBE;
37
- function clamp(u) {
38
- u &= BigInt('0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8');
39
- u |= BigInt('0x4000000000000000000000000000000000000000000000000000000000000000');
40
- return u;
41
- }
42
- exports.clamp = clamp;
43
- /**
44
- * Function get pallier public key simple varient
45
- * @param {bigint} n
46
- * @returns {bigint}
47
- */
48
- function getPaillierPublicKey(n) {
49
- return new paillier_bigint_1.PublicKey(n, n + BigInt(1));
50
- }
51
- exports.getPaillierPublicKey = getPaillierPublicKey;
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hY2NvdW50LWxpYi9tcGMvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBNEM7QUFDNUMsU0FBZ0Isa0JBQWtCLENBQUMsR0FBVztJQUM1QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUNuRSxDQUFDO0FBRkQsZ0RBRUM7QUFFRCxTQUFnQixnQkFBZ0IsQ0FBQyxDQUFTLEVBQUUsS0FBYztJQUN4RCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZCLENBQUMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQyxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM1QyxJQUFJLEtBQUssSUFBSSxHQUFHLENBQUMsTUFBTSxHQUFHLEtBQUssRUFBRTtRQUMvQixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMvRDtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQVJELDRDQVFDO0FBRUQsU0FBZ0Isa0JBQWtCLENBQUMsR0FBVztJQUM1QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFGRCxnREFFQztBQUVELFNBQWdCLGVBQWUsQ0FBQyxHQUFlO0lBQzdDLE9BQU8sa0JBQWtCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFGRCwwQ0FFQztBQUVELFNBQWdCLGdCQUFnQixDQUFDLENBQVMsRUFBRSxLQUFjO0lBQ3hELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLElBQUksS0FBSyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsS0FBSyxFQUFFO1FBQy9CLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQy9EO0lBQ0QsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDO0FBUkQsNENBUUM7QUFFRCxTQUFnQixLQUFLLENBQUMsQ0FBUztJQUM3QixDQUFDLElBQUksTUFBTSxDQUFDLG9FQUFvRSxDQUFDLENBQUM7SUFDbEYsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxvRUFBb0UsQ0FBQyxDQUFDO0lBQ2xGLE9BQU8sQ0FBQyxDQUFDO0FBQ1gsQ0FBQztBQUpELHNCQUlDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQWdCLG9CQUFvQixDQUFDLENBQVM7SUFDNUMsT0FBTyxJQUFJLDJCQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRkQsb0RBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdwYWlsbGllci1iaWdpbnQnO1xuZXhwb3J0IGZ1bmN0aW9uIGJpZ0ludEZyb21CdWZmZXJMRShidWY6IEJ1ZmZlcik6IGJpZ2ludCB7XG4gIHJldHVybiBCaWdJbnQoJzB4JyArIEJ1ZmZlci5mcm9tKGJ1ZikucmV2ZXJzZSgpLnRvU3RyaW5nKCdoZXgnKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiaWdJbnRUb0J1ZmZlckxFKG46IGJpZ2ludCwgYnl0ZXM/OiBudW1iZXIpOiBCdWZmZXIge1xuICBsZXQgdiA9IG4udG9TdHJpbmcoMTYpO1xuICB2ID0gJzAnLnNsaWNlKDAsIHYubGVuZ3RoICUgMikgKyB2O1xuICBjb25zdCBidWYgPSBCdWZmZXIuZnJvbSh2LCAnaGV4JykucmV2ZXJzZSgpO1xuICBpZiAoYnl0ZXMgJiYgYnVmLmxlbmd0aCA8IGJ5dGVzKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5jb25jYXQoW2J1ZiwgQnVmZmVyLmFsbG9jKGJ5dGVzIC0gYnVmLmxlbmd0aCldKTtcbiAgfVxuICByZXR1cm4gYnVmO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYmlnSW50RnJvbUJ1ZmZlckJFKGJ1ZjogQnVmZmVyKTogYmlnaW50IHtcbiAgcmV0dXJuIEJpZ0ludCgnMHgnICsgYnVmLnRvU3RyaW5nKCdoZXgnKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiaWdJbnRGcm9tVThBQkUoYnVmOiBVaW50OEFycmF5KTogYmlnaW50IHtcbiAgcmV0dXJuIGJpZ0ludEZyb21CdWZmZXJCRShCdWZmZXIuZnJvbShidWYpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJpZ0ludFRvQnVmZmVyQkUobjogYmlnaW50LCBieXRlcz86IG51bWJlcik6IEJ1ZmZlciB7XG4gIGxldCB2ID0gbi50b1N0cmluZygxNik7XG4gIHYgPSAnMCcuc2xpY2UoMCwgdi5sZW5ndGggJSAyKSArIHY7XG4gIGNvbnN0IGJ1ZiA9IEJ1ZmZlci5mcm9tKHYsICdoZXgnKTtcbiAgaWYgKGJ5dGVzICYmIGJ1Zi5sZW5ndGggPCBieXRlcykge1xuICAgIHJldHVybiBCdWZmZXIuY29uY2F0KFtCdWZmZXIuYWxsb2MoYnl0ZXMgLSBidWYubGVuZ3RoKSwgYnVmXSk7XG4gIH1cbiAgcmV0dXJuIGJ1Zjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsYW1wKHU6IGJpZ2ludCk6IGJpZ2ludCB7XG4gIHUgJj0gQmlnSW50KCcweDdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjgnKTtcbiAgdSB8PSBCaWdJbnQoJzB4NDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcpO1xuICByZXR1cm4gdTtcbn1cblxuLyoqXG4gKiBGdW5jdGlvbiBnZXQgcGFsbGllciBwdWJsaWMga2V5IHNpbXBsZSB2YXJpZW50XG4gKiBAcGFyYW0ge2JpZ2ludH0gblxuICogQHJldHVybnMge2JpZ2ludH1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFBhaWxsaWVyUHVibGljS2V5KG46IGJpZ2ludCk6IFB1YmxpY0tleSB7XG4gIHJldHVybiBuZXcgUHVibGljS2V5KG4sIG4gKyBCaWdJbnQoMSkpO1xufVxuIl19
3
+ exports.getPaillierPublicKey = exports.clamp = exports.bigIntToBufferBE = exports.bigIntFromBufferBE = exports.bigIntFromU8ABE = exports.bigIntToBufferLE = exports.bigIntFromBufferLE = void 0;
4
+ const sdk_lib_mpc_1 = require("@bitgo/sdk-lib-mpc");
5
+ Object.defineProperty(exports, "bigIntFromBufferLE", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntFromBufferLE; } });
6
+ Object.defineProperty(exports, "bigIntToBufferLE", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntToBufferLE; } });
7
+ Object.defineProperty(exports, "bigIntFromU8ABE", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntFromU8ABE; } });
8
+ Object.defineProperty(exports, "bigIntFromBufferBE", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntFromBufferBE; } });
9
+ Object.defineProperty(exports, "bigIntToBufferBE", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntToBufferBE; } });
10
+ Object.defineProperty(exports, "clamp", { enumerable: true, get: function () { return sdk_lib_mpc_1.clamp; } });
11
+ Object.defineProperty(exports, "getPaillierPublicKey", { enumerable: true, get: function () { return sdk_lib_mpc_1.getPaillierPublicKey; } });
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hY2NvdW50LWxpYi9tcGMvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvREFRNEI7QUFNMUIsbUdBYkEsZ0NBQWtCLE9BYUE7QUFDbEIsaUdBYkEsOEJBQWdCLE9BYUE7QUFDaEIsZ0dBYkEsNkJBQWUsT0FhQTtBQUNmLG1HQWJBLGdDQUFrQixPQWFBO0FBQ2xCLGlHQWJBLDhCQUFnQixPQWFBO0FBQ2hCLHNGQWJBLG1CQUFLLE9BYUE7QUFDTCxxR0FiQSxrQ0FBb0IsT0FhQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGJpZ0ludEZyb21CdWZmZXJMRSxcbiAgYmlnSW50VG9CdWZmZXJMRSxcbiAgYmlnSW50RnJvbVU4QUJFLFxuICBiaWdJbnRGcm9tQnVmZmVyQkUsXG4gIGJpZ0ludFRvQnVmZmVyQkUsXG4gIGNsYW1wLFxuICBnZXRQYWlsbGllclB1YmxpY0tleSxcbn0gZnJvbSAnQGJpdGdvL3Nkay1saWItbXBjJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCAtIHVzZSBleHBvcnRlZCBtZXRob2RzIGZyb20gQGJpdGdvL3Nkay1saWItbXBjIGluc3RlYWRcbiAqL1xuZXhwb3J0IHtcbiAgYmlnSW50RnJvbUJ1ZmZlckxFLFxuICBiaWdJbnRUb0J1ZmZlckxFLFxuICBiaWdJbnRGcm9tVThBQkUsXG4gIGJpZ0ludEZyb21CdWZmZXJCRSxcbiAgYmlnSW50VG9CdWZmZXJCRSxcbiAgY2xhbXAsXG4gIGdldFBhaWxsaWVyUHVibGljS2V5LFxufTtcbiJdfQ==
@@ -1,5 +1,9 @@
1
1
  /// <reference types="node" />
2
- import { ExtendedKeys } from '../baseCoin/iface';
2
+ import { ExtendedKeys } from '../baseCoin';
3
+ /**
4
+ * @deprecated - use @bitgo/sdk-lib-mpc instead
5
+ */
6
+ export { convertHexArrToBigIntArr, convertBigIntArrToHexArr, hexToBigInt, bigIntToHex } from '@bitgo/sdk-lib-mpc';
3
7
  /**
4
8
  * @param {string} xpub - a base-58 encoded extended public key (BIP32)
5
9
  * @returns {string} the uncompressed public key in hexadecimal
@@ -86,20 +90,6 @@ export declare function isValidBLSPublicKey(pub: string): boolean;
86
90
  * @returns {string} - the hex value
87
91
  */
88
92
  export declare function toHex(buffer: Buffer | Uint8Array): string;
89
- /**
90
- * Returns an hex string of the given bigint
91
- *
92
- * @param {bigint} bigint - the bigint to be converted to hex
93
- * @returns {string} - the hex value
94
- */
95
- export declare function bigIntToHex(bigint: bigint, hexLength?: number): string;
96
- /**
97
- * Returns a BigInt value from hex
98
- *
99
- * @param {string} hex - hex value to be converted to bigint
100
- * @returns {bigint} - bigint representation of the hex value
101
- */
102
- export declare function hexToBigInt(hex: string): bigint;
103
93
  /**
104
94
  * Check if base58 decoded string is equale to length
105
95
  *
@@ -115,14 +105,4 @@ export declare function isBase58(value: string, length: number): boolean;
115
105
  * @returns {string} - the Uint8Array value
116
106
  */
117
107
  export declare function toUint8Array(str: string): Uint8Array;
118
- /**
119
- * Returns a bigint array from a hex string array
120
- * @param values
121
- */
122
- export declare function convertHexArrToBigIntArr(values: string[]): bigint[];
123
- /**
124
- * Returns a hex string array from a bigint array
125
- * @param values
126
- */
127
- export declare function convertBigIntArrToHexArr(values: bigint[]): string[];
128
108
  //# sourceMappingURL=crypto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/util/crypto.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAiBjD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUjD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAM9D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOvD;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMzD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOxD;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAEzD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAOtE;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAU/C;AAED;;;;;;GAMG;AAEH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAM/D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAEpD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAInE;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAInE"}
1
+ {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/util/crypto.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C;;GAEG;AACH,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAgBlH;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUjD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAM9D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOvD;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMzD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOxD;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAEzD;AAED;;;;;;GAMG;AAEH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAM/D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAEpD"}
@@ -22,13 +22,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
22
22
  return (mod && mod.__esModule) ? mod : { "default": mod };
23
23
  };
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.convertBigIntArrToHexArr = exports.convertHexArrToBigIntArr = exports.toUint8Array = exports.isBase58 = exports.hexToBigInt = exports.bigIntToHex = exports.toHex = exports.isValidBLSPublicKey = exports.isValidBLSPrivateKey = exports.isValidEd25519PublicKey = exports.isValidEd25519SecretKey = exports.isValidEd25519Seed = exports.isValidPrv = exports.isValidPub = exports.isValidXprv = exports.isValidXpub = exports.rawPrvToExtendedKeys = exports.xprvToRawPrv = exports.xpubToCompressedPub = exports.xpubToUncompressedPub = void 0;
25
+ exports.toUint8Array = exports.isBase58 = exports.toHex = exports.isValidBLSPublicKey = exports.isValidBLSPrivateKey = exports.isValidEd25519PublicKey = exports.isValidEd25519SecretKey = exports.isValidEd25519Seed = exports.isValidPrv = exports.isValidPub = exports.isValidXprv = exports.isValidXpub = exports.rawPrvToExtendedKeys = exports.xprvToRawPrv = exports.xpubToCompressedPub = exports.xpubToUncompressedPub = exports.bigIntToHex = exports.hexToBigInt = exports.convertBigIntArrToHexArr = exports.convertHexArrToBigIntArr = void 0;
26
26
  const utxo_lib_1 = require("@bitgo/utxo-lib");
27
27
  const nacl = __importStar(require("tweetnacl"));
28
28
  const hex = __importStar(require("@stablelib/hex"));
29
29
  const bls = __importStar(require("noble-bls12-381"));
30
30
  const strip_hex_prefix_1 = __importDefault(require("strip-hex-prefix"));
31
31
  const bs58_1 = __importDefault(require("bs58"));
32
+ /**
33
+ * @deprecated - use @bitgo/sdk-lib-mpc instead
34
+ */
35
+ var sdk_lib_mpc_1 = require("@bitgo/sdk-lib-mpc");
36
+ Object.defineProperty(exports, "convertHexArrToBigIntArr", { enumerable: true, get: function () { return sdk_lib_mpc_1.convertHexArrToBigIntArr; } });
37
+ Object.defineProperty(exports, "convertBigIntArrToHexArr", { enumerable: true, get: function () { return sdk_lib_mpc_1.convertBigIntArrToHexArr; } });
38
+ Object.defineProperty(exports, "hexToBigInt", { enumerable: true, get: function () { return sdk_lib_mpc_1.hexToBigInt; } });
39
+ Object.defineProperty(exports, "bigIntToHex", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntToHex; } });
32
40
  /**
33
41
  * @param xpub - a base-58 encoded extended public key (BIP32)
34
42
  * @param compressed flag to determine if return key should be compressed/uncompressed
@@ -244,39 +252,6 @@ function toHex(buffer) {
244
252
  return hex.encode(buffer, true);
245
253
  }
246
254
  exports.toHex = toHex;
247
- /**
248
- * Returns an hex string of the given bigint
249
- *
250
- * @param {bigint} bigint - the bigint to be converted to hex
251
- * @returns {string} - the hex value
252
- */
253
- function bigIntToHex(bigint, hexLength) {
254
- let hex = bigint.toString(16);
255
- hex = '0'.slice(0, hex.length % 2) + hex;
256
- if (hexLength) {
257
- hex = hex.padStart(hexLength, '0');
258
- }
259
- return hex;
260
- }
261
- exports.bigIntToHex = bigIntToHex;
262
- /**
263
- * Returns a BigInt value from hex
264
- *
265
- * @param {string} hex - hex value to be converted to bigint
266
- * @returns {bigint} - bigint representation of the hex value
267
- */
268
- function hexToBigInt(hex) {
269
- // Strangely bigint.toString(16) gives a hex string without 0x
270
- // but it won't accept the same string without 0x to convert
271
- // to a bigint (BigInt(hex string)). So have to introduce this
272
- // check to convert to add 0x in case if hex string
273
- // doesn't have it.
274
- if (hex.slice(0, 2) === '0x') {
275
- return BigInt(hex);
276
- }
277
- return BigInt('0x' + hex);
278
- }
279
- exports.hexToBigInt = hexToBigInt;
280
255
  /**
281
256
  * Check if base58 decoded string is equale to length
282
257
  *
@@ -303,24 +278,4 @@ function toUint8Array(str) {
303
278
  return hex.decode(str);
304
279
  }
305
280
  exports.toUint8Array = toUint8Array;
306
- /**
307
- * Returns a bigint array from a hex string array
308
- * @param values
309
- */
310
- function convertHexArrToBigIntArr(values) {
311
- return values.map((value) => {
312
- return hexToBigInt(value);
313
- });
314
- }
315
- exports.convertHexArrToBigIntArr = convertHexArrToBigIntArr;
316
- /**
317
- * Returns a hex string array from a bigint array
318
- * @param values
319
- */
320
- function convertBigIntArrToHexArr(values) {
321
- return values.map((value) => {
322
- return bigIntToHex(value);
323
- });
324
- }
325
- exports.convertBigIntArrToHexArr = convertBigIntArrToHexArr;
326
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL3V0aWwvY3J5cHRvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw4Q0FBMEQ7QUFDMUQsZ0RBQWtDO0FBQ2xDLG9EQUFzQztBQUN0QyxxREFBdUM7QUFDdkMsd0VBQThDO0FBRTlDLGdEQUF3QjtBQUV4Qjs7OztHQUlHO0FBQ0gsU0FBUyxTQUFTLENBQUMsSUFBWSxFQUFFLFVBQW1CO0lBQ2xELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztLQUNqQztJQUNELE9BQU8saUJBQU0sQ0FBQyxhQUFhLENBQUMsZ0JBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLG1CQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFO1FBQzlFLFVBQVU7S0FDWCxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IscUJBQXFCLENBQUMsSUFBWTtJQUNoRCxPQUFPLFNBQVMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDaEMsQ0FBQztBQUZELHNEQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQUMsSUFBWTtJQUM5QyxPQUFPLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDL0IsQ0FBQztBQUZELGtEQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLElBQVk7SUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ2pDO0lBRUQsTUFBTSxFQUFFLFVBQVUs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QU0sS0FBSyxNQUFNLENBQUM7S0FDeEQ7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7QUFDSCxDQUFDO0FBTkQsNEJBTUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLFlBQVksQ0FBQyxHQUFXO0lBQ3RDLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN6QixDQUFDO0FBRkQsb0NBRUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQix3QkFBd0IsQ0FBQyxNQUFnQjtJQUN2RCxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUMxQixPQUFPLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFKRCw0REFJQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLE1BQWdCO0lBQ3ZELE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQzFCLE9BQU8sV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUpELDREQUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYmlwMzIsIEVDUGFpciwgbmV0d29ya3MgfSBmcm9tICdAYml0Z28vdXR4by1saWInO1xuaW1wb3J0ICogYXMgbmFjbCBmcm9tICd0d2VldG5hY2wnO1xuaW1wb3J0ICogYXMgaGV4IGZyb20gJ0BzdGFibGVsaWIvaGV4JztcbmltcG9ydCAqIGFzIGJscyBmcm9tICdub2JsZS1ibHMxMi0zODEnO1xuaW1wb3J0IHN0cmlwSGV4UHJlZml4IGZyb20gJ3N0cmlwLWhleC1wcmVmaXgnO1xuaW1wb3J0IHsgRXh0ZW5kZWRLZXlzIH0gZnJvbSAnLi4vYmFzZUNvaW4vaWZhY2UnO1xuaW1wb3J0IGJzNTggZnJvbSAnYnM1OCc7XG5cbi8qKlxuICogQHBhcmFtIHhwdWIgLSBhIGJhc2UtNTggZW5jb2RlZCBleHRlbmRlZCBwdWJsaWMga2V5IChCSVAzMilcbiAqIEBwYXJhbSBjb21wcmVzc2VkIGZsYWcgdG8gZGV0ZXJtaW5lIGlmIHJldHVybiBrZXkgc2hvdWxkIGJlIGNvbXByZXNzZWQvdW5jb21wcmVzc2VkXG4gKiBAcmV0dXJuIGEgY29tcHJlc3NlZCBvciBhbiB1bmNvbXByZXNzZWVkIHB1YmxpYyBrZXkgaW4gaGV4YWRlY2ltYWxcbiAqL1xuZnVuY3Rpb24geFB1YlRvUHViKHhwdWI6IHN0cmluZywgY29tcHJlc3NlZDogYm9vbGVhbikge1xuICBpZiAoIWlzVmFsaWRYcHViKHhwdWIpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHhwdWInKTtcbiAgfVxuICByZXR1cm4gRUNQYWlyLmZyb21QdWJsaWNLZXkoYmlwMzIuZnJvbUJhc2U1OCh4cHViLCBuZXR3b3Jrcy5iaXRjb2luKS5wdWJsaWNLZXksIHtcbiAgICBjb21wcmVzc2VkLFxuICB9KS5wdWJsaWNLZXkudG9TdHJpbmcoJ2hleCcpO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSB4cHViIC0gYSBiYXNlLTU4IGVuY29kZWQgZXh0ZW5kZWQgcHVibGljIGtleSAoQklQMzIpXG4gKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgdW5jb21wcmVzc2VkIHB1YmxpYyBrZXkgaW4gaGV4YWRlY2ltYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHhwdWJUb1VuY29tcHJlc3NlZFB1Yih4cHViOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4geFB1YlRvUHViKHhwdWIsIGZhbHNlKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ30geHB1YiAtIGEgYmFzZS01OCBlbmNvZGVkIGV4dGVuZGVkIHB1YmxpYyBrZXkgKEJJUDMyKVxuICogQHJldHVybnMge3N0cmluZ30gdGhlIHVuY29tcHJlc3NlZCBwdWJsaWMga2V5IGluIGhleGFkZWNpbWFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB4cHViVG9Db21wcmVzc2VkUHViKHhwdWI6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiB4UHViVG9QdWIoeHB1YiwgdHJ1ZSk7XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IHhwcnYgLSBiYXNlNTgtZW5jb2RlZCBleHRlbmRlZCBwcml2YXRlIGtleSAoQklQMzIpXG4gKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgaGV4LWVuY29kZWQgcmF3IHByaXZhdGUga2V5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB4cHJ2VG9SYXdQcnYoeHBydjogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCFpc1ZhbGlkWHBydih4cHJ2KSkge1xuICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCB4cHJ2Jyk7XG4gIH1cblxuICBjb25zdCB7IHByaXZhdGVLZXkgfSA9IGJpcDMyLmZyb21CYXNlNTgoeHBydiwgbmV0d29ya3MuYml0Y29pbik7XG4gIGlmICghcHJpdmF0ZUtleSkge1xuICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCB4cHJ2Jyk7XG4gIH1cbiAgcmV0dXJuIHByaXZhdGVLZXkudG9TdHJpbmcoJ2hleCcpO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcnYgLSBQcml2YXRlIGtleSBpbiBoZXggZm9ybWF0IHRvIGdldCB0aGUgZXh0ZW5kZWQga2V5cyBmb3JcbiAqIEByZXR1cm5zIHtFeHRlbmRlZEtleXN9IHhwcnYgYW5kIHhwdWIgaW4gc3RyaW5nIGZvcm1hdFxuICovXG5leHBvcnQgZnVuY3Rpb24gcmF3UHJ2VG9FeHRlbmRlZEtleXMocHJ2OiBzdHJpbmcpOiBFeHRlbmRlZEtleXMge1xuICBjb25zdCBoZCA9IGJpcDMyLmZyb21Qcml2YXRlS2V5KEJ1ZmZlci5mcm9tKHBydiwgJ2hleCcpLCBCdWZmZXIuYWxsb2MoMzIpKTtcbiAgcmV0dXJuIHtcbiAgICB4cHJ2OiBoZC50b0Jhc2U1OCgpLFxuICAgIHhwdWI6IGhkLm5ldXRlcmVkKCkudG9CYXNlNTgoKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIEJJUDMyIHhwdWIgb3Igbm90XG4gKlxuICogQHBhcmFtIHhwdWJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRYcHViKHhwdWI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBpZiAoeHB1Yi5zdWJzdHIoMCwgNCkgIT09ICd4cHViJykge1xuICAgIC8vIGNoZWNrIGZvciB4cHViIGZvcm1hdHMgd2UgZG9uJ3Qgc3VwcG9ydCwgc3VjaCBhcyB0cHViXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHRyeSB7XG4gICAgYmlwMzIuZnJvbUJhc2U1OCh4cHViLCBuZXR3b3Jrcy5iaXRjb2luKTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIC8vIGlmIEhEIGdlbmVyYXRpb24gZGlkbid0IHRocm93LCBpdCBpcyBhIHZhbGlkIHhwdWJcbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBCSVAzMiB4cHJ2IG9yIG5vdFxuICpcbiAqIEBwYXJhbSB4cHJ2XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkWHBydih4cHJ2OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgaWYgKHhwcnYuc3Vic3RyKDAsIDQpICE9PSAneHBydicpIHtcbiAgICAvLyBjaGVjayBmb3IgeHBydiBmb3JtYXRzIHdlIGRvbid0IHN1cHBvcnRcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdHJ5IHtcbiAgICBiaXAzMi5mcm9tQmFzZTU4KHhwcnYsIG5ldHdvcmtzLmJpdGNvaW4pO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgLy8gaWYgSEQgZ2VuZXJhdGlvbiBkaWRuJ3QgdGhyb3csIGl0IGlzIGEgdmFsaWQgeHBydlxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHNlY3AyNTZrMSBwdWJsaWMga2V5XG4gKlxuICogQHBhcmFtIHB1YlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZFB1YihwdWI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIEVDUGFpci5mcm9tUHVibGljS2V5KEJ1ZmZlci5mcm9tKHB1YiwgJ2hleCcpKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHNlY3AyNTZrMSBwcml2YXRlIGtleVxuICpcbiAqIEBwYXJhbSBwcnZcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRQcnYocHJ2OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBFQ1BhaXIuZnJvbVByaXZhdGVLZXkoQnVmZmVyLmZyb20ocHJ2LCAnaGV4JykpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgZWQyNTUxOSBwcml2YXRlIGtleVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcnYgQSBoZXhhZGVjaW1hbCBwcml2YXRlIGtleSB0byB2YWxpZGF0ZVxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgcHVibGljIGtleSBvciBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRFZDI1NTE5U2VlZChwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIGNvbnN0IGRlY29kZWRQcnYgPSB0b1VpbnQ4QXJyYXkocHJ2KTtcbiAgICByZXR1cm4gZGVjb2RlZFBydi5sZW5ndGggPT09IG5hY2wuc2lnbi5zZWVkTGVuZ3RoO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBlZDI1NTE5IHByaXZhdGUga2V5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHBydiBBIGhleGFkZWNpbWFsIHByaXZhdGUga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBwdWJsaWMga2V5IG9yIG5vdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZEVkMjU1MTlTZWNyZXRLZXkocHJ2OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBkZWNvZGVkUHJ2ID0gdG9VaW50OEFycmF5KHBydik7XG4gICAgcmV0dXJuIGRlY29kZWRQcnYubGVuZ3RoID09PSBuYWNsLnNpZ24uc2VjcmV0S2V5TGVuZ3RoO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBlZDI1NTE5IHB1YmxpYyBrZXlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHViIEEgaGV4YWRlY2ltYWwgcHVibGljIGtleSB0byB2YWxpZGF0ZVxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgcHVibGljIGtleSBvciBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRFZDI1NTE5UHVibGljS2V5KHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGVjb2RlZFB1YiA9IG5ldyBVaW50OEFycmF5KEJ1ZmZlci5mcm9tKHB1YiwgJ2hleCcpKTtcbiAgICByZXR1cm4gZGVjb2RlZFB1Yi5sZW5ndGggPT09IG5hY2wuc2lnbi5wdWJsaWNLZXlMZW5ndGg7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIEJMUyBwcml2YXRlIGtleVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcnYgYSBwcml2YXRlIGtleSB0byB2YWxpZGF0ZVxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgcHJpdmF0ZSBrZXkgb3Igbm90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkQkxTUHJpdmF0ZUtleShwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIHJldHVybiBibHMuRnIuaXNWYWxpZChCaWdJbnQoJzB4JyArIHBydikpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogV2hldGhlciBpbnB1dCBpcyBhIHZhbGlkIEJMUyBwdWJsaWMga2V5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHB1YiB0aGUgcHVibGljIGtleSB0byB2YWxpZGF0ZVxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgaW5wdXQgaXMgYSB2YWxpZCBwdWJsaWMga2V5IG9yIG5vdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZEJMU1B1YmxpY0tleShwdWI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIGJscy5Qb2ludEcxLmZyb21Db21wcmVzc2VkSGV4KHN0cmlwSGV4UHJlZml4KHB1YikpLmFzc2VydFZhbGlkaXR5KCk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIGFuIGhleCBzdHJpbmcgb2YgdGhlIGdpdmVuIGJ1ZmZlclxuICpcbiAqIEBwYXJhbSB7QnVmZmVyIHwgVWludDhBcnJheX0gYnVmZmVyIC0gdGhlIGJ1ZmZlciB0byBiZSBjb252ZXJ0ZWQgdG8gaGV4XG4gKiBAcmV0dXJucyB7c3RyaW5nfSAtIHRoZSBoZXggdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSGV4KGJ1ZmZlcjogQnVmZmVyIHwgVWludDhBcnJheSk6IHN0cmluZyB7XG4gIHJldHVybiBoZXguZW5jb2RlKGJ1ZmZlciwgdHJ1ZSk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhbiBoZXggc3RyaW5nIG9mIHRoZSBnaXZlbiBiaWdpbnRcbiAqXG4gKiBAcGFyYW0ge2JpZ2ludH0gYmlnaW50IC0gdGhlIGJpZ2ludCB0byBiZSBjb252ZXJ0ZWQgdG8gaGV4XG4gKiBAcmV0dXJucyB7c3RyaW5nfSAtIHRoZSBoZXggdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJpZ0ludFRvSGV4KGJpZ2ludDogYmlnaW50LCBoZXhMZW5ndGg/OiBudW1iZXIpOiBzdHJpbmcge1xuICBsZXQgaGV4ID0gYmlnaW50LnRvU3RyaW5nKDE2KTtcbiAgaGV4ID0gJzAnLnNsaWNlKDAsIGhleC5sZW5ndGggJSAyKSArIGhleDtcbiAgaWYgKGhleExlbmd0aCkge1xuICAgIGhleCA9IGhleC5wYWRTdGFydChoZXhMZW5ndGgsICcwJyk7XG4gIH1cbiAgcmV0dXJuIGhleDtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgQmlnSW50IHZhbHVlIGZyb20gaGV4XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGhleCAtIGhleCB2YWx1ZSB0byBiZSBjb252ZXJ0ZWQgdG8gYmlnaW50XG4gKiBAcmV0dXJucyB7YmlnaW50fSAtIGJpZ2ludCByZXByZXNlbnRhdGlvbiBvZiB0aGUgaGV4IHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoZXhUb0JpZ0ludChoZXg6IHN0cmluZyk6IGJpZ2ludCB7XG4gIC8vIFN0cmFuZ2VseSBiaWdpbnQudG9TdHJpbmcoMTYpIGdpdmVzIGEgaGV4IHN0cmluZyB3aXRob3V0IDB4XG4gIC8vIGJ1dCBpdCB3b24ndCBhY2NlcHQgdGhlIHNhbWUgc3RyaW5nIHdpdGhvdXQgMHggdG8gY29udmVydFxuICAvLyB0byBhIGJpZ2ludCAoQmlnSW50KGhleCBzdHJpbmcpKS4gU28gaGF2ZSB0byBpbnRyb2R1Y2UgdGhpc1xuICAvLyBjaGVjayB0byBjb252ZXJ0IHRvIGFkZCAweCBpbiBjYXNlIGlmIGhleCBzdHJpbmdcbiAgLy8gZG9lc24ndCBoYXZlIGl0LlxuICBpZiAoaGV4LnNsaWNlKDAsIDIpID09PSAnMHgnKSB7XG4gICAgcmV0dXJuIEJpZ0ludChoZXgpO1xuICB9XG4gIHJldHVybiBCaWdJbnQoJzB4JyArIGhleCk7XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgYmFzZTU4IGRlY29kZWQgc3RyaW5nIGlzIGVxdWFsZSB0byBsZW5ndGhcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUgLSBzdHJpbmcgdG8gYmUgY2hlY2tlZFxuICogQHBhcmFtIHtudW1iZXJ9IGxlbmd0aCAtIGV4cGVjdGVkIGRlY29kZWQgbGVuZ3RoXG4gKiBAcmV0dXJuIHtib29sZWFufSBpZiB0aGUgc3RyaW5nIGNhbiBkZWNvZGVkIGFzIGJhc2U1OCBhbmQgbWF0Y2ggdGhlIGV4cGVjdGVkIGxlbmd0aFxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Jhc2U1OCh2YWx1ZTogc3RyaW5nLCBsZW5ndGg6IG51bWJlcik6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIHJldHVybiAhIXZhbHVlICYmIGJzNTguZGVjb2RlKHZhbHVlKS5sZW5ndGggPT09IGxlbmd0aDtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFJldHVybnMgYSBVaW50OEFycmF5IG9mIHRoZSBnaXZlbiBoZXggc3RyaW5nXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHN0ciAtIHRoZSBoZXggc3RyaW5nIHRvIGJlIGNvbnZlcnRlZFxuICogQHJldHVybnMge3N0cmluZ30gLSB0aGUgVWludDhBcnJheSB2YWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9VaW50OEFycmF5KHN0cjogc3RyaW5nKTogVWludDhBcnJheSB7XG4gIHJldHVybiBoZXguZGVjb2RlKHN0cik7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIGJpZ2ludCBhcnJheSBmcm9tIGEgaGV4IHN0cmluZyBhcnJheVxuICogQHBhcmFtIHZhbHVlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gY29udmVydEhleEFyclRvQmlnSW50QXJyKHZhbHVlczogc3RyaW5nW10pOiBiaWdpbnRbXSB7XG4gIHJldHVybiB2YWx1ZXMubWFwKCh2YWx1ZSkgPT4ge1xuICAgIHJldHVybiBoZXhUb0JpZ0ludCh2YWx1ZSk7XG4gIH0pO1xufVxuXG4vKipcbiAqIFJldHVybnMgYSBoZXggc3RyaW5nIGFycmF5IGZyb20gYSBiaWdpbnQgYXJyYXlcbiAqIEBwYXJhbSB2YWx1ZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRCaWdJbnRBcnJUb0hleEFycih2YWx1ZXM6IGJpZ2ludFtdKTogc3RyaW5nW10ge1xuICByZXR1cm4gdmFsdWVzLm1hcCgodmFsdWUpID0+IHtcbiAgICByZXR1cm4gYmlnSW50VG9IZXgodmFsdWUpO1xuICB9KTtcbn1cbiJdfQ==
281
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL3V0aWwvY3J5cHRvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw4Q0FBMEQ7QUFDMUQsZ0RBQWtDO0FBQ2xDLG9EQUFzQztBQUN0QyxxREFBdUM7QUFDdkMsd0VBQThDO0FBRTlDLGdEQUF3QjtBQUV4Qjs7R0FFRztBQUNILGtEQUFrSDtBQUF6Ryx1SEFBQSx3QkFBd0IsT0FBQTtBQUFFLHVIQUFBLHdCQUF3QixPQUFBO0FBQUUsMEdBQUEsV0FBVyxPQUFBO0FBQUUsMEdBQUEsV0FBVyxPQUFBO0FBRXJGOzs7O0dBSUc7QUFDSCxTQUFTLFNBQVMsQ0FBQyxJQUFZLEVBQUUsVUFBbUI7SUFDbEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ2pDO0lBQ0QsT0FBTyxpQkFBTSxDQUFDLGFBQWEsQ0FBQyxnQkFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsbUJBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUU7UUFDOUUsVUFBVTtLQUNYLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQy9CLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixxQkFBcUIsQ0FBQyxJQUFZO0lBQ2hELE9BQU8sU0FBUyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztBQUNoQyxDQUFDO0FBRkQsc0RBRUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixtQkFBbUIsQ0FBQyxJQUFZO0lBQzlDLE9BQU8sU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBRkQsa0RBRUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixZQUFZLENBQUMsSUFBWTtJQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDakM7SUFFRCxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsZ0JBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLG1CQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEUsSUFBSSxDQUFDLFVBQVUsRUFBRTtRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDakM7SUFDRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDcEMsQ0FBQztBQVZELG9DQVVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsR0FBVztJQUM5QyxNQUFNLEVBQUUsR0FBRyxnQkFBSyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0UsT0FBTztRQUNMLElBQUksRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQ25CLElBQUksRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFO0tBQy9CLENBQUM7QUFDSixDQUFDO0FBTkQsb0RBTUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsV0FBVyxDQUFDLElBQVk7SUFDdEMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxNQUFNLEVBQUU7UUFDaEMsd0RBQXdEO1FBQ3hELE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxJQUFJO1FBQ0YsZ0JBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLG1CQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDMUM7SUFBQyxPQUFPLEdBQUcsRUFBRTtRQUNaLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxvREFBb0Q7SUFDcEQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBWkQsa0NBWUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsV0FBVyxDQUFDLElBQVk7SUFDdEMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxNQUFNLEVBQUU7UUFDaEMsMENBQTBDO1FBQzFDLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxJQUFJO1FBQ0YsZ0JBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLG1CQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDMUM7SUFBQyxPQUFPLEdBQUcsRUFBRTtRQUNaLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxvREFBb0Q7SUFDcEQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBWkQsa0NBWUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsVUFBVSxDQUFDLEdBQVc7SUFDcEMsSUFBSTtRQUNGLGlCQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7S0FDL0M7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFQRCxnQ0FPQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixVQUFVLENBQUMsR0FBVztJQUNwQyxJQUFJO1FBQ0YsaUJBQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztLQUNoRDtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQVBELGdDQU9DO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFnQixrQkFBa0IsQ0FBQyxHQUFXO0lBQzVDLElBQUk7UUFDRixNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckMsT0FBTyxVQUFVLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO0tBQ25EO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixPQUFPLEtBQUssQ0FBQztLQUNkO0FBQ0gsQ0FBQztBQVBELGdEQU9DO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFnQix1QkFBdUIsQ0FBQyxHQUFXO0lBQ2pELElBQUk7UUFDRixNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckMsT0FBTyxVQUFVLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO0tBQ3hEO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixPQUFPLEtBQUssQ0FBQztLQUNkO0FBQ0gsQ0FBQztBQVBELDBEQU9DO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFnQix1QkFBdUIsQ0FBQyxHQUFXO0lBQ2pELElBQUk7UUFDRixNQUFNLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzNELE9BQU8sVUFBVSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQztLQUN4RDtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxLQUFLLENBQUM7S0FDZDtBQUNILENBQUM7QUFQRCwwREFPQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsR0FBVztJQUM5QyxJQUFJO1FBQ0YsT0FBTyxHQUFHLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7S0FDM0M7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7QUFDSCxDQUFDO0FBTkQsb0RBTUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLG1CQUFtQixDQUFDLEdBQVc7SUFDN0MsSUFBSTtRQUNGLEdBQUcsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsMEJBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BFLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7QUFDSCxDQUFDO0FBUEQsa0RBT0M7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLEtBQUssQ0FBQyxNQUEyQjtJQUMvQyxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ2xDLENBQUM7QUFGRCxzQkFFQztBQUVEOzs7Ozs7R0FNRztBQUVILFNBQWdCLFFBQVEsQ0FBQyxLQUFhLEVBQUUsTUFBYztJQUNwRCxJQUFJO1FBQ0YsT0FBTyxDQUFDLENBQUMsS0FBSyxJQUFJLGNBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQztLQUN4RDtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxLQUFLLENBQUM7S0FDZDtBQUNILENBQUM7QUFORCw0QkFNQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLEdBQVc7SUFDdEMsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3pCLENBQUM7QUFGRCxvQ0FFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJpcDMyLCBFQ1BhaXIsIG5ldHdvcmtzIH0gZnJvbSAnQGJpdGdvL3V0eG8tbGliJztcbmltcG9ydCAqIGFzIG5hY2wgZnJvbSAndHdlZXRuYWNsJztcbmltcG9ydCAqIGFzIGhleCBmcm9tICdAc3RhYmxlbGliL2hleCc7XG5pbXBvcnQgKiBhcyBibHMgZnJvbSAnbm9ibGUtYmxzMTItMzgxJztcbmltcG9ydCBzdHJpcEhleFByZWZpeCBmcm9tICdzdHJpcC1oZXgtcHJlZml4JztcbmltcG9ydCB7IEV4dGVuZGVkS2V5cyB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCBiczU4IGZyb20gJ2JzNTgnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIC0gdXNlIEBiaXRnby9zZGstbGliLW1wYyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCB7IGNvbnZlcnRIZXhBcnJUb0JpZ0ludEFyciwgY29udmVydEJpZ0ludEFyclRvSGV4QXJyLCBoZXhUb0JpZ0ludCwgYmlnSW50VG9IZXggfSBmcm9tICdAYml0Z28vc2RrLWxpYi1tcGMnO1xuXG4vKipcbiAqIEBwYXJhbSB4cHViIC0gYSBiYXNlLTU4IGVuY29kZWQgZXh0ZW5kZWQgcHVibGljIGtleSAoQklQMzIpXG4gKiBAcGFyYW0gY29tcHJlc3NlZCBmbGFnIHRvIGRldGVybWluZSBpZiByZXR1cm4ga2V5IHNob3VsZCBiZSBjb21wcmVzc2VkL3VuY29tcHJlc3NlZFxuICogQHJldHVybiBhIGNvbXByZXNzZWQgb3IgYW4gdW5jb21wcmVzc2VlZCBwdWJsaWMga2V5IGluIGhleGFkZWNpbWFsXG4gKi9cbmZ1bmN0aW9uIHhQdWJUb1B1Yih4cHViOiBzdHJpbmcsIGNvbXByZXNzZWQ6IGJvb2xlYW4pIHtcbiAgaWYgKCFpc1ZhbGlkWHB1Yih4cHViKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCB4cHViJyk7XG4gIH1cbiAgcmV0dXJuIEVDUGFpci5mcm9tUHVibGljS2V5KGJpcDMyLmZyb21CYXNlNTgoeHB1YiwgbmV0d29ya3MuYml0Y29pbikucHVibGljS2V5LCB7XG4gICAgY29tcHJlc3NlZCxcbiAgfSkucHVibGljS2V5LnRvU3RyaW5nKCdoZXgnKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ30geHB1YiAtIGEgYmFzZS01OCBlbmNvZGVkIGV4dGVuZGVkIHB1YmxpYyBrZXkgKEJJUDMyKVxuICogQHJldHVybnMge3N0cmluZ30gdGhlIHVuY29tcHJlc3NlZCBwdWJsaWMga2V5IGluIGhleGFkZWNpbWFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB4cHViVG9VbmNvbXByZXNzZWRQdWIoeHB1Yjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHhQdWJUb1B1Yih4cHViLCBmYWxzZSk7XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IHhwdWIgLSBhIGJhc2UtNTggZW5jb2RlZCBleHRlbmRlZCBwdWJsaWMga2V5IChCSVAzMilcbiAqIEByZXR1cm5zIHtzdHJpbmd9IHRoZSB1bmNvbXByZXNzZWQgcHVibGljIGtleSBpbiBoZXhhZGVjaW1hbFxuICovXG5leHBvcnQgZnVuY3Rpb24geHB1YlRvQ29tcHJlc3NlZFB1Yih4cHViOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4geFB1YlRvUHViKHhwdWIsIHRydWUpO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSB4cHJ2IC0gYmFzZTU4LWVuY29kZWQgZXh0ZW5kZWQgcHJpdmF0ZSBrZXkgKEJJUDMyKVxuICogQHJldHVybnMge3N0cmluZ30gdGhlIGhleC1lbmNvZGVkIHJhdyBwcml2YXRlIGtleVxuICovXG5leHBvcnQgZnVuY3Rpb24geHBydlRvUmF3UHJ2KHhwcnY6IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmICghaXNWYWxpZFhwcnYoeHBydikpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgeHBydicpO1xuICB9XG5cbiAgY29uc3QgeyBwcml2YXRlS2V5IH0gPSBiaXAzMi5mcm9tQmFzZTU4KHhwcnYsIG5ldHdvcmtzLmJpdGNvaW4pO1xuICBpZiAoIXByaXZhdGVLZXkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgeHBydicpO1xuICB9XG4gIHJldHVybiBwcml2YXRlS2V5LnRvU3RyaW5nKCdoZXgnKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHJ2IC0gUHJpdmF0ZSBrZXkgaW4gaGV4IGZvcm1hdCB0byBnZXQgdGhlIGV4dGVuZGVkIGtleXMgZm9yXG4gKiBAcmV0dXJucyB7RXh0ZW5kZWRLZXlzfSB4cHJ2IGFuZCB4cHViIGluIHN0cmluZyBmb3JtYXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJhd1BydlRvRXh0ZW5kZWRLZXlzKHBydjogc3RyaW5nKTogRXh0ZW5kZWRLZXlzIHtcbiAgY29uc3QgaGQgPSBiaXAzMi5mcm9tUHJpdmF0ZUtleShCdWZmZXIuZnJvbShwcnYsICdoZXgnKSwgQnVmZmVyLmFsbG9jKDMyKSk7XG4gIHJldHVybiB7XG4gICAgeHBydjogaGQudG9CYXNlNTgoKSxcbiAgICB4cHViOiBoZC5uZXV0ZXJlZCgpLnRvQmFzZTU4KCksXG4gIH07XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBCSVAzMiB4cHViIG9yIG5vdFxuICpcbiAqIEBwYXJhbSB4cHViXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkWHB1Yih4cHViOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgaWYgKHhwdWIuc3Vic3RyKDAsIDQpICE9PSAneHB1YicpIHtcbiAgICAvLyBjaGVjayBmb3IgeHB1YiBmb3JtYXRzIHdlIGRvbid0IHN1cHBvcnQsIHN1Y2ggYXMgdHB1YlxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICB0cnkge1xuICAgIGJpcDMyLmZyb21CYXNlNTgoeHB1YiwgbmV0d29ya3MuYml0Y29pbik7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICAvLyBpZiBIRCBnZW5lcmF0aW9uIGRpZG4ndCB0aHJvdywgaXQgaXMgYSB2YWxpZCB4cHViXG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgQklQMzIgeHBydiBvciBub3RcbiAqXG4gKiBAcGFyYW0geHBydlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZFhwcnYoeHBydjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGlmICh4cHJ2LnN1YnN0cigwLCA0KSAhPT0gJ3hwcnYnKSB7XG4gICAgLy8gY2hlY2sgZm9yIHhwcnYgZm9ybWF0cyB3ZSBkb24ndCBzdXBwb3J0XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHRyeSB7XG4gICAgYmlwMzIuZnJvbUJhc2U1OCh4cHJ2LCBuZXR3b3Jrcy5iaXRjb2luKTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIC8vIGlmIEhEIGdlbmVyYXRpb24gZGlkbid0IHRocm93LCBpdCBpcyBhIHZhbGlkIHhwcnZcbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBzZWNwMjU2azEgcHVibGljIGtleVxuICpcbiAqIEBwYXJhbSBwdWJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRQdWIocHViOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBFQ1BhaXIuZnJvbVB1YmxpY0tleShCdWZmZXIuZnJvbShwdWIsICdoZXgnKSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBzZWNwMjU2azEgcHJpdmF0ZSBrZXlcbiAqXG4gKiBAcGFyYW0gcHJ2XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkUHJ2KHBydjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgRUNQYWlyLmZyb21Qcml2YXRlS2V5KEJ1ZmZlci5mcm9tKHBydiwgJ2hleCcpKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIGVkMjU1MTkgcHJpdmF0ZSBrZXlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHJ2IEEgaGV4YWRlY2ltYWwgcHJpdmF0ZSBrZXkgdG8gdmFsaWRhdGVcbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHB1YmxpYyBrZXkgb3Igbm90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkRWQyNTUxOVNlZWQocHJ2OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBkZWNvZGVkUHJ2ID0gdG9VaW50OEFycmF5KHBydik7XG4gICAgcmV0dXJuIGRlY29kZWRQcnYubGVuZ3RoID09PSBuYWNsLnNpZ24uc2VlZExlbmd0aDtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgZWQyNTUxOSBwcml2YXRlIGtleVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcnYgQSBoZXhhZGVjaW1hbCBwcml2YXRlIGtleSB0byB2YWxpZGF0ZVxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgcHVibGljIGtleSBvciBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRFZDI1NTE5U2VjcmV0S2V5KHBydjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGVjb2RlZFBydiA9IHRvVWludDhBcnJheShwcnYpO1xuICAgIHJldHVybiBkZWNvZGVkUHJ2Lmxlbmd0aCA9PT0gbmFjbC5zaWduLnNlY3JldEtleUxlbmd0aDtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgZWQyNTUxOSBwdWJsaWMga2V5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHB1YiBBIGhleGFkZWNpbWFsIHB1YmxpYyBrZXkgdG8gdmFsaWRhdGVcbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHB1YmxpYyBrZXkgb3Igbm90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkRWQyNTUxOVB1YmxpY0tleShwdWI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIGNvbnN0IGRlY29kZWRQdWIgPSBuZXcgVWludDhBcnJheShCdWZmZXIuZnJvbShwdWIsICdoZXgnKSk7XG4gICAgcmV0dXJuIGRlY29kZWRQdWIubGVuZ3RoID09PSBuYWNsLnNpZ24ucHVibGljS2V5TGVuZ3RoO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBCTFMgcHJpdmF0ZSBrZXlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHJ2IGEgcHJpdmF0ZSBrZXkgdG8gdmFsaWRhdGVcbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHByaXZhdGUga2V5IG9yIG5vdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZEJMU1ByaXZhdGVLZXkocHJ2OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYmxzLkZyLmlzVmFsaWQoQmlnSW50KCcweCcgKyBwcnYpKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFdoZXRoZXIgaW5wdXQgaXMgYSB2YWxpZCBCTFMgcHVibGljIGtleVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBwdWIgdGhlIHB1YmxpYyBrZXkgdG8gdmFsaWRhdGVcbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIGlucHV0IGlzIGEgdmFsaWQgcHVibGljIGtleSBvciBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRCTFNQdWJsaWNLZXkocHViOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBibHMuUG9pbnRHMS5mcm9tQ29tcHJlc3NlZEhleChzdHJpcEhleFByZWZpeChwdWIpKS5hc3NlcnRWYWxpZGl0eSgpO1xuICAgIHJldHVybiB0cnVlO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogUmV0dXJucyBhbiBoZXggc3RyaW5nIG9mIHRoZSBnaXZlbiBidWZmZXJcbiAqXG4gKiBAcGFyYW0ge0J1ZmZlciB8IFVpbnQ4QXJyYXl9IGJ1ZmZlciAtIHRoZSBidWZmZXIgdG8gYmUgY29udmVydGVkIHRvIGhleFxuICogQHJldHVybnMge3N0cmluZ30gLSB0aGUgaGV4IHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0hleChidWZmZXI6IEJ1ZmZlciB8IFVpbnQ4QXJyYXkpOiBzdHJpbmcge1xuICByZXR1cm4gaGV4LmVuY29kZShidWZmZXIsIHRydWUpO1xufVxuXG4vKipcbiAqIENoZWNrIGlmIGJhc2U1OCBkZWNvZGVkIHN0cmluZyBpcyBlcXVhbGUgdG8gbGVuZ3RoXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHZhbHVlIC0gc3RyaW5nIHRvIGJlIGNoZWNrZWRcbiAqIEBwYXJhbSB7bnVtYmVyfSBsZW5ndGggLSBleHBlY3RlZCBkZWNvZGVkIGxlbmd0aFxuICogQHJldHVybiB7Ym9vbGVhbn0gaWYgdGhlIHN0cmluZyBjYW4gZGVjb2RlZCBhcyBiYXNlNTggYW5kIG1hdGNoIHRoZSBleHBlY3RlZCBsZW5ndGhcbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gaXNCYXNlNTgodmFsdWU6IHN0cmluZywgbGVuZ3RoOiBudW1iZXIpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gISF2YWx1ZSAmJiBiczU4LmRlY29kZSh2YWx1ZSkubGVuZ3RoID09PSBsZW5ndGg7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgVWludDhBcnJheSBvZiB0aGUgZ2l2ZW4gaGV4IHN0cmluZ1xuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBzdHIgLSB0aGUgaGV4IHN0cmluZyB0byBiZSBjb252ZXJ0ZWRcbiAqIEByZXR1cm5zIHtzdHJpbmd9IC0gdGhlIFVpbnQ4QXJyYXkgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvVWludDhBcnJheShzdHI6IHN0cmluZyk6IFVpbnQ4QXJyYXkge1xuICByZXR1cm4gaGV4LmRlY29kZShzdHIpO1xufVxuIl19
@@ -5,7 +5,7 @@ import { EnterpriseData, EnterpriseFeatureFlag, IEnterprise } from '../enterpris
5
5
  import { Affirmations, Settlements } from '../trading';
6
6
  import { Wallet } from '../wallet';
7
7
  import { BitGoProofSignatures } from '../utils/tss/ecdsa';
8
- import { DeserializedNtilde } from '../../account-lib/mpc/tss/ecdsa/types';
8
+ import { EcdsaTypes } from '@bitgo/sdk-lib-mpc';
9
9
  export declare class Enterprise implements IEnterprise {
10
10
  private readonly bitgo;
11
11
  private readonly baseCoin;
@@ -75,13 +75,13 @@ export declare class Enterprise implements IEnterprise {
75
75
  * @param bitgoNitroChallengeProofSignature
76
76
  * @param challenge
77
77
  */
78
- uploadAndEnableTssEcdsaSigning(userPassword: string, bitgoInstChallengeProofSignature: Buffer, bitgoNitroChallengeProofSignature: Buffer, challenge?: DeserializedNtilde): Promise<void>;
78
+ uploadAndEnableTssEcdsaSigning(userPassword: string, bitgoInstChallengeProofSignature: Buffer, bitgoNitroChallengeProofSignature: Buffer, challenge?: EcdsaTypes.DeserializedNtildeWithProofs): Promise<void>;
79
79
  /**
80
80
  * Fetches the existing TSS ECDSA enterprise challenge if one exists.
81
81
  * Can be used with uploadAndEnableTssEcdsaSigning to re-sign the
82
82
  * enterprise challenge with new signatures.
83
83
  */
84
- getExistingTssEcdsaChallenge(): Promise<DeserializedNtilde>;
84
+ getExistingTssEcdsaChallenge(): Promise<EcdsaTypes.DeserializedNtildeWithProofs>;
85
85
  /**
86
86
  * Check if the enterprise has a set of featureFlags
87
87
  * @param flags
@@ -1 +1 @@
1
- {"version":3,"file":"enterprise.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/enterprise/enterprise.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEnF,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAc,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAG3E,qBAAa,UAAW,YAAW,WAAW;IAC5C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAY;IACrC,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,WAAW,EAAE,cAAc,CAAC;gBAEhC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc;IAiBjF;;;OAGG;IACH,GAAG,CAAC,KAAK,SAAK,GAAG,MAAM;IAIvB;;;OAGG;IACH,OAAO,CAAC,KAAK,SAAK,GAAG,MAAM;IAI3B;;;OAGG;IACG,WAAW,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQxE;;;OAGG;IACG,KAAK,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI7D;;;OAGG;IACG,oBAAoB,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI5E;;;OAGG;IACG,OAAO,CAAC,MAAM,GAAE,GAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAI7C;;;OAGG;IACG,UAAU,CAAC,MAAM,GAAE,GAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAIhD;;;OAGG;IACG,0BAA0B,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAIlF;;OAEG;IACH,WAAW,IAAI,WAAW;IAI1B;;OAEG;IACH,YAAY,IAAI,YAAY;IAI5B;;;OAGG;IACG,+BAA+B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAI1F;;;;;;;;OAQG;IACG,8BAA8B,CAClC,YAAY,EAAE,MAAM,EACpB,gCAAgC,EAAE,MAAM,EACxC,iCAAiC,EAAE,MAAM,EACzC,SAAS,CAAC,EAAE,kBAAkB,GAC7B,OAAO,CAAC,IAAI,CAAC;IAWhB;;;;OAIG;IACG,4BAA4B,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAcjE;;;OAGG;IACH,eAAe,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,OAAO;CAGzD"}
1
+ {"version":3,"file":"enterprise.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/enterprise/enterprise.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEnF,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAc,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,qBAAa,UAAW,YAAW,WAAW;IAC5C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAY;IACrC,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,WAAW,EAAE,cAAc,CAAC;gBAEhC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc;IAiBjF;;;OAGG;IACH,GAAG,CAAC,KAAK,SAAK,GAAG,MAAM;IAIvB;;;OAGG;IACH,OAAO,CAAC,KAAK,SAAK,GAAG,MAAM;IAI3B;;;OAGG;IACG,WAAW,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQxE;;;OAGG;IACG,KAAK,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI7D;;;OAGG;IACG,oBAAoB,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI5E;;;OAGG;IACG,OAAO,CAAC,MAAM,GAAE,GAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAI7C;;;OAGG;IACG,UAAU,CAAC,MAAM,GAAE,GAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAIhD;;;OAGG;IACG,0BAA0B,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAIlF;;OAEG;IACH,WAAW,IAAI,WAAW;IAI1B;;OAEG;IACH,YAAY,IAAI,YAAY;IAI5B;;;OAGG;IACG,+BAA+B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAI1F;;;;;;;;OAQG;IACG,8BAA8B,CAClC,YAAY,EAAE,MAAM,EACpB,gCAAgC,EAAE,MAAM,EACxC,iCAAiC,EAAE,MAAM,EACzC,SAAS,CAAC,EAAE,UAAU,CAAC,4BAA4B,GAClD,OAAO,CAAC,IAAI,CAAC;IAWhB;;;;OAIG;IACG,4BAA4B,IAAI,OAAO,CAAC,UAAU,CAAC,4BAA4B,CAAC;IAoBtF;;;OAGG;IACH,eAAe,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,OAAO;CAGzD"}
@@ -18,9 +18,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
18
18
  __setModuleDefault(result, mod);
19
19
  return result;
20
20
  };
21
- var __importDefault = (this && this.__importDefault) || function (mod) {
22
- return (mod && mod.__esModule) ? mod : { "default": mod };
23
- };
24
21
  Object.defineProperty(exports, "__esModule", { value: true });
25
22
  exports.Enterprise = void 0;
26
23
  /**
@@ -31,7 +28,7 @@ const internal_1 = require("../internal");
31
28
  const trading_1 = require("../trading");
32
29
  const wallet_1 = require("../wallet");
33
30
  const ecdsa_1 = require("../utils/tss/ecdsa");
34
- const ecdsa_2 = __importDefault(require("../../account-lib/mpc/tss/ecdsa"));
31
+ const sdk_lib_mpc_1 = require("@bitgo/sdk-lib-mpc");
35
32
  class Enterprise {
36
33
  constructor(bitgo, baseCoin, enterpriseData) {
37
34
  this.bitgo = bitgo;
@@ -153,10 +150,14 @@ class Enterprise {
153
150
  if (!enterpriseChallenge) {
154
151
  throw new Error('No existing ECDSA challenge on the enterprise.');
155
152
  }
156
- return ecdsa_2.default.deserializeNtilde({
153
+ if (!enterpriseChallenge.ntildeProof) {
154
+ throw new Error('Existing ECDSA challenge does not have a proof. Please contact your enterprise admin to set this up.');
155
+ }
156
+ return sdk_lib_mpc_1.EcdsaTypes.deserializeNtildeWithProofs({
157
157
  ntilde: enterpriseChallenge.ntilde,
158
158
  h1: enterpriseChallenge.h1,
159
159
  h2: enterpriseChallenge.h2,
160
+ ntildeProof: enterpriseChallenge.ntildeProof,
160
161
  });
161
162
  }
162
163
  /**
@@ -168,4 +169,4 @@ class Enterprise {
168
169
  }
169
170
  }
170
171
  exports.Enterprise = Enterprise;
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50ZXJwcmlzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9lbnRlcnByaXNlL2VudGVycHJpc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztHQUVHO0FBQ0gsMENBQTRCO0FBSTVCLDBDQUF5RDtBQUN6RCx3Q0FBdUQ7QUFDdkQsc0NBQW1DO0FBQ25DLDhDQUFzRTtBQUV0RSw0RUFBb0Q7QUFFcEQsTUFBYSxVQUFVO0lBT3JCLFlBQVksS0FBZ0IsRUFBRSxRQUFtQixFQUFFLGNBQThCO1FBQy9FLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztTQUN2RDtRQUNELElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7U0FDckQ7UUFDRCxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1NBQ3ZEO1FBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUM7UUFDbEMsSUFBSSxDQUFDLEVBQUUsR0FBRyxjQUFjLENBQUMsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxJQUFJLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQztJQUNsQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsR0FBRyxDQUFDLEtBQUssR0FBRyxFQUFFO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxD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QyxPQUFBLE1BQUEsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLDBDQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQSxFQUFBLENBQUMsQ0FBQztJQUMxRixDQUFDO0NBQ0Y7QUFyS0QsZ0NBcUtDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgSUJhc2VDb2luIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnLi4vYml0Z29CYXNlJztcbmltcG9ydCB7IEVudGVycHJpc2VEYXRhLCBFbnRlcnByaXNlRmVhdHVyZUZsYWcsIElFbnRlcnByaXNlIH0gZnJvbSAnLi4vZW50ZXJwcmlzZSc7XG5pbXBvcnQgeyBnZXRGaXJzdFBlbmRpbmdUcmFuc2FjdGlvbiB9IGZyb20gJy4uL2ludGVybmFsJztcbmltcG9ydCB7IEFmZmlybWF0aW9ucywgU2V0dGxlbWVudHMgfSBmcm9tICcuLi90cmFkaW5nJztcbmltcG9ydCB7IFdhbGxldCB9IGZyb20gJy4uL3dhbGxldCc7XG5pbXBvcnQgeyBCaXRHb1Byb29mU2lnbmF0dXJlcywgRWNkc2FVdGlscyB9IGZyb20gJy4uL3V0aWxzL3Rzcy9lY2RzYSc7XG5pbXBvcnQgeyBEZXNlcmlhbGl6ZWROdGlsZGUgfSBmcm9tICcuLi8uLi9hY2NvdW50LWxpYi9tcGMvdHNzL2VjZHNhL3R5cGVzJztcbmltcG9ydCBFY2RzYSBmcm9tICcuLi8uLi9hY2NvdW50LWxpYi9tcGMvdHNzL2VjZHNhJztcblxuZXhwb3J0IGNsYXNzIEVudGVycHJpc2UgaW1wbGVtZW50cyBJRW50ZXJwcmlzZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYml0Z286IEJpdEdvQmFzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBiYXNlQ29pbjogSUJhc2VDb2luO1xuICBwdWJsaWMgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IF9lbnRlcnByaXNlOiBFbnRlcnByaXNlRGF0YTtcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlLCBiYXNlQ29pbjogSUJhc2VDb2luLCBlbnRlcnByaXNlRGF0YTogRW50ZXJwcmlzZURhdGEpIHtcbiAgICB0aGlzLmJpdGdvID0gYml0Z287XG4gICAgdGhpcy5iYXNlQ29pbiA9IGJhc2VDb2luO1xuICAgIGlmICghXy5pc09iamVjdChlbnRlcnByaXNlRGF0YSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZW50ZXJwcmlzZURhdGEgaGFzIHRvIGJlIGFuIG9iamVjdCcpO1xuICAgIH1cbiAgICBpZiAoIV8uaXNTdHJpbmcoZW50ZXJwcmlzZURhdGEuaWQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2VudGVycHJpc2UgaWQgaGFzIHRvIGJlIGEgc3RyaW5nJyk7XG4gICAgfVxuICAgIGlmICghXy5pc1N0cmluZyhlbnRlcnByaXNlRGF0YS5uYW1lKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdlbnRlcnByaXNlIG5hbWUgaGFzIHRvIGJlIGEgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX2VudGVycHJpc2UgPSBlbnRlcnByaXNlRGF0YTtcbiAgICB0aGlzLmlkID0gZW50ZXJwcmlzZURhdGEuaWQ7XG4gICAgdGhpcy5uYW1lID0gZW50ZXJwcmlzZURhdGEubmFtZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbnRlcnByaXNlIFVSTCBmb3IgdjEgbWV0aG9kcywgc3VjaCBhcyBnZXR0aW5nIHVzZXJzXG4gICAqIEBwYXJhbSBxdWVyeVxuICAgKi9cbiAgdXJsKHF1ZXJ5ID0gJycpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmJpdGdvLnVybChgL2VudGVycHJpc2UvJHt0aGlzLmlkfSR7cXVlcnl9YCk7XG4gIH1cblxuICAvKipcbiAgICogRW50ZXJwcmlzZSBVUkwgZm9yIHYyIG1ldGhvZHMsIHN1Y2ggYXMgZ2V0dGluZyBmZWUgYWRkcmVzcyBiYWxhbmNlc1xuICAgKiBAcGFyYW0gcXVlcnlcbiAgICovXG4gIGNvaW5VcmwocXVlcnkgPSAnJyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUNvaW4udXJsKGAvZW50ZXJwcmlzZS8ke3RoaXMuaWR9JHtxdWVyeX1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIHdhbGxldHMgYXNzb2NpYXRlZCB3aXRoIHRoaXMgRW50ZXJwcmlzZVxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqL1xuICBhc3luYyBjb2luV2FsbGV0cyhwYXJhbXM6IFJlY29yZDxzdHJpbmcsIG5ldmVyPiA9IHt9KTogUHJvbWlzZTxXYWxsZXRbXT4ge1xuICAgIGNvbnN0IHdhbGxldERhdGEgPSAoYXdhaXQgdGhpcy5iaXRnby5nZXQodGhpcy5iYXNlQ29pbi51cmwoJy93YWxsZXQvZW50ZXJwcmlzZS8nICsgdGhpcy5pZCkpLnJlc3VsdCgpKSBhcyBhbnk7XG4gICAgd2FsbGV0RGF0YS53YWxsZXRzID0gd2FsbGV0RGF0YS53YWxsZXRzLm1hcCgodykgPT4ge1xuICAgICAgcmV0dXJuIG5ldyBXYWxsZXQodGhpcy5iaXRnbywgdGhpcy5iYXNlQ29pbiwgdyk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHdhbGxldERhdGE7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSB1c2VycyBhc3NvY2lhdGVkIHdpdGggdGhpcyBFbnRlcnByaXNlXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICovXG4gIGFzeW5jIHVzZXJzKHBhcmFtczogUmVjb3JkPHN0cmluZywgbmV2ZXI+ID0ge30pOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvLmdldCh0aGlzLnVybCgnL3VzZXInKSkucmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBmZWUgYWRkcmVzcyBiYWxhbmNlIGZvciB0aGlzIEVudGVycHJpc2VcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKi9cbiAgYXN5bmMgZ2V0RmVlQWRkcmVzc0JhbGFuY2UocGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBuZXZlcj4gPSB7fSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z28uZ2V0KHRoaXMuY29pblVybCgnL2ZlZUFkZHJlc3NCYWxhbmNlJykpLnJlc3VsdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIHVzZXIgdG8gdGhpcyBFbnRlcnByaXNlXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICovXG4gIGFzeW5jIGFkZFVzZXIocGFyYW1zOiBhbnkgPSB7fSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z28ucG9zdCh0aGlzLnVybCgnL3VzZXInKSkuc2VuZChwYXJhbXMpLnJlc3VsdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhIHVzZXIgZnJvbSB0aGlzIEVudGVycHJpc2VcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKi9cbiAgYXN5bmMgcmVtb3ZlVXNlcihwYXJhbXM6IGFueSA9IHt9KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnby5kZWwodGhpcy51cmwoJy91c2VyJykpLnNlbmQocGFyYW1zKS5yZXN1bHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGZpcnN0IHBlbmRpbmcgdHJhbnNhY3Rpb24gZm9yIHRoaXMgRW50ZXJwcmlzZVxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqL1xuICBhc3luYyBnZXRGaXJzdFBlbmRpbmdUcmFuc2FjdGlvbihwYXJhbXM6IFJlY29yZDxzdHJpbmcsIG5ldmVyPiA9IHt9KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gZ2V0Rmlyc3RQZW5kaW5nVHJhbnNhY3Rpb24oeyBlbnRlcnByaXNlSWQ6IHRoaXMuaWQgfSwgdGhpcy5iYXNlQ29pbiwgdGhpcy5iaXRnbyk7XG4gIH1cblxuICAvKipcbiAgICogTWFuYWdlIHNldHRsZW1lbnRzIGZvciBhbiBlbnRlcnByaXNlXG4gICAqL1xuICBzZXR0bGVtZW50cygpOiBTZXR0bGVtZW50cyB7XG4gICAgcmV0dXJuIG5ldyBTZXR0bGVtZW50cyh0aGlzLmJpdGdvLCB0aGlzLmlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYW5hZ2UgYWZmaXJtYXRpb25zIGZvciBhbiBlbnRlcnByaXNlXG4gICAqL1xuICBhZmZpcm1hdGlvbnMoKTogQWZmaXJtYXRpb25zIHtcbiAgICByZXR1cm4gbmV3IEFmZmlybWF0aW9ucyh0aGlzLmJpdGdvLCB0aGlzLmlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWZXJpZmllcyBhbmQgc2lnbnMgYml0Z28gcHJvb2ZzIGZvciB0aGUgZW50ZXJwcmlzZVxuICAgKiBAcGFyYW0gdXNlclBhc3N3b3JkIC0gZW50ZXJwcmlzZSBhZG1pbidzIGxvZ2luIHBhc3N3b3JkXG4gICAqL1xuICBhc3luYyB2ZXJpZnlFY2RzYUJpdEdvQ2hhbGxlbmdlUHJvb2ZzKHVzZXJQYXNzd29yZDogc3RyaW5nKTogUHJvbWlzZTxCaXRHb1Byb29mU2lnbmF0dXJlcz4ge1xuICAgIHJldHVybiBFY2RzYVV0aWxzLmdldFZlcmlmeUFuZFNpZ25CaXRHb0NoYWxsZW5nZXModGhpcy5iaXRnbywgdGhpcy5pZCwgdXNlclBhc3N3b3JkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYW5hZ2VzIGFsbCB0aGUgY2hhbGxlbmdlcyBhbmQgc2lnbmF0dXJlcyBhbmQgdXBsb2FkcyB0aGVtIHRvIGVuYWJsZVxuICAgKiBFQ0RTQSBzaWduaW5nIG9uIGVudGVycHJpc2UuIEFsc28gZ2VuZXJhdGVzIGEgY2xpZW50IHNpZGUgTnRpbGRlIGNoYWxsZW5nZVxuICAgKiBpZiBub3QgcHJvdmlkZWQsIGJ1dCBub3RlIHRoYXQgY2FuIHRha2UgYXBwcm94LiBhIG1pbnV0ZS5cbiAgICogQHBhcmFtIHVzZXJQYXNzd29yZFxuICAgKiBAcGFyYW0gYml0Z29JbnN0Q2hhbGxlbmdlUHJvb2ZTaWduYXR1cmVcbiAgICogQHBhcmFtIGJpdGdvTml0cm9DaGFsbGVuZ2VQcm9vZlNpZ25hdHVyZVxuICAgKiBAcGFyYW0gY2hhbGxlbmdlXG4gICAqL1xuICBhc3luYyB1cGxvYWRBbmRFbmFibGVUc3NFY2RzYVNpZ25pbmcoXG4gICAgdXNlclBhc3N3b3JkOiBzdHJpbmcsXG4gICAgYml0Z29JbnN0Q2hhbGxlbmdlUHJvb2ZTaWduYXR1cmU6IEJ1ZmZlcixcbiAgICBiaXRnb05pdHJvQ2hhbGxlbmdlUHJvb2ZTaWduYXR1cmU6IEJ1ZmZlcixcbiAgICBjaGFsbGVuZ2U/OiBEZXNlcmlhbGl6ZWROdGlsZGVcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgRWNkc2FVdGlscy5pbml0aWF0ZUNoYWxsZW5nZXNGb3JFbnRlcnByaXNlKFxuICAgICAgdGhpcy5iaXRnbyxcbiAgICAgIHRoaXMuaWQsXG4gICAgICB1c2VyUGFzc3dvcmQsXG4gICAgICBiaXRnb0luc3RDaGFsbGVuZ2VQcm9vZlNpZ25hdHVyZSxcbiAgICAgIGJpdGdvTml0cm9DaGFsbGVuZ2VQcm9vZlNpZ25hdHVyZSxcbiAgICAgIGNoYWxsZW5nZVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2hlcyB0aGUgZXhpc3RpbmcgVFNTIEVDRFNBIGVudGVycHJpc2UgY2hhbGxlbmdlIGlmIG9uZSBleGlzdHMuXG4gICAqIENhbiBiZSB1c2VkIHdpdGggdXBsb2FkQW5kRW5hYmxlVHNzRWNkc2FTaWduaW5nIHRvIHJlLXNpZ24gdGhlXG4gICAqIGVudGVycHJpc2UgY2hhbGxlbmdlIHdpdGggbmV3IHNpZ25hdHVyZXMuXG4gICAqL1xuICBhc3luYyBnZXRFeGlzdGluZ1Rzc0VjZHNhQ2hhbGxlbmdlKCk6IFByb21pc2U8RGVzZXJpYWxpemVkTnRpbGRlPiB7XG4gICAgY29uc3QgdXJsUGF0aCA9IGAvZW50ZXJwcmlzZS8ke3RoaXMuaWR9L3Rzc2NvbmZpZ2A7XG4gICAgY29uc3QgdHNzQ29uZmlnID0gYXdhaXQgdGhpcy5iaXRnby5nZXQodGhpcy5iaXRnby51cmwodXJsUGF0aCwgMikpLnNlbmQoKS5yZXN1bHQoKTtcbiAgICBjb25zdCBlbnRlcnByaXNlQ2hhbGxlbmdlID0gdHNzQ29uZmlnPy5lY2RzYS5jaGFsbGVuZ2U/LmVudGVycHJpc2U7XG4gICAgaWYgKCFlbnRlcnByaXNlQ2hhbGxlbmdlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGV4aXN0aW5nIEVDRFNBIGNoYWxsZW5nZSBvbiB0aGUgZW50ZXJwcmlzZS4nKTtcbiAgICB9XG4gICAgcmV0dXJuIEVjZHNhLmRlc2VyaWFsaXplTnRpbGRlKHtcbiAgICAgIG50aWxkZTogZW50ZXJwcmlzZUNoYWxsZW5nZS5udGlsZGUsXG4gICAgICBoMTogZW50ZXJwcmlzZUNoYWxsZW5nZS5oMSxcbiAgICAgIGgyOiBlbnRlcnByaXNlQ2hhbGxlbmdlLmgyLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqICBDaGVjayBpZiB0aGUgZW50ZXJwcmlzZSBoYXMgYSBzZXQgb2YgZmVhdHVyZUZsYWdzXG4gICAqIEBwYXJhbSBmbGFnc1xuICAgKi9cbiAgaGFzRmVhdHVyZUZsYWdzKGZsYWdzOiBFbnRlcnByaXNlRmVhdHVyZUZsYWdbXSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmbGFncy5ldmVyeSgodGFyZ2V0RmxhZykgPT4gdGhpcy5fZW50ZXJwcmlzZS5mZWF0dXJlRmxhZ3M/LmluY2x1ZGVzKHRhcmdldEZsYWcpKTtcbiAgfVxufVxuIl19
172
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50ZXJwcmlzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9lbnRlcnByaXNlL2VudGVycHJpc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztHQUVHO0FBQ0gsMENBQTRCO0FBSTVCLDBDQUF5RDtBQUN6RCx3Q0FBdUQ7QUFDdkQsc0NBQW1DO0FBQ25DLDhDQUFzRTtBQUN0RSxvREFBZ0Q7QUFFaEQsTUFBYSxVQUFVO0lBT3JCLFlBQVksS0FBZ0IsRUFBRSxRQUFtQixFQUFFLGNBQThCO1FBQy9FLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztTQUN2RDtRQUNELElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7U0FDckQ7UUFDRCxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1NBQ3ZEO1FBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUM7UUFDbEMsSUFBSSxDQUFDLEVBQUUsR0FBRyxjQUFjLENBQUMsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxJQUFJLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQztJQUNsQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsR0FBRyxDQUFDLEtBQUssR0FBRyxFQUFFO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFD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QUFXO1NBQzdDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSCxlQUFlLENBQUMsS0FBOEI7UUFDNUMsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsV0FBQyxPQUFBLE1BQUEsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLDBDQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQSxFQUFBLENBQUMsQ0FBQztJQUMxRixDQUFDO0NBQ0Y7QUEzS0QsZ0NBMktDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgSUJhc2VDb2luIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnLi4vYml0Z29CYXNlJztcbmltcG9ydCB7IEVudGVycHJpc2VEYXRhLCBFbnRlcnByaXNlRmVhdHVyZUZsYWcsIElFbnRlcnByaXNlIH0gZnJvbSAnLi4vZW50ZXJwcmlzZSc7XG5pbXBvcnQgeyBnZXRGaXJzdFBlbmRpbmdUcmFuc2FjdGlvbiB9IGZyb20gJy4uL2ludGVybmFsJztcbmltcG9ydCB7IEFmZmlybWF0aW9ucywgU2V0dGxlbWVudHMgfSBmcm9tICcuLi90cmFkaW5nJztcbmltcG9ydCB7IFdhbGxldCB9IGZyb20gJy4uL3dhbGxldCc7XG5pbXBvcnQgeyBCaXRHb1Byb29mU2lnbmF0dXJlcywgRWNkc2FVdGlscyB9IGZyb20gJy4uL3V0aWxzL3Rzcy9lY2RzYSc7XG5pbXBvcnQgeyBFY2RzYVR5cGVzIH0gZnJvbSAnQGJpdGdvL3Nkay1saWItbXBjJztcblxuZXhwb3J0IGNsYXNzIEVudGVycHJpc2UgaW1wbGVtZW50cyBJRW50ZXJwcmlzZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYml0Z286IEJpdEdvQmFzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBiYXNlQ29pbjogSUJhc2VDb2luO1xuICBwdWJsaWMgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IF9lbnRlcnByaXNlOiBFbnRlcnByaXNlRGF0YTtcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlLCBiYXNlQ29pbjogSUJhc2VDb2luLCBlbnRlcnByaXNlRGF0YTogRW50ZXJwcmlzZURhdGEpIHtcbiAgICB0aGlzLmJpdGdvID0gYml0Z287XG4gICAgdGhpcy5iYXNlQ29pbiA9IGJhc2VDb2luO1xuICAgIGlmICghXy5pc09iamVjdChlbnRlcnByaXNlRGF0YSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZW50ZXJwcmlzZURhdGEgaGFzIHRvIGJlIGFuIG9iamVjdCcpO1xuICAgIH1cbiAgICBpZiAoIV8uaXNTdHJpbmcoZW50ZXJwcmlzZURhdGEuaWQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2VudGVycHJpc2UgaWQgaGFzIHRvIGJlIGEgc3RyaW5nJyk7XG4gICAgfVxuICAgIGlmICghXy5pc1N0cmluZyhlbnRlcnByaXNlRGF0YS5uYW1lKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdlbnRlcnByaXNlIG5hbWUgaGFzIHRvIGJlIGEgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX2VudGVycHJpc2UgPSBlbnRlcnByaXNlRGF0YTtcbiAgICB0aGlzLmlkID0gZW50ZXJwcmlzZURhdGEuaWQ7XG4gICAgdGhpcy5uYW1lID0gZW50ZXJwcmlzZURhdGEubmFtZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbnRlcnByaXNlIFVSTCBmb3IgdjEgbWV0aG9kcywgc3VjaCBhcyBnZXR0aW5nIHVzZXJzXG4gICAqIEBwYXJhbSBxdWVyeVxuICAgKi9cbiAgdXJsKHF1ZXJ5ID0gJycpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmJpdGdvLnVybChgL2VudGVycHJpc2UvJHt0aGlzLmlkfSR7cXVlcnl9YCk7XG4gIH1cblxuICAvKipcbiAgICogRW50ZXJwcmlzZSBVUkwgZm9yIHYyIG1ldGhvZHMsIHN1Y2ggYXMgZ2V0dGluZyBmZWUgYWRkcmVzcyBiYWxhbmNlc1xuICAgKiBAcGFyYW0gcXVlcnlcbiAgICovXG4gIGNvaW5VcmwocXVlcnkgPSAnJyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZUNvaW4udXJsKGAvZW50ZXJwcmlzZS8ke3RoaXMuaWR9JHtxdWVyeX1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIHdhbGxldHMgYXNzb2NpYXRlZCB3aXRoIHRoaXMgRW50ZXJwcmlzZVxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqL1xuICBhc3luYyBjb2luV2FsbGV0cyhwYXJhbXM6IFJlY29yZDxzdHJpbmcsIG5ldmVyPiA9IHt9KTogUHJvbWlzZTxXYWxsZXRbXT4ge1xuICAgIGNvbnN0IHdhbGxldERhdGEgPSAoYXdhaXQgdGhpcy5iaXRnby5nZXQodGhpcy5iYXNlQ29pbi51cmwoJy93YWxsZXQvZW50ZXJwcmlzZS8nICsgdGhpcy5pZCkpLnJlc3VsdCgpKSBhcyBhbnk7XG4gICAgd2FsbGV0RGF0YS53YWxsZXRzID0gd2FsbGV0RGF0YS53YWxsZXRzLm1hcCgodykgPT4ge1xuICAgICAgcmV0dXJuIG5ldyBXYWxsZXQodGhpcy5iaXRnbywgdGhpcy5iYXNlQ29pbiwgdyk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHdhbGxldERhdGE7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSB1c2VycyBhc3NvY2lhdGVkIHdpdGggdGhpcyBFbnRlcnByaXNlXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICovXG4gIGFzeW5jIHVzZXJzKHBhcmFtczogUmVjb3JkPHN0cmluZywgbmV2ZXI+ID0ge30pOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvLmdldCh0aGlzLnVybCgnL3VzZXInKSkucmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBmZWUgYWRkcmVzcyBiYWxhbmNlIGZvciB0aGlzIEVudGVycHJpc2VcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKi9cbiAgYXN5bmMgZ2V0RmVlQWRkcmVzc0JhbGFuY2UocGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBuZXZlcj4gPSB7fSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z28uZ2V0KHRoaXMuY29pblVybCgnL2ZlZUFkZHJlc3NCYWxhbmNlJykpLnJlc3VsdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIHVzZXIgdG8gdGhpcyBFbnRlcnByaXNlXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICovXG4gIGFzeW5jIGFkZFVzZXIocGFyYW1zOiBhbnkgPSB7fSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z28ucG9zdCh0aGlzLnVybCgnL3VzZXInKSkuc2VuZChwYXJhbXMpLnJlc3VsdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhIHVzZXIgZnJvbSB0aGlzIEVudGVycHJpc2VcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKi9cbiAgYXN5bmMgcmVtb3ZlVXNlcihwYXJhbXM6IGFueSA9IHt9KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnby5kZWwodGhpcy51cmwoJy91c2VyJykpLnNlbmQocGFyYW1zKS5yZXN1bHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGZpcnN0IHBlbmRpbmcgdHJhbnNhY3Rpb24gZm9yIHRoaXMgRW50ZXJwcmlzZVxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqL1xuICBhc3luYyBnZXRGaXJzdFBlbmRpbmdUcmFuc2FjdGlvbihwYXJhbXM6IFJlY29yZDxzdHJpbmcsIG5ldmVyPiA9IHt9KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gZ2V0Rmlyc3RQZW5kaW5nVHJhbnNhY3Rpb24oeyBlbnRlcnByaXNlSWQ6IHRoaXMuaWQgfSwgdGhpcy5iYXNlQ29pbiwgdGhpcy5iaXRnbyk7XG4gIH1cblxuICAvKipcbiAgICogTWFuYWdlIHNldHRsZW1lbnRzIGZvciBhbiBlbnRlcnByaXNlXG4gICAqL1xuICBzZXR0bGVtZW50cygpOiBTZXR0bGVtZW50cyB7XG4gICAgcmV0dXJuIG5ldyBTZXR0bGVtZW50cyh0aGlzLmJpdGdvLCB0aGlzLmlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYW5hZ2UgYWZmaXJtYXRpb25zIGZvciBhbiBlbnRlcnByaXNlXG4gICAqL1xuICBhZmZpcm1hdGlvbnMoKTogQWZmaXJtYXRpb25zIHtcbiAgICByZXR1cm4gbmV3IEFmZmlybWF0aW9ucyh0aGlzLmJpdGdvLCB0aGlzLmlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWZXJpZmllcyBhbmQgc2lnbnMgYml0Z28gcHJvb2ZzIGZvciB0aGUgZW50ZXJwcmlzZVxuICAgKiBAcGFyYW0gdXNlclBhc3N3b3JkIC0gZW50ZXJwcmlzZSBhZG1pbidzIGxvZ2luIHBhc3N3b3JkXG4gICAqL1xuICBhc3luYyB2ZXJpZnlFY2RzYUJpdEdvQ2hhbGxlbmdlUHJvb2ZzKHVzZXJQYXNzd29yZDogc3RyaW5nKTogUHJvbWlzZTxCaXRHb1Byb29mU2lnbmF0dXJlcz4ge1xuICAgIHJldHVybiBFY2RzYVV0aWxzLmdldFZlcmlmeUFuZFNpZ25CaXRHb0NoYWxsZW5nZXModGhpcy5iaXRnbywgdGhpcy5pZCwgdXNlclBhc3N3b3JkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYW5hZ2VzIGFsbCB0aGUgY2hhbGxlbmdlcyBhbmQgc2lnbmF0dXJlcyBhbmQgdXBsb2FkcyB0aGVtIHRvIGVuYWJsZVxuICAgKiBFQ0RTQSBzaWduaW5nIG9uIGVudGVycHJpc2UuIEFsc28gZ2VuZXJhdGVzIGEgY2xpZW50IHNpZGUgTnRpbGRlIGNoYWxsZW5nZVxuICAgKiBpZiBub3QgcHJvdmlkZWQsIGJ1dCBub3RlIHRoYXQgY2FuIHRha2UgYXBwcm94LiBhIG1pbnV0ZS5cbiAgICogQHBhcmFtIHVzZXJQYXNzd29yZFxuICAgKiBAcGFyYW0gYml0Z29JbnN0Q2hhbGxlbmdlUHJvb2ZTaWduYXR1cmVcbiAgICogQHBhcmFtIGJpdGdvTml0cm9DaGFsbGVuZ2VQcm9vZlNpZ25hdHVyZVxuICAgKiBAcGFyYW0gY2hhbGxlbmdlXG4gICAqL1xuICBhc3luYyB1cGxvYWRBbmRFbmFibGVUc3NFY2RzYVNpZ25pbmcoXG4gICAgdXNlclBhc3N3b3JkOiBzdHJpbmcsXG4gICAgYml0Z29JbnN0Q2hhbGxlbmdlUHJvb2ZTaWduYXR1cmU6IEJ1ZmZlcixcbiAgICBiaXRnb05pdHJvQ2hhbGxlbmdlUHJvb2ZTaWduYXR1cmU6IEJ1ZmZlcixcbiAgICBjaGFsbGVuZ2U/OiBFY2RzYVR5cGVzLkRlc2VyaWFsaXplZE50aWxkZVdpdGhQcm9vZnNcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgRWNkc2FVdGlscy5pbml0aWF0ZUNoYWxsZW5nZXNGb3JFbnRlcnByaXNlKFxuICAgICAgdGhpcy5iaXRnbyxcbiAgICAgIHRoaXMuaWQsXG4gICAgICB1c2VyUGFzc3dvcmQsXG4gICAgICBiaXRnb0luc3RDaGFsbGVuZ2VQcm9vZlNpZ25hdHVyZSxcbiAgICAgIGJpdGdvTml0cm9DaGFsbGVuZ2VQcm9vZlNpZ25hdHVyZSxcbiAgICAgIGNoYWxsZW5nZVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2hlcyB0aGUgZXhpc3RpbmcgVFNTIEVDRFNBIGVudGVycHJpc2UgY2hhbGxlbmdlIGlmIG9uZSBleGlzdHMuXG4gICAqIENhbiBiZSB1c2VkIHdpdGggdXBsb2FkQW5kRW5hYmxlVHNzRWNkc2FTaWduaW5nIHRvIHJlLXNpZ24gdGhlXG4gICAqIGVudGVycHJpc2UgY2hhbGxlbmdlIHdpdGggbmV3IHNpZ25hdHVyZXMuXG4gICAqL1xuICBhc3luYyBnZXRFeGlzdGluZ1Rzc0VjZHNhQ2hhbGxlbmdlKCk6IFByb21pc2U8RWNkc2FUeXBlcy5EZXNlcmlhbGl6ZWROdGlsZGVXaXRoUHJvb2ZzPiB7XG4gICAgY29uc3QgdXJsUGF0aCA9IGAvZW50ZXJwcmlzZS8ke3RoaXMuaWR9L3Rzc2NvbmZpZ2A7XG4gICAgY29uc3QgdHNzQ29uZmlnID0gYXdhaXQgdGhpcy5iaXRnby5nZXQodGhpcy5iaXRnby51cmwodXJsUGF0aCwgMikpLnNlbmQoKS5yZXN1bHQoKTtcbiAgICBjb25zdCBlbnRlcnByaXNlQ2hhbGxlbmdlID0gdHNzQ29uZmlnPy5lY2RzYS5jaGFsbGVuZ2U/LmVudGVycHJpc2U7XG4gICAgaWYgKCFlbnRlcnByaXNlQ2hhbGxlbmdlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGV4aXN0aW5nIEVDRFNBIGNoYWxsZW5nZSBvbiB0aGUgZW50ZXJwcmlzZS4nKTtcbiAgICB9XG4gICAgaWYgKCFlbnRlcnByaXNlQ2hhbGxlbmdlLm50aWxkZVByb29mKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdFeGlzdGluZyBFQ0RTQSBjaGFsbGVuZ2UgZG9lcyBub3QgaGF2ZSBhIHByb29mLiBQbGVhc2UgY29udGFjdCB5b3VyIGVudGVycHJpc2UgYWRtaW4gdG8gc2V0IHRoaXMgdXAuJ1xuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIEVjZHNhVHlwZXMuZGVzZXJpYWxpemVOdGlsZGVXaXRoUHJvb2ZzKHtcbiAgICAgIG50aWxkZTogZW50ZXJwcmlzZUNoYWxsZW5nZS5udGlsZGUsXG4gICAgICBoMTogZW50ZXJwcmlzZUNoYWxsZW5nZS5oMSxcbiAgICAgIGgyOiBlbnRlcnByaXNlQ2hhbGxlbmdlLmgyLFxuICAgICAgbnRpbGRlUHJvb2Y6IGVudGVycHJpc2VDaGFsbGVuZ2UubnRpbGRlUHJvb2YsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogIENoZWNrIGlmIHRoZSBlbnRlcnByaXNlIGhhcyBhIHNldCBvZiBmZWF0dXJlRmxhZ3NcbiAgICogQHBhcmFtIGZsYWdzXG4gICAqL1xuICBoYXNGZWF0dXJlRmxhZ3MoZmxhZ3M6IEVudGVycHJpc2VGZWF0dXJlRmxhZ1tdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZsYWdzLmV2ZXJ5KCh0YXJnZXRGbGFnKSA9PiB0aGlzLl9lbnRlcnByaXNlLmZlYXR1cmVGbGFncz8uaW5jbHVkZXModGFyZ2V0RmxhZykpO1xuICB9XG59XG4iXX0=
@@ -1,8 +1,8 @@
1
1
  /// <reference types="node" />
2
+ import { EcdsaTypes } from '@bitgo/sdk-lib-mpc';
2
3
  import { ISettlements, IAffirmations } from '../trading';
3
4
  import { IWallet } from '../wallet';
4
5
  import { BitGoProofSignatures } from '../utils/tss/ecdsa';
5
- import { DeserializedNtilde } from '../../account-lib/mpc/tss/ecdsa/types';
6
6
  export declare type EnterpriseFeatureFlag = 'useEnterpriseEcdsaTssChallenge';
7
7
  export interface EnterpriseData {
8
8
  id: string;
@@ -21,8 +21,8 @@ export interface IEnterprise {
21
21
  settlements(): ISettlements;
22
22
  affirmations(): IAffirmations;
23
23
  verifyEcdsaBitGoChallengeProofs(userPassword: string): Promise<BitGoProofSignatures>;
24
- uploadAndEnableTssEcdsaSigning(userPassword: string, bitgoInstChallengeProofSignature: Buffer, bitgoNitroChallengeProofSignature: Buffer, challenge?: DeserializedNtilde): Promise<void>;
25
- getExistingTssEcdsaChallenge(): Promise<DeserializedNtilde>;
24
+ uploadAndEnableTssEcdsaSigning(userPassword: string, bitgoInstChallengeProofSignature: Buffer, bitgoNitroChallengeProofSignature: Buffer, challenge?: EcdsaTypes.DeserializedNtildeWithProofs): Promise<void>;
25
+ getExistingTssEcdsaChallenge(): Promise<EcdsaTypes.DeserializedNtildeWithProofs>;
26
26
  hasFeatureFlags(flags: EnterpriseFeatureFlag[]): boolean;
27
27
  }
28
28
  //# sourceMappingURL=iEnterprise.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"iEnterprise.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/enterprise/iEnterprise.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,oBAAY,qBAAqB,GAAG,gCAAgC,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAChE,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACpD,oBAAoB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACnE,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,0BAA0B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACzE,WAAW,IAAI,YAAY,CAAC;IAC5B,YAAY,IAAI,aAAa,CAAC;IAC9B,+BAA+B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACrF,8BAA8B,CAC5B,YAAY,EAAE,MAAM,EACpB,gCAAgC,EAAE,MAAM,EACxC,iCAAiC,EAAE,MAAM,EACzC,SAAS,CAAC,EAAE,kBAAkB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,4BAA4B,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5D,eAAe,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;CAC1D"}
1
+ {"version":3,"file":"iEnterprise.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/enterprise/iEnterprise.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,oBAAY,qBAAqB,GAAG,gCAAgC,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAChE,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACpD,oBAAoB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACnE,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,0BAA0B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACzE,WAAW,IAAI,YAAY,CAAC;IAC5B,YAAY,IAAI,aAAa,CAAC;IAC9B,+BAA+B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACrF,8BAA8B,CAC5B,YAAY,EAAE,MAAM,EACpB,gCAAgC,EAAE,MAAM,EACxC,iCAAiC,EAAE,MAAM,EACzC,SAAS,CAAC,EAAE,UAAU,CAAC,4BAA4B,GAClD,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,4BAA4B,IAAI,OAAO,CAAC,UAAU,CAAC,4BAA4B,CAAC,CAAC;IACjF,eAAe,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;CAC1D"}
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaUVudGVycHJpc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vZW50ZXJwcmlzZS9pRW50ZXJwcmlzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVNldHRsZW1lbnRzLCBJQWZmaXJtYXRpb25zIH0gZnJvbSAnLi4vdHJhZGluZyc7XG5pbXBvcnQgeyBJV2FsbGV0IH0gZnJvbSAnLi4vd2FsbGV0JztcbmltcG9ydCB7IEJ1ZmZlciB9IGZyb20gJ2J1ZmZlcic7XG5pbXBvcnQgeyBCaXRHb1Byb29mU2lnbmF0dXJlcyB9IGZyb20gJy4uL3V0aWxzL3Rzcy9lY2RzYSc7XG5pbXBvcnQgeyBEZXNlcmlhbGl6ZWROdGlsZGUgfSBmcm9tICcuLi8uLi9hY2NvdW50LWxpYi9tcGMvdHNzL2VjZHNhL3R5cGVzJztcblxuZXhwb3J0IHR5cGUgRW50ZXJwcmlzZUZlYXR1cmVGbGFnID0gJ3VzZUVudGVycHJpc2VFY2RzYVRzc0NoYWxsZW5nZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW50ZXJwcmlzZURhdGEge1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGZlYXR1cmVGbGFncz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElFbnRlcnByaXNlIHtcbiAgdXJsKHF1ZXJ5Pzogc3RyaW5nKTogc3RyaW5nO1xuICBjb2luVXJsKHF1ZXJ5Pzogc3RyaW5nKTogc3RyaW5nO1xuICBjb2luV2FsbGV0cyhwYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBuZXZlcj4pOiBQcm9taXNlPElXYWxsZXRbXT47XG4gIHVzZXJzKHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIG5ldmVyPik6IFByb21pc2U8YW55PjtcbiAgZ2V0RmVlQWRkcmVzc0JhbGFuY2UocGFyYW1zPzogUmVjb3JkPHN0cmluZywgbmV2ZXI+KTogUHJvbWlzZTxhbnk+O1xuICBhZGRVc2VyKHBhcmFtcz86IGFueSk6IFByb21pc2U8YW55PjtcbiAgcmVtb3ZlVXNlcihwYXJhbXM/OiBhbnkpOiBQcm9taXNlPGFueT47XG4gIGdldEZpcnN0UGVuZGluZ1RyYW5zYWN0aW9uKHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIG5ldmVyPik6IFByb21pc2U8YW55PjtcbiAgc2V0dGxlbWVudHMoKTogSVNldHRsZW1lbnRzO1xuICBhZmZpcm1hdGlvbnMoKTogSUFmZmlybWF0aW9ucztcbiAgdmVyaWZ5RWNkc2FCaXRHb0NoYWxsZW5nZVByb29mcyh1c2VyUGFzc3dvcmQ6IHN0cmluZyk6IFByb21pc2U8Qml0R29Qcm9vZlNpZ25hdHVyZXM+O1xuICB1cGxvYWRBbmRFbmFibGVUc3NFY2RzYVNpZ25pbmcoXG4gICAgdXNlclBhc3N3b3JkOiBzdHJpbmcsXG4gICAgYml0Z29JbnN0Q2hhbGxlbmdlUHJvb2ZTaWduYXR1cmU6IEJ1ZmZlcixcbiAgICBiaXRnb05pdHJvQ2hhbGxlbmdlUHJvb2ZTaWduYXR1cmU6IEJ1ZmZlcixcbiAgICBjaGFsbGVuZ2U/OiBEZXNlcmlhbGl6ZWROdGlsZGVcbiAgKTogUHJvbWlzZTx2b2lkPjtcbiAgZ2V0RXhpc3RpbmdUc3NFY2RzYUNoYWxsZW5nZSgpOiBQcm9taXNlPERlc2VyaWFsaXplZE50aWxkZT47XG4gIGhhc0ZlYXR1cmVGbGFncyhmbGFnczogRW50ZXJwcmlzZUZlYXR1cmVGbGFnW10pOiBib29sZWFuO1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaUVudGVycHJpc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vZW50ZXJwcmlzZS9pRW50ZXJwcmlzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWNkc2FUeXBlcyB9IGZyb20gJ0BiaXRnby9zZGstbGliLW1wYyc7XG5cbmltcG9ydCB7IElTZXR0bGVtZW50cywgSUFmZmlybWF0aW9ucyB9IGZyb20gJy4uL3RyYWRpbmcnO1xuaW1wb3J0IHsgSVdhbGxldCB9IGZyb20gJy4uL3dhbGxldCc7XG5pbXBvcnQgeyBCdWZmZXIgfSBmcm9tICdidWZmZXInO1xuaW1wb3J0IHsgQml0R29Qcm9vZlNpZ25hdHVyZXMgfSBmcm9tICcuLi91dGlscy90c3MvZWNkc2EnO1xuXG5leHBvcnQgdHlwZSBFbnRlcnByaXNlRmVhdHVyZUZsYWcgPSAndXNlRW50ZXJwcmlzZUVjZHNhVHNzQ2hhbGxlbmdlJztcblxuZXhwb3J0IGludGVyZmFjZSBFbnRlcnByaXNlRGF0YSB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgZmVhdHVyZUZsYWdzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUVudGVycHJpc2Uge1xuICB1cmwocXVlcnk/OiBzdHJpbmcpOiBzdHJpbmc7XG4gIGNvaW5VcmwocXVlcnk/OiBzdHJpbmcpOiBzdHJpbmc7XG4gIGNvaW5XYWxsZXRzKHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIG5ldmVyPik6IFByb21pc2U8SVdhbGxldFtdPjtcbiAgdXNlcnMocGFyYW1zPzogUmVjb3JkPHN0cmluZywgbmV2ZXI+KTogUHJvbWlzZTxhbnk+O1xuICBnZXRGZWVBZGRyZXNzQmFsYW5jZShwYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBuZXZlcj4pOiBQcm9taXNlPGFueT47XG4gIGFkZFVzZXIocGFyYW1zPzogYW55KTogUHJvbWlzZTxhbnk+O1xuICByZW1vdmVVc2VyKHBhcmFtcz86IGFueSk6IFByb21pc2U8YW55PjtcbiAgZ2V0Rmlyc3RQZW5kaW5nVHJhbnNhY3Rpb24ocGFyYW1zPzogUmVjb3JkPHN0cmluZywgbmV2ZXI+KTogUHJvbWlzZTxhbnk+O1xuICBzZXR0bGVtZW50cygpOiBJU2V0dGxlbWVudHM7XG4gIGFmZmlybWF0aW9ucygpOiBJQWZmaXJtYXRpb25zO1xuICB2ZXJpZnlFY2RzYUJpdEdvQ2hhbGxlbmdlUHJvb2ZzKHVzZXJQYXNzd29yZDogc3RyaW5nKTogUHJvbWlzZTxCaXRHb1Byb29mU2lnbmF0dXJlcz47XG4gIHVwbG9hZEFuZEVuYWJsZVRzc0VjZHNhU2lnbmluZyhcbiAgICB1c2VyUGFzc3dvcmQ6IHN0cmluZyxcbiAgICBiaXRnb0luc3RDaGFsbGVuZ2VQcm9vZlNpZ25hdHVyZTogQnVmZmVyLFxuICAgIGJpdGdvTml0cm9DaGFsbGVuZ2VQcm9vZlNpZ25hdHVyZTogQnVmZmVyLFxuICAgIGNoYWxsZW5nZT86IEVjZHNhVHlwZXMuRGVzZXJpYWxpemVkTnRpbGRlV2l0aFByb29mc1xuICApOiBQcm9taXNlPHZvaWQ+O1xuICBnZXRFeGlzdGluZ1Rzc0VjZHNhQ2hhbGxlbmdlKCk6IFByb21pc2U8RWNkc2FUeXBlcy5EZXNlcmlhbGl6ZWROdGlsZGVXaXRoUHJvb2ZzPjtcbiAgaGFzRmVhdHVyZUZsYWdzKGZsYWdzOiBFbnRlcnByaXNlRmVhdHVyZUZsYWdbXSk6IGJvb2xlYW47XG59XG4iXX0=
@@ -22,6 +22,7 @@ interface EnvironmentTemplate {
22
22
  nearNodeUrls: string[];
23
23
  solNodeUrl: string;
24
24
  adaNodeUrl: string;
25
+ atomNodeUrl: string;
25
26
  dotNodeUrls: string[];
26
27
  tronNodes: {
27
28
  full: string;
@@ -1 +1 @@
1
- {"version":3,"file":"environments.d.ts","sourceRoot":"","sources":["../../../src/bitgo/environments.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,UAAU,mBAAmB;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,SAAS,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,wBAAwB,EAAE,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,WAAY,SAAQ,mBAAmB;IACtD,GAAG,EAAE,MAAM,CAAC;IACZ,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;EAU9B,CAAC;AAEH,oBAAY,eAAe,GACvB,MAAM,GACN,SAAS,GACT,MAAM,GACN,KAAK,GACL,QAAQ,GACR,OAAO,GACP,gBAAgB,GAChB,MAAM,GACN,WAAW,GACX,WAAW,GACX,UAAU,GACV,aAAa,GACb,QAAQ,GACR,QAAQ,CAAC;AAEb,oBAAY,oBAAoB,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;AAE7F,oBAAY,YAAY,GAAG;KAAG,CAAC,IAAI,eAAe,GAAG,WAAW;CAAE,CAAC;AAGnE,eAAO,MAAM,iBAAiB,EAAE;KAAG,CAAC,IAAI,oBAAoB,GAAG,eAAe;CAM7E,CAAC;AA+DF,eAAO,MAAM,YAAY,EAAE,YAiF1B,CAAC"}
1
+ {"version":3,"file":"environments.d.ts","sourceRoot":"","sources":["../../../src/bitgo/environments.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,UAAU,mBAAmB;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,SAAS,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,wBAAwB,EAAE,OAAO,CAAC;CACnC;AAED,MAAM,WAAW,WAAY,SAAQ,mBAAmB;IACtD,GAAG,EAAE,MAAM,CAAC;IACZ,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;EAU9B,CAAC;AAEH,oBAAY,eAAe,GACvB,MAAM,GACN,SAAS,GACT,MAAM,GACN,KAAK,GACL,QAAQ,GACR,OAAO,GACP,gBAAgB,GAChB,MAAM,GACN,WAAW,GACX,WAAW,GACX,UAAU,GACV,aAAa,GACb,QAAQ,GACR,QAAQ,CAAC;AAEb,oBAAY,oBAAoB,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;AAE7F,oBAAY,YAAY,GAAG;KAAG,CAAC,IAAI,eAAe,GAAG,WAAW;CAAE,CAAC;AAGnE,eAAO,MAAM,iBAAiB,EAAE;KAAG,CAAC,IAAI,oBAAoB,GAAG,eAAe;CAM7E,CAAC;AAiEF,eAAO,MAAM,YAAY,EAAE,YAiF1B,CAAC"}
@@ -38,6 +38,7 @@ const mainnetBase = {
38
38
  nearNodeUrls: ['https://rpc.mainnet.near.org'],
39
39
  solNodeUrl: 'https://api.mainnet-beta.solana.com',
40
40
  adaNodeUrl: 'https://api.koios.rest/api/v0',
41
+ atomNodeUrl: 'https://rest.cosmos.directory/cosmoshub/',
41
42
  dotNodeUrls: ['wss://rpc.polkadot.io'],
42
43
  tronNodes: {
43
44
  full: 'https://api.trongrid.io',
@@ -66,6 +67,7 @@ const testnetBase = {
66
67
  nearNodeUrls: ['https://rpc.testnet.near.org'],
67
68
  solNodeUrl: 'https://api.devnet.solana.com',
68
69
  adaNodeUrl: 'https://preprod.koios.rest/api/v0',
70
+ atomNodeUrl: 'https://rest.sentry-02.theta-testnet.polypore.xyz/',
69
71
  dotNodeUrls: ['wss://westend-rpc.polkadot.io'],
70
72
  tronNodes: {
71
73
  full: 'http://47.252.81.135:8090',
@@ -155,4 +157,4 @@ exports.Environments = {
155
157
  stellarFederationServerUrl: 'https://app.bitgo-dev.com/api/v2/txlm/federation',
156
158
  }),
157
159
  };
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vudmlyb25tZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFzQ2EsUUFBQSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtLQUN4SDtJQUNELE9BQU8sRUFBRTtRQUNQLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtRQUN2SCxHQUFHLEVBQUUsaUhBQWlIO0tBQ3ZIO0NBQ0YsQ0FBQyxDQUFDO0FBc0JILHdGQUF3RjtBQUMzRSxRQUFBLGlCQUFpQixHQUFxRDtJQUNqRixVQUFVLEVBQUUsTUFBTTtJQUNsQixNQUFNLEVBQUUsTUFBTTtJQUNkLE1BQU0sRUFBRSxNQUFNO0lBQ2QsS0FBSyxFQUFFLEtBQUs7SUFDWixRQUFRLEVBQUUsUUFBUTtDQUNuQixDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQXdCO0lBQ3ZDLE9BQU8sRUFBRSxTQUFzQjtJQUMvQixjQUFjLEVBQUUsb0NBQW9DO0lBQ3BELFVBQVUsRUFBRSwyQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSTtJQUMvQyxPQUFPLEVBQUUsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUk7SUFDekMsa0JBQWtCLEVBQUUsOEJBQThCO0lBQ2xELGdCQUFnQixFQUFFLDBCQUEwQjtJQUM1QyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtJQUNsRCxnQkFBZ0IsRUFBRSwwQkFBMEI7SUFDNUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7SUFDbEQsbUJBQW1CLEVBQUUsNEJBQTRCO0lBQ2pELHNCQUFzQixFQUFFLGlDQUFpQztJQUN6RCxrQkFBa0IsRUFBRSw2QkFBNkI7SUFDakQsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUI7SUFDdEQsV0FBVyxFQUFFLENBQUMsMkJBQTJCLEVBQUUsMkJBQTJCLEVBQUUsMkJBQTJCLENBQUM7SUFDcEcsWUFBWSxFQUFFLENBQUMsOEJBQThCLENBQUM7SUFDOUMsVUFBVSxFQUFFLHFDQUFxQztJQUNqRCxVQUFVLEVBQUUsK0JBQStCO0lBQzNDLFdBQVcsRUFBRSxDQUFDLHVCQUF1QixDQUFDO0lBQ3RDLFNBQVMsRUFBRTtRQUNULElBQUksRUFBRSx5QkFBeUI7UUFDL0IsUUFBUSxFQUFFLHlCQUF5QjtLQUNwQztJQUNELHdCQUF3QixFQUFFLElBQUk7Q0FDL0IsQ0FBQztBQUVGLE1BQU0sV0FBVyxHQUF3QjtJQUN2QyxPQUFPLEVBQUUsU0FBc0I7SUFDL0IsY0FBYyxFQUFFLG9DQUFvQztJQUNwRCxVQUFVLEVBQUUsMkJBQW1CLENBQUMsVUFBVSxDQUFDLElBQUk7SUFDL0MsT0FBTyxFQUFFLDJCQUFtQixDQUFDLE9BQU8sQ0FBQyxJQUFJO0lBQ3pDLGtCQUFrQixFQUFFLHNDQUFzQztJQUMxRCxnQkFBZ0IsRUFBRSxpQ0FBaUM7SUFDbkQsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7SUFDbEQsZ0JBQWdCLEVBQUUsa0NBQWtDO0lBQ3BELGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO0lBQ2xELG1CQUFtQixFQUFFLDRCQUE0QjtJQUNqRCxzQkFBc0IsRUFBRSxpQ0FBaUM7SUFDekQsa0JBQWtCLEVBQUUscUNBQXFDO0lBQ3pELG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCO0lBQ3RELGlDQUFpQztJQUNqQyxtRUFBbUU7SUFDbkUsOEhBQThIO0lBQzlILFdBQVcsRUFBRSxDQUFDLHVCQUF1QixFQUFFLGdDQUFnQyxDQUFDO0lBQ3hFLFlBQVksRUFBRSxDQUFDLDhCQUE4QixDQUFDO0lBQzlDLFVBQVUsRUFBRSwrQkFBK0I7SUFDM0MsVUFBVSxFQUFFLG1DQUFtQztJQUMvQyxXQUFXLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztJQUM5QyxTQUFTLEVBQUU7UUFDVCxJQUFJLEVBQUUsMkJBQTJCO1FBQ2pDLFFBQVEsRUFBRSwyQkFBMkI7S0FDdEM7SUFDRCx3QkFBd0IsRUFBRSxLQUFLO0NBQ2hDLENBQUM7QUFFRixNQUFNLE9BQU8sR0FBd0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFO0lBQ2xFLE9BQU8sRUFBRSwyQkFBbUIsQ0FBQyxPQUFPLENBQUMsR0FBRztJQUN4Qyx3QkFBd0IsRUFBRSxLQUFLO0NBQ2hDLENBQUMsQ0FBQztBQUVILHdDQUF3QztBQUMzQixRQUFBLFlBQVksR0FBaUI7SUFDeEMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRTtRQUNuQyxHQUFHLEVBQUUsdUJBQXVCO1FBQzVCLDBCQUEwQixFQUFFLDZDQUE2QztLQUMxRSxDQUFDO0lBQ0YsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRTtRQUNuQyxHQUFHLEVBQUUsNEJBQTRCO1FBQ2pDLDBCQUEwQixFQUFFLG1EQUFtRDtLQUNoRixDQUFDO0lBQ0YsR0FBRyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRTtRQUM5QixHQUFHLEVBQUUsMkJBQTJCO1FBQ2hDLDBCQUEwQixFQUFFLGtEQUFrRDtLQUMvRSxDQUFDO0lBQ0YsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRTtRQUNqQyxHQUFHLEVBQUUsOEJBQThCO1FBQ25DLDBCQUEwQixFQUFFLG9EQUFvRDtLQUNqRixDQUFDO0lBQ0YsT0FBTyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRTtRQUN0QyxHQUFHLEVBQUUsK0JBQStCO1FBQ3BDLDBCQUEwQixFQUFFLHNEQUFzRDtLQUNuRixDQUFDO0lBQ0YsS0FBSyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRTtRQUNoQyxHQUFHLEVBQUUsd0JBQXdCO1FBQzdCLDBCQUEwQixFQUFFLCtDQUErQztLQUM1RSxDQUFDO0lBQ0YsY0FBYyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRTtRQUN6QyxHQUFHLEVBQUUsdUJBQXVCO1FBQzVCLDBCQUEwQixFQUFFLDhDQUE4QztLQUMzRSxDQUFDO0lBQ0YsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRTtRQUMvQixHQUFHLEVBQUUsdUJBQXVCO1FBQzVCLDBCQUEwQixFQUFFLDhDQUE4QztRQUMxRSxnQkFBZ0IsRUFBRSxzQ0FBc0M7UUFDeEQsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7UUFDbEQsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7UUFDbEQsZ0JBQWdCLEVBQUUsdUNBQXVDO1FBQ3pELG1CQUFtQixFQUFFLDRCQUE0QjtLQUNsRCxDQUFDO0lBQ0YsU0FBUyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRTtRQUN4QyxHQUFHLEVBQUUseUJBQXlCO1FBQzlCLDBCQUEwQixFQUFFLCtDQUErQztLQUM1RSxDQUFDO0lBQ0YsU0FBUyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRTtRQUN4QyxHQUFHLEVBQUUsOEJBQThCO1FBQ25DLDBCQUEwQixFQUFFLHFEQUFxRDtLQUNsRixDQUFDO0lBQ0YsUUFBUSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRTtRQUNuQyxHQUFHLEVBQUUsNkJBQTZCO1FBQ2xDLDBCQUEwQixFQUFFLG9EQUFvRDtLQUNqRixDQUFDO0lBQ0YsV0FBVyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRTtRQUN0QyxHQUFHLEVBQUUsZ0NBQWdDO1FBQ3JDLDBCQUEwQixFQUFFLHNEQUFzRDtLQUNuRixDQUFDO0lBQ0YsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRTtRQUNyQyxvRUFBb0U7UUFDcEUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXNCO1FBQ3ZDLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLDRCQUF5QztRQUM5RCxPQUFPLEVBQ0wsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEtBQUssWUFBWSxDQUFDLENBQUMsQ0FBQywyQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQywyQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSTtRQUM3RyxrQkFBa0IsRUFDaEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyw0QkFBNEIsS0FBSyxTQUFTO1lBQ3BELENBQUMsQ0FBQyxzQ0FBc0M7WUFDeEMsQ0FBQyxDQUFDLDhCQUE4QjtRQUNwQyxnQkFBZ0IsRUFDZCxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixLQUFLLFVBQVU7WUFDdEQsQ0FBQyxDQUFDLGlDQUFpQztZQUNuQyxDQUFDLENBQUMsMEJBQTBCO1FBQ2hDLDBCQUEwQixFQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLDRCQUE0QixLQUFLLFNBQVM7WUFDcEQsQ0FBQyxDQUFDLFdBQVcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIseUJBQXlCO1lBQ3ZFLENBQUMsQ0FBQyxXQUFXLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLHdCQUF3QjtRQUMxRSxVQUFVLEVBQ1IsT0FBTyxDQUFDLEdBQUcsQ0FBQyw0QkFBNEIsS0FBSyxTQUFTO1lBQ3BELENBQUMsQ0FBQywyQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSTtZQUNyQyxDQUFDLENBQUMsMkJBQW1CLENBQUMsVUFBVSxDQUFDLElBQUk7S0FDMUMsQ0FBQztJQUNGLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7UUFDakMsR0FBRyxFQUFFLDJCQUEyQjtRQUNoQywwQkFBMEIsRUFBRSxrREFBa0Q7S0FDL0UsQ0FBQztDQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBWMU5ldHdvcmsgfSBmcm9tICcuL3R5cGVzJztcblxuaW50ZXJmYWNlIEVudmlyb25tZW50VGVtcGxhdGUge1xuICB1cmk/OiBzdHJpbmc7XG4gIG5ldHdvcms6IFYxTmV0d29yaztcbiAgc2lnbmluZ0FkZHJlc3M6IHN0cmluZztcbiAgc2VydmVyWHB1Yjogc3RyaW5nO1xuICBoc21YcHViOiBzdHJpbmc7XG4gIGJ0Y0V4cGxvcmVyQmFzZVVybDogc3RyaW5nO1xuICBldGhlcnNjYW5CYXNlVXJsOiBzdHJpbmc7XG4gIGV0aGVyc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBzbm93dHJhY2VCYXNlVXJsOiBzdHJpbmc7XG4gIHNub3d0cmFjZUFwaVRva2VuPzogc3RyaW5nO1xuICBldGgyRXhwbG9yZXJCYXNlVXJsOiBzdHJpbmc7XG4gIGV0aHdGdWxsTm9kZVJQQ0Jhc2VVcmw6IHN0cmluZztcbiAgcG9seWdvbnNjYW5CYXNlVXJsPzogc3RyaW5nO1xuICBwb2x5Z29uc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybD86IHN0cmluZztcbiAgZW9zTm9kZVVybHM6IHN0cmluZ1tdO1xuICBuZWFyTm9kZVVybHM6IHN0cmluZ1tdO1xuICBzb2xOb2RlVXJsOiBzdHJpbmc7XG4gIGFkYU5vZGVVcmw6IHN0cmluZztcbiAgZG90Tm9kZVVybHM6IHN0cmluZ1tdO1xuICB0cm9uTm9kZXM6IHtcbiAgICBmdWxsOiBzdHJpbmc7XG4gICAgc29saWRpdHk6IHN0cmluZztcbiAgfTtcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVudmlyb25tZW50IGV4dGVuZHMgRW52aXJvbm1lbnRUZW1wbGF0ZSB7XG4gIHVyaTogc3RyaW5nO1xuICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgaGFyZGNvZGVkUHVibGljS2V5cyA9IE9iamVjdC5mcmVlemUoe1xuICBzZXJ2ZXJYcHViOiB7XG4gICAgcHJvZDogJ3hwdWI2NjFNeU13QXFSYmNFdFVndTlIRjhhaTRpcHVWS0tIQnpVcWtzNGpTRnlwVzhkd3dRTDF6eWdMZ1F4OTlObUM3ekpKem5TaXdLRzZSUWZWakFLTXRDc3g4VmpSNmtRVzh4N0hya1hGWmRuUScsXG4gICAgdGVzdDogJ3hwdWI2NjFNeU13QXFSYmNFckZxVlhHaVVGdjlZZW9QYmhONzJVaU5DVWRqOW5qM1Q2TThoN2lLTm1iQ1lwTVZXVlpQN0xBMm1hM0hXY1BuZ3oxZ1JUbTRGUGR0bTltSGZyTnZVOTNNQ29zenNHTCcsXG4gIH0sXG4gIGhzbVhwdWI6IHtcbiAgICBwcm9kOiAneHB1YjY2MU15TXdBcVJiY0dFdFRGZ01Bb3hNRm9xc1JkRGFpYVI2M2J5TmZaZFY3Y0JaRnZvdlFTTko1YnB5ZW9RdHVLVmdYQms2c0ZRN1R0dnlXcWFkdDQxRG5Ld3ZlWWdNNUtvVTJFS1lqZFkyJyxcbiAgICB0ZXN0OiAneHB1YjY2MU15TXdBcVJiY0dGS2U0QnF2azRTZ3JpYzRnTkZDOHBVYnc0dFVrVmpaeHViakNBNTIyZ1B6YzFZYVhiM2JRVm1EV2M3Q2pHOEFHTldScGNkQVUzOFJFVEJoOG4yYm5xRVU0a2JWNG9LJyxcbiAgICBkZXY6ICd4cHViNjYxTXlNd0FxUmJjRld6b3o4cW5ZUkRZRUZRcFBMWXd4VkZvRzZXTHkzY2s1WnVwUkdKVEc0anU2eUdiN0RqM2V5NkdzQzRrc3RMUkVSMm5LemdqTHRteHlQZ0M0ekh5N2tWaFV0NnlmR24nLFxuICB9LFxufSk7XG5cbmV4cG9ydCB0eXBlIEVudmlyb25tZW50TmFtZSA9XG4gIHwgJ3Byb2QnXG4gIHwgJ3N0YWdpbmcnXG4gIHwgJ3Rlc3QnXG4gIHwgJ2RldidcbiAgfCAnbGF0ZXN0J1xuICB8ICdsb2NhbCdcbiAgfCAnbG9jYWxOb25TZWN1cmUnXG4gIHwgJ21vY2snXG4gIHwgJ2FkbWluUHJvZCdcbiAgfCAnYWRtaW5UZXN0J1xuICB8ICdhZG1pbkRldidcbiAgfCAnYWRtaW5MYXRlc3QnXG4gIHwgJ2N1c3RvbSdcbiAgfCAnYnJhbmNoJztcblxuZXhwb3J0IHR5cGUgQWxpYXNFbnZpcm9ubWVudE5hbWUgPSAncHJvZHVjdGlvbicgfCAnbXNQcm9kJyB8ICdtc1Rlc3QnIHwgJ21zRGV2JyB8ICdtc0xhdGVzdCc7XG5cbmV4cG9ydCB0eXBlIEVudmlyb25tZW50cyA9IHsgW2sgaW4gRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnQgfTtcblxuLy8gYWxpYXMgZW52aXJvbm1lbnRzIGFyZSBlbnZpcm9ubWVudCBuYW1lcyB3aGljaCBhcmUgYWxpYXNlcyBvZiBhIHN1cHBvcnRlZCBlbnZpcm9ubWVudFxuZXhwb3J0IGNvbnN0IEFsaWFzRW52aXJvbm1lbnRzOiB7IFtrIGluIEFsaWFzRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnROYW1lIH0gPSB7XG4gIHByb2R1Y3Rpb246ICdwcm9kJyxcbiAgbXNQcm9kOiAncHJvZCcsXG4gIG1zVGVzdDogJ3Rlc3QnLFxuICBtc0RldjogJ2RldicsXG4gIG1zTGF0ZXN0OiAnbGF0ZXN0Jyxcbn07XG5cbmNvbnN0IG1haW5uZXRCYXNlOiBFbnZpcm9ubWVudFRlbXBsYXRlID0ge1xuICBuZXR3b3JrOiAnYml0Y29pbicgYXMgVjFOZXR3b3JrLFxuICBzaWduaW5nQWRkcmVzczogJzFCaXRHbzNneFJaNm1RU0VINTJkdkNLU1VnVkNBSDRSamEnLFxuICBzZXJ2ZXJYcHViOiBoYXJkY29kZWRQdWJsaWNLZXlzLnNlcnZlclhwdWIucHJvZCxcbiAgaHNtWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLnByb2QsXG4gIGJ0Y0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby9hcGknLFxuICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvJyxcbiAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gIHNub3d0cmFjZUJhc2VVcmw6ICdodHRwczovL2FwaS5zbm93dHJhY2UuaW8nLFxuICBzbm93dHJhY2VBcGlUb2tlbjogcHJvY2Vzcy5lbnYuU05PV1RSQUNFX0FQSV9UT0tFTixcbiAgZXRoMkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmVhY29uc2Nhbi5jb20vYXBpJyxcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5ldGhlcmV1bXBvdy5vcmcnLFxuICBwb2x5Z29uc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS5wb2x5Z29uc2Nhbi5jb20nLFxuICBwb2x5Z29uc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5QT0xZR09OU0NBTl9BUElfVE9LRU4sXG4gIGVvc05vZGVVcmxzOiBbJ2h0dHBzOi8vYnAuY3J5cHRvbGlvbnMuaW8nLCAnaHR0cHM6Ly9hcGkuZW9zbmV3eW9yay5pbycsICdodHRwczovL2FwaS5lb3NkZXRyb2l0LmlvJ10sXG4gIG5lYXJOb2RlVXJsczogWydodHRwczovL3JwYy5tYWlubmV0Lm5lYXIub3JnJ10sXG4gIHNvbE5vZGVVcmw6ICdodHRwczovL2FwaS5tYWlubmV0LWJldGEuc29sYW5hLmNvbScsXG4gIGFkYU5vZGVVcmw6ICdodHRwczovL2FwaS5rb2lvcy5yZXN0L2FwaS92MCcsXG4gIGRvdE5vZGVVcmxzOiBbJ3dzczovL3JwYy5wb2xrYWRvdC5pbyddLFxuICB0cm9uTm9kZXM6IHtcbiAgICBmdWxsOiAnaHR0cHM6Ly9hcGkudHJvbmdyaWQuaW8nLFxuICAgIHNvbGlkaXR5OiAnaHR0cHM6Ly9hcGkudHJvbmdyaWQuaW8nLFxuICB9LFxuICBobWFjVmVyaWZpY2F0aW9uRW5mb3JjZWQ6IHRydWUsXG59O1xuXG5jb25zdCB0ZXN0bmV0QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IHtcbiAgbmV0d29yazogJ3Rlc3RuZXQnIGFzIFYxTmV0d29yayxcbiAgc2lnbmluZ0FkZHJlc3M6ICdtc2lnbkJkRlh0ZWVoREVnQjZETm03bnBSdDdBY0VaSlAzJyxcbiAgc2VydmVyWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3QsXG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi50ZXN0LFxuICBidGNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vdGVzdG5ldC9hcGknLFxuICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGktZ29lcmxpLmV0aGVyc2Nhbi5pbycsXG4gIGV0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICBzbm93dHJhY2VCYXNlVXJsOiAnaHR0cHM6Ly9hcGktdGVzdG5ldC5zbm93dHJhY2UuaW8nLFxuICBzbm93dHJhY2VBcGlUb2tlbjogcHJvY2Vzcy5lbnYuU05PV1RSQUNFX0FQSV9UT0tFTixcbiAgZXRoMkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmVhY29uc2Nhbi5jb20vYXBpJyxcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5ldGhlcmV1bXBvdy5vcmcnLFxuICBwb2x5Z29uc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS10ZXN0bmV0LnBvbHlnb25zY2FuLmNvbScsXG4gIHBvbHlnb25zY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LlBPTFlHT05TQ0FOX0FQSV9UT0tFTixcbiAgLy8ga3lsaW4gZW9zIGVuZHBvaW50cyBmb3VuZCBoZXJlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9jcnlwdG9reWxpbi9DcnlwdG9LeWxpbi1UZXN0bmV0I2h0dHAtYXBpLWxpc3RcbiAgLy8gaHR0cHM6Ly9kb2NzLmxpcXVpZGFwcHMuaW8vbGlxdWlkYXBwcy1kb2N1bWVudGF0aW9uL2Vvc2lvLWd1aWRlcy90ZXN0bmV0LWNyZWF0aW9uLWd1aWRlcy9jcmVhdGluZy1jcnlwdG9reWxpbi1hY2NvdW50I3NldHVwXG4gIGVvc05vZGVVcmxzOiBbJ2h0dHBzOi8va3lsaW4uZW9zbi5pbycsICdodHRwczovL2FwaS5reWxpbi5hbG9oYWVvcy5jb20nXSxcbiAgbmVhck5vZGVVcmxzOiBbJ2h0dHBzOi8vcnBjLnRlc3RuZXQubmVhci5vcmcnXSxcbiAgc29sTm9kZVVybDogJ2h0dHBzOi8vYXBpLmRldm5ldC5zb2xhbmEuY29tJyxcbiAgYWRhTm9kZVVybDogJ2h0dHBzOi8vcHJlcHJvZC5rb2lvcy5yZXN0L2FwaS92MCcsXG4gIGRvdE5vZGVVcmxzOiBbJ3dzczovL3dlc3RlbmQtcnBjLnBvbGthZG90LmlvJ10sXG4gIHRyb25Ob2Rlczoge1xuICAgIGZ1bGw6ICdodHRwOi8vNDcuMjUyLjgxLjEzNTo4MDkwJyxcbiAgICBzb2xpZGl0eTogJ2h0dHA6Ly80Ny4yNTIuODEuMTM1OjgwOTEnLFxuICB9LFxuICBobWFjVmVyaWZpY2F0aW9uRW5mb3JjZWQ6IGZhbHNlLFxufTtcblxuY29uc3QgZGV2QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi5kZXYsXG4gIGhtYWNWZXJpZmljYXRpb25FbmZvcmNlZDogZmFsc2UsXG59KTtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXJlZGVjbGFyZVxuZXhwb3J0IGNvbnN0IEVudmlyb25tZW50czogRW52aXJvbm1lbnRzID0ge1xuICBwcm9kOiBPYmplY3QuYXNzaWduKHt9LCBtYWlubmV0QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FwcC5iaXRnby5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIHRlc3Q6IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28tdGVzdC5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tdGVzdC5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBkZXY6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby1kZXYuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBsYXRlc3Q6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby1sYXRlc3QuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLWxhdGVzdC5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIHN0YWdpbmc6IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28tc3RhZ2luZy5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tc3RhZ2luZy5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBsb2NhbDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vbG9jYWxob3N0OjMwMDAnLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9sb2NhbGhvc3Q6MzAwMC9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGxvY2FsTm9uU2VjdXJlOiBPYmplY3QuYXNzaWduKHt9LCBkZXZCYXNlLCB7XG4gICAgdXJpOiAnaHR0cDovL2xvY2FsaG9zdDozMDAwJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMC9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIG1vY2s6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2JpdGdvLmZha2V1cmwnLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9iaXRnby5mYWtldXJsL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICAgIGV0aGVyc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS1nb2VybGkuZXRoZXJzY2FuLmZha2V1cmwnLFxuICAgIGV0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICAgIHNub3d0cmFjZUFwaVRva2VuOiBwcm9jZXNzLmVudi5TTk9XVFJBQ0VfQVBJX1RPS0VOLFxuICAgIHNub3d0cmFjZUJhc2VVcmw6ICdodHRwczovL2FwaS10ZXN0bmV0LnNub3d0cmFjZS5mYWtldXJsJyxcbiAgICBldGgyRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9iZWFjb25zY2FuLmNvbS9hcGknLFxuICB9KSxcbiAgYWRtaW5Qcm9kOiBPYmplY3QuYXNzaWduKHt9LCBtYWlubmV0QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28uY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYWRtaW4uYml0Z28uY29tL2FwaS92Mi94bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pblRlc3Q6IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby10ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLXRlc3QuY29tL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgYWRtaW5EZXY6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FkbWluLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby1kZXYuY29tL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgYWRtaW5MYXRlc3Q6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FkbWluLmJpdGdvLWxhdGVzdC5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby1sYXRlc3QuY29tL2FwaS92Mi94bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBjdXN0b206IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICB1cmk6IHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSSEsXG4gICAgbmV0d29yazogcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyBhcyBWMU5ldHdvcmssXG4gICAgaHNtWHB1YjpcbiAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicgPyBoYXJkY29kZWRQdWJsaWNLZXlzLmhzbVhwdWIucHJvZCA6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi50ZXN0LFxuICAgIGJ0Y0V4cGxvcmVyQmFzZVVybDpcbiAgICAgIHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9CSVRDT0lOX05FVFdPUksgIT09ICdiaXRjb2luJ1xuICAgICAgICA/ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vdGVzdG5ldC9hcGknXG4gICAgICAgIDogJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby9hcGknLFxuICAgIGV0aGVyc2NhbkJhc2VVcmw6XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fRVRIRVJFVU1fTkVUV09SSyAhPT0gJ2V0aGVyZXVtJ1xuICAgICAgICA/ICdodHRwczovL2FwaS1nb2VybGkuZXRoZXJzY2FuLmlvJ1xuICAgICAgICA6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX1NURUxMQVJfTkVUV09SSyAhPT0gJ3N0ZWxsYXInXG4gICAgICAgID8gYGh0dHBzOi8vJHtwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fUk9PVF9VUkl9L2FwaS92Mi90eGxtL2ZlZGVyYXRpb25gXG4gICAgICAgIDogYGh0dHBzOi8vJHtwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fUk9PVF9VUkl9L2FwaS92Mi94bG0vZmVkZXJhdGlvbmAsXG4gICAgc2VydmVyWHB1YjpcbiAgICAgIHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9CSVRDT0lOX05FVFdPUksgIT09ICdiaXRjb2luJ1xuICAgICAgICA/IGhhcmRjb2RlZFB1YmxpY0tleXMuc2VydmVyWHB1Yi50ZXN0XG4gICAgICAgIDogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnByb2QsXG4gIH0pLFxuICBicmFuY2g6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby1kZXYuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxufTtcbiJdfQ==
160
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vudmlyb25tZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF1Q2EsUUFBQSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtLQUN4SDtJQUNELE9BQU8sRUFBRTtRQUNQLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtRQUN2SCxHQUFHLEVBQUUsaUhBQWlIO0tBQ3ZIO0NBQ0YsQ0FBQyxDQUFDO0FBc0JILHdGQUF3RjtBQUMzRSxRQUFBLGlCQUFpQixHQUFxRDtJQUNqRixVQUFVLEVBQUUsTUFBTTtJQUNsQixNQUFNLEVBQUUsTUFBTTtJQUNkLE1BQU0sRUFBRSxNQUFNO0lBQ2QsS0FBSyxFQUFFLEtBQUs7SUFDWixRQUFRLEVBQUUsUUFBUTtDQUNuQixDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQXdCO0lBQ3ZDLE9BQU8sRUFBRSxTQUFzQjtJQUMvQixjQUFjLEVBQUUsb0NBQW9DO0lBQ3BELFVBQVUsRUFBRSwyQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSTtJQUMvQyxPQUFPLEVBQUUsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUk7SUFDekMsa0JBQWtCLEVBQUUsOEJBQThCO0lBQ2xELGdCQUFnQixFQUFFLDBCQUEwQjtJQUM1QyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtJQUNsRCxnQkFBZ0IsRUFBRSwwQkFBMEI7SUFDNUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7SUFDbEQsbUJBQW1CLEVBQUUsNEJBQTRCO0lBQ2pELHNCQUFzQixFQUFFLGlDQUFpQztJQUN6RCxrQkFBa0IsRUFBRSw2QkFBNkI7SUFDakQsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUI7SUFDdEQsV0FBVyxFQUFFLENBQUMsMkJBQTJCLEVBQUUsMkJBQTJCLEVBQUUsMkJBQTJCLENBQUM7SUFDcEcsWUFBWSxFQUFFLENBQUMsOEJBQThCLENBQUM7SUFDOUMsVUFBVSxFQUFFLHFDQUFxQztJQUNqRCxVQUFVLEVBQUUsK0JBQStCO0lBQzNDLFdBQVcsRUFBRSwwQ0FBMEM7SUFDdkQsV0FBVyxFQUFFLENBQUMsdUJBQXVCLENBQUM7SUFDdEMsU0FBUyxFQUFFO1FBQ1QsSUFBSSxFQUFFLHlCQUF5QjtRQUMvQixRQUFRLEVBQUUseUJBQXlCO0tBQ3BDO0lBQ0Qsd0JBQXdCLEVBQUUsSUFBSTtDQUMvQixDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQXdCO0lBQ3ZDLE9BQU8sRUFBRSxTQUFzQjtJQUMvQixjQUFjLEVBQUUsb0NBQW9DO0lBQ3BELFVBQVUsRUFBRSwyQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSTtJQUMvQyxPQUFPLEVBQUUsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUk7SUFDekMsa0JBQWtCLEVBQUUsc0NBQXNDO0lBQzFELGdCQUFnQixFQUFFLGlDQUFpQztJQUNuRCxpQkFBaUIsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtJQUNsRCxnQkFBZ0IsRUFBRSxrQ0FBa0M7SUFDcEQsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7SUFDbEQsbUJBQW1CLEVBQUUsNEJBQTRCO0lBQ2pELHNCQUFzQixFQUFFLGlDQUFpQztJQUN6RCxrQkFBa0IsRUFBRSxxQ0FBcUM7SUFDekQsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUI7SUFDdEQsaUNBQWlDO0lBQ2pDLG1FQUFtRTtJQUNuRSw4SEFBOEg7SUFDOUgsV0FBVyxFQUFFLENBQUMsdUJBQXVCLEVBQUUsZ0NBQWdDLENBQUM7SUFDeEUsWUFBWSxFQUFFLENBQUMsOEJBQThCLENBQUM7SUFDOUMsVUFBVSxFQUFFLCtCQUErQjtJQUMzQyxVQUFVLEVBQUUsbUNBQW1DO0lBQy9DLFdBQVcsRUFBRSxvREFBb0Q7SUFDakUsV0FBVyxFQUFFLENBQUMsK0JBQStCLENBQUM7SUFDOUMsU0FBUyxFQUFFO1FBQ1QsSUFBSSxFQUFFLDJCQUEyQjtRQUNqQyxRQUFRLEVBQUUsMkJBQTJCO0tBQ3RDO0lBQ0Qsd0JBQXdCLEVBQUUsS0FBSztDQUNoQyxDQUFDO0FBRUYsTUFBTSxPQUFPLEdBQXdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRTtJQUNsRSxPQUFPLEVBQUUsMkJBQW1CLENBQUMsT0FBTyxDQUFDLEdBQUc7SUFDeEMsd0JBQXdCLEVBQUUsS0FBSztDQUNoQyxDQUFDLENBQUM7QUFFSCx3Q0FBd0M7QUFDM0IsUUFBQSxZQUFZLEdBQWlCO0lBQ3hDLElBQUksRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUU7UUFDbkMsR0FBRyxFQUFFLHVCQUF1QjtRQUM1QiwwQkFBMEIsRUFBRSw2Q0FBNkM7S0FDMUUsQ0FBQztJQUNGLElBQUksRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUU7UUFDbkMsR0FBRyxFQUFFLDRCQUE0QjtRQUNqQywwQkFBMEIsRUFBRSxtREFBbUQ7S0FDaEYsQ0FBQztJQUNGLEdBQUcsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7UUFDOUIsR0FBRyxFQUFFLDJCQUEyQjtRQUNoQywwQkFBMEIsRUFBRSxrREFBa0Q7S0FDL0UsQ0FBQztJQUNGLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7UUFDakMsR0FBRyxFQUFFLDhCQUE4QjtRQUNuQywwQkFBMEIsRUFBRSxvREFBb0Q7S0FDakYsQ0FBQztJQUNGLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUU7UUFDdEMsR0FBRyxFQUFFLCtCQUErQjtRQUNwQywwQkFBMEIsRUFBRSxzREFBc0Q7S0FDbkYsQ0FBQztJQUNGLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7UUFDaEMsR0FBRyxFQUFFLHdCQUF3QjtRQUM3QiwwQkFBMEIsRUFBRSwrQ0FBK0M7S0FDNUUsQ0FBQztJQUNGLGNBQWMsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7UUFDekMsR0FBRyxFQUFFLHVCQUF1QjtRQUM1QiwwQkFBMEIsRUFBRSw4Q0FBOEM7S0FDM0UsQ0FBQztJQUNGLElBQUksRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7UUFDL0IsR0FBRyxFQUFFLHVCQUF1QjtRQUM1QiwwQkFBMEIsRUFBRSw4Q0FBOEM7UUFDMUUsZ0JBQWdCLEVBQUUsc0NBQXNDO1FBQ3hELGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO1FBQ2xELGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO1FBQ2xELGdCQUFnQixFQUFFLHVDQUF1QztRQUN6RCxtQkFBbUIsRUFBRSw0QkFBNEI7S0FDbEQsQ0FBQztJQUNGLFNBQVMsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUU7UUFDeEMsR0FBRyxFQUFFLHlCQUF5QjtRQUM5QiwwQkFBMEIsRUFBRSwrQ0FBK0M7S0FDNUUsQ0FBQztJQUNGLFNBQVMsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUU7UUFDeEMsR0FBRyxFQUFFLDhCQUE4QjtRQUNuQywwQkFBMEIsRUFBRSxxREFBcUQ7S0FDbEYsQ0FBQztJQUNGLFFBQVEsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7UUFDbkMsR0FBRyxFQUFFLDZCQUE2QjtRQUNsQywwQkFBMEIsRUFBRSxvREFBb0Q7S0FDakYsQ0FBQztJQUNGLFdBQVcsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7UUFDdEMsR0FBRyxFQUFFLGdDQUFnQztRQUNyQywwQkFBMEIsRUFBRSxzREFBc0Q7S0FDbkYsQ0FBQztJQUNGLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUU7UUFDckMsb0VBQW9FO1FBQ3BFLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFzQjtRQUN2QyxPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyw0QkFBeUM7UUFDOUQsT0FBTyxFQUNMLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUk7UUFDN0csa0JBQWtCLEVBQ2hCLE9BQU8sQ0FBQyxHQUFHLENBQUMsNEJBQTRCLEtBQUssU0FBUztZQUNwRCxDQUFDLENBQUMsc0NBQXNDO1lBQ3hDLENBQUMsQ0FBQyw4QkFBOEI7UUFDcEMsZ0JBQWdCLEVBQ2QsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsS0FBSyxVQUFVO1lBQ3RELENBQUMsQ0FBQyxpQ0FBaUM7WUFDbkMsQ0FBQyxDQUFDLDBCQUEwQjtRQUNoQywwQkFBMEIsRUFDeEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyw0QkFBNEIsS0FBSyxTQUFTO1lBQ3BELENBQUMsQ0FBQyxXQUFXLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLHlCQUF5QjtZQUN2RSxDQUFDLENBQUMsV0FBVyxPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFxQix3QkFBd0I7UUFDMUUsVUFBVSxFQUNSLE9BQU8sQ0FBQyxHQUFHLENBQUMsNEJBQTRCLEtBQUssU0FBUztZQUNwRCxDQUFDLENBQUMsMkJBQW1CLENBQUMsVUFBVSxDQUFDLElBQUk7WUFDckMsQ0FBQyxDQUFDLDJCQUFtQixDQUFDLFVBQVUsQ0FBQyxJQUFJO0tBQzFDLENBQUM7SUFDRixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFO1FBQ2pDLEdBQUcsRUFBRSwyQkFBMkI7UUFDaEMsMEJBQTBCLEVBQUUsa0RBQWtEO0tBQy9FLENBQUM7Q0FDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgVjFOZXR3b3JrIH0gZnJvbSAnLi90eXBlcyc7XG5cbmludGVyZmFjZSBFbnZpcm9ubWVudFRlbXBsYXRlIHtcbiAgdXJpPzogc3RyaW5nO1xuICBuZXR3b3JrOiBWMU5ldHdvcms7XG4gIHNpZ25pbmdBZGRyZXNzOiBzdHJpbmc7XG4gIHNlcnZlclhwdWI6IHN0cmluZztcbiAgaHNtWHB1Yjogc3RyaW5nO1xuICBidGNFeHBsb3JlckJhc2VVcmw6IHN0cmluZztcbiAgZXRoZXJzY2FuQmFzZVVybDogc3RyaW5nO1xuICBldGhlcnNjYW5BcGlUb2tlbj86IHN0cmluZztcbiAgc25vd3RyYWNlQmFzZVVybDogc3RyaW5nO1xuICBzbm93dHJhY2VBcGlUb2tlbj86IHN0cmluZztcbiAgZXRoMkV4cGxvcmVyQmFzZVVybDogc3RyaW5nO1xuICBldGh3RnVsbE5vZGVSUENCYXNlVXJsOiBzdHJpbmc7XG4gIHBvbHlnb25zY2FuQmFzZVVybD86IHN0cmluZztcbiAgcG9seWdvbnNjYW5BcGlUb2tlbj86IHN0cmluZztcbiAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw/OiBzdHJpbmc7XG4gIGVvc05vZGVVcmxzOiBzdHJpbmdbXTtcbiAgbmVhck5vZGVVcmxzOiBzdHJpbmdbXTtcbiAgc29sTm9kZVVybDogc3RyaW5nO1xuICBhZGFOb2RlVXJsOiBzdHJpbmc7XG4gIGF0b21Ob2RlVXJsOiBzdHJpbmc7XG4gIGRvdE5vZGVVcmxzOiBzdHJpbmdbXTtcbiAgdHJvbk5vZGVzOiB7XG4gICAgZnVsbDogc3RyaW5nO1xuICAgIHNvbGlkaXR5OiBzdHJpbmc7XG4gIH07XG4gIGhtYWNWZXJpZmljYXRpb25FbmZvcmNlZDogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudCBleHRlbmRzIEVudmlyb25tZW50VGVtcGxhdGUge1xuICB1cmk6IHN0cmluZztcbiAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IGhhcmRjb2RlZFB1YmxpY0tleXMgPSBPYmplY3QuZnJlZXplKHtcbiAgc2VydmVyWHB1Yjoge1xuICAgIHByb2Q6ICd4cHViNjYxTXlNd0FxUmJjRXRVZ3U5SEY4YWk0aXB1VktLSEJ6VXFrczRqU0Z5cFc4ZHd3UUwxenlnTGdReDk5Tm1DN3pKSnpuU2l3S0c2UlFmVmpBS010Q3N4OFZqUjZrUVc4eDdIcmtYRlpkblEnLFxuICAgIHRlc3Q6ICd4cHViNjYxTXlNd0FxUmJjRXJGcVZYR2lVRnY5WWVvUGJoTjcyVWlOQ1VkajluajNUNk04aDdpS05tYkNZcE1WV1ZaUDdMQTJtYTNIV2NQbmd6MWdSVG00RlBkdG05bUhmck52VTkzTUNvc3pzR0wnLFxuICB9LFxuICBoc21YcHViOiB7XG4gICAgcHJvZDogJ3hwdWI2NjFNeU13QXFSYmNHRXRURmdNQW94TUZvcXNSZERhaWFSNjNieU5mWmRWN2NCWkZ2b3ZRU05KNWJweWVvUXR1S1ZnWEJrNnNGUTdUdHZ5V3FhZHQ0MURuS3d2ZVlnTTVLb1UyRUtZamRZMicsXG4gICAgdGVzdDogJ3hwdWI2NjFNeU13QXFSYmNHRktlNEJxdms0U2dyaWM0Z05GQzhwVWJ3NHRVa1ZqWnh1YmpDQTUyMmdQemMxWWFYYjNiUVZtRFdjN0NqRzhBR05XUnBjZEFVMzhSRVRCaDhuMmJucUVVNGtiVjRvSycsXG4gICAgZGV2OiAneHB1YjY2MU15TXdBcVJiY0ZXem96OHFuWVJEWUVGUXBQTFl3eFZGb0c2V0x5M2NrNVp1cFJHSlRHNGp1NnlHYjdEajNleTZHc0M0a3N0TFJFUjJuS3pnakx0bXh5UGdDNHpIeTdrVmhVdDZ5ZkduJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgdHlwZSBFbnZpcm9ubWVudE5hbWUgPVxuICB8ICdwcm9kJ1xuICB8ICdzdGFnaW5nJ1xuICB8ICd0ZXN0J1xuICB8ICdkZXYnXG4gIHwgJ2xhdGVzdCdcbiAgfCAnbG9jYWwnXG4gIHwgJ2xvY2FsTm9uU2VjdXJlJ1xuICB8ICdtb2NrJ1xuICB8ICdhZG1pblByb2QnXG4gIHwgJ2FkbWluVGVzdCdcbiAgfCAnYWRtaW5EZXYnXG4gIHwgJ2FkbWluTGF0ZXN0J1xuICB8ICdjdXN0b20nXG4gIHwgJ2JyYW5jaCc7XG5cbmV4cG9ydCB0eXBlIEFsaWFzRW52aXJvbm1lbnROYW1lID0gJ3Byb2R1Y3Rpb24nIHwgJ21zUHJvZCcgfCAnbXNUZXN0JyB8ICdtc0RldicgfCAnbXNMYXRlc3QnO1xuXG5leHBvcnQgdHlwZSBFbnZpcm9ubWVudHMgPSB7IFtrIGluIEVudmlyb25tZW50TmFtZV06IEVudmlyb25tZW50IH07XG5cbi8vIGFsaWFzIGVudmlyb25tZW50cyBhcmUgZW52aXJvbm1lbnQgbmFtZXMgd2hpY2ggYXJlIGFsaWFzZXMgb2YgYSBzdXBwb3J0ZWQgZW52aXJvbm1lbnRcbmV4cG9ydCBjb25zdCBBbGlhc0Vudmlyb25tZW50czogeyBbayBpbiBBbGlhc0Vudmlyb25tZW50TmFtZV06IEVudmlyb25tZW50TmFtZSB9ID0ge1xuICBwcm9kdWN0aW9uOiAncHJvZCcsXG4gIG1zUHJvZDogJ3Byb2QnLFxuICBtc1Rlc3Q6ICd0ZXN0JyxcbiAgbXNEZXY6ICdkZXYnLFxuICBtc0xhdGVzdDogJ2xhdGVzdCcsXG59O1xuXG5jb25zdCBtYWlubmV0QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IHtcbiAgbmV0d29yazogJ2JpdGNvaW4nIGFzIFYxTmV0d29yayxcbiAgc2lnbmluZ0FkZHJlc3M6ICcxQml0R28zZ3hSWjZtUVNFSDUyZHZDS1NVZ1ZDQUg0UmphJyxcbiAgc2VydmVyWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnByb2QsXG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi5wcm9kLFxuICBidGNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vYXBpJyxcbiAgZXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pbycsXG4gIGV0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICBzbm93dHJhY2VCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuc25vd3RyYWNlLmlvJyxcbiAgc25vd3RyYWNlQXBpVG9rZW46IHByb2Nlc3MuZW52LlNOT1dUUkFDRV9BUElfVE9LRU4sXG4gIGV0aDJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2JlYWNvbnNjYW4uY29tL2FwaScsXG4gIGV0aHdGdWxsTm9kZVJQQ0Jhc2VVcmw6ICdodHRwczovL21haW5uZXQuZXRoZXJldW1wb3cub3JnJyxcbiAgcG9seWdvbnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkucG9seWdvbnNjYW4uY29tJyxcbiAgcG9seWdvbnNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuUE9MWUdPTlNDQU5fQVBJX1RPS0VOLFxuICBlb3NOb2RlVXJsczogWydodHRwczovL2JwLmNyeXB0b2xpb25zLmlvJywgJ2h0dHBzOi8vYXBpLmVvc25ld3lvcmsuaW8nLCAnaHR0cHM6Ly9hcGkuZW9zZGV0cm9pdC5pbyddLFxuICBuZWFyTm9kZVVybHM6IFsnaHR0cHM6Ly9ycGMubWFpbm5ldC5uZWFyLm9yZyddLFxuICBzb2xOb2RlVXJsOiAnaHR0cHM6Ly9hcGkubWFpbm5ldC1iZXRhLnNvbGFuYS5jb20nLFxuICBhZGFOb2RlVXJsOiAnaHR0cHM6Ly9hcGkua29pb3MucmVzdC9hcGkvdjAnLFxuICBhdG9tTm9kZVVybDogJ2h0dHBzOi8vcmVzdC5jb3Ntb3MuZGlyZWN0b3J5L2Nvc21vc2h1Yi8nLFxuICBkb3ROb2RlVXJsczogWyd3c3M6Ly9ycGMucG9sa2Fkb3QuaW8nXSxcbiAgdHJvbk5vZGVzOiB7XG4gICAgZnVsbDogJ2h0dHBzOi8vYXBpLnRyb25ncmlkLmlvJyxcbiAgICBzb2xpZGl0eTogJ2h0dHBzOi8vYXBpLnRyb25ncmlkLmlvJyxcbiAgfSxcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiB0cnVlLFxufTtcblxuY29uc3QgdGVzdG5ldEJhc2U6IEVudmlyb25tZW50VGVtcGxhdGUgPSB7XG4gIG5ldHdvcms6ICd0ZXN0bmV0JyBhcyBWMU5ldHdvcmssXG4gIHNpZ25pbmdBZGRyZXNzOiAnbXNpZ25CZEZYdGVlaERFZ0I2RE5tN25wUnQ3QWNFWkpQMycsXG4gIHNlcnZlclhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuc2VydmVyWHB1Yi50ZXN0LFxuICBoc21YcHViOiBoYXJkY29kZWRQdWJsaWNLZXlzLmhzbVhwdWIudGVzdCxcbiAgYnRjRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9ibG9ja3N0cmVhbS5pbmZvL3Rlc3RuZXQvYXBpJyxcbiAgZXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLWdvZXJsaS5ldGhlcnNjYW4uaW8nLFxuICBldGhlcnNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuRVRIRVJTQ0FOX0FQSV9UT0tFTixcbiAgc25vd3RyYWNlQmFzZVVybDogJ2h0dHBzOi8vYXBpLXRlc3RuZXQuc25vd3RyYWNlLmlvJyxcbiAgc25vd3RyYWNlQXBpVG9rZW46IHByb2Nlc3MuZW52LlNOT1dUUkFDRV9BUElfVE9LRU4sXG4gIGV0aDJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2JlYWNvbnNjYW4uY29tL2FwaScsXG4gIGV0aHdGdWxsTm9kZVJQQ0Jhc2VVcmw6ICdodHRwczovL21haW5uZXQuZXRoZXJldW1wb3cub3JnJyxcbiAgcG9seWdvbnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGktdGVzdG5ldC5wb2x5Z29uc2Nhbi5jb20nLFxuICBwb2x5Z29uc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5QT0xZR09OU0NBTl9BUElfVE9LRU4sXG4gIC8vIGt5bGluIGVvcyBlbmRwb2ludHMgZm91bmQgaGVyZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vY3J5cHRva3lsaW4vQ3J5cHRvS3lsaW4tVGVzdG5ldCNodHRwLWFwaS1saXN0XG4gIC8vIGh0dHBzOi8vZG9jcy5saXF1aWRhcHBzLmlvL2xpcXVpZGFwcHMtZG9jdW1lbnRhdGlvbi9lb3Npby1ndWlkZXMvdGVzdG5ldC1jcmVhdGlvbi1ndWlkZXMvY3JlYXRpbmctY3J5cHRva3lsaW4tYWNjb3VudCNzZXR1cFxuICBlb3NOb2RlVXJsczogWydodHRwczovL2t5bGluLmVvc24uaW8nLCAnaHR0cHM6Ly9hcGkua3lsaW4uYWxvaGFlb3MuY29tJ10sXG4gIG5lYXJOb2RlVXJsczogWydodHRwczovL3JwYy50ZXN0bmV0Lm5lYXIub3JnJ10sXG4gIHNvbE5vZGVVcmw6ICdodHRwczovL2FwaS5kZXZuZXQuc29sYW5hLmNvbScsXG4gIGFkYU5vZGVVcmw6ICdodHRwczovL3ByZXByb2Qua29pb3MucmVzdC9hcGkvdjAnLFxuICBhdG9tTm9kZVVybDogJ2h0dHBzOi8vcmVzdC5zZW50cnktMDIudGhldGEtdGVzdG5ldC5wb2x5cG9yZS54eXovJyxcbiAgZG90Tm9kZVVybHM6IFsnd3NzOi8vd2VzdGVuZC1ycGMucG9sa2Fkb3QuaW8nXSxcbiAgdHJvbk5vZGVzOiB7XG4gICAgZnVsbDogJ2h0dHA6Ly80Ny4yNTIuODEuMTM1OjgwOTAnLFxuICAgIHNvbGlkaXR5OiAnaHR0cDovLzQ3LjI1Mi44MS4xMzU6ODA5MScsXG4gIH0sXG4gIGhtYWNWZXJpZmljYXRpb25FbmZvcmNlZDogZmFsc2UsXG59O1xuXG5jb25zdCBkZXZCYXNlOiBFbnZpcm9ubWVudFRlbXBsYXRlID0gT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgaHNtWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLmRldixcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiBmYWxzZSxcbn0pO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVkZWNsYXJlXG5leHBvcnQgY29uc3QgRW52aXJvbm1lbnRzOiBFbnZpcm9ubWVudHMgPSB7XG4gIHByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28uY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLmNvbS9hcGkvdjIveGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGxhdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWxhdGVzdC5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tbGF0ZXN0LmNvbS9hcGkvdjIveGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgc3RhZ2luZzogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby1zdGFnaW5nLmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FwcC5iaXRnby1zdGFnaW5nLmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGxvY2FsOiBPYmplY3QuYXNzaWduKHt9LCBkZXZCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9sb2NhbGhvc3Q6MzAwMCcsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2xvY2FsaG9zdDozMDAwL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgbG9jYWxOb25TZWN1cmU6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwOi8vbG9jYWxob3N0OjMwMDAnLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cDovL2xvY2FsaG9zdDozMDAwL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgbW9jazogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYml0Z28uZmFrZXVybCcsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2JpdGdvLmZha2V1cmwvYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gICAgZXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLWdvZXJsaS5ldGhlcnNjYW4uZmFrZXVybCcsXG4gICAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gICAgc25vd3RyYWNlQXBpVG9rZW46IHByb2Nlc3MuZW52LlNOT1dUUkFDRV9BUElfVE9LRU4sXG4gICAgc25vd3RyYWNlQmFzZVVybDogJ2h0dHBzOi8vYXBpLXRlc3RuZXQuc25vd3RyYWNlLmZha2V1cmwnLFxuICAgIGV0aDJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2JlYWNvbnNjYW4uY29tL2FwaScsXG4gIH0pLFxuICBhZG1pblByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGFkbWluVGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FkbWluLmJpdGdvLXRlc3QuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYWRtaW4uYml0Z28tdGVzdC5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pbkRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28tZGV2LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLWRldi5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pbkxhdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28tbGF0ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLWxhdGVzdC5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGN1c3RvbTogT2JqZWN0LmFzc2lnbih7fSwgbWFpbm5ldEJhc2UsIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgIHVyaTogcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX1JPT1RfVVJJISxcbiAgICBuZXR3b3JrOiBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fQklUQ09JTl9ORVRXT1JLIGFzIFYxTmV0d29yayxcbiAgICBoc21YcHViOlxuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJyA/IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi5wcm9kIDogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLnRlc3QsXG4gICAgYnRjRXhwbG9yZXJCYXNlVXJsOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyAhPT0gJ2JpdGNvaW4nXG4gICAgICAgID8gJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby90ZXN0bmV0L2FwaSdcbiAgICAgICAgOiAnaHR0cHM6Ly9ibG9ja3N0cmVhbS5pbmZvL2FwaScsXG4gICAgZXRoZXJzY2FuQmFzZVVybDpcbiAgICAgIHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9FVEhFUkVVTV9ORVRXT1JLICE9PSAnZXRoZXJldW0nXG4gICAgICAgID8gJ2h0dHBzOi8vYXBpLWdvZXJsaS5ldGhlcnNjYW4uaW8nXG4gICAgICAgIDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pbycsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fU1RFTExBUl9ORVRXT1JLICE9PSAnc3RlbGxhcidcbiAgICAgICAgPyBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbmBcbiAgICAgICAgOiBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3hsbS9mZWRlcmF0aW9uYCxcbiAgICBzZXJ2ZXJYcHViOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyAhPT0gJ2JpdGNvaW4nXG4gICAgICAgID8gaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3RcbiAgICAgICAgOiBoYXJkY29kZWRQdWJsaWNLZXlzLnNlcnZlclhwdWIucHJvZCxcbiAgfSksXG4gIGJyYW5jaDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG59O1xuIl19