@bitgo/sdk-core 31.2.1 → 32.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/src/bitgo/environments.d.ts +1 -0
  3. package/dist/src/bitgo/environments.d.ts.map +1 -1
  4. package/dist/src/bitgo/environments.js +3 -1
  5. package/dist/src/bitgo/index.d.ts +0 -1
  6. package/dist/src/bitgo/index.d.ts.map +1 -1
  7. package/dist/src/bitgo/index.js +1 -2
  8. package/dist/src/bitgo/staking/goStakingWallet.d.ts +36 -0
  9. package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -0
  10. package/dist/src/bitgo/staking/goStakingWallet.js +92 -0
  11. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +44 -0
  12. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -0
  13. package/dist/src/bitgo/staking/iGoStakingWallet.js +3 -0
  14. package/dist/src/bitgo/staking/iStakingWallet.d.ts +5 -1
  15. package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
  16. package/dist/src/bitgo/staking/iStakingWallet.js +1 -1
  17. package/dist/src/bitgo/staking/index.d.ts +2 -0
  18. package/dist/src/bitgo/staking/index.d.ts.map +1 -1
  19. package/dist/src/bitgo/staking/index.js +3 -1
  20. package/dist/src/bitgo/staking/stakingWallet.d.ts +1 -0
  21. package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
  22. package/dist/src/bitgo/staking/stakingWallet.js +51 -1
  23. package/dist/src/bitgo/utils/transactionUtils.d.ts +9 -0
  24. package/dist/src/bitgo/utils/transactionUtils.d.ts.map +1 -0
  25. package/dist/src/bitgo/utils/transactionUtils.js +29 -0
  26. package/dist/src/bitgo/wallet/iWallet.d.ts +6 -3
  27. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  28. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  29. package/dist/src/bitgo/wallet/iWallets.d.ts +1 -0
  30. package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
  31. package/dist/src/bitgo/wallet/iWallets.js +1 -1
  32. package/dist/src/bitgo/wallet/wallet.d.ts +14 -7
  33. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  34. package/dist/src/bitgo/wallet/wallet.js +27 -13
  35. package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
  36. package/dist/src/bitgo/wallet/wallets.js +4 -1
  37. package/dist/tsconfig.tsbuildinfo +1 -1
  38. package/package.json +3 -5
  39. package/dist/src/bitgo/lightning/custodial/iLightning.d.ts +0 -186
  40. package/dist/src/bitgo/lightning/custodial/iLightning.d.ts.map +0 -1
  41. package/dist/src/bitgo/lightning/custodial/iLightning.js +0 -120
  42. package/dist/src/bitgo/lightning/custodial/index.d.ts +0 -5
  43. package/dist/src/bitgo/lightning/custodial/index.d.ts.map +0 -1
  44. package/dist/src/bitgo/lightning/custodial/index.js +0 -21
  45. package/dist/src/bitgo/lightning/custodial/lightning.d.ts +0 -25
  46. package/dist/src/bitgo/lightning/custodial/lightning.d.ts.map +0 -1
  47. package/dist/src/bitgo/lightning/custodial/lightning.js +0 -111
  48. package/dist/src/bitgo/lightning/custodial/lightningUtils.d.ts +0 -46
  49. package/dist/src/bitgo/lightning/custodial/lightningUtils.d.ts.map +0 -1
  50. package/dist/src/bitgo/lightning/custodial/lightningUtils.js +0 -145
  51. package/dist/src/bitgo/lightning/custodial/lnurlCodec.d.ts +0 -3
  52. package/dist/src/bitgo/lightning/custodial/lnurlCodec.d.ts.map +0 -1
  53. package/dist/src/bitgo/lightning/custodial/lnurlCodec.js +0 -27
@@ -6,6 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.StakingWallet = void 0;
7
7
  const utils_1 = require("../utils");
8
8
  const assert_1 = __importDefault(require("assert"));
9
+ const transactionUtils_1 = require("../utils/transactionUtils");
10
+ const debug_1 = __importDefault(require("debug"));
9
11
  class StakingWallet {
10
12
  constructor(wallet, isEthTss) {
11
13
  this.wallet = wallet;
@@ -205,6 +207,9 @@ class StakingWallet {
205
207
  */
206
208
  async buildAndSign(signOptions, transaction) {
207
209
  const builtTx = await this.build(transaction);
210
+ if (!isStakingTxRequestPrebuildResult(builtTx.result)) {
211
+ await this.validateBuiltStakingTransaction(transaction, builtTx);
212
+ }
208
213
  return await this.sign(signOptions, builtTx);
209
214
  }
210
215
  async expandBuildParams(stakingTransaction) {
@@ -271,6 +276,51 @@ class StakingWallet {
271
276
  (0, assert_1.default)(transaction.buildParams?.senderWalletId, 'senderWalletId is required for btc undelegate transaction');
272
277
  return await this.wallet.baseCoin.wallets().get({ id: transaction.buildParams.senderWalletId });
273
278
  }
279
+ async validateBuiltStakingTransaction(transaction, prebuiltStakingTransaction) {
280
+ const { buildParams } = transaction;
281
+ const { result } = prebuiltStakingTransaction;
282
+ const coin = this.wallet.baseCoin;
283
+ (0, debug_1.default)(`Validating staking transaction ${transaction.stakingRequestId} with prebuilt transaction`);
284
+ const explainedTransaction = await coin.explainTransaction(result);
285
+ if (buildParams?.recipients) {
286
+ const userRecipientMap = new Map(buildParams.recipients.map((recipient) => [recipient.address.toLowerCase(), recipient]));
287
+ const platformRecipientMap = new Map((explainedTransaction?.outputs ?? []).map((recipient) => [recipient.address.toLowerCase(), recipient]));
288
+ const mismatchErrors = [];
289
+ for (const [recipientAddress, recipientInfo] of platformRecipientMap) {
290
+ if (userRecipientMap.has(recipientAddress)) {
291
+ const userRecpient = userRecipientMap.get(recipientAddress);
292
+ if (!userRecpient) {
293
+ throw new Error('Unable to determine recipient address');
294
+ }
295
+ const matchResult = (0, transactionUtils_1.transactionRecipientsMatch)(userRecpient, recipientInfo);
296
+ if (!matchResult.exactMatch) {
297
+ if (!matchResult.tokenMatch) {
298
+ mismatchErrors.push(`Invalid token ${recipientInfo.tokenName} transfer with amount ${recipientInfo.amount} to ${recipientInfo.amount} found in built transaction, specified ${userRecpient.tokenName}`);
299
+ }
300
+ if (!matchResult.amountMatch) {
301
+ mismatchErrors.push(`Invalid recipient amount for ${recipientInfo.address}, specified ${userRecpient.amount} got ${recipientInfo.amount}`);
302
+ }
303
+ }
304
+ }
305
+ else {
306
+ mismatchErrors.push(`Invalid recipient address: ${recipientAddress}`);
307
+ }
308
+ }
309
+ const missingRecipientAddresses = Array.from(userRecipientMap.keys()).filter((address) => !platformRecipientMap.has(address));
310
+ if (missingRecipientAddresses.length > 0) {
311
+ mismatchErrors.push(`Missing recipient address(es): ${missingRecipientAddresses.join(', ')}`);
312
+ }
313
+ if (mismatchErrors.length > 0) {
314
+ throw new Error(mismatchErrors.join(', '));
315
+ }
316
+ }
317
+ else {
318
+ (0, debug_1.default)(`Cannot validate staking transaction ${transaction.stakingRequestId} without specified build params`);
319
+ }
320
+ }
274
321
  }
275
322
  exports.StakingWallet = StakingWallet;
276
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ1dhbGxldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9zdGFraW5nL3N0YWtpbmdXYWxsZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBcUJBLG9DQUE4RDtBQUM5RCxvREFBNEI7QUFFNUIsTUFBYSxhQUFhO0lBUXhCLFlBQVksTUFBZSxFQUFFLFFBQWlCO1FBQzVDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksZ0JBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2RyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBcUI7UUFDL0IsT0FBTyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQTJDO1FBQ3ZELE9BQU8sTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEtBQUssQ0FBQyxlQUFlLENBQUMsT0FBK0I7UUFDbkQsT0FBTyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBNEI7UUFDN0MsT0FBTyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsb0JBQW9CLENBQUMsZ0JBQXdCO1FBQ2pELE9BQU8sTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM5RyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBMEI7UUFDMUMsT0FBTyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsaUJBQWlCLENBQUMsZ0JBQXdCO1FBQzlDLE9BQU8sTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM5RyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxnQkFBd0I7UUFDdkQsTUFBTSxjQUFjLEdBQW1CLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdEYsTUFBTSxXQUFXLEdBQXlCLGNBQWMsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUMxRSxDQUFDLFdBQStCLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEtBQUssT0FBTyxDQUNwRSxDQUFDO1FBQ0YsTUFBTSxlQUFlLEdBQXlCLGNBQWMsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUM5RSxDQUFDLFdBQStCLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEtBQUssS0FBSyxDQUNsRSxDQUFDO1FBRUYsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDO1lBQ3JCLGtCQUFrQixFQUNoQixjQUFjLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksZUFBZSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQ3BHLFlBQVksRUFBRSxXQUFXO1NBQzFCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUErQjtRQUN6QyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLEtBQUssS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQzdCLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQztZQUM5RCxDQUFDO1lBQ0QscUVBQXFFO1lBQ3JFLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDbEUsT0FBTztnQkFDTCxXQUFXLEVBQUUsV0FBVztnQkFDeEIsTUFBTSxFQUFFO29CQUNOLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtvQkFDdkIsV0FBVyxFQUFFLFdBQVcsQ0FBQyxXQUFXO2lCQUNyQzthQUNGLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN4RCxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUM3QixNQUFNLEtBQUssQ0FBQyx1QkFBdUIsV0FBVyxDQUFDLEVBQUUsNEJBQTRCLENBQUMsQ0FBQztZQUNqRixDQUFDO1lBQ0QsTUFBTSxlQUFlLEdBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxLQUFLLEtBQUs7Z0JBQzFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLEtBQUsscUJBQXFCLENBQUM7WUFDdEUsTUFBTSxNQUFNLEdBQUcsZUFBZTtnQkFDNUIsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQztnQkFDN0MsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLDhCQUE4QixFQUFFLENBQUM7WUFFaEQsT0FBTztnQkFDTCxXQUFXLEVBQUUsV0FBVztnQkFDeEIsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUM7YUFDbEUsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxJQUFJLENBQ1IsV0FBK0IsRUFDL0IsMEJBQTREO1FBRTVELE1BQU0sS0FBSyxHQUFHLElBQUkscUJBQWEsRUFBRSxDQUFDO1FBQ2xDLE1BQU0sZUFBZSxHQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxLQUFLO1lBQzFDLDBCQUEwQixDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLEtBQUsscUJBQXFCLENBQUM7UUFDakcsTUFBTSxNQUFNLEdBQUcsZUFBZTtZQUM1QixDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsbUJBQW1CLENBQUMsMEJBQTBCLENBQUMsV0FBVyxDQUFDO1lBQ3hFLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxDQUFDO1FBRWhELE1BQU0sUUFBUSxHQUFHLE1BQU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztZQUNuRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsS0FBSyxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUM7UUFDSCxPQUFPO1lBQ0wsV0FBVyxFQUFFLDBCQUEwQixDQUFDLFdBQVc7WUFDbkQsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDLGVBQWUsQ0FBQztnQkFDbkMsVUFBVSxFQUFFLDBCQUEwQixDQUFDLE1BQU07Z0JBQzdDLGdCQUFnQixFQUFFLFdBQVcsQ0FBQyxnQkFBZ0I7Z0JBQzlDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO2FBQ3RCLENBQUM7U0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsSUFBSSxDQUFDLGlCQUEyQztRQUNwRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUM7WUFDOUIsT0FBTyxNQUFNLElBQUksQ0FBQyxLQUFLO2lCQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztpQkFDNUYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztpQkFDOUIsTUFBTSxFQUFFLENBQUM7UUFDZCxDQUFDO1FBQ0QsT0FBTyxpQkFBaUIsQ0FBQyxXQUFXLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLGdCQUFnQixDQUNwQixXQUErQixFQUMvQixXQUErQjtRQUUvQixPQUFPLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBZ0MsRUFBRSxFQUFFO1lBQ2pHLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsS0FBSyxDQUFDLHFDQUFxQyxDQUFDLFdBQStCO1FBQ3pFLElBQUksV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzVCLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDcEUsQ0FBQztRQUNELE1BQU0sV0FBVyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDNUUsTUFBTSxlQUFlLEdBQUc7WUFDdEIsR0FBRyxXQUFXO1lBQ2QsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRTtZQUM5QixPQUFPLEVBQUUsSUFBSTtTQUNkLENBQUM7UUFDRixPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxDQUFDLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsWUFBWSxDQUNoQixXQUErQixFQUMvQixXQUErQjtRQUUvQixNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUMsT0FBTyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTyxLQUFLLENBQUMsaUJBQWlCLENBQUMsa0JBQXNDO1FBQ3BFLE9BQU8sTUFBTSxJQUFJLENBQUMsS0FBSzthQUNwQixHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDO2FBQ2hGLEtBQUssQ0FBQyxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUFDO2FBQ2xDLE1BQU0sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVPLEtBQUssQ0FBQyxvQkFBb0IsQ0FDaEMsT0FBeUcsRUFDekcsSUFBWTtRQUVaLE9BQU8sTUFBTSxJQUFJLENBQUMsS0FBSzthQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO2FBQzVELElBQUksQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxJQUFJO1NBQ1gsQ0FBQzthQUNELE1BQU0sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixPQUFPLG1CQUFtQixJQUFJLENBQUMsSUFBSSxZQUFZLElBQUksQ0FBQyxRQUFRLFdBQVcsQ0FBQztJQUMxRSxDQUFDO0lBRU8sS0FBSyxDQUFDLGNBQWMsQ0FBQyxPQUEwQjtRQUNyRCxPQUFPLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2pILENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsT0FBTyxtQkFBbUIsSUFBSSxDQUFDLElBQUksWUFBWSxJQUFJLENBQUMsUUFBUSxjQUFjLENBQUM7SUFDN0UsQ0FBQztJQUVPLGlCQUFpQixDQUFDLGdCQUF3QjtRQUNoRCxPQUFPLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztJQUM1RCxDQUFDO0lBRU8scUJBQXFCLENBQUMsa0JBQXNDO1FBQ2xFLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLGtCQUFrQixDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ2hILENBQUM7SUFFTyxLQUFLLENBQUMsOEJBQThCO1FBQzFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2dCQUM1QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSztxQkFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7cUJBQzNDLE9BQU8sRUFBRTtxQkFDVCxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQ2hDLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QyxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxrQkFBa0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUMvQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN4QixDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1lBQzlDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLEtBQUssT0FBTyxDQUFDO1FBQzVELENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQztJQUVPLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxXQUErQjtRQUMvRCxJQUFBLGdCQUFNLEVBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUUsMkRBQTJELENBQUMsQ0FBQztRQUM3RyxPQUFPLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLFdBQVcsQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNsRyxDQUFDO0NBQ0Y7QUE1VEQsc0NBNFRDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHtcbiAgRGVsZWdhdGlvbk9wdGlvbnMsXG4gIERlbGVnYXRpb25SZXN1bHRzLFxuICBJU3Rha2luZ1dhbGxldCxcbiAgU3Rha2VPcHRpb25zLFxuICBTdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdCxcbiAgU3Rha2luZ1JlcXVlc3QsXG4gIFN0YWtpbmdTaWduZWRUcmFuc2FjdGlvbixcbiAgU3Rha2luZ1NpZ25PcHRpb25zLFxuICBTdGFraW5nVHJhbnNhY3Rpb24sXG4gIFN3aXRjaFZhbGlkYXRvck9wdGlvbnMsXG4gIFRyYW5zYWN0aW9uc1JlYWR5VG9TaWduLFxuICBVbnN0YWtlT3B0aW9ucyxcbiAgRXRoVW5zdGFrZU9wdGlvbnMsXG4gIENsYWltUmV3YXJkc09wdGlvbnMsXG59IGZyb20gJy4vaVN0YWtpbmdXYWxsZXQnO1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnLi4vYml0Z29CYXNlJztcbmltcG9ydCB7IElXYWxsZXQsIFByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQgfSBmcm9tICcuLi93YWxsZXQnO1xuaW1wb3J0IHsgSVRzc1V0aWxzLCBSZXF1ZXN0VHJhY2VyLCBUc3NVdGlscyB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuZXhwb3J0IGNsYXNzIFN0YWtpbmdXYWxsZXQgaW1wbGVtZW50cyBJU3Rha2luZ1dhbGxldCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYml0Z286IEJpdEdvQmFzZTtcbiAgcHJpdmF0ZSB0b2tlblBhcmVudFdhbGxldD86IElXYWxsZXQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgaXNFdGhUc3M6IGJvb2xlYW47XG5cbiAgcHVibGljIHdhbGxldDogSVdhbGxldDtcbiAgcHVibGljIHRzc1V0aWw6IElUc3NVdGlscztcblxuICBjb25zdHJ1Y3Rvcih3YWxsZXQ6IElXYWxsZXQsIGlzRXRoVHNzOiBib29sZWFuKSB7XG4gICAgdGhpcy53YWxsZXQgPSB3YWxsZXQ7XG4gICAgdGhpcy5iaXRnbyA9IHdhbGxldC5iaXRnbztcbiAgICB0aGlzLnRzc1V0aWwgPSBuZXcgVHNzVXRpbHModGhpcy5iaXRnbywgdGhpcy53YWxsZXQuYmFzZUNvaW4sIHRoaXMud2FsbGV0KTtcbiAgICB0aGlzLmlzRXRoVHNzID0gaXNFdGhUc3M7XG4gIH1cblxuICBnZXQgd2FsbGV0SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy53YWxsZXQuaWQoKTtcbiAgfVxuXG4gIGdldCBjb2luKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMud2FsbGV0LmJhc2VDb2luLnRva2VuQ29uZmlnID8gdGhpcy53YWxsZXQuYmFzZUNvaW4udG9rZW5Db25maWcudHlwZSA6IHRoaXMud2FsbGV0LmNvaW4oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFrZSBjb2luc1xuICAgKiBAcGFyYW0gb3B0aW9ucyAtIHN0YWtlIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgc3Rha2Uob3B0aW9uczogU3Rha2VPcHRpb25zKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmNyZWF0ZVN0YWtpbmdSZXF1ZXN0KG9wdGlvbnMsICdTVEFLRScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVuc3Rha2UgY29pbnNcbiAgICogQHBhcmFtIG9wdGlvbnMgLSB1bnN0YWtlIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgdW5zdGFrZShvcHRpb25zOiBVbnN0YWtlT3B0aW9ucyB8IEV0aFVuc3Rha2VPcHRpb25zKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmNyZWF0ZVN0YWtpbmdSZXF1ZXN0KG9wdGlvbnMsICdVTlNUQUtFJyk7XG4gIH1cblxuICAvKipcbiAgICogU3VibWl0IGEgcmVxdWVzdCB0byBzd2l0Y2ggdGhlIHZhbGlkYXRvciB1c2VkIGZvciBhIHNwZWNpZmljIGRlbGVnYXRpb25cbiAgICogVGhpcyB3aWxsIGNyZWF0ZSBhIG5ldyBkZWxlZ2F0aW9uIHdpdGggdGhlIG5ldyB2YWxpZGF0b3IgYWRkcmVzcyBhbmQgbWFyayB0aGUgb2xkIGRlbGVnYXRpb24gYXMgaW5hY3RpdmVcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBzd2l0Y2ggdmFsaWRhdG9yIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgc3dpdGNoVmFsaWRhdG9yKG9wdGlvbnM6IFN3aXRjaFZhbGlkYXRvck9wdGlvbnMpOiBQcm9taXNlPFN0YWtpbmdSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuY3JlYXRlU3Rha2luZ1JlcXVlc3Qob3B0aW9ucywgJ1NXSVRDSF9WQUxJREFUT1InKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdWJtaXQgYSByZXF1ZXN0IHRvIGNsYWltIHJld2FyZHMgZm9yIGEgc3BlY2lmaWMgZGVsZWdhdGlvblxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIGNsYWltIHJld2FyZHMgb3B0aW9uc1xuICAgKiBAcmV0dXJuIFN0YWtpbmdSZXF1ZXN0XG4gICAqL1xuICBhc3luYyBjbGFpbVJld2FyZHMob3B0aW9uczogQ2xhaW1SZXdhcmRzT3B0aW9ucyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5jcmVhdGVTdGFraW5nUmVxdWVzdChvcHRpb25zLCAnQ0xBSU1fUkVXQVJEUycpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbmNlbCBzdGFraW5nIHJlcXVlc3RcbiAgICogQHBhcmFtIHN0YWtpbmdSZXF1ZXN0SWQgLSBpZCBvZiB0aGUgc3Rha2luZyByZXF1ZXN0IHRvIGNhbmNlbFxuICAgKiBAcmV0dXJuIFN0YWtpbmdSZXF1ZXN0XG4gICAqL1xuICBhc3luYyBjYW5jZWxTdGFraW5nUmVxdWVzdChzdGFraW5nUmVxdWVzdElkOiBzdHJpbmcpOiBQcm9taXNlPFN0YWtpbmdSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z28uZGVsKHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdSZXF1ZXN0VXJsKHN0YWtpbmdSZXF1ZXN0SWQpKSkucmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggZGVsZWdhdGlvbnMgZm9yIGEgc3BlY2lmaWMgd2FsbGV0XG4gICAqIEBwYXJhbSBvcHRpb25zIC0gdW5zdGFrZSBvcHRpb25zXG4gICAqIEByZXR1cm4gU3Rha2luZ1JlcXVlc3RcbiAgICovXG4gIGFzeW5jIGRlbGVnYXRpb25zKG9wdGlvbnM6IERlbGVnYXRpb25PcHRpb25zKTogUHJvbWlzZTxEZWxlZ2F0aW9uUmVzdWx0cz4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmdldERlbGVnYXRpb25zKG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIHN0YWtpbmcgcmVxdWVzdCBieSBJRFxuICAgKiBAcGFyYW0gc3Rha2luZ1JlcXVlc3RJZCAtIGlkIG9mIHRoZSBzdGFraW5nIHJlcXVlc3QgdG8gcmV0cmlldmVcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgZ2V0U3Rha2luZ1JlcXVlc3Qoc3Rha2luZ1JlcXVlc3RJZDogc3RyaW5nKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvLmdldCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nUmVxdWVzdFVybChzdGFraW5nUmVxdWVzdElkKSkpLnJlc3VsdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbnMgcmVhZHkgdG8gc2lnblxuICAgKiBAcGFyYW0gc3Rha2luZ1JlcXVlc3RJZFxuICAgKiBAcmV0dXJuIFRyYW5zYWN0aW9uc1JlYWR5VG9TaWduXG4gICAqL1xuICBhc3luYyBnZXRUcmFuc2FjdGlvbnNSZWFkeVRvU2lnbihzdGFraW5nUmVxdWVzdElkOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uc1JlYWR5VG9TaWduPiB7XG4gICAgY29uc3Qgc3Rha2luZ1JlcXVlc3Q6IFN0YWtpbmdSZXF1ZXN0ID0gYXdhaXQgdGhpcy5nZXRTdGFraW5nUmVxdWVzdChzdGFraW5nUmVxdWVzdElkKTtcbiAgICBjb25zdCByZWFkeVRvU2lnbjogU3Rha2luZ1RyYW5zYWN0aW9uW10gPSBzdGFraW5nUmVxdWVzdC50cmFuc2FjdGlvbnMuZmlsdGVyKFxuICAgICAgKHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pID0+IHRyYW5zYWN0aW9uLnN0YXR1cyA9PT0gYFJFQURZYFxuICAgICk7XG4gICAgY29uc3QgbmV3VHJhbnNhY3Rpb25zOiBTdGFraW5nVHJhbnNhY3Rpb25bXSA9IHN0YWtpbmdSZXF1ZXN0LnRyYW5zYWN0aW9ucy5maWx0ZXIoXG4gICAgICAodHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvbikgPT4gdHJhbnNhY3Rpb24uc3RhdHVzID09PSBgTkVXYFxuICAgICk7XG5cbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHtcbiAgICAgIGFsbFNpZ25pbmdDb21wbGV0ZTpcbiAgICAgICAgc3Rha2luZ1JlcXVlc3QudHJhbnNhY3Rpb25zLmxlbmd0aCA+IDAgJiYgbmV3VHJhbnNhY3Rpb25zLmxlbmd0aCA9PT0gMCAmJiByZWFkeVRvU2lnbi5sZW5ndGggPT09IDAsXG4gICAgICB0cmFuc2FjdGlvbnM6IHJlYWR5VG9TaWduLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHRoZSBzdGFraW5nIHRyYW5zYWN0aW9uXG4gICAqIElmIFRTUyBkZWxldGUgc2lnbmF0dXJlIHNoYXJlcywgZWxzZSBleHBhbmQgYnVpbGQgcGFyYW1zIGFuZCB0aGVuIGJ1aWxkXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvbiAtIHN0YWtpbmcgdHJhbnNhY3Rpb24gdG8gYnVpbGRcbiAgICovXG4gIGFzeW5jIGJ1aWxkKHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pOiBQcm9taXNlPFN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0PiB7XG4gICAgaWYgKCh0aGlzLndhbGxldC5iYXNlQ29pbi5zdXBwb3J0c1RzcygpICYmIHRoaXMud2FsbGV0LmJhc2VDb2luLmdldEZhbWlseSgpICE9PSAnZXRoJykgfHwgdGhpcy5pc0V0aFRzcykge1xuICAgICAgaWYgKCF0cmFuc2FjdGlvbi50eFJlcXVlc3RJZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3R4UmVxdWVzdElkIGlzIHJlcXVpcmVkIHRvIHNpZ24gYW5kIHNlbmQnKTtcbiAgICAgIH1cbiAgICAgIC8vIGRlbGV0ZSBzaWduYXR1cmUgc2hhcmVzIGJlZm9yZSBzaWduaW5nIGZvciB0cmFuc2FjdGlvbiByZXF1ZXN0IEFQSVxuICAgICAgYXdhaXQgdGhpcy50c3NVdGlsLmRlbGV0ZVNpZ25hdHVyZVNoYXJlcyh0cmFuc2FjdGlvbi50eFJlcXVlc3RJZCk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2FjdGlvbjogdHJhbnNhY3Rpb24sXG4gICAgICAgIHJlc3VsdDoge1xuICAgICAgICAgIHdhbGxldElkOiB0aGlzLndhbGxldElkLFxuICAgICAgICAgIHR4UmVxdWVzdElkOiB0cmFuc2FjdGlvbi50eFJlcXVlc3RJZCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRyYW5zYWN0aW9uID0gYXdhaXQgdGhpcy5leHBhbmRCdWlsZFBhcmFtcyh0cmFuc2FjdGlvbik7XG4gICAgICBpZiAoIXRyYW5zYWN0aW9uLmJ1aWxkUGFyYW1zKSB7XG4gICAgICAgIHRocm93IEVycm9yKGBTdGFraW5nIHRyYW5zYWN0aW9uICR7dHJhbnNhY3Rpb24uaWR9IGJ1aWxkIHBhcmFtcyBub3QgZXhwYW5kZWRgKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGlzQnRjVW5kZWxlZ2F0ZSA9XG4gICAgICAgIHRoaXMud2FsbGV0LmJhc2VDb2luLmdldEZhbWlseSgpID09PSAnYnRjJyAmJlxuICAgICAgICB0cmFuc2FjdGlvbi50cmFuc2FjdGlvblR5cGUudG9Mb3dlckNhc2UoKSA9PT0gJ3VuZGVsZWdhdGVfd2l0aGRyYXcnO1xuICAgICAgY29uc3Qgd2FsbGV0ID0gaXNCdGNVbmRlbGVnYXRlXG4gICAgICAgID8gYXdhaXQgdGhpcy5nZXREZXNjcmlwdG9yV2FsbGV0KHRyYW5zYWN0aW9uKVxuICAgICAgICA6IGF3YWl0IHRoaXMuZ2V0V2FsbGV0Rm9yQnVpbGRpbmdBbmRTaWduaW5nKCk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zYWN0aW9uOiB0cmFuc2FjdGlvbixcbiAgICAgICAgcmVzdWx0OiBhd2FpdCB3YWxsZXQucHJlYnVpbGRUcmFuc2FjdGlvbih0cmFuc2FjdGlvbi5idWlsZFBhcmFtcyksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTaWduIHRoZSBzdGFraW5nIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSBzaWduT3B0aW9uc1xuICAgKiBAcGFyYW0gc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb25cbiAgICovXG4gIGFzeW5jIHNpZ24oXG4gICAgc2lnbk9wdGlvbnM6IFN0YWtpbmdTaWduT3B0aW9ucyxcbiAgICBzdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvbjogU3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHRcbiAgKTogUHJvbWlzZTxTdGFraW5nU2lnbmVkVHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCByZXFJZCA9IG5ldyBSZXF1ZXN0VHJhY2VyKCk7XG4gICAgY29uc3QgaXNCdGNVbmRlbGVnYXRlID1cbiAgICAgIHRoaXMud2FsbGV0LmJhc2VDb2luLmdldEZhbWlseSgpID09PSAnYnRjJyAmJlxuICAgICAgc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb24udHJhbnNhY3Rpb24udHJhbnNhY3Rpb25UeXBlLnRvTG93ZXJDYXNlKCkgPT09ICd1bmRlbGVnYXRlX3dpdGhkcmF3JztcbiAgICBjb25zdCB3YWxsZXQgPSBpc0J0Y1VuZGVsZWdhdGVcbiAgICAgID8gYXdhaXQgdGhpcy5nZXREZXNjcmlwdG9yV2FsbGV0KHN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uKVxuICAgICAgOiBhd2FpdCB0aGlzLmdldFdhbGxldEZvckJ1aWxkaW5nQW5kU2lnbmluZygpO1xuXG4gICAgY29uc3Qga2V5Y2hhaW4gPSBhd2FpdCB3YWxsZXQuYmFzZUNvaW4ua2V5Y2hhaW5zKCkuZ2V0S2V5c0ZvclNpZ25pbmcoe1xuICAgICAgd2FsbGV0OiB0aGlzLndhbGxldCxcbiAgICAgIHJlcUlkOiByZXFJZCxcbiAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgdHJhbnNhY3Rpb246IHN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uLFxuICAgICAgc2lnbmVkOiBhd2FpdCB3YWxsZXQuc2lnblRyYW5zYWN0aW9uKHtcbiAgICAgICAgdHhQcmVidWlsZDogc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb24ucmVzdWx0LFxuICAgICAgICB3YWxsZXRQYXNzcGhyYXNlOiBzaWduT3B0aW9ucy53YWxsZXRQYXNzcGhyYXNlLFxuICAgICAgICBrZXljaGFpbjoga2V5Y2hhaW5bMF0sXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbmQgdGhlIHNpZ25lZCBzdGFraW5nIHRyYW5zYWN0aW9uIGlmIHJlcXVpcmVkLiBTZW5kIGNhbGwgaXMgbm90IHJlcXVpcmVkIGlmIGFwaSB2ZXJzaW9uIGlzIGZ1bGxcbiAgICogYW5kIHRoaXMgbWV0aG9kIHdpbGwgcmV0dXJuIHRoZSBzdGFraW5nIHRyYW5zYWN0aW9uIGZyb20gdGhlIGluY29taW5nIG9iamVjdC5cbiAgICogQHBhcmFtIHNpZ25lZFRyYW5zYWN0aW9uXG4gICAqL1xuICBhc3luYyBzZW5kKHNpZ25lZFRyYW5zYWN0aW9uOiBTdGFraW5nU2lnbmVkVHJhbnNhY3Rpb24pOiBQcm9taXNlPFN0YWtpbmdUcmFuc2FjdGlvbj4ge1xuICAgIGlmICh0aGlzLmlzU2VuZENhbGxSZXF1aXJlZCgpKSB7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnb1xuICAgICAgICAucG9zdCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nVHJhbnNhY3Rpb25VUkwoc2lnbmVkVHJhbnNhY3Rpb24udHJhbnNhY3Rpb24pKSlcbiAgICAgICAgLnNlbmQoc2lnbmVkVHJhbnNhY3Rpb24uc2lnbmVkKVxuICAgICAgICAucmVzdWx0KCk7XG4gICAgfVxuICAgIHJldHVybiBzaWduZWRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBARGVwcmVjYXRlZCB1c2UgYnVpbGRBbmRTaWduXG4gICAqIEJ1aWxkLCBzaWduIGFuZCBzZW5kIHRoZSB0cmFuc2FjdGlvbi5cbiAgICogQHBhcmFtIHNpZ25PcHRpb25zXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvblxuICAgKi9cbiAgYXN5bmMgYnVpbGRTaWduQW5kU2VuZChcbiAgICBzaWduT3B0aW9uczogU3Rha2luZ1NpZ25PcHRpb25zLFxuICAgIHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb25cbiAgKTogUHJvbWlzZTxTdGFraW5nVHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5idWlsZEFuZFNpZ24oc2lnbk9wdGlvbnMsIHRyYW5zYWN0aW9uKS50aGVuKChyZXN1bHQ6IFN0YWtpbmdTaWduZWRUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuc2VuZChyZXN1bHQpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBwcmVidWlsdCBzdGFraW5nIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBmb3IgdHJhbnNhY3Rpb25zIHdpdGggdHggcmVxdWVzdCBpZCAoVFNTIHRyYW5zYWN0aW9ucyksIHdlIG5lZWQgdG8gZGVsZXRlIHNpZ25hdHVyZSBzaGFyZXMgYmVmb3JlIGNyZWF0aW5nIHByZWJ1aWxkIHRyYW5zYWN0aW9uXG4gICAqIHdlIG9ubHkgbmVlZCB0byBnZXQgdHJhbnNhY3Rpb24gYnVpbGQgcGFyYW1zIGlmIHRoZXkgZXhpc3QgdG8gcHJlIGJ1aWxkXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvblxuICAgKi9cbiAgYXN5bmMgcHJlYnVpbGRTZWxmTWFuYWdlZFN0YWtpbmdUcmFuc2FjdGlvbih0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKTogUHJvbWlzZTxQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0PiB7XG4gICAgaWYgKHRyYW5zYWN0aW9uLnR4UmVxdWVzdElkKSB7XG4gICAgICBhd2FpdCB0aGlzLnRzc1V0aWwuZGVsZXRlU2lnbmF0dXJlU2hhcmVzKHRyYW5zYWN0aW9uLnR4UmVxdWVzdElkKTtcbiAgICB9XG4gICAgY29uc3QgYnVpbGRQYXJhbXMgPSAoYXdhaXQgdGhpcy5leHBhbmRCdWlsZFBhcmFtcyh0cmFuc2FjdGlvbikpLmJ1aWxkUGFyYW1zO1xuICAgIGNvbnN0IGZvcm1hdHRlZFBhcmFtcyA9IHtcbiAgICAgIC4uLmJ1aWxkUGFyYW1zLFxuICAgICAgY29pbjogdGhpcy5jb2luLFxuICAgICAgd2FsbGV0SWQ6IHRoaXMud2FsbGV0SWQsXG4gICAgICB3YWxsZXRUeXBlOiB0aGlzLndhbGxldC50eXBlKCksXG4gICAgICBwcmV2aWV3OiB0cnVlLFxuICAgIH07XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLmdldFdhbGxldEZvckJ1aWxkaW5nQW5kU2lnbmluZygpKS5wcmVidWlsZFRyYW5zYWN0aW9uKGZvcm1hdHRlZFBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgYW5kIHNpZ24gdGhlIHRyYW5zYWN0aW9uLlxuICAgKiBAcGFyYW0gc2lnbk9wdGlvbnNcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uXG4gICAqL1xuICBhc3luYyBidWlsZEFuZFNpZ24oXG4gICAgc2lnbk9wdGlvbnM6IFN0YWtpbmdTaWduT3B0aW9ucyxcbiAgICB0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uXG4gICk6IFByb21pc2U8U3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3QgYnVpbHRUeCA9IGF3YWl0IHRoaXMuYnVpbGQodHJhbnNhY3Rpb24pO1xuICAgIHJldHVybiBhd2FpdCB0aGlzLnNpZ24oc2lnbk9wdGlvbnMsIGJ1aWx0VHgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBleHBhbmRCdWlsZFBhcmFtcyhzdGFraW5nVHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvbik6IFByb21pc2U8U3Rha2luZ1RyYW5zYWN0aW9uPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z29cbiAgICAgIC5nZXQodGhpcy5iaXRnby5taWNyb3NlcnZpY2VzVXJsKHRoaXMuc3Rha2luZ1RyYW5zYWN0aW9uVVJMKHN0YWtpbmdUcmFuc2FjdGlvbikpKVxuICAgICAgLnF1ZXJ5KHsgZXhwYW5kQnVpbGRQYXJhbXM6IHRydWUgfSlcbiAgICAgIC5yZXN1bHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgY3JlYXRlU3Rha2luZ1JlcXVlc3QoXG4gICAgb3B0aW9uczogU3Rha2VPcHRpb25zIHwgVW5zdGFrZU9wdGlvbnMgfCBFdGhVbnN0YWtlT3B0aW9ucyB8IFN3aXRjaFZhbGlkYXRvck9wdGlvbnMgfCBDbGFpbVJld2FyZHNPcHRpb25zLFxuICAgIHR5cGU6IHN0cmluZ1xuICApOiBQcm9taXNlPFN0YWtpbmdSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z29cbiAgICAgIC5wb3N0KHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdSZXF1ZXN0c1VSTCgpKSlcbiAgICAgIC5zZW5kKHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgdHlwZTogdHlwZSxcbiAgICAgIH0pXG4gICAgICAucmVzdWx0KCk7XG4gIH1cblxuICBwcml2YXRlIHN0YWtpbmdSZXF1ZXN0c1VSTCgpIHtcbiAgICByZXR1cm4gYC9hcGkvc3Rha2luZy92MS8ke3RoaXMuY29pbn0vd2FsbGV0cy8ke3RoaXMud2FsbGV0SWR9L3JlcXVlc3RzYDtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0RGVsZWdhdGlvbnMob3B0aW9uczogRGVsZWdhdGlvbk9wdGlvbnMpOiBQcm9taXNlPERlbGVnYXRpb25SZXN1bHRzPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z28uZ2V0KHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdEZWxlZ2F0aW9uc1VSTCgpKSkucXVlcnkob3B0aW9ucykucmVzdWx0KCk7XG4gIH1cblxuICBwcml2YXRlIHN0YWtpbmdEZWxlZ2F0aW9uc1VSTCgpIHtcbiAgICByZXR1cm4gYC9hcGkvc3Rha2luZy92MS8ke3RoaXMuY29pbn0vd2FsbGV0cy8ke3RoaXMud2FsbGV0SWR9L2RlbGVnYXRpb25zYDtcbiAgfVxuXG4gIHByaXZhdGUgc3Rha2luZ1JlcXVlc3RVcmwoc3Rha2luZ1JlcXVlc3RJZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5zdGFraW5nUmVxdWVzdHNVUkwoKX0vJHtzdGFraW5nUmVxdWVzdElkfWA7XG4gIH1cblxuICBwcml2YXRlIHN0YWtpbmdUcmFuc2FjdGlvblVSTChzdGFraW5nVHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvbik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMuc3Rha2luZ1JlcXVlc3RVcmwoc3Rha2luZ1RyYW5zYWN0aW9uLnN0YWtpbmdSZXF1ZXN0SWQpfS90cmFuc2FjdGlvbnMvJHtzdGFraW5nVHJhbnNhY3Rpb24uaWR9YDtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0V2FsbGV0Rm9yQnVpbGRpbmdBbmRTaWduaW5nKCk6IFByb21pc2U8SVdhbGxldD4ge1xuICAgIGlmICh0aGlzLndhbGxldC5iYXNlQ29pbi50b2tlbkNvbmZpZykge1xuICAgICAgaWYgKCF0aGlzLnRva2VuUGFyZW50V2FsbGV0KSB7XG4gICAgICAgIHRoaXMudG9rZW5QYXJlbnRXYWxsZXQgPSBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAgICAgLmNvaW4odGhpcy53YWxsZXQuYmFzZUNvaW4udG9rZW5Db25maWcuY29pbilcbiAgICAgICAgICAud2FsbGV0cygpXG4gICAgICAgICAgLmdldCh7IGlkOiB0aGlzLndhbGxldC5pZCgpIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMudG9rZW5QYXJlbnRXYWxsZXQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy53YWxsZXQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kIEFQSSBjYWxsIGlzIG9ubHkgcmVxdWlyZWQgZm9yIFRTUyBUeFJlcXVlc3QgYXBpIHZlcnNpb24gbGl0ZSBvciBtdWx0aS1zaWcgdHJhbnNhY3Rpb25zLlxuICAgKiBGb3IgRnVsbCBhcGkgdmVyc2lvbiwgc2lnbiB0cmFuc2FjdGlvbiBtb3ZlcyB0aGUgdHJhbnNhY3Rpb24gdG8gZGVsaXZlcmVkIHN0YXRlLlxuICAgKiBAcmV0dXJucyB0cnVlIGlmIHNlbmQgQVBJIGNhbGwgdG8gc3Rha2luZyBzZXJ2aWNlIGlzIHJlcXVpcmVkIGVsc2UgZmFsc2VcbiAgICovXG4gIHByaXZhdGUgaXNTZW5kQ2FsbFJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLndhbGxldC5iYXNlQ29pbi5nZXRGYW1pbHkoKSA9PT0gJ2V0aCcpIHtcbiAgICAgIHJldHVybiAhdGhpcy5pc0V0aFRzcztcbiAgICB9IGVsc2UgaWYgKHRoaXMud2FsbGV0LmJhc2VDb2luLnN1cHBvcnRzVHNzKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLndhbGxldC5iYXNlQ29pbi5nZXRNUENBbGdvcml0aG0oKSAhPT0gJ2VjZHNhJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBnZXREZXNjcmlwdG9yV2FsbGV0KHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pOiBQcm9taXNlPElXYWxsZXQ+IHtcbiAgICBhc3NlcnQodHJhbnNhY3Rpb24uYnVpbGRQYXJhbXM/LnNlbmRlcldhbGxldElkLCAnc2VuZGVyV2FsbGV0SWQgaXMgcmVxdWlyZWQgZm9yIGJ0YyB1bmRlbGVnYXRlIHRyYW5zYWN0aW9uJyk7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMud2FsbGV0LmJhc2VDb2luLndhbGxldHMoKS5nZXQoeyBpZDogdHJhbnNhY3Rpb24uYnVpbGRQYXJhbXMuc2VuZGVyV2FsbGV0SWQgfSk7XG4gIH1cbn1cbiJdfQ==
323
+ function isStakingTxRequestPrebuildResult(tx) {
324
+ return tx.txRequestId !== undefined;
325
+ }
326
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ1dhbGxldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9zdGFraW5nL3N0YWtpbmdXYWxsZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBc0JBLG9DQUE4RDtBQUM5RCxvREFBNEI7QUFDNUIsZ0VBQXVFO0FBQ3ZFLGtEQUEwQjtBQUUxQixNQUFhLGFBQWE7SUFReEIsWUFBWSxNQUFlLEVBQUUsUUFBaUI7UUFDNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxnQkFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZHLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFxQjtRQUMvQixPQUFPLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBMkM7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QUNILENBQUM7Z0JBQ0gsQ0FBQztxQkFBTSxDQUFDO29CQUNOLGNBQWMsQ0FBQyxJQUFJLENBQUMsOEJBQThCLGdCQUFnQixFQUFFLENBQUMsQ0FBQztnQkFDeEUsQ0FBQztZQUNILENBQUM7WUFFRCxNQUFNLHlCQUF5QixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQzFFLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FDaEQsQ0FBQztZQUVGLElBQUkseUJBQXlCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN6QyxjQUFjLENBQUMsSUFBSSxDQUFDLGtDQUFrQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hHLENBQUM7WUFDRCxJQUFJLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQzdDLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUEsZUFBSyxFQUFDLHVDQUF1QyxXQUFXLENBQUMsZ0JBQWdCLGlDQUFpQyxDQUFDLENBQUM7UUFDOUcsQ0FBQztJQUNILENBQUM7Q0FDRjtBQTNYRCxzQ0EyWEM7QUFFRCxTQUFTLGdDQUFnQyxDQUN2QyxFQUE4QztJQUU5QyxPQUFRLEVBQWdELENBQUMsV0FBVyxLQUFLLFNBQVMsQ0FBQztBQUNyRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHtcbiAgRGVsZWdhdGlvbk9wdGlvbnMsXG4gIERlbGVnYXRpb25SZXN1bHRzLFxuICBJU3Rha2luZ1dhbGxldCxcbiAgU3Rha2VPcHRpb25zLFxuICBTdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdCxcbiAgU3Rha2luZ1JlcXVlc3QsXG4gIFN0YWtpbmdTaWduZWRUcmFuc2FjdGlvbixcbiAgU3Rha2luZ1NpZ25PcHRpb25zLFxuICBTdGFraW5nVHJhbnNhY3Rpb24sXG4gIFN3aXRjaFZhbGlkYXRvck9wdGlvbnMsXG4gIFRyYW5zYWN0aW9uc1JlYWR5VG9TaWduLFxuICBVbnN0YWtlT3B0aW9ucyxcbiAgRXRoVW5zdGFrZU9wdGlvbnMsXG4gIENsYWltUmV3YXJkc09wdGlvbnMsXG4gIFN0YWtpbmdUeFJlcXVlc3RQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0LFxufSBmcm9tICcuL2lTdGFraW5nV2FsbGV0JztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQgeyBJV2FsbGV0LCBQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0IH0gZnJvbSAnLi4vd2FsbGV0JztcbmltcG9ydCB7IElUc3NVdGlscywgUmVxdWVzdFRyYWNlciwgVHNzVXRpbHMgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyB0cmFuc2FjdGlvblJlY2lwaWVudHNNYXRjaCB9IGZyb20gJy4uL3V0aWxzL3RyYW5zYWN0aW9uVXRpbHMnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcblxuZXhwb3J0IGNsYXNzIFN0YWtpbmdXYWxsZXQgaW1wbGVtZW50cyBJU3Rha2luZ1dhbGxldCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYml0Z286IEJpdEdvQmFzZTtcbiAgcHJpdmF0ZSB0b2tlblBhcmVudFdhbGxldD86IElXYWxsZXQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgaXNFdGhUc3M6IGJvb2xlYW47XG5cbiAgcHVibGljIHdhbGxldDogSVdhbGxldDtcbiAgcHVibGljIHRzc1V0aWw6IElUc3NVdGlscztcblxuICBjb25zdHJ1Y3Rvcih3YWxsZXQ6IElXYWxsZXQsIGlzRXRoVHNzOiBib29sZWFuKSB7XG4gICAgdGhpcy53YWxsZXQgPSB3YWxsZXQ7XG4gICAgdGhpcy5iaXRnbyA9IHdhbGxldC5iaXRnbztcbiAgICB0aGlzLnRzc1V0aWwgPSBuZXcgVHNzVXRpbHModGhpcy5iaXRnbywgdGhpcy53YWxsZXQuYmFzZUNvaW4sIHRoaXMud2FsbGV0KTtcbiAgICB0aGlzLmlzRXRoVHNzID0gaXNFdGhUc3M7XG4gIH1cblxuICBnZXQgd2FsbGV0SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy53YWxsZXQuaWQoKTtcbiAgfVxuXG4gIGdldCBjb2luKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMud2FsbGV0LmJhc2VDb2luLnRva2VuQ29uZmlnID8gdGhpcy53YWxsZXQuYmFzZUNvaW4udG9rZW5Db25maWcudHlwZSA6IHRoaXMud2FsbGV0LmNvaW4oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFrZSBjb2luc1xuICAgKiBAcGFyYW0gb3B0aW9ucyAtIHN0YWtlIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgc3Rha2Uob3B0aW9uczogU3Rha2VPcHRpb25zKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmNyZWF0ZVN0YWtpbmdSZXF1ZXN0KG9wdGlvbnMsICdTVEFLRScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVuc3Rha2UgY29pbnNcbiAgICogQHBhcmFtIG9wdGlvbnMgLSB1bnN0YWtlIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgdW5zdGFrZShvcHRpb25zOiBVbnN0YWtlT3B0aW9ucyB8IEV0aFVuc3Rha2VPcHRpb25zKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmNyZWF0ZVN0YWtpbmdSZXF1ZXN0KG9wdGlvbnMsICdVTlNUQUtFJyk7XG4gIH1cblxuICAvKipcbiAgICogU3VibWl0IGEgcmVxdWVzdCB0byBzd2l0Y2ggdGhlIHZhbGlkYXRvciB1c2VkIGZvciBhIHNwZWNpZmljIGRlbGVnYXRpb25cbiAgICogVGhpcyB3aWxsIGNyZWF0ZSBhIG5ldyBkZWxlZ2F0aW9uIHdpdGggdGhlIG5ldyB2YWxpZGF0b3IgYWRkcmVzcyBhbmQgbWFyayB0aGUgb2xkIGRlbGVnYXRpb24gYXMgaW5hY3RpdmVcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBzd2l0Y2ggdmFsaWRhdG9yIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgc3dpdGNoVmFsaWRhdG9yKG9wdGlvbnM6IFN3aXRjaFZhbGlkYXRvck9wdGlvbnMpOiBQcm9taXNlPFN0YWtpbmdSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuY3JlYXRlU3Rha2luZ1JlcXVlc3Qob3B0aW9ucywgJ1NXSVRDSF9WQUxJREFUT1InKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdWJtaXQgYSByZXF1ZXN0IHRvIGNsYWltIHJld2FyZHMgZm9yIGEgc3BlY2lmaWMgZGVsZWdhdGlvblxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIGNsYWltIHJld2FyZHMgb3B0aW9uc1xuICAgKiBAcmV0dXJuIFN0YWtpbmdSZXF1ZXN0XG4gICAqL1xuICBhc3luYyBjbGFpbVJld2FyZHMob3B0aW9uczogQ2xhaW1SZXdhcmRzT3B0aW9ucyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5jcmVhdGVTdGFraW5nUmVxdWVzdChvcHRpb25zLCAnQ0xBSU1fUkVXQVJEUycpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbmNlbCBzdGFraW5nIHJlcXVlc3RcbiAgICogQHBhcmFtIHN0YWtpbmdSZXF1ZXN0SWQgLSBpZCBvZiB0aGUgc3Rha2luZyByZXF1ZXN0IHRvIGNhbmNlbFxuICAgKiBAcmV0dXJuIFN0YWtpbmdSZXF1ZXN0XG4gICAqL1xuICBhc3luYyBjYW5jZWxTdGFraW5nUmVxdWVzdChzdGFraW5nUmVxdWVzdElkOiBzdHJpbmcpOiBQcm9taXNlPFN0YWtpbmdSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYml0Z28uZGVsKHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdSZXF1ZXN0VXJsKHN0YWtpbmdSZXF1ZXN0SWQpKSkucmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggZGVsZWdhdGlvbnMgZm9yIGEgc3BlY2lmaWMgd2FsbGV0XG4gICAqIEBwYXJhbSBvcHRpb25zIC0gdW5zdGFrZSBvcHRpb25zXG4gICAqIEByZXR1cm4gU3Rha2luZ1JlcXVlc3RcbiAgICovXG4gIGFzeW5jIGRlbGVnYXRpb25zKG9wdGlvbnM6IERlbGVnYXRpb25PcHRpb25zKTogUHJvbWlzZTxEZWxlZ2F0aW9uUmVzdWx0cz4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmdldERlbGVnYXRpb25zKG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIHN0YWtpbmcgcmVxdWVzdCBieSBJRFxuICAgKiBAcGFyYW0gc3Rha2luZ1JlcXVlc3RJZCAtIGlkIG9mIHRoZSBzdGFraW5nIHJlcXVlc3QgdG8gcmV0cmlldmVcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgZ2V0U3Rha2luZ1JlcXVlc3Qoc3Rha2luZ1JlcXVlc3RJZDogc3RyaW5nKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvLmdldCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nUmVxdWVzdFVybChzdGFraW5nUmVxdWVzdElkKSkpLnJlc3VsdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbnMgcmVhZHkgdG8gc2lnblxuICAgKiBAcGFyYW0gc3Rha2luZ1JlcXVlc3RJZFxuICAgKiBAcmV0dXJuIFRyYW5zYWN0aW9uc1JlYWR5VG9TaWduXG4gICAqL1xuICBhc3luYyBnZXRUcmFuc2FjdGlvbnNSZWFkeVRvU2lnbihzdGFraW5nUmVxdWVzdElkOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uc1JlYWR5VG9TaWduPiB7XG4gICAgY29uc3Qgc3Rha2luZ1JlcXVlc3Q6IFN0YWtpbmdSZXF1ZXN0ID0gYXdhaXQgdGhpcy5nZXRTdGFraW5nUmVxdWVzdChzdGFraW5nUmVxdWVzdElkKTtcbiAgICBjb25zdCByZWFkeVRvU2lnbjogU3Rha2luZ1RyYW5zYWN0aW9uW10gPSBzdGFraW5nUmVxdWVzdC50cmFuc2FjdGlvbnMuZmlsdGVyKFxuICAgICAgKHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pID0+IHRyYW5zYWN0aW9uLnN0YXR1cyA9PT0gYFJFQURZYFxuICAgICk7XG4gICAgY29uc3QgbmV3VHJhbnNhY3Rpb25zOiBTdGFraW5nVHJhbnNhY3Rpb25bXSA9IHN0YWtpbmdSZXF1ZXN0LnRyYW5zYWN0aW9ucy5maWx0ZXIoXG4gICAgICAodHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvbikgPT4gdHJhbnNhY3Rpb24uc3RhdHVzID09PSBgTkVXYFxuICAgICk7XG5cbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHtcbiAgICAgIGFsbFNpZ25pbmdDb21wbGV0ZTpcbiAgICAgICAgc3Rha2luZ1JlcXVlc3QudHJhbnNhY3Rpb25zLmxlbmd0aCA+IDAgJiYgbmV3VHJhbnNhY3Rpb25zLmxlbmd0aCA9PT0gMCAmJiByZWFkeVRvU2lnbi5sZW5ndGggPT09IDAsXG4gICAgICB0cmFuc2FjdGlvbnM6IHJlYWR5VG9TaWduLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHRoZSBzdGFraW5nIHRyYW5zYWN0aW9uXG4gICAqIElmIFRTUyBkZWxldGUgc2lnbmF0dXJlIHNoYXJlcywgZWxzZSBleHBhbmQgYnVpbGQgcGFyYW1zIGFuZCB0aGVuIGJ1aWxkXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvbiAtIHN0YWtpbmcgdHJhbnNhY3Rpb24gdG8gYnVpbGRcbiAgICovXG4gIGFzeW5jIGJ1aWxkKHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pOiBQcm9taXNlPFN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0PiB7XG4gICAgaWYgKCh0aGlzLndhbGxldC5iYXNlQ29pbi5zdXBwb3J0c1RzcygpICYmIHRoaXMud2FsbGV0LmJhc2VDb2luLmdldEZhbWlseSgpICE9PSAnZXRoJykgfHwgdGhpcy5pc0V0aFRzcykge1xuICAgICAgaWYgKCF0cmFuc2FjdGlvbi50eFJlcXVlc3RJZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3R4UmVxdWVzdElkIGlzIHJlcXVpcmVkIHRvIHNpZ24gYW5kIHNlbmQnKTtcbiAgICAgIH1cbiAgICAgIC8vIGRlbGV0ZSBzaWduYXR1cmUgc2hhcmVzIGJlZm9yZSBzaWduaW5nIGZvciB0cmFuc2FjdGlvbiByZXF1ZXN0IEFQSVxuICAgICAgYXdhaXQgdGhpcy50c3NVdGlsLmRlbGV0ZVNpZ25hdHVyZVNoYXJlcyh0cmFuc2FjdGlvbi50eFJlcXVlc3RJZCk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2FjdGlvbjogdHJhbnNhY3Rpb24sXG4gICAgICAgIHJlc3VsdDoge1xuICAgICAgICAgIHdhbGxldElkOiB0aGlzLndhbGxldElkLFxuICAgICAgICAgIHR4UmVxdWVzdElkOiB0cmFuc2FjdGlvbi50eFJlcXVlc3RJZCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRyYW5zYWN0aW9uID0gYXdhaXQgdGhpcy5leHBhbmRCdWlsZFBhcmFtcyh0cmFuc2FjdGlvbik7XG4gICAgICBpZiAoIXRyYW5zYWN0aW9uLmJ1aWxkUGFyYW1zKSB7XG4gICAgICAgIHRocm93IEVycm9yKGBTdGFraW5nIHRyYW5zYWN0aW9uICR7dHJhbnNhY3Rpb24uaWR9IGJ1aWxkIHBhcmFtcyBub3QgZXhwYW5kZWRgKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGlzQnRjVW5kZWxlZ2F0ZSA9XG4gICAgICAgIHRoaXMud2FsbGV0LmJhc2VDb2luLmdldEZhbWlseSgpID09PSAnYnRjJyAmJlxuICAgICAgICB0cmFuc2FjdGlvbi50cmFuc2FjdGlvblR5cGUudG9Mb3dlckNhc2UoKSA9PT0gJ3VuZGVsZWdhdGVfd2l0aGRyYXcnO1xuICAgICAgY29uc3Qgd2FsbGV0ID0gaXNCdGNVbmRlbGVnYXRlXG4gICAgICAgID8gYXdhaXQgdGhpcy5nZXREZXNjcmlwdG9yV2FsbGV0KHRyYW5zYWN0aW9uKVxuICAgICAgICA6IGF3YWl0IHRoaXMuZ2V0V2FsbGV0Rm9yQnVpbGRpbmdBbmRTaWduaW5nKCk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zYWN0aW9uOiB0cmFuc2FjdGlvbixcbiAgICAgICAgcmVzdWx0OiBhd2FpdCB3YWxsZXQucHJlYnVpbGRUcmFuc2FjdGlvbih0cmFuc2FjdGlvbi5idWlsZFBhcmFtcyksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTaWduIHRoZSBzdGFraW5nIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSBzaWduT3B0aW9uc1xuICAgKiBAcGFyYW0gc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb25cbiAgICovXG4gIGFzeW5jIHNpZ24oXG4gICAgc2lnbk9wdGlvbnM6IFN0YWtpbmdTaWduT3B0aW9ucyxcbiAgICBzdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvbjogU3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHRcbiAgKTogUHJvbWlzZTxTdGFraW5nU2lnbmVkVHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCByZXFJZCA9IG5ldyBSZXF1ZXN0VHJhY2VyKCk7XG4gICAgY29uc3QgaXNCdGNVbmRlbGVnYXRlID1cbiAgICAgIHRoaXMud2FsbGV0LmJhc2VDb2luLmdldEZhbWlseSgpID09PSAnYnRjJyAmJlxuICAgICAgc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb24udHJhbnNhY3Rpb24udHJhbnNhY3Rpb25UeXBlLnRvTG93ZXJDYXNlKCkgPT09ICd1bmRlbGVnYXRlX3dpdGhkcmF3JztcbiAgICBjb25zdCB3YWxsZXQgPSBpc0J0Y1VuZGVsZWdhdGVcbiAgICAgID8gYXdhaXQgdGhpcy5nZXREZXNjcmlwdG9yV2FsbGV0KHN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uKVxuICAgICAgOiBhd2FpdCB0aGlzLmdldFdhbGxldEZvckJ1aWxkaW5nQW5kU2lnbmluZygpO1xuXG4gICAgY29uc3Qga2V5Y2hhaW4gPSBhd2FpdCB3YWxsZXQuYmFzZUNvaW4ua2V5Y2hhaW5zKCkuZ2V0S2V5c0ZvclNpZ25pbmcoe1xuICAgICAgd2FsbGV0OiB0aGlzLndhbGxldCxcbiAgICAgIHJlcUlkOiByZXFJZCxcbiAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgdHJhbnNhY3Rpb246IHN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uLFxuICAgICAgc2lnbmVkOiBhd2FpdCB3YWxsZXQuc2lnblRyYW5zYWN0aW9uKHtcbiAgICAgICAgdHhQcmVidWlsZDogc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb24ucmVzdWx0LFxuICAgICAgICB3YWxsZXRQYXNzcGhyYXNlOiBzaWduT3B0aW9ucy53YWxsZXRQYXNzcGhyYXNlLFxuICAgICAgICBrZXljaGFpbjoga2V5Y2hhaW5bMF0sXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbmQgdGhlIHNpZ25lZCBzdGFraW5nIHRyYW5zYWN0aW9uIGlmIHJlcXVpcmVkLiBTZW5kIGNhbGwgaXMgbm90IHJlcXVpcmVkIGlmIGFwaSB2ZXJzaW9uIGlzIGZ1bGxcbiAgICogYW5kIHRoaXMgbWV0aG9kIHdpbGwgcmV0dXJuIHRoZSBzdGFraW5nIHRyYW5zYWN0aW9uIGZyb20gdGhlIGluY29taW5nIG9iamVjdC5cbiAgICogQHBhcmFtIHNpZ25lZFRyYW5zYWN0aW9uXG4gICAqL1xuICBhc3luYyBzZW5kKHNpZ25lZFRyYW5zYWN0aW9uOiBTdGFraW5nU2lnbmVkVHJhbnNhY3Rpb24pOiBQcm9taXNlPFN0YWtpbmdUcmFuc2FjdGlvbj4ge1xuICAgIGlmICh0aGlzLmlzU2VuZENhbGxSZXF1aXJlZCgpKSB7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnb1xuICAgICAgICAucG9zdCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nVHJhbnNhY3Rpb25VUkwoc2lnbmVkVHJhbnNhY3Rpb24udHJhbnNhY3Rpb24pKSlcbiAgICAgICAgLnNlbmQoc2lnbmVkVHJhbnNhY3Rpb24uc2lnbmVkKVxuICAgICAgICAucmVzdWx0KCk7XG4gICAgfVxuICAgIHJldHVybiBzaWduZWRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBARGVwcmVjYXRlZCB1c2UgYnVpbGRBbmRTaWduXG4gICAqIEJ1aWxkLCBzaWduIGFuZCBzZW5kIHRoZSB0cmFuc2FjdGlvbi5cbiAgICogQHBhcmFtIHNpZ25PcHRpb25zXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvblxuICAgKi9cbiAgYXN5bmMgYnVpbGRTaWduQW5kU2VuZChcbiAgICBzaWduT3B0aW9uczogU3Rha2luZ1NpZ25PcHRpb25zLFxuICAgIHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb25cbiAgKTogUHJvbWlzZTxTdGFraW5nVHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5idWlsZEFuZFNpZ24oc2lnbk9wdGlvbnMsIHRyYW5zYWN0aW9uKS50aGVuKChyZXN1bHQ6IFN0YWtpbmdTaWduZWRUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuc2VuZChyZXN1bHQpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBwcmVidWlsdCBzdGFraW5nIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBmb3IgdHJhbnNhY3Rpb25zIHdpdGggdHggcmVxdWVzdCBpZCAoVFNTIHRyYW5zYWN0aW9ucyksIHdlIG5lZWQgdG8gZGVsZXRlIHNpZ25hdHVyZSBzaGFyZXMgYmVmb3JlIGNyZWF0aW5nIHByZWJ1aWxkIHRyYW5zYWN0aW9uXG4gICAqIHdlIG9ubHkgbmVlZCB0byBnZXQgdHJhbnNhY3Rpb24gYnVpbGQgcGFyYW1zIGlmIHRoZXkgZXhpc3QgdG8gcHJlIGJ1aWxkXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvblxuICAgKi9cbiAgYXN5bmMgcHJlYnVpbGRTZWxmTWFuYWdlZFN0YWtpbmdUcmFuc2FjdGlvbih0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKTogUHJvbWlzZTxQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0PiB7XG4gICAgaWYgKHRyYW5zYWN0aW9uLnR4UmVxdWVzdElkKSB7XG4gICAgICBhd2FpdCB0aGlzLnRzc1V0aWwuZGVsZXRlU2lnbmF0dXJlU2hhcmVzKHRyYW5zYWN0aW9uLnR4UmVxdWVzdElkKTtcbiAgICB9XG4gICAgY29uc3QgYnVpbGRQYXJhbXMgPSAoYXdhaXQgdGhpcy5leHBhbmRCdWlsZFBhcmFtcyh0cmFuc2FjdGlvbikpLmJ1aWxkUGFyYW1zO1xuICAgIGNvbnN0IGZvcm1hdHRlZFBhcmFtcyA9IHtcbiAgICAgIC4uLmJ1aWxkUGFyYW1zLFxuICAgICAgY29pbjogdGhpcy5jb2luLFxuICAgICAgd2FsbGV0SWQ6IHRoaXMud2FsbGV0SWQsXG4gICAgICB3YWxsZXRUeXBlOiB0aGlzLndhbGxldC50eXBlKCksXG4gICAgICBwcmV2aWV3OiB0cnVlLFxuICAgIH07XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLmdldFdhbGxldEZvckJ1aWxkaW5nQW5kU2lnbmluZygpKS5wcmVidWlsZFRyYW5zYWN0aW9uKGZvcm1hdHRlZFBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgYW5kIHNpZ24gdGhlIHRyYW5zYWN0aW9uLlxuICAgKiBAcGFyYW0gc2lnbk9wdGlvbnNcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uXG4gICAqL1xuICBhc3luYyBidWlsZEFuZFNpZ24oXG4gICAgc2lnbk9wdGlvbnM6IFN0YWtpbmdTaWduT3B0aW9ucyxcbiAgICB0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uXG4gICk6IFByb21pc2U8U3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3QgYnVpbHRUeCA9IGF3YWl0IHRoaXMuYnVpbGQodHJhbnNhY3Rpb24pO1xuICAgIGlmICghaXNTdGFraW5nVHhSZXF1ZXN0UHJlYnVpbGRSZXN1bHQoYnVpbHRUeC5yZXN1bHQpKSB7XG4gICAgICBhd2FpdCB0aGlzLnZhbGlkYXRlQnVpbHRTdGFraW5nVHJhbnNhY3Rpb24odHJhbnNhY3Rpb24sIGJ1aWx0VHgpO1xuICAgIH1cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5zaWduKHNpZ25PcHRpb25zLCBidWlsdFR4KTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZXhwYW5kQnVpbGRQYXJhbXMoc3Rha2luZ1RyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pOiBQcm9taXNlPFN0YWtpbmdUcmFuc2FjdGlvbj4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAuZ2V0KHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybCh0aGlzLnN0YWtpbmdUcmFuc2FjdGlvblVSTChzdGFraW5nVHJhbnNhY3Rpb24pKSlcbiAgICAgIC5xdWVyeSh7IGV4cGFuZEJ1aWxkUGFyYW1zOiB0cnVlIH0pXG4gICAgICAucmVzdWx0KCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNyZWF0ZVN0YWtpbmdSZXF1ZXN0KFxuICAgIG9wdGlvbnM6IFN0YWtlT3B0aW9ucyB8IFVuc3Rha2VPcHRpb25zIHwgRXRoVW5zdGFrZU9wdGlvbnMgfCBTd2l0Y2hWYWxpZGF0b3JPcHRpb25zIHwgQ2xhaW1SZXdhcmRzT3B0aW9ucyxcbiAgICB0eXBlOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAucG9zdCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nUmVxdWVzdHNVUkwoKSkpXG4gICAgICAuc2VuZCh7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIHR5cGU6IHR5cGUsXG4gICAgICB9KVxuICAgICAgLnJlc3VsdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFraW5nUmVxdWVzdHNVUkwoKSB7XG4gICAgcmV0dXJuIGAvYXBpL3N0YWtpbmcvdjEvJHt0aGlzLmNvaW59L3dhbGxldHMvJHt0aGlzLndhbGxldElkfS9yZXF1ZXN0c2A7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldERlbGVnYXRpb25zKG9wdGlvbnM6IERlbGVnYXRpb25PcHRpb25zKTogUHJvbWlzZTxEZWxlZ2F0aW9uUmVzdWx0cz4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvLmdldCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nRGVsZWdhdGlvbnNVUkwoKSkpLnF1ZXJ5KG9wdGlvbnMpLnJlc3VsdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFraW5nRGVsZWdhdGlvbnNVUkwoKSB7XG4gICAgcmV0dXJuIGAvYXBpL3N0YWtpbmcvdjEvJHt0aGlzLmNvaW59L3dhbGxldHMvJHt0aGlzLndhbGxldElkfS9kZWxlZ2F0aW9uc2A7XG4gIH1cblxuICBwcml2YXRlIHN0YWtpbmdSZXF1ZXN0VXJsKHN0YWtpbmdSZXF1ZXN0SWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMuc3Rha2luZ1JlcXVlc3RzVVJMKCl9LyR7c3Rha2luZ1JlcXVlc3RJZH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFraW5nVHJhbnNhY3Rpb25VUkwoc3Rha2luZ1RyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLnN0YWtpbmdSZXF1ZXN0VXJsKHN0YWtpbmdUcmFuc2FjdGlvbi5zdGFraW5nUmVxdWVzdElkKX0vdHJhbnNhY3Rpb25zLyR7c3Rha2luZ1RyYW5zYWN0aW9uLmlkfWA7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldFdhbGxldEZvckJ1aWxkaW5nQW5kU2lnbmluZygpOiBQcm9taXNlPElXYWxsZXQ+IHtcbiAgICBpZiAodGhpcy53YWxsZXQuYmFzZUNvaW4udG9rZW5Db25maWcpIHtcbiAgICAgIGlmICghdGhpcy50b2tlblBhcmVudFdhbGxldCkge1xuICAgICAgICB0aGlzLnRva2VuUGFyZW50V2FsbGV0ID0gYXdhaXQgdGhpcy5iaXRnb1xuICAgICAgICAgIC5jb2luKHRoaXMud2FsbGV0LmJhc2VDb2luLnRva2VuQ29uZmlnLmNvaW4pXG4gICAgICAgICAgLndhbGxldHMoKVxuICAgICAgICAgIC5nZXQoeyBpZDogdGhpcy53YWxsZXQuaWQoKSB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLnRva2VuUGFyZW50V2FsbGV0O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMud2FsbGV0KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2VuZCBBUEkgY2FsbCBpcyBvbmx5IHJlcXVpcmVkIGZvciBUU1MgVHhSZXF1ZXN0IGFwaSB2ZXJzaW9uIGxpdGUgb3IgbXVsdGktc2lnIHRyYW5zYWN0aW9ucy5cbiAgICogRm9yIEZ1bGwgYXBpIHZlcnNpb24sIHNpZ24gdHJhbnNhY3Rpb24gbW92ZXMgdGhlIHRyYW5zYWN0aW9uIHRvIGRlbGl2ZXJlZCBzdGF0ZS5cbiAgICogQHJldHVybnMgdHJ1ZSBpZiBzZW5kIEFQSSBjYWxsIHRvIHN0YWtpbmcgc2VydmljZSBpcyByZXF1aXJlZCBlbHNlIGZhbHNlXG4gICAqL1xuICBwcml2YXRlIGlzU2VuZENhbGxSZXF1aXJlZCgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy53YWxsZXQuYmFzZUNvaW4uZ2V0RmFtaWx5KCkgPT09ICdldGgnKSB7XG4gICAgICByZXR1cm4gIXRoaXMuaXNFdGhUc3M7XG4gICAgfSBlbHNlIGlmICh0aGlzLndhbGxldC5iYXNlQ29pbi5zdXBwb3J0c1RzcygpKSB7XG4gICAgICByZXR1cm4gdGhpcy53YWxsZXQuYmFzZUNvaW4uZ2V0TVBDQWxnb3JpdGhtKCkgIT09ICdlY2RzYSc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0RGVzY3JpcHRvcldhbGxldCh0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKTogUHJvbWlzZTxJV2FsbGV0PiB7XG4gICAgYXNzZXJ0KHRyYW5zYWN0aW9uLmJ1aWxkUGFyYW1zPy5zZW5kZXJXYWxsZXRJZCwgJ3NlbmRlcldhbGxldElkIGlzIHJlcXVpcmVkIGZvciBidGMgdW5kZWxlZ2F0ZSB0cmFuc2FjdGlvbicpO1xuICAgIHJldHVybiBhd2FpdCB0aGlzLndhbGxldC5iYXNlQ29pbi53YWxsZXRzKCkuZ2V0KHsgaWQ6IHRyYW5zYWN0aW9uLmJ1aWxkUGFyYW1zLnNlbmRlcldhbGxldElkIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB2YWxpZGF0ZUJ1aWx0U3Rha2luZ1RyYW5zYWN0aW9uKFxuICAgIHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24sXG4gICAgcHJlYnVpbHRTdGFraW5nVHJhbnNhY3Rpb246IFN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0XG4gICkge1xuICAgIGNvbnN0IHsgYnVpbGRQYXJhbXMgfSA9IHRyYW5zYWN0aW9uO1xuICAgIGNvbnN0IHsgcmVzdWx0IH0gPSBwcmVidWlsdFN0YWtpbmdUcmFuc2FjdGlvbjtcbiAgICBjb25zdCBjb2luID0gdGhpcy53YWxsZXQuYmFzZUNvaW47XG4gICAgZGVidWcoYFZhbGlkYXRpbmcgc3Rha2luZyB0cmFuc2FjdGlvbiAke3RyYW5zYWN0aW9uLnN0YWtpbmdSZXF1ZXN0SWR9IHdpdGggcHJlYnVpbHQgdHJhbnNhY3Rpb25gKTtcblxuICAgIGNvbnN0IGV4cGxhaW5lZFRyYW5zYWN0aW9uID0gYXdhaXQgY29pbi5leHBsYWluVHJhbnNhY3Rpb24ocmVzdWx0KTtcblxuICAgIGlmIChidWlsZFBhcmFtcz8ucmVjaXBpZW50cykge1xuICAgICAgY29uc3QgdXNlclJlY2lwaWVudE1hcCA9IG5ldyBNYXAoXG4gICAgICAgIGJ1aWxkUGFyYW1zLnJlY2lwaWVudHMubWFwKChyZWNpcGllbnQpID0+IFtyZWNpcGllbnQuYWRkcmVzcy50b0xvd2VyQ2FzZSgpLCByZWNpcGllbnRdKVxuICAgICAgKTtcbiAgICAgIGNvbnN0IHBsYXRmb3JtUmVjaXBpZW50TWFwID0gbmV3IE1hcChcbiAgICAgICAgKGV4cGxhaW5lZFRyYW5zYWN0aW9uPy5vdXRwdXRzID8/IFtdKS5tYXAoKHJlY2lwaWVudCkgPT4gW3JlY2lwaWVudC5hZGRyZXNzLnRvTG93ZXJDYXNlKCksIHJlY2lwaWVudF0pXG4gICAgICApO1xuXG4gICAgICBjb25zdCBtaXNtYXRjaEVycm9yczogc3RyaW5nW10gPSBbXTtcblxuICAgICAgZm9yIChjb25zdCBbcmVjaXBpZW50QWRkcmVzcywgcmVjaXBpZW50SW5mb10gb2YgcGxhdGZvcm1SZWNpcGllbnRNYXApIHtcbiAgICAgICAgaWYgKHVzZXJSZWNpcGllbnRNYXAuaGFzKHJlY2lwaWVudEFkZHJlc3MpKSB7XG4gICAgICAgICAgY29uc3QgdXNlclJlY3BpZW50ID0gdXNlclJlY2lwaWVudE1hcC5nZXQocmVjaXBpZW50QWRkcmVzcyk7XG4gICAgICAgICAgaWYgKCF1c2VyUmVjcGllbnQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignVW5hYmxlIHRvIGRldGVybWluZSByZWNpcGllbnQgYWRkcmVzcycpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCBtYXRjaFJlc3VsdCA9IHRyYW5zYWN0aW9uUmVjaXBpZW50c01hdGNoKHVzZXJSZWNwaWVudCwgcmVjaXBpZW50SW5mbyk7XG4gICAgICAgICAgaWYgKCFtYXRjaFJlc3VsdC5leGFjdE1hdGNoKSB7XG4gICAgICAgICAgICBpZiAoIW1hdGNoUmVzdWx0LnRva2VuTWF0Y2gpIHtcbiAgICAgICAgICAgICAgbWlzbWF0Y2hFcnJvcnMucHVzaChcbiAgICAgICAgICAgICAgICBgSW52YWxpZCB0b2tlbiAke3JlY2lwaWVudEluZm8udG9rZW5OYW1lfSB0cmFuc2ZlciB3aXRoIGFtb3VudCAke3JlY2lwaWVudEluZm8uYW1vdW50fSB0byAke3JlY2lwaWVudEluZm8uYW1vdW50fSBmb3VuZCBpbiBidWlsdCB0cmFuc2FjdGlvbiwgc3BlY2lmaWVkICR7dXNlclJlY3BpZW50LnRva2VuTmFtZX1gXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIW1hdGNoUmVzdWx0LmFtb3VudE1hdGNoKSB7XG4gICAgICAgICAgICAgIG1pc21hdGNoRXJyb3JzLnB1c2goXG4gICAgICAgICAgICAgICAgYEludmFsaWQgcmVjaXBpZW50IGFtb3VudCBmb3IgJHtyZWNpcGllbnRJbmZvLmFkZHJlc3N9LCBzcGVjaWZpZWQgJHt1c2VyUmVjcGllbnQuYW1vdW50fSBnb3QgJHtyZWNpcGllbnRJbmZvLmFtb3VudH1gXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG1pc21hdGNoRXJyb3JzLnB1c2goYEludmFsaWQgcmVjaXBpZW50IGFkZHJlc3M6ICR7cmVjaXBpZW50QWRkcmVzc31gKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBtaXNzaW5nUmVjaXBpZW50QWRkcmVzc2VzID0gQXJyYXkuZnJvbSh1c2VyUmVjaXBpZW50TWFwLmtleXMoKSkuZmlsdGVyKFxuICAgICAgICAoYWRkcmVzcykgPT4gIXBsYXRmb3JtUmVjaXBpZW50TWFwLmhhcyhhZGRyZXNzKVxuICAgICAgKTtcblxuICAgICAgaWYgKG1pc3NpbmdSZWNpcGllbnRBZGRyZXNzZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBtaXNtYXRjaEVycm9ycy5wdXNoKGBNaXNzaW5nIHJlY2lwaWVudCBhZGRyZXNzKGVzKTogJHttaXNzaW5nUmVjaXBpZW50QWRkcmVzc2VzLmpvaW4oJywgJyl9YCk7XG4gICAgICB9XG4gICAgICBpZiAobWlzbWF0Y2hFcnJvcnMubGVuZ3RoID4gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWlzbWF0Y2hFcnJvcnMuam9pbignLCAnKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGRlYnVnKGBDYW5ub3QgdmFsaWRhdGUgc3Rha2luZyB0cmFuc2FjdGlvbiAke3RyYW5zYWN0aW9uLnN0YWtpbmdSZXF1ZXN0SWR9IHdpdGhvdXQgc3BlY2lmaWVkIGJ1aWxkIHBhcmFtc2ApO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBpc1N0YWtpbmdUeFJlcXVlc3RQcmVidWlsZFJlc3VsdChcbiAgdHg6IFN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0WydyZXN1bHQnXVxuKTogdHggaXMgU3Rha2luZ1R4UmVxdWVzdFByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQge1xuICByZXR1cm4gKHR4IGFzIFN0YWtpbmdUeFJlcXVlc3RQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0KS50eFJlcXVlc3RJZCAhPT0gdW5kZWZpbmVkO1xufVxuIl19
@@ -0,0 +1,9 @@
1
+ import { ITransactionRecipient } from '../baseCoin';
2
+ export declare function transactionRecipientsMatch(recipient1: ITransactionRecipient, recpient2: ITransactionRecipient): {
3
+ addressMatch: boolean;
4
+ amountMatch: boolean;
5
+ memoMatch: boolean;
6
+ tokenMatch: boolean;
7
+ exactMatch: boolean;
8
+ };
9
+ //# sourceMappingURL=transactionUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transactionUtils.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/utils/transactionUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAE,qBAAqB;;;;;;EAyB7G"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.transactionRecipientsMatch = transactionRecipientsMatch;
7
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
+ function transactionRecipientsMatch(recipient1, recpient2) {
9
+ const address1 = recipient1.address;
10
+ const address2 = recpient2.address;
11
+ const amount1 = new bignumber_js_1.default(recipient1.amount);
12
+ const amount2 = new bignumber_js_1.default(recpient2.amount);
13
+ const tokenName1 = recipient1.tokenName;
14
+ const tokenName2 = recpient2.tokenName;
15
+ const memo1 = recipient1.memo;
16
+ const memo2 = recpient2.memo;
17
+ const addressMatch = address1 === address2;
18
+ const amountMatch = amount1.isEqualTo(amount2);
19
+ const memoMatch = memo1 === memo2;
20
+ const tokenMatch = tokenName1 === tokenName2;
21
+ return {
22
+ addressMatch,
23
+ amountMatch,
24
+ memoMatch,
25
+ tokenMatch,
26
+ exactMatch: addressMatch && amountMatch && memoMatch && tokenMatch,
27
+ };
28
+ }
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25VdGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby91dGlscy90cmFuc2FjdGlvblV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0EsZ0VBeUJDO0FBNUJELGdFQUFxQztBQUdyQyxTQUFnQiwwQkFBMEIsQ0FBQyxVQUFpQyxFQUFFLFNBQWdDO0lBQzVHLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUM7SUFDcEMsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQztJQUVuQyxNQUFNLE9BQU8sR0FBRyxJQUFJLHNCQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pELE1BQU0sT0FBTyxHQUFHLElBQUksc0JBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFaEQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQztJQUN4QyxNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDO0lBRXZDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFDOUIsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQztJQUU3QixNQUFNLFlBQVksR0FBRyxRQUFRLEtBQUssUUFBUSxDQUFDO0lBQzNDLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDL0MsTUFBTSxTQUFTLEdBQUcsS0FBSyxLQUFLLEtBQUssQ0FBQztJQUNsQyxNQUFNLFVBQVUsR0FBRyxVQUFVLEtBQUssVUFBVSxDQUFDO0lBRTdDLE9BQU87UUFDTCxZQUFZO1FBQ1osV0FBVztRQUNYLFNBQVM7UUFDVCxVQUFVO1FBQ1YsVUFBVSxFQUFFLFlBQVksSUFBSSxXQUFXLElBQUksU0FBUyxJQUFJLFVBQVU7S0FDbkUsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5pbXBvcnQgeyBJVHJhbnNhY3Rpb25SZWNpcGllbnQgfSBmcm9tICcuLi9iYXNlQ29pbic7XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2FjdGlvblJlY2lwaWVudHNNYXRjaChyZWNpcGllbnQxOiBJVHJhbnNhY3Rpb25SZWNpcGllbnQsIHJlY3BpZW50MjogSVRyYW5zYWN0aW9uUmVjaXBpZW50KSB7XG4gIGNvbnN0IGFkZHJlc3MxID0gcmVjaXBpZW50MS5hZGRyZXNzO1xuICBjb25zdCBhZGRyZXNzMiA9IHJlY3BpZW50Mi5hZGRyZXNzO1xuXG4gIGNvbnN0IGFtb3VudDEgPSBuZXcgQmlnTnVtYmVyKHJlY2lwaWVudDEuYW1vdW50KTtcbiAgY29uc3QgYW1vdW50MiA9IG5ldyBCaWdOdW1iZXIocmVjcGllbnQyLmFtb3VudCk7XG5cbiAgY29uc3QgdG9rZW5OYW1lMSA9IHJlY2lwaWVudDEudG9rZW5OYW1lO1xuICBjb25zdCB0b2tlbk5hbWUyID0gcmVjcGllbnQyLnRva2VuTmFtZTtcblxuICBjb25zdCBtZW1vMSA9IHJlY2lwaWVudDEubWVtbztcbiAgY29uc3QgbWVtbzIgPSByZWNwaWVudDIubWVtbztcblxuICBjb25zdCBhZGRyZXNzTWF0Y2ggPSBhZGRyZXNzMSA9PT0gYWRkcmVzczI7XG4gIGNvbnN0IGFtb3VudE1hdGNoID0gYW1vdW50MS5pc0VxdWFsVG8oYW1vdW50Mik7XG4gIGNvbnN0IG1lbW9NYXRjaCA9IG1lbW8xID09PSBtZW1vMjtcbiAgY29uc3QgdG9rZW5NYXRjaCA9IHRva2VuTmFtZTEgPT09IHRva2VuTmFtZTI7XG5cbiAgcmV0dXJuIHtcbiAgICBhZGRyZXNzTWF0Y2gsXG4gICAgYW1vdW50TWF0Y2gsXG4gICAgbWVtb01hdGNoLFxuICAgIHRva2VuTWF0Y2gsXG4gICAgZXhhY3RNYXRjaDogYWRkcmVzc01hdGNoICYmIGFtb3VudE1hdGNoICYmIG1lbW9NYXRjaCAmJiB0b2tlbk1hdGNoLFxuICB9O1xufVxuIl19
@@ -3,10 +3,9 @@ import { IBaseCoin, Message, SignedMessage, SignedTransaction, TransactionPrebui
3
3
  import { BitGoBase } from '../bitgoBase';
4
4
  import { Keychain, KeychainWithEncryptedPrv } from '../keychain';
5
5
  import { IPendingApproval, PendingApprovalData } from '../pendingApproval';
6
- import { IStakingWallet } from '../staking';
6
+ import { IGoStakingWallet, IStakingWallet } from '../staking';
7
7
  import { ITradingAccount } from '../trading';
8
8
  import { CustomCommitmentGeneratingFunction, CustomGShareGeneratingFunction, CustomKShareGeneratingFunction, CustomMPCv2SigningRound1GeneratingFunction, CustomMPCv2SigningRound2GeneratingFunction, CustomMPCv2SigningRound3GeneratingFunction, CustomMuDeltaShareGeneratingFunction, CustomPaillierModulusGetterFunction, CustomRShareGeneratingFunction, CustomSShareGeneratingFunction, TokenEnablement, TokenTransferRecipientParams } from '../utils';
9
- import { ILightning } from '../lightning/custodial';
10
9
  import { SerializedNtilde } from '../../account-lib/mpc/tss/ecdsa/types';
11
10
  import { IAddressBook } from '../address-book';
12
11
  import { WalletUser } from '@bitgo/public-types';
@@ -147,6 +146,7 @@ export interface PrebuildTransactionResult extends TransactionPrebuild {
147
146
  };
148
147
  pendingApprovalId?: string;
149
148
  reqId?: IRequestTracer;
149
+ payload?: string;
150
150
  }
151
151
  export interface CustomSigningFunction {
152
152
  (params: {
@@ -365,6 +365,9 @@ export interface FundForwardersOptions {
365
365
  forwarderAddress: string;
366
366
  amount?: string;
367
367
  }
368
+ export interface FundForwarderParams {
369
+ forwarders: FundForwardersOptions[];
370
+ }
368
371
  export interface FlushForwarderTokenOptions {
369
372
  address?: string;
370
373
  id?: string;
@@ -778,6 +781,7 @@ export interface IWallet {
778
781
  toJSON(): WalletData;
779
782
  toTradingAccount(): ITradingAccount;
780
783
  toStakingWallet(): IStakingWallet;
784
+ toGoStakingWallet(): IGoStakingWallet;
781
785
  toAddressBook(): IAddressBook;
782
786
  downloadKeycard(params?: DownloadKeycardOptions): void;
783
787
  buildAccountConsolidations(params?: BuildConsolidationTransactionOptions): Promise<PrebuildTransactionResult[]>;
@@ -786,7 +790,6 @@ export interface IWallet {
786
790
  buildTokenEnablements(params?: BuildTokenEnablementOptions): Promise<PrebuildTransactionResult[]>;
787
791
  sendTokenEnablement(params?: PrebuildAndSignTransactionOptions): Promise<any>;
788
792
  sendTokenEnablements(params?: BuildTokenEnablementOptions): Promise<any>;
789
- lightning(): ILightning;
790
793
  signMessage(params: WalletSignMessageOptions): Promise<SignedMessage>;
791
794
  signTypedData(params: WalletSignTypedDataOptions): Promise<SignedMessage>;
792
795
  fetchCrossChainUTXOs(params: FetchCrossChainUTXOsOptions): Promise<CrossChainUTXO[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"iWallet.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/wallet/iWallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iWallet.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/wallet/iWallet.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaVdhbGxldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby93YWxsZXQvaVdhbGxldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlcXVlc3RUcmFjZXIgfSBmcm9tICcuLi8uLi9hcGknO1xuaW1wb3J0IHtcbiAgSUJhc2VDb2luLFxuICBNZXNzYWdlLFxuICBTaWduZWRNZXNzYWdlLFxuICBTaWduZWRUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25QcmVidWlsZCxcbiAgVmVyaWZpY2F0aW9uT3B0aW9ucyxcbiAgVHlwZWREYXRhLFxuICBORlRUcmFuc2Zlck9wdGlvbnMsXG59IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQgeyBLZXljaGFpbiwgS2V5Y2hhaW5XaXRoRW5jcnlwdGVkUHJ2IH0gZnJvbSAnLi4va2V5Y2hhaW4nO1xuaW1wb3J0IHsgSVBlbmRpbmdBcHByb3ZhbCwgUGVuZGluZ0FwcHJvdmFsRGF0YSB9IGZyb20gJy4uL3BlbmRpbmdBcHByb3ZhbCc7XG5pbXBvcnQgeyBJU3Rha2luZ1dhbGxldCB9IGZyb20gJy4uL3N0YWtpbmcnO1xuaW1wb3J0IHsgSVRyYWRpbmdBY2NvdW50IH0gZnJvbSAnLi4vdHJhZGluZyc7XG5pbXBvcnQge1xuICBDdXN0b21Db21taXRtZW50R2VuZXJhdGluZ0Z1bmN0aW9uLFxuICBDdXN0b21HU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24sXG4gIEN1c3RvbUtTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbixcbiAgQ3VzdG9tTVBDdjJTaWduaW5nUm91bmQxR2VuZXJhdGluZ0Z1bmN0aW9uLFxuICBDdXN0b21NUEN2MlNpZ25pbmdSb3VuZDJHZW5lcmF0aW5nRnVuY3Rpb24sXG4gIEN1c3RvbU1QQ3YyU2lnbmluZ1JvdW5kM0dlbmVyYXRpbmdGdW5jdGlvbixcbiAgQ3VzdG9tTXVEZWx0YVNoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uLFxuICBDdXN0b21QYWlsbGllck1vZHVsdXNHZXR0ZXJGdW5jdGlvbixcbiAgQ3VzdG9tUlNoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uLFxuICBDdXN0b21TU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24sXG4gIFRva2VuRW5hYmxlbWVudCxcbiAgVG9rZW5UcmFuc2ZlclJlY2lwaWVudFBhcmFtcyxcbn0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgSUxpZ2h0bmluZyB9IGZyb20gJy4uL2xpZ2h0bmluZy9jdXN0b2RpYWwnO1xuaW1wb3J0IHsgU2VyaWFsaXplZE50aWxkZSB9IGZyb20gJy4uLy4uL2FjY291bnQtbGliL21wYy90c3MvZWNkc2EvdHlwZXMnO1xuaW1wb3J0IHsgSUFkZHJlc3NCb29rIH0gZnJvbSAnLi4vYWRkcmVzcy1ib29rJztcbmltcG9ydCB7IFdhbGxldFVzZXIgfSBmcm9tICdAYml0Z28vcHVibGljLXR5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBNYXhpbXVtU3BlbmRhYmxlT3B0aW9ucyB7XG4gIG1pblZhbHVlPzogbnVtYmVyIHwgc3RyaW5nO1xuICBtYXhWYWx1ZT86IG51bWJlciB8IHN0cmluZztcbiAgbWluSGVpZ2h0PzogbnVtYmVyO1xuICBtaW5Db25maXJtcz86IG51bWJlcjtcbiAgZW5mb3JjZU1pbkNvbmZpcm1zRm9yQ2hhbmdlPzogYm9vbGVhbjtcbiAgZmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUmF0ZT86IG51bWJlcjtcbiAgcmVjaXBpZW50QWRkcmVzcz86IHN0cmluZztcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHRhcmdldD86IG51bWJlciB8IHN0cmluZztcbiAgcGxhaW5UYXJnZXQ/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWF4aW11bVNwZW5kYWJsZSB7XG4gIG1heGltdW1TcGVuZGFibGU6IG51bWJlcjtcbiAgY29pbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lbW8ge1xuICB2YWx1ZTogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRDb25zb2xpZGF0aW9uVHJhbnNhY3Rpb25PcHRpb25zIGV4dGVuZHMgUHJlYnVpbGRUcmFuc2FjdGlvbk9wdGlvbnMsIFdhbGxldFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMge1xuICBjb25zb2xpZGF0ZUFkZHJlc3Nlcz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkVG9rZW5FbmFibGVtZW50T3B0aW9ucyBleHRlbmRzIFByZWJ1aWxkVHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgZW5hYmxlVG9rZW5zOiBUb2tlbkVuYWJsZW1lbnRbXTtcbn1cblxudHlwZSBCYXNlQmFsYW5jZSA9IHtcbiAgYmFsYW5jZVN0cmluZzogc3RyaW5nO1xuICBjb25maXJtZWRCYWxhbmNlU3RyaW5nOiBzdHJpbmc7XG4gIHNwZW5kYWJsZUJhbGFuY2VTdHJpbmc6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIE5mdEJhbGFuY2UgPSBCYXNlQmFsYW5jZSAmIHtcbiAgdHlwZTogc3RyaW5nO1xuICBtZXRhZGF0YToge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB0b2tlbkNvbnRyYWN0QWRkcmVzczogc3RyaW5nO1xuICB9O1xuICBjb2xsZWN0aW9uczoge1xuICAgIC8vIG1hcCB0b2tlbklkIHRvIGJhbGFuY2Ugb2YgdG9rZW5cbiAgICBbdG9rZW5JZDogc3RyaW5nXTogbnVtYmVyO1xuICB9O1xufTtcblxuZXhwb3J0IHR5cGUgQXBpVmVyc2lvbiA9ICdsaXRlJyB8ICdmdWxsJztcblxuZXhwb3J0IGludGVyZmFjZSBQcmVidWlsZFRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIHJlcUlkPzogSVJlcXVlc3RUcmFjZXI7XG4gIHJlY2lwaWVudHM/OiB7XG4gICAgYWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nIHwgbnVtYmVyO1xuICAgIHRva2VuTmFtZT86IHN0cmluZztcbiAgICB0b2tlbkRhdGE/OiBUb2tlblRyYW5zZmVyUmVjaXBpZW50UGFyYW1zO1xuICB9W107XG4gIG51bUJsb2Nrcz86IG51bWJlcjtcbiAgbWF4RmVlUmF0ZT86IG51bWJlcjtcbiAgbWluQ29uZmlybXM/OiBudW1iZXI7XG4gIGVuZm9yY2VNaW5Db25maXJtc0ZvckNoYW5nZT86IGJvb2xlYW47XG4gIHRhcmdldFdhbGxldFVuc3BlbnRzPzogbnVtYmVyO1xuICBtaW5WYWx1ZT86IG51bWJlciB8IHN0cmluZztcbiAgbWF4VmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIHNlcXVlbmNlSWQ/OiBzdHJpbmc7XG4gIGxhc3RMZWRnZXJTZXF1ZW5jZT86IG51bWJlcjtcbiAgbGVkZ2VyU2VxdWVuY2VEZWx0YT86IG51bWJlcjtcbiAgZ2FzUHJpY2U/OiBudW1iZXI7XG4gIG5vU3BsaXRDaGFuZ2U/OiBib29sZWFuO1xuICB1bnNwZW50cz86IGFueVtdO1xuICAvKipcbiAgICogVGhlIHJlY2VpdmUgYWRkcmVzcyBmcm9tIHdoaWNoIGZ1bmRzIHdpbGwgYmUgd2l0aGRyYXduLlxuICAgKiBUaGlzIGZlYXR1cmUgaXMgc3VwcG9ydGVkIG9ubHkgZm9yIHNwZWNpZmljIGNvaW5zLCBsaWtlIEFEQS5cbiAgICovXG4gIHNlbmRlckFkZHJlc3M/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB3YWxsZXQgSUQgb2YgdGhlIHNlbmRlciB3YWxsZXQgd2hlbiBzZW5kZXIgd2FsbGV0IGlzIGRpZmZlcmVudCBmcm9tIGN1cnJlbnQgd2FsbGV0IGlkLlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCB7dW5kZWZpbmVkfVxuICAgKiBAZGVzY3JpcHRpb24gRm9yIEJUQyB1bnN0YWtpbmcsIHRoZSBzZW5kZXIgd2FsbGV0KGEgZGVzY3JpcHRvciB3YWxsZXQpIGlzIGRpZmZlcmVudCBmcm9tIG9yaWdpbmFsIHdhbGxldFxuICAgKiAqL1xuICBzZW5kZXJXYWxsZXRJZD86IHN0cmluZztcblxuICBjaGFuZ2VBZGRyZXNzPzogc3RyaW5nO1xuICBhbGxvd0V4dGVybmFsQ2hhbmdlQWRkcmVzcz86IGJvb2xlYW47XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGNsb3NlUmVtYWluZGVyVG8/OiBzdHJpbmc7XG4gIG5vblBhcnRpY2lwYXRpb24/OiBib29sZWFuO1xuICB2YWxpZEZyb21CbG9jaz86IG51bWJlcjtcbiAgdmFsaWRUb0Jsb2NrPzogbnVtYmVyO1xuICBpbnN0YW50PzogYm9vbGVhbjtcbiAgbWVtbz86IE1lbW87XG4gIGFkZHJlc3NUeXBlPzogc3RyaW5nO1xuICBjaGFuZ2VBZGRyZXNzVHlwZT86IHN0cmluZztcbiAgaG9wPzogYm9vbGVhbjtcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgcmVzZXJ2YXRpb24/OiB7XG4gICAgZXhwaXJlVGltZT86IHN0cmluZztcbiAgICBwZW5kaW5nQXBwcm92YWxJZD86IHN0cmluZztcbiAgfTtcbiAgb2ZmbGluZVZlcmlmaWNhdGlvbj86IGJvb2xlYW47XG4gIHdhbGxldENvbnRyYWN0QWRkcmVzcz86IHN0cmluZztcbiAgaWRmU2lnbmVkVGltZXN0YW1wPzogc3RyaW5nO1xuICBpZGZVc2VySWQ/OiBzdHJpbmc7XG4gIGlkZlZlcnNpb24/OiBudW1iZXI7XG4gIGNvbW1lbnQ/OiBzdHJpbmc7XG4gIFtpbmRleDogc3RyaW5nXTogdW5rbm93bjtcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xuICBlbmFibGVUb2tlbnM/OiBUb2tlbkVuYWJsZW1lbnRbXTtcbiAgbm9uY2U/OiBzdHJpbmc7XG4gIHByZXZpZXc/OiBib29sZWFuO1xuICBlaXAxNTU5PzogRUlQMTU1OTtcbiAgZ2FzTGltaXQ/OiBudW1iZXI7XG4gIGxvd0ZlZVR4aWQ/OiBzdHJpbmc7XG4gIHJlY2VpdmVBZGRyZXNzPzogc3RyaW5nO1xuICBpc1Rzcz86IGJvb2xlYW47XG4gIGN1c3RvZGlhblRyYW5zYWN0aW9uSWQ/OiBzdHJpbmc7XG4gIGFwaVZlcnNpb24/OiBBcGlWZXJzaW9uO1xuICAvKipcbiAgICogSWYgc2V0IHRvIGZhbHNlLCBzd2VlcCBhbGwgZnVuZHMgaW5jbHVkaW5nIHRoZSByZXF1aXJlZCBtaW5pbXVtcyBmb3IgYWRkcmVzcyhlcykuIEUuZy4gUG9sa2Fkb3QgKERPVCkgcmVxdWlyZXMgMSBET1QgbWluaW11bS5cbiAgICovXG4gIGtlZXBBbGl2ZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGlzIGNvbW1lbnQgYXBwbGllcyB0byBVVFhPIGNvaW5zLiBJdCdzIGFza2luZyB3aGljaCB0cmFuc2FjdGlvbiBmb3JtYXQgdG8gdXNlOlxuICAgKiB0aGUgbGVnYWN5IGZvcm1hdCBkZWZpbmVkIGJ5IGJpdGNvaW5qcy1saWIsIG9yIHRoZSAncHNidCcgZm9ybWF0LCB3aGljaCBmb2xsb3dzIHRoZSBCSVAtMTc0LlxuICAgKi9cbiAgdHhGb3JtYXQ/OiAnbGVnYWN5JyB8ICdwc2J0Jztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmVidWlsZEFuZFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMgZXh0ZW5kcyBQcmVidWlsZFRyYW5zYWN0aW9uT3B0aW9ucywgV2FsbGV0U2lnblRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIHByZWJ1aWxkVHg/OiBzdHJpbmcgfCBQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0O1xuICB2ZXJpZmljYXRpb24/OiBWZXJpZmljYXRpb25PcHRpb25zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQgZXh0ZW5kcyBUcmFuc2FjdGlvblByZWJ1aWxkIHtcbiAgd2FsbGV0SWQ6IHN0cmluZztcbiAgLy8gQ29uc29saWRhdGUgSUQgaXMgdXNlZCBmb3IgY29uc29saWRhdGUgYWNjb3VudCB0cmFuc2FjdGlvbnMgYW5kIGluZGljYXRlcyBpZiB0aGlzIGlzXG4gIC8vIGEgY29uc29saWRhdGlvbiBhbmQgd2hhdCBjb25zb2xpZGF0ZSBncm91cCBpdCBzaG91bGQgYmUgcmVmZXJlbmNlZCBieS5cbiAgY29uc29saWRhdGVJZD86IHN0cmluZztcbiAgY29uc29saWRhdGlvbkRldGFpbHM/OiB7XG4gICAgc2VuZGVyQWRkcmVzc0luZGV4OiBudW1iZXI7XG4gIH07XG4gIGZlZUluZm8/OiB7XG4gICAgZmVlPzogbnVtYmVyO1xuICAgIGZlZVN0cmluZz86IHN0cmluZztcbiAgfTtcbiAgcGVuZGluZ0FwcHJvdmFsSWQ/OiBzdHJpbmc7XG4gIHJlcUlkPzogSVJlcXVlc3RUcmFjZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tU2lnbmluZ0Z1bmN0aW9uIHtcbiAgKHBhcmFtczoge1xuICAgIGNvaW46IElCYXNlQ29pbjtcbiAgICB0eFByZWJ1aWxkOiBUcmFuc2FjdGlvblByZWJ1aWxkO1xuICAgIHB1YnM/OiBzdHJpbmdbXTtcbiAgICBkZXJpdmF0aW9uU2VlZD86IHN0cmluZztcbiAgICBzaWduaW5nU3RlcD86ICdzaWduZXJOb25jZScgfCAnc2lnbmVyU2lnbmF0dXJlJyB8ICdjb3NpZ25lck5vbmNlJztcbiAgfSk6IFByb21pc2U8U2lnbmVkVHJhbnNhY3Rpb24+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldFNpZ25CYXNlT3B0aW9ucyB7XG4gIHJlcUlkPzogSVJlcXVlc3RUcmFjZXI7XG4gIHBydj86IHN0cmluZztcbiAgcHVicz86IHN0cmluZ1tdO1xuICB0eFJlcXVlc3RJZD86IHN0cmluZztcbiAgY29zaWduZXJQdWI/OiBzdHJpbmc7XG4gIGlzTGFzdFNpZ25hdHVyZT86IGJvb2xlYW47XG4gIGN1c3RvbVNpZ25pbmdGdW5jdGlvbj86IEN1c3RvbVNpZ25pbmdGdW5jdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRTaWduVHJhbnNhY3Rpb25PcHRpb25zIGV4dGVuZHMgV2FsbGV0U2lnbkJhc2VPcHRpb25zIHtcbiAgdHhQcmVidWlsZD86IFRyYW5zYWN0aW9uUHJlYnVpbGQ7XG4gIGN1c3RvbUNvbW1pdG1lbnRHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21Db21taXRtZW50R2VuZXJhdGluZ0Z1bmN0aW9uO1xuICBjdXN0b21SU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21SU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb247XG4gIGN1c3RvbUdTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbj86IEN1c3RvbUdTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbjtcbiAgY3VzdG9tUGFpbGxpZXJNb2R1bHVzR2VuZXJhdGluZ0Z1bmN0aW9uPzogQ3VzdG9tUGFpbGxpZXJNb2R1bHVzR2V0dGVyRnVuY3Rpb247XG4gIGN1c3RvbUtTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbj86IEN1c3RvbUtTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbjtcbiAgY3VzdG9tTXVEZWx0YVNoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uPzogQ3VzdG9tTXVEZWx0YVNoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uO1xuICBjdXN0b21TU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21TU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb247XG4gIGN1c3RvbU1QQ3YyU2lnbmluZ1JvdW5kMUdlbmVyYXRpb25GdW5jdGlvbj86IEN1c3RvbU1QQ3YyU2lnbmluZ1JvdW5kMUdlbmVyYXRpbmdGdW5jdGlvbjtcbiAgY3VzdG9tTVBDdjJTaWduaW5nUm91bmQyR2VuZXJhdGlvbkZ1bmN0aW9uPzogQ3VzdG9tTVBDdjJTaWduaW5nUm91bmQyR2VuZXJhdGluZ0Z1bmN0aW9uO1xuICBjdXN0b21NUEN2MlNpZ25pbmdSb3VuZDNHZW5lcmF0aW9uRnVuY3Rpb24/OiBDdXN0b21NUEN2MlNpZ25pbmdSb3VuZDNHZW5lcmF0aW5nRnVuY3Rpb247XG4gIGFwaVZlcnNpb24/OiBBcGlWZXJzaW9uO1xuICBtdWx0aXNpZ1R5cGVWZXJzaW9uPzogJ01QQ3YyJztcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgW2luZGV4OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG5pbnRlcmZhY2UgV2FsbGV0U2lnbk1lc3NhZ2VCYXNlIGV4dGVuZHMgV2FsbGV0U2lnbkJhc2VPcHRpb25zIHtcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgY3VzdG9kaWFuTWVzc2FnZUlkPzogc3RyaW5nO1xuICBjdXN0b21QYWlsbGllck1vZHVsdXNHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21QYWlsbGllck1vZHVsdXNHZXR0ZXJGdW5jdGlvbjtcbiAgY3VzdG9tS1NoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uPzogQ3VzdG9tS1NoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uO1xuICBjdXN0b21NdURlbHRhU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21NdURlbHRhU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb247XG4gIGN1c3RvbVNTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbj86IEN1c3RvbVNTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRTaWduTWVzc2FnZU9wdGlvbnMgZXh0ZW5kcyBXYWxsZXRTaWduTWVzc2FnZUJhc2Uge1xuICBtZXNzYWdlPzogTWVzc2FnZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRTaWduVHlwZWREYXRhT3B0aW9ucyBleHRlbmRzIFdhbGxldFNpZ25NZXNzYWdlQmFzZSB7XG4gIHR5cGVkRGF0YTogVHlwZWREYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25BbmRTZW5kVHhSZXF1ZXN0T3B0aW9ucyB7XG4gIHR4UmVxdWVzdElkOiBzdHJpbmc7XG4gIHdhbGxldFBhc3NwaHJhc2U6IHN0cmluZztcbiAgaXNUeFJlcXVlc3RGdWxsOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFVzZXJQcnZPcHRpb25zIHtcbiAga2V5Y2hhaW4/OiBLZXljaGFpbjtcbiAga2V5PzogS2V5Y2hhaW47XG4gIHBydj86IHN0cmluZztcbiAgY29sZERlcml2YXRpb25TZWVkPzogc3RyaW5nO1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldENvaW5TcGVjaWZpYyB7XG4gIHRva2VuRmx1c2hUaHJlc2hvbGRzPzogYW55O1xuICBhZGRyZXNzVmVyc2lvbj86IG51bWJlcjtcbiAgYmFzZUFkZHJlc3M/OiBzdHJpbmc7XG4gIHJvb3RBZGRyZXNzPzogc3RyaW5nO1xuICBjdXN0b21DaGFuZ2VXYWxsZXRJZDogc3RyaW5nO1xuICB3YWxsZXRWZXJzaW9uPzogbnVtYmVyO1xuICBoYXNoQWxnb3JpdGhtPzogc3RyaW5nO1xuICBwZW5kaW5nRWNkc2FUc3NJbml0aWFsaXphdGlvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBMaWdodG5pbmcgY29pbiBzcGVjaWZpYyBkYXRhIHN0YXJ0c1xuICAgKi9cbiAga2V5cz86IHN0cmluZ1tdO1xuICBlbmNyeXB0ZWRTaWduZXJBZG1pbk1hY2Fyb29uPzogc3RyaW5nIHwgbnVsbDtcbiAgZW5jcnlwdGVkU2lnbmVyTWFjYXJvb24/OiBzdHJpbmcgfCBudWxsO1xuICB3YXRjaE9ubHlFeHRlcm5hbElwPzogc3RyaW5nIHwgbnVsbDtcbiAgc2lnbmVySG9zdD86IHN0cmluZyB8IG51bGw7XG4gIGVuY3J5cHRlZFNpZ25lclRsc0tleT86IHN0cmluZyB8IG51bGw7XG4gIHNpZ25lclRsc0NlcnQ/OiBzdHJpbmcgfCBudWxsO1xuICB3YXRjaE9ubHlBY2NvdW50cz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgbnVsbDtcbiAgc2lnbmVkVXNlckF1dGhLZXk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBMaWdodG5pbmcgY29pbiBzcGVjaWZpYyBkYXRhIGVuZHNcbiAgICovXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5hdGlvbk9wdGlvbnMge1xuICBwcmV2SWQ/OiBzdHJpbmc7XG4gIGxpbWl0PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFRyYW5zYWN0aW9uT3B0aW9ucyBleHRlbmRzIFBhZ2luYXRpb25PcHRpb25zIHtcbiAgdHhIYXNoPzogc3RyaW5nO1xuICBpbmNsdWRlUmJmPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2ZlcnNPcHRpb25zIGV4dGVuZHMgUGFnaW5hdGlvbk9wdGlvbnMge1xuICB0eEhhc2g/OiBzdHJpbmc7XG4gIGFsbFRva2Vucz86IGJvb2xlYW47XG4gIHNlYXJjaExhYmVsPzogc3RyaW5nO1xuICBhZGRyZXNzPzogc3RyaW5nW10gfCBzdHJpbmc7XG4gIGRhdGVHdGU/OiBzdHJpbmc7XG4gIGRhdGVMdD86IHN0cmluZztcbiAgdmFsdWVHdGU/OiBudW1iZXI7XG4gIHZhbHVlTHQ/OiBudW1iZXI7XG4gIGluY2x1ZGVIZXg/OiBib29sZWFuO1xuICBzdGF0ZT86IHN0cmluZ1tdIHwgc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFRyYW5zZmVyT3B0aW9ucyB7XG4gIGlkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZmVyQnlTZXF1ZW5jZUlkT3B0aW9ucyB7XG4gIHNlcXVlbmNlSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5zcGVudHNPcHRpb25zIGV4dGVuZHMgUGFnaW5hdGlvbk9wdGlvbnMge1xuICBtaW5WYWx1ZT86IG51bWJlciB8IHN0cmluZztcbiAgbWF4VmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIG1pbkhlaWdodD86IG51bWJlcjtcbiAgbWluQ29uZmlybXM/OiBudW1iZXI7XG4gIHRhcmdldD86IG51bWJlciB8IHN0cmluZztcbiAgc2Vnd2l0PzogYm9vbGVhbjtcbiAgY2hhaW5zPzogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWFuYWdlVW5zcGVudFJlc2VydmF0aW9uT3B0aW9ucyB7XG4gIGNyZWF0ZT86IHtcbiAgICB1bnNwZW50SWRzOiBzdHJpbmdbXTtcbiAgICBleHBpcmVUaW1lOiBzdHJpbmc7XG4gIH07XG4gIG1vZGlmeT86IHtcbiAgICB1bnNwZW50SWRzOiBzdHJpbmdbXTtcbiAgICBjaGFuZ2VzOiB7XG4gICAgICBleHBpcmVUaW1lOiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbiAgZGVsZXRlPzoge1xuICAgIGlkOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uc29saWRhdGVVbnNwZW50c09wdGlvbnMgZXh0ZW5kcyBXYWxsZXRTaWduVHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgeHBydj86IHN0cmluZztcbiAgbWluVmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIG1heFZhbHVlPzogbnVtYmVyIHwgc3RyaW5nO1xuICBtaW5IZWlnaHQ/OiBudW1iZXI7XG4gIG51bVVuc3BlbnRzVG9NYWtlPzogbnVtYmVyO1xuICBmZWVUeENvbmZpcm1UYXJnZXQ/OiBudW1iZXI7XG4gIGxpbWl0PzogbnVtYmVyO1xuICBtaW5Db25maXJtcz86IG51bWJlcjtcbiAgZW5mb3JjZU1pbkNvbmZpcm1zRm9yQ2hhbmdlPzogYm9vbGVhbjtcbiAgZmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUGVyY2VudGFnZT86IG51bWJlcjtcbiAgY29tbWVudD86IHN0cmluZztcbiAgb3RwPzogc3RyaW5nO1xuICB0YXJnZXRBZGRyZXNzPzogc3RyaW5nO1xuICBidWxrPzogYm9vbGVhbjtcbiAgW2luZGV4OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZhbm91dFVuc3BlbnRzT3B0aW9ucyBleHRlbmRzIFdhbGxldFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMge1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xuICB4cHJ2Pzogc3RyaW5nO1xuICBtaW5WYWx1ZT86IG51bWJlciB8IHN0cmluZztcbiAgbWF4VmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIG1pbkhlaWdodD86IG51bWJlcjtcbiAgbWF4TnVtSW5wdXRzVG9Vc2U/OiBudW1iZXI7XG4gIHVuc3BlbnRzPzogc3RyaW5nW107XG4gIG51bVVuc3BlbnRzVG9NYWtlPzogbnVtYmVyO1xuICBtaW5Db25maXJtcz86IG51bWJlcjtcbiAgZW5mb3JjZU1pbkNvbmZpcm1zRm9yQ2hhbmdlPzogYm9vbGVhbjtcbiAgZmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUGVyY2VudGFnZT86IG51bWJlcjtcbiAgZmVlVHhDb25maXJtVGFyZ2V0PzogbnVtYmVyO1xuICBjb21tZW50Pzogc3RyaW5nO1xuICBvdHA/OiBzdHJpbmc7XG4gIHRhcmdldEFkZHJlc3M/OiBzdHJpbmc7XG4gIFtpbmRleDogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTd2VlcE9wdGlvbnMge1xuICBhZGRyZXNzPzogc3RyaW5nO1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xuICB4cHJ2Pzogc3RyaW5nO1xuICBvdHA/OiBzdHJpbmc7XG4gIGZlZVJhdGU/OiBudW1iZXI7XG4gIG1heEZlZVJhdGU/OiBudW1iZXI7XG4gIGZlZVR4Q29uZmlybVRhcmdldD86IG51bWJlcjtcbiAgYWxsb3dQYXJ0aWFsU3dlZXA/OiBib29sZWFuO1xuICBbaW5kZXg6IHN0cmluZ106IHVua25vd247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJlZXplT3B0aW9ucyB7XG4gIGR1cmF0aW9uPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZmVyQ29tbWVudE9wdGlvbnMge1xuICBpZD86IHN0cmluZztcbiAgY29tbWVudD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRyZXNzZXNPcHRpb25zIGV4dGVuZHMgUGFnaW5hdGlvbk9wdGlvbnMge1xuICBtaW5lPzogYm9vbGVhbjtcbiAgc29ydD86IG51bWJlcjtcbiAgbGFiZWxDb250YWlucz86IHN0cmluZztcbiAgc2Vnd2l0PzogYm9vbGVhbjtcbiAgY2hhaW5zPzogbnVtYmVyW107XG4gIGluY2x1ZGVCYWxhbmNlcz86IGJvb2xlYW47XG4gIGluY2x1ZGVUb2tlbnM/OiBib29sZWFuO1xuICBpbmNsdWRlVG90YWxBZGRyZXNzQ291bnQ/OiBib29sZWFuO1xuICByZXR1cm5CYWxhbmNlc0ZvclRva2VuPzogc3RyaW5nO1xuICBwZW5kaW5nRGVwbG95bWVudD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0QWRkcmVzc09wdGlvbnMge1xuICBhZGRyZXNzPzogc3RyaW5nO1xuICBpZD86IHN0cmluZztcbiAgcmVxSWQ/OiBJUmVxdWVzdFRyYWNlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXBsb3lGb3J3YXJkZXJzT3B0aW9ucyB7XG4gIGFkZHJlc3M/OiBzdHJpbmc7XG4gIGlkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZ1bmRGb3J3YXJkZXJzT3B0aW9ucyB7XG4gIGZvcndhcmRlckFkZHJlc3M6IHN0cmluZztcbiAgYW1vdW50Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZsdXNoRm9yd2FyZGVyVG9rZW5PcHRpb25zIHtcbiAgYWRkcmVzcz86IHN0cmluZztcbiAgaWQ/OiBzdHJpbmc7XG4gIHRva2VuTmFtZTogc3RyaW5nO1xuICBnYXNQcmljZT86IG51bWJlcjtcbiAgZWlwMTU1OT86IHtcbiAgICBtYXhQcmlvcml0eUZlZVBlckdhczogbnVtYmVyO1xuICAgIG1heEZlZVBlckdhczogbnVtYmVyO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcndhcmRlckJhbGFuY2Uge1xuICBhZGRyZXNzOiBzdHJpbmc7XG4gIGJhbGFuY2U6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGb3J3YXJkZXJCYWxhbmNlT3B0aW9ucyB7XG4gIG1pbmltdW1CYWxhbmNlPzogbnVtYmVyO1xuICBtYXhpbXVtQmFsYW5jZT86IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgQ3JlYXRlQWRkcmVzc0Zvcm1hdCA9ICdiYXNlNTgnIHwgJ2Nhc2hhZGRyJztcblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVBZGRyZXNzT3B0aW9ucyB7XG4gIGNoYWluPzogbnVtYmVyO1xuICBnYXNQcmljZT86IG51bWJlciB8IHN0cmluZztcbiAgY291bnQ/OiBudW1iZXI7XG4gIGxhYmVsPzogc3RyaW5nO1xuICBsb3dQcmlvcml0eT86IGJvb2xlYW47XG4gIGZvcndhcmRlclZlcnNpb24/OiBudW1iZXI7XG4gIGZvcm1hdD86IENyZWF0ZUFkZHJlc3NGb3JtYXQ7XG4gIGJhc2VBZGRyZXNzPzogc3RyaW5nO1xuICBhbGxvd1NraXBWZXJpZnlBZGRyZXNzPzogYm9vbGVhbjtcbiAgZGVyaXZlZEFkZHJlc3M/OiBzdHJpbmc7XG4gIGluZGV4PzogbnVtYmVyO1xuICBvblRva2VuPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUFkZHJlc3NPcHRpb25zIHtcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGFkZHJlc3M/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXBkYXRlQnVpbGREZWZhdWx0T3B0aW9ucyB7XG4gIG1pbkZlZVJhdGU/OiBudW1iZXI7XG4gIGNoYW5nZUFkZHJlc3NUeXBlPzogc3RyaW5nO1xuICB0eEZvcm1hdD86ICdsZWdhY3knIHwgJ3BzYnQnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpbXVsYXRlV2ViaG9va09wdGlvbnMge1xuICB3ZWJob29rSWQ/OiBzdHJpbmc7XG4gIHRyYW5zZmVySWQ/OiBzdHJpbmc7XG4gIHBlbmRpbmdBcHByb3ZhbElkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGlmeVdlYmhvb2tPcHRpb25zIHtcbiAgdXJsPzogc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFBydk9wdGlvbnMge1xuICBwcnY/OiBzdHJpbmc7XG4gIHdhbGxldFBhc3NwaHJhc2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2hhcmVkS2V5Q2hhaW4ge1xuICBwdWI/OiBzdHJpbmc7XG4gIGVuY3J5cHRlZFBydj86IHN0cmluZztcbiAgZnJvbVB1YktleT86IHN0cmluZztcbiAgdG9QdWJLZXk/OiBzdHJpbmc7XG4gIHBhdGg/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlU2hhcmVPcHRpb25zIHtcbiAgdXNlcj86IHN0cmluZztcbiAgcGVybWlzc2lvbnM/OiBzdHJpbmc7XG4gIGtleWNoYWluPzoge1xuICAgIC8vIEluIHRoZSBjb250ZXh0IG9mIHdhbGxldCBzaGFyaW5nLCBwdWIgY2FuIHJlcHJlc2VudCBvbmUgb2Y6XG4gICAgLy8gcHViIChpbmRlcGVuZGFudCBtdWx0aSBzaWcpLCBjb21tb25QdWIgKGJscyksIG9yIGNvbW1vblB1YiBwb3J0aW9uIG9mIGNvbW1vbktleWNoYWluIChUU1MpXG4gICAgcHViPzogc3RyaW5nO1xuICAgIGVuY3J5cHRlZFBydj86IHN0cmluZztcbiAgICBmcm9tUHViS2V5Pzogc3RyaW5nO1xuICAgIHRvUHViS2V5Pzogc3RyaW5nO1xuICAgIHBhdGg/OiBzdHJpbmc7XG4gIH07XG4gIHJlc2hhcmU/OiBib29sZWFuO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICBkaXNhYmxlRW1haWw/OiBib29sZWFuO1xuICAvKipcbiAgICogSWYgdHJ1ZSwgYWxsb3dzIHNoYXJpbmcgd2l0aG91dCBhIGtleWNoYWluLlxuICAgKiBBIGZhbHN5IHZhbHVlIGlzIGV4cGVjdGVkIHRvIHRocm93IGFuIEFQSSBlcnJvciBpZiBhbiBlbXB0eSBvciB1bmRlZmluZWQgYGtleWNoYWluYCBpcyBwcm92aWRlZC5cbiAgICovXG4gIHNraXBLZXljaGFpbj86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2hhcmVXYWxsZXRPcHRpb25zIHtcbiAgZW1haWw/OiBzdHJpbmc7XG4gIHBlcm1pc3Npb25zPzogc3RyaW5nO1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICByZXNoYXJlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIElmIHRydWUsIHNraXBzIHNoYXJpbmcgdGhlIHdhbGxldCBrZXljaGFpbiB3aXRoIHRoZSByZWNpcGllbnQuXG4gICAqL1xuICBza2lwS2V5Y2hhaW4/OiBib29sZWFuO1xuICBkaXNhYmxlRW1haWw/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1bGtDcmVhdGVTaGFyZU9wdGlvbiB7XG4gIHVzZXI6IHN0cmluZztcbiAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICBrZXljaGFpbjogQnVsa1dhbGxldFNoYXJlS2V5Y2hhaW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa1dhbGxldFNoYXJlT3B0aW9ucyB7XG4gIHdhbGxldFBhc3NwaHJhc2U6IHN0cmluZztcbiAga2V5U2hhcmVPcHRpb25zOiBBcnJheTx7XG4gICAgdXNlcklkOiBzdHJpbmc7XG4gICAgcHViS2V5OiBzdHJpbmc7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIHBlcm1pc3Npb25zOiBzdHJpbmdbXTtcbiAgfT47XG59XG5cbmV4cG9ydCB0eXBlIFdhbGxldFNoYXJlU3RhdGUgPSAnYWN0aXZlJyB8ICdhY2NlcHRlZCcgfCAnY2FuY2VsZWQnIHwgJ3JlamVjdGVkJyB8ICdwZW5kaW5nYXBwcm92YWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJ1bGtXYWxsZXRTaGFyZUtleWNoYWluIHtcbiAgcHViOiBzdHJpbmc7XG4gIGVuY3J5cHRlZFBydjogc3RyaW5nO1xuICBmcm9tUHViS2V5OiBzdHJpbmc7XG4gIHRvUHViS2V5OiBzdHJpbmc7XG4gIHBhdGg6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRTaGFyZSB7XG4gIGlkOiBzdHJpbmc7XG4gIGNvaW46IHN0cmluZztcbiAgd2FsbGV0OiBzdHJpbmc7XG4gIHdhbGxldExhYmVsPzogc3RyaW5nO1xuICBmcm9tVXNlcjogc3RyaW5nO1xuICB0b1VzZXI6IHN0cmluZztcbiAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICBzdGF0ZT86IFdhbGxldFNoYXJlU3RhdGU7XG4gIGVudGVycHJpc2U/OiBzdHJpbmc7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHBlbmRpbmdBcHByb3ZhbElkPzogc3RyaW5nO1xuICBrZXljaGFpbk92ZXJyaWRlUmVxdWlyZWQ/OiBib29sZWFuO1xuICBpc1VNU0luaXRpYXRlZD86IGJvb2xlYW47XG4gIGtleWNoYWluPzogQnVsa1dhbGxldFNoYXJlS2V5Y2hhaW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQnVsa1dhbGxldFNoYXJlTGlzdFJlc3BvbnNlIHtcbiAgc2hhcmVzOiBXYWxsZXRTaGFyZVtdO1xufVxuZXhwb3J0IGludGVyZmFjZSBSZW1vdmVVc2VyT3B0aW9ucyB7XG4gIHVzZXJJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY2NlbGVyYXRlVHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgY3BmcFR4SWRzPzogc3RyaW5nW107XG4gIHJiZlR4SWRzPzogc3RyaW5nW107XG4gIGNwZnBGZWVSYXRlPzogbnVtYmVyO1xuICBub0NwZnBGZWVSYXRlPzogYm9vbGVhbjtcbiAgbWF4RmVlPzogbnVtYmVyO1xuICBub01heEZlZT86IGJvb2xlYW47XG4gIGZlZU11bHRpcGxpZXI/OiBudW1iZXI7XG4gIHJlY2lwaWVudHM/OiB7XG4gICAgYWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nO1xuICB9W107XG4gIFtpbmRleDogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdWJtaXRUcmFuc2FjdGlvbk9wdGlvbnMge1xuICBvdHA/OiBzdHJpbmc7XG4gIHR4SGV4Pzogc3RyaW5nO1xuICBoYWxmU2lnbmVkPzoge1xuICAgIHR4SGV4Pzogc3RyaW5nOyAvLyBUcmFuc2FjdGlvbiBpbiBhbnkgZm9ybWF0IHJlcXVpcmVkIGJ5IGVhY2ggY29pbiwgaS5lLiBpbiBUcm9uIGl0IGlzIGEgc3RyaW5naWZ5ZWQgSlNPTlxuICAgIHBheWxvYWQ/OiBzdHJpbmc7XG4gICAgdHhCYXNlNjQ/OiBzdHJpbmc7XG4gICAgc2lnbmVkQ2hpbGRQc2J0Pzogc3RyaW5nOyAvLyBQU0JUIHRoYXQgaGFzIHRoZSBvdXRwdXQgb2YgdHhIZXggYXMgaW5wdXQgd2l0aCBhIHNpZ25hdHVyZVxuICB9O1xuICBjb21tZW50Pzogc3RyaW5nO1xuICB0eFJlcXVlc3RJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZW5kT3B0aW9ucyB7XG4gIGFkZHJlc3M/OiBzdHJpbmc7XG4gIGFtb3VudD86IG51bWJlciB8IHN0cmluZztcbiAgZGF0YT86IHN0cmluZztcbiAgZmVlTGltaXQ/OiBzdHJpbmc7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHdhbGxldFBhc3NwaHJhc2U/OiBzdHJpbmc7XG4gIHBydj86IHN0cmluZztcbiAgbWluQ29uZmlybXM/OiBudW1iZXI7XG4gIGVuZm9yY2VNaW5Db25maXJtc0ZvckNoYW5nZT86IGJvb2xlYW47XG4gIGN1c3RvZGlhblRyYW5zYWN0aW9uSWQ/OiBzdHJpbmc7XG4gIFtpbmRleDogc3RyaW5nXTogdW5rbm93bjtcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbmRNYW55T3B0aW9ucyBleHRlbmRzIFByZWJ1aWxkQW5kU2lnblRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIHJlcUlkPzogSVJlcXVlc3RUcmFjZXI7XG4gIHJlY2lwaWVudHM/OiB7XG4gICAgYWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nIHwgbnVtYmVyO1xuICAgIGZlZUxpbWl0Pzogc3RyaW5nO1xuICAgIGRhdGE/OiBzdHJpbmc7XG4gICAgdG9rZW5OYW1lPzogc3RyaW5nO1xuICB9W107XG4gIG51bUJsb2Nrcz86IG51bWJlcjtcbiAgZmVlUmF0ZT86IG51bWJlcjtcbiAgZmVlTXVsdGlwbGllcj86IG51bWJlcjtcbiAgbWF4RmVlUmF0ZT86IG51bWJlcjtcbiAgbWluQ29uZmlybXM/OiBudW1iZXI7XG4gIGVuZm9yY2VNaW5Db25maXJtc0ZvckNoYW5nZT86IGJvb2xlYW47XG4gIHRhcmdldFdhbGxldFVuc3BlbnRzPzogbnVtYmVyO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICBtaW5WYWx1ZT86IG51bWJlciB8IHN0cmluZztcbiAgbWF4VmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIHNlcXVlbmNlSWQ/OiBzdHJpbmc7XG4gIGxhc3RMZWRnZXJTZXF1ZW5jZT86IG51bWJlcjtcbiAgbGVkZ2VyU2VxdWVuY2VEZWx0YT86IG51bWJlcjtcbiAgZ2FzUHJpY2U/OiBudW1iZXI7XG4gIG5vU3BsaXRDaGFuZ2U/OiBib29sZWFuO1xuICB1bnNwZW50cz86IHN0cmluZ1tdO1xuICBjb21tZW50Pzogc3RyaW5nO1xuICBvdHA/OiBzdHJpbmc7XG4gIGNoYW5nZUFkZHJlc3M/OiBzdHJpbmc7XG4gIGFsbG93RXh0ZXJuYWxDaGFuZ2VBZGRyZXNzPzogYm9vbGVhbjtcbiAgaW5zdGFudD86IGJvb2xlYW47XG4gIG1lbW8/OiBNZW1vO1xuICB0cmFuc2ZlcklkPzogbnVtYmVyO1xuICBbaW5kZXg6IHN0cmluZ106IHVua25vd247XG4gIGVpcDE1NTk/OiBFSVAxNTU5O1xuICBnYXNMaW1pdD86IG51bWJlcjtcbiAgY3VzdG9kaWFuVHJhbnNhY3Rpb25JZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGZXRjaENyb3NzQ2hhaW5VVFhPc09wdGlvbnMge1xuICBzb3VyY2VDaGFpbj86ICdQJyB8ICdDJztcbn1cblxuZXhwb3J0IHR5cGUgVW5zcGVudCA9IHtcbiAgb3V0cHV0SUQ6IG51bWJlcjtcbiAgYW1vdW50OiBzdHJpbmc7IC8vIEJpZ051bWJlciBlbmNvZGVkIGluIGNiNThcbiAgdHhpZDogc3RyaW5nOyAvLyBUcmFuc2FjdGlvbiBJRCBlbmNvZGVkIGluIGNiNThcbiAgdGhyZXNob2xkOiBudW1iZXI7IC8vIFRocmVzaG9sZCBmb3IgbnVtYmVyIG9mIGFkZHJlc3Nlc1xuICBhZGRyZXNzZXM6IHN0cmluZ1tdOyAvLyBBZGRyZXNzZXMgdXNlZCBmb3IgdW5sb2NraW5nIHV0eG9cbiAgb3V0cHV0aWR4OiBzdHJpbmc7IC8vIE91dHB1dCBpbmRleCBlbmNvZGVkIGluIGNiNThcbiAgbG9ja3RpbWU6IHN0cmluZzsgLy8gVGltZSB3aGVuIHVubG9ja2VkLiBCaWdOdW1iZXIgZW5jb2RlZCBpbiBjYjU4XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIENyb3NzQ2hhaW5VVFhPIHtcbiAgdW5zcGVudDogVW5zcGVudDtcbiAgZnJvbVdhbGxldDogc3RyaW5nO1xuICB0b1dhbGxldDogc3RyaW5nO1xuICB0b0FkZHJlc3M6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgV2FsbGV0VHlwZSA9ICdiYWNraW5nJyB8ICdjb2xkJyB8ICdjdXN0b2RpYWwnIHwgJ2N1c3RvZGlhbFBhaXJlZCcgfCAnaG90JyB8ICd0cmFkaW5nJztcbmV4cG9ydCB0eXBlIFN1YldhbGxldFR5cGUgPSAnZGlzdHJpYnV0ZWRDdXN0b2R5JyB8ICdsaWdodG5pbmdDdXN0b2R5JyB8ICdsaWdodG5pbmdTZWxmQ3VzdG9keSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgV2FsbGV0RGF0YSB7XG4gIGlkOiBzdHJpbmc7XG4gIGFwcHJvdmFsc1JlcXVpcmVkOiBudW1iZXI7XG4gIGJhbGFuY2U6IG51bWJlcjtcbiAgY29uZmlybWVkQmFsYW5jZTogbnVtYmVyO1xuICBzcGVuZGFibGVCYWxhbmNlOiBudW1iZXI7XG4gIGJhbGFuY2VTdHJpbmc6IHN0cmluZztcbiAgY29uZmlybWVkQmFsYW5jZVN0cmluZzogc3RyaW5nO1xuICBzcGVuZGFibGVCYWxhbmNlU3RyaW5nOiBzdHJpbmc7XG4gIGNvaW46IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZztcbiAga2V5czogc3RyaW5nW107XG4gIHJlY2VpdmVBZGRyZXNzPzoge1xuICAgIGFkZHJlc3M6IHN0cmluZztcbiAgfTtcbiAgd2FsbGV0RmxhZ3M/OiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gIH1bXTtcbiAgbWlncmF0ZWRGcm9tPzogc3RyaW5nO1xuICBjb2luU3BlY2lmaWM6IFdhbGxldENvaW5TcGVjaWZpYztcbiAgcGVuZGluZ0FwcHJvdmFsczogUGVuZGluZ0FwcHJvdmFsRGF0YVtdO1xuICBlbnRlcnByaXNlOiBzdHJpbmc7XG4gIGN1c3RvbUNoYW5nZUtleVNpZ25hdHVyZXM/OiB7XG4gICAgdXNlcj86IHN0cmluZztcbiAgICBiYWNrdXA/OiBzdHJpbmc7XG4gICAgYml0Z28/OiBzdHJpbmc7XG4gIH07XG4gIG11bHRpc2lnVHlwZTogJ29uY2hhaW4nIHwgJ3Rzcyc7XG4gIG11bHRpc2lnVHlwZVZlcnNpb24/OiAnTVBDdjInO1xuICB0eXBlPzogV2FsbGV0VHlwZTtcbiAgc3ViVHlwZT86IFN1YldhbGxldFR5cGU7XG4gIHRva2Vucz86IFJlY29yZDxzdHJpbmcsIGFueT5bXTtcbiAgbmZ0cz86IHsgW2NvbnRyYWN0QWRkcmVzc09yVG9rZW46IHN0cmluZ106IE5mdEJhbGFuY2UgfTtcbiAgdW5zdXBwb3J0ZWROZnRzPzogeyBbY29udHJhY3RBZGRyZXNzOiBzdHJpbmddOiBOZnRCYWxhbmNlIH07XG4gIHVzZXJzPzogV2FsbGV0VXNlcltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlY292ZXJUb2tlbk9wdGlvbnMge1xuICB0b2tlbkNvbnRyYWN0QWRkcmVzcz86IHN0cmluZztcbiAgcmVjaXBpZW50Pzogc3RyaW5nO1xuICBicm9hZGNhc3Q/OiBib29sZWFuO1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xuICBwcnY/OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBFSVAxNTU5IHtcbiAgbWF4UHJpb3JpdHlGZWVQZXJHYXM6IHN0cmluZztcbiAgbWF4RmVlUGVyR2FzOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2hhbmdlRmVlT3B0aW9ucyB7XG4gIHR4aWQ/OiBzdHJpbmc7XG4gIGZlZT86IHN0cmluZztcbiAgZWlwMTU1OT86IEVJUDE1NTk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlUG9saWN5UnVsZU9wdGlvbnMge1xuICBpZD86IHN0cmluZztcbiAgdHlwZT86IHN0cmluZztcbiAgbWVzc2FnZT86IHN0cmluZztcbiAgY29uZGl0aW9uPzogdW5rbm93bjtcbiAgYWN0aW9uPzogdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZW1vdmVQb2xpY3lSdWxlT3B0aW9ucyB7XG4gIGlkPzogc3RyaW5nO1xuICBtZXNzYWdlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERvd25sb2FkS2V5Y2FyZE9wdGlvbnMge1xuICBqc1BERj86IGFueTtcbiAgUVJDb2RlPzogYW55O1xuICB1c2VyS2V5Y2hhaW4/OiBLZXljaGFpbjtcbiAgYmFja3VwS2V5Y2hhaW4/OiBLZXljaGFpbjtcbiAgYml0Z29LZXljaGFpbj86IEtleWNoYWluO1xuICBwYXNzcGhyYXNlPzogc3RyaW5nO1xuICBwYXNzY29kZUVuY3J5cHRpb25Db2RlPzogc3RyaW5nO1xuICBhY3RpdmF0aW9uQ29kZT86IHN0cmluZztcbiAgd2FsbGV0S2V5SUQ/OiBzdHJpbmc7XG4gIGJhY2t1cEtleUlEPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYWxsZW5nZVZlcmlmaWVycyB7XG4gIHZlcmlmaWVyczoge1xuICAgIGFkbWluU2lnbmF0dXJlOiBzdHJpbmc7XG4gIH07XG59XG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldEVjZHNhQ2hhbGxlbmdlcyB7XG4gIGVudGVycHJpc2VDaGFsbGVuZ2U6IFNlcmlhbGl6ZWROdGlsZGUgJiBDaGFsbGVuZ2VWZXJpZmllcnM7XG4gIGJpdGdvQ2hhbGxlbmdlOiBTZXJpYWxpemVkTnRpbGRlICYgQ2hhbGxlbmdlVmVyaWZpZXJzO1xuICBjcmVhdGVkQnk6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgU2VuZE5GVE9wdGlvbnMgPSBPbWl0PFxuICBTZW5kTWFueU9wdGlvbnMsXG4gICdyZWNpcGllbnRzJyB8ICdlbmFibGVUb2tlbnMnIHwgJ3Rva2VuTmFtZScgfCAndHhGb3JtYXQnIHwgJ3JlY2VpdmVBZGRyZXNzJ1xuPjtcblxuZXhwb3J0IHR5cGUgU2VuZE5GVFJlc3VsdCA9IHtcbiAgcGVuZGluZ0FwcHJvdmFsOiBQZW5kaW5nQXBwcm92YWxEYXRhO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBJV2FsbGV0IHtcbiAgYml0Z286IEJpdEdvQmFzZTtcbiAgYmFzZUNvaW46IElCYXNlQ29pbjtcbiAgdXJsKGV4dHJhPzogc3RyaW5nKTogc3RyaW5nO1xuICBpZCgpOiBzdHJpbmc7XG4gIGFwcHJvdmFsc1JlcXVpcmVkKCk6IG51bWJlcjtcbiAgYmFsYW5jZSgpOiBudW1iZXI7XG4gIHByZWJ1aWxkV2hpdGVsaXN0ZWRQYXJhbXMoKTogc3RyaW5nW107XG4gIHByZWJ1aWxkQ29uc29saWRhdGVBY2NvdW50UGFyYW1zKCk6IHN0cmluZ1tdO1xuICBjb25maXJtZWRCYWxhbmNlKCk6IG51bWJlcjtcbiAgc3BlbmRhYmxlQmFsYW5jZSgpOiBudW1iZXI7XG4gIGJhbGFuY2VTdHJpbmcoKTogc3RyaW5nO1xuICBjb25maXJtZWRCYWxhbmNlU3RyaW5nKCk6IHN0cmluZztcbiAgc3BlbmRhYmxlQmFsYW5jZVN0cmluZygpOiBzdHJpbmc7XG4gIG5mdEJhbGFuY2VzKCk6IE5mdEJhbGFuY2VbXSB8IHVuZGVmaW5lZDtcbiAgdW5zdXBwb3J0ZWROZnRCYWxhbmNlcygpOiBOZnRCYWxhbmNlW10gfCB1bmRlZmluZWQ7XG4gIGNvaW4oKTogc3RyaW5nO1xuICB0eXBlKCk6IFdhbGxldFR5cGU7XG4gIHN1YlR5cGUoKTogU3ViV2FsbGV0VHlwZSB8IHVuZGVmaW5lZDtcbiAgbXVsdGlzaWdUeXBlKCk6ICdvbmNoYWluJyB8ICd0c3MnO1xuICBtdWx0aXNpZ1R5cGVWZXJzaW9uKCk6ICdNUEN2MicgfCB1bmRlZmluZWQ7XG4gIGxhYmVsKCk6IHN0cmluZztcbiAga2V5SWRzKCk6IHN0cmluZ1tdO1xuICByZWNlaXZlQWRkcmVzcygpOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIG1pZ3JhdGVkRnJvbSgpOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHRva2VuRmx1c2hUaHJlc2hvbGRzKCk6IGFueTtcbiAgY29pblNwZWNpZmljKCk6IFdhbGxldENvaW5TcGVjaWZpYyB8IHVuZGVmaW5lZDtcbiAgcGVuZGluZ0FwcHJvdmFscygpOiBJUGVuZGluZ0FwcHJvdmFsW107XG4gIHJlZnJlc2gocGFyYW1zPzogUmVjb3JkPHN0cmluZywgbmV2ZXI+KTogUHJvbWlzZTxJV2FsbGV0PjtcbiAgdHJhbnNhY3Rpb25zKHBhcmFtcz86IFBhZ2luYXRpb25PcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBnZXRUcmFuc2FjdGlvbihwYXJhbXM/OiBHZXRUcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHRyYW5zZmVycyhwYXJhbXM/OiBUcmFuc2ZlcnNPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBnZXRUcmFuc2ZlcihwYXJhbXM/OiBHZXRUcmFuc2Zlck9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHRyYW5zZmVyQnlTZXF1ZW5jZUlkKHBhcmFtcz86IFRyYW5zZmVyQnlTZXF1ZW5jZUlkT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgbWF4aW11bVNwZW5kYWJsZShwYXJhbXM/OiBNYXhpbXVtU3BlbmRhYmxlT3B0aW9ucyk6IFByb21pc2U8TWF4aW11bVNwZW5kYWJsZT47XG4gIHVuc3BlbnRzKHBhcmFtcz86IFVuc3BlbnRzT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgY29uc29saWRhdGVVbnNwZW50cyhwYXJhbXM/OiBDb25zb2xpZGF0ZVVuc3BlbnRzT3B0aW9ucyk6IFByb21pc2U8dW5rbm93bj47XG4gIGZhbm91dFVuc3BlbnRzKHBhcmFtcz86IEZhbm91dFVuc3BlbnRzT3B0aW9ucyk6IFByb21pc2U8dW5rbm93bj47XG4gIHVwZGF0ZVRva2VuRmx1c2hUaHJlc2hvbGRzKHRocmVzaG9sZHM/OiBhbnkpOiBQcm9taXNlPGFueT47XG4gIHVwZGF0ZUZvcndhcmRlcnMoZm9yd2FyZGVyRmxhZ3M/OiBhbnkpOiBQcm9taXNlPGFueT47XG4gIGRlcGxveUZvcndhcmRlcnMocGFyYW1zOiBEZXBsb3lGb3J3YXJkZXJzT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgZmx1c2hGb3J3YXJkZXJUb2tlbihwYXJhbXM6IEZsdXNoRm9yd2FyZGVyVG9rZW5PcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBnZXRGb3J3YXJkZXJCYWxhbmNlKHBhcmFtcz86IEZvcndhcmRlckJhbGFuY2VPcHRpb25zKTogUHJvbWlzZTxGb3J3YXJkZXJCYWxhbmNlW10+O1xuICBzd2VlcChwYXJhbXM/OiBTd2VlcE9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGZyZWV6ZShwYXJhbXM/OiBGcmVlemVPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICB0cmFuc2ZlckNvbW1lbnQocGFyYW1zPzogVHJhbnNmZXJDb21tZW50T3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgYWRkcmVzc2VzKHBhcmFtcz86IEFkZHJlc3Nlc09wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGdldEFkZHJlc3MocGFyYW1zPzogR2V0QWRkcmVzc09wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGNyZWF0ZUFkZHJlc3MocGFyYW1zPzogQ3JlYXRlQWRkcmVzc09wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHVwZGF0ZUFkZHJlc3MocGFyYW1zPzogVXBkYXRlQWRkcmVzc09wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGxpc3RXZWJob29rcyhwYXJhbXM/OiBQYWdpbmF0aW9uT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgc2ltdWxhdGVXZWJob29rKHBhcmFtcz86IFNpbXVsYXRlV2ViaG9va09wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGFkZFdlYmhvb2socGFyYW1zPzogTW9kaWZ5V2ViaG9va09wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHJlbW92ZVdlYmhvb2socGFyYW1zPzogTW9kaWZ5V2ViaG9va09wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGdldEVuY3J5cHRlZFVzZXJLZXljaGFpbigpOiBQcm9taXNlPEtleWNoYWluV2l0aEVuY3J5cHRlZFBydj47XG4gIGdldFBydihwYXJhbXM/OiBHZXRQcnZPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBjcmVhdGVTaGFyZShwYXJhbXM/OiBDcmVhdGVTaGFyZU9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHNoYXJlV2FsbGV0KHBhcmFtcz86IFNoYXJlV2FsbGV0T3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgY3JlYXRlQnVsa0tleVNoYXJlcyhwYXJhbXM/OiBCdWxrQ3JlYXRlU2hhcmVPcHRpb25bXSk6IFByb21pc2U8Q3JlYXRlQnVsa1dhbGxldFNoYXJlTGlzdFJlc3BvbnNlPjtcbiAgY3JlYXRlQnVsa1dhbGxldFNoYXJlKHBhcmFtcz86IEJ1bGtXYWxsZXRTaGFyZU9wdGlvbnMpOiBQcm9taXNlPENyZWF0ZUJ1bGtXYWxsZXRTaGFyZUxpc3RSZXNwb25zZT47XG4gIHJlbW92ZVVzZXIocGFyYW1zPzogUmVtb3ZlVXNlck9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHByZWJ1aWxkVHJhbnNhY3Rpb24ocGFyYW1zPzogUHJlYnVpbGRUcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPFByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQ+O1xuICBzaWduVHJhbnNhY3Rpb24ocGFyYW1zPzogV2FsbGV0U2lnblRyYW5zYWN0aW9uT3B0aW9ucyk6IFByb21pc2U8U2lnbmVkVHJhbnNhY3Rpb24+O1xuICBnZXRVc2VyUHJ2KHBhcmFtcz86IEdldFVzZXJQcnZPcHRpb25zKTogc3RyaW5nO1xuICBwcmVidWlsZEFuZFNpZ25UcmFuc2FjdGlvbihwYXJhbXM/OiBQcmVidWlsZEFuZFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPFNpZ25lZFRyYW5zYWN0aW9uPjtcbiAgc2lnbkFuZFNlbmRUeFJlcXVlc3QocGFyYW1zPzogU2lnbkFuZFNlbmRUeFJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxTaWduZWRUcmFuc2FjdGlvbj47XG4gIGFjY2VsZXJhdGVUcmFuc2FjdGlvbihwYXJhbXM/OiBBY2NlbGVyYXRlVHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBzdWJtaXRUcmFuc2FjdGlvbihwYXJhbXM/OiBTdWJtaXRUcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHNlbmQocGFyYW1zPzogU2VuZE9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHNlbmRNYW55KHBhcmFtcz86IFNlbmRNYW55T3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgc2VuZE5mdChzZW5kT3B0aW9uczogU2VuZE5GVE9wdGlvbnMsIHNlbmROZnRPcHRpb25zOiBPbWl0PE5GVFRyYW5zZmVyT3B0aW9ucywgJ2Zyb21BZGRyZXNzJz4pOiBQcm9taXNlPFNlbmRORlRSZXN1bHQ+O1xuICByZWNvdmVyVG9rZW4ocGFyYW1zPzogUmVjb3ZlclRva2VuT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgZ2V0Rmlyc3RQZW5kaW5nVHJhbnNhY3Rpb24ocGFyYW1zPzogUmVjb3JkPHN0cmluZywgbmV2ZXI+KTogUHJvbWlzZTxhbnk+O1xuICBjaGFuZ2VGZWUocGFyYW1zPzogQ2hhbmdlRmVlT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgZ2V0UGF5bWVudEluZm8ocGFyYW1zPzogeyB1cmw/OiBzdHJpbmcgfSk6IFByb21pc2U8YW55PjtcbiAgc2VuZFBheW1lbnRSZXNwb25zZShwYXJhbXM/OiBhbnkpOiBQcm9taXNlPGFueT47XG4gIGNyZWF0ZVBvbGljeVJ1bGUocGFyYW1zPzogQ3JlYXRlUG9saWN5UnVsZU9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHNldFBvbGljeVJ1bGUocGFyYW1zPzogYW55KTogYW55O1xuICByZW1vdmVQb2xpY3lSdWxlKHBhcmFtcz86IFJlbW92ZVBvbGljeVJ1bGVPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICByZW1vdmUocGFyYW1zPzogUmVjb3JkPHN0cmluZywgbmV2ZXI+KTogUHJvbWlzZTxhbnk+O1xuICB0b0pTT04oKTogV2FsbGV0RGF0YTtcbiAgdG9UcmFkaW5nQWNjb3VudCgpOiBJVHJhZGluZ0FjY291bnQ7XG4gIHRvU3Rha2luZ1dhbGxldCgpOiBJU3Rha2luZ1dhbGxldDtcbiAgdG9BZGRyZXNzQm9vaygpOiBJQWRkcmVzc0Jvb2s7XG4gIGRvd25sb2FkS2V5Y2FyZChwYXJhbXM/OiBEb3dubG9hZEtleWNhcmRPcHRpb25zKTogdm9pZDtcbiAgYnVpbGRBY2NvdW50Q29uc29saWRhdGlvbnMocGFyYW1zPzogQnVpbGRDb25zb2xpZGF0aW9uVHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0W10+O1xuICBzZW5kQWNjb3VudENvbnNvbGlkYXRpb24ocGFyYW1zPzogUHJlYnVpbGRBbmRTaWduVHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBzZW5kQWNjb3VudENvbnNvbGlkYXRpb25zKHBhcmFtcz86IEJ1aWxkQ29uc29saWRhdGlvblRyYW5zYWN0aW9uT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgYnVpbGRUb2tlbkVuYWJsZW1lbnRzKHBhcmFtcz86IEJ1aWxkVG9rZW5FbmFibGVtZW50T3B0aW9ucyk6IFByb21pc2U8UHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdFtdPjtcbiAgc2VuZFRva2VuRW5hYmxlbWVudChwYXJhbXM/OiBQcmVidWlsZEFuZFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHNlbmRUb2tlbkVuYWJsZW1lbnRzKHBhcmFtcz86IEJ1aWxkVG9rZW5FbmFibGVtZW50T3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgbGlnaHRuaW5nKCk6IElMaWdodG5pbmc7XG4gIHNpZ25NZXNzYWdlKHBhcmFtczogV2FsbGV0U2lnbk1lc3NhZ2VPcHRpb25zKTogUHJvbWlzZTxTaWduZWRNZXNzYWdlPjtcbiAgc2lnblR5cGVkRGF0YShwYXJhbXM6IFdhbGxldFNpZ25UeXBlZERhdGFPcHRpb25zKTogUHJvbWlzZTxTaWduZWRNZXNzYWdlPjtcbiAgZmV0Y2hDcm9zc0NoYWluVVRYT3MocGFyYW1zOiBGZXRjaENyb3NzQ2hhaW5VVFhPc09wdGlvbnMpOiBQcm9taXNlPENyb3NzQ2hhaW5VVFhPW10+O1xuICBnZXRDaGFsbGVuZ2VzRm9yRWNkc2FTaWduaW5nKCk6IFByb21pc2U8V2FsbGV0RWNkc2FDaGFsbGVuZ2VzPjtcbiAgZ2V0TmZ0QmFsYW5jZXMoKTogUHJvbWlzZTxOZnRCYWxhbmNlW10+O1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaVdhbGxldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby93YWxsZXQvaVdhbGxldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlcXVlc3RUcmFjZXIgfSBmcm9tICcuLi8uLi9hcGknO1xuaW1wb3J0IHtcbiAgSUJhc2VDb2luLFxuICBNZXNzYWdlLFxuICBTaWduZWRNZXNzYWdlLFxuICBTaWduZWRUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25QcmVidWlsZCxcbiAgVmVyaWZpY2F0aW9uT3B0aW9ucyxcbiAgVHlwZWREYXRhLFxuICBORlRUcmFuc2Zlck9wdGlvbnMsXG59IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQgeyBLZXljaGFpbiwgS2V5Y2hhaW5XaXRoRW5jcnlwdGVkUHJ2IH0gZnJvbSAnLi4va2V5Y2hhaW4nO1xuaW1wb3J0IHsgSVBlbmRpbmdBcHByb3ZhbCwgUGVuZGluZ0FwcHJvdmFsRGF0YSB9IGZyb20gJy4uL3BlbmRpbmdBcHByb3ZhbCc7XG5pbXBvcnQgeyBJR29TdGFraW5nV2FsbGV0LCBJU3Rha2luZ1dhbGxldCB9IGZyb20gJy4uL3N0YWtpbmcnO1xuaW1wb3J0IHsgSVRyYWRpbmdBY2NvdW50IH0gZnJvbSAnLi4vdHJhZGluZyc7XG5pbXBvcnQge1xuICBDdXN0b21Db21taXRtZW50R2VuZXJhdGluZ0Z1bmN0aW9uLFxuICBDdXN0b21HU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24sXG4gIEN1c3RvbUtTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbixcbiAgQ3VzdG9tTVBDdjJTaWduaW5nUm91bmQxR2VuZXJhdGluZ0Z1bmN0aW9uLFxuICBDdXN0b21NUEN2MlNpZ25pbmdSb3VuZDJHZW5lcmF0aW5nRnVuY3Rpb24sXG4gIEN1c3RvbU1QQ3YyU2lnbmluZ1JvdW5kM0dlbmVyYXRpbmdGdW5jdGlvbixcbiAgQ3VzdG9tTXVEZWx0YVNoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uLFxuICBDdXN0b21QYWlsbGllck1vZHVsdXNHZXR0ZXJGdW5jdGlvbixcbiAgQ3VzdG9tUlNoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uLFxuICBDdXN0b21TU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24sXG4gIFRva2VuRW5hYmxlbWVudCxcbiAgVG9rZW5UcmFuc2ZlclJlY2lwaWVudFBhcmFtcyxcbn0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgU2VyaWFsaXplZE50aWxkZSB9IGZyb20gJy4uLy4uL2FjY291bnQtbGliL21wYy90c3MvZWNkc2EvdHlwZXMnO1xuaW1wb3J0IHsgSUFkZHJlc3NCb29rIH0gZnJvbSAnLi4vYWRkcmVzcy1ib29rJztcbmltcG9ydCB7IFdhbGxldFVzZXIgfSBmcm9tICdAYml0Z28vcHVibGljLXR5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBNYXhpbXVtU3BlbmRhYmxlT3B0aW9ucyB7XG4gIG1pblZhbHVlPzogbnVtYmVyIHwgc3RyaW5nO1xuICBtYXhWYWx1ZT86IG51bWJlciB8IHN0cmluZztcbiAgbWluSGVpZ2h0PzogbnVtYmVyO1xuICBtaW5Db25maXJtcz86IG51bWJlcjtcbiAgZW5mb3JjZU1pbkNvbmZpcm1zRm9yQ2hhbmdlPzogYm9vbGVhbjtcbiAgZmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUmF0ZT86IG51bWJlcjtcbiAgcmVjaXBpZW50QWRkcmVzcz86IHN0cmluZztcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHRhcmdldD86IG51bWJlciB8IHN0cmluZztcbiAgcGxhaW5UYXJnZXQ/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWF4aW11bVNwZW5kYWJsZSB7XG4gIG1heGltdW1TcGVuZGFibGU6IG51bWJlcjtcbiAgY29pbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lbW8ge1xuICB2YWx1ZTogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRDb25zb2xpZGF0aW9uVHJhbnNhY3Rpb25PcHRpb25zIGV4dGVuZHMgUHJlYnVpbGRUcmFuc2FjdGlvbk9wdGlvbnMsIFdhbGxldFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMge1xuICBjb25zb2xpZGF0ZUFkZHJlc3Nlcz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkVG9rZW5FbmFibGVtZW50T3B0aW9ucyBleHRlbmRzIFByZWJ1aWxkVHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgZW5hYmxlVG9rZW5zOiBUb2tlbkVuYWJsZW1lbnRbXTtcbn1cblxudHlwZSBCYXNlQmFsYW5jZSA9IHtcbiAgYmFsYW5jZVN0cmluZzogc3RyaW5nO1xuICBjb25maXJtZWRCYWxhbmNlU3RyaW5nOiBzdHJpbmc7XG4gIHNwZW5kYWJsZUJhbGFuY2VTdHJpbmc6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIE5mdEJhbGFuY2UgPSBCYXNlQmFsYW5jZSAmIHtcbiAgdHlwZTogc3RyaW5nO1xuICBtZXRhZGF0YToge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB0b2tlbkNvbnRyYWN0QWRkcmVzczogc3RyaW5nO1xuICB9O1xuICBjb2xsZWN0aW9uczoge1xuICAgIC8vIG1hcCB0b2tlbklkIHRvIGJhbGFuY2Ugb2YgdG9rZW5cbiAgICBbdG9rZW5JZDogc3RyaW5nXTogbnVtYmVyO1xuICB9O1xufTtcblxuZXhwb3J0IHR5cGUgQXBpVmVyc2lvbiA9ICdsaXRlJyB8ICdmdWxsJztcblxuZXhwb3J0IGludGVyZmFjZSBQcmVidWlsZFRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIHJlcUlkPzogSVJlcXVlc3RUcmFjZXI7XG4gIHJlY2lwaWVudHM/OiB7XG4gICAgYWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nIHwgbnVtYmVyO1xuICAgIHRva2VuTmFtZT86IHN0cmluZztcbiAgICB0b2tlbkRhdGE/OiBUb2tlblRyYW5zZmVyUmVjaXBpZW50UGFyYW1zO1xuICB9W107XG4gIG51bUJsb2Nrcz86IG51bWJlcjtcbiAgbWF4RmVlUmF0ZT86IG51bWJlcjtcbiAgbWluQ29uZmlybXM/OiBudW1iZXI7XG4gIGVuZm9yY2VNaW5Db25maXJtc0ZvckNoYW5nZT86IGJvb2xlYW47XG4gIHRhcmdldFdhbGxldFVuc3BlbnRzPzogbnVtYmVyO1xuICBtaW5WYWx1ZT86IG51bWJlciB8IHN0cmluZztcbiAgbWF4VmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIHNlcXVlbmNlSWQ/OiBzdHJpbmc7XG4gIGxhc3RMZWRnZXJTZXF1ZW5jZT86IG51bWJlcjtcbiAgbGVkZ2VyU2VxdWVuY2VEZWx0YT86IG51bWJlcjtcbiAgZ2FzUHJpY2U/OiBudW1iZXI7XG4gIG5vU3BsaXRDaGFuZ2U/OiBib29sZWFuO1xuICB1bnNwZW50cz86IGFueVtdO1xuICAvKipcbiAgICogVGhlIHJlY2VpdmUgYWRkcmVzcyBmcm9tIHdoaWNoIGZ1bmRzIHdpbGwgYmUgd2l0aGRyYXduLlxuICAgKiBUaGlzIGZlYXR1cmUgaXMgc3VwcG9ydGVkIG9ubHkgZm9yIHNwZWNpZmljIGNvaW5zLCBsaWtlIEFEQS5cbiAgICovXG4gIHNlbmRlckFkZHJlc3M/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB3YWxsZXQgSUQgb2YgdGhlIHNlbmRlciB3YWxsZXQgd2hlbiBzZW5kZXIgd2FsbGV0IGlzIGRpZmZlcmVudCBmcm9tIGN1cnJlbnQgd2FsbGV0IGlkLlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCB7dW5kZWZpbmVkfVxuICAgKiBAZGVzY3JpcHRpb24gRm9yIEJUQyB1bnN0YWtpbmcsIHRoZSBzZW5kZXIgd2FsbGV0KGEgZGVzY3JpcHRvciB3YWxsZXQpIGlzIGRpZmZlcmVudCBmcm9tIG9yaWdpbmFsIHdhbGxldFxuICAgKiAqL1xuICBzZW5kZXJXYWxsZXRJZD86IHN0cmluZztcblxuICBjaGFuZ2VBZGRyZXNzPzogc3RyaW5nO1xuICBhbGxvd0V4dGVybmFsQ2hhbmdlQWRkcmVzcz86IGJvb2xlYW47XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGNsb3NlUmVtYWluZGVyVG8/OiBzdHJpbmc7XG4gIG5vblBhcnRpY2lwYXRpb24/OiBib29sZWFuO1xuICB2YWxpZEZyb21CbG9jaz86IG51bWJlcjtcbiAgdmFsaWRUb0Jsb2NrPzogbnVtYmVyO1xuICBpbnN0YW50PzogYm9vbGVhbjtcbiAgbWVtbz86IE1lbW87XG4gIGFkZHJlc3NUeXBlPzogc3RyaW5nO1xuICBjaGFuZ2VBZGRyZXNzVHlwZT86IHN0cmluZztcbiAgaG9wPzogYm9vbGVhbjtcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgcmVzZXJ2YXRpb24/OiB7XG4gICAgZXhwaXJlVGltZT86IHN0cmluZztcbiAgICBwZW5kaW5nQXBwcm92YWxJZD86IHN0cmluZztcbiAgfTtcbiAgb2ZmbGluZVZlcmlmaWNhdGlvbj86IGJvb2xlYW47XG4gIHdhbGxldENvbnRyYWN0QWRkcmVzcz86IHN0cmluZztcbiAgaWRmU2lnbmVkVGltZXN0YW1wPzogc3RyaW5nO1xuICBpZGZVc2VySWQ/OiBzdHJpbmc7XG4gIGlkZlZlcnNpb24/OiBudW1iZXI7XG4gIGNvbW1lbnQ/OiBzdHJpbmc7XG4gIFtpbmRleDogc3RyaW5nXTogdW5rbm93bjtcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xuICBlbmFibGVUb2tlbnM/OiBUb2tlbkVuYWJsZW1lbnRbXTtcbiAgbm9uY2U/OiBzdHJpbmc7XG4gIHByZXZpZXc/OiBib29sZWFuO1xuICBlaXAxNTU5PzogRUlQMTU1OTtcbiAgZ2FzTGltaXQ/OiBudW1iZXI7XG4gIGxvd0ZlZVR4aWQ/OiBzdHJpbmc7XG4gIHJlY2VpdmVBZGRyZXNzPzogc3RyaW5nO1xuICBpc1Rzcz86IGJvb2xlYW47XG4gIGN1c3RvZGlhblRyYW5zYWN0aW9uSWQ/OiBzdHJpbmc7XG4gIGFwaVZlcnNpb24/OiBBcGlWZXJzaW9uO1xuICAvKipcbiAgICogSWYgc2V0IHRvIGZhbHNlLCBzd2VlcCBhbGwgZnVuZHMgaW5jbHVkaW5nIHRoZSByZXF1aXJlZCBtaW5pbXVtcyBmb3IgYWRkcmVzcyhlcykuIEUuZy4gUG9sa2Fkb3QgKERPVCkgcmVxdWlyZXMgMSBET1QgbWluaW11bS5cbiAgICovXG4gIGtlZXBBbGl2ZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGlzIGNvbW1lbnQgYXBwbGllcyB0byBVVFhPIGNvaW5zLiBJdCdzIGFza2luZyB3aGljaCB0cmFuc2FjdGlvbiBmb3JtYXQgdG8gdXNlOlxuICAgKiB0aGUgbGVnYWN5IGZvcm1hdCBkZWZpbmVkIGJ5IGJpdGNvaW5qcy1saWIsIG9yIHRoZSAncHNidCcgZm9ybWF0LCB3aGljaCBmb2xsb3dzIHRoZSBCSVAtMTc0LlxuICAgKi9cbiAgdHhGb3JtYXQ/OiAnbGVnYWN5JyB8ICdwc2J0Jztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmVidWlsZEFuZFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMgZXh0ZW5kcyBQcmVidWlsZFRyYW5zYWN0aW9uT3B0aW9ucywgV2FsbGV0U2lnblRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIHByZWJ1aWxkVHg/OiBzdHJpbmcgfCBQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0O1xuICB2ZXJpZmljYXRpb24/OiBWZXJpZmljYXRpb25PcHRpb25zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQgZXh0ZW5kcyBUcmFuc2FjdGlvblByZWJ1aWxkIHtcbiAgd2FsbGV0SWQ6IHN0cmluZztcbiAgLy8gQ29uc29saWRhdGUgSUQgaXMgdXNlZCBmb3IgY29uc29saWRhdGUgYWNjb3VudCB0cmFuc2FjdGlvbnMgYW5kIGluZGljYXRlcyBpZiB0aGlzIGlzXG4gIC8vIGEgY29uc29saWRhdGlvbiBhbmQgd2hhdCBjb25zb2xpZGF0ZSBncm91cCBpdCBzaG91bGQgYmUgcmVmZXJlbmNlZCBieS5cbiAgY29uc29saWRhdGVJZD86IHN0cmluZztcbiAgY29uc29saWRhdGlvbkRldGFpbHM/OiB7XG4gICAgc2VuZGVyQWRkcmVzc0luZGV4OiBudW1iZXI7XG4gIH07XG4gIGZlZUluZm8/OiB7XG4gICAgZmVlPzogbnVtYmVyO1xuICAgIGZlZVN0cmluZz86IHN0cmluZztcbiAgfTtcbiAgcGVuZGluZ0FwcHJvdmFsSWQ/OiBzdHJpbmc7XG4gIHJlcUlkPzogSVJlcXVlc3RUcmFjZXI7XG4gIHBheWxvYWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tU2lnbmluZ0Z1bmN0aW9uIHtcbiAgKHBhcmFtczoge1xuICAgIGNvaW46IElCYXNlQ29pbjtcbiAgICB0eFByZWJ1aWxkOiBUcmFuc2FjdGlvblByZWJ1aWxkO1xuICAgIHB1YnM/OiBzdHJpbmdbXTtcbiAgICBkZXJpdmF0aW9uU2VlZD86IHN0cmluZztcbiAgICBzaWduaW5nU3RlcD86ICdzaWduZXJOb25jZScgfCAnc2lnbmVyU2lnbmF0dXJlJyB8ICdjb3NpZ25lck5vbmNlJztcbiAgfSk6IFByb21pc2U8U2lnbmVkVHJhbnNhY3Rpb24+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldFNpZ25CYXNlT3B0aW9ucyB7XG4gIHJlcUlkPzogSVJlcXVlc3RUcmFjZXI7XG4gIHBydj86IHN0cmluZztcbiAgcHVicz86IHN0cmluZ1tdO1xuICB0eFJlcXVlc3RJZD86IHN0cmluZztcbiAgY29zaWduZXJQdWI/OiBzdHJpbmc7XG4gIGlzTGFzdFNpZ25hdHVyZT86IGJvb2xlYW47XG4gIGN1c3RvbVNpZ25pbmdGdW5jdGlvbj86IEN1c3RvbVNpZ25pbmdGdW5jdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRTaWduVHJhbnNhY3Rpb25PcHRpb25zIGV4dGVuZHMgV2FsbGV0U2lnbkJhc2VPcHRpb25zIHtcbiAgdHhQcmVidWlsZD86IFRyYW5zYWN0aW9uUHJlYnVpbGQ7XG4gIGN1c3RvbUNvbW1pdG1lbnRHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21Db21taXRtZW50R2VuZXJhdGluZ0Z1bmN0aW9uO1xuICBjdXN0b21SU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21SU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb247XG4gIGN1c3RvbUdTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbj86IEN1c3RvbUdTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbjtcbiAgY3VzdG9tUGFpbGxpZXJNb2R1bHVzR2VuZXJhdGluZ0Z1bmN0aW9uPzogQ3VzdG9tUGFpbGxpZXJNb2R1bHVzR2V0dGVyRnVuY3Rpb247XG4gIGN1c3RvbUtTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbj86IEN1c3RvbUtTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbjtcbiAgY3VzdG9tTXVEZWx0YVNoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uPzogQ3VzdG9tTXVEZWx0YVNoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uO1xuICBjdXN0b21TU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21TU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb247XG4gIGN1c3RvbU1QQ3YyU2lnbmluZ1JvdW5kMUdlbmVyYXRpb25GdW5jdGlvbj86IEN1c3RvbU1QQ3YyU2lnbmluZ1JvdW5kMUdlbmVyYXRpbmdGdW5jdGlvbjtcbiAgY3VzdG9tTVBDdjJTaWduaW5nUm91bmQyR2VuZXJhdGlvbkZ1bmN0aW9uPzogQ3VzdG9tTVBDdjJTaWduaW5nUm91bmQyR2VuZXJhdGluZ0Z1bmN0aW9uO1xuICBjdXN0b21NUEN2MlNpZ25pbmdSb3VuZDNHZW5lcmF0aW9uRnVuY3Rpb24/OiBDdXN0b21NUEN2MlNpZ25pbmdSb3VuZDNHZW5lcmF0aW5nRnVuY3Rpb247XG4gIGFwaVZlcnNpb24/OiBBcGlWZXJzaW9uO1xuICBtdWx0aXNpZ1R5cGVWZXJzaW9uPzogJ01QQ3YyJztcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgW2luZGV4OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG5pbnRlcmZhY2UgV2FsbGV0U2lnbk1lc3NhZ2VCYXNlIGV4dGVuZHMgV2FsbGV0U2lnbkJhc2VPcHRpb25zIHtcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgY3VzdG9kaWFuTWVzc2FnZUlkPzogc3RyaW5nO1xuICBjdXN0b21QYWlsbGllck1vZHVsdXNHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21QYWlsbGllck1vZHVsdXNHZXR0ZXJGdW5jdGlvbjtcbiAgY3VzdG9tS1NoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uPzogQ3VzdG9tS1NoYXJlR2VuZXJhdGluZ0Z1bmN0aW9uO1xuICBjdXN0b21NdURlbHRhU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb24/OiBDdXN0b21NdURlbHRhU2hhcmVHZW5lcmF0aW5nRnVuY3Rpb247XG4gIGN1c3RvbVNTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbj86IEN1c3RvbVNTaGFyZUdlbmVyYXRpbmdGdW5jdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRTaWduTWVzc2FnZU9wdGlvbnMgZXh0ZW5kcyBXYWxsZXRTaWduTWVzc2FnZUJhc2Uge1xuICBtZXNzYWdlPzogTWVzc2FnZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRTaWduVHlwZWREYXRhT3B0aW9ucyBleHRlbmRzIFdhbGxldFNpZ25NZXNzYWdlQmFzZSB7XG4gIHR5cGVkRGF0YTogVHlwZWREYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25BbmRTZW5kVHhSZXF1ZXN0T3B0aW9ucyB7XG4gIHR4UmVxdWVzdElkOiBzdHJpbmc7XG4gIHdhbGxldFBhc3NwaHJhc2U6IHN0cmluZztcbiAgaXNUeFJlcXVlc3RGdWxsOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFVzZXJQcnZPcHRpb25zIHtcbiAga2V5Y2hhaW4/OiBLZXljaGFpbjtcbiAga2V5PzogS2V5Y2hhaW47XG4gIHBydj86IHN0cmluZztcbiAgY29sZERlcml2YXRpb25TZWVkPzogc3RyaW5nO1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldENvaW5TcGVjaWZpYyB7XG4gIHRva2VuRmx1c2hUaHJlc2hvbGRzPzogYW55O1xuICBhZGRyZXNzVmVyc2lvbj86IG51bWJlcjtcbiAgYmFzZUFkZHJlc3M/OiBzdHJpbmc7XG4gIHJvb3RBZGRyZXNzPzogc3RyaW5nO1xuICBjdXN0b21DaGFuZ2VXYWxsZXRJZDogc3RyaW5nO1xuICB3YWxsZXRWZXJzaW9uPzogbnVtYmVyO1xuICBoYXNoQWxnb3JpdGhtPzogc3RyaW5nO1xuICBwZW5kaW5nRWNkc2FUc3NJbml0aWFsaXphdGlvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBMaWdodG5pbmcgY29pbiBzcGVjaWZpYyBkYXRhIHN0YXJ0c1xuICAgKi9cbiAga2V5cz86IHN0cmluZ1tdO1xuICBlbmNyeXB0ZWRTaWduZXJBZG1pbk1hY2Fyb29uPzogc3RyaW5nIHwgbnVsbDtcbiAgZW5jcnlwdGVkU2lnbmVyTWFjYXJvb24/OiBzdHJpbmcgfCBudWxsO1xuICB3YXRjaE9ubHlFeHRlcm5hbElwPzogc3RyaW5nIHwgbnVsbDtcbiAgc2lnbmVySG9zdD86IHN0cmluZyB8IG51bGw7XG4gIGVuY3J5cHRlZFNpZ25lclRsc0tleT86IHN0cmluZyB8IG51bGw7XG4gIHNpZ25lclRsc0NlcnQ/OiBzdHJpbmcgfCBudWxsO1xuICB3YXRjaE9ubHlBY2NvdW50cz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgbnVsbDtcbiAgc2lnbmVkVXNlckF1dGhLZXk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBMaWdodG5pbmcgY29pbiBzcGVjaWZpYyBkYXRhIGVuZHNcbiAgICovXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5hdGlvbk9wdGlvbnMge1xuICBwcmV2SWQ/OiBzdHJpbmc7XG4gIGxpbWl0PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFRyYW5zYWN0aW9uT3B0aW9ucyBleHRlbmRzIFBhZ2luYXRpb25PcHRpb25zIHtcbiAgdHhIYXNoPzogc3RyaW5nO1xuICBpbmNsdWRlUmJmPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2ZlcnNPcHRpb25zIGV4dGVuZHMgUGFnaW5hdGlvbk9wdGlvbnMge1xuICB0eEhhc2g/OiBzdHJpbmc7XG4gIGFsbFRva2Vucz86IGJvb2xlYW47XG4gIHNlYXJjaExhYmVsPzogc3RyaW5nO1xuICBhZGRyZXNzPzogc3RyaW5nW10gfCBzdHJpbmc7XG4gIGRhdGVHdGU/OiBzdHJpbmc7XG4gIGRhdGVMdD86IHN0cmluZztcbiAgdmFsdWVHdGU/OiBudW1iZXI7XG4gIHZhbHVlTHQ/OiBudW1iZXI7XG4gIGluY2x1ZGVIZXg/OiBib29sZWFuO1xuICBzdGF0ZT86IHN0cmluZ1tdIHwgc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFRyYW5zZmVyT3B0aW9ucyB7XG4gIGlkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZmVyQnlTZXF1ZW5jZUlkT3B0aW9ucyB7XG4gIHNlcXVlbmNlSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5zcGVudHNPcHRpb25zIGV4dGVuZHMgUGFnaW5hdGlvbk9wdGlvbnMge1xuICBtaW5WYWx1ZT86IG51bWJlciB8IHN0cmluZztcbiAgbWF4VmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIG1pbkhlaWdodD86IG51bWJlcjtcbiAgbWluQ29uZmlybXM/OiBudW1iZXI7XG4gIHRhcmdldD86IG51bWJlciB8IHN0cmluZztcbiAgc2Vnd2l0PzogYm9vbGVhbjtcbiAgY2hhaW5zPzogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWFuYWdlVW5zcGVudFJlc2VydmF0aW9uT3B0aW9ucyB7XG4gIGNyZWF0ZT86IHtcbiAgICB1bnNwZW50SWRzOiBzdHJpbmdbXTtcbiAgICBleHBpcmVUaW1lOiBzdHJpbmc7XG4gIH07XG4gIG1vZGlmeT86IHtcbiAgICB1bnNwZW50SWRzOiBzdHJpbmdbXTtcbiAgICBjaGFuZ2VzOiB7XG4gICAgICBleHBpcmVUaW1lOiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbiAgZGVsZXRlPzoge1xuICAgIGlkOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uc29saWRhdGVVbnNwZW50c09wdGlvbnMgZXh0ZW5kcyBXYWxsZXRTaWduVHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgeHBydj86IHN0cmluZztcbiAgbWluVmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIG1heFZhbHVlPzogbnVtYmVyIHwgc3RyaW5nO1xuICBtaW5IZWlnaHQ/OiBudW1iZXI7XG4gIG51bVVuc3BlbnRzVG9NYWtlPzogbnVtYmVyO1xuICBmZWVUeENvbmZpcm1UYXJnZXQ/OiBudW1iZXI7XG4gIGxpbWl0PzogbnVtYmVyO1xuICBtaW5Db25maXJtcz86IG51bWJlcjtcbiAgZW5mb3JjZU1pbkNvbmZpcm1zRm9yQ2hhbmdlPzogYm9vbGVhbjtcbiAgZmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUGVyY2VudGFnZT86IG51bWJlcjtcbiAgY29tbWVudD86IHN0cmluZztcbiAgb3RwPzogc3RyaW5nO1xuICB0YXJnZXRBZGRyZXNzPzogc3RyaW5nO1xuICBidWxrPzogYm9vbGVhbjtcbiAgW2luZGV4OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZhbm91dFVuc3BlbnRzT3B0aW9ucyBleHRlbmRzIFdhbGxldFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMge1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xuICB4cHJ2Pzogc3RyaW5nO1xuICBtaW5WYWx1ZT86IG51bWJlciB8IHN0cmluZztcbiAgbWF4VmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIG1pbkhlaWdodD86IG51bWJlcjtcbiAgbWF4TnVtSW5wdXRzVG9Vc2U/OiBudW1iZXI7XG4gIHVuc3BlbnRzPzogc3RyaW5nW107XG4gIG51bVVuc3BlbnRzVG9NYWtlPzogbnVtYmVyO1xuICBtaW5Db25maXJtcz86IG51bWJlcjtcbiAgZW5mb3JjZU1pbkNvbmZpcm1zRm9yQ2hhbmdlPzogYm9vbGVhbjtcbiAgZmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUmF0ZT86IG51bWJlcjtcbiAgbWF4RmVlUGVyY2VudGFnZT86IG51bWJlcjtcbiAgZmVlVHhDb25maXJtVGFyZ2V0PzogbnVtYmVyO1xuICBjb21tZW50Pzogc3RyaW5nO1xuICBvdHA/OiBzdHJpbmc7XG4gIHRhcmdldEFkZHJlc3M/OiBzdHJpbmc7XG4gIFtpbmRleDogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTd2VlcE9wdGlvbnMge1xuICBhZGRyZXNzPzogc3RyaW5nO1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xuICB4cHJ2Pzogc3RyaW5nO1xuICBvdHA/OiBzdHJpbmc7XG4gIGZlZVJhdGU/OiBudW1iZXI7XG4gIG1heEZlZVJhdGU/OiBudW1iZXI7XG4gIGZlZVR4Q29uZmlybVRhcmdldD86IG51bWJlcjtcbiAgYWxsb3dQYXJ0aWFsU3dlZXA/OiBib29sZWFuO1xuICBbaW5kZXg6IHN0cmluZ106IHVua25vd247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJlZXplT3B0aW9ucyB7XG4gIGR1cmF0aW9uPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZmVyQ29tbWVudE9wdGlvbnMge1xuICBpZD86IHN0cmluZztcbiAgY29tbWVudD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRyZXNzZXNPcHRpb25zIGV4dGVuZHMgUGFnaW5hdGlvbk9wdGlvbnMge1xuICBtaW5lPzogYm9vbGVhbjtcbiAgc29ydD86IG51bWJlcjtcbiAgbGFiZWxDb250YWlucz86IHN0cmluZztcbiAgc2Vnd2l0PzogYm9vbGVhbjtcbiAgY2hhaW5zPzogbnVtYmVyW107XG4gIGluY2x1ZGVCYWxhbmNlcz86IGJvb2xlYW47XG4gIGluY2x1ZGVUb2tlbnM/OiBib29sZWFuO1xuICBpbmNsdWRlVG90YWxBZGRyZXNzQ291bnQ/OiBib29sZWFuO1xuICByZXR1cm5CYWxhbmNlc0ZvclRva2VuPzogc3RyaW5nO1xuICBwZW5kaW5nRGVwbG95bWVudD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0QWRkcmVzc09wdGlvbnMge1xuICBhZGRyZXNzPzogc3RyaW5nO1xuICBpZD86IHN0cmluZztcbiAgcmVxSWQ/OiBJUmVxdWVzdFRyYWNlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXBsb3lGb3J3YXJkZXJzT3B0aW9ucyB7XG4gIGFkZHJlc3M/OiBzdHJpbmc7XG4gIGlkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZ1bmRGb3J3YXJkZXJzT3B0aW9ucyB7XG4gIGZvcndhcmRlckFkZHJlc3M6IHN0cmluZztcbiAgYW1vdW50Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZ1bmRGb3J3YXJkZXJQYXJhbXMge1xuICBmb3J3YXJkZXJzOiBGdW5kRm9yd2FyZGVyc09wdGlvbnNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGbHVzaEZvcndhcmRlclRva2VuT3B0aW9ucyB7XG4gIGFkZHJlc3M/OiBzdHJpbmc7XG4gIGlkPzogc3RyaW5nO1xuICB0b2tlbk5hbWU6IHN0cmluZztcbiAgZ2FzUHJpY2U/OiBudW1iZXI7XG4gIGVpcDE1NTk/OiB7XG4gICAgbWF4UHJpb3JpdHlGZWVQZXJHYXM6IG51bWJlcjtcbiAgICBtYXhGZWVQZXJHYXM6IG51bWJlcjtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGb3J3YXJkZXJCYWxhbmNlIHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICBiYWxhbmNlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9yd2FyZGVyQmFsYW5jZU9wdGlvbnMge1xuICBtaW5pbXVtQmFsYW5jZT86IG51bWJlcjtcbiAgbWF4aW11bUJhbGFuY2U/OiBudW1iZXI7XG59XG5cbmV4cG9ydCB0eXBlIENyZWF0ZUFkZHJlc3NGb3JtYXQgPSAnYmFzZTU4JyB8ICdjYXNoYWRkcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQWRkcmVzc09wdGlvbnMge1xuICBjaGFpbj86IG51bWJlcjtcbiAgZ2FzUHJpY2U/OiBudW1iZXIgfCBzdHJpbmc7XG4gIGNvdW50PzogbnVtYmVyO1xuICBsYWJlbD86IHN0cmluZztcbiAgbG93UHJpb3JpdHk/OiBib29sZWFuO1xuICBmb3J3YXJkZXJWZXJzaW9uPzogbnVtYmVyO1xuICBmb3JtYXQ/OiBDcmVhdGVBZGRyZXNzRm9ybWF0O1xuICBiYXNlQWRkcmVzcz86IHN0cmluZztcbiAgYWxsb3dTa2lwVmVyaWZ5QWRkcmVzcz86IGJvb2xlYW47XG4gIGRlcml2ZWRBZGRyZXNzPzogc3RyaW5nO1xuICBpbmRleD86IG51bWJlcjtcbiAgb25Ub2tlbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVBZGRyZXNzT3B0aW9ucyB7XG4gIGxhYmVsPzogc3RyaW5nO1xuICBhZGRyZXNzPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUJ1aWxkRGVmYXVsdE9wdGlvbnMge1xuICBtaW5GZWVSYXRlPzogbnVtYmVyO1xuICBjaGFuZ2VBZGRyZXNzVHlwZT86IHN0cmluZztcbiAgdHhGb3JtYXQ/OiAnbGVnYWN5JyB8ICdwc2J0Jztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTaW11bGF0ZVdlYmhvb2tPcHRpb25zIHtcbiAgd2ViaG9va0lkPzogc3RyaW5nO1xuICB0cmFuc2ZlcklkPzogc3RyaW5nO1xuICBwZW5kaW5nQXBwcm92YWxJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlXZWJob29rT3B0aW9ucyB7XG4gIHVybD86IHN0cmluZztcbiAgdHlwZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRQcnZPcHRpb25zIHtcbiAgcHJ2Pzogc3RyaW5nO1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNoYXJlZEtleUNoYWluIHtcbiAgcHViPzogc3RyaW5nO1xuICBlbmNyeXB0ZWRQcnY/OiBzdHJpbmc7XG4gIGZyb21QdWJLZXk/OiBzdHJpbmc7XG4gIHRvUHViS2V5Pzogc3RyaW5nO1xuICBwYXRoPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVNoYXJlT3B0aW9ucyB7XG4gIHVzZXI/OiBzdHJpbmc7XG4gIHBlcm1pc3Npb25zPzogc3RyaW5nO1xuICBrZXljaGFpbj86IHtcbiAgICAvLyBJbiB0aGUgY29udGV4dCBvZiB3YWxsZXQgc2hhcmluZywgcHViIGNhbiByZXByZXNlbnQgb25lIG9mOlxuICAgIC8vIHB1YiAoaW5kZXBlbmRhbnQgbXVsdGkgc2lnKSwgY29tbW9uUHViIChibHMpLCBvciBjb21tb25QdWIgcG9ydGlvbiBvZiBjb21tb25LZXljaGFpbiAoVFNTKVxuICAgIHB1Yj86IHN0cmluZztcbiAgICBlbmNyeXB0ZWRQcnY/OiBzdHJpbmc7XG4gICAgZnJvbVB1YktleT86IHN0cmluZztcbiAgICB0b1B1YktleT86IHN0cmluZztcbiAgICBwYXRoPzogc3RyaW5nO1xuICB9O1xuICByZXNoYXJlPzogYm9vbGVhbjtcbiAgbWVzc2FnZT86IHN0cmluZztcbiAgZGlzYWJsZUVtYWlsPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIElmIHRydWUsIGFsbG93cyBzaGFyaW5nIHdpdGhvdXQgYSBrZXljaGFpbi5cbiAgICogQSBmYWxzeSB2YWx1ZSBpcyBleHBlY3RlZCB0byB0aHJvdyBhbiBBUEkgZXJyb3IgaWYgYW4gZW1wdHkgb3IgdW5kZWZpbmVkIGBrZXljaGFpbmAgaXMgcHJvdmlkZWQuXG4gICAqL1xuICBza2lwS2V5Y2hhaW4/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNoYXJlV2FsbGV0T3B0aW9ucyB7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBwZXJtaXNzaW9ucz86IHN0cmluZztcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgbWVzc2FnZT86IHN0cmluZztcbiAgcmVzaGFyZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZiB0cnVlLCBza2lwcyBzaGFyaW5nIHRoZSB3YWxsZXQga2V5Y2hhaW4gd2l0aCB0aGUgcmVjaXBpZW50LlxuICAgKi9cbiAgc2tpcEtleWNoYWluPzogYm9vbGVhbjtcbiAgZGlzYWJsZUVtYWlsPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWxrQ3JlYXRlU2hhcmVPcHRpb24ge1xuICB1c2VyOiBzdHJpbmc7XG4gIHBlcm1pc3Npb25zOiBzdHJpbmdbXTtcbiAga2V5Y2hhaW46IEJ1bGtXYWxsZXRTaGFyZUtleWNoYWluO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1bGtXYWxsZXRTaGFyZU9wdGlvbnMge1xuICB3YWxsZXRQYXNzcGhyYXNlOiBzdHJpbmc7XG4gIGtleVNoYXJlT3B0aW9uczogQXJyYXk8e1xuICAgIHVzZXJJZDogc3RyaW5nO1xuICAgIHB1YktleTogc3RyaW5nO1xuICAgIHBhdGg6IHN0cmluZztcbiAgICBwZXJtaXNzaW9uczogc3RyaW5nW107XG4gIH0+O1xufVxuXG5leHBvcnQgdHlwZSBXYWxsZXRTaGFyZVN0YXRlID0gJ2FjdGl2ZScgfCAnYWNjZXB0ZWQnIHwgJ2NhbmNlbGVkJyB8ICdyZWplY3RlZCcgfCAncGVuZGluZ2FwcHJvdmFsJztcblxuZXhwb3J0IGludGVyZmFjZSBCdWxrV2FsbGV0U2hhcmVLZXljaGFpbiB7XG4gIHB1Yjogc3RyaW5nO1xuICBlbmNyeXB0ZWRQcnY6IHN0cmluZztcbiAgZnJvbVB1YktleTogc3RyaW5nO1xuICB0b1B1YktleTogc3RyaW5nO1xuICBwYXRoOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgV2FsbGV0U2hhcmUge1xuICBpZDogc3RyaW5nO1xuICBjb2luOiBzdHJpbmc7XG4gIHdhbGxldDogc3RyaW5nO1xuICB3YWxsZXRMYWJlbD86IHN0cmluZztcbiAgZnJvbVVzZXI6IHN0cmluZztcbiAgdG9Vc2VyOiBzdHJpbmc7XG4gIHBlcm1pc3Npb25zOiBzdHJpbmdbXTtcbiAgc3RhdGU/OiBXYWxsZXRTaGFyZVN0YXRlO1xuICBlbnRlcnByaXNlPzogc3RyaW5nO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICBwZW5kaW5nQXBwcm92YWxJZD86IHN0cmluZztcbiAga2V5Y2hhaW5PdmVycmlkZVJlcXVpcmVkPzogYm9vbGVhbjtcbiAgaXNVTVNJbml0aWF0ZWQ/OiBib29sZWFuO1xuICBrZXljaGFpbj86IEJ1bGtXYWxsZXRTaGFyZUtleWNoYWluO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUJ1bGtXYWxsZXRTaGFyZUxpc3RSZXNwb25zZSB7XG4gIHNoYXJlczogV2FsbGV0U2hhcmVbXTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgUmVtb3ZlVXNlck9wdGlvbnMge1xuICB1c2VySWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWNjZWxlcmF0ZVRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIGNwZnBUeElkcz86IHN0cmluZ1tdO1xuICByYmZUeElkcz86IHN0cmluZ1tdO1xuICBjcGZwRmVlUmF0ZT86IG51bWJlcjtcbiAgbm9DcGZwRmVlUmF0ZT86IGJvb2xlYW47XG4gIG1heEZlZT86IG51bWJlcjtcbiAgbm9NYXhGZWU/OiBib29sZWFuO1xuICBmZWVNdWx0aXBsaWVyPzogbnVtYmVyO1xuICByZWNpcGllbnRzPzoge1xuICAgIGFkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgfVtdO1xuICBbaW5kZXg6IHN0cmluZ106IHVua25vd247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VibWl0VHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgb3RwPzogc3RyaW5nO1xuICB0eEhleD86IHN0cmluZztcbiAgaGFsZlNpZ25lZD86IHtcbiAgICB0eEhleD86IHN0cmluZzsgLy8gVHJhbnNhY3Rpb24gaW4gYW55IGZvcm1hdCByZXF1aXJlZCBieSBlYWNoIGNvaW4sIGkuZS4gaW4gVHJvbiBpdCBpcyBhIHN0cmluZ2lmeWVkIEpTT05cbiAgICBwYXlsb2FkPzogc3RyaW5nO1xuICAgIHR4QmFzZTY0Pzogc3RyaW5nO1xuICAgIHNpZ25lZENoaWxkUHNidD86IHN0cmluZzsgLy8gUFNCVCB0aGF0IGhhcyB0aGUgb3V0cHV0IG9mIHR4SGV4IGFzIGlucHV0IHdpdGggYSBzaWduYXR1cmVcbiAgfTtcbiAgY29tbWVudD86IHN0cmluZztcbiAgdHhSZXF1ZXN0SWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VuZE9wdGlvbnMge1xuICBhZGRyZXNzPzogc3RyaW5nO1xuICBhbW91bnQ/OiBudW1iZXIgfCBzdHJpbmc7XG4gIGRhdGE/OiBzdHJpbmc7XG4gIGZlZUxpbWl0Pzogc3RyaW5nO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nO1xuICBwcnY/OiBzdHJpbmc7XG4gIG1pbkNvbmZpcm1zPzogbnVtYmVyO1xuICBlbmZvcmNlTWluQ29uZmlybXNGb3JDaGFuZ2U/OiBib29sZWFuO1xuICBjdXN0b2RpYW5UcmFuc2FjdGlvbklkPzogc3RyaW5nO1xuICBbaW5kZXg6IHN0cmluZ106IHVua25vd247XG4gIHRva2VuTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZW5kTWFueU9wdGlvbnMgZXh0ZW5kcyBQcmVidWlsZEFuZFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMge1xuICByZXFJZD86IElSZXF1ZXN0VHJhY2VyO1xuICByZWNpcGllbnRzPzoge1xuICAgIGFkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZyB8IG51bWJlcjtcbiAgICBmZWVMaW1pdD86IHN0cmluZztcbiAgICBkYXRhPzogc3RyaW5nO1xuICAgIHRva2VuTmFtZT86IHN0cmluZztcbiAgfVtdO1xuICBudW1CbG9ja3M/OiBudW1iZXI7XG4gIGZlZVJhdGU/OiBudW1iZXI7XG4gIGZlZU11bHRpcGxpZXI/OiBudW1iZXI7XG4gIG1heEZlZVJhdGU/OiBudW1iZXI7XG4gIG1pbkNvbmZpcm1zPzogbnVtYmVyO1xuICBlbmZvcmNlTWluQ29uZmlybXNGb3JDaGFuZ2U/OiBib29sZWFuO1xuICB0YXJnZXRXYWxsZXRVbnNwZW50cz86IG51bWJlcjtcbiAgbWVzc2FnZT86IHN0cmluZztcbiAgbWluVmFsdWU/OiBudW1iZXIgfCBzdHJpbmc7XG4gIG1heFZhbHVlPzogbnVtYmVyIHwgc3RyaW5nO1xuICBzZXF1ZW5jZUlkPzogc3RyaW5nO1xuICBsYXN0TGVkZ2VyU2VxdWVuY2U/OiBudW1iZXI7XG4gIGxlZGdlclNlcXVlbmNlRGVsdGE/OiBudW1iZXI7XG4gIGdhc1ByaWNlPzogbnVtYmVyO1xuICBub1NwbGl0Q2hhbmdlPzogYm9vbGVhbjtcbiAgdW5zcGVudHM/OiBzdHJpbmdbXTtcbiAgY29tbWVudD86IHN0cmluZztcbiAgb3RwPzogc3RyaW5nO1xuICBjaGFuZ2VBZGRyZXNzPzogc3RyaW5nO1xuICBhbGxvd0V4dGVybmFsQ2hhbmdlQWRkcmVzcz86IGJvb2xlYW47XG4gIGluc3RhbnQ/OiBib29sZWFuO1xuICBtZW1vPzogTWVtbztcbiAgdHJhbnNmZXJJZD86IG51bWJlcjtcbiAgW2luZGV4OiBzdHJpbmddOiB1bmtub3duO1xuICBlaXAxNTU5PzogRUlQMTU1OTtcbiAgZ2FzTGltaXQ/OiBudW1iZXI7XG4gIGN1c3RvZGlhblRyYW5zYWN0aW9uSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmV0Y2hDcm9zc0NoYWluVVRYT3NPcHRpb25zIHtcbiAgc291cmNlQ2hhaW4/OiAnUCcgfCAnQyc7XG59XG5cbmV4cG9ydCB0eXBlIFVuc3BlbnQgPSB7XG4gIG91dHB1dElEOiBudW1iZXI7XG4gIGFtb3VudDogc3RyaW5nOyAvLyBCaWdOdW1iZXIgZW5jb2RlZCBpbiBjYjU4XG4gIHR4aWQ6IHN0cmluZzsgLy8gVHJhbnNhY3Rpb24gSUQgZW5jb2RlZCBpbiBjYjU4XG4gIHRocmVzaG9sZDogbnVtYmVyOyAvLyBUaHJlc2hvbGQgZm9yIG51bWJlciBvZiBhZGRyZXNzZXNcbiAgYWRkcmVzc2VzOiBzdHJpbmdbXTsgLy8gQWRkcmVzc2VzIHVzZWQgZm9yIHVubG9ja2luZyB1dHhvXG4gIG91dHB1dGlkeDogc3RyaW5nOyAvLyBPdXRwdXQgaW5kZXggZW5jb2RlZCBpbiBjYjU4XG4gIGxvY2t0aW1lOiBzdHJpbmc7IC8vIFRpbWUgd2hlbiB1bmxvY2tlZC4gQmlnTnVtYmVyIGVuY29kZWQgaW4gY2I1OFxufTtcblxuZXhwb3J0IGludGVyZmFjZSBDcm9zc0NoYWluVVRYTyB7XG4gIHVuc3BlbnQ6IFVuc3BlbnQ7XG4gIGZyb21XYWxsZXQ6IHN0cmluZztcbiAgdG9XYWxsZXQ6IHN0cmluZztcbiAgdG9BZGRyZXNzOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIFdhbGxldFR5cGUgPSAnYmFja2luZycgfCAnY29sZCcgfCAnY3VzdG9kaWFsJyB8ICdjdXN0b2RpYWxQYWlyZWQnIHwgJ2hvdCcgfCAndHJhZGluZyc7XG5leHBvcnQgdHlwZSBTdWJXYWxsZXRUeXBlID0gJ2Rpc3RyaWJ1dGVkQ3VzdG9keScgfCAnbGlnaHRuaW5nQ3VzdG9keScgfCAnbGlnaHRuaW5nU2VsZkN1c3RvZHknO1xuXG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldERhdGEge1xuICBpZDogc3RyaW5nO1xuICBhcHByb3ZhbHNSZXF1aXJlZDogbnVtYmVyO1xuICBiYWxhbmNlOiBudW1iZXI7XG4gIGNvbmZpcm1lZEJhbGFuY2U6IG51bWJlcjtcbiAgc3BlbmRhYmxlQmFsYW5jZTogbnVtYmVyO1xuICBiYWxhbmNlU3RyaW5nOiBzdHJpbmc7XG4gIGNvbmZpcm1lZEJhbGFuY2VTdHJpbmc6IHN0cmluZztcbiAgc3BlbmRhYmxlQmFsYW5jZVN0cmluZzogc3RyaW5nO1xuICBjb2luOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGtleXM6IHN0cmluZ1tdO1xuICByZWNlaXZlQWRkcmVzcz86IHtcbiAgICBhZGRyZXNzOiBzdHJpbmc7XG4gIH07XG4gIHdhbGxldEZsYWdzPzoge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB2YWx1ZTogc3RyaW5nO1xuICB9W107XG4gIG1pZ3JhdGVkRnJvbT86IHN0cmluZztcbiAgY29pblNwZWNpZmljOiBXYWxsZXRDb2luU3BlY2lmaWM7XG4gIHBlbmRpbmdBcHByb3ZhbHM6IFBlbmRpbmdBcHByb3ZhbERhdGFbXTtcbiAgZW50ZXJwcmlzZTogc3RyaW5nO1xuICBjdXN0b21DaGFuZ2VLZXlTaWduYXR1cmVzPzoge1xuICAgIHVzZXI/OiBzdHJpbmc7XG4gICAgYmFja3VwPzogc3RyaW5nO1xuICAgIGJpdGdvPzogc3RyaW5nO1xuICB9O1xuICBtdWx0aXNpZ1R5cGU6ICdvbmNoYWluJyB8ICd0c3MnO1xuICBtdWx0aXNpZ1R5cGVWZXJzaW9uPzogJ01QQ3YyJztcbiAgdHlwZT86IFdhbGxldFR5cGU7XG4gIHN1YlR5cGU/OiBTdWJXYWxsZXRUeXBlO1xuICB0b2tlbnM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+W107XG4gIG5mdHM/OiB7IFtjb250cmFjdEFkZHJlc3NPclRva2VuOiBzdHJpbmddOiBOZnRCYWxhbmNlIH07XG4gIHVuc3VwcG9ydGVkTmZ0cz86IHsgW2NvbnRyYWN0QWRkcmVzczogc3RyaW5nXTogTmZ0QmFsYW5jZSB9O1xuICB1c2Vycz86IFdhbGxldFVzZXJbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZWNvdmVyVG9rZW5PcHRpb25zIHtcbiAgdG9rZW5Db250cmFjdEFkZHJlc3M/OiBzdHJpbmc7XG4gIHJlY2lwaWVudD86IHN0cmluZztcbiAgYnJvYWRjYXN0PzogYm9vbGVhbjtcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbiAgcHJ2Pzogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgRUlQMTU1OSB7XG4gIG1heFByaW9yaXR5RmVlUGVyR2FzOiBzdHJpbmc7XG4gIG1heEZlZVBlckdhczogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYW5nZUZlZU9wdGlvbnMge1xuICB0eGlkPzogc3RyaW5nO1xuICBmZWU/OiBzdHJpbmc7XG4gIGVpcDE1NTk/OiBFSVAxNTU5O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVBvbGljeVJ1bGVPcHRpb25zIHtcbiAgaWQ/OiBzdHJpbmc7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIGNvbmRpdGlvbj86IHVua25vd247XG4gIGFjdGlvbj86IHVua25vd247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVtb3ZlUG9saWN5UnVsZU9wdGlvbnMge1xuICBpZD86IHN0cmluZztcbiAgbWVzc2FnZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEb3dubG9hZEtleWNhcmRPcHRpb25zIHtcbiAganNQREY/OiBhbnk7XG4gIFFSQ29kZT86IGFueTtcbiAgdXNlcktleWNoYWluPzogS2V5Y2hhaW47XG4gIGJhY2t1cEtleWNoYWluPzogS2V5Y2hhaW47XG4gIGJpdGdvS2V5Y2hhaW4/OiBLZXljaGFpbjtcbiAgcGFzc3BocmFzZT86IHN0cmluZztcbiAgcGFzc2NvZGVFbmNyeXB0aW9uQ29kZT86IHN0cmluZztcbiAgYWN0aXZhdGlvbkNvZGU/OiBzdHJpbmc7XG4gIHdhbGxldEtleUlEPzogc3RyaW5nO1xuICBiYWNrdXBLZXlJRD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGFsbGVuZ2VWZXJpZmllcnMge1xuICB2ZXJpZmllcnM6IHtcbiAgICBhZG1pblNpZ25hdHVyZTogc3RyaW5nO1xuICB9O1xufVxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRFY2RzYUNoYWxsZW5nZXMge1xuICBlbnRlcnByaXNlQ2hhbGxlbmdlOiBTZXJpYWxpemVkTnRpbGRlICYgQ2hhbGxlbmdlVmVyaWZpZXJzO1xuICBiaXRnb0NoYWxsZW5nZTogU2VyaWFsaXplZE50aWxkZSAmIENoYWxsZW5nZVZlcmlmaWVycztcbiAgY3JlYXRlZEJ5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIFNlbmRORlRPcHRpb25zID0gT21pdDxcbiAgU2VuZE1hbnlPcHRpb25zLFxuICAncmVjaXBpZW50cycgfCAnZW5hYmxlVG9rZW5zJyB8ICd0b2tlbk5hbWUnIHwgJ3R4Rm9ybWF0JyB8ICdyZWNlaXZlQWRkcmVzcydcbj47XG5cbmV4cG9ydCB0eXBlIFNlbmRORlRSZXN1bHQgPSB7XG4gIHBlbmRpbmdBcHByb3ZhbDogUGVuZGluZ0FwcHJvdmFsRGF0YTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVdhbGxldCB7XG4gIGJpdGdvOiBCaXRHb0Jhc2U7XG4gIGJhc2VDb2luOiBJQmFzZUNvaW47XG4gIHVybChleHRyYT86IHN0cmluZyk6IHN0cmluZztcbiAgaWQoKTogc3RyaW5nO1xuICBhcHByb3ZhbHNSZXF1aXJlZCgpOiBudW1iZXI7XG4gIGJhbGFuY2UoKTogbnVtYmVyO1xuICBwcmVidWlsZFdoaXRlbGlzdGVkUGFyYW1zKCk6IHN0cmluZ1tdO1xuICBwcmVidWlsZENvbnNvbGlkYXRlQWNjb3VudFBhcmFtcygpOiBzdHJpbmdbXTtcbiAgY29uZmlybWVkQmFsYW5jZSgpOiBudW1iZXI7XG4gIHNwZW5kYWJsZUJhbGFuY2UoKTogbnVtYmVyO1xuICBiYWxhbmNlU3RyaW5nKCk6IHN0cmluZztcbiAgY29uZmlybWVkQmFsYW5jZVN0cmluZygpOiBzdHJpbmc7XG4gIHNwZW5kYWJsZUJhbGFuY2VTdHJpbmcoKTogc3RyaW5nO1xuICBuZnRCYWxhbmNlcygpOiBOZnRCYWxhbmNlW10gfCB1bmRlZmluZWQ7XG4gIHVuc3VwcG9ydGVkTmZ0QmFsYW5jZXMoKTogTmZ0QmFsYW5jZVtdIHwgdW5kZWZpbmVkO1xuICBjb2luKCk6IHN0cmluZztcbiAgdHlwZSgpOiBXYWxsZXRUeXBlO1xuICBzdWJUeXBlKCk6IFN1YldhbGxldFR5cGUgfCB1bmRlZmluZWQ7XG4gIG11bHRpc2lnVHlwZSgpOiAnb25jaGFpbicgfCAndHNzJztcbiAgbXVsdGlzaWdUeXBlVmVyc2lvbigpOiAnTVBDdjInIHwgdW5kZWZpbmVkO1xuICBsYWJlbCgpOiBzdHJpbmc7XG4gIGtleUlkcygpOiBzdHJpbmdbXTtcbiAgcmVjZWl2ZUFkZHJlc3MoKTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBtaWdyYXRlZEZyb20oKTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB0b2tlbkZsdXNoVGhyZXNob2xkcygpOiBhbnk7XG4gIGNvaW5TcGVjaWZpYygpOiBXYWxsZXRDb2luU3BlY2lmaWMgfCB1bmRlZmluZWQ7XG4gIHBlbmRpbmdBcHByb3ZhbHMoKTogSVBlbmRpbmdBcHByb3ZhbFtdO1xuICByZWZyZXNoKHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIG5ldmVyPik6IFByb21pc2U8SVdhbGxldD47XG4gIHRyYW5zYWN0aW9ucyhwYXJhbXM/OiBQYWdpbmF0aW9uT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgZ2V0VHJhbnNhY3Rpb24ocGFyYW1zPzogR2V0VHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICB0cmFuc2ZlcnMocGFyYW1zPzogVHJhbnNmZXJzT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgZ2V0VHJhbnNmZXIocGFyYW1zPzogR2V0VHJhbnNmZXJPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICB0cmFuc2ZlckJ5U2VxdWVuY2VJZChwYXJhbXM/OiBUcmFuc2ZlckJ5U2VxdWVuY2VJZE9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIG1heGltdW1TcGVuZGFibGUocGFyYW1zPzogTWF4aW11bVNwZW5kYWJsZU9wdGlvbnMpOiBQcm9taXNlPE1heGltdW1TcGVuZGFibGU+O1xuICB1bnNwZW50cyhwYXJhbXM/OiBVbnNwZW50c09wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGNvbnNvbGlkYXRlVW5zcGVudHMocGFyYW1zPzogQ29uc29saWRhdGVVbnNwZW50c09wdGlvbnMpOiBQcm9taXNlPHVua25vd24+O1xuICBmYW5vdXRVbnNwZW50cyhwYXJhbXM/OiBGYW5vdXRVbnNwZW50c09wdGlvbnMpOiBQcm9taXNlPHVua25vd24+O1xuICB1cGRhdGVUb2tlbkZsdXNoVGhyZXNob2xkcyh0aHJlc2hvbGRzPzogYW55KTogUHJvbWlzZTxhbnk+O1xuICB1cGRhdGVGb3J3YXJkZXJzKGZvcndhcmRlckZsYWdzPzogYW55KTogUHJvbWlzZTxhbnk+O1xuICBkZXBsb3lGb3J3YXJkZXJzKHBhcmFtczogRGVwbG95Rm9yd2FyZGVyc09wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGZsdXNoRm9yd2FyZGVyVG9rZW4ocGFyYW1zOiBGbHVzaEZvcndhcmRlclRva2VuT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgZ2V0Rm9yd2FyZGVyQmFsYW5jZShwYXJhbXM/OiBGb3J3YXJkZXJCYWxhbmNlT3B0aW9ucyk6IFByb21pc2U8Rm9yd2FyZGVyQmFsYW5jZVtdPjtcbiAgc3dlZXAocGFyYW1zPzogU3dlZXBPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBmcmVlemUocGFyYW1zPzogRnJlZXplT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgdHJhbnNmZXJDb21tZW50KHBhcmFtcz86IFRyYW5zZmVyQ29tbWVudE9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGFkZHJlc3NlcyhwYXJhbXM/OiBBZGRyZXNzZXNPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBnZXRBZGRyZXNzKHBhcmFtcz86IEdldEFkZHJlc3NPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBjcmVhdGVBZGRyZXNzKHBhcmFtcz86IENyZWF0ZUFkZHJlc3NPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICB1cGRhdGVBZGRyZXNzKHBhcmFtcz86IFVwZGF0ZUFkZHJlc3NPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBsaXN0V2ViaG9va3MocGFyYW1zPzogUGFnaW5hdGlvbk9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHNpbXVsYXRlV2ViaG9vayhwYXJhbXM/OiBTaW11bGF0ZVdlYmhvb2tPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBhZGRXZWJob29rKHBhcmFtcz86IE1vZGlmeVdlYmhvb2tPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICByZW1vdmVXZWJob29rKHBhcmFtcz86IE1vZGlmeVdlYmhvb2tPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBnZXRFbmNyeXB0ZWRVc2VyS2V5Y2hhaW4oKTogUHJvbWlzZTxLZXljaGFpbldpdGhFbmNyeXB0ZWRQcnY+O1xuICBnZXRQcnYocGFyYW1zPzogR2V0UHJ2T3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgY3JlYXRlU2hhcmUocGFyYW1zPzogQ3JlYXRlU2hhcmVPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBzaGFyZVdhbGxldChwYXJhbXM/OiBTaGFyZVdhbGxldE9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGNyZWF0ZUJ1bGtLZXlTaGFyZXMocGFyYW1zPzogQnVsa0NyZWF0ZVNoYXJlT3B0aW9uW10pOiBQcm9taXNlPENyZWF0ZUJ1bGtXYWxsZXRTaGFyZUxpc3RSZXNwb25zZT47XG4gIGNyZWF0ZUJ1bGtXYWxsZXRTaGFyZShwYXJhbXM/OiBCdWxrV2FsbGV0U2hhcmVPcHRpb25zKTogUHJvbWlzZTxDcmVhdGVCdWxrV2FsbGV0U2hhcmVMaXN0UmVzcG9uc2U+O1xuICByZW1vdmVVc2VyKHBhcmFtcz86IFJlbW92ZVVzZXJPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBwcmVidWlsZFRyYW5zYWN0aW9uKHBhcmFtcz86IFByZWJ1aWxkVHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0PjtcbiAgc2lnblRyYW5zYWN0aW9uKHBhcmFtcz86IFdhbGxldFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPFNpZ25lZFRyYW5zYWN0aW9uPjtcbiAgZ2V0VXNlclBydihwYXJhbXM/OiBHZXRVc2VyUHJ2T3B0aW9ucyk6IHN0cmluZztcbiAgcHJlYnVpbGRBbmRTaWduVHJhbnNhY3Rpb24ocGFyYW1zPzogUHJlYnVpbGRBbmRTaWduVHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxTaWduZWRUcmFuc2FjdGlvbj47XG4gIHNpZ25BbmRTZW5kVHhSZXF1ZXN0KHBhcmFtcz86IFNpZ25BbmRTZW5kVHhSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8U2lnbmVkVHJhbnNhY3Rpb24+O1xuICBhY2NlbGVyYXRlVHJhbnNhY3Rpb24ocGFyYW1zPzogQWNjZWxlcmF0ZVRyYW5zYWN0aW9uT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgc3VibWl0VHJhbnNhY3Rpb24ocGFyYW1zPzogU3VibWl0VHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBzZW5kKHBhcmFtcz86IFNlbmRPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBzZW5kTWFueShwYXJhbXM/OiBTZW5kTWFueU9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHNlbmROZnQoc2VuZE9wdGlvbnM6IFNlbmRORlRPcHRpb25zLCBzZW5kTmZ0T3B0aW9uczogT21pdDxORlRUcmFuc2Zlck9wdGlvbnMsICdmcm9tQWRkcmVzcyc+KTogUHJvbWlzZTxTZW5kTkZUUmVzdWx0PjtcbiAgcmVjb3ZlclRva2VuKHBhcmFtcz86IFJlY292ZXJUb2tlbk9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGdldEZpcnN0UGVuZGluZ1RyYW5zYWN0aW9uKHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIG5ldmVyPik6IFByb21pc2U8YW55PjtcbiAgY2hhbmdlRmVlKHBhcmFtcz86IENoYW5nZUZlZU9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGdldFBheW1lbnRJbmZvKHBhcmFtcz86IHsgdXJsPzogc3RyaW5nIH0pOiBQcm9taXNlPGFueT47XG4gIHNlbmRQYXltZW50UmVzcG9uc2UocGFyYW1zPzogYW55KTogUHJvbWlzZTxhbnk+O1xuICBjcmVhdGVQb2xpY3lSdWxlKHBhcmFtcz86IENyZWF0ZVBvbGljeVJ1bGVPcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBzZXRQb2xpY3lSdWxlKHBhcmFtcz86IGFueSk6IGFueTtcbiAgcmVtb3ZlUG9saWN5UnVsZShwYXJhbXM/OiBSZW1vdmVQb2xpY3lSdWxlT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgcmVtb3ZlKHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIG5ldmVyPik6IFByb21pc2U8YW55PjtcbiAgdG9KU09OKCk6IFdhbGxldERhdGE7XG4gIHRvVHJhZGluZ0FjY291bnQoKTogSVRyYWRpbmdBY2NvdW50O1xuICB0b1N0YWtpbmdXYWxsZXQoKTogSVN0YWtpbmdXYWxsZXQ7XG4gIHRvR29TdGFraW5nV2FsbGV0KCk6IElHb1N0YWtpbmdXYWxsZXQ7XG4gIHRvQWRkcmVzc0Jvb2soKTogSUFkZHJlc3NCb29rO1xuICBkb3dubG9hZEtleWNhcmQocGFyYW1zPzogRG93bmxvYWRLZXljYXJkT3B0aW9ucyk6IHZvaWQ7XG4gIGJ1aWxkQWNjb3VudENvbnNvbGlkYXRpb25zKHBhcmFtcz86IEJ1aWxkQ29uc29saWRhdGlvblRyYW5zYWN0aW9uT3B0aW9ucyk6IFByb21pc2U8UHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdFtdPjtcbiAgc2VuZEFjY291bnRDb25zb2xpZGF0aW9uKHBhcmFtcz86IFByZWJ1aWxkQW5kU2lnblRyYW5zYWN0aW9uT3B0aW9ucyk6IFByb21pc2U8YW55PjtcbiAgc2VuZEFjY291bnRDb25zb2xpZGF0aW9ucyhwYXJhbXM/OiBCdWlsZENvbnNvbGlkYXRpb25UcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIGJ1aWxkVG9rZW5FbmFibGVtZW50cyhwYXJhbXM/OiBCdWlsZFRva2VuRW5hYmxlbWVudE9wdGlvbnMpOiBQcm9taXNlPFByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHRbXT47XG4gIHNlbmRUb2tlbkVuYWJsZW1lbnQocGFyYW1zPzogUHJlYnVpbGRBbmRTaWduVHJhbnNhY3Rpb25PcHRpb25zKTogUHJvbWlzZTxhbnk+O1xuICBzZW5kVG9rZW5FbmFibGVtZW50cyhwYXJhbXM/OiBCdWlsZFRva2VuRW5hYmxlbWVudE9wdGlvbnMpOiBQcm9taXNlPGFueT47XG4gIHNpZ25NZXNzYWdlKHBhcmFtczogV2FsbGV0U2lnbk1lc3NhZ2VPcHRpb25zKTogUHJvbWlzZTxTaWduZWRNZXNzYWdlPjtcbiAgc2lnblR5cGVkRGF0YShwYXJhbXM6IFdhbGxldFNpZ25UeXBlZERhdGFPcHRpb25zKTogUHJvbWlzZTxTaWduZWRNZXNzYWdlPjtcbiAgZmV0Y2hDcm9zc0NoYWluVVRYT3MocGFyYW1zOiBGZXRjaENyb3NzQ2hhaW5VVFhPc09wdGlvbnMpOiBQcm9taXNlPENyb3NzQ2hhaW5VVFhPW10+O1xuICBnZXRDaGFsbGVuZ2VzRm9yRWNkc2FTaWduaW5nKCk6IFByb21pc2U8V2FsbGV0RWNkc2FDaGFsbGVuZ2VzPjtcbiAgZ2V0TmZ0QmFsYW5jZXMoKTogUHJvbWlzZTxOZnRCYWxhbmNlW10+O1xufVxuIl19
@@ -19,6 +19,7 @@ export interface GetWalletOptions {
19
19
  allTokens?: boolean;
20
20
  reqId?: IRequestTracer;
21
21
  id?: string;
22
+ includeBalance?: boolean;
22
23
  }
23
24
  export interface GenerateBaseMpcWalletOptions {
24
25
  multisigType: 'tss' | 'blsdkg';