@bitgo-beta/account-lib 2.24.1-alpha.42 → 2.24.1-alpha.420

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 (74) hide show
  1. package/README.md +1 -1
  2. package/dist/resources/dot/index.js +6 -2
  3. package/dist/resources/dot/westend.d.ts +1 -1
  4. package/dist/resources/dot/westend.d.ts.map +1 -1
  5. package/dist/resources/dot/westend.js +2 -2
  6. package/dist/resources/dot/westend.ts +1 -1
  7. package/dist/src/index.d.ts +106 -4
  8. package/dist/src/index.d.ts.map +1 -1
  9. package/dist/src/index.js +258 -17
  10. package/dist/src/keyPair/index.js +24 -11
  11. package/dist/src/utils/index.d.ts +1 -0
  12. package/dist/src/utils/index.d.ts.map +1 -1
  13. package/dist/src/utils/index.js +27 -10
  14. package/dist/src/utils/messages/index.d.ts +10 -0
  15. package/dist/src/utils/messages/index.d.ts.map +1 -0
  16. package/dist/src/utils/messages/index.js +30 -0
  17. package/dist/test/resources/ed25519Deriver.d.ts +15 -0
  18. package/dist/test/resources/ed25519Deriver.d.ts.map +1 -0
  19. package/dist/test/resources/ed25519Deriver.js +18 -0
  20. package/dist/test/resources/testTransaction.d.ts +11 -0
  21. package/dist/test/resources/testTransaction.d.ts.map +1 -0
  22. package/dist/test/resources/testTransaction.js +19 -0
  23. package/dist/test/resources/testTransactionBuilder.d.ts +26 -0
  24. package/dist/test/resources/testTransactionBuilder.d.ts.map +1 -0
  25. package/dist/test/resources/testTransactionBuilder.js +47 -0
  26. package/dist/test/unit/coin/baseCoin/transactionBuilder.d.ts +2 -0
  27. package/dist/test/unit/coin/baseCoin/transactionBuilder.d.ts.map +1 -0
  28. package/dist/test/unit/coin/baseCoin/transactionBuilder.js +135 -0
  29. package/dist/test/unit/fixtures.d.ts +16 -0
  30. package/dist/test/unit/fixtures.d.ts.map +1 -0
  31. package/dist/test/unit/fixtures.js +43 -0
  32. package/dist/test/unit/index.d.ts +2 -0
  33. package/dist/test/unit/index.d.ts.map +1 -0
  34. package/dist/test/unit/index.js +13 -0
  35. package/dist/test/unit/keyPair/index.d.ts +2 -0
  36. package/dist/test/unit/keyPair/index.d.ts.map +1 -0
  37. package/dist/test/unit/keyPair/index.js +132 -0
  38. package/dist/test/unit/messageFactory.d.ts +2 -0
  39. package/dist/test/unit/messageFactory.d.ts.map +1 -0
  40. package/dist/test/unit/messageFactory.js +52 -0
  41. package/dist/test/unit/mpc/tss/ecdsa/ecdsa.d.ts +2 -0
  42. package/dist/test/unit/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
  43. package/dist/test/unit/mpc/tss/ecdsa/ecdsa.js +333 -0
  44. package/dist/test/unit/mpc/tss/eddsa/eddsa.d.ts +5 -0
  45. package/dist/test/unit/mpc/tss/eddsa/eddsa.d.ts.map +1 -0
  46. package/dist/test/unit/mpc/tss/eddsa/eddsa.js +322 -0
  47. package/dist/test/unit/mpc/tss/fixtures/ecdsa.d.ts +130 -0
  48. package/dist/test/unit/mpc/tss/fixtures/ecdsa.d.ts.map +1 -0
  49. package/dist/test/unit/mpc/tss/fixtures/ecdsa.js +283 -0
  50. package/dist/test/unit/utils/crypto.d.ts +2 -0
  51. package/dist/test/unit/utils/crypto.d.ts.map +1 -0
  52. package/dist/test/unit/utils/crypto.js +60 -0
  53. package/dist/test/unit/utils/ed25519KeyDeriver.d.ts +2 -0
  54. package/dist/test/unit/utils/ed25519KeyDeriver.d.ts.map +1 -0
  55. package/dist/test/unit/utils/ed25519KeyDeriver.js +23 -0
  56. package/dist/test/unit/utils/index.d.ts +2 -0
  57. package/dist/test/unit/utils/index.d.ts.map +1 -0
  58. package/dist/test/unit/utils/index.js +61 -0
  59. package/dist/test/unit/utils/messages/index.d.ts +2 -0
  60. package/dist/test/unit/utils/messages/index.d.ts.map +1 -0
  61. package/dist/test/unit/utils/messages/index.js +51 -0
  62. package/dist/test/unit/verifyMessage.d.ts +2 -0
  63. package/dist/test/unit/verifyMessage.d.ts.map +1 -0
  64. package/dist/test/unit/verifyMessage.js +96 -0
  65. package/dist/tsconfig.tsbuildinfo +1 -43387
  66. package/package.json +75 -31
  67. package/.mocharc.js +0 -10
  68. package/CHANGELOG.md +0 -389
  69. package/DEVELOPER.md +0 -93
  70. package/resources/README.md +0 -17
  71. package/resources/cspr/contract/keys-manager.wasm +0 -0
  72. package/resources/dot/index.ts +0 -2
  73. package/resources/dot/mainnet.ts +0 -2
  74. package/resources/dot/westend.ts +0 -2
@@ -1,6 +1,6 @@
1
+ import { BaseBuilder, BaseTransactionBuilderFactory, Ed25519KeyDeriver, Ed25519BIP32, Eddsa, accountLibBaseCoin, acountLibCrypto, BaseMessageBuilderFactory, MessageStandardType } from '@bitgo-beta/sdk-core';
1
2
  import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
2
- import { acountLibCrypto, accountLibBaseCoin, BaseBuilder, BaseTransactionBuilderFactory, Ed25519BIP32, Ed25519KeyDeriver, Eddsa } from '@bitgo-beta/sdk-core';
3
- export { Eddsa, Ed25519BIP32 };
3
+ export { Ed25519BIP32, Eddsa };
4
4
  /**
5
5
  * Deprecated after version 2.19.0
6
6
  * Retained for short term backwards compatibility - migrate to: @bitgo-beta/sdk-api and @bitgo-beta/sdk-core
@@ -18,8 +18,6 @@ import { XtzLib as Xtz } from '@bitgo-beta/sdk-coin-xtz';
18
18
  export { Xtz };
19
19
  import * as Eth from '@bitgo-beta/sdk-coin-eth';
20
20
  export { Eth };
21
- import * as Eth2 from '@bitgo-beta/sdk-coin-eth2';
22
- export { Eth2 };
23
21
  import * as Etc from '@bitgo-beta/sdk-coin-etc';
24
22
  export { Etc };
25
23
  import * as AvaxC from '@bitgo-beta/sdk-coin-avaxc';
@@ -36,12 +34,48 @@ import { StxLib as Stx } from '@bitgo-beta/sdk-coin-stx';
36
34
  export { Stx };
37
35
  import { AlgoLib as Algo } from '@bitgo-beta/sdk-coin-algo';
38
36
  export { Algo };
37
+ import * as Arbeth from '@bitgo-beta/sdk-coin-arbeth';
38
+ export { Arbeth };
39
39
  import * as Atom from '@bitgo-beta/sdk-coin-atom';
40
40
  export { Atom };
41
+ import * as Osmo from '@bitgo-beta/sdk-coin-osmo';
42
+ export { Osmo };
41
43
  import { AvaxpLib as AvaxP } from '@bitgo-beta/sdk-coin-avaxp';
42
44
  export { AvaxP };
45
+ import * as Tia from '@bitgo-beta/sdk-coin-tia';
46
+ export { Tia };
47
+ import * as Bera from '@bitgo-beta/sdk-coin-bera';
48
+ export { Bera };
49
+ import * as Bld from '@bitgo-beta/sdk-coin-bld';
50
+ export { Bld };
51
+ import * as Hash from '@bitgo-beta/sdk-coin-hash';
52
+ export { Hash };
53
+ import * as Sei from '@bitgo-beta/sdk-coin-sei';
54
+ export { Sei };
55
+ import * as Injective from '@bitgo-beta/sdk-coin-injective';
56
+ export { Injective };
57
+ import * as Islm from '@bitgo-beta/sdk-coin-islm';
58
+ export { Islm };
59
+ import * as Zeta from '@bitgo-beta/sdk-coin-zeta';
60
+ export { Zeta };
61
+ import * as Coreum from '@bitgo-beta/sdk-coin-coreum';
62
+ export { Coreum };
63
+ import * as Rune from '@bitgo-beta/sdk-coin-rune';
64
+ export { Rune };
65
+ import * as Baby from '@bitgo-beta/sdk-coin-baby';
66
+ export { Baby };
67
+ import * as Mon from '@bitgo-beta/sdk-coin-mon';
68
+ export { Mon };
69
+ import * as Cronos from '@bitgo-beta/sdk-coin-cronos';
70
+ export { Cronos };
71
+ import * as Initia from '@bitgo-beta/sdk-coin-initia';
72
+ export { Initia };
73
+ import * as Asi from '@bitgo-beta/sdk-coin-asi';
74
+ export { Asi };
43
75
  import * as Sol from '@bitgo-beta/sdk-coin-sol';
44
76
  export { Sol };
77
+ import * as Ada from '@bitgo-beta/sdk-coin-ada';
78
+ export { Ada };
45
79
  import * as Dot from '@bitgo-beta/sdk-coin-dot';
46
80
  export { Dot };
47
81
  import * as Near from '@bitgo-beta/sdk-coin-near';
@@ -50,8 +84,54 @@ import * as Bsc from '@bitgo-beta/sdk-coin-bsc';
50
84
  export { Bsc };
51
85
  import * as Polygon from '@bitgo-beta/sdk-coin-polygon';
52
86
  export { Polygon };
87
+ import * as Polyx from '@bitgo-beta/sdk-coin-polyx';
88
+ export { Polyx };
89
+ import * as Opeth from '@bitgo-beta/sdk-coin-opeth';
90
+ export { Opeth };
53
91
  import * as Sui from '@bitgo-beta/sdk-coin-sui';
54
92
  export { Sui };
93
+ import * as Ton from '@bitgo-beta/sdk-coin-ton';
94
+ export { Ton };
95
+ import * as XRP from '@bitgo-beta/sdk-coin-xrp';
96
+ export { XRP };
97
+ import * as zkEth from '@bitgo-beta/sdk-coin-zketh';
98
+ export { zkEth };
99
+ import * as Oas from '@bitgo-beta/sdk-coin-oas';
100
+ export { Oas };
101
+ import * as Coredao from '@bitgo-beta/sdk-coin-coredao';
102
+ export { Coredao };
103
+ import * as Apt from '@bitgo-beta/sdk-coin-apt';
104
+ export { Apt };
105
+ import * as Apechain from '@bitgo-beta/sdk-coin-apechain';
106
+ export { Apechain };
107
+ import * as Tao from '@bitgo-beta/sdk-coin-tao';
108
+ export { Tao };
109
+ import * as Icp from '@bitgo-beta/sdk-coin-icp';
110
+ export { Icp };
111
+ import * as Flr from '@bitgo-beta/sdk-coin-flr';
112
+ export { Flr };
113
+ import * as EvmCoin from '@bitgo-beta/sdk-coin-evm';
114
+ export { EvmCoin };
115
+ import * as Sgb from '@bitgo-beta/sdk-coin-sgb';
116
+ export { Sgb };
117
+ import * as Xdc from '@bitgo-beta/sdk-coin-xdc';
118
+ export { Xdc };
119
+ import * as Wemix from '@bitgo-beta/sdk-coin-wemix';
120
+ export { Wemix };
121
+ import * as World from '@bitgo-beta/sdk-coin-world';
122
+ export { World };
123
+ import * as Stt from '@bitgo-beta/sdk-coin-stt';
124
+ export { Stt };
125
+ import * as Soneium from '@bitgo-beta/sdk-coin-soneium';
126
+ export { Soneium };
127
+ import * as Vet from '@bitgo-beta/sdk-coin-vet';
128
+ export { Vet };
129
+ import * as CosmosSharedCoin from '@bitgo-beta/sdk-coin-cosmos';
130
+ export { CosmosSharedCoin };
131
+ import * as Canton from '@bitgo-beta/sdk-coin-canton';
132
+ export { Canton };
133
+ import { MIDNIGHT_TNC_HASH } from './utils';
134
+ export { MIDNIGHT_TNC_HASH };
55
135
  /**
56
136
  * Get the list of coin tickers supported by this library.
57
137
  */
@@ -63,6 +143,7 @@ export declare const supportedCoins: string[];
63
143
  * @returns {any} An instance of a {@code TransactionBuilder}
64
144
  */
65
145
  export declare function getBuilder(coinName: string): BaseBuilder;
146
+ export declare function getMessageBuilderFactory(coinName: string): BaseMessageBuilderFactory;
66
147
  /**
67
148
  * Register a new coin instance with its builder factory
68
149
  *
@@ -73,4 +154,25 @@ export declare function getBuilder(coinName: string): BaseBuilder;
73
154
  export declare function register<T extends BaseTransactionBuilderFactory>(coinName: string, builderFactory: {
74
155
  new (_coinConfig: Readonly<CoinConfig>): T;
75
156
  }): T;
157
+ /**
158
+ * Register a new coin instance with its message builder factory constructor.
159
+ *
160
+ * @param {string} coinName coin name as it was registered in @bitgo-beta/statics
161
+ * @param {any} messageBuilderFactory the message builder factory class for that coin
162
+ * @returns {any} the message builder factory instance for the registered coin
163
+ */
164
+ export declare function registerMessageBuilderFactory<T extends BaseMessageBuilderFactory>(coinName: string, messageBuilderFactory: {
165
+ new (_coinConfig: Readonly<CoinConfig>): T;
166
+ }): T;
167
+ /**
168
+ * Verify a message against the given encoded payload.
169
+ *
170
+ * @param {string} coinName - The name of the coin.
171
+ * @param {string} messageRaw - The raw message to verify.
172
+ * @param {string} messageEncoded - The encoded message to verify against.
173
+ * @param {MessageStandardType} messageStandardType - The type of message standard.
174
+ * @param {Record<string, unknown>} [metadata] - Optional metadata for verification.
175
+ * @returns {Promise<boolean>} - Returns true if the verification is successful, false otherwise.
176
+ */
177
+ export declare function verifyMessage(coinName: string, messageRaw: string, messageEncoded: string, messageStandardType: MessageStandardType, metadata?: Record<string, unknown>): Promise<boolean>;
76
178
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -11,20 +15,36 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
11
15
  }) : function(o, v) {
12
16
  o["default"] = v;
13
17
  });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
21
35
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.register = exports.getBuilder = exports.supportedCoins = exports.Sui = exports.Polygon = exports.Bsc = exports.Near = exports.Dot = exports.Sol = exports.AvaxP = exports.Atom = exports.Algo = exports.Stx = exports.Cspr = exports.Hbar = exports.Celo = exports.Rbtc = exports.AvaxC = exports.Etc = exports.Eth2 = exports.Eth = exports.Xtz = exports.Trx = exports.BaseCoin = exports.Ed25519KeyDeriver = exports.crypto = exports.Ed25519BIP32 = exports.Eddsa = void 0;
23
- const statics_1 = require("@bitgo-beta/statics");
36
+ exports.Apt = exports.Coredao = exports.Oas = exports.zkEth = exports.XRP = exports.Ton = exports.Sui = exports.Opeth = exports.Polyx = exports.Polygon = exports.Bsc = exports.Near = exports.Dot = exports.Ada = exports.Sol = exports.Asi = exports.Initia = exports.Cronos = exports.Mon = exports.Baby = exports.Rune = exports.Coreum = exports.Zeta = exports.Islm = exports.Injective = exports.Sei = exports.Hash = exports.Bld = exports.Bera = exports.Tia = exports.AvaxP = exports.Osmo = exports.Atom = exports.Arbeth = exports.Algo = exports.Stx = exports.Cspr = exports.Hbar = exports.Celo = exports.Rbtc = exports.AvaxC = exports.Etc = exports.Eth = exports.Xtz = exports.Trx = exports.BaseCoin = exports.Ed25519KeyDeriver = exports.crypto = exports.Eddsa = exports.Ed25519BIP32 = void 0;
37
+ exports.supportedCoins = exports.MIDNIGHT_TNC_HASH = exports.Canton = exports.CosmosSharedCoin = exports.Vet = exports.Soneium = exports.Stt = exports.World = exports.Wemix = exports.Xdc = exports.Sgb = exports.EvmCoin = exports.Flr = exports.Icp = exports.Tao = exports.Apechain = void 0;
38
+ exports.getBuilder = getBuilder;
39
+ exports.getMessageBuilderFactory = getMessageBuilderFactory;
40
+ exports.register = register;
41
+ exports.registerMessageBuilderFactory = registerMessageBuilderFactory;
42
+ exports.verifyMessage = verifyMessage;
24
43
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
25
- Object.defineProperty(exports, "Ed25519BIP32", { enumerable: true, get: function () { return sdk_core_1.Ed25519BIP32; } });
26
44
  Object.defineProperty(exports, "Ed25519KeyDeriver", { enumerable: true, get: function () { return sdk_core_1.Ed25519KeyDeriver; } });
45
+ Object.defineProperty(exports, "Ed25519BIP32", { enumerable: true, get: function () { return sdk_core_1.Ed25519BIP32; } });
27
46
  Object.defineProperty(exports, "Eddsa", { enumerable: true, get: function () { return sdk_core_1.Eddsa; } });
47
+ const statics_1 = require("@bitgo-beta/statics");
28
48
  /**
29
49
  * Deprecated after version 2.19.0
30
50
  * Retained for short term backwards compatibility - migrate to: @bitgo-beta/sdk-api and @bitgo-beta/sdk-core
@@ -42,8 +62,6 @@ const sdk_coin_xtz_1 = require("@bitgo-beta/sdk-coin-xtz");
42
62
  Object.defineProperty(exports, "Xtz", { enumerable: true, get: function () { return sdk_coin_xtz_1.XtzLib; } });
43
63
  const Eth = __importStar(require("@bitgo-beta/sdk-coin-eth"));
44
64
  exports.Eth = Eth;
45
- const Eth2 = __importStar(require("@bitgo-beta/sdk-coin-eth2"));
46
- exports.Eth2 = Eth2;
47
65
  const Etc = __importStar(require("@bitgo-beta/sdk-coin-etc"));
48
66
  exports.Etc = Etc;
49
67
  const AvaxC = __importStar(require("@bitgo-beta/sdk-coin-avaxc"));
@@ -60,12 +78,48 @@ const sdk_coin_stx_1 = require("@bitgo-beta/sdk-coin-stx");
60
78
  Object.defineProperty(exports, "Stx", { enumerable: true, get: function () { return sdk_coin_stx_1.StxLib; } });
61
79
  const sdk_coin_algo_1 = require("@bitgo-beta/sdk-coin-algo");
62
80
  Object.defineProperty(exports, "Algo", { enumerable: true, get: function () { return sdk_coin_algo_1.AlgoLib; } });
81
+ const Arbeth = __importStar(require("@bitgo-beta/sdk-coin-arbeth"));
82
+ exports.Arbeth = Arbeth;
63
83
  const Atom = __importStar(require("@bitgo-beta/sdk-coin-atom"));
64
84
  exports.Atom = Atom;
85
+ const Osmo = __importStar(require("@bitgo-beta/sdk-coin-osmo"));
86
+ exports.Osmo = Osmo;
65
87
  const sdk_coin_avaxp_1 = require("@bitgo-beta/sdk-coin-avaxp");
66
88
  Object.defineProperty(exports, "AvaxP", { enumerable: true, get: function () { return sdk_coin_avaxp_1.AvaxpLib; } });
89
+ const Tia = __importStar(require("@bitgo-beta/sdk-coin-tia"));
90
+ exports.Tia = Tia;
91
+ const Bera = __importStar(require("@bitgo-beta/sdk-coin-bera"));
92
+ exports.Bera = Bera;
93
+ const Bld = __importStar(require("@bitgo-beta/sdk-coin-bld"));
94
+ exports.Bld = Bld;
95
+ const Hash = __importStar(require("@bitgo-beta/sdk-coin-hash"));
96
+ exports.Hash = Hash;
97
+ const Sei = __importStar(require("@bitgo-beta/sdk-coin-sei"));
98
+ exports.Sei = Sei;
99
+ const Injective = __importStar(require("@bitgo-beta/sdk-coin-injective"));
100
+ exports.Injective = Injective;
101
+ const Islm = __importStar(require("@bitgo-beta/sdk-coin-islm"));
102
+ exports.Islm = Islm;
103
+ const Zeta = __importStar(require("@bitgo-beta/sdk-coin-zeta"));
104
+ exports.Zeta = Zeta;
105
+ const Coreum = __importStar(require("@bitgo-beta/sdk-coin-coreum"));
106
+ exports.Coreum = Coreum;
107
+ const Rune = __importStar(require("@bitgo-beta/sdk-coin-rune"));
108
+ exports.Rune = Rune;
109
+ const Baby = __importStar(require("@bitgo-beta/sdk-coin-baby"));
110
+ exports.Baby = Baby;
111
+ const Mon = __importStar(require("@bitgo-beta/sdk-coin-mon"));
112
+ exports.Mon = Mon;
113
+ const Cronos = __importStar(require("@bitgo-beta/sdk-coin-cronos"));
114
+ exports.Cronos = Cronos;
115
+ const Initia = __importStar(require("@bitgo-beta/sdk-coin-initia"));
116
+ exports.Initia = Initia;
117
+ const Asi = __importStar(require("@bitgo-beta/sdk-coin-asi"));
118
+ exports.Asi = Asi;
67
119
  const Sol = __importStar(require("@bitgo-beta/sdk-coin-sol"));
68
120
  exports.Sol = Sol;
121
+ const Ada = __importStar(require("@bitgo-beta/sdk-coin-ada"));
122
+ exports.Ada = Ada;
69
123
  const Dot = __importStar(require("@bitgo-beta/sdk-coin-dot"));
70
124
  exports.Dot = Dot;
71
125
  const Near = __importStar(require("@bitgo-beta/sdk-coin-near"));
@@ -74,8 +128,54 @@ const Bsc = __importStar(require("@bitgo-beta/sdk-coin-bsc"));
74
128
  exports.Bsc = Bsc;
75
129
  const Polygon = __importStar(require("@bitgo-beta/sdk-coin-polygon"));
76
130
  exports.Polygon = Polygon;
131
+ const Polyx = __importStar(require("@bitgo-beta/sdk-coin-polyx"));
132
+ exports.Polyx = Polyx;
133
+ const Opeth = __importStar(require("@bitgo-beta/sdk-coin-opeth"));
134
+ exports.Opeth = Opeth;
77
135
  const Sui = __importStar(require("@bitgo-beta/sdk-coin-sui"));
78
136
  exports.Sui = Sui;
137
+ const Ton = __importStar(require("@bitgo-beta/sdk-coin-ton"));
138
+ exports.Ton = Ton;
139
+ const XRP = __importStar(require("@bitgo-beta/sdk-coin-xrp"));
140
+ exports.XRP = XRP;
141
+ const zkEth = __importStar(require("@bitgo-beta/sdk-coin-zketh"));
142
+ exports.zkEth = zkEth;
143
+ const Oas = __importStar(require("@bitgo-beta/sdk-coin-oas"));
144
+ exports.Oas = Oas;
145
+ const Coredao = __importStar(require("@bitgo-beta/sdk-coin-coredao"));
146
+ exports.Coredao = Coredao;
147
+ const Apt = __importStar(require("@bitgo-beta/sdk-coin-apt"));
148
+ exports.Apt = Apt;
149
+ const Apechain = __importStar(require("@bitgo-beta/sdk-coin-apechain"));
150
+ exports.Apechain = Apechain;
151
+ const Tao = __importStar(require("@bitgo-beta/sdk-coin-tao"));
152
+ exports.Tao = Tao;
153
+ const Icp = __importStar(require("@bitgo-beta/sdk-coin-icp"));
154
+ exports.Icp = Icp;
155
+ const Flr = __importStar(require("@bitgo-beta/sdk-coin-flr"));
156
+ exports.Flr = Flr;
157
+ const EvmCoin = __importStar(require("@bitgo-beta/sdk-coin-evm"));
158
+ exports.EvmCoin = EvmCoin;
159
+ const Sgb = __importStar(require("@bitgo-beta/sdk-coin-sgb"));
160
+ exports.Sgb = Sgb;
161
+ const Xdc = __importStar(require("@bitgo-beta/sdk-coin-xdc"));
162
+ exports.Xdc = Xdc;
163
+ const Wemix = __importStar(require("@bitgo-beta/sdk-coin-wemix"));
164
+ exports.Wemix = Wemix;
165
+ const World = __importStar(require("@bitgo-beta/sdk-coin-world"));
166
+ exports.World = World;
167
+ const Stt = __importStar(require("@bitgo-beta/sdk-coin-stt"));
168
+ exports.Stt = Stt;
169
+ const Soneium = __importStar(require("@bitgo-beta/sdk-coin-soneium"));
170
+ exports.Soneium = Soneium;
171
+ const Vet = __importStar(require("@bitgo-beta/sdk-coin-vet"));
172
+ exports.Vet = Vet;
173
+ const CosmosSharedCoin = __importStar(require("@bitgo-beta/sdk-coin-cosmos"));
174
+ exports.CosmosSharedCoin = CosmosSharedCoin;
175
+ const Canton = __importStar(require("@bitgo-beta/sdk-coin-canton"));
176
+ exports.Canton = Canton;
177
+ const utils_1 = require("./utils");
178
+ Object.defineProperty(exports, "MIDNIGHT_TNC_HASH", { enumerable: true, get: function () { return utils_1.MIDNIGHT_TNC_HASH; } });
79
179
  const coinBuilderMap = {
80
180
  trx: Trx.WrappedBuilder,
81
181
  ttrx: Trx.WrappedBuilder,
@@ -86,10 +186,11 @@ const coinBuilderMap = {
86
186
  eth: Eth.TransactionBuilder,
87
187
  teth: Eth.TransactionBuilder,
88
188
  gteth: Eth.TransactionBuilder,
189
+ hteth: Eth.TransactionBuilder,
89
190
  rbtc: Rbtc.TransactionBuilder,
90
191
  trbtc: Rbtc.TransactionBuilder,
91
192
  celo: Celo.TransactionBuilder,
92
- tcelo: Celo.TransactionBuilder,
193
+ tcelo: Celo.TestnetTransactionBuilder,
93
194
  avaxc: AvaxC.TransactionBuilder,
94
195
  tavaxc: AvaxC.TransactionBuilder,
95
196
  bsc: Bsc.TransactionBuilder,
@@ -113,9 +214,108 @@ const coinBuilderMap = {
113
214
  tpolygon: Polygon.TransactionBuilder,
114
215
  sui: Sui.TransactionBuilderFactory,
115
216
  tsui: Sui.TransactionBuilderFactory,
217
+ tia: Tia.TransactionBuilderFactory,
218
+ ttia: Tia.TransactionBuilderFactory,
116
219
  atom: Atom.TransactionBuilderFactory,
117
220
  tatom: Atom.TransactionBuilderFactory,
221
+ osmo: Osmo.TransactionBuilderFactory,
222
+ tosmo: Osmo.TransactionBuilderFactory,
223
+ bld: Bld.TransactionBuilderFactory,
224
+ tbld: Bld.TransactionBuilderFactory,
225
+ hash: Hash.TransactionBuilderFactory,
226
+ thash: Hash.TransactionBuilderFactory,
227
+ sei: Sei.TransactionBuilderFactory,
228
+ tsei: Sei.TransactionBuilderFactory,
229
+ injective: Injective.TransactionBuilderFactory,
230
+ tinjective: Injective.TransactionBuilderFactory,
231
+ zeta: Zeta.TransactionBuilderFactory,
232
+ tzeta: Zeta.TransactionBuilderFactory,
233
+ islm: Islm.TransactionBuilderFactory,
234
+ tislm: Islm.TransactionBuilderFactory,
235
+ coreum: Coreum.TransactionBuilderFactory,
236
+ tcoreum: Coreum.TransactionBuilderFactory,
237
+ arbeth: Arbeth.TransactionBuilder,
238
+ tarbeth: Arbeth.TransactionBuilder,
239
+ opeth: Opeth.TransactionBuilder,
240
+ topeth: Opeth.TransactionBuilder,
241
+ ton: Ton.TransactionBuilder,
242
+ tton: Ton.TransactionBuilder,
243
+ zketh: zkEth.TransactionBuilder,
244
+ tzketh: zkEth.TransactionBuilder,
245
+ bera: Bera.TransactionBuilder,
246
+ tbera: Bera.TransactionBuilder,
247
+ rune: Rune.TransactionBuilderFactory,
248
+ trune: Rune.TransactionBuilderFactory,
249
+ oas: Oas.TransactionBuilder,
250
+ toas: Oas.TransactionBuilder,
251
+ coredao: Coredao.TransactionBuilder,
252
+ tcoredao: Coredao.TransactionBuilder,
253
+ apechain: Apechain.TransactionBuilder,
254
+ tapechain: Apechain.TransactionBuilder,
255
+ apt: Apt.TransactionBuilder,
256
+ tapt: Apt.TransactionBuilder,
257
+ tao: Tao.TransactionBuilderFactory,
258
+ ttao: Tao.TransactionBuilderFactory,
259
+ icp: Icp.TransactionBuilder,
260
+ ticp: Icp.TransactionBuilder,
261
+ baby: Baby.TransactionBuilder,
262
+ tbaby: Baby.TransactionBuilder,
263
+ cronos: Cronos.TransactionBuilder,
264
+ tcronos: Cronos.TransactionBuilder,
265
+ initia: Initia.TransactionBuilder,
266
+ tinitia: Initia.TransactionBuilder,
267
+ asi: Asi.TransactionBuilder,
268
+ tasi: Asi.TransactionBuilder,
269
+ flr: Flr.TransactionBuilder,
270
+ tflr: Flr.TransactionBuilder,
271
+ sgb: Sgb.TransactionBuilder,
272
+ tsgb: Sgb.TransactionBuilder,
273
+ xdc: Xdc.TransactionBuilder,
274
+ txdc: Xdc.TransactionBuilder,
275
+ wemix: Wemix.TransactionBuilder,
276
+ twemix: Wemix.TransactionBuilder,
277
+ mon: Mon.TransactionBuilder,
278
+ tmon: Mon.TransactionBuilder,
279
+ world: World.TransactionBuilder,
280
+ tworld: World.TransactionBuilder,
281
+ soneium: Soneium.TransactionBuilder,
282
+ tsoneium: Soneium.TransactionBuilder,
283
+ tstt: Stt.TransactionBuilder,
284
+ polyx: Polyx.TransactionBuilderFactory,
285
+ tpolyx: Polyx.TransactionBuilderFactory,
286
+ vet: Vet.TransactionBuilderFactory,
287
+ tvet: Vet.TransactionBuilderFactory,
288
+ canton: Canton.TransactionBuilderFactory,
289
+ tcanton: Canton.TransactionBuilderFactory,
290
+ };
291
+ const coinMessageBuilderFactoryMap = {
292
+ eth: Eth.MessageBuilderFactory,
293
+ hteth: Eth.MessageBuilderFactory,
294
+ bsc: Bsc.MessageBuilderFactory,
295
+ tbsc: Bsc.MessageBuilderFactory,
296
+ ada: Ada.MessageBuilderFactory,
297
+ tada: Ada.MessageBuilderFactory,
298
+ sol: Sol.MessageBuilderFactory,
299
+ tsol: Sol.MessageBuilderFactory,
300
+ arbeth: Eth.MessageBuilderFactory,
301
+ tarbeth: Eth.MessageBuilderFactory,
302
+ opeth: Eth.MessageBuilderFactory,
303
+ topeth: Eth.MessageBuilderFactory,
304
+ baseeth: Eth.MessageBuilderFactory,
305
+ tbaseeth: Eth.MessageBuilderFactory,
306
+ polygon: Eth.MessageBuilderFactory,
307
+ tpolygon: Eth.MessageBuilderFactory,
118
308
  };
309
+ statics_1.coins
310
+ .filter((coin) => coin.features.includes(statics_1.CoinFeature.SHARED_EVM_SDK))
311
+ .forEach((coin) => {
312
+ coinBuilderMap[coin.name] = EvmCoin.TransactionBuilder;
313
+ });
314
+ statics_1.coins
315
+ .filter((coin) => coin.features.includes(statics_1.CoinFeature.SHARED_COSMOS_SDK))
316
+ .forEach((coin) => {
317
+ coinBuilderMap[coin.name] = CosmosSharedCoin.TransactionBuilder;
318
+ });
119
319
  /**
120
320
  * Get the list of coin tickers supported by this library.
121
321
  */
@@ -133,7 +333,13 @@ function getBuilder(coinName) {
133
333
  }
134
334
  return new builderClass(statics_1.coins.get(coinName));
135
335
  }
136
- exports.getBuilder = getBuilder;
336
+ function getMessageBuilderFactory(coinName) {
337
+ const messageBuilderFactoryClass = coinMessageBuilderFactoryMap[coinName];
338
+ if (!messageBuilderFactoryClass) {
339
+ throw new sdk_core_1.BuildMessageError(`Message builder factory for coin ${coinName} not supported`);
340
+ }
341
+ return new messageBuilderFactoryClass(statics_1.coins.get(coinName));
342
+ }
137
343
  /**
138
344
  * Register a new coin instance with its builder factory
139
345
  *
@@ -148,5 +354,40 @@ function register(coinName, builderFactory) {
148
354
  coinBuilderMap[coinName] = builderFactory; // For now register the constructor function until reimplement getBuilder method
149
355
  return factory;
150
356
  }
151
- exports.register = register;
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlEQUFvRTtBQUNwRSxtREFTOEI7QUFDZCw2RkFKZCx1QkFBWSxPQUljO0FBUW5CLGtHQVhQLDRCQUFpQixPQVdPO0FBUmpCLHNGQUZQLGdCQUFLLE9BRU87QUFFZDs7O0dBR0c7QUFDVSxRQUFBLE1BQU0sR0FBRywwQkFBZSxDQUFDO0FBSXRDOzs7R0FHRztBQUNVLFFBQUEsUUFBUSxHQUFHLDZCQUFrQixDQUFDO0FBRTNDLFFBQVE7QUFDUiw4REFBZ0Q7QUFDdkMsa0JBQUc7QUFFWiwyREFBeUQ7QUFDaEQsb0ZBRFUscUJBQUcsT0FDVjtBQUVaLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLGtFQUFvRDtBQUMzQyxzQkFBSztBQUVkLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLDZEQUE0RDtBQUNuRCxxRkFEVyx1QkFBSSxPQUNYO0FBRWIsMkRBQXlEO0FBQ2hELG9GQURVLHFCQUFHLE9BQ1Y7QUFFWiw2REFBNEQ7QUFDbkQscUZBRFcsdUJBQUksT0FDWDtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLCtEQUErRDtBQUN0RCxzRkFEWSx5QkFBSyxPQUNaO0FBRWQsOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosZ0VBQWtEO0FBQ3pDLG9CQUFJO0FBRWIsOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosc0VBQXdEO0FBQy9DLDBCQUFPO0FBRWhCLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLE1BQU0sY0FBYyxHQUFHO0lBQ3JCLEdBQUcsRUFBRSxHQUFHLENBQUMs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O0lBQzNILE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFURCw0QkFTQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvaW5zLCBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQge1xuICBhY291bnRMaWJDcnlwdG8sXG4gIGFjY291bnRMaWJCYXNlQ29pbixcbiAgQmFzZUJ1aWxkZXIsXG4gIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsXG4gIEVkMjU1MTlCSVAzMixcbiAgRWQyNTUxOUtleURlcml2ZXIsXG4gIEVkZHNhLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5leHBvcnQgeyBFZGRzYSwgRWQyNTUxOUJJUDMyIH07XG5cbi8qKlxuICogRGVwcmVjYXRlZCBhZnRlciB2ZXJzaW9uIDIuMTkuMFxuICogUmV0YWluZWQgZm9yIHNob3J0IHRlcm0gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgLSBtaWdyYXRlIHRvOiBAYml0Z28tYmV0YS9zZGstYXBpIGFuZCBAYml0Z28tYmV0YS9zZGstY29yZVxuICovXG5leHBvcnQgY29uc3QgY3J5cHRvID0gYWNvdW50TGliQ3J5cHRvO1xuXG5leHBvcnQgeyBFZDI1NTE5S2V5RGVyaXZlciB9O1xuXG4vKipcbiAqIERlcHJlY2F0ZWQgYWZ0ZXIgdmVyc2lvbiAyLjE5LjBcbiAqIFJldGFpbmVkIGZvciBzaG9ydCB0ZXJtIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IC0gbWlncmF0ZSB0bzogQGJpdGdvLWJldGEvc2RrLWFwaSBhbmQgQGJpdGdvLWJldGEvc2RrLWNvcmVcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VDb2luID0gYWNjb3VudExpYkJhc2VDb2luO1xuXG4vLyBjb2luc1xuaW1wb3J0ICogYXMgVHJ4IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXRyeCc7XG5leHBvcnQgeyBUcnggfTtcblxuaW1wb3J0IHsgWHR6TGliIGFzIFh0eiB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXh0eic7XG5leHBvcnQgeyBYdHogfTtcblxuaW1wb3J0ICogYXMgRXRoIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0aCc7XG5leHBvcnQgeyBFdGggfTtcblxuaW1wb3J0ICogYXMgRXRoMiBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1ldGgyJztcbmV4cG9ydCB7IEV0aDIgfTtcblxuaW1wb3J0ICogYXMgRXRjIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0Yyc7XG5leHBvcnQgeyBFdGMgfTtcblxuaW1wb3J0ICogYXMgQXZheEMgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYXZheGMnO1xuZXhwb3J0IHsgQXZheEMgfTtcblxuaW1wb3J0ICogYXMgUmJ0YyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1yYnRjJztcbmV4cG9ydCB7IFJidGMgfTtcblxuaW1wb3J0ICogYXMgQ2VsbyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jZWxvJztcbmV4cG9ydCB7IENlbG8gfTtcblxuaW1wb3J0ICogYXMgSGJhciBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1oYmFyJztcbmV4cG9ydCB7IEhiYXIgfTtcblxuaW1wb3J0IHsgQ3NwckxpYiBhcyBDc3ByIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tY3Nwcic7XG5leHBvcnQgeyBDc3ByIH07XG5cbmltcG9ydCB7IFN0eExpYiBhcyBTdHggfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zdHgnO1xuZXhwb3J0IHsgU3R4IH07XG5cbmltcG9ydCB7IEFsZ29MaWIgYXMgQWxnbyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWFsZ28nO1xuZXhwb3J0IHsgQWxnbyB9O1xuXG5pbXBvcnQgKiBhcyBBdG9tIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWF0b20nO1xuZXhwb3J0IHsgQXRvbSB9O1xuXG5pbXBvcnQgeyBBdmF4cExpYiBhcyBBdmF4UCB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWF2YXhwJztcbmV4cG9ydCB7IEF2YXhQIH07XG5cbmltcG9ydCAqIGFzIFNvbCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zb2wnO1xuZXhwb3J0IHsgU29sIH07XG5cbmltcG9ydCAqIGFzIERvdCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1kb3QnO1xuZXhwb3J0IHsgRG90IH07XG5cbmltcG9ydCAqIGFzIE5lYXIgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tbmVhcic7XG5leHBvcnQgeyBOZWFyIH07XG5cbmltcG9ydCAqIGFzIEJzYyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1ic2MnO1xuZXhwb3J0IHsgQnNjIH07XG5cbmltcG9ydCAqIGFzIFBvbHlnb24gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tcG9seWdvbic7XG5leHBvcnQgeyBQb2x5Z29uIH07XG5cbmltcG9ydCAqIGFzIFN1aSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zdWknO1xuZXhwb3J0IHsgU3VpIH07XG5cbmNvbnN0IGNvaW5CdWlsZGVyTWFwID0ge1xuICB0cng6IFRyeC5XcmFwcGVkQnVpbGRlcixcbiAgdHRyeDogVHJ4LldyYXBwZWRCdWlsZGVyLFxuICB4dHo6IFh0ei5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHR4dHo6IFh0ei5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGV0YzogRXRjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGV0YzogRXRjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgZXRoOiBFdGguVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0ZXRoOiBFdGguVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBndGV0aDogRXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgcmJ0YzogUmJ0Yy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRyYnRjOiBSYnRjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgY2VsbzogQ2Vsby5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRjZWxvOiBDZWxvLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgYXZheGM6IEF2YXhDLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGF2YXhjOiBBdmF4Qy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGJzYzogQnNjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGJzYzogQnNjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgYXZheHA6IEF2YXhQLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRhdmF4cDogQXZheFAuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgaGJhcjogSGJhci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0aGJhcjogSGJhci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBjc3ByOiBDc3ByLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRjc3ByOiBDc3ByLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHN0eDogU3R4LlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRzdHg6IFN0eC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBhbGdvOiBBbGdvLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRhbGdvOiBBbGdvLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHNvbDogU29sLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRzb2w6IFNvbC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBkb3Q6IERvdC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0ZG90OiBEb3QuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgbmVhcjogTmVhci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBwb2x5Z29uOiBQb2x5Z29uLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHBvbHlnb246IFBvbHlnb24uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBzdWk6IFN1aS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0c3VpOiBTdWkuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgYXRvbTogQXRvbS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0YXRvbTogQXRvbS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxufTtcblxuLyoqXG4gKiBHZXQgdGhlIGxpc3Qgb2YgY29pbiB0aWNrZXJzIHN1cHBvcnRlZCBieSB0aGlzIGxpYnJhcnkuXG4gKi9cbmV4cG9ydCBjb25zdCBzdXBwb3J0ZWRDb2lucyA9IE9iamVjdC5rZXlzKGNvaW5CdWlsZGVyTWFwKTtcblxuLyoqXG4gKiBHZXQgYSB0cmFuc2FjdGlvbiBidWlsZGVyIGZvciB0aGUgZ2l2ZW4gY29pbi5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gY29pbk5hbWUgT25lIG9mIHRoZSB7QGNvZGUgc3VwcG9ydGVkQ29pbnN9XG4gKiBAcmV0dXJucyB7YW55fSBBbiBpbnN0YW5jZSBvZiBhIHtAY29kZSBUcmFuc2FjdGlvbkJ1aWxkZXJ9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRCdWlsZGVyKGNvaW5OYW1lOiBzdHJpbmcpOiBCYXNlQnVpbGRlciB7XG4gIGNvbnN0IGJ1aWxkZXJDbGFzcyA9IGNvaW5CdWlsZGVyTWFwW2NvaW5OYW1lXTtcbiAgaWYgKCFidWlsZGVyQ2xhc3MpIHtcbiAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBDb2luICR7Y29pbk5hbWV9IG5vdCBzdXBwb3J0ZWRgKTtcbiAgfVxuXG4gIHJldHVybiBuZXcgYnVpbGRlckNsYXNzKGNvaW5zLmdldChjb2luTmFtZSkpO1xufVxuXG4vKipcbiAqIFJlZ2lzdGVyIGEgbmV3IGNvaW4gaW5zdGFuY2Ugd2l0aCBpdHMgYnVpbGRlciBmYWN0b3J5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGNvaW5OYW1lIGNvaW4gbmFtZSBhcyBpdCB3YXMgcmVnaXN0ZXJlZCBpbiBAYml0Z28tYmV0YS9zdGF0aWNzXG4gKiBAcGFyYW0ge2FueX0gYnVpbGRlckZhY3RvcnkgdGhlIGJ1aWxkZXIgZmFjdG9yeSBjbGFzcyBmb3IgdGhhdCBjb2luXG4gKiBAcmV0dXJucyB7YW55fSB0aGUgZmFjdG9yeSBpbnN0YW5jZSBmb3IgdGhlIHJlZ2lzdGVyZWQgY29pblxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXI8VCBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5PihcbiAgY29pbk5hbWU6IHN0cmluZyxcbiAgYnVpbGRlckZhY3Rvcnk6IHsgbmV3IChfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pOiBUIH0sXG4pOiBUIHtcbiAgY29uc3QgY29pbkNvbmZpZyA9IGNvaW5zLmdldChjb2luTmFtZSk7XG4gIGNvbnN0IGZhY3RvcnkgPSBuZXcgYnVpbGRlckZhY3RvcnkoY29pbkNvbmZpZyk7XG4gIC8vIGNvaW5CdWlsZGVyTWFwW2NvaW5OYW1lXSA9IGZhY3Rvcnk7XG4gIGNvaW5CdWlsZGVyTWFwW2NvaW5OYW1lXSA9IGJ1aWxkZXJGYWN0b3J5OyAvLyBGb3Igbm93IHJlZ2lzdGVyIHRoZSBjb25zdHJ1Y3RvciBmdW5jdGlvbiB1bnRpbCByZWltcGxlbWVudCBnZXRCdWlsZGVyIG1ldGhvZFxuICByZXR1cm4gZmFjdG9yeTtcbn1cbiJdfQ==
357
+ /**
358
+ * Register a new coin instance with its message builder factory constructor.
359
+ *
360
+ * @param {string} coinName coin name as it was registered in @bitgo-beta/statics
361
+ * @param {any} messageBuilderFactory the message builder factory class for that coin
362
+ * @returns {any} the message builder factory instance for the registered coin
363
+ */
364
+ function registerMessageBuilderFactory(coinName, messageBuilderFactory) {
365
+ const coinConfig = statics_1.coins.get(coinName);
366
+ const factory = new messageBuilderFactory(coinConfig);
367
+ coinMessageBuilderFactoryMap[coinName] = messageBuilderFactory;
368
+ return factory;
369
+ }
370
+ /**
371
+ * Verify a message against the given encoded payload.
372
+ *
373
+ * @param {string} coinName - The name of the coin.
374
+ * @param {string} messageRaw - The raw message to verify.
375
+ * @param {string} messageEncoded - The encoded message to verify against.
376
+ * @param {MessageStandardType} messageStandardType - The type of message standard.
377
+ * @param {Record<string, unknown>} [metadata] - Optional metadata for verification.
378
+ * @returns {Promise<boolean>} - Returns true if the verification is successful, false otherwise.
379
+ */
380
+ async function verifyMessage(coinName, messageRaw, messageEncoded, messageStandardType, metadata) {
381
+ try {
382
+ const messageBuilderFactory = getMessageBuilderFactory(coinName);
383
+ const messageBuilder = messageBuilderFactory.getMessageBuilder(messageStandardType);
384
+ messageBuilder.setPayload(messageRaw);
385
+ const message = await messageBuilder.build();
386
+ return await message.verifyEncodedPayload(messageEncoded, metadata);
387
+ }
388
+ catch (e) {
389
+ console.error(`Error verifying message for coin ${coinName}:`, e);
390
+ return false;
391
+ }
392
+ }
393
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQThXQSxnQ0FPQztBQUVELDREQU1DO0FBU0QsNEJBU0M7QUFTRCxzRUFRQztBQVlELHNDQWlCQztBQTdiRCxtREFZOEI7QUFVckIsa0dBbEJQLDRCQUFpQixPQWtCTztBQVJqQiw2RkFUUCx1QkFBWSxPQVNPO0FBQUUsc0ZBUnJCLGdCQUFLLE9BUXFCO0FBRDVCLGlEQUFpRjtBQUdqRjs7O0dBR0c7QUFDVSxRQUFBLE1BQU0sR0FBRywwQkFBZSxDQUFDO0FBSXRDOzs7R0FHRztBQUNVLFFBQUEsUUFBUSxHQUFHLDZCQUFrQixDQUFDO0FBRTNDLFFBQVE7QUFDUiw4REFBZ0Q7QUFDdkMsa0JBQUc7QUFFWiwyREFBeUQ7QUFDaEQsb0ZBRFUscUJBQUcsT0FDVjtBQUVaLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLGtFQUFvRDtBQUMzQyxzQkFBSztBQUVkLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLDZEQUE0RDtBQUNuRCxxRkFEVyx1QkFBSSxPQUNYO0FBRWIsMkRBQXlEO0FBQ2hELG9GQURVLHFCQUFHLE9BQ1Y7QUFFWiw2REFBNEQ7QUFDbkQscUZBRFcsdUJBQUksT0FDWDtBQUViLG9FQUFzRDtBQUM3Qyx3QkFBTTtBQUVmLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLCtEQUErRDtBQUN0RCxzRkFEWSx5QkFBSyxPQUNaO0FBRWQsOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosZ0VBQWtEO0FBQ3pDLG9CQUFJO0FBRWIsOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosZ0VBQWtEO0FBQ3pD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QUFFLFNBQVMsQ0FBQyx5QkFBeUI7SUFDL0MsSUFBSSxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDckMsSUFBSSxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDckMsTUFBTSxFQUFFLE1BQU0sQ0FBQyx5QkFBeUI7SUFDeEMsT0FBTyxFQUFFLE1BQU0sQ0FBQyx5QkFBeUI7SUFDekMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDakMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDbEMsS0FBSyxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDL0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDaEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDL0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDaEMsSUFBSSxFQUFFLElBQUksQ0FBQyxrQkFBa0I7SUFDN0IsS0FBSyxFQUFFLElBQUksQ0FBQyxrQkFBa0I7SUFDOUIsSUFBSSxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDckMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7SUFDbkMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7SUFDcEMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxrQkFBa0I7SUFDckMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxrQkFBa0I7SUFDdEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7SUFDbEMsSUFBSSxFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7SUFDbkMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsSUFBSSxFQUFFLElBQUksQ0FBQyxrQkFBa0I7SUFDN0IsS0FBSyxFQUFFLElBQUksQ0FBQyxrQkFBa0I7SUFDOUIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDakMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDbEMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDakMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDbEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDL0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDaEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDL0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDaEMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7SUFDbkMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7SUFDcEMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyx5QkFBeUI7SUFDdEMsTUFBTSxFQUFFLEtBQUssQ0FBQyx5QkFBeUI7SUFDdkMsR0FBRyxFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7SUFDbEMsSUFBSSxFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7SUFDbkMsTUFBTSxFQUFFLE1BQU0sQ0FBQyx5QkFBeUI7SUFDeEMsT0FBTyxFQUFFLE1BQU0sQ0FBQyx5QkFBeUI7Q0FDMUMsQ0FBQztBQUVGLE1BQU0sNEJBQTRCLEdBQUc7SUFDbkMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDOUIsS0FBSyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDaEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDOUIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDL0IsR0FBRyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDOUIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDL0IsR0FBRyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDOUIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDL0IsTUFBTSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDakMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDbEMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDaEMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDakMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDbEMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDbkMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDbEMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7Q0FDcEMsQ0FBQztBQUVGLGVBQUs7S0FDRixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLHFCQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDcEUsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7SUFDaEIsY0FBYyxDQUFDLElB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QztRQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsb0NBQW9DLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlQnVpbGRlcixcbiAgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIEJ1aWxkVHJhbnNhY3Rpb25FcnJvcixcbiAgRWQyNTUxOUtleURlcml2ZXIsXG4gIEVkMjU1MTlCSVAzMixcbiAgRWRkc2EsXG4gIGFjY291bnRMaWJCYXNlQ29pbixcbiAgYWNvdW50TGliQ3J5cHRvLFxuICBCYXNlTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBCdWlsZE1lc3NhZ2VFcnJvcixcbiAgTWVzc2FnZVN0YW5kYXJkVHlwZSxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZywgQ29pbkZlYXR1cmUsIGNvaW5zIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5leHBvcnQgeyBFZDI1NTE5QklQMzIsIEVkZHNhIH07XG5cbi8qKlxuICogRGVwcmVjYXRlZCBhZnRlciB2ZXJzaW9uIDIuMTkuMFxuICogUmV0YWluZWQgZm9yIHNob3J0IHRlcm0gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgLSBtaWdyYXRlIHRvOiBAYml0Z28tYmV0YS9zZGstYXBpIGFuZCBAYml0Z28tYmV0YS9zZGstY29yZVxuICovXG5leHBvcnQgY29uc3QgY3J5cHRvID0gYWNvdW50TGliQ3J5cHRvO1xuXG5leHBvcnQgeyBFZDI1NTE5S2V5RGVyaXZlciB9O1xuXG4vKipcbiAqIERlcHJlY2F0ZWQgYWZ0ZXIgdmVyc2lvbiAyLjE5LjBcbiAqIFJldGFpbmVkIGZvciBzaG9ydCB0ZXJtIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IC0gbWlncmF0ZSB0bzogQGJpdGdvLWJldGEvc2RrLWFwaSBhbmQgQGJpdGdvLWJldGEvc2RrLWNvcmVcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VDb2luID0gYWNjb3VudExpYkJhc2VDb2luO1xuXG4vLyBjb2luc1xuaW1wb3J0ICogYXMgVHJ4IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXRyeCc7XG5leHBvcnQgeyBUcnggfTtcblxuaW1wb3J0IHsgWHR6TGliIGFzIFh0eiB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXh0eic7XG5leHBvcnQgeyBYdHogfTtcblxuaW1wb3J0ICogYXMgRXRoIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0aCc7XG5leHBvcnQgeyBFdGggfTtcblxuaW1wb3J0ICogYXMgRXRjIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0Yyc7XG5leHBvcnQgeyBFdGMgfTtcblxuaW1wb3J0ICogYXMgQXZheEMgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYXZheGMnO1xuZXhwb3J0IHsgQXZheEMgfTtcblxuaW1wb3J0ICogYXMgUmJ0YyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1yYnRjJztcbmV4cG9ydCB7IFJidGMgfTtcblxuaW1wb3J0ICogYXMgQ2VsbyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jZWxvJztcbmV4cG9ydCB7IENlbG8gfTtcblxuaW1wb3J0ICogYXMgSGJhciBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1oYmFyJztcbmV4cG9ydCB7IEhiYXIgfTtcblxuaW1wb3J0IHsgQ3NwckxpYiBhcyBDc3ByIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tY3Nwcic7XG5leHBvcnQgeyBDc3ByIH07XG5cbmltcG9ydCB7IFN0eExpYiBhcyBTdHggfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zdHgnO1xuZXhwb3J0IHsgU3R4IH07XG5cbmltcG9ydCB7IEFsZ29MaWIgYXMgQWxnbyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWFsZ28nO1xuZXhwb3J0IHsgQWxnbyB9O1xuXG5pbXBvcnQgKiBhcyBBcmJldGggZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYXJiZXRoJztcbmV4cG9ydCB7IEFyYmV0aCB9O1xuXG5pbXBvcnQgKiBhcyBBdG9tIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWF0b20nO1xuZXhwb3J0IHsgQXRvbSB9O1xuXG5pbXBvcnQgKiBhcyBPc21vIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLW9zbW8nO1xuZXhwb3J0IHsgT3NtbyB9O1xuXG5pbXBvcnQgeyBBdmF4cExpYiBhcyBBdmF4UCB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWF2YXhwJztcbmV4cG9ydCB7IEF2YXhQIH07XG5cbmltcG9ydCAqIGFzIFRpYSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi10aWEnO1xuZXhwb3J0IHsgVGlhIH07XG5cbmltcG9ydCAqIGFzIEJlcmEgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYmVyYSc7XG5leHBvcnQgeyBCZXJhIH07XG5cbmltcG9ydCAqIGFzIEJsZCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1ibGQnO1xuZXhwb3J0IHsgQmxkIH07XG5cbmltcG9ydCAqIGFzIEhhc2ggZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4taGFzaCc7XG5leHBvcnQgeyBIYXNoIH07XG5cbmltcG9ydCAqIGFzIFNlaSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zZWknO1xuZXhwb3J0IHsgU2VpIH07XG5cbmltcG9ydCAqIGFzIEluamVjdGl2ZSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1pbmplY3RpdmUnO1xuZXhwb3J0IHsgSW5qZWN0aXZlIH07XG5cbmltcG9ydCAqIGFzIElzbG0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4taXNsbSc7XG5leHBvcnQgeyBJc2xtIH07XG5cbmltcG9ydCAqIGFzIFpldGEgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4temV0YSc7XG5leHBvcnQgeyBaZXRhIH07XG5cbmltcG9ydCAqIGFzIENvcmV1bSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jb3JldW0nO1xuZXhwb3J0IHsgQ29yZXVtIH07XG5cbmltcG9ydCAqIGFzIFJ1bmUgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tcnVuZSc7XG5leHBvcnQgeyBSdW5lIH07XG5cbmltcG9ydCAqIGFzIEJhYnkgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYmFieSc7XG5leHBvcnQgeyBCYWJ5IH07XG5cbmltcG9ydCAqIGFzIE1vbiBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1tb24nO1xuZXhwb3J0IHsgTW9uIH07XG5cbmltcG9ydCAqIGFzIENyb25vcyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jcm9ub3MnO1xuZXhwb3J0IHsgQ3Jvbm9zIH07XG5cbmltcG9ydCAqIGFzIEluaXRpYSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1pbml0aWEnO1xuZXhwb3J0IHsgSW5pdGlhIH07XG5cbmltcG9ydCAqIGFzIEFzaSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1hc2knO1xuZXhwb3J0IHsgQXNpIH07XG5cbmltcG9ydCAqIGFzIFNvbCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zb2wnO1xuZXhwb3J0IHsgU29sIH07XG5cbmltcG9ydCAqIGFzIEFkYSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1hZGEnO1xuZXhwb3J0IHsgQWRhIH07XG5cbmltcG9ydCAqIGFzIERvdCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1kb3QnO1xuZXhwb3J0IHsgRG90IH07XG5cbmltcG9ydCAqIGFzIE5lYXIgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tbmVhcic7XG5leHBvcnQgeyBOZWFyIH07XG5cbmltcG9ydCAqIGFzIEJzYyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1ic2MnO1xuZXhwb3J0IHsgQnNjIH07XG5cbmltcG9ydCAqIGFzIFBvbHlnb24gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tcG9seWdvbic7XG5leHBvcnQgeyBQb2x5Z29uIH07XG5cbmltcG9ydCAqIGFzIFBvbHl4IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXBvbHl4JztcbmV4cG9ydCB7IFBvbHl4IH07XG5cbmltcG9ydCAqIGFzIE9wZXRoIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLW9wZXRoJztcbmV4cG9ydCB7IE9wZXRoIH07XG5cbmltcG9ydCAqIGFzIFN1aSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zdWknO1xuZXhwb3J0IHsgU3VpIH07XG5cbmltcG9ydCAqIGFzIFRvbiBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi10b24nO1xuZXhwb3J0IHsgVG9uIH07XG5cbmltcG9ydCAqIGFzIFhSUCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi14cnAnO1xuZXhwb3J0IHsgWFJQIH07XG5cbmltcG9ydCAqIGFzIHprRXRoIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXprZXRoJztcbmV4cG9ydCB7IHprRXRoIH07XG5cbmltcG9ydCAqIGFzIE9hcyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1vYXMnO1xuZXhwb3J0IHsgT2FzIH07XG5cbmltcG9ydCAqIGFzIENvcmVkYW8gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tY29yZWRhbyc7XG5leHBvcnQgeyBDb3JlZGFvIH07XG5cbmltcG9ydCAqIGFzIEFwdCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1hcHQnO1xuZXhwb3J0IHsgQXB0IH07XG5cbmltcG9ydCAqIGFzIEFwZWNoYWluIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWFwZWNoYWluJztcbmV4cG9ydCB7IEFwZWNoYWluIH07XG5cbmltcG9ydCAqIGFzIFRhbyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi10YW8nO1xuZXhwb3J0IHsgVGFvIH07XG5cbmltcG9ydCAqIGFzIEljcCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1pY3AnO1xuZXhwb3J0IHsgSWNwIH07XG5cbmltcG9ydCAqIGFzIEZsciBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1mbHInO1xuZXhwb3J0IHsgRmxyIH07XG5cbmltcG9ydCAqIGFzIEV2bUNvaW4gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tZXZtJztcbmV4cG9ydCB7IEV2bUNvaW4gfTtcblxuaW1wb3J0ICogYXMgU2diIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXNnYic7XG5leHBvcnQgeyBTZ2IgfTtcblxuaW1wb3J0ICogYXMgWGRjIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXhkYyc7XG5leHBvcnQgeyBYZGMgfTtcblxuaW1wb3J0ICogYXMgV2VtaXggZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4td2VtaXgnO1xuZXhwb3J0IHsgV2VtaXggfTtcblxuaW1wb3J0ICogYXMgV29ybGQgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4td29ybGQnO1xuZXhwb3J0IHsgV29ybGQgfTtcblxuaW1wb3J0ICogYXMgU3R0IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXN0dCc7XG5leHBvcnQgeyBTdHQgfTtcblxuaW1wb3J0ICogYXMgU29uZWl1bSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zb25laXVtJztcbmV4cG9ydCB7IFNvbmVpdW0gfTtcblxuaW1wb3J0ICogYXMgVmV0IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXZldCc7XG5leHBvcnQgeyBWZXQgfTtcblxuaW1wb3J0ICogYXMgQ29zbW9zU2hhcmVkQ29pbiBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jb3Ntb3MnO1xuZXhwb3J0IHsgQ29zbW9zU2hhcmVkQ29pbiB9O1xuXG5pbXBvcnQgKiBhcyBDYW50b24gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tY2FudG9uJztcbmV4cG9ydCB7IENhbnRvbiB9O1xuXG5pbXBvcnQgeyBNSUROSUdIVF9UTkNfSEFTSCB9IGZyb20gJy4vdXRpbHMnO1xuZXhwb3J0IHsgTUlETklHSFRfVE5DX0hBU0ggfTtcblxuY29uc3QgY29pbkJ1aWxkZXJNYXAgPSB7XG4gIHRyeDogVHJ4LldyYXBwZWRCdWlsZGVyLFxuICB0dHJ4OiBUcnguV3JhcHBlZEJ1aWxkZXIsXG4gIHh0ejogWHR6LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHh0ejogWHR6LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgZXRjOiBFdGMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0ZXRjOiBFdGMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBldGg6IEV0aC5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRldGg6IEV0aC5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGd0ZXRoOiBFdGguVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBodGV0aDogRXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgcmJ0YzogUmJ0Yy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRyYnRjOiBSYnRjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgY2VsbzogQ2Vsby5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRjZWxvOiBDZWxvLlRlc3RuZXRUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGF2YXhjOiBBdmF4Qy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRhdmF4YzogQXZheEMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBic2M6IEJzYy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRic2M6IEJzYy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGF2YXhwOiBBdmF4UC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0YXZheHA6IEF2YXhQLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGhiYXI6IEhiYXIuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGhiYXI6IEhiYXIuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgY3NwcjogQ3Nwci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0Y3NwcjogQ3Nwci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBzdHg6IFN0eC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0c3R4OiBTdHguVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgYWxnbzogQWxnby5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0YWxnbzogQWxnby5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBzb2w6IFNvbC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0c29sOiBTb2wuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgZG90OiBEb3QuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGRvdDogRG90LlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIG5lYXI6IE5lYXIuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgcG9seWdvbjogUG9seWdvbi5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRwb2x5Z29uOiBQb2x5Z29uLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgc3VpOiBTdWkuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdHN1aTogU3VpLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRpYTogVGlhLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHR0aWE6IFRpYS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBhdG9tOiBBdG9tLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRhdG9tOiBBdG9tLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIG9zbW86IE9zbW8uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdG9zbW86IE9zbW8uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgYmxkOiBCbGQuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGJsZDogQmxkLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGhhc2g6IEhhc2guVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGhhc2g6IEhhc2guVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgc2VpOiBTZWkuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdHNlaTogU2VpLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGluamVjdGl2ZTogSW5qZWN0aXZlLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRpbmplY3RpdmU6IEluamVjdGl2ZS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB6ZXRhOiBaZXRhLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHR6ZXRhOiBaZXRhLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGlzbG06IElzbG0uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGlzbG06IElzbG0uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgY29yZXVtOiBDb3JldW0uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGNvcmV1bTogQ29yZXVtLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGFyYmV0aDogQXJiZXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGFyYmV0aDogQXJiZXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgb3BldGg6IE9wZXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdG9wZXRoOiBPcGV0aC5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRvbjogVG9uLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHRvbjogVG9uLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgemtldGg6IHprRXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHprZXRoOiB6a0V0aC5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGJlcmE6IEJlcmEuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YmVyYTogQmVyYS5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHJ1bmU6IFJ1bmUuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdHJ1bmU6IFJ1bmUuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgb2FzOiBPYXMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0b2FzOiBPYXMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBjb3JlZGFvOiBDb3JlZGFvLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGNvcmVkYW86IENvcmVkYW8uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBhcGVjaGFpbjogQXBlY2hhaW4uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YXBlY2hhaW46IEFwZWNoYWluLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgYXB0OiBBcHQuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YXB0OiBBcHQuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YW86IFRhby5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0dGFvOiBUYW8uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgaWNwOiBJY3AuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0aWNwOiBJY3AuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBiYWJ5OiBCYWJ5LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGJhYnk6IEJhYnkuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBjcm9ub3M6IENyb25vcy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRjcm9ub3M6IENyb25vcy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGluaXRpYTogSW5pdGlhLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGluaXRpYTogSW5pdGlhLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgYXNpOiBBc2kuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YXNpOiBBc2kuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBmbHI6IEZsci5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRmbHI6IEZsci5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHNnYjogU2diLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHNnYjogU2diLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgeGRjOiBYZGMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0eGRjOiBYZGMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB3ZW1peDogV2VtaXguVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0d2VtaXg6IFdlbWl4LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgbW9uOiBNb24uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0bW9uOiBNb24uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB3b3JsZDogV29ybGQuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0d29ybGQ6IFdvcmxkLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgc29uZWl1bTogU29uZWl1bS5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRzb25laXVtOiBTb25laXVtLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHN0dDogU3R0LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgcG9seXg6IFBvbHl4LlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRwb2x5eDogUG9seXguVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdmV0OiBWZXQuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdHZldDogVmV0LlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGNhbnRvbjogQ2FudG9uLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRjYW50b246IENhbnRvbi5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxufTtcblxuY29uc3QgY29pbk1lc3NhZ2VCdWlsZGVyRmFjdG9yeU1hcCA9IHtcbiAgZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBodGV0aDogRXRoLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgYnNjOiBCc2MuTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICB0YnNjOiBCc2MuTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBhZGE6IEFkYS5NZXNzYWdlQnVpbGRlckZhY3RvcnksXG4gIHRhZGE6IEFkYS5NZXNzYWdlQnVpbGRlckZhY3RvcnksXG4gIHNvbDogU29sLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgdHNvbDogU29sLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgYXJiZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICB0YXJiZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBvcGV0aDogRXRoLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgdG9wZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBiYXNlZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICB0YmFzZWV0aDogRXRoLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgcG9seWdvbjogRXRoLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgdHBvbHlnb246IEV0aC5NZXNzYWdlQnVpbGRlckZhY3RvcnksXG59O1xuXG5jb2luc1xuICAuZmlsdGVyKChjb2luKSA9PiBjb2luLmZlYXR1cmVzLmluY2x1ZGVzKENvaW5GZWF0dXJlLlNIQVJFRF9FVk1fU0RLKSlcbiAgLmZvckVhY2goKGNvaW4pID0+IHtcbiAgICBjb2luQnVpbGRlck1hcFtjb2luLm5hbWVdID0gRXZtQ29pbi5UcmFuc2FjdGlvbkJ1aWxkZXI7XG4gIH0pO1xuXG5jb2luc1xuICAuZmlsdGVyKChjb2luKSA9PiBjb2luLmZlYXR1cmVzLmluY2x1ZGVzKENvaW5GZWF0dXJlLlNIQVJFRF9DT1NNT1NfU0RLKSlcbiAgLmZvckVhY2goKGNvaW4pID0+IHtcbiAgICBjb2luQnVpbGRlck1hcFtjb2luLm5hbWVdID0gQ29zbW9zU2hhcmVkQ29pbi5UcmFuc2FjdGlvbkJ1aWxkZXI7XG4gIH0pO1xuXG4vKipcbiAqIEdldCB0aGUgbGlzdCBvZiBjb2luIHRpY2tlcnMgc3VwcG9ydGVkIGJ5IHRoaXMgbGlicmFyeS5cbiAqL1xuZXhwb3J0IGNvbnN0IHN1cHBvcnRlZENvaW5zID0gT2JqZWN0LmtleXMoY29pbkJ1aWxkZXJNYXApO1xuXG4vKipcbiAqIEdldCBhIHRyYW5zYWN0aW9uIGJ1aWxkZXIgZm9yIHRoZSBnaXZlbiBjb2luLlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBjb2luTmFtZSBPbmUgb2YgdGhlIHtAY29kZSBzdXBwb3J0ZWRDb2luc31cbiAqIEByZXR1cm5zIHthbnl9IEFuIGluc3RhbmNlIG9mIGEge0Bjb2RlIFRyYW5zYWN0aW9uQnVpbGRlcn1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEJ1aWxkZXIoY29pbk5hbWU6IHN0cmluZyk6IEJhc2VCdWlsZGVyIHtcbiAgY29uc3QgYnVpbGRlckNsYXNzID0gY29pbkJ1aWxkZXJNYXBbY29pbk5hbWVdO1xuICBpZiAoIWJ1aWxkZXJDbGFzcykge1xuICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYENvaW4gJHtjb2luTmFtZX0gbm90IHN1cHBvcnRlZGApO1xuICB9XG5cbiAgcmV0dXJuIG5ldyBidWlsZGVyQ2xhc3MoY29pbnMuZ2V0KGNvaW5OYW1lKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNZXNzYWdlQnVpbGRlckZhY3RvcnkoY29pbk5hbWU6IHN0cmluZyk6IEJhc2VNZXNzYWdlQnVpbGRlckZhY3Rvcnkge1xuICBjb25zdCBtZXNzYWdlQnVpbGRlckZhY3RvcnlDbGFzcyA9IGNvaW5NZXNzYWdlQnVpbGRlckZhY3RvcnlNYXBbY29pbk5hbWVdO1xuICBpZiAoIW1lc3NhZ2VCdWlsZGVyRmFjdG9yeUNsYXNzKSB7XG4gICAgdGhyb3cgbmV3IEJ1aWxkTWVzc2FnZUVycm9yKGBNZXNzYWdlIGJ1aWxkZXIgZmFjdG9yeSBmb3IgY29pbiAke2NvaW5OYW1lfSBub3Qgc3VwcG9ydGVkYCk7XG4gIH1cbiAgcmV0dXJuIG5ldyBtZXNzYWdlQnVpbGRlckZhY3RvcnlDbGFzcyhjb2lucy5nZXQoY29pbk5hbWUpKTtcbn1cblxuLyoqXG4gKiBSZWdpc3RlciBhIG5ldyBjb2luIGluc3RhbmNlIHdpdGggaXRzIGJ1aWxkZXIgZmFjdG9yeVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBjb2luTmFtZSBjb2luIG5hbWUgYXMgaXQgd2FzIHJlZ2lzdGVyZWQgaW4gQGJpdGdvLWJldGEvc3RhdGljc1xuICogQHBhcmFtIHthbnl9IGJ1aWxkZXJGYWN0b3J5IHRoZSBidWlsZGVyIGZhY3RvcnkgY2xhc3MgZm9yIHRoYXQgY29pblxuICogQHJldHVybnMge2FueX0gdGhlIGZhY3RvcnkgaW5zdGFuY2UgZm9yIHRoZSByZWdpc3RlcmVkIGNvaW5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyPFQgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeT4oXG4gIGNvaW5OYW1lOiBzdHJpbmcsXG4gIGJ1aWxkZXJGYWN0b3J5OiB7IG5ldyAoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KTogVCB9LFxuKTogVCB7XG4gIGNvbnN0IGNvaW5Db25maWcgPSBjb2lucy5nZXQoY29pbk5hbWUpO1xuICBjb25zdCBmYWN0b3J5ID0gbmV3IGJ1aWxkZXJGYWN0b3J5KGNvaW5Db25maWcpO1xuICAvLyBjb2luQnVpbGRlck1hcFtjb2luTmFtZV0gPSBmYWN0b3J5O1xuICBjb2luQnVpbGRlck1hcFtjb2luTmFtZV0gPSBidWlsZGVyRmFjdG9yeTsgLy8gRm9yIG5vdyByZWdpc3RlciB0aGUgY29uc3RydWN0b3IgZnVuY3Rpb24gdW50aWwgcmVpbXBsZW1lbnQgZ2V0QnVpbGRlciBtZXRob2RcbiAgcmV0dXJuIGZhY3Rvcnk7XG59XG5cbi8qKlxuICogUmVnaXN0ZXIgYSBuZXcgY29pbiBpbnN0YW5jZSB3aXRoIGl0cyBtZXNzYWdlIGJ1aWxkZXIgZmFjdG9yeSBjb25zdHJ1Y3Rvci5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gY29pbk5hbWUgY29pbiBuYW1lIGFzIGl0IHdhcyByZWdpc3RlcmVkIGluIEBiaXRnby1iZXRhL3N0YXRpY3NcbiAqIEBwYXJhbSB7YW55fSBtZXNzYWdlQnVpbGRlckZhY3RvcnkgdGhlIG1lc3NhZ2UgYnVpbGRlciBmYWN0b3J5IGNsYXNzIGZvciB0aGF0IGNvaW5cbiAqIEByZXR1cm5zIHthbnl9IHRoZSBtZXNzYWdlIGJ1aWxkZXIgZmFjdG9yeSBpbnN0YW5jZSBmb3IgdGhlIHJlZ2lzdGVyZWQgY29pblxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJNZXNzYWdlQnVpbGRlckZhY3Rvcnk8VCBleHRlbmRzIEJhc2VNZXNzYWdlQnVpbGRlckZhY3Rvcnk+KFxuICBjb2luTmFtZTogc3RyaW5nLFxuICBtZXNzYWdlQnVpbGRlckZhY3Rvcnk6IHsgbmV3IChfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pOiBUIH0sXG4pOiBUIHtcbiAgY29uc3QgY29pbkNvbmZpZyA9IGNvaW5zLmdldChjb2luTmFtZSk7XG4gIGNvbnN0IGZhY3RvcnkgPSBuZXcgbWVzc2FnZUJ1aWxkZXJGYWN0b3J5KGNvaW5Db25maWcpO1xuICBjb2luTWVzc2FnZUJ1aWxkZXJGYWN0b3J5TWFwW2NvaW5OYW1lXSA9IG1lc3NhZ2VCdWlsZGVyRmFjdG9yeTtcbiAgcmV0dXJuIGZhY3Rvcnk7XG59XG5cbi8qKlxuICogVmVyaWZ5IGEgbWVzc2FnZSBhZ2FpbnN0IHRoZSBnaXZlbiBlbmNvZGVkIHBheWxvYWQuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGNvaW5OYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGNvaW4uXG4gKiBAcGFyYW0ge3N0cmluZ30gbWVzc2FnZVJhdyAtIFRoZSByYXcgbWVzc2FnZSB0byB2ZXJpZnkuXG4gKiBAcGFyYW0ge3N0cmluZ30gbWVzc2FnZUVuY29kZWQgLSBUaGUgZW5jb2RlZCBtZXNzYWdlIHRvIHZlcmlmeSBhZ2FpbnN0LlxuICogQHBhcmFtIHtNZXNzYWdlU3RhbmRhcmRUeXBlfSBtZXNzYWdlU3RhbmRhcmRUeXBlIC0gVGhlIHR5cGUgb2YgbWVzc2FnZSBzdGFuZGFyZC5cbiAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgdW5rbm93bj59IFttZXRhZGF0YV0gLSBPcHRpb25hbCBtZXRhZGF0YSBmb3IgdmVyaWZpY2F0aW9uLlxuICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59IC0gUmV0dXJucyB0cnVlIGlmIHRoZSB2ZXJpZmljYXRpb24gaXMgc3VjY2Vzc2Z1bCwgZmFsc2Ugb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdmVyaWZ5TWVzc2FnZShcbiAgY29pbk5hbWU6IHN0cmluZyxcbiAgbWVzc2FnZVJhdzogc3RyaW5nLFxuICBtZXNzYWdlRW5jb2RlZDogc3RyaW5nLFxuICBtZXNzYWdlU3RhbmRhcmRUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlLFxuICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIHRyeSB7XG4gICAgY29uc3QgbWVzc2FnZUJ1aWxkZXJGYWN0b3J5ID0gZ2V0TWVzc2FnZUJ1aWxkZXJGYWN0b3J5KGNvaW5OYW1lKTtcbiAgICBjb25zdCBtZXNzYWdlQnVpbGRlciA9IG1lc3NhZ2VCdWlsZGVyRmFjdG9yeS5nZXRNZXNzYWdlQnVpbGRlcihtZXNzYWdlU3RhbmRhcmRUeXBlKTtcbiAgICBtZXNzYWdlQnVpbGRlci5zZXRQYXlsb2FkKG1lc3NhZ2VSYXcpO1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBtZXNzYWdlQnVpbGRlci5idWlsZCgpO1xuICAgIHJldHVybiBhd2FpdCBtZXNzYWdlLnZlcmlmeUVuY29kZWRQYXlsb2FkKG1lc3NhZ2VFbmNvZGVkLCBtZXRhZGF0YSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKGBFcnJvciB2ZXJpZnlpbmcgbWVzc2FnZSBmb3IgY29pbiAke2NvaW5OYW1lfTpgLCBlKTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiJdfQ==