@bitgo/sdk-core 27.8.0 → 27.9.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 (63) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/src/bitgo/index.d.ts +1 -0
  3. package/dist/src/bitgo/index.d.ts.map +1 -1
  4. package/dist/src/bitgo/index.js +2 -1
  5. package/dist/src/bitgo/lightning/custodial/iLightning.d.ts.map +1 -0
  6. package/dist/src/bitgo/lightning/custodial/iLightning.js +110 -0
  7. package/dist/src/bitgo/lightning/custodial/index.d.ts +5 -0
  8. package/dist/src/bitgo/lightning/custodial/index.d.ts.map +1 -0
  9. package/dist/src/bitgo/lightning/custodial/index.js +21 -0
  10. package/dist/src/bitgo/lightning/{lightning.d.ts → custodial/lightning.d.ts} +2 -2
  11. package/dist/src/bitgo/lightning/custodial/lightning.d.ts.map +1 -0
  12. package/dist/src/bitgo/lightning/custodial/lightning.js +111 -0
  13. package/dist/src/bitgo/lightning/custodial/lightningUtils.d.ts +46 -0
  14. package/dist/src/bitgo/lightning/custodial/lightningUtils.d.ts.map +1 -0
  15. package/dist/src/bitgo/lightning/custodial/lightningUtils.js +137 -0
  16. package/dist/src/bitgo/lightning/custodial/lnurlCodec.d.ts.map +1 -0
  17. package/dist/src/bitgo/lightning/custodial/lnurlCodec.js +28 -0
  18. package/dist/src/bitgo/lightning/index.d.ts +2 -3
  19. package/dist/src/bitgo/lightning/index.d.ts.map +1 -1
  20. package/dist/src/bitgo/lightning/index.js +3 -4
  21. package/dist/src/bitgo/lightning/lightningUtils.d.ts +23 -37
  22. package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +1 -1
  23. package/dist/src/bitgo/lightning/lightningUtils.js +41 -96
  24. package/dist/src/bitgo/lightning/signableJson.d.ts +17 -0
  25. package/dist/src/bitgo/lightning/signableJson.d.ts.map +1 -0
  26. package/dist/src/bitgo/lightning/signableJson.js +30 -0
  27. package/dist/src/bitgo/lightning/signature.d.ts +22 -0
  28. package/dist/src/bitgo/lightning/signature.d.ts.map +1 -0
  29. package/dist/src/bitgo/lightning/signature.js +60 -0
  30. package/dist/src/bitgo/staking/iStakingWallet.d.ts +6 -0
  31. package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
  32. package/dist/src/bitgo/staking/iStakingWallet.js +1 -1
  33. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts.map +1 -1
  34. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.js +42 -45
  35. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
  36. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +9 -2
  37. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -1
  38. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +6 -5
  39. package/dist/src/bitgo/wallet/iWallet.d.ts +1 -1
  40. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  41. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  42. package/dist/src/bitgo/wallet/wallet.d.ts +1 -1
  43. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  44. package/dist/src/bitgo/wallet/wallet.js +3 -3
  45. package/dist/test/unit/bitgo/lightning/lightningUtils.d.ts +2 -0
  46. package/dist/test/unit/bitgo/lightning/lightningUtils.d.ts.map +1 -0
  47. package/dist/test/unit/bitgo/lightning/lightningUtils.js +62 -0
  48. package/dist/test/unit/bitgo/lightning/signableJson.d.ts +2 -0
  49. package/dist/test/unit/bitgo/lightning/signableJson.d.ts.map +1 -0
  50. package/dist/test/unit/bitgo/lightning/signableJson.js +52 -0
  51. package/dist/test/unit/bitgo/lightning/signature.d.ts +2 -0
  52. package/dist/test/unit/bitgo/lightning/signature.d.ts.map +1 -0
  53. package/dist/test/unit/bitgo/lightning/signature.js +81 -0
  54. package/dist/tsconfig.tsbuildinfo +1 -1
  55. package/package.json +4 -4
  56. package/dist/src/bitgo/lightning/iLightning.d.ts.map +0 -1
  57. package/dist/src/bitgo/lightning/iLightning.js +0 -110
  58. package/dist/src/bitgo/lightning/lightning.d.ts.map +0 -1
  59. package/dist/src/bitgo/lightning/lightning.js +0 -111
  60. package/dist/src/bitgo/lightning/lnurlCodec.d.ts.map +0 -1
  61. package/dist/src/bitgo/lightning/lnurlCodec.js +0 -28
  62. /package/dist/src/bitgo/lightning/{iLightning.d.ts → custodial/iLightning.d.ts} +0 -0
  63. /package/dist/src/bitgo/lightning/{lnurlCodec.d.ts → custodial/lnurlCodec.d.ts} +0 -0
@@ -14,6 +14,7 @@ class MPCv2SMCUtils {
14
14
  this.MPCv2Utils = new ecdsaMPCv2_1.EcdsaMPCv2Utils(bitgo, baseCoin);
15
15
  }
16
16
  async keyGenRound1(enterprise, payload) {
17
+ (0, assert_1.default)(payload.state === public_types_1.KeyCreationMPCv2StateEnum.WaitingForBitgoRound1Data, `Invalid state for round 1, expected: ${public_types_1.KeyCreationMPCv2StateEnum.WaitingForBitgoRound1Data}, got: ${payload.state}`);
17
18
  (0, __1.decodeOrElse)(public_types_1.OVC2ToBitgoRound1Payload.name, public_types_1.OVC2ToBitgoRound1Payload, payload, (errors) => {
18
19
  throw new Error(`error(s) parsing payload: ${errors}`);
19
20
  });
@@ -24,20 +25,18 @@ class MPCv2SMCUtils {
24
25
  const messages = { p2pMessages: [], broadcastMessages: [ovc1.ovcMsg1, ovc2.ovcMsg1] };
25
26
  const result = await this.MPCv2Utils.sendKeyGenerationRound1(enterprise, userGpgPublicKey, backupGpgPublicKey, messages);
26
27
  const response = {
27
- wallet: {
28
- tssVersion: payload.tssVersion,
29
- walletType: payload.walletType,
30
- coin: payload.coin,
31
- ovc: payload.ovc,
32
- state: public_types_1.KeyCreationMPCv2StateEnum.WaitingForOVC1Round2Data,
33
- platform: {
34
- walletGpgPubKeySigs: result.walletGpgPubKeySigs,
35
- sessionId: result.sessionId,
36
- bitgoMsg1: this.MPCv2Utils.formatBitgoBroadcastMessage(result.bitgoMsg1),
37
- ovc: {
38
- [public_types_1.OVCIndexEnum.ONE]: { bitgoToOvcMsg2: this.MPCv2Utils.formatP2PMessage(result.bitgoToUserMsg2) },
39
- [public_types_1.OVCIndexEnum.TWO]: { bitgoToOvcMsg2: this.MPCv2Utils.formatP2PMessage(result.bitgoToBackupMsg2) },
40
- },
28
+ state: public_types_1.KeyCreationMPCv2StateEnum.WaitingForOVC1Round2Data,
29
+ tssVersion: payload.tssVersion,
30
+ walletType: payload.walletType,
31
+ coin: payload.coin,
32
+ ovc: payload.ovc,
33
+ platform: {
34
+ walletGpgPubKeySigs: result.walletGpgPubKeySigs,
35
+ sessionId: result.sessionId,
36
+ bitgoMsg1: this.MPCv2Utils.formatBitgoBroadcastMessage(result.bitgoMsg1),
37
+ ovc: {
38
+ [public_types_1.OVCIndexEnum.ONE]: { bitgoToOvcMsg2: this.MPCv2Utils.formatP2PMessage(result.bitgoToUserMsg2) },
39
+ [public_types_1.OVCIndexEnum.TWO]: { bitgoToOvcMsg2: this.MPCv2Utils.formatP2PMessage(result.bitgoToBackupMsg2) },
41
40
  },
42
41
  },
43
42
  };
@@ -46,6 +45,7 @@ class MPCv2SMCUtils {
46
45
  });
47
46
  }
48
47
  async keyGenRound2(enterprise, payload) {
48
+ (0, assert_1.default)(payload.state === public_types_1.KeyCreationMPCv2StateEnum.WaitingForBitgoRound2Data, `Invalid state for round 2, expected: ${public_types_1.KeyCreationMPCv2StateEnum.WaitingForBitgoRound2Data}, got: ${payload.state}`);
49
49
  (0, __1.decodeOrElse)(public_types_1.OVC2ToBitgoRound2Payload.name, public_types_1.OVC2ToBitgoRound2Payload, payload, (errors) => {
50
50
  throw new Error(`error(s) parsing payload: ${errors}`);
51
51
  });
@@ -55,25 +55,23 @@ class MPCv2SMCUtils {
55
55
  const messages = { p2pMessages: [ovc1.ovcToBitgoMsg2, ovc2.ovcToBitgoMsg2], broadcastMessages: [] };
56
56
  const result = await this.MPCv2Utils.sendKeyGenerationRound2(enterprise, sessionId, messages);
57
57
  const response = {
58
- wallet: {
59
- tssVersion: payload.tssVersion,
60
- walletType: payload.walletType,
61
- coin: payload.coin,
62
- ovc: payload.ovc,
63
- state: public_types_1.KeyCreationMPCv2StateEnum.WaitingForOVC1Round3aData,
64
- platform: {
65
- ...payload.platform,
66
- sessionId: result.sessionId,
67
- bitgoCommitment2: result.bitgoCommitment2,
68
- ovc: {
69
- [public_types_1.OVCIndexEnum.ONE]: {
70
- ...payload.platform.ovc[public_types_1.OVCIndexEnum.ONE],
71
- bitgoToOvcMsg3: this.MPCv2Utils.formatP2PMessage(result.bitgoToUserMsg3),
72
- },
73
- [public_types_1.OVCIndexEnum.TWO]: {
74
- ...payload.platform.ovc[public_types_1.OVCIndexEnum.TWO],
75
- bitgoToOvcMsg3: this.MPCv2Utils.formatP2PMessage(result.bitgoToBackupMsg3),
76
- },
58
+ state: public_types_1.KeyCreationMPCv2StateEnum.WaitingForOVC1Round3aData,
59
+ tssVersion: payload.tssVersion,
60
+ walletType: payload.walletType,
61
+ coin: payload.coin,
62
+ ovc: payload.ovc,
63
+ platform: {
64
+ ...payload.platform,
65
+ sessionId: result.sessionId,
66
+ bitgoCommitment2: result.bitgoCommitment2,
67
+ ovc: {
68
+ [public_types_1.OVCIndexEnum.ONE]: {
69
+ ...payload.platform.ovc[public_types_1.OVCIndexEnum.ONE],
70
+ bitgoToOvcMsg3: this.MPCv2Utils.formatP2PMessage(result.bitgoToUserMsg3),
71
+ },
72
+ [public_types_1.OVCIndexEnum.TWO]: {
73
+ ...payload.platform.ovc[public_types_1.OVCIndexEnum.TWO],
74
+ bitgoToOvcMsg3: this.MPCv2Utils.formatP2PMessage(result.bitgoToBackupMsg3),
77
75
  },
78
76
  },
79
77
  },
@@ -83,6 +81,7 @@ class MPCv2SMCUtils {
83
81
  });
84
82
  }
85
83
  async keyGenRound3(enterprise, payload) {
84
+ (0, assert_1.default)(payload.state === public_types_1.KeyCreationMPCv2StateEnum.WaitingForBitgoRound3Data, `Invalid state for round 3, expected: ${public_types_1.KeyCreationMPCv2StateEnum.WaitingForBitgoRound3Data}, got: ${payload.state}`);
86
85
  (0, __1.decodeOrElse)(public_types_1.OVC1ToBitgoRound3Payload.name, public_types_1.OVC1ToBitgoRound3Payload, payload, (errors) => {
87
86
  throw new Error(`error(s) parsing payload: ${errors}`);
88
87
  });
@@ -102,18 +101,16 @@ class MPCv2SMCUtils {
102
101
  isMPCv2: true,
103
102
  });
104
103
  const response = {
104
+ state: public_types_1.KeyCreationMPCv2StateEnum.WaitingForOVC1GenerateKey,
105
105
  bitGoKeyId: bitgoKeychain.id,
106
- wallet: {
107
- tssVersion: payload.tssVersion,
108
- walletType: payload.walletType,
109
- coin: payload.coin,
110
- ovc: payload.ovc,
111
- state: public_types_1.KeyCreationMPCv2StateEnum.WaitingForOVC1GenerateKey,
112
- platform: {
113
- ...payload.platform,
114
- commonKeychain: result.commonKeychain,
115
- bitgoMsg4: this.MPCv2Utils.formatBitgoBroadcastMessage(result.bitgoMsg4),
116
- },
106
+ tssVersion: payload.tssVersion,
107
+ walletType: payload.walletType,
108
+ coin: payload.coin,
109
+ ovc: payload.ovc,
110
+ platform: {
111
+ ...payload.platform,
112
+ commonKeychain: result.commonKeychain,
113
+ bitgoMsg4: this.MPCv2Utils.formatBitgoBroadcastMessage(result.bitgoMsg4),
117
114
  },
118
115
  };
119
116
  return (0, __1.decodeOrElse)(public_types_1.BitgoToOVC1Round3Response.name, public_types_1.BitgoToOVC1Round3Response, response, (errors) => {
@@ -146,4 +143,4 @@ class MPCv2SMCUtils {
146
143
  }
147
144
  }
148
145
  exports.MPCv2SMCUtils = MPCv2SMCUtils;
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvdHNzL2VjZHNhL1NNQy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsc0RBUzZCO0FBRzdCLDhDQUFnRDtBQUNoRCxtQ0FBcUQ7QUFFckQsTUFBYSxhQUFhO0lBR3hCLFlBQVksS0FBZ0IsRUFBVSxRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ3ZELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSw0QkFBZSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0sS0FBSyxDQUFDLFlBQVksQ0FBQyxVQUFrQixFQUFFLE9BQWlDO1FBQzdFLElBQUEsZ0JBQVksRUFBQyx1Q0FBd0IsQ0FBQyxJQUFJLEVBQUUsdUNBQXdCLEVBQUUsT0FBTyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDeEYsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN6RCxDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLDJCQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0MsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMxQyxNQUFNLFFBQVEsR0FBRyxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ3RGLE1BQU0sTUFBTSxH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QkFBcUIsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDO1lBQzFDLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsY0FBYyxFQUFFLG9CQUFvQjtZQUNwQyxPQUFPLEVBQUUsSUFBSTtTQUNkLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsbUJBQW1CLEVBQUUscUJBQXFCLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxDQUFDO0lBQ3pELENBQUM7Q0FDRjtBQW5LRCxzQ0FtS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQge1xuICBCaXRnb1RvT1ZDMVJvdW5kMVJlc3BvbnNlLFxuICBCaXRnb1RvT1ZDMVJvdW5kMlJlc3BvbnNlLFxuICBCaXRnb1RvT1ZDMVJvdW5kM1Jlc3BvbnNlLFxuICBLZXlDcmVhdGlvbk1QQ3YyU3RhdGVFbnVtLFxuICBPVkMxVG9CaXRnb1JvdW5kM1BheWxvYWQsXG4gIE9WQzJUb0JpdGdvUm91bmQxUGF5bG9hZCxcbiAgT1ZDMlRvQml0Z29Sb3VuZDJQYXlsb2FkLFxuICBPVkNJbmRleEVudW0sXG59IGZyb20gJ0BiaXRnby9wdWJsaWMtdHlwZXMnO1xuaW1wb3J0IHsgSUJhc2VDb2luIH0gZnJvbSAnLi4vLi4vLi4vLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vYml0Z29CYXNlJztcbmltcG9ydCB7IEVjZHNhTVBDdjJVdGlscyB9IGZyb20gJy4uL2VjZHNhTVBDdjInO1xuaW1wb3J0IHsgZGVjb2RlT3JFbHNlLCBLZXljaGFpbiB9IGZyb20gJy4uLy4uLy4uLy4uJztcblxuZXhwb3J0IGNsYXNzIE1QQ3YyU01DVXRpbHMge1xuICBwcml2YXRlIE1QQ3YyVXRpbHM6IEVjZHNhTVBDdjJVdGlscztcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlLCBwcml2YXRlIGJhc2VDb2luOiBJQmFzZUNvaW4pIHtcbiAgICB0aGlzLk1QQ3YyVXRpbHMgPSBuZXcgRWNkc2FNUEN2MlV0aWxzKGJpdGdvLCBiYXNlQ29pbik7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMga2V5R2VuUm91bmQxKGVudGVycHJpc2U6IHN0cmluZywgcGF5bG9hZDogT1ZDMlRvQml0Z29Sb3VuZDFQYXlsb2FkKTogUHJvbWlzZTxCaXRnb1RvT1ZDMVJvdW5kMVJlc3BvbnNlPiB7XG4gICAgZGVjb2RlT3JFbHNlKE9WQzJUb0JpdGdvUm91bmQxUGF5bG9hZC5uYW1lLCBPVkMyVG9CaXRnb1JvdW5kMVBheWxvYWQsIHBheWxvYWQsIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyBwYXlsb2FkOiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgICBjb25zdCBvdmMxID0gcGF5bG9hZC5vdmNbT1ZDSW5kZXhFbnVtLk9ORV07XG4gICAgY29uc3Qgb3ZjMiA9IHBheWxvYWQub3ZjW09WQ0luZGV4RW51bS5UV09dO1xuICAgIGNvbnN0IHVzZXJHcGdQdWJsaWNLZXkgPSBvdmMxLmdwZ1B1YktleTtcbiAgICBjb25zdCBiYWNrdXBHcGdQdWJsaWNLZXkgPSBvdmMyLmdwZ1B1YktleTtcbiAgICBjb25zdCBtZXNzYWdlcyA9IHsgcDJwTWVzc2FnZXM6IFtdLCBicm9hZGNhc3RNZXNzYWdlczogW292YzEub3ZjTXNnMSwgb3ZjMi5vdmNNc2cxXSB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuTVBDdjJVdGlscy5zZW5kS2V5R2VuZXJhdGlvblJvdW5kMShcbiAgICAgIGVudGVycHJpc2UsXG4gICAgICB1c2VyR3BnUHVibGljS2V5LFxuICAgICAgYmFja3VwR3BnUHVibGljS2V5LFxuICAgICAgbWVzc2FnZXNcbiAgICApO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSB7XG4gICAgICB3YWxsZXQ6IHtcbiAgICAgICAgdHNzVmVyc2lvbjogcGF5bG9hZC50c3NWZXJzaW9uLFxuICAgICAgICB3YWxsZXRUeXBlOiBwYXlsb2FkLndhbGxldFR5cGUsXG4gICAgICAgIGNvaW46IHBheWxvYWQuY29pbixcbiAgICAgICAgb3ZjOiBwYXlsb2FkLm92YyxcbiAgICAgICAgc3RhdGU6IEtleUNyZWF0aW9uTVBDdjJTdGF0ZUVudW0uV2FpdGluZ0Zvck9WQzFSb3VuZDJEYXRhLFxuICAgICAgICBwbGF0Zm9ybToge1xuICAgICAgICAgIHdhbGxldEdwZ1B1YktleVNpZ3M6IHJlc3VsdC53YWxsZXRHcGdQdWJLZXlTaWdzLFxuICAgICAgICAgIHNlc3Npb25JZDogcmVzdWx0LnNlc3Npb25JZCxcbiAgICAgICAgICBiaXRnb01zZzE6IHRoaXMuTVBDdjJVdGlscy5mb3JtYXRCaXRnb0Jyb2FkY2FzdE1lc3NhZ2UocmVzdWx0LmJpdGdvTXNnMSksXG4gICAgICAgICAgb3ZjOiB7XG4gICAgICAgICAgICBbT1ZDSW5kZXhFbnVtLk9ORV06IHsgYml0Z29Ub092Y01zZzI6IHRoaXMuTVBDdjJVdGlscy5mb3JtYXRQMlBNZXNzYWdlKHJlc3VsdC5iaXRnb1RvVXNlck1zZzIpIH0sXG4gICAgICAgICAgICBbT1ZDSW5kZXhFbnVtLlRXT106IHsgYml0Z29Ub092Y01zZzI6IHRoaXMuTVBDdjJVdGlscy5mb3JtYXRQMlBNZXNzYWdlKHJlc3VsdC5iaXRnb1RvQmFja3VwTXNnMikgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGRlY29kZU9yRWxzZShCaXRnb1RvT1ZDMVJvdW5kMVJlc3BvbnNlLm5hbWUsIEJpdGdvVG9PVkMxUm91bmQxUmVzcG9uc2UsIHJlc3BvbnNlLCAoZXJyb3JzKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGVycm9yKHMpIHBhcnNpbmcgcmVzcG9uc2U6ICR7ZXJyb3JzfWApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGtleUdlblJvdW5kMihlbnRlcnByaXNlOiBzdHJpbmcsIHBheWxvYWQ6IE9WQzJUb0JpdGdvUm91bmQyUGF5bG9hZCk6IFByb21pc2U8Qml0Z29Ub09WQzFSb3VuZDJSZXNwb25zZT4ge1xuICAgIGRlY29kZU9yRWxzZShPVkMyVG9CaXRnb1JvdW5kMlBheWxvYWQubmFtZSwgT1ZDMlRvQml0Z29Sb3VuZDJQYXlsb2FkLCBwYXlsb2FkLCAoZXJyb3JzKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGVycm9yKHMpIHBhcnNpbmcgcGF5bG9hZDogJHtlcnJvcnN9YCk7XG4gICAgfSk7XG4gICAgY29uc3Qgb3ZjMSA9IHBheWxvYWQub3ZjW09WQ0luZGV4RW51bS5PTkVdO1xuICAgIGNvbnN0IG92YzIgPSBwYXlsb2FkLm92Y1tPVkNJbmRleEVudW0uVFdPXTtcbiAgICBjb25zdCBzZXNzaW9uSWQgPSBwYXlsb2FkLnBsYXRmb3JtLnNlc3Npb25JZDtcbiAgICBjb25zdCBtZXNzYWdlcyA9IHsgcDJwTWVzc2FnZXM6IFtvdmMxLm92Y1RvQml0Z29Nc2cyLCBvdmMyLm92Y1RvQml0Z29Nc2cyXSwgYnJvYWRjYXN0TWVzc2FnZXM6IFtdIH07XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5NUEN2MlV0aWxzLnNlbmRLZXlHZW5lcmF0aW9uUm91bmQyKGVudGVycHJpc2UsIHNlc3Npb25JZCwgbWVzc2FnZXMpO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSB7XG4gICAgICB3YWxsZXQ6IHtcbiAgICAgICAgdHNzVmVyc2lvbjogcGF5bG9hZC50c3NWZXJzaW9uLFxuICAgICAgICB3YWxsZXRUeXBlOiBwYXlsb2FkLndhbGxldFR5cGUsXG4gICAgICAgIGNvaW46IHBheWxvYWQuY29pbixcbiAgICAgICAgb3ZjOiBwYXlsb2FkLm92YyxcbiAgICAgICAgc3RhdGU6IEtleUNyZWF0aW9uTVBDdjJTdGF0ZUVudW0uV2FpdGluZ0Zvck9WQzFSb3VuZDNhRGF0YSxcbiAgICAgICAgcGxhdGZvcm06IHtcbiAgICAgICAgICAuLi5wYXlsb2FkLnBsYXRmb3JtLFxuICAgICAgICAgIHNlc3Npb25JZDogcmVzdWx0LnNlc3Npb25JZCxcbiAgICAgICAgICBiaXRnb0NvbW1pdG1lbnQyOiByZXN1bHQuYml0Z29Db21taXRtZW50MixcbiAgICAgICAgICBvdmM6IHtcbiAgICAgICAgICAgIFtPVkNJbmRleEVudW0uT05FXToge1xuICAgICAgICAgICAgICAuLi5wYXlsb2FkLnBsYXRmb3JtLm92Y1tPVkNJbmRleEVudW0uT05FXSxcbiAgICAgICAgICAgICAgYml0Z29Ub092Y01zZzM6IHRoaXMuTVBDdjJVdGlscy5mb3JtYXRQMlBNZXNzYWdlKHJlc3VsdC5iaXRnb1RvVXNlck1zZzMpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFtPVkNJbmRleEVudW0uVFdPXToge1xuICAgICAgICAgICAgICAuLi5wYXlsb2FkLnBsYXRmb3JtLm92Y1tPVkNJbmRleEVudW0uVFdPXSxcbiAgICAgICAgICAgICAgYml0Z29Ub092Y01zZzM6IHRoaXMuTVBDdjJVdGlscy5mb3JtYXRQMlBNZXNzYWdlKHJlc3VsdC5iaXRnb1RvQmFja3VwTXNnMyksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICByZXR1cm4gZGVjb2RlT3JFbHNlKEJpdGdvVG9PVkMxUm91bmQyUmVzcG9uc2UubmFtZSwgQml0Z29Ub09WQzFSb3VuZDJSZXNwb25zZSwgcmVzcG9uc2UsIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyByZXNwb25zZTogJHtlcnJvcnN9YCk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMga2V5R2VuUm91bmQzKGVudGVycHJpc2U6IHN0cmluZywgcGF5bG9hZDogT1ZDMVRvQml0Z29Sb3VuZDNQYXlsb2FkKTogUHJvbWlzZTxCaXRnb1RvT1ZDMVJvdW5kM1Jlc3BvbnNlPiB7XG4gICAgZGVjb2RlT3JFbHNlKE9WQzFUb0JpdGdvUm91bmQzUGF5bG9hZC5uYW1lLCBPVkMxVG9CaXRnb1JvdW5kM1BheWxvYWQsIHBheWxvYWQsIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyBwYXlsb2FkOiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgICBjb25zdCBvdmMxID0gcGF5bG9hZC5vdmNbT1ZDSW5kZXhFbnVtLk9ORV07XG4gICAgY29uc3Qgb3ZjMiA9IHBheWxvYWQub3ZjW09WQ0luZGV4RW51bS5UV09dO1xuICAgIGNvbnN0IHNlc3Npb25JZCA9IHBheWxvYWQucGxhdGZvcm0uc2Vzc2lvbklkO1xuICAgIGNvbnN0IG1lc3NhZ2VzID0ge1xuICAgICAgcDJwTWVzc2FnZXM6IFtvdmMxLm92Y1RvQml0Z29Nc2czLCBvdmMyLm92Y1RvQml0Z29Nc2czXSxcbiAgICAgIGJyb2FkY2FzdE1lc3NhZ2VzOiBbb3ZjMS5vdmNNc2c0LCBvdmMyLm92Y01zZzRdLFxuICAgIH07XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5NUEN2MlV0aWxzLnNlbmRLZXlHZW5lcmF0aW9uUm91bmQzKGVudGVycHJpc2UsIHNlc3Npb25JZCwgbWVzc2FnZXMpO1xuXG4gICAgY29uc3Qga2V5Y2hhaW5zID0gdGhpcy5iYXNlQ29pbi5rZXljaGFpbnMoKTtcbiAgICBjb25zdCBiaXRnb0tleWNoYWluID0gYXdhaXQga2V5Y2hhaW5zLmFkZCh7XG4gICAgICBzb3VyY2U6ICdiaXRnbycsXG4gICAgICBrZXlUeXBlOiAndHNzJyxcbiAgICAgIGNvbW1vbktleWNoYWluOiByZXN1bHQuY29tbW9uS2V5Y2hhaW4sXG4gICAgICBpc01QQ3YyOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSB7XG4gICAgICBiaXRHb0tleUlkOiBiaXRnb0tleWNoYWluLmlkLFxuICAgICAgd2FsbGV0OiB7XG4gICAgICAgIHRzc1ZlcnNpb246IHBheWxvYWQudHNzVmVyc2lvbixcbiAgICAgICAgd2FsbGV0VHlwZTogcGF5bG9hZC53YWxsZXRUeXBlLFxuICAgICAgICBjb2luOiBwYXlsb2FkLmNvaW4sXG4gICAgICAgIG92YzogcGF5bG9hZC5vdmMsXG4gICAgICAgIHN0YXRlOiBLZXlDcmVhdGlvbk1QQ3YyU3RhdGVFbnVtLldhaXRpbmdGb3JPVkMxR2VuZXJhdGVLZXksXG4gICAgICAgIHBsYXRmb3JtOiB7XG4gICAgICAgICAgLi4ucGF5bG9hZC5wbGF0Zm9ybSxcbiAgICAgICAgICBjb21tb25LZXljaGFpbjogcmVzdWx0LmNvbW1vbktleWNoYWluLFxuICAgICAgICAgIGJpdGdvTXNnNDogdGhpcy5NUEN2MlV0aWxzLmZvcm1hdEJpdGdvQnJvYWRjYXN0TWVzc2FnZShyZXN1bHQuYml0Z29Nc2c0KSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIHJldHVybiBkZWNvZGVPckVsc2UoQml0Z29Ub09WQzFSb3VuZDNSZXNwb25zZS5uYW1lLCBCaXRnb1RvT1ZDMVJvdW5kM1Jlc3BvbnNlLCByZXNwb25zZSwgKGVycm9ycykgPT4ge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBlcnJvcihzKSBwYXJzaW5nIHJlc3BvbnNlOiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyB1cGxvYWRDbGllbnRLZXlzKFxuICAgIGJpdGdvS2V5SWQ6IHN0cmluZyxcbiAgICB1c2VyQ29tbW9uS2V5Y2hhaW46IHN0cmluZyxcbiAgICBiYWNrdXBDb21tb25LZXljaGFpbjogc3RyaW5nXG4gICk6IFByb21pc2U8eyB1c2VyS2V5Y2hhaW46IEtleWNoYWluOyBiYWNrdXBLZXljaGFpbjogS2V5Y2hhaW47IGJpdGdvS2V5Y2hhaW46IEtleWNoYWluIH0+IHtcbiAgICBhc3NlcnQoXG4gICAgICB1c2VyQ29tbW9uS2V5Y2hhaW4gPT09IGJhY2t1cENvbW1vbktleWNoYWluLFxuICAgICAgJ0NvbW1vbiBrZXljaGFpbiBtaXNtYXRjaCBiZXR3ZWVuIHRoZSB1c2VyIGFuZCBiYWNrdXAga2V5Y2hhaW5zJ1xuICAgICk7XG5cbiAgICBjb25zdCBrZXljaGFpbnMgPSB0aGlzLmJhc2VDb2luLmtleWNoYWlucygpO1xuICAgIGNvbnN0IGJpdGdvS2V5Y2hhaW4gPSBhd2FpdCBrZXljaGFpbnMuZ2V0KHsgaWQ6IGJpdGdvS2V5SWQgfSk7XG4gICAgYXNzZXJ0KGJpdGdvS2V5Y2hhaW4sICdLZXljaGFpbiBub3QgZm91bmQnKTtcbiAgICBhc3NlcnQoYml0Z29LZXljaGFpbi5zb3VyY2UgPT09ICdiaXRnbycsICdUaGUga2V5Y2hhaW4gaXMgbm90IGEgQml0R28ga2V5Y2hhaW4nKTtcbiAgICBhc3NlcnQoYml0Z29LZXljaGFpbi50eXBlID09PSAndHNzJywgJ0JpdEdvIGtleWNoYWluIGlzIG5vdCBhIFRTUyBrZXljaGFpbicpO1xuICAgIGFzc2VydChiaXRnb0tleWNoYWluLmNvbW1vbktleWNoYWluLCAnQml0R28ga2V5Y2hhaW4gZG9lcyBub3QgaGF2ZSBhIGNvbW1vbiBrZXljaGFpbicpO1xuICAgIGFzc2VydChiaXRnb0tleWNoYWluLmNvbW1vbktleWNoYWluID09PSB1c2VyQ29tbW9uS2V5Y2hhaW4sICdDb21tb24ga2V5Y2hhaW4gbWlzbWF0Y2ggYmV0d2VlbiB0aGUgT1ZDcyBhbmQgQml0R28nKTtcblxuICAgIGNvbnN0IHVzZXJLZXljaGFpblByb21pc2UgPSBrZXljaGFpbnMuYWRkKHtcbiAgICAgIHNvdXJjZTogJ3VzZXInLFxuICAgICAga2V5VHlwZTogJ3RzcycsXG4gICAgICBjb21tb25LZXljaGFpbjogdXNlckNvbW1vbktleWNoYWluLFxuICAgICAgaXNNUEN2MjogdHJ1ZSxcbiAgICB9KTtcbiAgICBjb25zdCBiYWNrdXBLZXljaGFpblByb21pc2UgPSBrZXljaGFpbnMuYWRkKHtcbiAgICAgIHNvdXJjZTogJ2JhY2t1cCcsXG4gICAgICBrZXlUeXBlOiAndHNzJyxcbiAgICAgIGNvbW1vbktleWNoYWluOiBiYWNrdXBDb21tb25LZXljaGFpbixcbiAgICAgIGlzTVBDdjI6IHRydWUsXG4gICAgfSk7XG5cbiAgICBjb25zdCBbdXNlcktleWNoYWluLCBiYWNrdXBLZXljaGFpbl0gPSBhd2FpdCBQcm9taXNlLmFsbChbdXNlcktleWNoYWluUHJvbWlzZSwgYmFja3VwS2V5Y2hhaW5Qcm9taXNlXSk7XG4gICAgcmV0dXJuIHsgdXNlcktleWNoYWluLCBiYWNrdXBLZXljaGFpbiwgYml0Z29LZXljaGFpbiB9O1xuICB9XG59XG4iXX0=
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvdHNzL2VjZHNhL1NNQy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsc0RBUzZCO0FBRzdCLDhDQUFnRDtBQUNoRCxtQ0FBcUQ7QUFFckQsTUFBYSxhQUFhO0lBR3hCLFlBQVksS0FBZ0IsRUFBVSxRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ3ZELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSw0QkFBZSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0sS0FBSyxDQUFDLFlBQVksQ0FBQyxVQUFrQixFQUFFLE9BQWlDO1FBQzdFLElBQUEsZ0JBQU0sRUFDSixPQUFPLENBQUMsS0FBSyxLQUFLLHdDQUF5QixDQUFDLHlCQUF5QixFQUNyRSx3Q0FBd0Msd0NBQXlCLENBQUMseUJBQXlCLFVBQVUsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUNySCxDQUFDO1FBQ0YsSUFBQSxnQkFBWSxFQUFDLHVDQUF3QixDQUFDLElBQUksRUFBRSx1Q0FBd0IsRUFBRSxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN4RixNQUFNLElBQUksS0FBSyxDQUFDLDZCQUE2QixNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3pELENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQywyQkFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDeEMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FB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QUUsc0NBQXNDLENBQUMsQ0FBQztRQUM3RSxJQUFBLGdCQUFNLEVBQUMsYUFBYSxDQUFDLGNBQWMsRUFBRSxnREFBZ0QsQ0FBQyxDQUFDO1FBQ3ZGLElBQUEsZ0JBQU0sRUFBQyxhQUFhLENBQUMsY0FBYyxLQUFLLGtCQUFrQixFQUFFLHFEQUFxRCxDQUFDLENBQUM7UUFFbkgsTUFBTSxtQkFBbUIsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDO1lBQ3hDLE1BQU0sRUFBRSxNQUFNO1lBQ2QsT0FBTyxFQUFFLEtBQUs7WUFDZCxjQUFjLEVBQUUsa0JBQWtCO1lBQ2xDLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxxQkFBcUIsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDO1lBQzFDLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsY0FBYyxFQUFFLG9CQUFvQjtZQUNwQyxPQUFPLEVBQUUsSUFBSTtTQUNkLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsbUJBQW1CLEVBQUUscUJBQXFCLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxDQUFDO0lBQ3pELENBQUM7Q0FDRjtBQTFLRCxzQ0EwS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQge1xuICBCaXRnb1RvT1ZDMVJvdW5kMVJlc3BvbnNlLFxuICBCaXRnb1RvT1ZDMVJvdW5kMlJlc3BvbnNlLFxuICBCaXRnb1RvT1ZDMVJvdW5kM1Jlc3BvbnNlLFxuICBLZXlDcmVhdGlvbk1QQ3YyU3RhdGVFbnVtLFxuICBPVkMxVG9CaXRnb1JvdW5kM1BheWxvYWQsXG4gIE9WQzJUb0JpdGdvUm91bmQxUGF5bG9hZCxcbiAgT1ZDMlRvQml0Z29Sb3VuZDJQYXlsb2FkLFxuICBPVkNJbmRleEVudW0sXG59IGZyb20gJ0BiaXRnby9wdWJsaWMtdHlwZXMnO1xuaW1wb3J0IHsgSUJhc2VDb2luIH0gZnJvbSAnLi4vLi4vLi4vLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vYml0Z29CYXNlJztcbmltcG9ydCB7IEVjZHNhTVBDdjJVdGlscyB9IGZyb20gJy4uL2VjZHNhTVBDdjInO1xuaW1wb3J0IHsgZGVjb2RlT3JFbHNlLCBLZXljaGFpbiB9IGZyb20gJy4uLy4uLy4uLy4uJztcblxuZXhwb3J0IGNsYXNzIE1QQ3YyU01DVXRpbHMge1xuICBwcml2YXRlIE1QQ3YyVXRpbHM6IEVjZHNhTVBDdjJVdGlscztcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlLCBwcml2YXRlIGJhc2VDb2luOiBJQmFzZUNvaW4pIHtcbiAgICB0aGlzLk1QQ3YyVXRpbHMgPSBuZXcgRWNkc2FNUEN2MlV0aWxzKGJpdGdvLCBiYXNlQ29pbik7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMga2V5R2VuUm91bmQxKGVudGVycHJpc2U6IHN0cmluZywgcGF5bG9hZDogT1ZDMlRvQml0Z29Sb3VuZDFQYXlsb2FkKTogUHJvbWlzZTxCaXRnb1RvT1ZDMVJvdW5kMVJlc3BvbnNlPiB7XG4gICAgYXNzZXJ0KFxuICAgICAgcGF5bG9hZC5zdGF0ZSA9PT0gS2V5Q3JlYXRpb25NUEN2MlN0YXRlRW51bS5XYWl0aW5nRm9yQml0Z29Sb3VuZDFEYXRhLFxuICAgICAgYEludmFsaWQgc3RhdGUgZm9yIHJvdW5kIDEsIGV4cGVjdGVkOiAke0tleUNyZWF0aW9uTVBDdjJTdGF0ZUVudW0uV2FpdGluZ0ZvckJpdGdvUm91bmQxRGF0YX0sIGdvdDogJHtwYXlsb2FkLnN0YXRlfWBcbiAgICApO1xuICAgIGRlY29kZU9yRWxzZShPVkMyVG9CaXRnb1JvdW5kMVBheWxvYWQubmFtZSwgT1ZDMlRvQml0Z29Sb3VuZDFQYXlsb2FkLCBwYXlsb2FkLCAoZXJyb3JzKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGVycm9yKHMpIHBhcnNpbmcgcGF5bG9hZDogJHtlcnJvcnN9YCk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBvdmMxID0gcGF5bG9hZC5vdmNbT1ZDSW5kZXhFbnVtLk9ORV07XG4gICAgY29uc3Qgb3ZjMiA9IHBheWxvYWQub3ZjW09WQ0luZGV4RW51bS5UV09dO1xuICAgIGNvbnN0IHVzZXJHcGdQdWJsaWNLZXkgPSBvdmMxLmdwZ1B1YktleTtcbiAgICBjb25zdCBiYWNrdXBHcGdQdWJsaWNLZXkgPSBvdmMyLmdwZ1B1YktleTtcbiAgICBjb25zdCBtZXNzYWdlcyA9IHsgcDJwTWVzc2FnZXM6IFtdLCBicm9hZGNhc3RNZXNzYWdlczogW292YzEub3ZjTXNnMSwgb3ZjMi5vdmNNc2cxXSB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuTVBDdjJVdGlscy5zZW5kS2V5R2VuZXJhdGlvblJvdW5kMShcbiAgICAgIGVudGVycHJpc2UsXG4gICAgICB1c2VyR3BnUHVibGljS2V5LFxuICAgICAgYmFja3VwR3BnUHVibGljS2V5LFxuICAgICAgbWVzc2FnZXNcbiAgICApO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSB7XG4gICAgICBzdGF0ZTogS2V5Q3JlYXRpb25NUEN2MlN0YXRlRW51bS5XYWl0aW5nRm9yT1ZDMVJvdW5kMkRhdGEsXG4gICAgICB0c3NWZXJzaW9uOiBwYXlsb2FkLnRzc1ZlcnNpb24sXG4gICAgICB3YWxsZXRUeXBlOiBwYXlsb2FkLndhbGxldFR5cGUsXG4gICAgICBjb2luOiBwYXlsb2FkLmNvaW4sXG4gICAgICBvdmM6IHBheWxvYWQub3ZjLFxuICAgICAgcGxhdGZvcm06IHtcbiAgICAgICAgd2FsbGV0R3BnUHViS2V5U2lnczogcmVzdWx0LndhbGxldEdwZ1B1YktleVNpZ3MsXG4gICAgICAgIHNlc3Npb25JZDogcmVzdWx0LnNlc3Npb25JZCxcbiAgICAgICAgYml0Z29Nc2cxOiB0aGlzLk1QQ3YyVXRpbHMuZm9ybWF0Qml0Z29Ccm9hZGNhc3RNZXNzYWdlKHJlc3VsdC5iaXRnb01zZzEpLFxuICAgICAgICBvdmM6IHtcbiAgICAgICAgICBbT1ZDSW5kZXhFbnVtLk9ORV06IHsgYml0Z29Ub092Y01zZzI6IHRoaXMuTVBDdjJVdGlscy5mb3JtYXRQMlBNZXNzYWdlKHJlc3VsdC5iaXRnb1RvVXNlck1zZzIpIH0sXG4gICAgICAgICAgW09WQ0luZGV4RW51bS5UV09dOiB7IGJpdGdvVG9PdmNNc2cyOiB0aGlzLk1QQ3YyVXRpbHMuZm9ybWF0UDJQTWVzc2FnZShyZXN1bHQuYml0Z29Ub0JhY2t1cE1zZzIpIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICByZXR1cm4gZGVjb2RlT3JFbHNlKEJpdGdvVG9PVkMxUm91bmQxUmVzcG9uc2UubmFtZSwgQml0Z29Ub09WQzFSb3VuZDFSZXNwb25zZSwgcmVzcG9uc2UsIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyByZXNwb25zZTogJHtlcnJvcnN9YCk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMga2V5R2VuUm91bmQyKGVudGVycHJpc2U6IHN0cmluZywgcGF5bG9hZDogT1ZDMlRvQml0Z29Sb3VuZDJQYXlsb2FkKTogUHJvbWlzZTxCaXRnb1RvT1ZDMVJvdW5kMlJlc3BvbnNlPiB7XG4gICAgYXNzZXJ0KFxuICAgICAgcGF5bG9hZC5zdGF0ZSA9PT0gS2V5Q3JlYXRpb25NUEN2MlN0YXRlRW51bS5XYWl0aW5nRm9yQml0Z29Sb3VuZDJEYXRhLFxuICAgICAgYEludmFsaWQgc3RhdGUgZm9yIHJvdW5kIDIsIGV4cGVjdGVkOiAke0tleUNyZWF0aW9uTVBDdjJTdGF0ZUVudW0uV2FpdGluZ0ZvckJpdGdvUm91bmQyRGF0YX0sIGdvdDogJHtwYXlsb2FkLnN0YXRlfWBcbiAgICApO1xuICAgIGRlY29kZU9yRWxzZShPVkMyVG9CaXRnb1JvdW5kMlBheWxvYWQubmFtZSwgT1ZDMlRvQml0Z29Sb3VuZDJQYXlsb2FkLCBwYXlsb2FkLCAoZXJyb3JzKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGVycm9yKHMpIHBhcnNpbmcgcGF5bG9hZDogJHtlcnJvcnN9YCk7XG4gICAgfSk7XG4gICAgY29uc3Qgb3ZjMSA9IHBheWxvYWQub3ZjW09WQ0luZGV4RW51bS5PTkVdO1xuICAgIGNvbnN0IG92YzIgPSBwYXlsb2FkLm92Y1tPVkNJbmRleEVudW0uVFdPXTtcbiAgICBjb25zdCBzZXNzaW9uSWQgPSBwYXlsb2FkLnBsYXRmb3JtLnNlc3Npb25JZDtcbiAgICBjb25zdCBtZXNzYWdlcyA9IHsgcDJwTWVzc2FnZXM6IFtvdmMxLm92Y1RvQml0Z29Nc2cyLCBvdmMyLm92Y1RvQml0Z29Nc2cyXSwgYnJvYWRjYXN0TWVzc2FnZXM6IFtdIH07XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5NUEN2MlV0aWxzLnNlbmRLZXlHZW5lcmF0aW9uUm91bmQyKGVudGVycHJpc2UsIHNlc3Npb25JZCwgbWVzc2FnZXMpO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSB7XG4gICAgICBzdGF0ZTogS2V5Q3JlYXRpb25NUEN2MlN0YXRlRW51bS5XYWl0aW5nRm9yT1ZDMVJvdW5kM2FEYXRhLFxuICAgICAgdHNzVmVyc2lvbjogcGF5bG9hZC50c3NWZXJzaW9uLFxuICAgICAgd2FsbGV0VHlwZTogcGF5bG9hZC53YWxsZXRUeXBlLFxuICAgICAgY29pbjogcGF5bG9hZC5jb2luLFxuICAgICAgb3ZjOiBwYXlsb2FkLm92YyxcbiAgICAgIHBsYXRmb3JtOiB7XG4gICAgICAgIC4uLnBheWxvYWQucGxhdGZvcm0sXG4gICAgICAgIHNlc3Npb25JZDogcmVzdWx0LnNlc3Npb25JZCxcbiAgICAgICAgYml0Z29Db21taXRtZW50MjogcmVzdWx0LmJpdGdvQ29tbWl0bWVudDIsXG4gICAgICAgIG92Yzoge1xuICAgICAgICAgIFtPVkNJbmRleEVudW0uT05FXToge1xuICAgICAgICAgICAgLi4ucGF5bG9hZC5wbGF0Zm9ybS5vdmNbT1ZDSW5kZXhFbnVtLk9ORV0sXG4gICAgICAgICAgICBiaXRnb1RvT3ZjTXNnMzogdGhpcy5NUEN2MlV0aWxzLmZvcm1hdFAyUE1lc3NhZ2UocmVzdWx0LmJpdGdvVG9Vc2VyTXNnMyksXG4gICAgICAgICAgfSxcbiAgICAgICAgICBbT1ZDSW5kZXhFbnVtLlRXT106IHtcbiAgICAgICAgICAgIC4uLnBheWxvYWQucGxhdGZvcm0ub3ZjW09WQ0luZGV4RW51bS5UV09dLFxuICAgICAgICAgICAgYml0Z29Ub092Y01zZzM6IHRoaXMuTVBDdjJVdGlscy5mb3JtYXRQMlBNZXNzYWdlKHJlc3VsdC5iaXRnb1RvQmFja3VwTXNnMyksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIHJldHVybiBkZWNvZGVPckVsc2UoQml0Z29Ub09WQzFSb3VuZDJSZXNwb25zZS5uYW1lLCBCaXRnb1RvT1ZDMVJvdW5kMlJlc3BvbnNlLCByZXNwb25zZSwgKGVycm9ycykgPT4ge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBlcnJvcihzKSBwYXJzaW5nIHJlc3BvbnNlOiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBrZXlHZW5Sb3VuZDMoZW50ZXJwcmlzZTogc3RyaW5nLCBwYXlsb2FkOiBPVkMxVG9CaXRnb1JvdW5kM1BheWxvYWQpOiBQcm9taXNlPEJpdGdvVG9PVkMxUm91bmQzUmVzcG9uc2U+IHtcbiAgICBhc3NlcnQoXG4gICAgICBwYXlsb2FkLnN0YXRlID09PSBLZXlDcmVhdGlvbk1QQ3YyU3RhdGVFbnVtLldhaXRpbmdGb3JCaXRnb1JvdW5kM0RhdGEsXG4gICAgICBgSW52YWxpZCBzdGF0ZSBmb3Igcm91bmQgMywgZXhwZWN0ZWQ6ICR7S2V5Q3JlYXRpb25NUEN2MlN0YXRlRW51bS5XYWl0aW5nRm9yQml0Z29Sb3VuZDNEYXRhfSwgZ290OiAke3BheWxvYWQuc3RhdGV9YFxuICAgICk7XG4gICAgZGVjb2RlT3JFbHNlKE9WQzFUb0JpdGdvUm91bmQzUGF5bG9hZC5uYW1lLCBPVkMxVG9CaXRnb1JvdW5kM1BheWxvYWQsIHBheWxvYWQsIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyBwYXlsb2FkOiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgICBjb25zdCBvdmMxID0gcGF5bG9hZC5vdmNbT1ZDSW5kZXhFbnVtLk9ORV07XG4gICAgY29uc3Qgb3ZjMiA9IHBheWxvYWQub3ZjW09WQ0luZGV4RW51bS5UV09dO1xuICAgIGNvbnN0IHNlc3Npb25JZCA9IHBheWxvYWQucGxhdGZvcm0uc2Vzc2lvbklkO1xuICAgIGNvbnN0IG1lc3NhZ2VzID0ge1xuICAgICAgcDJwTWVzc2FnZXM6IFtvdmMxLm92Y1RvQml0Z29Nc2czLCBvdmMyLm92Y1RvQml0Z29Nc2czXSxcbiAgICAgIGJyb2FkY2FzdE1lc3NhZ2VzOiBbb3ZjMS5vdmNNc2c0LCBvdmMyLm92Y01zZzRdLFxuICAgIH07XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5NUEN2MlV0aWxzLnNlbmRLZXlHZW5lcmF0aW9uUm91bmQzKGVudGVycHJpc2UsIHNlc3Npb25JZCwgbWVzc2FnZXMpO1xuXG4gICAgY29uc3Qga2V5Y2hhaW5zID0gdGhpcy5iYXNlQ29pbi5rZXljaGFpbnMoKTtcbiAgICBjb25zdCBiaXRnb0tleWNoYWluID0gYXdhaXQga2V5Y2hhaW5zLmFkZCh7XG4gICAgICBzb3VyY2U6ICdiaXRnbycsXG4gICAgICBrZXlUeXBlOiAndHNzJyxcbiAgICAgIGNvbW1vbktleWNoYWluOiByZXN1bHQuY29tbW9uS2V5Y2hhaW4sXG4gICAgICBpc01QQ3YyOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSB7XG4gICAgICBzdGF0ZTogS2V5Q3JlYXRpb25NUEN2MlN0YXRlRW51bS5XYWl0aW5nRm9yT1ZDMUdlbmVyYXRlS2V5LFxuICAgICAgYml0R29LZXlJZDogYml0Z29LZXljaGFpbi5pZCxcbiAgICAgIHRzc1ZlcnNpb246IHBheWxvYWQudHNzVmVyc2lvbixcbiAgICAgIHdhbGxldFR5cGU6IHBheWxvYWQud2FsbGV0VHlwZSxcbiAgICAgIGNvaW46IHBheWxvYWQuY29pbixcbiAgICAgIG92YzogcGF5bG9hZC5vdmMsXG4gICAgICBwbGF0Zm9ybToge1xuICAgICAgICAuLi5wYXlsb2FkLnBsYXRmb3JtLFxuICAgICAgICBjb21tb25LZXljaGFpbjogcmVzdWx0LmNvbW1vbktleWNoYWluLFxuICAgICAgICBiaXRnb01zZzQ6IHRoaXMuTVBDdjJVdGlscy5mb3JtYXRCaXRnb0Jyb2FkY2FzdE1lc3NhZ2UocmVzdWx0LmJpdGdvTXNnNCksXG4gICAgICB9LFxuICAgIH07XG5cbiAgICByZXR1cm4gZGVjb2RlT3JFbHNlKEJpdGdvVG9PVkMxUm91bmQzUmVzcG9uc2UubmFtZSwgQml0Z29Ub09WQzFSb3VuZDNSZXNwb25zZSwgcmVzcG9uc2UsIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyByZXNwb25zZTogJHtlcnJvcnN9YCk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgdXBsb2FkQ2xpZW50S2V5cyhcbiAgICBiaXRnb0tleUlkOiBzdHJpbmcsXG4gICAgdXNlckNvbW1vbktleWNoYWluOiBzdHJpbmcsXG4gICAgYmFja3VwQ29tbW9uS2V5Y2hhaW46IHN0cmluZ1xuICApOiBQcm9taXNlPHsgdXNlcktleWNoYWluOiBLZXljaGFpbjsgYmFja3VwS2V5Y2hhaW46IEtleWNoYWluOyBiaXRnb0tleWNoYWluOiBLZXljaGFpbiB9PiB7XG4gICAgYXNzZXJ0KFxuICAgICAgdXNlckNvbW1vbktleWNoYWluID09PSBiYWNrdXBDb21tb25LZXljaGFpbixcbiAgICAgICdDb21tb24ga2V5Y2hhaW4gbWlzbWF0Y2ggYmV0d2VlbiB0aGUgdXNlciBhbmQgYmFja3VwIGtleWNoYWlucydcbiAgICApO1xuXG4gICAgY29uc3Qga2V5Y2hhaW5zID0gdGhpcy5iYXNlQ29pbi5rZXljaGFpbnMoKTtcbiAgICBjb25zdCBiaXRnb0tleWNoYWluID0gYXdhaXQga2V5Y2hhaW5zLmdldCh7IGlkOiBiaXRnb0tleUlkIH0pO1xuICAgIGFzc2VydChiaXRnb0tleWNoYWluLCAnS2V5Y2hhaW4gbm90IGZvdW5kJyk7XG4gICAgYXNzZXJ0KGJpdGdvS2V5Y2hhaW4uc291cmNlID09PSAnYml0Z28nLCAnVGhlIGtleWNoYWluIGlzIG5vdCBhIEJpdEdvIGtleWNoYWluJyk7XG4gICAgYXNzZXJ0KGJpdGdvS2V5Y2hhaW4udHlwZSA9PT0gJ3RzcycsICdCaXRHbyBrZXljaGFpbiBpcyBub3QgYSBUU1Mga2V5Y2hhaW4nKTtcbiAgICBhc3NlcnQoYml0Z29LZXljaGFpbi5jb21tb25LZXljaGFpbiwgJ0JpdEdvIGtleWNoYWluIGRvZXMgbm90IGhhdmUgYSBjb21tb24ga2V5Y2hhaW4nKTtcbiAgICBhc3NlcnQoYml0Z29LZXljaGFpbi5jb21tb25LZXljaGFpbiA9PT0gdXNlckNvbW1vbktleWNoYWluLCAnQ29tbW9uIGtleWNoYWluIG1pc21hdGNoIGJldHdlZW4gdGhlIE9WQ3MgYW5kIEJpdEdvJyk7XG5cbiAgICBjb25zdCB1c2VyS2V5Y2hhaW5Qcm9taXNlID0ga2V5Y2hhaW5zLmFkZCh7XG4gICAgICBzb3VyY2U6ICd1c2VyJyxcbiAgICAgIGtleVR5cGU6ICd0c3MnLFxuICAgICAgY29tbW9uS2V5Y2hhaW46IHVzZXJDb21tb25LZXljaGFpbixcbiAgICAgIGlzTVBDdjI6IHRydWUsXG4gICAgfSk7XG4gICAgY29uc3QgYmFja3VwS2V5Y2hhaW5Qcm9taXNlID0ga2V5Y2hhaW5zLmFkZCh7XG4gICAgICBzb3VyY2U6ICdiYWNrdXAnLFxuICAgICAga2V5VHlwZTogJ3RzcycsXG4gICAgICBjb21tb25LZXljaGFpbjogYmFja3VwQ29tbW9uS2V5Y2hhaW4sXG4gICAgICBpc01QQ3YyOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgY29uc3QgW3VzZXJLZXljaGFpbiwgYmFja3VwS2V5Y2hhaW5dID0gYXdhaXQgUHJvbWlzZS5hbGwoW3VzZXJLZXljaGFpblByb21pc2UsIGJhY2t1cEtleWNoYWluUHJvbWlzZV0pO1xuICAgIHJldHVybiB7IHVzZXJLZXljaGFpbiwgYmFja3VwS2V5Y2hhaW4sIGJpdGdvS2V5Y2hhaW4gfTtcbiAgfVxufVxuIl19
@@ -1 +1 @@
1
- {"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsa.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsa.ts"],"names":[],"mappings":"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"}