@bitgo/utxo-bin 3.2.0 → 3.3.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 (68) hide show
  1. package/dist/src/AddressParser.d.ts +0 -2
  2. package/dist/src/AddressParser.d.ts.map +1 -1
  3. package/dist/src/AddressParser.js +13 -7
  4. package/dist/src/InputParser.d.ts +0 -2
  5. package/dist/src/InputParser.d.ts.map +1 -1
  6. package/dist/src/InputParser.js +1 -1
  7. package/dist/src/OutputParser.d.ts +0 -2
  8. package/dist/src/OutputParser.d.ts.map +1 -1
  9. package/dist/src/OutputParser.js +1 -1
  10. package/dist/src/Parser.d.ts +0 -2
  11. package/dist/src/Parser.d.ts.map +1 -1
  12. package/dist/src/Parser.js +3 -3
  13. package/dist/src/ParserTx.d.ts +0 -2
  14. package/dist/src/ParserTx.d.ts.map +1 -1
  15. package/dist/src/ParserTx.js +4 -5
  16. package/dist/src/ScriptParser.d.ts +0 -2
  17. package/dist/src/ScriptParser.d.ts.map +1 -1
  18. package/dist/src/ScriptParser.js +1 -1
  19. package/dist/src/TxParser.js +1 -1
  20. package/dist/src/args/format.d.ts +1 -1
  21. package/dist/src/args/format.js +1 -1
  22. package/dist/src/args/parseNetwork.d.ts +3 -0
  23. package/dist/src/args/parseNetwork.d.ts.map +1 -1
  24. package/dist/src/args/parseNetwork.js +47 -6
  25. package/dist/src/args/parseString.d.ts +0 -2
  26. package/dist/src/args/parseString.d.ts.map +1 -1
  27. package/dist/src/args/parseString.js +5 -5
  28. package/dist/src/args/walletKeys.js +4 -4
  29. package/dist/src/bip32.js +2 -3
  30. package/dist/src/commands/cmdAddress/cmdGenerate.js +1 -1
  31. package/dist/src/commands/cmdAddress/cmdParse.d.ts.map +1 -1
  32. package/dist/src/commands/cmdAddress/cmdParse.js +3 -3
  33. package/dist/src/commands/cmdAddress/index.js +2 -2
  34. package/dist/src/commands/cmdParseScript.d.ts.map +1 -1
  35. package/dist/src/commands/cmdParseScript.js +3 -3
  36. package/dist/src/commands/cmdParseTx.d.ts.map +1 -1
  37. package/dist/src/commands/cmdParseTx.js +3 -3
  38. package/dist/src/commands/cmdPsbt/cmdAddDescriptorInput.js +1 -1
  39. package/dist/src/commands/cmdPsbt/cmdAddOutput.js +1 -1
  40. package/dist/src/commands/cmdPsbt/cmdCreate.js +1 -1
  41. package/dist/src/commands/cmdPsbt/cmdFinalize.js +3 -3
  42. package/dist/src/commands/cmdPsbt/index.d.ts.map +1 -1
  43. package/dist/src/commands/cmdPsbt/withPsbt.d.ts +1 -3
  44. package/dist/src/commands/cmdPsbt/withPsbt.d.ts.map +1 -1
  45. package/dist/src/commands/cmdPsbt/withPsbt.js +5 -5
  46. package/dist/src/commands/cmdPsbt/wrap.d.ts +0 -2
  47. package/dist/src/commands/cmdPsbt/wrap.d.ts.map +1 -1
  48. package/dist/src/commands/cmdPsbt/wrap.js +3 -4
  49. package/dist/src/commands/formatString.js +2 -3
  50. package/dist/src/ecdsa.d.ts +0 -2
  51. package/dist/src/ecdsa.d.ts.map +1 -1
  52. package/dist/src/ecdsa.js +2 -3
  53. package/dist/src/fetch.js +7 -8
  54. package/dist/src/format.js +3 -4
  55. package/dist/src/generateAddress.js +12 -13
  56. package/dist/src/hollowSegwitSpend.js +3 -4
  57. package/dist/src/parseUnknown.js +2 -3
  58. package/dist/test/args/stringToBuffer.js +1 -1
  59. package/dist/test/bip32.js +1 -1
  60. package/dist/test/bip32.util.js +3 -4
  61. package/dist/test/fixtures.js +5 -6
  62. package/dist/test/generateAddress.js +1 -1
  63. package/dist/test/parseAddress.d.ts.map +1 -1
  64. package/dist/test/parseAddress.js +9 -7
  65. package/dist/test/parseScript.js +1 -1
  66. package/dist/test/parseTransaction.js +1 -1
  67. package/dist/tsconfig.tsbuildinfo +1 -1
  68. package/package.json +6 -6
@@ -1,6 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateDescriptorAddress = exports.formatDescriptorAddress = exports.getDescriptorAddressPlaceholderDescription = exports.generateFixedScriptAddress = exports.parseIndexRange = exports.getRange = exports.formatFixedScriptAddress = exports.formatAddressWithFormatString = exports.formatAddressTree = exports.getFixedScriptAddressPlaceholderDescription = exports.getAsPlaceholderDescription = void 0;
3
+ exports.getAsPlaceholderDescription = getAsPlaceholderDescription;
4
+ exports.getFixedScriptAddressPlaceholderDescription = getFixedScriptAddressPlaceholderDescription;
5
+ exports.formatAddressTree = formatAddressTree;
6
+ exports.formatAddressWithFormatString = formatAddressWithFormatString;
7
+ exports.formatFixedScriptAddress = formatFixedScriptAddress;
8
+ exports.getRange = getRange;
9
+ exports.parseIndexRange = parseIndexRange;
10
+ exports.generateFixedScriptAddress = generateFixedScriptAddress;
11
+ exports.getDescriptorAddressPlaceholderDescription = getDescriptorAddressPlaceholderDescription;
12
+ exports.formatDescriptorAddress = formatDescriptorAddress;
13
+ exports.generateDescriptorAddress = generateDescriptorAddress;
4
14
  const assert = require("assert");
5
15
  const utxolib = require("@bitgo/utxo-lib");
6
16
  const wasm_miniscript_1 = require("@bitgo/wasm-miniscript");
@@ -34,11 +44,9 @@ function getAsPlaceholderDescription(v) {
34
44
  .map(([placeholder, prop]) => `${placeholder} -> ${prop}`)
35
45
  .join('\n');
36
46
  }
37
- exports.getAsPlaceholderDescription = getAsPlaceholderDescription;
38
47
  function getFixedScriptAddressPlaceholderDescription() {
39
48
  return getAsPlaceholderDescription(fixedScriptPlaceholders);
40
49
  }
41
- exports.getFixedScriptAddressPlaceholderDescription = getFixedScriptAddressPlaceholderDescription;
42
50
  function getAddressProperties(keys, chain, index, network) {
43
51
  var _a, _b;
44
52
  const [userPath, backupPath, bitgoPath] = keys.triple.map((k) => keys.getDerivationPath(k, chain, index));
@@ -65,7 +73,6 @@ function formatAddressTree(props) {
65
73
  const parser = new Parser_1.Parser();
66
74
  return (0, format_1.formatTree)((0, parseUnknown_1.parseUnknown)(parser, 'address', props));
67
75
  }
68
- exports.formatAddressTree = formatAddressTree;
69
76
  function formatAddressWithFormatString(props, placeholders, format) {
70
77
  // replace all patterns with a % prefix from format string with the corresponding property
71
78
  // e.g. %p0 -> userPath, %k1 -> backupKey, etc.
@@ -77,15 +84,12 @@ function formatAddressWithFormatString(props, placeholders, format) {
77
84
  return match;
78
85
  });
79
86
  }
80
- exports.formatAddressWithFormatString = formatAddressWithFormatString;
81
87
  function formatFixedScriptAddress(props, format) {
82
88
  return formatAddressWithFormatString(props, fixedScriptPlaceholders, format);
83
89
  }
84
- exports.formatFixedScriptAddress = formatFixedScriptAddress;
85
90
  function getRange(start, end) {
86
91
  return Array.from({ length: end - start + 1 }, (_, i) => start + i);
87
92
  }
88
- exports.getRange = getRange;
89
93
  function parseIndexRange(ranges) {
90
94
  return ranges.flatMap((range) => {
91
95
  const [start, end] = range.split('-');
@@ -95,7 +99,6 @@ function parseIndexRange(ranges) {
95
99
  return [Number(start)];
96
100
  });
97
101
  }
98
- exports.parseIndexRange = parseIndexRange;
99
102
  function* generateFixedScriptAddress(argv) {
100
103
  var _a, _b;
101
104
  const rootXpubs = (0, args_1.getRootWalletKeys)(argv);
@@ -108,7 +111,6 @@ function* generateFixedScriptAddress(argv) {
108
111
  }
109
112
  }
110
113
  }
111
- exports.generateFixedScriptAddress = generateFixedScriptAddress;
112
114
  const descriptorAddressPlaceholders = {
113
115
  '%d': 'descriptor',
114
116
  '%i': 'index',
@@ -119,11 +121,9 @@ const descriptorAddressPlaceholders = {
119
121
  function getDescriptorAddressPlaceholderDescription() {
120
122
  return getAsPlaceholderDescription(descriptorAddressPlaceholders);
121
123
  }
122
- exports.getDescriptorAddressPlaceholderDescription = getDescriptorAddressPlaceholderDescription;
123
124
  function formatDescriptorAddress(props, format) {
124
125
  return formatAddressWithFormatString(props, descriptorAddressPlaceholders, format);
125
126
  }
126
- exports.formatDescriptorAddress = formatDescriptorAddress;
127
127
  function* generateDescriptorAddress(argv) {
128
128
  const descriptor = wasm_miniscript_1.Descriptor.fromString(argv.descriptor, 'derivable');
129
129
  for (const i of argv.index) {
@@ -140,5 +140,4 @@ function* generateDescriptorAddress(argv) {
140
140
  };
141
141
  }
142
142
  }
143
- exports.generateDescriptorAddress = generateDescriptorAddress;
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVBZGRyZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dlbmVyYXRlQWRkcmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpQ0FBaUM7QUFFakMsMkNBQTJDO0FBQzNDLDREQUFvRDtBQUVwRCxxQ0FBa0M7QUFDbEMsaURBQThDO0FBQzlDLHFDQUFzQztBQUN0QyxpQ0FBdUQ7QUFFdkQsU0FBUyxvQkFBb0I7SUFDM0IsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNO0lBQ3BDLHdEQUF3RDtJQUN4RCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxNQUFNLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxZQUFZLENBQzlHLENBQUM7QUFDSixDQUFDO0FBa0JELE1BQU0sdUJBQXVCLEdBQUc7SUFDOUIsSUFBSSxFQUFFLE9BQU87SUFDYixJQUFJLEVBQUUsT0FBTztJQUNiLElBQUksRUFBRSxVQUFVO0lBQ2hCLElBQUksRUFBRSxNQUFNO0lBQ1osS0FBSyxFQUFFLFVBQVU7SUFDakIsS0FBSyxFQUFFLFlBQVk7SUFDbkIsS0FBSyxFQUFFLFdBQVc7SUFDbEIsS0FBSyxFQUFFLFNBQVM7SUFDaEIsS0FBSyxFQUFFLFdBQVc7SUFDbEIsS0FBSyxFQUFFLFVBQVU7SUFDakIsSUFBSSxFQUFFLGNBQWM7SUFDcEIsSUFBSSxFQUFFLGNBQWM7SUFDcEIsSUFBSSxFQUFFLGVBQWU7SUFDckIsSUFBSSxFQUFFLFNBQVM7Q0FDUCxDQUFDO0FBRVgsU0FBZ0IsMkJBQTJCLENBQUMsQ0FBeUI7SUFDbkUsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUNyQixHQUFHLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsRUFBRSxF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RUFBRSxDQUFDO1lBQ1IsT0FBTztZQUNQLGNBQWMsRUFBRSxjQUFjLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztZQUM5QyxZQUFZLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7U0FDM0MsQ0FBQztLQUNIO0FBQ0gsQ0FBQztBQXBCRCw4REFvQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28vdXR4by1saWInO1xuaW1wb3J0IHsgRGVzY3JpcHRvciB9IGZyb20gJ0BiaXRnby93YXNtLW1pbmlzY3JpcHQnO1xuXG5pbXBvcnQgeyBQYXJzZXIgfSBmcm9tICcuL1BhcnNlcic7XG5pbXBvcnQgeyBwYXJzZVVua25vd24gfSBmcm9tICcuL3BhcnNlVW5rbm93bic7XG5pbXBvcnQgeyBmb3JtYXRUcmVlIH0gZnJvbSAnLi9mb3JtYXQnO1xuaW1wb3J0IHsgS2V5T3B0aW9ucywgZ2V0Um9vdFdhbGxldEtleXMgfSBmcm9tICcuL2FyZ3MnO1xuXG5mdW5jdGlvbiBnZXREZWZhdWx0Q2hhaW5Db2RlcygpOiBudW1iZXJbXSB7XG4gIHJldHVybiB1dHhvbGliLmJpdGdvLmNoYWluQ29kZXMuZmlsdGVyKFxuICAgIC8vIHRoZXNlIGFyZSByYXJlIGFuZCBzaG93IGFuIGFubm95aW5nIHdhcm5pbmcgaW4gc3RkZXJyXG4gICAgKGMpID0+IHV0eG9saWIuYml0Z28uc2NyaXB0VHlwZUZvckNoYWluKGMpICE9PSAncDJ0cicgJiYgdXR4b2xpYi5iaXRnby5zY3JpcHRUeXBlRm9yQ2hhaW4oYykgIT09ICdwMnRyTXVzaWcyJ1xuICApO1xufVxuXG50eXBlIEZpeGVkU2NyaXB0QWRkcmVzc1Byb3BlcnRpZXMgPSB7XG4gIGNoYWluOiB1dHhvbGliLmJpdGdvLkNoYWluQ29kZTtcbiAgaW5kZXg6IG51bWJlcjtcbiAgdHlwZTogdXR4b2xpYi5iaXRnby5vdXRwdXRTY3JpcHRzLlNjcmlwdFR5cGU7XG4gIHVzZXJQYXRoOiBzdHJpbmc7XG4gIGJhY2t1cFBhdGg6IHN0cmluZztcbiAgYml0Z29QYXRoOiBzdHJpbmc7XG4gIHVzZXJLZXk6IHN0cmluZztcbiAgYmFja3VwS2V5OiBzdHJpbmc7XG4gIGJpdGdvS2V5OiBzdHJpbmc7XG4gIHJlZGVlbVNjcmlwdD86IHN0cmluZztcbiAgd2l0bmVzc1NjcmlwdD86IHN0cmluZztcbiAgc2NyaXB0UHViS2V5OiBzdHJpbmc7XG4gIGFkZHJlc3M6IHN0cmluZztcbn07XG5cbmNvbnN0IGZpeGVkU2NyaXB0UGxhY2Vob2xkZXJzID0ge1xuICAnJWMnOiAnY2hhaW4nLFxuICAnJWknOiAnaW5kZXgnLFxuICAnJXAnOiAndXNlclBhdGgnLFxuICAnJXQnOiAndHlwZScsXG4gICclcDAnOiAndXNlclBhdGgnLFxuICAnJXAxJzogJ2JhY2t1cFBhdGgnLFxuICAnJXAyJzogJ2JpdGdvUGF0aCcsXG4gICclazAnOiAndXNlcktleScsXG4gICclazEnOiAnYmFja3VwS2V5JyxcbiAgJyVrMic6ICdiaXRnb0tleScsXG4gICclcyc6ICdzY3JpcHRQdWJLZXknLFxuICAnJXInOiAncmVkZWVtU2NyaXB0JyxcbiAgJyV3JzogJ3dpdG5lc3NTY3JpcHQnLFxuICAnJWEnOiAnYWRkcmVzcycsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXNQbGFjZWhvbGRlckRlc2NyaXB0aW9uKHY6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pOiBzdHJpbmcge1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXModilcbiAgICAubWFwKChbcGxhY2Vob2xkZXIsIHByb3BdKSA9PiBgJHtwbGFjZWhvbGRlcn0gLT4gJHtwcm9wfWApXG4gICAgLmpvaW4oJ1xcbicpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rml4ZWRTY3JpcHRBZGRyZXNzUGxhY2Vob2xkZXJEZXNjcmlwdGlvbigpOiBzdHJpbmcge1xuICByZXR1cm4gZ2V0QXNQbGFjZWhvbGRlckRlc2NyaXB0aW9uKGZpeGVkU2NyaXB0UGxhY2Vob2xkZXJzKTtcbn1cblxuZnVuY3Rpb24gZ2V0QWRkcmVzc1Byb3BlcnRpZXMoXG4gIGtleXM6IHV0eG9saWIuYml0Z28uUm9vdFdhbGxldEtleXMsXG4gIGNoYWluOiB1dHhvbGliLmJpdGdvLkNoYWluQ29kZSxcbiAgaW5kZXg6IG51bWJlcixcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrXG4pOiBGaXhlZFNjcmlwdEFkZHJlc3NQcm9wZXJ0aWVzIHtcbiAgY29uc3QgW3VzZXJQYXRoLCBiYWNrdXBQYXRoLCBiaXRnb1BhdGhdID0ga2V5cy50cmlwbGUubWFwKChrKSA9PiBrZXlzLmdldERlcml2YXRpb25QYXRoKGssIGNoYWluLCBpbmRleCkpO1xuICBjb25zdCBzY3JpcHRzID0gdXR4b2xpYi5iaXRnby5nZXRXYWxsZXRPdXRwdXRTY3JpcHRzKGtleXMsIGNoYWluLCBpbmRleCk7XG4gIGNvbnN0IFt1c2VyS2V5LCBiYWNrdXBLZXksIGJpdGdvS2V5XSA9IGtleXMudHJpcGxlLm1hcCgoaykgPT4gay5kZXJpdmVQYXRoKHVzZXJQYXRoKS5wdWJsaWNLZXkudG9TdHJpbmcoJ2hleCcpKTtcbiAgY29uc3QgYWRkcmVzcyA9IHV0eG9saWIuYWRkcmVzcy5mcm9tT3V0cHV0U2NyaXB0KHNjcmlwdHMuc2NyaXB0UHViS2V5LCBuZXR3b3JrKTtcbiAgcmV0dXJuIHtcbiAgICBjaGFpbixcbiAgICBpbmRleCxcbiAgICB0eXBlOiB1dHhvbGliLmJpdGdvLnNjcmlwdFR5cGVGb3JDaGFpbihjaGFpbiksXG4gICAgdXNlclBhdGgsXG4gICAgYmFja3VwUGF0aCxcbiAgICBiaXRnb1BhdGgsXG4gICAgdXNlcktleSxcbiAgICBiYWNrdXBLZXksXG4gICAgYml0Z29LZXksXG4gICAgc2NyaXB0UHViS2V5OiBzY3JpcHRzLnNjcmlwdFB1YktleS50b1N0cmluZygnaGV4JyksXG4gICAgcmVkZWVtU2NyaXB0OiBzY3JpcHRzLnJlZGVlbVNjcmlwdD8udG9TdHJpbmcoJ2hleCcpLFxuICAgIHdpdG5lc3NTY3JpcHQ6IHNjcmlwdHMud2l0bmVzc1NjcmlwdD8udG9TdHJpbmcoJ2hleCcpLFxuICAgIGFkZHJlc3MsXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRBZGRyZXNzVHJlZShwcm9wczogRml4ZWRTY3JpcHRBZGRyZXNzUHJvcGVydGllcyB8IERlc2NyaXB0b3JBZGRyZXNzUHJvcGVydGllcyk6IHN0cmluZyB7XG4gIGNvbnN0IHBhcnNlciA9IG5ldyBQYXJzZXIoKTtcbiAgcmV0dXJuIGZvcm1hdFRyZWUocGFyc2VVbmtub3duKHBhcnNlciwgJ2FkZHJlc3MnLCBwcm9wcykpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0QWRkcmVzc1dpdGhGb3JtYXRTdHJpbmcoXG4gIHByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgcGxhY2Vob2xkZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LFxuICBmb3JtYXQ6IHN0cmluZ1xuKTogc3RyaW5nIHtcbiAgLy8gcmVwbGFjZSBhbGwgcGF0dGVybnMgd2l0aCBhICUgcHJlZml4IGZyb20gZm9ybWF0IHN0cmluZyB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHByb3BlcnR5XG4gIC8vIGUuZy4gJXAwIC0+IHVzZXJQYXRoLCAlazEgLT4gYmFja3VwS2V5LCBldGMuXG4gIHJldHVybiBmb3JtYXQucmVwbGFjZSgvJVthLXowLTldKy9naSwgKG1hdGNoKSA9PiB7XG4gICAgaWYgKG1hdGNoIGluIHBsYWNlaG9sZGVycykge1xuICAgICAgY29uc3QgcHJvcCA9IHBsYWNlaG9sZGVyc1ttYXRjaF07XG4gICAgICByZXR1cm4gU3RyaW5nKHByb3BzW3Byb3BdKTtcbiAgICB9XG4gICAgcmV0dXJuIG1hdGNoO1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEZpeGVkU2NyaXB0QWRkcmVzcyhwcm9wczogRml4ZWRTY3JpcHRBZGRyZXNzUHJvcGVydGllcywgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gZm9ybWF0QWRkcmVzc1dpdGhGb3JtYXRTdHJpbmcocHJvcHMsIGZpeGVkU2NyaXB0UGxhY2Vob2xkZXJzLCBmb3JtYXQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmFuZ2Uoc3RhcnQ6IG51bWJlciwgZW5kOiBudW1iZXIpOiBudW1iZXJbXSB7XG4gIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoOiBlbmQgLSBzdGFydCArIDEgfSwgKF8sIGkpID0+IHN0YXJ0ICsgaSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUluZGV4UmFuZ2UocmFuZ2VzOiBzdHJpbmdbXSk6IG51bWJlcltdIHtcbiAgcmV0dXJuIHJhbmdlcy5mbGF0TWFwKChyYW5nZSkgPT4ge1xuICAgIGNvbnN0IFtzdGFydCwgZW5kXSA9IHJhbmdlLnNwbGl0KCctJyk7XG4gICAgaWYgKGVuZCkge1xuICAgICAgcmV0dXJuIGdldFJhbmdlKE51bWJlcihzdGFydCksIE51bWJlcihlbmQpKTtcbiAgICB9XG4gICAgcmV0dXJuIFtOdW1iZXIoc3RhcnQpXTtcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiogZ2VuZXJhdGVGaXhlZFNjcmlwdEFkZHJlc3MoXG4gIGFyZ3Y6IEtleU9wdGlvbnMgJiB7XG4gICAgbmV0d29yaz86IHV0eG9saWIuTmV0d29yaztcbiAgICBjaGFpbj86IG51bWJlcltdO1xuICAgIGZvcm1hdDogc3RyaW5nO1xuICAgIGluZGV4OiBudW1iZXJbXTtcbiAgfVxuKTogR2VuZXJhdG9yPEZpeGVkU2NyaXB0QWRkcmVzc1Byb3BlcnRpZXM+IHtcbiAgY29uc3Qgcm9vdFhwdWJzID0gZ2V0Um9vdFdhbGxldEtleXMoYXJndik7XG4gIGNvbnN0IGNoYWlucyA9IGFyZ3YuY2hhaW4gPz8gZ2V0RGVmYXVsdENoYWluQ29kZXMoKTtcbiAgZm9yIChjb25zdCBpIG9mIGFyZ3YuaW5kZXgpIHtcbiAgICBmb3IgKGNvbnN0IGNoYWluIG9mIGNoYWlucykge1xuICAgICAgYXNzZXJ0KHV0eG9saWIuYml0Z28uaXNDaGFpbkNvZGUoY2hhaW4pKTtcbiAgICAgIC8vIHlpZWxkIGZvcm1hdEFkZHJlc3Mocm9vdFhwdWJzLCBjaGFpbiwgaSwgYXJndi5uZXR3b3JrID8/IHV0eG9saWIubmV0d29ya3MuYml0Y29pbiwgYXJndi5mb3JtYXQpO1xuICAgICAgeWllbGQgZ2V0QWRkcmVzc1Byb3BlcnRpZXMocm9vdFhwdWJzLCBjaGFpbiwgaSwgYXJndi5uZXR3b3JrID8/IHV0eG9saWIubmV0d29ya3MuYml0Y29pbik7XG4gICAgfVxuICB9XG59XG5cbnR5cGUgRGVzY3JpcHRvckFkZHJlc3NQcm9wZXJ0aWVzID0ge1xuICBkZXNjcmlwdG9yOiBzdHJpbmc7XG4gIGluZGV4OiBudW1iZXI7XG4gIGV4cGxpY2l0U2NyaXB0OiBzdHJpbmc7XG4gIHNjcmlwdFB1YktleTogc3RyaW5nO1xuICBhZGRyZXNzOiBzdHJpbmc7XG59O1xuXG5jb25zdCBkZXNjcmlwdG9yQWRkcmVzc1BsYWNlaG9sZGVycyA9IHtcbiAgJyVkJzogJ2Rlc2NyaXB0b3InLFxuICAnJWknOiAnaW5kZXgnLFxuICAnJWUnOiAnZXhwbGljaXRTY3JpcHQnLFxuICAnJXMnOiAnc2NyaXB0UHViS2V5JyxcbiAgJyVhJzogJ2FkZHJlc3MnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlc2NyaXB0b3JBZGRyZXNzUGxhY2Vob2xkZXJEZXNjcmlwdGlvbigpOiBzdHJpbmcge1xuICByZXR1cm4gZ2V0QXNQbGFjZWhvbGRlckRlc2NyaXB0aW9uKGRlc2NyaXB0b3JBZGRyZXNzUGxhY2Vob2xkZXJzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdERlc2NyaXB0b3JBZGRyZXNzKHByb3BzOiBEZXNjcmlwdG9yQWRkcmVzc1Byb3BlcnRpZXMsIGZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGZvcm1hdEFkZHJlc3NXaXRoRm9ybWF0U3RyaW5nKHByb3BzLCBkZXNjcmlwdG9yQWRkcmVzc1BsYWNlaG9sZGVycywgZm9ybWF0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uKiBnZW5lcmF0ZURlc2NyaXB0b3JBZGRyZXNzKGFyZ3Y6IHtcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrO1xuICBkZXNjcmlwdG9yOiBzdHJpbmc7XG4gIGZvcm1hdDogc3RyaW5nO1xuICBpbmRleDogbnVtYmVyW107XG59KTogR2VuZXJhdG9yPERlc2NyaXB0b3JBZGRyZXNzUHJvcGVydGllcz4ge1xuICBjb25zdCBkZXNjcmlwdG9yID0gRGVzY3JpcHRvci5mcm9tU3RyaW5nKGFyZ3YuZGVzY3JpcHRvciwgJ2Rlcml2YWJsZScpO1xuICBmb3IgKGNvbnN0IGkgb2YgYXJndi5pbmRleCkge1xuICAgIGNvbnN0IGRlcml2ZWQgPSBkZXNjcmlwdG9yLmF0RGVyaXZhdGlvbkluZGV4KGkpO1xuICAgIGNvbnN0IGV4cGxpY2l0U2NyaXB0ID0gQnVmZmVyLmZyb20oZGVyaXZlZC5lbmNvZGUoKSk7XG4gICAgY29uc3Qgc2NyaXB0UHViS2V5ID0gQnVmZmVyLmZyb20oZGVyaXZlZC5zY3JpcHRQdWJrZXkoKSk7XG4gICAgY29uc3QgYWRkcmVzcyA9IHV0eG9saWIuYWRkcmVzcy5mcm9tT3V0cHV0U2NyaXB0KHNjcmlwdFB1YktleSwgYXJndi5uZXR3b3JrKTtcbiAgICB5aWVsZCB7XG4gICAgICBkZXNjcmlwdG9yOiBkZXJpdmVkLnRvU3RyaW5nKCksXG4gICAgICBpbmRleDogaSxcbiAgICAgIGFkZHJlc3MsXG4gICAgICBleHBsaWNpdFNjcmlwdDogZXhwbGljaXRTY3JpcHQudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgc2NyaXB0UHViS2V5OiBzY3JpcHRQdWJLZXkudG9TdHJpbmcoJ2hleCcpLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVBZGRyZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dlbmVyYXRlQWRkcmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWtEQSxrRUFJQztBQUVELGtHQUVDO0FBNkJELDhDQUdDO0FBRUQsc0VBY0M7QUFFRCw0REFFQztBQUVELDRCQUVDO0FBRUQsMENBUUM7QUFFRCxnRUFpQkM7QUFrQkQsZ0dBRUM7QUFFRCwwREFFQztBQUVELDhEQW9CQztBQTdMRCxpQ0FBaUM7QUFFakMsMkNBQTJDO0FBQzNDLDREQUFvRDtBQUVwRCxxQ0FBa0M7QUFDbEMsaURBQThDO0FBQzlDLHFDQUFzQztBQUN0QyxpQ0FBdUQ7QUFFdkQsU0FBUyxvQkFBb0I7SUFDM0IsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNO0lBQ3BDLHdEQUF3RDtJQUN4RCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxNQUFNLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxZQUFZLENBQzlHLENBQUM7QUFDSixDQUFDO0FBa0JELE1BQU0sdUJBQXVCLEdBQUc7SUFDOUIsSUFBSSxFQUFFLE9BQU87SUFDYixJQUFJLEVBQUUsT0FBTztJQUNiLElBQUksRUFBRSxVQUFVO0lBQ2hCLElBQUksRUFBRSxNQUFNO0lBQ1osS0FBSyxFQUFFLFVBQVU7SUFDakIsS0FBSyxFQUFFLFlBQVk7SUFDbkIsS0FBSyxFQUFFLFdBQVc7SUFDbEIsS0FBSyxFQUFFLFNBQVM7SUFDaEIsS0FBSyxFQUFFLFdBQVc7SUFDbEIsS0FBSyxFQUFFLFVBQVU7SUFDakIsSUFBSSxFQUFFLGNBQWM7SUFDcEIsSUFBSSxFQUFFLGNBQWM7SUFDcEIsSUFBSSxFQUFFLGVBQWU7SUFDckIsSUFBSSxFQUFFLFNBQVM7Q0FDUCxD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QztRQUM3RSxNQUFNO1lBQ0osVUFBVSxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDOUIsS0FBSyxFQUFFLENBQUM7WUFDUixPQUFPO1lBQ1AsY0FBYyxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQzlDLFlBQVksRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztTQUMzQyxDQUFDO0lBQ0osQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28vdXR4by1saWInO1xuaW1wb3J0IHsgRGVzY3JpcHRvciB9IGZyb20gJ0BiaXRnby93YXNtLW1pbmlzY3JpcHQnO1xuXG5pbXBvcnQgeyBQYXJzZXIgfSBmcm9tICcuL1BhcnNlcic7XG5pbXBvcnQgeyBwYXJzZVVua25vd24gfSBmcm9tICcuL3BhcnNlVW5rbm93bic7XG5pbXBvcnQgeyBmb3JtYXRUcmVlIH0gZnJvbSAnLi9mb3JtYXQnO1xuaW1wb3J0IHsgS2V5T3B0aW9ucywgZ2V0Um9vdFdhbGxldEtleXMgfSBmcm9tICcuL2FyZ3MnO1xuXG5mdW5jdGlvbiBnZXREZWZhdWx0Q2hhaW5Db2RlcygpOiBudW1iZXJbXSB7XG4gIHJldHVybiB1dHhvbGliLmJpdGdvLmNoYWluQ29kZXMuZmlsdGVyKFxuICAgIC8vIHRoZXNlIGFyZSByYXJlIGFuZCBzaG93IGFuIGFubm95aW5nIHdhcm5pbmcgaW4gc3RkZXJyXG4gICAgKGMpID0+IHV0eG9saWIuYml0Z28uc2NyaXB0VHlwZUZvckNoYWluKGMpICE9PSAncDJ0cicgJiYgdXR4b2xpYi5iaXRnby5zY3JpcHRUeXBlRm9yQ2hhaW4oYykgIT09ICdwMnRyTXVzaWcyJ1xuICApO1xufVxuXG50eXBlIEZpeGVkU2NyaXB0QWRkcmVzc1Byb3BlcnRpZXMgPSB7XG4gIGNoYWluOiB1dHhvbGliLmJpdGdvLkNoYWluQ29kZTtcbiAgaW5kZXg6IG51bWJlcjtcbiAgdHlwZTogdXR4b2xpYi5iaXRnby5vdXRwdXRTY3JpcHRzLlNjcmlwdFR5cGU7XG4gIHVzZXJQYXRoOiBzdHJpbmc7XG4gIGJhY2t1cFBhdGg6IHN0cmluZztcbiAgYml0Z29QYXRoOiBzdHJpbmc7XG4gIHVzZXJLZXk6IHN0cmluZztcbiAgYmFja3VwS2V5OiBzdHJpbmc7XG4gIGJpdGdvS2V5OiBzdHJpbmc7XG4gIHJlZGVlbVNjcmlwdD86IHN0cmluZztcbiAgd2l0bmVzc1NjcmlwdD86IHN0cmluZztcbiAgc2NyaXB0UHViS2V5OiBzdHJpbmc7XG4gIGFkZHJlc3M6IHN0cmluZztcbn07XG5cbmNvbnN0IGZpeGVkU2NyaXB0UGxhY2Vob2xkZXJzID0ge1xuICAnJWMnOiAnY2hhaW4nLFxuICAnJWknOiAnaW5kZXgnLFxuICAnJXAnOiAndXNlclBhdGgnLFxuICAnJXQnOiAndHlwZScsXG4gICclcDAnOiAndXNlclBhdGgnLFxuICAnJXAxJzogJ2JhY2t1cFBhdGgnLFxuICAnJXAyJzogJ2JpdGdvUGF0aCcsXG4gICclazAnOiAndXNlcktleScsXG4gICclazEnOiAnYmFja3VwS2V5JyxcbiAgJyVrMic6ICdiaXRnb0tleScsXG4gICclcyc6ICdzY3JpcHRQdWJLZXknLFxuICAnJXInOiAncmVkZWVtU2NyaXB0JyxcbiAgJyV3JzogJ3dpdG5lc3NTY3JpcHQnLFxuICAnJWEnOiAnYWRkcmVzcycsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXNQbGFjZWhvbGRlckRlc2NyaXB0aW9uKHY6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pOiBzdHJpbmcge1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXModilcbiAgICAubWFwKChbcGxhY2Vob2xkZXIsIHByb3BdKSA9PiBgJHtwbGFjZWhvbGRlcn0gLT4gJHtwcm9wfWApXG4gICAgLmpvaW4oJ1xcbicpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rml4ZWRTY3JpcHRBZGRyZXNzUGxhY2Vob2xkZXJEZXNjcmlwdGlvbigpOiBzdHJpbmcge1xuICByZXR1cm4gZ2V0QXNQbGFjZWhvbGRlckRlc2NyaXB0aW9uKGZpeGVkU2NyaXB0UGxhY2Vob2xkZXJzKTtcbn1cblxuZnVuY3Rpb24gZ2V0QWRkcmVzc1Byb3BlcnRpZXMoXG4gIGtleXM6IHV0eG9saWIuYml0Z28uUm9vdFdhbGxldEtleXMsXG4gIGNoYWluOiB1dHhvbGliLmJpdGdvLkNoYWluQ29kZSxcbiAgaW5kZXg6IG51bWJlcixcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrXG4pOiBGaXhlZFNjcmlwdEFkZHJlc3NQcm9wZXJ0aWVzIHtcbiAgY29uc3QgW3VzZXJQYXRoLCBiYWNrdXBQYXRoLCBiaXRnb1BhdGhdID0ga2V5cy50cmlwbGUubWFwKChrKSA9PiBrZXlzLmdldERlcml2YXRpb25QYXRoKGssIGNoYWluLCBpbmRleCkpO1xuICBjb25zdCBzY3JpcHRzID0gdXR4b2xpYi5iaXRnby5nZXRXYWxsZXRPdXRwdXRTY3JpcHRzKGtleXMsIGNoYWluLCBpbmRleCk7XG4gIGNvbnN0IFt1c2VyS2V5LCBiYWNrdXBLZXksIGJpdGdvS2V5XSA9IGtleXMudHJpcGxlLm1hcCgoaykgPT4gay5kZXJpdmVQYXRoKHVzZXJQYXRoKS5wdWJsaWNLZXkudG9TdHJpbmcoJ2hleCcpKTtcbiAgY29uc3QgYWRkcmVzcyA9IHV0eG9saWIuYWRkcmVzcy5mcm9tT3V0cHV0U2NyaXB0KHNjcmlwdHMuc2NyaXB0UHViS2V5LCBuZXR3b3JrKTtcbiAgcmV0dXJuIHtcbiAgICBjaGFpbixcbiAgICBpbmRleCxcbiAgICB0eXBlOiB1dHhvbGliLmJpdGdvLnNjcmlwdFR5cGVGb3JDaGFpbihjaGFpbiksXG4gICAgdXNlclBhdGgsXG4gICAgYmFja3VwUGF0aCxcbiAgICBiaXRnb1BhdGgsXG4gICAgdXNlcktleSxcbiAgICBiYWNrdXBLZXksXG4gICAgYml0Z29LZXksXG4gICAgc2NyaXB0UHViS2V5OiBzY3JpcHRzLnNjcmlwdFB1YktleS50b1N0cmluZygnaGV4JyksXG4gICAgcmVkZWVtU2NyaXB0OiBzY3JpcHRzLnJlZGVlbVNjcmlwdD8udG9TdHJpbmcoJ2hleCcpLFxuICAgIHdpdG5lc3NTY3JpcHQ6IHNjcmlwdHMud2l0bmVzc1NjcmlwdD8udG9TdHJpbmcoJ2hleCcpLFxuICAgIGFkZHJlc3MsXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRBZGRyZXNzVHJlZShwcm9wczogRml4ZWRTY3JpcHRBZGRyZXNzUHJvcGVydGllcyB8IERlc2NyaXB0b3JBZGRyZXNzUHJvcGVydGllcyk6IHN0cmluZyB7XG4gIGNvbnN0IHBhcnNlciA9IG5ldyBQYXJzZXIoKTtcbiAgcmV0dXJuIGZvcm1hdFRyZWUocGFyc2VVbmtub3duKHBhcnNlciwgJ2FkZHJlc3MnLCBwcm9wcykpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0QWRkcmVzc1dpdGhGb3JtYXRTdHJpbmcoXG4gIHByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgcGxhY2Vob2xkZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LFxuICBmb3JtYXQ6IHN0cmluZ1xuKTogc3RyaW5nIHtcbiAgLy8gcmVwbGFjZSBhbGwgcGF0dGVybnMgd2l0aCBhICUgcHJlZml4IGZyb20gZm9ybWF0IHN0cmluZyB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHByb3BlcnR5XG4gIC8vIGUuZy4gJXAwIC0+IHVzZXJQYXRoLCAlazEgLT4gYmFja3VwS2V5LCBldGMuXG4gIHJldHVybiBmb3JtYXQucmVwbGFjZSgvJVthLXowLTldKy9naSwgKG1hdGNoKSA9PiB7XG4gICAgaWYgKG1hdGNoIGluIHBsYWNlaG9sZGVycykge1xuICAgICAgY29uc3QgcHJvcCA9IHBsYWNlaG9sZGVyc1ttYXRjaF07XG4gICAgICByZXR1cm4gU3RyaW5nKHByb3BzW3Byb3BdKTtcbiAgICB9XG4gICAgcmV0dXJuIG1hdGNoO1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEZpeGVkU2NyaXB0QWRkcmVzcyhwcm9wczogRml4ZWRTY3JpcHRBZGRyZXNzUHJvcGVydGllcywgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gZm9ybWF0QWRkcmVzc1dpdGhGb3JtYXRTdHJpbmcocHJvcHMsIGZpeGVkU2NyaXB0UGxhY2Vob2xkZXJzLCBmb3JtYXQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmFuZ2Uoc3RhcnQ6IG51bWJlciwgZW5kOiBudW1iZXIpOiBudW1iZXJbXSB7XG4gIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoOiBlbmQgLSBzdGFydCArIDEgfSwgKF8sIGkpID0+IHN0YXJ0ICsgaSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUluZGV4UmFuZ2UocmFuZ2VzOiBzdHJpbmdbXSk6IG51bWJlcltdIHtcbiAgcmV0dXJuIHJhbmdlcy5mbGF0TWFwKChyYW5nZSkgPT4ge1xuICAgIGNvbnN0IFtzdGFydCwgZW5kXSA9IHJhbmdlLnNwbGl0KCctJyk7XG4gICAgaWYgKGVuZCkge1xuICAgICAgcmV0dXJuIGdldFJhbmdlKE51bWJlcihzdGFydCksIE51bWJlcihlbmQpKTtcbiAgICB9XG4gICAgcmV0dXJuIFtOdW1iZXIoc3RhcnQpXTtcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiogZ2VuZXJhdGVGaXhlZFNjcmlwdEFkZHJlc3MoXG4gIGFyZ3Y6IEtleU9wdGlvbnMgJiB7XG4gICAgbmV0d29yaz86IHV0eG9saWIuTmV0d29yaztcbiAgICBjaGFpbj86IG51bWJlcltdO1xuICAgIGZvcm1hdDogc3RyaW5nO1xuICAgIGluZGV4OiBudW1iZXJbXTtcbiAgfVxuKTogR2VuZXJhdG9yPEZpeGVkU2NyaXB0QWRkcmVzc1Byb3BlcnRpZXM+IHtcbiAgY29uc3Qgcm9vdFhwdWJzID0gZ2V0Um9vdFdhbGxldEtleXMoYXJndik7XG4gIGNvbnN0IGNoYWlucyA9IGFyZ3YuY2hhaW4gPz8gZ2V0RGVmYXVsdENoYWluQ29kZXMoKTtcbiAgZm9yIChjb25zdCBpIG9mIGFyZ3YuaW5kZXgpIHtcbiAgICBmb3IgKGNvbnN0IGNoYWluIG9mIGNoYWlucykge1xuICAgICAgYXNzZXJ0KHV0eG9saWIuYml0Z28uaXNDaGFpbkNvZGUoY2hhaW4pKTtcbiAgICAgIC8vIHlpZWxkIGZvcm1hdEFkZHJlc3Mocm9vdFhwdWJzLCBjaGFpbiwgaSwgYXJndi5uZXR3b3JrID8/IHV0eG9saWIubmV0d29ya3MuYml0Y29pbiwgYXJndi5mb3JtYXQpO1xuICAgICAgeWllbGQgZ2V0QWRkcmVzc1Byb3BlcnRpZXMocm9vdFhwdWJzLCBjaGFpbiwgaSwgYXJndi5uZXR3b3JrID8/IHV0eG9saWIubmV0d29ya3MuYml0Y29pbik7XG4gICAgfVxuICB9XG59XG5cbnR5cGUgRGVzY3JpcHRvckFkZHJlc3NQcm9wZXJ0aWVzID0ge1xuICBkZXNjcmlwdG9yOiBzdHJpbmc7XG4gIGluZGV4OiBudW1iZXI7XG4gIGV4cGxpY2l0U2NyaXB0OiBzdHJpbmc7XG4gIHNjcmlwdFB1YktleTogc3RyaW5nO1xuICBhZGRyZXNzOiBzdHJpbmc7XG59O1xuXG5jb25zdCBkZXNjcmlwdG9yQWRkcmVzc1BsYWNlaG9sZGVycyA9IHtcbiAgJyVkJzogJ2Rlc2NyaXB0b3InLFxuICAnJWknOiAnaW5kZXgnLFxuICAnJWUnOiAnZXhwbGljaXRTY3JpcHQnLFxuICAnJXMnOiAnc2NyaXB0UHViS2V5JyxcbiAgJyVhJzogJ2FkZHJlc3MnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlc2NyaXB0b3JBZGRyZXNzUGxhY2Vob2xkZXJEZXNjcmlwdGlvbigpOiBzdHJpbmcge1xuICByZXR1cm4gZ2V0QXNQbGFjZWhvbGRlckRlc2NyaXB0aW9uKGRlc2NyaXB0b3JBZGRyZXNzUGxhY2Vob2xkZXJzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdERlc2NyaXB0b3JBZGRyZXNzKHByb3BzOiBEZXNjcmlwdG9yQWRkcmVzc1Byb3BlcnRpZXMsIGZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGZvcm1hdEFkZHJlc3NXaXRoRm9ybWF0U3RyaW5nKHByb3BzLCBkZXNjcmlwdG9yQWRkcmVzc1BsYWNlaG9sZGVycywgZm9ybWF0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uKiBnZW5lcmF0ZURlc2NyaXB0b3JBZGRyZXNzKGFyZ3Y6IHtcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrO1xuICBkZXNjcmlwdG9yOiBzdHJpbmc7XG4gIGZvcm1hdDogc3RyaW5nO1xuICBpbmRleDogbnVtYmVyW107XG59KTogR2VuZXJhdG9yPERlc2NyaXB0b3JBZGRyZXNzUHJvcGVydGllcz4ge1xuICBjb25zdCBkZXNjcmlwdG9yID0gRGVzY3JpcHRvci5mcm9tU3RyaW5nKGFyZ3YuZGVzY3JpcHRvciwgJ2Rlcml2YWJsZScpO1xuICBmb3IgKGNvbnN0IGkgb2YgYXJndi5pbmRleCkge1xuICAgIGNvbnN0IGRlcml2ZWQgPSBkZXNjcmlwdG9yLmF0RGVyaXZhdGlvbkluZGV4KGkpO1xuICAgIGNvbnN0IGV4cGxpY2l0U2NyaXB0ID0gQnVmZmVyLmZyb20oZGVyaXZlZC5lbmNvZGUoKSk7XG4gICAgY29uc3Qgc2NyaXB0UHViS2V5ID0gQnVmZmVyLmZyb20oZGVyaXZlZC5zY3JpcHRQdWJrZXkoKSk7XG4gICAgY29uc3QgYWRkcmVzcyA9IHV0eG9saWIuYWRkcmVzcy5mcm9tT3V0cHV0U2NyaXB0KHNjcmlwdFB1YktleSwgYXJndi5uZXR3b3JrKTtcbiAgICB5aWVsZCB7XG4gICAgICBkZXNjcmlwdG9yOiBkZXJpdmVkLnRvU3RyaW5nKCksXG4gICAgICBpbmRleDogaSxcbiAgICAgIGFkZHJlc3MsXG4gICAgICBleHBsaWNpdFNjcmlwdDogZXhwbGljaXRTY3JpcHQudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgc2NyaXB0UHViS2V5OiBzY3JpcHRQdWJLZXkudG9TdHJpbmcoJ2hleCcpLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getHollowSpendMessage = exports.parseHollowSegwitSpend = void 0;
3
+ exports.parseHollowSegwitSpend = parseHollowSegwitSpend;
4
+ exports.getHollowSpendMessage = getHollowSpendMessage;
4
5
  const utxolib = require("@bitgo/utxo-lib");
5
6
  /**
6
7
  * @return HollowSegwitSpend if spend is a
@@ -32,9 +33,7 @@ function parseHollowSegwitSpend(input, network) {
32
33
  return { scriptType: 'p2shP2wshHollow' };
33
34
  }
34
35
  }
35
- exports.parseHollowSegwitSpend = parseHollowSegwitSpend;
36
36
  function getHollowSpendMessage() {
37
37
  return `This output was likely claimed by a miner. See https://bitcoin.stackexchange.com/a/115850/137601 for details.`;
38
38
  }
39
- exports.getHollowSpendMessage = getHollowSpendMessage;
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9sbG93U2Vnd2l0U3BlbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9sbG93U2Vnd2l0U3BlbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQTJDO0FBa0IzQzs7R0FFRztBQUNILFNBQWdCLHNCQUFzQixDQUNwQyxLQUFzQixFQUN0QixPQUF3QjtJQUV4QixJQUNFLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXO1FBQzVELE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQzFEO1FBQ0EsNENBQTRDO1FBQzVDLE9BQU87S0FDUjtJQUVELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEQsSUFBSSxJQUFJLEtBQUssWUFBWSxFQUFFO1FBQ3pCLHVDQUF1QztRQUN2QyxPQUFPO0tBQ1I7SUFFRCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEQsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUM5QixPQUFPO0tBQ1I7SUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUU7UUFDM0IsT0FBTztLQUNSO0lBRUQsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDbkIsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUU7UUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBRSxDQUFDO0tBQzNDO0lBRUQsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUU7UUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxDQUFDO0tBQzFDO0FBQ0gsQ0FBQztBQXBDRCx3REFvQ0M7QUFFRCxTQUFnQixxQkFBcUI7SUFDbkMsT0FBTywrR0FBK0csQ0FBQztBQUN6SCxDQUFDO0FBRkQsc0RBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby91dHhvLWxpYic7XG5cbi8qKlxuICogVXNlcnMgY2FuIG1pc3Rha2VubHkgY3JlYXRlIHdyYXBwZWQgc2Vnd2l0IG91dHB1dHMgb24gY2hhaW5zIHRoYXQgZG8gbm90IHN1cHBvcnQgaXQgKGJpdGNvaW5jYXNoLCBiaXRjb2luU1YpLlxuICpcbiAqIFRoZXNlIGZ1bmRzIGNhbiBiZSBjbGFpbWVkIGJ5IG1pbmVycyB0aGF0IGxlYXJuIHRoZSBoYXNoIHByZWltYWdlLCB0eXBpY2FsbHkgYnkgb2JzZXJ2aW5nIGEgc3BlbmQgb24gdGhlIGJpdGNvaW5cbiAqIGNoYWluLlxuICpcbiAqIFNpbmNlIHRoZSB0cmFuc2FjdGlvbiBkb2VzIG5vdCBoYXZlIGEgZnVsbCBpbm5lciBzY3JpcHQsIGxldCdzIGNhbGwgdGhlbSBcImhvbGxvd1wiLlxuICpcbiAqIFNlZSBodHRwczovL2JpdGNvaW4uc3RhY2tleGNoYW5nZS5jb20vYS8xMTU4NTAvMTM3NjAxIGZvciBtb3JlIGRldGFpbHMuXG4gKi9cbmV4cG9ydCB0eXBlIEhvbGxvd1NlZ3dpdFNwZW5kID1cbiAgLyoqIFdyYXBwZWQgU2Vnd2l0IFBheS1Uby1XaXRuZXNzLVNjcmlwdC1IYXNoICovXG4gIHwgeyBzY3JpcHRUeXBlOiAncDJzaFAyd3NoSG9sbG93JyB9XG4gIC8qKiBXcmFwcGVkIFNlZ3dpdCBQYXktVG8tUHVia2V5LUhhc2ggKi9cbiAgfCB7IHNjcmlwdFR5cGU6ICdwMnNoUDJ3cGtoSG9sbG93JyB9O1xuXG4vKipcbiAqIEByZXR1cm4gSG9sbG93U2Vnd2l0U3BlbmQgaWYgc3BlbmQgaXMgYVxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VIb2xsb3dTZWd3aXRTcGVuZChcbiAgaW5wdXQ6IHV0eG9saWIuVHhJbnB1dCxcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrXG4pOiBIb2xsb3dTZWd3aXRTcGVuZCB8IHVuZGVmaW5lZCB7XG4gIGlmIChcbiAgICB1dHhvbGliLmdldE1haW5uZXQobmV0d29yaykgIT09IHV0eG9saWIubmV0d29ya3MuYml0Y29pbmNhc2ggJiZcbiAgICB1dHhvbGliLmdldE1haW5uZXQobmV0d29yaykgIT09IHV0eG9saWIubmV0d29ya3MuYml0Y29pbnN2XG4gICkge1xuICAgIC8vIHRoaXMgY2FuIG9ubHkgaGFwcGVuIG9uIHRoZSBCQ0gvQlNWIGZvcmtzXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgdHlwZSA9IHV0eG9saWIuY2xhc3NpZnkuaW5wdXQoaW5wdXQuc2NyaXB0LCB0cnVlKTtcbiAgaWYgKHR5cGUgIT09ICdzY3JpcHRoYXNoJykge1xuICAgIC8vIHRoaXMgY2FuIG9ubHkgaGFwcGVuIGZvciBwMnNoIHNwZW5kc1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGJ1ZnMgPSB1dHhvbGliLnNjcmlwdC5kZWNvbXBpbGUoaW5wdXQuc2NyaXB0KTtcbiAgaWYgKCFidWZzIHx8IGJ1ZnMubGVuZ3RoICE9PSAxKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgYnVmID0gYnVmc1swXTtcbiAgaWYgKHR5cGVvZiBidWYgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgW2EsIGJdID0gYnVmO1xuICBpZiAoYSA9PT0gMHgwMCAmJiBiID09PSAweDE0ICYmIGJ1Zi5sZW5ndGggPT09IDIyKSB7XG4gICAgcmV0dXJuIHsgc2NyaXB0VHlwZTogJ3Ayc2hQMndwa2hIb2xsb3cnIH07XG4gIH1cblxuICBpZiAoYSA9PT0gMHgwMCAmJiBiID09PSAweDIwICYmIGJ1Zi5sZW5ndGggPT09IDM0KSB7XG4gICAgcmV0dXJuIHsgc2NyaXB0VHlwZTogJ3Ayc2hQMndzaEhvbGxvdycgfTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SG9sbG93U3BlbmRNZXNzYWdlKCk6IHN0cmluZyB7XG4gIHJldHVybiBgVGhpcyBvdXRwdXQgd2FzIGxpa2VseSBjbGFpbWVkIGJ5IGEgbWluZXIuIFNlZSBodHRwczovL2JpdGNvaW4uc3RhY2tleGNoYW5nZS5jb20vYS8xMTU4NTAvMTM3NjAxIGZvciBkZXRhaWxzLmA7XG59XG4iXX0=
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9sbG93U2Vnd2l0U3BlbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9sbG93U2Vnd2l0U3BlbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFxQkEsd0RBb0NDO0FBRUQsc0RBRUM7QUE3REQsMkNBQTJDO0FBa0IzQzs7R0FFRztBQUNILFNBQWdCLHNCQUFzQixDQUNwQyxLQUFzQixFQUN0QixPQUF3QjtJQUV4QixJQUNFLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXO1FBQzVELE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQzFELENBQUM7UUFDRCw0Q0FBNEM7UUFDNUMsT0FBTztJQUNULENBQUM7SUFFRCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hELElBQUksSUFBSSxLQUFLLFlBQVksRUFBRSxDQUFDO1FBQzFCLHVDQUF1QztRQUN2QyxPQUFPO0lBQ1QsQ0FBQztJQUVELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwRCxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDL0IsT0FBTztJQUNULENBQUM7SUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM1QixPQUFPO0lBQ1QsQ0FBQztJQUVELE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ25CLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQWdCLHFCQUFxQjtJQUNuQyxPQUFPLCtHQUErRyxDQUFDO0FBQ3pILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby91dHhvLWxpYic7XG5cbi8qKlxuICogVXNlcnMgY2FuIG1pc3Rha2VubHkgY3JlYXRlIHdyYXBwZWQgc2Vnd2l0IG91dHB1dHMgb24gY2hhaW5zIHRoYXQgZG8gbm90IHN1cHBvcnQgaXQgKGJpdGNvaW5jYXNoLCBiaXRjb2luU1YpLlxuICpcbiAqIFRoZXNlIGZ1bmRzIGNhbiBiZSBjbGFpbWVkIGJ5IG1pbmVycyB0aGF0IGxlYXJuIHRoZSBoYXNoIHByZWltYWdlLCB0eXBpY2FsbHkgYnkgb2JzZXJ2aW5nIGEgc3BlbmQgb24gdGhlIGJpdGNvaW5cbiAqIGNoYWluLlxuICpcbiAqIFNpbmNlIHRoZSB0cmFuc2FjdGlvbiBkb2VzIG5vdCBoYXZlIGEgZnVsbCBpbm5lciBzY3JpcHQsIGxldCdzIGNhbGwgdGhlbSBcImhvbGxvd1wiLlxuICpcbiAqIFNlZSBodHRwczovL2JpdGNvaW4uc3RhY2tleGNoYW5nZS5jb20vYS8xMTU4NTAvMTM3NjAxIGZvciBtb3JlIGRldGFpbHMuXG4gKi9cbmV4cG9ydCB0eXBlIEhvbGxvd1NlZ3dpdFNwZW5kID1cbiAgLyoqIFdyYXBwZWQgU2Vnd2l0IFBheS1Uby1XaXRuZXNzLVNjcmlwdC1IYXNoICovXG4gIHwgeyBzY3JpcHRUeXBlOiAncDJzaFAyd3NoSG9sbG93JyB9XG4gIC8qKiBXcmFwcGVkIFNlZ3dpdCBQYXktVG8tUHVia2V5LUhhc2ggKi9cbiAgfCB7IHNjcmlwdFR5cGU6ICdwMnNoUDJ3cGtoSG9sbG93JyB9O1xuXG4vKipcbiAqIEByZXR1cm4gSG9sbG93U2Vnd2l0U3BlbmQgaWYgc3BlbmQgaXMgYVxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VIb2xsb3dTZWd3aXRTcGVuZChcbiAgaW5wdXQ6IHV0eG9saWIuVHhJbnB1dCxcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrXG4pOiBIb2xsb3dTZWd3aXRTcGVuZCB8IHVuZGVmaW5lZCB7XG4gIGlmIChcbiAgICB1dHhvbGliLmdldE1haW5uZXQobmV0d29yaykgIT09IHV0eG9saWIubmV0d29ya3MuYml0Y29pbmNhc2ggJiZcbiAgICB1dHhvbGliLmdldE1haW5uZXQobmV0d29yaykgIT09IHV0eG9saWIubmV0d29ya3MuYml0Y29pbnN2XG4gICkge1xuICAgIC8vIHRoaXMgY2FuIG9ubHkgaGFwcGVuIG9uIHRoZSBCQ0gvQlNWIGZvcmtzXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgdHlwZSA9IHV0eG9saWIuY2xhc3NpZnkuaW5wdXQoaW5wdXQuc2NyaXB0LCB0cnVlKTtcbiAgaWYgKHR5cGUgIT09ICdzY3JpcHRoYXNoJykge1xuICAgIC8vIHRoaXMgY2FuIG9ubHkgaGFwcGVuIGZvciBwMnNoIHNwZW5kc1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGJ1ZnMgPSB1dHhvbGliLnNjcmlwdC5kZWNvbXBpbGUoaW5wdXQuc2NyaXB0KTtcbiAgaWYgKCFidWZzIHx8IGJ1ZnMubGVuZ3RoICE9PSAxKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgYnVmID0gYnVmc1swXTtcbiAgaWYgKHR5cGVvZiBidWYgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgW2EsIGJdID0gYnVmO1xuICBpZiAoYSA9PT0gMHgwMCAmJiBiID09PSAweDE0ICYmIGJ1Zi5sZW5ndGggPT09IDIyKSB7XG4gICAgcmV0dXJuIHsgc2NyaXB0VHlwZTogJ3Ayc2hQMndwa2hIb2xsb3cnIH07XG4gIH1cblxuICBpZiAoYSA9PT0gMHgwMCAmJiBiID09PSAweDIwICYmIGJ1Zi5sZW5ndGggPT09IDM0KSB7XG4gICAgcmV0dXJuIHsgc2NyaXB0VHlwZTogJ3Ayc2hQMndzaEhvbGxvdycgfTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SG9sbG93U3BlbmRNZXNzYWdlKCk6IHN0cmluZyB7XG4gIHJldHVybiBgVGhpcyBvdXRwdXQgd2FzIGxpa2VseSBjbGFpbWVkIGJ5IGEgbWluZXIuIFNlZSBodHRwczovL2JpdGNvaW4uc3RhY2tleGNoYW5nZS5jb20vYS8xMTU4NTAvMTM3NjAxIGZvciBkZXRhaWxzLmA7XG59XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseUnknown = void 0;
3
+ exports.parseUnknown = parseUnknown;
4
4
  const Parser_1 = require("./Parser");
5
5
  function omitObject(v) {
6
6
  return typeof v === 'function';
@@ -46,5 +46,4 @@ function parseUnknown(p, label, obj, { omit = [] } = {}) {
46
46
  return p.node(label, '{}');
47
47
  }
48
48
  }
49
- exports.parseUnknown = parseUnknown;
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VVbmtub3duLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BhcnNlVW5rbm93bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxQ0FBa0Y7QUFFbEYsU0FBUyxVQUFVLENBQUMsQ0FBVTtJQUM1QixPQUFPLE9BQU8sQ0FBQyxLQUFLLFVBQVUsQ0FBQztBQUNqQyxDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FBQyxHQUFZO0lBQ3BDLE1BQU0sSUFBSSxHQUFhLEVBQUUsQ0FBQztJQUMxQixJQUFJLEtBQUssR0FBRyxHQUFHLENBQUM7SUFDaEIsT0FBTyxLQUFLLElBQUksS0FBSyxLQUFLLE1BQU0sQ0FBQyxTQUFTLEVBQUU7UUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2hELEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ3RDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsU0FBZ0IsWUFBWSxDQUMxQixDQUFTLEVBQ1QsS0FBc0IsRUFDdEIsR0FBWSxFQUNaLEVBQUUsSUFBSSxHQUFHLEVBQUUsS0FBMEIsRUFBRTtJQUV2QyxJQUFJLElBQUEsMEJBQWlCLEVBQUMsR0FBRyxDQUFDLEVBQUU7UUFDMUIsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDM0IsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDM0I7UUFDRCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQXNCLENBQUMsQ0FBQztLQUM5QztJQUVELElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUU7UUFDM0MsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0tBQ3ZEO0lBRUQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ3RCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDWCxLQUFLLEVBQ0wsV0FBVyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQ3ZCLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FDdkUsQ0FBQztLQUNIO0lBRUQsTUFBTSxPQUFPLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEMsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUN0QixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQ1gsS0FBSyxFQUNMLFNBQVMsRUFDVCxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDcEIsTUFBTSxXQUFXLEdBQUcsR0FBOEIsQ0FBQztZQUNuRCxJQUFJLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFBLEVBQUU7Z0JBQ25ELE9BQU8sRUFBRSxDQUFDO2FBQ1g7WUFDRCxJQUFJO2dCQUNGLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzdDO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQzthQUM1QztRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7S0FDSDtTQUFNO1FBQ0wsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztLQUM1QjtBQUNILENBQUM7QUE3Q0Qsb0NBNkNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQYXJzZXJOb2RlVmFsdWUsIFBhcnNlciwgUGFyc2VyTm9kZSwgUGFyc2VyTm9kZVZhbHVlIH0gZnJvbSAnLi9QYXJzZXInO1xuXG5mdW5jdGlvbiBvbWl0T2JqZWN0KHY6IHVua25vd24pOiBib29sZWFuIHtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnZnVuY3Rpb24nO1xufVxuXG5mdW5jdGlvbiBnZXRQcm90b3R5cGVLZXlzKG9iajogdW5rbm93bik6IHN0cmluZ1tdIHtcbiAgY29uc3Qga2V5czogc3RyaW5nW10gPSBbXTtcbiAgbGV0IHByb3RvID0gb2JqO1xuICB3aGlsZSAocHJvdG8gJiYgcHJvdG8gIT09IE9iamVjdC5wcm90b3R5cGUpIHtcbiAgICBrZXlzLnB1c2goLi4uT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocHJvdG8pKTtcbiAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihwcm90byk7XG4gIH1cbiAgcmV0dXJuIGtleXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVVua25vd24oXG4gIHA6IFBhcnNlcixcbiAgbGFiZWw6IHN0cmluZyB8IG51bWJlcixcbiAgb2JqOiB1bmtub3duLFxuICB7IG9taXQgPSBbXSB9OiB7IG9taXQ/OiBzdHJpbmdbXSB9ID0ge31cbik6IFBhcnNlck5vZGUge1xuICBpZiAoaXNQYXJzZXJOb2RlVmFsdWUob2JqKSkge1xuICAgIGlmICh0eXBlb2Ygb2JqID09PSAnc3RyaW5nJykge1xuICAgICAgb2JqID0gSlNPTi5zdHJpbmdpZnkob2JqKTtcbiAgICB9XG4gICAgcmV0dXJuIHAubm9kZShsYWJlbCwgb2JqIGFzIFBhcnNlck5vZGVWYWx1ZSk7XG4gIH1cblxuICBpZiAodHlwZW9mIG9iaiAhPT0gJ29iamVjdCcgfHwgb2JqID09PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBleHBlY3RlZCBvYmplY3QsIGdvdCAke3R5cGVvZiBvYmp9YCk7XG4gIH1cblxuICBpZiAoQXJyYXkuaXNBcnJheShvYmopKSB7XG4gICAgcmV0dXJuIHAubm9kZShcbiAgICAgIGxhYmVsLFxuICAgICAgYGxlbmd0aDogJHtvYmoubGVuZ3RofWAsXG4gICAgICBvYmouZmlsdGVyKCh2KSA9PiAhb21pdE9iamVjdCh2KSkubWFwKCh2LCBpKSA9PiBwYXJzZVVua25vd24ocCwgaSwgdikpXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0IGFsbEtleXMgPSBnZXRQcm90b3R5cGVLZXlzKG9iaik7XG4gIGlmIChhbGxLZXlzLmxlbmd0aCA+IDApIHtcbiAgICByZXR1cm4gcC5ub2RlKFxuICAgICAgbGFiZWwsXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBhbGxLZXlzLmZsYXRNYXAoKGspID0+IHtcbiAgICAgICAgY29uc3Qgb2JqQXNSZWNvcmQgPSBvYmogYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgICAgIGlmIChvbWl0T2JqZWN0KG9iakFzUmVjb3JkW2tdKSB8fCBvbWl0Py5pbmNsdWRlcyhrKSkge1xuICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgIHJldHVybiBbcGFyc2VVbmtub3duKHAsIGssIG9iakFzUmVjb3JkW2tdKV07XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICByZXR1cm4gW3Aubm9kZShrLCBgRXJyb3I6ICR7ZS5tZXNzYWdlfX1gKV07XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gcC5ub2RlKGxhYmVsLCAne30nKTtcbiAgfVxufVxuIl19
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VVbmtub3duLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BhcnNlVW5rbm93bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWdCQSxvQ0E2Q0M7QUE3REQscUNBQWtGO0FBRWxGLFNBQVMsVUFBVSxDQUFDLENBQVU7SUFDNUIsT0FBTyxPQUFPLENBQUMsS0FBSyxVQUFVLENBQUM7QUFDakMsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsR0FBWTtJQUNwQyxNQUFNLElBQUksR0FBYSxFQUFFLENBQUM7SUFDMUIsSUFBSSxLQUFLLEdBQUcsR0FBRyxDQUFDO0lBQ2hCLE9BQU8sS0FBSyxJQUFJLEtBQUssS0FBSyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2hELEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCxTQUFnQixZQUFZLENBQzFCLENBQVMsRUFDVCxLQUFzQixFQUN0QixHQUFZLEVBQ1osRUFBRSxJQUFJLEdBQUcsRUFBRSxLQUEwQixFQUFFO0lBRXZDLElBQUksSUFBQSwwQkFBaUIsRUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzNCLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDNUIsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUIsQ0FBQztRQUNELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBc0IsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDNUMsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUN2QixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQ1gsS0FBSyxFQUNMLFdBQVcsR0FBRyxDQUFDLE1BQU0sRUFBRSxFQUN2QixHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQ3ZFLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEMsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ3ZCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDWCxLQUFLLEVBQ0wsU0FBUyxFQUNULE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQixNQUFNLFdBQVcsR0FBRyxHQUE4QixDQUFDO1lBQ25ELElBQUksVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFJLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUEsRUFBRSxDQUFDO2dCQUNwRCxPQUFPLEVBQUUsQ0FBQztZQUNaLENBQUM7WUFDRCxJQUFJLENBQUM7Z0JBQ0gsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUMsQ0FBQztZQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ1gsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQztZQUM3QyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7U0FBTSxDQUFDO1FBQ04sT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGFyc2VyTm9kZVZhbHVlLCBQYXJzZXIsIFBhcnNlck5vZGUsIFBhcnNlck5vZGVWYWx1ZSB9IGZyb20gJy4vUGFyc2VyJztcblxuZnVuY3Rpb24gb21pdE9iamVjdCh2OiB1bmtub3duKTogYm9vbGVhbiB7XG4gIHJldHVybiB0eXBlb2YgdiA9PT0gJ2Z1bmN0aW9uJztcbn1cblxuZnVuY3Rpb24gZ2V0UHJvdG90eXBlS2V5cyhvYmo6IHVua25vd24pOiBzdHJpbmdbXSB7XG4gIGNvbnN0IGtleXM6IHN0cmluZ1tdID0gW107XG4gIGxldCBwcm90byA9IG9iajtcbiAgd2hpbGUgKHByb3RvICYmIHByb3RvICE9PSBPYmplY3QucHJvdG90eXBlKSB7XG4gICAga2V5cy5wdXNoKC4uLk9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHByb3RvKSk7XG4gICAgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YocHJvdG8pO1xuICB9XG4gIHJldHVybiBrZXlzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VVbmtub3duKFxuICBwOiBQYXJzZXIsXG4gIGxhYmVsOiBzdHJpbmcgfCBudW1iZXIsXG4gIG9iajogdW5rbm93bixcbiAgeyBvbWl0ID0gW10gfTogeyBvbWl0Pzogc3RyaW5nW10gfSA9IHt9XG4pOiBQYXJzZXJOb2RlIHtcbiAgaWYgKGlzUGFyc2VyTm9kZVZhbHVlKG9iaikpIHtcbiAgICBpZiAodHlwZW9mIG9iaiA9PT0gJ3N0cmluZycpIHtcbiAgICAgIG9iaiA9IEpTT04uc3RyaW5naWZ5KG9iaik7XG4gICAgfVxuICAgIHJldHVybiBwLm5vZGUobGFiZWwsIG9iaiBhcyBQYXJzZXJOb2RlVmFsdWUpO1xuICB9XG5cbiAgaWYgKHR5cGVvZiBvYmogIT09ICdvYmplY3QnIHx8IG9iaiA9PT0gbnVsbCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgZXhwZWN0ZWQgb2JqZWN0LCBnb3QgJHt0eXBlb2Ygb2JqfWApO1xuICB9XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSkge1xuICAgIHJldHVybiBwLm5vZGUoXG4gICAgICBsYWJlbCxcbiAgICAgIGBsZW5ndGg6ICR7b2JqLmxlbmd0aH1gLFxuICAgICAgb2JqLmZpbHRlcigodikgPT4gIW9taXRPYmplY3QodikpLm1hcCgodiwgaSkgPT4gcGFyc2VVbmtub3duKHAsIGksIHYpKVxuICAgICk7XG4gIH1cblxuICBjb25zdCBhbGxLZXlzID0gZ2V0UHJvdG90eXBlS2V5cyhvYmopO1xuICBpZiAoYWxsS2V5cy5sZW5ndGggPiAwKSB7XG4gICAgcmV0dXJuIHAubm9kZShcbiAgICAgIGxhYmVsLFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgYWxsS2V5cy5mbGF0TWFwKChrKSA9PiB7XG4gICAgICAgIGNvbnN0IG9iakFzUmVjb3JkID0gb2JqIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICAgICAgICBpZiAob21pdE9iamVjdChvYmpBc1JlY29yZFtrXSkgfHwgb21pdD8uaW5jbHVkZXMoaykpIHtcbiAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICByZXR1cm4gW3BhcnNlVW5rbm93bihwLCBrLCBvYmpBc1JlY29yZFtrXSldO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgcmV0dXJuIFtwLm5vZGUoaywgYEVycm9yOiAke2UubWVzc2FnZX19YCldO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHAubm9kZShsYWJlbCwgJ3t9Jyk7XG4gIH1cbn1cbiJdfQ==
@@ -13,4 +13,4 @@ describe('stringToBuffer', function () {
13
13
  }
14
14
  });
15
15
  });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nVG9CdWZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L2FyZ3Mvc3RyaW5nVG9CdWZmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFFakMsNERBQTREO0FBRTVELFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRTtJQUN6QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNuQyxFQUFFLENBQUMseUJBQXlCLEVBQUU7UUFDNUIsS0FBSyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQXFCLEVBQUU7WUFDckQsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5QixNQUFNLENBQUMsZUFBZSxDQUFDLElBQUEsNEJBQWMsRUFBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUV0RSxNQUFNLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDekQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFBLDRCQUFjLEVBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDekU7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmltcG9ydCB7IHN0cmluZ1RvQnVmZmVyIH0gZnJvbSAnLi4vLi4vc3JjL2FyZ3MvcGFyc2VTdHJpbmcnO1xuXG5kZXNjcmliZSgnc3RyaW5nVG9CdWZmZXInLCBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IGJ5dGVzID0gQnVmZmVyLmFsbG9jKDMyLCA0Mik7XG4gIGl0KCdjb252ZXJ0cyBoZXggYW5kIGJhc2U2NCcsIGZ1bmN0aW9uICgpIHtcbiAgICBmb3IgKGNvbnN0IGUgb2YgWydoZXgnLCAnYmFzZTY0J10gYXMgQnVmZmVyRW5jb2RpbmdbXSkge1xuICAgICAgY29uc3Qgc3RyID0gYnl0ZXMudG9TdHJpbmcoZSk7XG4gICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKHN0cmluZ1RvQnVmZmVyKHN0ciwgWydoZXgnLCAnYmFzZTY0J10pLCBieXRlcyk7XG5cbiAgICAgIGNvbnN0IHN0ck5sID0gW3N0ci5zbGljZSgwLCA0KSwgc3RyLnNsaWNlKDQpXS5qb2luKCdcXG4nKTtcbiAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoc3RyaW5nVG9CdWZmZXIoc3RyTmwsIFsnaGV4JywgJ2Jhc2U2NCddKSwgYnl0ZXMpO1xuICAgIH1cbiAgfSk7XG59KTtcbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nVG9CdWZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L2FyZ3Mvc3RyaW5nVG9CdWZmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFFakMsNERBQTREO0FBRTVELFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRTtJQUN6QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNuQyxFQUFFLENBQUMseUJBQXlCLEVBQUU7UUFDNUIsS0FBSyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQXFCLEVBQUUsQ0FBQztZQUN0RCxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzlCLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBQSw0QkFBYyxFQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBRXRFLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6RCxNQUFNLENBQUMsZUFBZSxDQUFDLElBQUEsNEJBQWMsRUFBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMxRSxDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuXG5pbXBvcnQgeyBzdHJpbmdUb0J1ZmZlciB9IGZyb20gJy4uLy4uL3NyYy9hcmdzL3BhcnNlU3RyaW5nJztcblxuZGVzY3JpYmUoJ3N0cmluZ1RvQnVmZmVyJywgZnVuY3Rpb24gKCkge1xuICBjb25zdCBieXRlcyA9IEJ1ZmZlci5hbGxvYygzMiwgNDIpO1xuICBpdCgnY29udmVydHMgaGV4IGFuZCBiYXNlNjQnLCBmdW5jdGlvbiAoKSB7XG4gICAgZm9yIChjb25zdCBlIG9mIFsnaGV4JywgJ2Jhc2U2NCddIGFzIEJ1ZmZlckVuY29kaW5nW10pIHtcbiAgICAgIGNvbnN0IHN0ciA9IGJ5dGVzLnRvU3RyaW5nKGUpO1xuICAgICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChzdHJpbmdUb0J1ZmZlcihzdHIsIFsnaGV4JywgJ2Jhc2U2NCddKSwgYnl0ZXMpO1xuXG4gICAgICBjb25zdCBzdHJObCA9IFtzdHIuc2xpY2UoMCwgNCksIHN0ci5zbGljZSg0KV0uam9pbignXFxuJyk7XG4gICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKHN0cmluZ1RvQnVmZmVyKHN0ck5sLCBbJ2hleCcsICdiYXNlNjQnXSksIGJ5dGVzKTtcbiAgICB9XG4gIH0pO1xufSk7XG4iXX0=
@@ -19,4 +19,4 @@ function runTest(bip32Key, args) {
19
19
  runTest((0, bip32_util_1.getKey)('bip32').toBase58(), {});
20
20
  runTest((0, bip32_util_1.getKey)('bip32').toBase58(), { derive: 'm/0/0' });
21
21
  runTest((0, bip32_util_1.getKey)('bip32').neutered().toBase58(), { derive: 'm/0/0' });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlwMzIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90ZXN0L2JpcDMyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUNBQWlDO0FBRWpDLHdDQUEwQztBQUUxQyx5Q0FBaUU7QUFDakUsNkNBQXNDO0FBRXRDLFNBQVMsT0FBTyxDQUFDLFFBQWdCLEVBQUUsSUFBeUI7SUFDMUQsUUFBUSxDQUFDLGVBQWUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFO1FBQzlDLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxLQUFLO1lBQzdCLE1BQU0sU0FBUyxHQUFHLElBQUEsNEJBQWlCLEVBQUMsSUFBQSxrQkFBVSxFQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ25GLE1BQU0sUUFBUSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDNUIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNmLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDaEQ7WUFDRCxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sSUFBQSwyQkFBZ0IsRUFBQyx1QkFBdUIsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3BILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsT0FBTyxDQUFDLElBQUEsbUJBQU0sRUFBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUN4QyxPQUFPLENBQUMsSUFBQSxtQkFBTSxFQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7QUFDekQsT0FBTyxDQUFDLElBQUEsbUJBQU0sRUFBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmltcG9ydCB7IHBhcnNlQmlwMzIgfSBmcm9tICcuLi9zcmMvYmlwMzInO1xuXG5pbXBvcnQgeyBmb3JtYXRUcmVlTm9Db2xvciwgZ2V0Rml4dHVyZVN0cmluZyB9IGZyb20gJy4vZml4dHVyZXMnO1xuaW1wb3J0IHsgZ2V0S2V5IH0gZnJvbSAnLi9iaXAzMi51dGlsJztcblxuZnVuY3Rpb24gcnVuVGVzdChiaXAzMktleTogc3RyaW5nLCBhcmdzOiB7IGRlcml2ZT86IHN0cmluZyB9KSB7XG4gIGRlc2NyaWJlKGBwYXJzZSBiaXAzMiAke0pTT04uc3RyaW5naWZ5KGFyZ3MpfWAsIGZ1bmN0aW9uICgpIHtcbiAgICBpdCgnaGFzIGV4cGVjdGVkIG91dHB1dCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZCA9IGZvcm1hdFRyZWVOb0NvbG9yKHBhcnNlQmlwMzIoYmlwMzJLZXksIGFyZ3MpLCB7IHNob3dBbGw6IHRydWUgfSk7XG4gICAgICBjb25zdCBmaWxlbmFtZSA9IFtiaXAzMktleV07XG4gICAgICBpZiAoYXJncy5kZXJpdmUpIHtcbiAgICAgICAgZmlsZW5hbWUucHVzaChhcmdzLmRlcml2ZS5yZXBsYWNlKC9cXC8vZywgJ18nKSk7XG4gICAgICB9XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYXdhaXQgZ2V0Rml4dHVyZVN0cmluZyhgdGVzdC9maXh0dXJlcy9iaXAzMi8ke2ZpbGVuYW1lLmpvaW4oJ18nKX0udHh0YCwgZm9ybWF0dGVkKSwgZm9ybWF0dGVkKTtcbiAgICB9KTtcbiAgfSk7XG59XG5cbnJ1blRlc3QoZ2V0S2V5KCdiaXAzMicpLnRvQmFzZTU4KCksIHt9KTtcbnJ1blRlc3QoZ2V0S2V5KCdiaXAzMicpLnRvQmFzZTU4KCksIHsgZGVyaXZlOiAnbS8wLzAnIH0pO1xucnVuVGVzdChnZXRLZXkoJ2JpcDMyJykubmV1dGVyZWQoKS50b0Jhc2U1OCgpLCB7IGRlcml2ZTogJ20vMC8wJyB9KTtcbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlwMzIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90ZXN0L2JpcDMyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUNBQWlDO0FBRWpDLHdDQUEwQztBQUUxQyx5Q0FBaUU7QUFDakUsNkNBQXNDO0FBRXRDLFNBQVMsT0FBTyxDQUFDLFFBQWdCLEVBQUUsSUFBeUI7SUFDMUQsUUFBUSxDQUFDLGVBQWUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFO1FBQzlDLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxLQUFLO1lBQzdCLE1BQU0sU0FBUyxHQUFHLElBQUEsNEJBQWlCLEVBQUMsSUFBQSxrQkFBVSxFQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ25GLE1BQU0sUUFBUSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDNUIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ2hCLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDakQsQ0FBQztZQUNELE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxJQUFBLDJCQUFnQixFQUFDLHVCQUF1QixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDcEgsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxPQUFPLENBQUMsSUFBQSxtQkFBTSxFQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ3hDLE9BQU8sQ0FBQyxJQUFBLG1CQUFNLEVBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztBQUN6RCxPQUFPLENBQUMsSUFBQSxtQkFBTSxFQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuaW1wb3J0IHsgcGFyc2VCaXAzMiB9IGZyb20gJy4uL3NyYy9iaXAzMic7XG5cbmltcG9ydCB7IGZvcm1hdFRyZWVOb0NvbG9yLCBnZXRGaXh0dXJlU3RyaW5nIH0gZnJvbSAnLi9maXh0dXJlcyc7XG5pbXBvcnQgeyBnZXRLZXkgfSBmcm9tICcuL2JpcDMyLnV0aWwnO1xuXG5mdW5jdGlvbiBydW5UZXN0KGJpcDMyS2V5OiBzdHJpbmcsIGFyZ3M6IHsgZGVyaXZlPzogc3RyaW5nIH0pIHtcbiAgZGVzY3JpYmUoYHBhcnNlIGJpcDMyICR7SlNPTi5zdHJpbmdpZnkoYXJncyl9YCwgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdoYXMgZXhwZWN0ZWQgb3V0cHV0JywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgZm9ybWF0dGVkID0gZm9ybWF0VHJlZU5vQ29sb3IocGFyc2VCaXAzMihiaXAzMktleSwgYXJncyksIHsgc2hvd0FsbDogdHJ1ZSB9KTtcbiAgICAgIGNvbnN0IGZpbGVuYW1lID0gW2JpcDMyS2V5XTtcbiAgICAgIGlmIChhcmdzLmRlcml2ZSkge1xuICAgICAgICBmaWxlbmFtZS5wdXNoKGFyZ3MuZGVyaXZlLnJlcGxhY2UoL1xcLy9nLCAnXycpKTtcbiAgICAgIH1cbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChhd2FpdCBnZXRGaXh0dXJlU3RyaW5nKGB0ZXN0L2ZpeHR1cmVzL2JpcDMyLyR7ZmlsZW5hbWUuam9pbignXycpfS50eHRgLCBmb3JtYXR0ZWQpLCBmb3JtYXR0ZWQpO1xuICAgIH0pO1xuICB9KTtcbn1cblxucnVuVGVzdChnZXRLZXkoJ2JpcDMyJykudG9CYXNlNTgoKSwge30pO1xucnVuVGVzdChnZXRLZXkoJ2JpcDMyJykudG9CYXNlNTgoKSwgeyBkZXJpdmU6ICdtLzAvMCcgfSk7XG5ydW5UZXN0KGdldEtleSgnYmlwMzInKS5uZXV0ZXJlZCgpLnRvQmFzZTU4KCksIHsgZGVyaXZlOiAnbS8wLzAnIH0pO1xuIl19
@@ -1,14 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getKeyTriple = exports.getKey = void 0;
3
+ exports.getKey = getKey;
4
+ exports.getKeyTriple = getKeyTriple;
4
5
  const crypto = require("crypto");
5
6
  const utxolib = require("@bitgo/utxo-lib");
6
7
  function getKey(seed) {
7
8
  return utxolib.bip32.fromSeed(crypto.createHash('sha256').update(seed).digest());
8
9
  }
9
- exports.getKey = getKey;
10
10
  function getKeyTriple(seed) {
11
11
  return [getKey(seed + '.0'), getKey(seed + '.1'), getKey(seed + '.2')];
12
12
  }
13
- exports.getKeyTriple = getKeyTriple;
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlwMzIudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3Rlc3QvYmlwMzIudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpQ0FBaUM7QUFFakMsMkNBQTJDO0FBTTNDLFNBQWdCLE1BQU0sQ0FBQyxJQUFZO0lBQ2pDLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztBQUNuRixDQUFDO0FBRkQsd0JBRUM7QUFDRCxTQUFnQixZQUFZLENBQUMsSUFBWTtJQUN2QyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUN6RSxDQUFDO0FBRkQsb0NBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjcnlwdG8gZnJvbSAnY3J5cHRvJztcblxuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28vdXR4by1saWInO1xuaW1wb3J0IHsgQklQMzJJbnRlcmZhY2UgfSBmcm9tICdiaXAzMic7XG5cbmV4cG9ydCB0eXBlIFRyaXBsZTxUPiA9IFtULCBULCBUXTtcblxuZXhwb3J0IHR5cGUgS2V5VHJpcGxlID0gVHJpcGxlPEJJUDMySW50ZXJmYWNlPjtcbmV4cG9ydCBmdW5jdGlvbiBnZXRLZXkoc2VlZDogc3RyaW5nKTogQklQMzJJbnRlcmZhY2Uge1xuICByZXR1cm4gdXR4b2xpYi5iaXAzMi5mcm9tU2VlZChjcnlwdG8uY3JlYXRlSGFzaCgnc2hhMjU2JykudXBkYXRlKHNlZWQpLmRpZ2VzdCgpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBnZXRLZXlUcmlwbGUoc2VlZDogc3RyaW5nKTogS2V5VHJpcGxlIHtcbiAgcmV0dXJuIFtnZXRLZXkoc2VlZCArICcuMCcpLCBnZXRLZXkoc2VlZCArICcuMScpLCBnZXRLZXkoc2VlZCArICcuMicpXTtcbn1cbiJdfQ==
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlwMzIudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3Rlc3QvYmlwMzIudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVFBLHdCQUVDO0FBQ0Qsb0NBRUM7QUFiRCxpQ0FBaUM7QUFFakMsMkNBQTJDO0FBTTNDLFNBQWdCLE1BQU0sQ0FBQyxJQUFZO0lBQ2pDLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztBQUNuRixDQUFDO0FBQ0QsU0FBZ0IsWUFBWSxDQUFDLElBQVk7SUFDdkMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDekUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNyeXB0byBmcm9tICdjcnlwdG8nO1xuXG5pbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby91dHhvLWxpYic7XG5pbXBvcnQgeyBCSVAzMkludGVyZmFjZSB9IGZyb20gJ2JpcDMyJztcblxuZXhwb3J0IHR5cGUgVHJpcGxlPFQ+ID0gW1QsIFQsIFRdO1xuXG5leHBvcnQgdHlwZSBLZXlUcmlwbGUgPSBUcmlwbGU8QklQMzJJbnRlcmZhY2U+O1xuZXhwb3J0IGZ1bmN0aW9uIGdldEtleShzZWVkOiBzdHJpbmcpOiBCSVAzMkludGVyZmFjZSB7XG4gIHJldHVybiB1dHhvbGliLmJpcDMyLmZyb21TZWVkKGNyeXB0by5jcmVhdGVIYXNoKCdzaGEyNTYnKS51cGRhdGUoc2VlZCkuZGlnZXN0KCkpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldEtleVRyaXBsZShzZWVkOiBzdHJpbmcpOiBLZXlUcmlwbGUge1xuICByZXR1cm4gW2dldEtleShzZWVkICsgJy4wJyksIGdldEtleShzZWVkICsgJy4xJyksIGdldEtleShzZWVkICsgJy4yJyldO1xufVxuIl19
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFixtureString = exports.getTransactionWithSpendType = exports.getPsbt = exports.formatTreeNoColor = void 0;
3
+ exports.formatTreeNoColor = formatTreeNoColor;
4
+ exports.getPsbt = getPsbt;
5
+ exports.getTransactionWithSpendType = getTransactionWithSpendType;
6
+ exports.getFixtureString = getFixtureString;
4
7
  const fs_1 = require("fs");
5
8
  const chalk_1 = require("chalk");
6
9
  const utxolib = require("@bitgo/utxo-lib");
@@ -8,7 +11,6 @@ const format_1 = require("../src/format");
8
11
  function formatTreeNoColor(n, { showAll }) {
9
12
  return (0, format_1.formatTree)(n, { hide: showAll ? [] : undefined, chalk: new chalk_1.Instance({ level: 0 }) });
10
13
  }
11
- exports.formatTreeNoColor = formatTreeNoColor;
12
14
  const walletKeys = utxolib.testutil.getDefaultWalletKeys();
13
15
  async function getPsbt(network, basePath, params, { writeFixture } = {}) {
14
16
  const inputs = [
@@ -47,7 +49,6 @@ async function getPsbt(network, basePath, params, { writeFixture } = {}) {
47
49
  prevOutputs: undefined,
48
50
  };
49
51
  }
50
- exports.getPsbt = getPsbt;
51
52
  async function getTransactionWithSpendType(network, basePath, params) {
52
53
  if (params.fixtureType !== 'networkFullSigned') {
53
54
  return getPsbt(network, basePath, params);
@@ -78,7 +79,6 @@ async function getTransactionWithSpendType(network, basePath, params) {
78
79
  });
79
80
  return { transaction: tx, prevOutputs: tx.ins.map((i) => getPrevOut(i)) };
80
81
  }
81
- exports.getTransactionWithSpendType = getTransactionWithSpendType;
82
82
  async function getFixtureString(path, defaultValue) {
83
83
  try {
84
84
  return await fs_1.promises.readFile(path, 'utf8');
@@ -91,5 +91,4 @@ async function getFixtureString(path, defaultValue) {
91
91
  throw e;
92
92
  }
93
93
  }
94
- exports.getFixtureString = getFixtureString;
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90ZXN0L2ZpeHR1cmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJCQUFvQztBQUVwQyxpQ0FBaUM7QUFDakMsMkNBQTJDO0FBRTNDLDBDQUEyQztBQUczQyxTQUFnQixpQkFBaUIsQ0FBQyxDQUFhLEVBQUUsRUFBRSxPQUFPLEVBQXdCO0lBQ2hGLE9BQU8sSUFBQSxtQkFBVSxFQUFDLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLGdCQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDOUYsQ0FBQztBQUZELDhDQUVDO0FBa0JELE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztBQUVwRCxLQUFLLFVBQVUsT0FBTyxDQUMzQixPQUF3QixFQUN4QixRQUFnQixFQUNoQixNQUFxQixFQUNyQixFQUFFLFlBQVksS0FBZ0MsRUFBRTtJQUVoRCxNQUFNLE1BQU0sR0FBNkI7UUFDdkMsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBTSxDQUFDLEVBQUU7S0FDbEgsQ0FBQztJQUNGLE1BQU0sT0FBTyxHQUFHLENBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMxRSxJQUFJLEtBQUssR0FBVyxNQUFNLENBQUMsV0FBVyxDQUFDO0lBQ3ZDLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxN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Q0FBQztBQWhERCxrRUFnREM7QUFFTSxLQUFLLFVBQVUsZ0JBQWdCLENBQUMsSUFBWSxFQUFFLFlBQW9CO0lBQ3ZFLElBQUk7UUFDRixPQUFPLE1BQU0sYUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDeEM7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLElBQUssQ0FBUyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDaEMsTUFBTSxhQUFFLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDL0MsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUNwRDtRQUNELE1BQU0sQ0FBQyxDQUFDO0tBQ1Q7QUFDSCxDQUFDO0FBVkQsNENBVUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwcm9taXNlcyBhcyBmcyB9IGZyb20gJ2ZzJztcblxuaW1wb3J0IHsgSW5zdGFuY2UgfSBmcm9tICdjaGFsayc7XG5pbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby91dHhvLWxpYic7XG5cbmltcG9ydCB7IGZvcm1hdFRyZWUgfSBmcm9tICcuLi9zcmMvZm9ybWF0JztcbmltcG9ydCB7IFBhcnNlck5vZGUgfSBmcm9tICcuLi9zcmMvUGFyc2VyJztcblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFRyZWVOb0NvbG9yKG46IFBhcnNlck5vZGUsIHsgc2hvd0FsbCB9OiB7IHNob3dBbGw6IGJvb2xlYW4gfSk6IHN0cmluZyB7XG4gIHJldHVybiBmb3JtYXRUcmVlKG4sIHsgaGlkZTogc2hvd0FsbCA/IFtdIDogdW5kZWZpbmVkLCBjaGFsazogbmV3IEluc3RhbmNlKHsgbGV2ZWw6IDAgfSkgfSk7XG59XG5cbmV4cG9ydCB0eXBlIFBhcnNlZEZpeHR1cmUgPVxuICB8IHtcbiAgICAgIHRyYW5zYWN0aW9uOiB1dHhvbGliLmJpdGdvLlV0eG9UcmFuc2FjdGlvbjxiaWdpbnQ+O1xuICAgICAgcHJldk91dHB1dHM6IHV0eG9saWIuVHhPdXRwdXQ8YmlnaW50PltdO1xuICAgIH1cbiAgfCB7XG4gICAgICB0cmFuc2FjdGlvbjogdXR4b2xpYi5iaXRnby5VdHhvUHNidDtcbiAgICAgIHByZXZPdXRwdXRzOiB1bmRlZmluZWQ7XG4gICAgfTtcblxudHlwZSBGaXh0dXJlUGFyYW1zID0ge1xuICBmaXh0dXJlVHlwZTogJ3BzYnRVbnNpZ25lZCcgfCAncHNidEhhbGZTaWduZWQnIHwgJ3BzYnRGdWxsU2lnbmVkJyB8ICduZXR3b3JrRnVsbFNpZ25lZCc7XG4gIHNjcmlwdFR5cGU6IHV0eG9saWIuYml0Z28ub3V0cHV0U2NyaXB0cy5TY3JpcHRUeXBlMk9mMztcbiAgc3BlbmRUeXBlPzogJ2tleVBhdGgnIHwgJ3NjcmlwdFBhdGgnO1xufTtcblxuY29uc3Qgd2FsbGV0S2V5cyA9IHV0eG9saWIudGVzdHV0aWwuZ2V0RGVmYXVsdFdhbGxldEtleXMoKTtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFBzYnQoXG4gIG5ldHdvcms6IHV0eG9saWIuTmV0d29yayxcbiAgYmFzZVBhdGg6IHN0cmluZyxcbiAgcGFyYW1zOiBGaXh0dXJlUGFyYW1zLFxuICB7IHdyaXRlRml4dHVyZSB9OiB7IHdyaXRlRml4dHVyZT86IHN0cmluZyB9ID0ge31cbik6IFByb21pc2U8UGFyc2VkRml4dHVyZT4ge1xuICBjb25zdCBpbnB1dHM6IHV0eG9saWIudGVzdHV0aWwuSW5wdXRbXSA9IFtcbiAgICB7IHNjcmlwdFR5cGU6IHBhcmFtcy5zcGVuZFR5cGUgPT09ICdrZXlQYXRoJyA/ICd0YXByb290S2V5UGF0aFNwZW5kJyA6IHBhcmFtcy5zY3JpcHRUeXBlLCB2YWx1ZTogQmlnSW50KDEwXzAwMCkgfSxcbiAgXTtcbiAgY29uc3Qgb3V0cHV0cyA9IFt7IHNjcmlwdFR5cGU6IHBhcmFtcy5zY3JpcHRUeXBlLCB2YWx1ZTogQmlnSW50KDlfMDAwKSB9XTtcbiAgbGV0IHN0YWdlOiBzdHJpbmcgPSBwYXJhbXMuZml4dHVyZVR5cGU7XG4gIGlmIChzdGFnZS5zdGFydHNXaXRoKCdwc2J0JykpIHtcbiAgICBzdGFnZSA9IHN0YWdlLnNsaWNlKCdwc2J0Jy5sZW5ndGgpLnRvTG93ZXJDYXNlKCk7XG4gIH1cbiAgaWYgKHN0YWdlICE9PSAndW5zaWduZWQnICYmIHN0YWdlICE9PSAnaGFsZnNpZ25lZCcgJiYgc3RhZ2UgIT09ICdmdWxsc2lnbmVkJykge1xuICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBzdGFnZSAke3N0YWdlfWApO1xuICB9XG4gIGlmIChwYXJhbXMuc3BlbmRUeXBlID09PSAna2V5UGF0aCcgJiYgd3JpdGVGaXh0dXJlID09PSB1bmRlZmluZWQpIHtcbiAgICAvLyBiZWNhdXNlIHdlIGN1cnJlbnRseSBjYW5ub3QgY3JlYXRlIGRldGVybWluaXN0aWMgc2lnbmF0dXJlcyBmb3IgdGFwcm9vdEtleVBhdGhTcGVuZCwgd2VcbiAgICAvLyBzdG9yZSBhIGNvcHkgaW4gZml4dHVyZXMvcHNidCBhbmQgdXNlIHRoYXQgaW5zdGVhZCBvZiBjcmVhdGluZyBhIG5ldyBvbmVcbiAgICBjb25zdCBmaWxlbmFtZSA9IGJhc2VQYXRoICsgYC8ke3BhcmFtcy5zY3JpcHRUeXBlfS4ke3BhcmFtcy5zcGVuZFR5cGV9LiR7c3RhZ2V9Lmpzb25gO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBwc2J0SGV4ID0gSlNPTi5wYXJzZShhd2FpdCBmcy5yZWFkRmlsZShmaWxlbmFtZSwgJ3V0ZjgnKSk7XG4gICAgICBjb25zdCB0cmFuc2FjdGlvbiA9IHV0eG9saWIuYml0Z28uY3JlYXRlUHNidEZyb21IZXgocHNidEhleCwgbmV0d29yayk7XG4gICAgICByZXR1cm4geyB0cmFuc2FjdGlvbiwgcHJldk91dHB1dHM6IHVuZGVmaW5lZCB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmIChlLmNvZGUgPT09ICdFTk9FTlQnKSB7XG4gICAgICAgIHJldHVybiBhd2FpdCBnZXRQc2J0KG5ldHdvcmssIGJhc2VQYXRoLCBwYXJhbXMsIHsgd3JpdGVGaXh0dXJlOiBmaWxlbmFtZSB9KTtcbiAgICAgIH1cbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG4gIGNvbnN0IHRyYW5zYWN0aW9uID0gdXR4b2xpYi50ZXN0dXRpbC5jb25zdHJ1Y3RQc2J0KGlucHV0cywgb3V0cHV0cywgbmV0d29yaywgd2FsbGV0S2V5cywgc3RhZ2UpO1xuICBpZiAod3JpdGVGaXh0dXJlKSB7XG4gICAgYXdhaXQgZnMud3JpdGVGaWxlKHdyaXRlRml4dHVyZSwgSlNPTi5zdHJpbmdpZnkodHJhbnNhY3Rpb24udG9IZXgoKSksICd1dGY4Jyk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICB0cmFuc2FjdGlvbixcbiAgICBwcmV2T3V0cHV0czogdW5kZWZpbmVkLFxuICB9O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0VHJhbnNhY3Rpb25XaXRoU3BlbmRUeXBlKFxuICBuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmssXG4gIGJhc2VQYXRoOiBzdHJpbmcsXG4gIHBhcmFtczogRml4dHVyZVBhcmFtc1xuKTogUHJvbWlzZTxQYXJzZWRGaXh0dXJlPiB7XG4gIGlmIChwYXJhbXMuZml4dHVyZVR5cGUgIT09ICduZXR3b3JrRnVsbFNpZ25lZCcpIHtcbiAgICByZXR1cm4gZ2V0UHNidChuZXR3b3JrLCBiYXNlUGF0aCwgcGFyYW1zKTtcbiAgfVxuXG4gIGlmIChwYXJhbXMuc2NyaXB0VHlwZSA9PT0gJ3AydHJNdXNpZzInKSB7XG4gICAgaWYgKCFwYXJhbXMuc3BlbmRUeXBlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3AydHJNdXNpZzIgcmVxdWlyZXMgcGFyYW1zJyk7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGlmIChwYXJhbXMuc3BlbmRUeXBlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ29ubHkgcDJ0ck11c2lnMiByZXF1aXJlcyBzcGVuZFR5cGUnKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBmaWxlbmFtZSA9IGBzcGVuZF8ke3BhcmFtcy5zY3JpcHRUeXBlfSR7cGFyYW1zLnNwZW5kVHlwZSA/IGAke3BhcmFtcy5zcGVuZFR5cGV9YCA6ICcnfS5qc29uYDtcbiAgdHlwZSBGaXh0dXJlID0ge1xuICAgIHRyYW5zYWN0aW9uOiB7IGhleDogc3RyaW5nIH07XG4gICAgaW5wdXRzOiB7IGhleDogc3RyaW5nIH1bXTtcbiAgfTtcblxuICBjb25zdCBmOiBGaXh0dXJlID0gYXdhaXQgSlNPTi5wYXJzZShcbiAgICBhd2FpdCBmcy5yZWFkRmlsZShcbiAgICAgIGAuLi91dHhvLWxpYi90ZXN0L2ludGVncmF0aW9uX2xvY2FsX3JwYy9maXh0dXJlcy8ke3V0eG9saWIuZ2V0TmV0d29ya05hbWUobmV0d29yayl9L3YxLyR7ZmlsZW5hbWV9YCxcbiAgICAgICd1dGY4J1xuICAgIClcbiAgKTtcblxuICBmdW5jdGlvbiBnZXRQcmV2T3V0KGk6IHV0eG9saWIuVHhJbnB1dCk6IHV0eG9saWIuVHhPdXRwdXQ8YmlnaW50PiB7XG4gICAgZm9yIChjb25zdCB0IG9mIGlucHV0VHhzKSB7XG4gICAgICBpZiAodC5nZXRIYXNoKCkuZXF1YWxzKGkuaGFzaCkgJiYgaS5pbmRleCBpbiB0Lm91dHMpIHtcbiAgICAgICAgcmV0dXJuIHQub3V0c1tpLmluZGV4XTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKGBtaXNzaW5nIGlucHV0ICR7dXR4b2xpYi5iaXRnby5mb3JtYXRPdXRwdXRJZCh1dHhvbGliLmJpdGdvLmdldE91dHB1dElkRm9ySW5wdXQoaSkpfWApO1xuICB9XG5cbiAgY29uc3QgaW5wdXRUeHMgPSBmLmlucHV0cy5tYXAoKGkpID0+XG4gICAgdXR4b2xpYi5iaXRnby5jcmVhdGVUcmFuc2FjdGlvbkZyb21CdWZmZXIoQnVmZmVyLmZyb20oaS5oZXgsICdoZXgnKSwgbmV0d29yaywgeyBhbW91bnRUeXBlOiAnYmlnaW50JyB9KVxuICApO1xuICBjb25zdCB0eCA9IHV0eG9saWIuYml0Z28uY3JlYXRlVHJhbnNhY3Rpb25Gcm9tQnVmZmVyKEJ1ZmZlci5mcm9tKGYudHJhbnNhY3Rpb24uaGV4LCAnaGV4JyksIG5ldHdvcmssIHtcbiAgICBhbW91bnRUeXBlOiAnYmlnaW50JyxcbiAgfSk7XG4gIHJldHVybiB7IHRyYW5zYWN0aW9uOiB0eCwgcHJldk91dHB1dHM6IHR4Lmlucy5tYXAoKGkpID0+IGdldFByZXZPdXQoaSkpIH07XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRGaXh0dXJlU3RyaW5nKHBhdGg6IHN0cmluZywgZGVmYXVsdFZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICB0cnkge1xuICAgIHJldHVybiBhd2FpdCBmcy5yZWFkRmlsZShwYXRoLCAndXRmOCcpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgaWYgKChlIGFzIGFueSkuY29kZSA9PT0gJ0VOT0VOVCcpIHtcbiAgICAgIGF3YWl0IGZzLndyaXRlRmlsZShwYXRoLCBkZWZhdWx0VmFsdWUsICd1dGY4Jyk7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYHdyb3RlIGRlZmF1bHQgdmFsdWUgZm9yICR7cGF0aH1gKTtcbiAgICB9XG4gICAgdGhyb3cgZTtcbiAgfVxufVxuIl19
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90ZXN0L2ZpeHR1cmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBUUEsOENBRUM7QUFvQkQsMEJBd0NDO0FBRUQsa0VBZ0RDO0FBRUQsNENBVUM7QUFwSUQsMkJBQW9DO0FBRXBDLGlDQUFpQztBQUNqQywyQ0FBMkM7QUFFM0MsMENBQTJDO0FBRzNDLFNBQWdCLGlCQUFpQixDQUFDLENBQWEsRUFBRSxFQUFFLE9BQU8sRUFBd0I7SUFDaEYsT0FBTyxJQUFBLG1CQUFVLEVBQUMsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksZ0JBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUM5RixDQUFDO0FBa0JELE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztBQUVwRCxLQUFLLFVBQVUsT0FBTyxDQUMzQixPQUF3QixFQUN4QixRQUFnQixFQUNoQixNQUFxQixFQUNyQixFQUFFLFlBQVksS0FBZ0MsRUFBRTtJQUVoRCxNQUFNLE1BQU0sR0FBNkI7UUFDdkMsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBTSxDQUFDLEVBQUU7S0FDbEgsQ0FBQztJQUNGLE1BQU0sT0FBTyxHQUFHLENBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMxRSxJQUFJLEtBQUssR0FBVyxNQUFNLENBQUMsV0FBVyxD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LFFBQVE7S0FDckIsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQzVFLENBQUM7QUFFTSxLQUFLLFVBQVUsZ0JBQWdCLENBQUMsSUFBWSxFQUFFLFlBQW9CO0lBQ3ZFLElBQUksQ0FBQztRQUNILE9BQU8sTUFBTSxhQUFFLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLElBQUssQ0FBUyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNqQyxNQUFNLGFBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxNQUFNLENBQUMsQ0FBQztZQUMvQyxNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3JELENBQUM7UUFDRCxNQUFNLENBQUMsQ0FBQztJQUNWLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcHJvbWlzZXMgYXMgZnMgfSBmcm9tICdmcyc7XG5cbmltcG9ydCB7IEluc3RhbmNlIH0gZnJvbSAnY2hhbGsnO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28vdXR4by1saWInO1xuXG5pbXBvcnQgeyBmb3JtYXRUcmVlIH0gZnJvbSAnLi4vc3JjL2Zvcm1hdCc7XG5pbXBvcnQgeyBQYXJzZXJOb2RlIH0gZnJvbSAnLi4vc3JjL1BhcnNlcic7XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRUcmVlTm9Db2xvcihuOiBQYXJzZXJOb2RlLCB7IHNob3dBbGwgfTogeyBzaG93QWxsOiBib29sZWFuIH0pOiBzdHJpbmcge1xuICByZXR1cm4gZm9ybWF0VHJlZShuLCB7IGhpZGU6IHNob3dBbGwgPyBbXSA6IHVuZGVmaW5lZCwgY2hhbGs6IG5ldyBJbnN0YW5jZSh7IGxldmVsOiAwIH0pIH0pO1xufVxuXG5leHBvcnQgdHlwZSBQYXJzZWRGaXh0dXJlID1cbiAgfCB7XG4gICAgICB0cmFuc2FjdGlvbjogdXR4b2xpYi5iaXRnby5VdHhvVHJhbnNhY3Rpb248YmlnaW50PjtcbiAgICAgIHByZXZPdXRwdXRzOiB1dHhvbGliLlR4T3V0cHV0PGJpZ2ludD5bXTtcbiAgICB9XG4gIHwge1xuICAgICAgdHJhbnNhY3Rpb246IHV0eG9saWIuYml0Z28uVXR4b1BzYnQ7XG4gICAgICBwcmV2T3V0cHV0czogdW5kZWZpbmVkO1xuICAgIH07XG5cbnR5cGUgRml4dHVyZVBhcmFtcyA9IHtcbiAgZml4dHVyZVR5cGU6ICdwc2J0VW5zaWduZWQnIHwgJ3BzYnRIYWxmU2lnbmVkJyB8ICdwc2J0RnVsbFNpZ25lZCcgfCAnbmV0d29ya0Z1bGxTaWduZWQnO1xuICBzY3JpcHRUeXBlOiB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuU2NyaXB0VHlwZTJPZjM7XG4gIHNwZW5kVHlwZT86ICdrZXlQYXRoJyB8ICdzY3JpcHRQYXRoJztcbn07XG5cbmNvbnN0IHdhbGxldEtleXMgPSB1dHhvbGliLnRlc3R1dGlsLmdldERlZmF1bHRXYWxsZXRLZXlzKCk7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRQc2J0KFxuICBuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmssXG4gIGJhc2VQYXRoOiBzdHJpbmcsXG4gIHBhcmFtczogRml4dHVyZVBhcmFtcyxcbiAgeyB3cml0ZUZpeHR1cmUgfTogeyB3cml0ZUZpeHR1cmU/OiBzdHJpbmcgfSA9IHt9XG4pOiBQcm9taXNlPFBhcnNlZEZpeHR1cmU+IHtcbiAgY29uc3QgaW5wdXRzOiB1dHhvbGliLnRlc3R1dGlsLklucHV0W10gPSBbXG4gICAgeyBzY3JpcHRUeXBlOiBwYXJhbXMuc3BlbmRUeXBlID09PSAna2V5UGF0aCcgPyAndGFwcm9vdEtleVBhdGhTcGVuZCcgOiBwYXJhbXMuc2NyaXB0VHlwZSwgdmFsdWU6IEJpZ0ludCgxMF8wMDApIH0sXG4gIF07XG4gIGNvbnN0IG91dHB1dHMgPSBbeyBzY3JpcHRUeXBlOiBwYXJhbXMuc2NyaXB0VHlwZSwgdmFsdWU6IEJpZ0ludCg5XzAwMCkgfV07XG4gIGxldCBzdGFnZTogc3RyaW5nID0gcGFyYW1zLmZpeHR1cmVUeXBlO1xuICBpZiAoc3RhZ2Uuc3RhcnRzV2l0aCgncHNidCcpKSB7XG4gICAgc3RhZ2UgPSBzdGFnZS5zbGljZSgncHNidCcubGVuZ3RoKS50b0xvd2VyQ2FzZSgpO1xuICB9XG4gIGlmIChzdGFnZSAhPT0gJ3Vuc2lnbmVkJyAmJiBzdGFnZSAhPT0gJ2hhbGZzaWduZWQnICYmIHN0YWdlICE9PSAnZnVsbHNpZ25lZCcpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgc3RhZ2UgJHtzdGFnZX1gKTtcbiAgfVxuICBpZiAocGFyYW1zLnNwZW5kVHlwZSA9PT0gJ2tleVBhdGgnICYmIHdyaXRlRml4dHVyZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgLy8gYmVjYXVzZSB3ZSBjdXJyZW50bHkgY2Fubm90IGNyZWF0ZSBkZXRlcm1pbmlzdGljIHNpZ25hdHVyZXMgZm9yIHRhcHJvb3RLZXlQYXRoU3BlbmQsIHdlXG4gICAgLy8gc3RvcmUgYSBjb3B5IGluIGZpeHR1cmVzL3BzYnQgYW5kIHVzZSB0aGF0IGluc3RlYWQgb2YgY3JlYXRpbmcgYSBuZXcgb25lXG4gICAgY29uc3QgZmlsZW5hbWUgPSBiYXNlUGF0aCArIGAvJHtwYXJhbXMuc2NyaXB0VHlwZX0uJHtwYXJhbXMuc3BlbmRUeXBlfS4ke3N0YWdlfS5qc29uYDtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcHNidEhleCA9IEpTT04ucGFyc2UoYXdhaXQgZnMucmVhZEZpbGUoZmlsZW5hbWUsICd1dGY4JykpO1xuICAgICAgY29uc3QgdHJhbnNhY3Rpb24gPSB1dHhvbGliLmJpdGdvLmNyZWF0ZVBzYnRGcm9tSGV4KHBzYnRIZXgsIG5ldHdvcmspO1xuICAgICAgcmV0dXJuIHsgdHJhbnNhY3Rpb24sIHByZXZPdXRwdXRzOiB1bmRlZmluZWQgfTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoZS5jb2RlID09PSAnRU5PRU5UJykge1xuICAgICAgICByZXR1cm4gYXdhaXQgZ2V0UHNidChuZXR3b3JrLCBiYXNlUGF0aCwgcGFyYW1zLCB7IHdyaXRlRml4dHVyZTogZmlsZW5hbWUgfSk7XG4gICAgICB9XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxuICBjb25zdCB0cmFuc2FjdGlvbiA9IHV0eG9saWIudGVzdHV0aWwuY29uc3RydWN0UHNidChpbnB1dHMsIG91dHB1dHMsIG5ldHdvcmssIHdhbGxldEtleXMsIHN0YWdlKTtcbiAgaWYgKHdyaXRlRml4dHVyZSkge1xuICAgIGF3YWl0IGZzLndyaXRlRmlsZSh3cml0ZUZpeHR1cmUsIEpTT04uc3RyaW5naWZ5KHRyYW5zYWN0aW9uLnRvSGV4KCkpLCAndXRmOCcpO1xuICB9XG4gIHJldHVybiB7XG4gICAgdHJhbnNhY3Rpb24sXG4gICAgcHJldk91dHB1dHM6IHVuZGVmaW5lZCxcbiAgfTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFRyYW5zYWN0aW9uV2l0aFNwZW5kVHlwZShcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrLFxuICBiYXNlUGF0aDogc3RyaW5nLFxuICBwYXJhbXM6IEZpeHR1cmVQYXJhbXNcbik6IFByb21pc2U8UGFyc2VkRml4dHVyZT4ge1xuICBpZiAocGFyYW1zLmZpeHR1cmVUeXBlICE9PSAnbmV0d29ya0Z1bGxTaWduZWQnKSB7XG4gICAgcmV0dXJuIGdldFBzYnQobmV0d29yaywgYmFzZVBhdGgsIHBhcmFtcyk7XG4gIH1cblxuICBpZiAocGFyYW1zLnNjcmlwdFR5cGUgPT09ICdwMnRyTXVzaWcyJykge1xuICAgIGlmICghcGFyYW1zLnNwZW5kVHlwZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdwMnRyTXVzaWcyIHJlcXVpcmVzIHBhcmFtcycpO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBpZiAocGFyYW1zLnNwZW5kVHlwZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdvbmx5IHAydHJNdXNpZzIgcmVxdWlyZXMgc3BlbmRUeXBlJyk7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgZmlsZW5hbWUgPSBgc3BlbmRfJHtwYXJhbXMuc2NyaXB0VHlwZX0ke3BhcmFtcy5zcGVuZFR5cGUgPyBgJHtwYXJhbXMuc3BlbmRUeXBlfWAgOiAnJ30uanNvbmA7XG4gIHR5cGUgRml4dHVyZSA9IHtcbiAgICB0cmFuc2FjdGlvbjogeyBoZXg6IHN0cmluZyB9O1xuICAgIGlucHV0czogeyBoZXg6IHN0cmluZyB9W107XG4gIH07XG5cbiAgY29uc3QgZjogRml4dHVyZSA9IGF3YWl0IEpTT04ucGFyc2UoXG4gICAgYXdhaXQgZnMucmVhZEZpbGUoXG4gICAgICBgLi4vdXR4by1saWIvdGVzdC9pbnRlZ3JhdGlvbl9sb2NhbF9ycGMvZml4dHVyZXMvJHt1dHhvbGliLmdldE5ldHdvcmtOYW1lKG5ldHdvcmspfS92MS8ke2ZpbGVuYW1lfWAsXG4gICAgICAndXRmOCdcbiAgICApXG4gICk7XG5cbiAgZnVuY3Rpb24gZ2V0UHJldk91dChpOiB1dHhvbGliLlR4SW5wdXQpOiB1dHhvbGliLlR4T3V0cHV0PGJpZ2ludD4ge1xuICAgIGZvciAoY29uc3QgdCBvZiBpbnB1dFR4cykge1xuICAgICAgaWYgKHQuZ2V0SGFzaCgpLmVxdWFscyhpLmhhc2gpICYmIGkuaW5kZXggaW4gdC5vdXRzKSB7XG4gICAgICAgIHJldHVybiB0Lm91dHNbaS5pbmRleF07XG4gICAgICB9XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcihgbWlzc2luZyBpbnB1dCAke3V0eG9saWIuYml0Z28uZm9ybWF0T3V0cHV0SWQodXR4b2xpYi5iaXRnby5nZXRPdXRwdXRJZEZvcklucHV0KGkpKX1gKTtcbiAgfVxuXG4gIGNvbnN0IGlucHV0VHhzID0gZi5pbnB1dHMubWFwKChpKSA9PlxuICAgIHV0eG9saWIuYml0Z28uY3JlYXRlVHJhbnNhY3Rpb25Gcm9tQnVmZmVyKEJ1ZmZlci5mcm9tKGkuaGV4LCAnaGV4JyksIG5ldHdvcmssIHsgYW1vdW50VHlwZTogJ2JpZ2ludCcgfSlcbiAgKTtcbiAgY29uc3QgdHggPSB1dHhvbGliLmJpdGdvLmNyZWF0ZVRyYW5zYWN0aW9uRnJvbUJ1ZmZlcihCdWZmZXIuZnJvbShmLnRyYW5zYWN0aW9uLmhleCwgJ2hleCcpLCBuZXR3b3JrLCB7XG4gICAgYW1vdW50VHlwZTogJ2JpZ2ludCcsXG4gIH0pO1xuICByZXR1cm4geyB0cmFuc2FjdGlvbjogdHgsIHByZXZPdXRwdXRzOiB0eC5pbnMubWFwKChpKSA9PiBnZXRQcmV2T3V0KGkpKSB9O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Rml4dHVyZVN0cmluZyhwYXRoOiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYXdhaXQgZnMucmVhZEZpbGUocGF0aCwgJ3V0ZjgnKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmICgoZSBhcyBhbnkpLmNvZGUgPT09ICdFTk9FTlQnKSB7XG4gICAgICBhd2FpdCBmcy53cml0ZUZpbGUocGF0aCwgZGVmYXVsdFZhbHVlLCAndXRmOCcpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGB3cm90ZSBkZWZhdWx0IHZhbHVlIGZvciAke3BhdGh9YCk7XG4gICAgfVxuICAgIHRocm93IGU7XG4gIH1cbn1cbiJdfQ==
@@ -43,4 +43,4 @@ describe('generateAddresses', function () {
43
43
  assert.deepStrictEqual(lines, [addr00, addr01]);
44
44
  });
45
45
  });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVBZGRyZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9nZW5lcmF0ZUFkZHJlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFFakMsMkNBQTJDO0FBRTNDLDREQU1nQztBQUVoQyw2Q0FBNEM7QUFFNUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFO0lBQzVCLE1BQU0sQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBQyxHQUFHLElBQUEseUJBQVksRUFBQyxpQkFBaUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDM0csdUJBQXVCO0lBQ3ZCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsR0FBRztRQUN2QyxvQ0FBb0M7UUFDcEMsb0NBQW9DO1FBQ3BDLG9DQUFvQztRQUNwQyxvQ0FBb0M7S0FDckMsQ0FBQztJQUNGLEVBQUUsQ0FBQywyQkFBMkIsRUFBRTtRQUM5QixNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDakIsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFBLDRDQUEwQixFQUFDO1lBQ3pDLE9BQU87WUFDUCxTQUFTO1lBQ1QsUUFBUTtZQUNSLEtBQUssRUFBRSxJQUFBLGlDQUFlLEVBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQixNQUFNLEVBQUUsSUFBSTtZQUNaLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDZCxDQUFDLEVBQUU7WUFDRixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUEsMENBQXdCLEVBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDL0M7UUFFRCxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHNDQUFzQyxFQUFFO1FBQ3pDLHNDQUFzQztRQUN0QyxNQUFNLEtBQUssR0FBRyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUM7UUFDeEUsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLEtBQUssTUFBTSxDQUFDLElBQUksSUFBQSwyQ0FBeUIsRUFBQztZQUN4QyxPQUFPLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPO1lBQ2pDLFVBQVUsRUFBRSxjQUFjLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUk7WUFDN0MsS0FBSyxFQUFFLElBQUEsaUNBQWUsRUFBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9CLE1BQU0sRUFBRSxJQUFJO1NBQ2IsQ0FBQyxFQUFFO1lBQ0YsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFBLHlDQUF1QixFQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQzlDO1FBQ0QsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvL3V0eG8tbGliJztcblxuaW1wb3J0IHtcbiAgZm9ybWF0RGVzY3JpcHRvckFkZHJlc3MsXG4gIGZvcm1hdEZpeGVkU2NyaXB0QWRkcmVzcyxcbiAgZ2VuZXJhdGVEZXNjcmlwdG9yQWRkcmVzcyxcbiAgZ2VuZXJhdGVGaXhlZFNjcmlwdEFkZHJlc3MsXG4gIHBhcnNlSW5kZXhSYW5nZSxcbn0gZnJvbSAnLi4vc3JjL2dlbmVyYXRlQWRkcmVzcyc7XG5cbmltcG9ydCB7IGdldEtleVRyaXBsZSB9IGZyb20gJy4vYmlwMzIudXRpbCc7XG5cbmRlc2NyaWJlKCdnZW5lcmF0ZUFkZHJlc3NlcycsIGZ1bmN0aW9uICgpIHtcbiAgY29uc3QgW3VzZXJLZXksIGJhY2t1cEtleSwgYml0Z29LZXldID0gZ2V0S2V5VHJpcGxlKCdnZW5lcmF0ZUFkZHJlc3MnKS5tYXAoKGspID0+IGsubmV1dGVyZWQoKS50b0Jhc2U1OCgpKTtcbiAgLy8gYWRkciR7Y2hhaW59JHtpbmRleH1cbiAgY29uc3QgW2FkZHIwMCwgYWRkcjEwLCBhZGRyMDEsIGFkZHIxMV0gPSBbXG4gICAgJzM4Rkh4Y1U3S1k0RTJuREVlekVWY0tXR3ZIeTk3MTdlaEYnLFxuICAgICczNVFnMVVxVldTSmR0RjF5c2Z6OWgzS1JHZGs5dUg4aVl4JyxcbiAgICAnM0FSbnNoc0xYRTlRZkplbVFkb0tMMmtwNlRScUdvaExEeicsXG4gICAgJzNReEtXOTNOTjhDUXJLYU5xa0RzQVhQeXhQc3J4ZlRZTUUnLFxuICBdO1xuICBpdCgnc2hvdWxkIGdlbmVyYXRlIGFkZHJlc3NlcycsIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBsaW5lcyA9IFtdO1xuICAgIGZvciAoY29uc3QgbCBvZiBnZW5lcmF0ZUZpeGVkU2NyaXB0QWRkcmVzcyh7XG4gICAgICB1c2VyS2V5LFxuICAgICAgYmFja3VwS2V5LFxuICAgICAgYml0Z29LZXksXG4gICAgICBpbmRleDogcGFyc2VJbmRleFJhbmdlKFsnMC0xJ10pLFxuICAgICAgZm9ybWF0OiAnJWEnLFxuICAgICAgY2hhaW46IFswLCAxXSxcbiAgICB9KSkge1xuICAgICAgbGluZXMucHVzaChmb3JtYXRGaXhlZFNjcmlwdEFkZHJlc3MobCwgJyVhJykpO1xuICAgIH1cblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChsaW5lcy5sZW5ndGgsIDQpO1xuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwobGluZXMsIFthZGRyMDAsIGFkZHIxMCwgYWRkcjAxLCBhZGRyMTFdKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBnZW5lcmF0ZSBkZXNjcmlwdG9yIGFkZHJlc3NlcycsIGZ1bmN0aW9uICgpIHtcbiAgICAvLyBvbmx5IGdlbmVyYXRlIGFkZHJlc3NlcyBmb3IgY2hhaW4gMFxuICAgIGNvbnN0IHhwdWJzID0gW3VzZXJLZXksIGJhY2t1cEtleSwgYml0Z29LZXldLm1hcCgoeCkgPT4geCArICcvMC8wLzAvKicpO1xuICAgIGNvbnN0IGxpbmVzID0gW107XG4gICAgZm9yIChjb25zdCBsIG9mIGdlbmVyYXRlRGVzY3JpcHRvckFkZHJlc3Moe1xuICAgICAgbmV0d29yazogdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luLFxuICAgICAgZGVzY3JpcHRvcjogYHNoKG11bHRpKDIsJHt4cHVicy5qb2luKCcsJyl9KSlgLFxuICAgICAgaW5kZXg6IHBhcnNlSW5kZXhSYW5nZShbJzAtMSddKSxcbiAgICAgIGZvcm1hdDogJyVkJyxcbiAgICB9KSkge1xuICAgICAgbGluZXMucHVzaChmb3JtYXREZXNjcmlwdG9yQWRkcmVzcyhsLCAnJWEnKSk7XG4gICAgfVxuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwobGluZXMsIFthZGRyMDAsIGFkZHIwMV0pO1xuICB9KTtcbn0pO1xuIl19
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVBZGRyZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9nZW5lcmF0ZUFkZHJlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFFakMsMkNBQTJDO0FBRTNDLDREQU1nQztBQUVoQyw2Q0FBNEM7QUFFNUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFO0lBQzVCLE1BQU0sQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBQyxHQUFHLElBQUEseUJBQVksRUFBQyxpQkFBaUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDM0csdUJBQXVCO0lBQ3ZCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsR0FBRztRQUN2QyxvQ0FBb0M7UUFDcEMsb0NBQW9DO1FBQ3BDLG9DQUFvQztRQUNwQyxvQ0FBb0M7S0FDckMsQ0FBQztJQUNGLEVBQUUsQ0FBQywyQkFBMkIsRUFBRTtRQUM5QixNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDakIsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFBLDRDQUEwQixFQUFDO1lBQ3pDLE9BQU87WUFDUCxTQUFTO1lBQ1QsUUFBUTtZQUNSLEtBQUssRUFBRSxJQUFBLGlDQUFlLEVBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQixNQUFNLEVBQUUsSUFBSTtZQUNaLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDZCxDQUFDLEVBQUUsQ0FBQztZQUNILEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBQSwwQ0FBd0IsRUFBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNoRCxDQUFDO1FBRUQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3BDLE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxzQ0FBc0MsRUFBRTtRQUN6QyxzQ0FBc0M7UUFDdEMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNqQixLQUFLLE1BQU0sQ0FBQyxJQUFJLElBQUEsMkNBQXlCLEVBQUM7WUFDeEMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTztZQUNqQyxVQUFVLEVBQUUsY0FBYyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJO1lBQzdDLEtBQUssRUFBRSxJQUFBLGlDQUFlLEVBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQixNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUMsRUFBRSxDQUFDO1lBQ0gsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFBLHlDQUF1QixFQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFDRCxNQUFNLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28vdXR4by1saWInO1xuXG5pbXBvcnQge1xuICBmb3JtYXREZXNjcmlwdG9yQWRkcmVzcyxcbiAgZm9ybWF0Rml4ZWRTY3JpcHRBZGRyZXNzLFxuICBnZW5lcmF0ZURlc2NyaXB0b3JBZGRyZXNzLFxuICBnZW5lcmF0ZUZpeGVkU2NyaXB0QWRkcmVzcyxcbiAgcGFyc2VJbmRleFJhbmdlLFxufSBmcm9tICcuLi9zcmMvZ2VuZXJhdGVBZGRyZXNzJztcblxuaW1wb3J0IHsgZ2V0S2V5VHJpcGxlIH0gZnJvbSAnLi9iaXAzMi51dGlsJztcblxuZGVzY3JpYmUoJ2dlbmVyYXRlQWRkcmVzc2VzJywgZnVuY3Rpb24gKCkge1xuICBjb25zdCBbdXNlcktleSwgYmFja3VwS2V5LCBiaXRnb0tleV0gPSBnZXRLZXlUcmlwbGUoJ2dlbmVyYXRlQWRkcmVzcycpLm1hcCgoaykgPT4gay5uZXV0ZXJlZCgpLnRvQmFzZTU4KCkpO1xuICAvLyBhZGRyJHtjaGFpbn0ke2luZGV4fVxuICBjb25zdCBbYWRkcjAwLCBhZGRyMTAsIGFkZHIwMSwgYWRkcjExXSA9IFtcbiAgICAnMzhGSHhjVTdLWTRFMm5ERWV6RVZjS1dHdkh5OTcxN2VoRicsXG4gICAgJzM1UWcxVXFWV1NKZHRGMXlzZno5aDNLUkdkazl1SDhpWXgnLFxuICAgICczQVJuc2hzTFhFOVFmSmVtUWRvS0wya3A2VFJxR29oTER6JyxcbiAgICAnM1F4S1c5M05OOENRckthTnFrRHNBWFB5eFBzcnhmVFlNRScsXG4gIF07XG4gIGl0KCdzaG91bGQgZ2VuZXJhdGUgYWRkcmVzc2VzJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IGxpbmVzID0gW107XG4gICAgZm9yIChjb25zdCBsIG9mIGdlbmVyYXRlRml4ZWRTY3JpcHRBZGRyZXNzKHtcbiAgICAgIHVzZXJLZXksXG4gICAgICBiYWNrdXBLZXksXG4gICAgICBiaXRnb0tleSxcbiAgICAgIGluZGV4OiBwYXJzZUluZGV4UmFuZ2UoWycwLTEnXSksXG4gICAgICBmb3JtYXQ6ICclYScsXG4gICAgICBjaGFpbjogWzAsIDFdLFxuICAgIH0pKSB7XG4gICAgICBsaW5lcy5wdXNoKGZvcm1hdEZpeGVkU2NyaXB0QWRkcmVzcyhsLCAnJWEnKSk7XG4gICAgfVxuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGxpbmVzLmxlbmd0aCwgNCk7XG4gICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChsaW5lcywgW2FkZHIwMCwgYWRkcjEwLCBhZGRyMDEsIGFkZHIxMV0pO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGdlbmVyYXRlIGRlc2NyaXB0b3IgYWRkcmVzc2VzJywgZnVuY3Rpb24gKCkge1xuICAgIC8vIG9ubHkgZ2VuZXJhdGUgYWRkcmVzc2VzIGZvciBjaGFpbiAwXG4gICAgY29uc3QgeHB1YnMgPSBbdXNlcktleSwgYmFja3VwS2V5LCBiaXRnb0tleV0ubWFwKCh4KSA9PiB4ICsgJy8wLzAvMC8qJyk7XG4gICAgY29uc3QgbGluZXMgPSBbXTtcbiAgICBmb3IgKGNvbnN0IGwgb2YgZ2VuZXJhdGVEZXNjcmlwdG9yQWRkcmVzcyh7XG4gICAgICBuZXR3b3JrOiB1dHhvbGliLm5ldHdvcmtzLmJpdGNvaW4sXG4gICAgICBkZXNjcmlwdG9yOiBgc2gobXVsdGkoMiwke3hwdWJzLmpvaW4oJywnKX0pKWAsXG4gICAgICBpbmRleDogcGFyc2VJbmRleFJhbmdlKFsnMC0xJ10pLFxuICAgICAgZm9ybWF0OiAnJWQnLFxuICAgIH0pKSB7XG4gICAgICBsaW5lcy5wdXNoKGZvcm1hdERlc2NyaXB0b3JBZGRyZXNzKGwsICclYScpKTtcbiAgICB9XG4gICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChsaW5lcywgW2FkZHIwMCwgYWRkcjAxXSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -1 +1 @@
1
- {"version":3,"file":"parseAddress.d.ts","sourceRoot":"","sources":["../../test/parseAddress.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAO3C,QAAA,MAAM,WAAW,iFAAqF,CAAC;AACvG,KAAK,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/C,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAUhG"}
1
+ {"version":3,"file":"parseAddress.d.ts","sourceRoot":"","sources":["../../test/parseAddress.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAQ3C,QAAA,MAAM,WAAW,iFAAqF,CAAC;AACvG,KAAK,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/C,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAchG"}
@@ -1,15 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isSupportedDepositType = void 0;
3
+ exports.isSupportedDepositType = isSupportedDepositType;
4
4
  const assert = require("assert");
5
5
  const yargs = require("yargs");
6
6
  const utxolib = require("@bitgo/utxo-lib");
7
7
  const fixtures_1 = require("./fixtures");
8
8
  const bip32_util_1 = require("./bip32.util");
9
9
  const cmdParse_1 = require("../src/commands/cmdAddress/cmdParse");
10
+ const args_1 = require("../src/args");
10
11
  const scriptTypesSingleSig = ['p2pkh', 'p2wkh'];
11
12
  const scriptTypes = [...utxolib.bitgo.outputScripts.scriptTypes2Of3, ...scriptTypesSingleSig];
12
13
  function isSupportedDepositType(network, scriptType) {
14
+ if (network === args_1.bitcoinRegtest) {
15
+ return isSupportedDepositType(utxolib.networks.bitcoin, scriptType);
16
+ }
13
17
  if (scriptType === 'p2pkh') {
14
18
  return true;
15
19
  }
@@ -18,7 +22,6 @@ function isSupportedDepositType(network, scriptType) {
18
22
  }
19
23
  return utxolib.bitgo.outputScripts.isSupportedScriptType(network, scriptType);
20
24
  }
21
- exports.isSupportedDepositType = isSupportedDepositType;
22
25
  /**
23
26
  *
24
27
  * @param keys - Pubkeys to use for generating the address.
@@ -64,18 +67,17 @@ function testParseAddress(network, type, addressFormat, address, args, suffix) {
64
67
  it(`formats address`, async function () {
65
68
  const formatted = (0, fixtures_1.formatTreeNoColor)(parse(address, args), { showAll: true });
66
69
  const addrNoColon = address.replace(':', '_');
67
- const filename = [utxolib.getNetworkName(network), type, addressFormat, addrNoColon + suffix].join('_');
68
- console.log(filename);
70
+ const filename = [(0, args_1.getNetworkName)(network), type, addressFormat, addrNoColon + suffix].join('_');
69
71
  assert.strictEqual(await (0, fixtures_1.getFixtureString)(`test/fixtures/formatAddress/${filename}.txt`, formatted), formatted);
70
72
  });
71
73
  });
72
74
  }
73
- utxolib.getNetworkList().forEach((n) => {
75
+ (0, args_1.getNetworkList)().forEach((n) => {
74
76
  getAddresses(n).forEach(([type, addressFormat, address], i) => {
75
77
  testParseAddress(n, type, addressFormat, address, [], '');
76
- if ([utxolib.networks.bitcoin, utxolib.networks.bitcoincash, utxolib.networks.ecash].includes(n) && i === 0) {
78
+ if ([utxolib.networks.bitcoin, utxolib.networks.bitcoincash, utxolib.networks.ecash].includes(n)) {
77
79
  testParseAddress(n, type, addressFormat, address, ['--all'], '.all');
78
80
  }
79
81
  });
80
82
  });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VBZGRyZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9wYXJzZUFkZHJlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUNBQWlDO0FBRWpDLCtCQUErQjtBQUMvQiwyQ0FBMkM7QUFFM0MseUNBQWlFO0FBQ2pFLDZDQUF1RDtBQUN2RCxrRUFBaUY7QUFFakYsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQVUsQ0FBQztBQUN6RCxNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsZUFBZSxFQUFFLEdBQUcsb0JBQW9CLENBQVUsQ0FBQztBQUd2RyxTQUFnQixzQkFBc0IsQ0FBQyxPQUF3QixFQUFFLFVBQXNCO0lBQ3JGLElBQUksVUFBVSxLQUFLLE9BQU8sRUFBRTtRQUMxQixPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsSUFBSSxVQUFVLEtBQUssT0FBTyxFQUFFO1FBQzFCLE9BQU8sT0FBTyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUN4QztJQUVELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFWRCx3REFVQztBQUVEOzs7Ozs7O0dBT0c7QUFDSCxTQUFTLGtCQUFrQixDQUFDLElBQWUsRUFBRSxVQUFzQixFQUFFLE9BQXdCO0lBQzNGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUU3QyxRQUFRLFVBQVUsRUFBRTtRQUNsQixLQUFLLE1BQU0sQ0FBQztRQUNaLEtBQUssV0FBVyxDQUFDO1FBQ2pCLEtBQUssT0FBTyxDQUFDO1FBQ2IsS0FBSyxNQUFNLENBQUM7UUFDWixLQUFLLFlBQVk7WUFD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O0FBQ0wsQ0FBQztBQUVELE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUNyQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQzVELGdCQUFnQixDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDM0csZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDdEU7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmltcG9ydCAqIGFzIHlhcmdzIGZyb20gJ3lhcmdzJztcbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvL3V0eG8tbGliJztcblxuaW1wb3J0IHsgZm9ybWF0VHJlZU5vQ29sb3IsIGdldEZpeHR1cmVTdHJpbmcgfSBmcm9tICcuL2ZpeHR1cmVzJztcbmltcG9ydCB7IGdldEtleVRyaXBsZSwgS2V5VHJpcGxlIH0gZnJvbSAnLi9iaXAzMi51dGlsJztcbmltcG9ydCB7IGdldEFkZHJlc3NQYXJzZXIsIGNtZFBhcnNlIH0gZnJvbSAnLi4vc3JjL2NvbW1hbmRzL2NtZEFkZHJlc3MvY21kUGFyc2UnO1xuXG5jb25zdCBzY3JpcHRUeXBlc1NpbmdsZVNpZyA9IFsncDJwa2gnLCAncDJ3a2gnXSBhcyBjb25zdDtcbmNvbnN0IHNjcmlwdFR5cGVzID0gWy4uLnV0eG9saWIuYml0Z28ub3V0cHV0U2NyaXB0cy5zY3JpcHRUeXBlczJPZjMsIC4uLnNjcmlwdFR5cGVzU2luZ2xlU2lnXSBhcyBjb25zdDtcbnR5cGUgU2NyaXB0VHlwZSA9ICh0eXBlb2Ygc2NyaXB0VHlwZXMpW251bWJlcl07XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1N1cHBvcnRlZERlcG9zaXRUeXBlKG5ldHdvcms6IHV0eG9saWIuTmV0d29yaywgc2NyaXB0VHlwZTogU2NyaXB0VHlwZSk6IGJvb2xlYW4ge1xuICBpZiAoc2NyaXB0VHlwZSA9PT0gJ3AycGtoJykge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKHNjcmlwdFR5cGUgPT09ICdwMndraCcpIHtcbiAgICByZXR1cm4gdXR4b2xpYi5zdXBwb3J0c1NlZ3dpdChuZXR3b3JrKTtcbiAgfVxuXG4gIHJldHVybiB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuaXNTdXBwb3J0ZWRTY3JpcHRUeXBlKG5ldHdvcmssIHNjcmlwdFR5cGUpO1xufVxuXG4vKipcbiAqXG4gKiBAcGFyYW0ga2V5cyAtIFB1YmtleXMgdG8gdXNlIGZvciBnZW5lcmF0aW5nIHRoZSBhZGRyZXNzLlxuICogICAgICAgICAgICAgICBJZiBzY3JpcHRUeXBlIGlzIHNpbmdsZS1zaWcsIHRoZSBmaXJzdCBrZXkgd2lsbCBiZSB1c2VkLlxuICogQHBhcmFtIHNjcmlwdFR5cGVcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKiBAcmV0dXJuIHtCdWZmZXJ9IHNjcmlwdFB1YktleVxuICovXG5mdW5jdGlvbiBjcmVhdGVTY3JpcHRQdWJLZXkoa2V5czogS2V5VHJpcGxlLCBzY3JpcHRUeXBlOiBTY3JpcHRUeXBlLCBuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmspOiBCdWZmZXIge1xuICBjb25zdCBwdWJrZXlzID0ga2V5cy5tYXAoKGspID0+IGsucHVibGljS2V5KTtcblxuICBzd2l0Y2ggKHNjcmlwdFR5cGUpIHtcbiAgICBjYXNlICdwMnNoJzpcbiAgICBjYXNlICdwMnNoUDJ3c2gnOlxuICAgIGNhc2UgJ3Ayd3NoJzpcbiAgICBjYXNlICdwMnRyJzpcbiAgICBjYXNlICdwMnRyTXVzaWcyJzpcbiAgICAgIHJldHVybiB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuY3JlYXRlT3V0cHV0U2NyaXB0Mm9mMyhwdWJrZXlzLCBzY3JpcHRUeXBlKS5zY3JpcHRQdWJLZXk7XG4gICAgY2FzZSAncDJwa2gnOlxuICAgICAgcmV0dXJuIHV0eG9saWIucGF5bWVudHMucDJwa2goeyBwdWJrZXk6IGtleXNbMF0ucHVibGljS2V5IH0pLm91dHB1dCBhcyBCdWZmZXI7XG4gICAgY2FzZSAncDJ3a2gnOlxuICAgICAgcmV0dXJuIHV0eG9saWIucGF5bWVudHMucDJ3cGtoKHsgcHVia2V5OiBrZXlzWzBdLnB1YmxpY0tleSB9KS5vdXRwdXQgYXMgQnVmZmVyO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYHVuc3VwcG9ydGVkIG91dHB1dCB0eXBlICR7c2NyaXB0VHlwZX1gKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRBZGRyZXNzZXMobjogdXR4b2xpYi5OZXR3b3JrKTogW3R5cGU6IHN0cmluZywgZm9ybWF0OiBzdHJpbmcsIGFkZHJlc3M6IHN0cmluZ11bXSB7XG4gIGNvbnN0IGtleXMgPSBnZXRLZXlUcmlwbGUoJ3BhcnNlQWRkcmVzcycpO1xuICByZXR1cm4gc2NyaXB0VHlwZXNcbiAgICAuZmlsdGVyKCh0KSA9PiBpc1N1cHBvcnRlZERlcG9zaXRUeXBlKG4sIHQpKVxuICAgIC5mbGF0TWFwKCh0KSA9PlxuICAgICAgdXR4b2xpYi5hZGRyZXNzRm9ybWF0LmFkZHJlc3NGb3JtYXRzXG4gICAgICAgIC5maWx0ZXIoKGZvcm1hdCkgPT4gdXR4b2xpYi5hZGRyZXNzRm9ybWF0LmlzU3VwcG9ydGVkQWRkcmVzc0Zvcm1hdChmb3JtYXQsIG4pKVxuICAgICAgICAubWFwKChmb3JtYXQpOiBbc3RyaW5nLCBzdHJpbmcsIHN0cmluZ10gPT4gW1xuICAgICAgICAgIHQsXG4gICAgICAgICAgZm9ybWF0LFxuICAgICAgICAgIHV0eG9saWIuYWRkcmVzc0Zvcm1hdC5mcm9tT3V0cHV0U2NyaXB0V2l0aEZvcm1hdChjcmVhdGVTY3JpcHRQdWJLZXkoa2V5cywgdCwgbiksIGZvcm1hdCwgbiksXG4gICAgICAgIF0pXG4gICAgKTtcbn1cblxuZnVuY3Rpb24gcGFyc2UoYWRkcmVzczogc3RyaW5nLCBhcmdzOiBzdHJpbmdbXSkge1xuICByZXR1cm4gZ2V0QWRkcmVzc1BhcnNlcih5YXJncyhbXSkuY29tbWFuZChjbWRQYXJzZSkucGFyc2VTeW5jKGFyZ3MpKS5wYXJzZShhZGRyZXNzKTtcbn1cblxuZnVuY3Rpb24gdGVzdFBhcnNlQWRkcmVzcyhcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrLFxuICB0eXBlOiBzdHJpbmcsXG4gIGFkZHJlc3NGb3JtYXQ6IHN0cmluZyxcbiAgYWRkcmVzczogc3RyaW5nLFxuICBhcmdzOiBzdHJpbmdbXSxcbiAgc3VmZml4OiBzdHJpbmdcbikge1xuICBkZXNjcmliZShgcGFyc2UgYWRkcmVzcyAke2FkZHJlc3N9IHdpdGggYXJndW1lbnRzICR7YXJncy5qb2luKCcgJyl9YCwgZnVuY3Rpb24gKCkge1xuICAgIGl0KGBmb3JtYXRzIGFkZHJlc3NgLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBmb3JtYXR0ZWQgPSBmb3JtYXRUcmVlTm9Db2xvcihwYXJzZShhZGRyZXNzLCBhcmdzKSwgeyBzaG93QWxsOiB0cnVlIH0pO1xuICAgICAgY29uc3QgYWRkck5vQ29sb24gPSBhZGRyZXNzLnJlcGxhY2UoJzonLCAnXycpO1xuICAgICAgY29uc3QgZmlsZW5hbWUgPSBbdXR4b2xpYi5nZXROZXR3b3JrTmFtZShuZXR3b3JrKSwgdHlwZSwgYWRkcmVzc0Zvcm1hdCwgYWRkck5vQ29sb24gKyBzdWZmaXhdLmpvaW4oJ18nKTtcbiAgICAgIGNvbnNvbGUubG9nKGZpbGVuYW1lKTtcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChhd2FpdCBnZXRGaXh0dXJlU3RyaW5nKGB0ZXN0L2ZpeHR1cmVzL2Zvcm1hdEFkZHJlc3MvJHtmaWxlbmFtZX0udHh0YCwgZm9ybWF0dGVkKSwgZm9ybWF0dGVkKTtcbiAgICB9KTtcbiAgfSk7XG59XG5cbnV0eG9saWIuZ2V0TmV0d29ya0xpc3QoKS5mb3JFYWNoKChuKSA9PiB7XG4gIGdldEFkZHJlc3NlcyhuKS5mb3JFYWNoKChbdHlwZSwgYWRkcmVzc0Zvcm1hdCwgYWRkcmVzc10sIGkpID0+IHtcbiAgICB0ZXN0UGFyc2VBZGRyZXNzKG4sIHR5cGUsIGFkZHJlc3NGb3JtYXQsIGFkZHJlc3MsIFtdLCAnJyk7XG4gICAgaWYgKFt1dHhvbGliLm5ldHdvcmtzLmJpdGNvaW4sIHV0eG9saWIubmV0d29ya3MuYml0Y29pbmNhc2gsIHV0eG9saWIubmV0d29ya3MuZWNhc2hdLmluY2x1ZGVzKG4pICYmIGkgPT09IDApIHtcbiAgICAgIHRlc3RQYXJzZUFkZHJlc3MobiwgdHlwZSwgYWRkcmVzc0Zvcm1hdCwgYWRkcmVzcywgWyctLWFsbCddLCAnLmFsbCcpO1xuICAgIH1cbiAgfSk7XG59KTtcbiJdfQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VBZGRyZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9wYXJzZUFkZHJlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFjQSx3REFjQztBQTVCRCxpQ0FBaUM7QUFFakMsK0JBQStCO0FBQy9CLDJDQUEyQztBQUUzQyx5Q0FBaUU7QUFDakUsNkNBQXVEO0FBQ3ZELGtFQUFpRjtBQUNqRixzQ0FBNkU7QUFFN0UsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQVUsQ0FBQztBQUN6RCxNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsZUFBZSxFQUFFLEdBQUcsb0JBQW9CLENBQVUsQ0FBQztBQUd2RyxTQUFnQixzQkFBc0IsQ0FBQyxPQUF3QixFQUFFLFVBQXNCO0lBQ3JGLElBQUksT0FBTyxLQUFLLHFCQUFjLEVBQUUsQ0FBQztRQUMvQixPQUFPLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxJQUFJLFVBQVUsS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUMzQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJLFVBQVUsS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUMzQixPQUFPLE9BQU8sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsU0FBUyxrQkFBa0IsQ0FBQyxJQUFlLEVBQUUsVUFBc0IsRUFBRSxPQUF3QjtJQUMzRixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFN0MsUUFBUSxVQUFVLEVBQUUsQ0FBQztRQUNuQixLQUFLLE1BQU0sQ0FBQztRQUNaLEtBQUssV0FBVyxDQUFDO1FBQ2pCLEtBQUssT0FBTyxDQUFDO1FBQ2IsS0FBSyxNQUFNLENBQUM7UUFDWixLQUFLLFlBQVk7WUFDZixPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFDOUYsS0FBSyxPQUFPO1lBQ1YsT0FBTyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUFnQixDQUFDO1FBQ2hGLEtBQUssT0FBTztZQUNWLE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsTUFBZ0IsQ0FBQztRQUNqRjtZQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsMkJBQTJCLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztBQUNILENBQUM7QUFFRCxTQUFTLFlBQVksQ0FBQyxDQUFrQjtJQUN0QyxNQUFNLElBQUksR0FBRyxJQUFBLHlCQUFZLEVBQUMsY0FBYyxDQUFDLENBQUM7SUFDMUMsT0FBTyxXQUFXO1NBQ2YsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDM0MsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDYixPQUFPLENBQUMsYUFBYSxDQUFDLGNBQWM7U0FDakMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztTQUM3RSxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQTRCLEVBQUUsQ0FBQztRQUN6QyxDQUFDO1FBQ0QsTUFBTTtRQUNOLE9BQU8sQ0FBQyxhQUFhLENBQUMsMEJBQTBCLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0tBQzVGLENBQUMsQ0FDTCxDQUFDO0FBQ04sQ0FBQztBQUVELFNBQVMsS0FBSyxDQUFDLE9BQWUsRUFBRSxJQUFjO0lBQzVDLE9BQU8sSUFBQSwyQkFBZ0IsRUFBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLG1CQUFRLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDdEYsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQ3ZCLE9BQXdCLEVBQ3hCLElBQVksRUFDWixhQUFxQixFQUNyQixPQUFlLEVBQ2YsSUFBYyxFQUNkLE1BQWM7SUFFZCxRQUFRLENBQUMsaUJBQWlCLE9BQU8sbUJBQW1CLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRTtRQUNwRSxFQUFFLENBQUMsaUJBQWlCLEVBQUUsS0FBSztZQUN6QixNQUFNLFNBQVMsR0FBRyxJQUFBLDRCQUFpQixFQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUM3RSxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUM5QyxNQUFNLFFBQVEsR0FBRyxDQUFDLElBQUEscUJBQWMsRUFBQyxPQUFPLENBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLFdBQVcsR0FBRyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDaEcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLElBQUEsMkJBQWdCLEVBQUMsK0JBQStCLFFBQVEsTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2xILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsSUFBQSxxQkFBYyxHQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDN0IsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUM1RCxnQkFBZ0IsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2pHLGdCQUFnQixDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZFLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmltcG9ydCAqIGFzIHlhcmdzIGZyb20gJ3lhcmdzJztcbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvL3V0eG8tbGliJztcblxuaW1wb3J0IHsgZm9ybWF0VHJlZU5vQ29sb3IsIGdldEZpeHR1cmVTdHJpbmcgfSBmcm9tICcuL2ZpeHR1cmVzJztcbmltcG9ydCB7IGdldEtleVRyaXBsZSwgS2V5VHJpcGxlIH0gZnJvbSAnLi9iaXAzMi51dGlsJztcbmltcG9ydCB7IGdldEFkZHJlc3NQYXJzZXIsIGNtZFBhcnNlIH0gZnJvbSAnLi4vc3JjL2NvbW1hbmRzL2NtZEFkZHJlc3MvY21kUGFyc2UnO1xuaW1wb3J0IHsgYml0Y29pblJlZ3Rlc3QsIGdldE5ldHdvcmtMaXN0LCBnZXROZXR3b3JrTmFtZSB9IGZyb20gJy4uL3NyYy9hcmdzJztcblxuY29uc3Qgc2NyaXB0VHlwZXNTaW5nbGVTaWcgPSBbJ3AycGtoJywgJ3Ayd2toJ10gYXMgY29uc3Q7XG5jb25zdCBzY3JpcHRUeXBlcyA9IFsuLi51dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuc2NyaXB0VHlwZXMyT2YzLCAuLi5zY3JpcHRUeXBlc1NpbmdsZVNpZ10gYXMgY29uc3Q7XG50eXBlIFNjcmlwdFR5cGUgPSAodHlwZW9mIHNjcmlwdFR5cGVzKVtudW1iZXJdO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNTdXBwb3J0ZWREZXBvc2l0VHlwZShuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmssIHNjcmlwdFR5cGU6IFNjcmlwdFR5cGUpOiBib29sZWFuIHtcbiAgaWYgKG5ldHdvcmsgPT09IGJpdGNvaW5SZWd0ZXN0KSB7XG4gICAgcmV0dXJuIGlzU3VwcG9ydGVkRGVwb3NpdFR5cGUodXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luLCBzY3JpcHRUeXBlKTtcbiAgfVxuXG4gIGlmIChzY3JpcHRUeXBlID09PSAncDJwa2gnKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBpZiAoc2NyaXB0VHlwZSA9PT0gJ3Ayd2toJykge1xuICAgIHJldHVybiB1dHhvbGliLnN1cHBvcnRzU2Vnd2l0KG5ldHdvcmspO1xuICB9XG5cbiAgcmV0dXJuIHV0eG9saWIuYml0Z28ub3V0cHV0U2NyaXB0cy5pc1N1cHBvcnRlZFNjcmlwdFR5cGUobmV0d29yaywgc2NyaXB0VHlwZSk7XG59XG5cbi8qKlxuICpcbiAqIEBwYXJhbSBrZXlzIC0gUHVia2V5cyB0byB1c2UgZm9yIGdlbmVyYXRpbmcgdGhlIGFkZHJlc3MuXG4gKiAgICAgICAgICAgICAgIElmIHNjcmlwdFR5cGUgaXMgc2luZ2xlLXNpZywgdGhlIGZpcnN0IGtleSB3aWxsIGJlIHVzZWQuXG4gKiBAcGFyYW0gc2NyaXB0VHlwZVxuICogQHBhcmFtIG5ldHdvcmtcbiAqIEByZXR1cm4ge0J1ZmZlcn0gc2NyaXB0UHViS2V5XG4gKi9cbmZ1bmN0aW9uIGNyZWF0ZVNjcmlwdFB1YktleShrZXlzOiBLZXlUcmlwbGUsIHNjcmlwdFR5cGU6IFNjcmlwdFR5cGUsIG5ldHdvcms6IHV0eG9saWIuTmV0d29yayk6IEJ1ZmZlciB7XG4gIGNvbnN0IHB1YmtleXMgPSBrZXlzLm1hcCgoaykgPT4gay5wdWJsaWNLZXkpO1xuXG4gIHN3aXRjaCAoc2NyaXB0VHlwZSkge1xuICAgIGNhc2UgJ3Ayc2gnOlxuICAgIGNhc2UgJ3Ayc2hQMndzaCc6XG4gICAgY2FzZSAncDJ3c2gnOlxuICAgIGNhc2UgJ3AydHInOlxuICAgIGNhc2UgJ3AydHJNdXNpZzInOlxuICAgICAgcmV0dXJuIHV0eG9saWIuYml0Z28ub3V0cHV0U2NyaXB0cy5jcmVhdGVPdXRwdXRTY3JpcHQyb2YzKHB1YmtleXMsIHNjcmlwdFR5cGUpLnNjcmlwdFB1YktleTtcbiAgICBjYXNlICdwMnBraCc6XG4gICAgICByZXR1cm4gdXR4b2xpYi5wYXltZW50cy5wMnBraCh7IHB1YmtleToga2V5c1swXS5wdWJsaWNLZXkgfSkub3V0cHV0IGFzIEJ1ZmZlcjtcbiAgICBjYXNlICdwMndraCc6XG4gICAgICByZXR1cm4gdXR4b2xpYi5wYXltZW50cy5wMndwa2goeyBwdWJrZXk6IGtleXNbMF0ucHVibGljS2V5IH0pLm91dHB1dCBhcyBCdWZmZXI7XG4gICAgZGVmYXVsdDpcbiAgICAgIHRocm93IG5ldyBFcnJvcihgdW5zdXBwb3J0ZWQgb3V0cHV0IHR5cGUgJHtzY3JpcHRUeXBlfWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldEFkZHJlc3NlcyhuOiB1dHhvbGliLk5ldHdvcmspOiBbdHlwZTogc3RyaW5nLCBmb3JtYXQ6IHN0cmluZywgYWRkcmVzczogc3RyaW5nXVtdIHtcbiAgY29uc3Qga2V5cyA9IGdldEtleVRyaXBsZSgncGFyc2VBZGRyZXNzJyk7XG4gIHJldHVybiBzY3JpcHRUeXBlc1xuICAgIC5maWx0ZXIoKHQpID0+IGlzU3VwcG9ydGVkRGVwb3NpdFR5cGUobiwgdCkpXG4gICAgLmZsYXRNYXAoKHQpID0+XG4gICAgICB1dHhvbGliLmFkZHJlc3NGb3JtYXQuYWRkcmVzc0Zvcm1hdHNcbiAgICAgICAgLmZpbHRlcigoZm9ybWF0KSA9PiB1dHhvbGliLmFkZHJlc3NGb3JtYXQuaXNTdXBwb3J0ZWRBZGRyZXNzRm9ybWF0KGZvcm1hdCwgbikpXG4gICAgICAgIC5tYXAoKGZvcm1hdCk6IFtzdHJpbmcsIHN0cmluZywgc3RyaW5nXSA9PiBbXG4gICAgICAgICAgdCxcbiAgICAgICAgICBmb3JtYXQsXG4gICAgICAgICAgdXR4b2xpYi5hZGRyZXNzRm9ybWF0LmZyb21PdXRwdXRTY3JpcHRXaXRoRm9ybWF0KGNyZWF0ZVNjcmlwdFB1YktleShrZXlzLCB0LCBuKSwgZm9ybWF0LCBuKSxcbiAgICAgICAgXSlcbiAgICApO1xufVxuXG5mdW5jdGlvbiBwYXJzZShhZGRyZXNzOiBzdHJpbmcsIGFyZ3M6IHN0cmluZ1tdKSB7XG4gIHJldHVybiBnZXRBZGRyZXNzUGFyc2VyKHlhcmdzKFtdKS5jb21tYW5kKGNtZFBhcnNlKS5wYXJzZVN5bmMoYXJncykpLnBhcnNlKGFkZHJlc3MpO1xufVxuXG5mdW5jdGlvbiB0ZXN0UGFyc2VBZGRyZXNzKFxuICBuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmssXG4gIHR5cGU6IHN0cmluZyxcbiAgYWRkcmVzc0Zvcm1hdDogc3RyaW5nLFxuICBhZGRyZXNzOiBzdHJpbmcsXG4gIGFyZ3M6IHN0cmluZ1tdLFxuICBzdWZmaXg6IHN0cmluZ1xuKSB7XG4gIGRlc2NyaWJlKGBwYXJzZSBhZGRyZXNzICR7YWRkcmVzc30gd2l0aCBhcmd1bWVudHMgJHthcmdzLmpvaW4oJyAnKX1gLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoYGZvcm1hdHMgYWRkcmVzc2AsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZCA9IGZvcm1hdFRyZWVOb0NvbG9yKHBhcnNlKGFkZHJlc3MsIGFyZ3MpLCB7IHNob3dBbGw6IHRydWUgfSk7XG4gICAgICBjb25zdCBhZGRyTm9Db2xvbiA9IGFkZHJlc3MucmVwbGFjZSgnOicsICdfJyk7XG4gICAgICBjb25zdCBmaWxlbmFtZSA9IFtnZXROZXR3b3JrTmFtZShuZXR3b3JrKSwgdHlwZSwgYWRkcmVzc0Zvcm1hdCwgYWRkck5vQ29sb24gKyBzdWZmaXhdLmpvaW4oJ18nKTtcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChhd2FpdCBnZXRGaXh0dXJlU3RyaW5nKGB0ZXN0L2ZpeHR1cmVzL2Zvcm1hdEFkZHJlc3MvJHtmaWxlbmFtZX0udHh0YCwgZm9ybWF0dGVkKSwgZm9ybWF0dGVkKTtcbiAgICB9KTtcbiAgfSk7XG59XG5cbmdldE5ldHdvcmtMaXN0KCkuZm9yRWFjaCgobikgPT4ge1xuICBnZXRBZGRyZXNzZXMobikuZm9yRWFjaCgoW3R5cGUsIGFkZHJlc3NGb3JtYXQsIGFkZHJlc3NdLCBpKSA9PiB7XG4gICAgdGVzdFBhcnNlQWRkcmVzcyhuLCB0eXBlLCBhZGRyZXNzRm9ybWF0LCBhZGRyZXNzLCBbXSwgJycpO1xuICAgIGlmIChbdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luLCB1dHhvbGliLm5ldHdvcmtzLmJpdGNvaW5jYXNoLCB1dHhvbGliLm5ldHdvcmtzLmVjYXNoXS5pbmNsdWRlcyhuKSkge1xuICAgICAgdGVzdFBhcnNlQWRkcmVzcyhuLCB0eXBlLCBhZGRyZXNzRm9ybWF0LCBhZGRyZXNzLCBbJy0tYWxsJ10sICcuYWxsJyk7XG4gICAgfVxuICB9KTtcbn0pO1xuIl19
@@ -35,4 +35,4 @@ function testParseScript(type) {
35
35
  utxolib.bitgo.outputScripts.scriptTypes2Of3.forEach((scriptType) => {
36
36
  testParseScript(scriptType);
37
37
  });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VTY3JpcHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90ZXN0L3BhcnNlU2NyaXB0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUNBQWlDO0FBRWpDLDJDQUEyQztBQUczQyxzREFBbUQ7QUFFbkQseUNBQTZHO0FBRTdHLFNBQVMsZUFBZSxDQUFDLElBQWdEO0lBQ3ZFLElBQUksRUFBaUIsQ0FBQztJQUN0QixNQUFNLENBQUMsbUJBQW1CLEVBQUUsS0FBSztRQUMvQixFQUFFLEdBQUcsTUFBTSxJQUFBLHNDQUEyQixFQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFO1lBQzNGLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLFNBQVMsRUFBRSxJQUFJLEtBQUssWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDM0QsV0FBVyxFQUFFLGdCQUFnQjtTQUM5QixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sTUFBTSxHQUFHLElBQUksMkJBQVksRUFBRSxDQUFDO0lBRWxDLFNBQVMsS0FBSyxDQUFDLEtBQWEsRUFBRSxNQUFjO1FBQzFDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELEVBQUUsQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUUsS0FBSztRQUM5QixJQUFJLEVBQUUsQ0FBQyxXQUFXLFlBQVksT0FBTyxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUU7WUFDM0QsT0FBTyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDcEI7UUFFRCxNQUFNLEtBQUssR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDekQsT0FBTztnQkFDTCxHQUFHLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQzFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQzthQUM5RSxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLElBQUksR0FBRyxJQUFJLDJCQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV2RSxNQUFNLFNBQVMsR0FBRyxJQUFBLDRCQUFpQixFQUFDLElBQUksRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTdELE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLE1BQU0sSUFBQSwyQkFBZ0IsRUFBQyw4QkFBOEIsSUFBSSxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUM3RyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7SUFDakUsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQzlCLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvL3V0eG8tbGliJztcblxuaW1wb3J0IHsgUGFyc2VyTm9kZSB9IGZyb20gJy4uL3NyYy9QYXJzZXInO1xuaW1wb3J0IHsgU2NyaXB0UGFyc2VyIH0gZnJvbSAnLi4vc3JjL1NjcmlwdFBhcnNlcic7XG5cbmltcG9ydCB7IGZvcm1hdFRyZWVOb0NvbG9yLCBnZXRGaXh0dXJlU3RyaW5nLCBnZXRUcmFuc2FjdGlvbldpdGhTcGVuZFR5cGUsIFBhcnNlZEZpeHR1cmUgfSBmcm9tICcuL2ZpeHR1cmVzJztcblxuZnVuY3Rpb24gdGVzdFBhcnNlU2NyaXB0KHR5cGU6IHV0eG9saWIuYml0Z28ub3V0cHV0U2NyaXB0cy5TY3JpcHRUeXBlMk9mMykge1xuICBsZXQgdHg6IFBhcnNlZEZpeHR1cmU7XG4gIGJlZm9yZSgnc2V0dXAgdHJhbnNhY3Rpb24nLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgdHggPSBhd2FpdCBnZXRUcmFuc2FjdGlvbldpdGhTcGVuZFR5cGUodXR4b2xpYi5uZXR3b3Jrcy50ZXN0bmV0LCAndGVzdC9maXh0dXJlcy9wYXJzZS9wc2J0Jywge1xuICAgICAgc2NyaXB0VHlwZTogdHlwZSxcbiAgICAgIHNwZW5kVHlwZTogdHlwZSA9PT0gJ3AydHJNdXNpZzInID8gJ3NjcmlwdFBhdGgnIDogdW5kZWZpbmVkLFxuICAgICAgZml4dHVyZVR5cGU6ICdwc2J0RnVsbFNpZ25lZCcsXG4gICAgfSk7XG4gIH0pO1xuXG4gIGNvbnN0IHBhcnNlciA9IG5ldyBTY3JpcHRQYXJzZXIoKTtcblxuICBmdW5jdGlvbiBwYXJzZShsYWJlbDogc3RyaW5nLCBzY3JpcHQ6IEJ1ZmZlcik6IFBhcnNlck5vZGUge1xuICAgIHJldHVybiBwYXJzZXIubm9kZShsYWJlbCwgdW5kZWZpbmVkLCBbcGFyc2VyLnBhcnNlKHNjcmlwdCldKTtcbiAgfVxuXG4gIGl0KGBwYXJzZSBzY3JpcHQgJHt0eXBlfWAsIGFzeW5jIGZ1bmN0aW9uICh0aGlzOiBNb2NoYS5Db250ZXh0KSB7XG4gICAgaWYgKHR4LnRyYW5zYWN0aW9uIGluc3RhbmNlb2YgdXR4b2xpYi5iaXRnby5VdHhvVHJhbnNhY3Rpb24pIHtcbiAgICAgIHJldHVybiB0aGlzLnNraXAoKTtcbiAgICB9XG5cbiAgICBjb25zdCBub2RlcyA9IHR4LnRyYW5zYWN0aW9uLmRhdGEuaW5wdXRzLmZsYXRNYXAoKGlucHV0KSA9PiB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICAuLi4oaW5wdXQucmVkZWVtU2NyaXB0ID8gW3BhcnNlKCdyZWRlZW1TY3JpcHQnLCBpbnB1dC5yZWRlZW1TY3JpcHQpXSA6IFtdKSxcbiAgICAgICAgLi4uKGlucHV0LndpdG5lc3NTY3JpcHQgPyBbcGFyc2UoJ3dpdG5lc3NTY3JpcHQnLCBpbnB1dC53aXRuZXNzU2NyaXB0KV0gOiBbXSksXG4gICAgICBdO1xuICAgIH0pO1xuXG4gICAgY29uc3Qgcm9vdCA9IG5ldyBTY3JpcHRQYXJzZXIoKS5ub2RlKCdpbnB1dFNjcmlwdHMnLCB1bmRlZmluZWQsIG5vZGVzKTtcblxuICAgIGNvbnN0IGZvcm1hdHRlZCA9IGZvcm1hdFRyZWVOb0NvbG9yKHJvb3QsIHsgc2hvd0FsbDogdHJ1ZSB9KTtcblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChmb3JtYXR0ZWQsIGF3YWl0IGdldEZpeHR1cmVTdHJpbmcoYHRlc3QvZml4dHVyZXMvZm9ybWF0U2NyaXB0LyR7dHlwZX0udHh0YCwgZm9ybWF0dGVkKSk7XG4gIH0pO1xufVxuXG51dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuc2NyaXB0VHlwZXMyT2YzLmZvckVhY2goKHNjcmlwdFR5cGUpID0+IHtcbiAgdGVzdFBhcnNlU2NyaXB0KHNjcmlwdFR5cGUpO1xufSk7XG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VTY3JpcHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90ZXN0L3BhcnNlU2NyaXB0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUNBQWlDO0FBRWpDLDJDQUEyQztBQUczQyxzREFBbUQ7QUFFbkQseUNBQTZHO0FBRTdHLFNBQVMsZUFBZSxDQUFDLElBQWdEO0lBQ3ZFLElBQUksRUFBaUIsQ0FBQztJQUN0QixNQUFNLENBQUMsbUJBQW1CLEVBQUUsS0FBSztRQUMvQixFQUFFLEdBQUcsTUFBTSxJQUFBLHNDQUEyQixFQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFO1lBQzNGLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLFNBQVMsRUFBRSxJQUFJLEtBQUssWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDM0QsV0FBVyxFQUFFLGdCQUFnQjtTQUM5QixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sTUFBTSxHQUFHLElBQUksMkJBQVksRUFBRSxDQUFDO0lBRWxDLFNBQVMsS0FBSyxDQUFDLEtBQWEsRUFBRSxNQUFjO1FBQzFDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELEVBQUUsQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUUsS0FBSztRQUM5QixJQUFJLEVBQUUsQ0FBQyxXQUFXLFlBQVksT0FBTyxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUM1RCxPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixDQUFDO1FBRUQsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3pELE9BQU87Z0JBQ0wsR0FBRyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUMxRSxHQUFHLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7YUFDOUUsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxJQUFJLEdBQUcsSUFBSSwyQkFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFdkUsTUFBTSxTQUFTLEdBQUcsSUFBQSw0QkFBaUIsRUFBQyxJQUFJLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUU3RCxNQUFNLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxNQUFNLElBQUEsMkJBQWdCLEVBQUMsOEJBQThCLElBQUksTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDN0csQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO0lBQ2pFLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUM5QixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuXG5pbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby91dHhvLWxpYic7XG5cbmltcG9ydCB7IFBhcnNlck5vZGUgfSBmcm9tICcuLi9zcmMvUGFyc2VyJztcbmltcG9ydCB7IFNjcmlwdFBhcnNlciB9IGZyb20gJy4uL3NyYy9TY3JpcHRQYXJzZXInO1xuXG5pbXBvcnQgeyBmb3JtYXRUcmVlTm9Db2xvciwgZ2V0Rml4dHVyZVN0cmluZywgZ2V0VHJhbnNhY3Rpb25XaXRoU3BlbmRUeXBlLCBQYXJzZWRGaXh0dXJlIH0gZnJvbSAnLi9maXh0dXJlcyc7XG5cbmZ1bmN0aW9uIHRlc3RQYXJzZVNjcmlwdCh0eXBlOiB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuU2NyaXB0VHlwZTJPZjMpIHtcbiAgbGV0IHR4OiBQYXJzZWRGaXh0dXJlO1xuICBiZWZvcmUoJ3NldHVwIHRyYW5zYWN0aW9uJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIHR4ID0gYXdhaXQgZ2V0VHJhbnNhY3Rpb25XaXRoU3BlbmRUeXBlKHV0eG9saWIubmV0d29ya3MudGVzdG5ldCwgJ3Rlc3QvZml4dHVyZXMvcGFyc2UvcHNidCcsIHtcbiAgICAgIHNjcmlwdFR5cGU6IHR5cGUsXG4gICAgICBzcGVuZFR5cGU6IHR5cGUgPT09ICdwMnRyTXVzaWcyJyA/ICdzY3JpcHRQYXRoJyA6IHVuZGVmaW5lZCxcbiAgICAgIGZpeHR1cmVUeXBlOiAncHNidEZ1bGxTaWduZWQnLFxuICAgIH0pO1xuICB9KTtcblxuICBjb25zdCBwYXJzZXIgPSBuZXcgU2NyaXB0UGFyc2VyKCk7XG5cbiAgZnVuY3Rpb24gcGFyc2UobGFiZWw6IHN0cmluZywgc2NyaXB0OiBCdWZmZXIpOiBQYXJzZXJOb2RlIHtcbiAgICByZXR1cm4gcGFyc2VyLm5vZGUobGFiZWwsIHVuZGVmaW5lZCwgW3BhcnNlci5wYXJzZShzY3JpcHQpXSk7XG4gIH1cblxuICBpdChgcGFyc2Ugc2NyaXB0ICR7dHlwZX1gLCBhc3luYyBmdW5jdGlvbiAodGhpczogTW9jaGEuQ29udGV4dCkge1xuICAgIGlmICh0eC50cmFuc2FjdGlvbiBpbnN0YW5jZW9mIHV0eG9saWIuYml0Z28uVXR4b1RyYW5zYWN0aW9uKSB7XG4gICAgICByZXR1cm4gdGhpcy5za2lwKCk7XG4gICAgfVxuXG4gICAgY29uc3Qgbm9kZXMgPSB0eC50cmFuc2FjdGlvbi5kYXRhLmlucHV0cy5mbGF0TWFwKChpbnB1dCkgPT4ge1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgLi4uKGlucHV0LnJlZGVlbVNjcmlwdCA/IFtwYXJzZSgncmVkZWVtU2NyaXB0JywgaW5wdXQucmVkZWVtU2NyaXB0KV0gOiBbXSksXG4gICAgICAgIC4uLihpbnB1dC53aXRuZXNzU2NyaXB0ID8gW3BhcnNlKCd3aXRuZXNzU2NyaXB0JywgaW5wdXQud2l0bmVzc1NjcmlwdCldIDogW10pLFxuICAgICAgXTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJvb3QgPSBuZXcgU2NyaXB0UGFyc2VyKCkubm9kZSgnaW5wdXRTY3JpcHRzJywgdW5kZWZpbmVkLCBub2Rlcyk7XG5cbiAgICBjb25zdCBmb3JtYXR0ZWQgPSBmb3JtYXRUcmVlTm9Db2xvcihyb290LCB7IHNob3dBbGw6IHRydWUgfSk7XG5cbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZm9ybWF0dGVkLCBhd2FpdCBnZXRGaXh0dXJlU3RyaW5nKGB0ZXN0L2ZpeHR1cmVzL2Zvcm1hdFNjcmlwdC8ke3R5cGV9LnR4dGAsIGZvcm1hdHRlZCkpO1xuICB9KTtcbn1cblxudXR4b2xpYi5iaXRnby5vdXRwdXRTY3JpcHRzLnNjcmlwdFR5cGVzMk9mMy5mb3JFYWNoKChzY3JpcHRUeXBlKSA9PiB7XG4gIHRlc3RQYXJzZVNjcmlwdChzY3JpcHRUeXBlKTtcbn0pO1xuIl19
@@ -64,4 +64,4 @@ getParams().forEach(({ scriptType, spendType, fixtureType, showAll }) => {
64
64
  });
65
65
  });
66
66
  });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VUcmFuc2FjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3Rlc3QvcGFyc2VUcmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlDQUFpQztBQUVqQywrQkFBK0I7QUFFL0IsMkNBQTJDO0FBSTNDLDhDQUEwRDtBQUUxRCx5Q0FBNkc7QUFTN0csU0FBUyxPQUFPLENBQUMsRUFBRSxPQUFPLEVBQXdCO0lBQ2hELE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDbEMsQ0FBQztBQUVELFNBQVMsU0FBUztJQUNoQixPQUFRLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixDQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7UUFDbEgsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUN2QyxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLEVBQWdCLEVBQUU7Z0JBQ3RGLElBQUksVUFBVSxLQUFLLFlBQVksRUFBRTtvQkFDL0IsT0FBTzt3QkFDTCxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUU7d0JBQzFELEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRTtxQkFDOUQsQ0FBQztpQkFDSDtnQkFDRCxPQUFPLENBQUMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUN0RSxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENB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c3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuaW1wb3J0ICogYXMgeWFyZ3MgZnJvbSAneWFyZ3MnO1xuaW1wb3J0ICogYXMgbW9jaGEgZnJvbSAnbW9jaGEnO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28vdXR4by1saWInO1xuXG5pbXBvcnQgeyBQYXJzZXJOb2RlIH0gZnJvbSAnLi4vc3JjL1BhcnNlcic7XG5pbXBvcnQgeyBQYXJzZXJUeCB9IGZyb20gJy4uL3NyYy9QYXJzZXJUeCc7XG5pbXBvcnQgeyBjbWRQYXJzZVR4LCBnZXRUeFBhcnNlciB9IGZyb20gJy4uL3NyYy9jb21tYW5kcyc7XG5cbmltcG9ydCB7IGZvcm1hdFRyZWVOb0NvbG9yLCBnZXRGaXh0dXJlU3RyaW5nLCBnZXRUcmFuc2FjdGlvbldpdGhTcGVuZFR5cGUsIFBhcnNlZEZpeHR1cmUgfSBmcm9tICcuL2ZpeHR1cmVzJztcblxudHlwZSBUZXN0UGFyYW1zID0ge1xuICBzY3JpcHRUeXBlOiB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuU2NyaXB0VHlwZTJPZjM7XG4gIHNwZW5kVHlwZTogJ2tleVBhdGgnIHwgJ3NjcmlwdFBhdGgnIHwgdW5kZWZpbmVkO1xuICBmaXh0dXJlVHlwZTogJ3BzYnRVbnNpZ25lZCcgfCAncHNidEhhbGZTaWduZWQnIHwgJ3BzYnRGdWxsU2lnbmVkJyB8ICduZXR3b3JrRnVsbFNpZ25lZCc7XG4gIHNob3dBbGw6IGJvb2xlYW47XG59O1xuXG5mdW5jdGlvbiBnZXRBcmdzKHsgc2hvd0FsbCB9OiB7IHNob3dBbGw6IGJvb2xlYW4gfSk6IHN0cmluZ1tdIHtcbiAgcmV0dXJuIHNob3dBbGwgPyBbJy0tYWxsJ10gOiBbXTtcbn1cblxuZnVuY3Rpb24gZ2V0UGFyYW1zKCk6IFRlc3RQYXJhbXNbXSB7XG4gIHJldHVybiAoWydwc2J0VW5zaWduZWQnLCAncHNidEhhbGZTaWduZWQnLCAncHNidEZ1bGxTaWduZWQnLCAnbmV0d29ya0Z1bGxTaWduZWQnXSBhcyBjb25zdCkuZmxhdE1hcCgoZml4dHVyZVR5cGUpID0+IHtcbiAgICByZXR1cm4gW2ZhbHNlLCB0cnVlXS5mbGF0TWFwKChzaG93QWxsKSA9PiB7XG4gICAgICByZXR1cm4gdXR4b2xpYi5iaXRnby5vdXRwdXRTY3JpcHRzLnNjcmlwdFR5cGVzMk9mMy5mbGF0TWFwKChzY3JpcHRUeXBlKTogVGVzdFBhcmFtc1tdID0+IHtcbiAgICAgICAgaWYgKHNjcmlwdFR5cGUgPT09ICdwMnRyTXVzaWcyJykge1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB7IHNjcmlwdFR5cGUsIHNwZW5kVHlwZTogJ2tleVBhdGgnLCBzaG93QWxsLCBmaXh0dXJlVHlwZSB9LFxuICAgICAgICAgICAgeyBzY3JpcHRUeXBlLCBzcGVuZFR5cGU6ICdzY3JpcHRQYXRoJywgc2hvd0FsbCwgZml4dHVyZVR5cGUgfSxcbiAgICAgICAgICBdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbeyBzY3JpcHRUeXBlLCBzcGVuZFR5cGU6IHVuZGVmaW5lZCwgc2hvd0FsbCwgZml4dHVyZVR5cGUgfV07XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59XG5cbmdldFBhcmFtcygpLmZvckVhY2goKHsgc2NyaXB0VHlwZSwgc3BlbmRUeXBlLCBmaXh0dXJlVHlwZSwgc2hvd0FsbCB9KSA9PiB7XG4gIGNvbnN0IGFyZ3MgPSBnZXRBcmdzKHsgc2hvd0FsbCB9KTtcbiAgZGVzY3JpYmUoYHBhcnNlICR7Zml4dHVyZVR5cGV9ICR7c2NyaXB0VHlwZX0gJHtzcGVuZFR5cGUgPyBzcGVuZFR5cGUgOiAnZGVmYXVsdCd9IHNwZW5kIFthcmdzPSR7YXJnc31dYCwgZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIHBhcnNlKHR4OiBQYXJzZXJUeCwgcHJldk91dHB1dHM/OiB1dHhvbGliLlR4T3V0cHV0PGJpZ2ludD5bXSk6IFBhcnNlck5vZGUge1xuICAgICAgcmV0dXJuIGdldFR4UGFyc2VyKFxuICAgICAgICB5YXJncyhbXSlcbiAgICAgICAgICAuY29tbWFuZChjbWRQYXJzZVR4KVxuICAgICAgICAgIC5wYXJzZShbLi4uZ2V0QXJncyh7IHNob3dBbGwgfSksICctLXBhcnNlRXJyb3I9dGhyb3cnXSkgYXMgYW55XG4gICAgICApLnBhcnNlKHR4LCB7XG4gICAgICAgIHByZXZPdXRwdXRzLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgbGV0IGZpeHR1cmU6IFBhcnNlZEZpeHR1cmU7XG4gICAgYmVmb3JlKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGZpeHR1cmUgPSBhd2FpdCBnZXRUcmFuc2FjdGlvbldpdGhTcGVuZFR5cGUodXR4b2xpYi5uZXR3b3Jrcy50ZXN0bmV0LCAndGVzdC9maXh0dXJlcy9wYXJzZS9wc2J0Jywge1xuICAgICAgICBzY3JpcHRUeXBlLFxuICAgICAgICBzcGVuZFR5cGUsXG4gICAgICAgIGZpeHR1cmVUeXBlLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdChgcGFyc2VzYCwgZnVuY3Rpb24gKCkge1xuICAgICAgcGFyc2UoZml4dHVyZS50cmFuc2FjdGlvbik7XG4gICAgICBpZiAoZml4dHVyZS5wcmV2T3V0cHV0cykge1xuICAgICAgICBwYXJzZShmaXh0dXJlLnRyYW5zYWN0aW9uLCBmaXh0dXJlLnByZXZPdXRwdXRzKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIFtmYWxzZSwgdHJ1ZV0uZm9yRWFjaCgodXNlUHJldk91dHMpID0+IHtcbiAgICAgIGl0KGBmb3JtYXRzIFt1c2VQcmV2T3V0cz0ke3VzZVByZXZPdXRzfV1gLCBhc3luYyBmdW5jdGlvbiAodGhpczogbW9jaGEuQ29udGV4dCkge1xuICAgICAgICBpZiAodXNlUHJldk91dHMgJiYgIWZpeHR1cmUucHJldk91dHB1dHMpIHtcbiAgICAgICAgICB0aGlzLnNraXAoKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBmb3JtYXR0ZWQgPSBmb3JtYXRUcmVlTm9Db2xvcihwYXJzZShmaXh0dXJlLnRyYW5zYWN0aW9uLCB1c2VQcmV2T3V0cyA/IGZpeHR1cmUucHJldk91dHB1dHMgOiB1bmRlZmluZWQpLCB7XG4gICAgICAgICAgc2hvd0FsbCxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGZpeHR1cmVOYW1lID0gc3BlbmRUeXBlID8gYCR7c2NyaXB0VHlwZX1fJHtzcGVuZFR5cGV9YCA6IHNjcmlwdFR5cGU7XG4gICAgICAgIGNvbnN0IGZpbGVuYW1lID0gW2ZpeHR1cmVOYW1lLCBmaXh0dXJlVHlwZSwgc2hvd0FsbCA/ICdhbGwnIDogJycsIHVzZVByZXZPdXRzID8gJ3ByZXZPdXRzJyA6ICcnXVxuICAgICAgICAgIC5maWx0ZXIoKHYpID0+IHYgIT09ICcnKVxuICAgICAgICAgIC5qb2luKCdfJyk7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgICBmb3JtYXR0ZWQsXG4gICAgICAgICAgYXdhaXQgZ2V0Rml4dHVyZVN0cmluZyhgdGVzdC9maXh0dXJlcy9mb3JtYXRUcmFuc2FjdGlvbi8ke2ZpbGVuYW1lfS50eHRgLCBmb3JtYXR0ZWQpXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VUcmFuc2FjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3Rlc3QvcGFyc2VUcmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlDQUFpQztBQUVqQywrQkFBK0I7QUFFL0IsMkNBQTJDO0FBSTNDLDhDQUEwRDtBQUUxRCx5Q0FBNkc7QUFTN0csU0FBUyxPQUFPLENBQUMsRUFBRSxPQUFPLEVBQXdCO0lBQ2hELE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDbEMsQ0FBQztBQUVELFNBQVMsU0FBUztJQUNoQixPQUFRLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixDQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7UUFDbEgsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUN2QyxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLEVBQWdCLEVBQUU7Z0JBQ3RGLElBQUksVUFBVSxLQUFLLFlBQVksRUFBRSxDQUFDO29CQUNoQyxPQUFPO3dCQUNMLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRTt3QkFDMUQsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFO3FCQUM5RCxDQUFDO2dCQUNKLENBQUM7Z0JBQ0QsT0FBTyxDQUFDLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDdEUsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENB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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuaW1wb3J0ICogYXMgeWFyZ3MgZnJvbSAneWFyZ3MnO1xuaW1wb3J0ICogYXMgbW9jaGEgZnJvbSAnbW9jaGEnO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28vdXR4by1saWInO1xuXG5pbXBvcnQgeyBQYXJzZXJOb2RlIH0gZnJvbSAnLi4vc3JjL1BhcnNlcic7XG5pbXBvcnQgeyBQYXJzZXJUeCB9IGZyb20gJy4uL3NyYy9QYXJzZXJUeCc7XG5pbXBvcnQgeyBjbWRQYXJzZVR4LCBnZXRUeFBhcnNlciB9IGZyb20gJy4uL3NyYy9jb21tYW5kcyc7XG5cbmltcG9ydCB7IGZvcm1hdFRyZWVOb0NvbG9yLCBnZXRGaXh0dXJlU3RyaW5nLCBnZXRUcmFuc2FjdGlvbldpdGhTcGVuZFR5cGUsIFBhcnNlZEZpeHR1cmUgfSBmcm9tICcuL2ZpeHR1cmVzJztcblxudHlwZSBUZXN0UGFyYW1zID0ge1xuICBzY3JpcHRUeXBlOiB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuU2NyaXB0VHlwZTJPZjM7XG4gIHNwZW5kVHlwZTogJ2tleVBhdGgnIHwgJ3NjcmlwdFBhdGgnIHwgdW5kZWZpbmVkO1xuICBmaXh0dXJlVHlwZTogJ3BzYnRVbnNpZ25lZCcgfCAncHNidEhhbGZTaWduZWQnIHwgJ3BzYnRGdWxsU2lnbmVkJyB8ICduZXR3b3JrRnVsbFNpZ25lZCc7XG4gIHNob3dBbGw6IGJvb2xlYW47XG59O1xuXG5mdW5jdGlvbiBnZXRBcmdzKHsgc2hvd0FsbCB9OiB7IHNob3dBbGw6IGJvb2xlYW4gfSk6IHN0cmluZ1tdIHtcbiAgcmV0dXJuIHNob3dBbGwgPyBbJy0tYWxsJ10gOiBbXTtcbn1cblxuZnVuY3Rpb24gZ2V0UGFyYW1zKCk6IFRlc3RQYXJhbXNbXSB7XG4gIHJldHVybiAoWydwc2J0VW5zaWduZWQnLCAncHNidEhhbGZTaWduZWQnLCAncHNidEZ1bGxTaWduZWQnLCAnbmV0d29ya0Z1bGxTaWduZWQnXSBhcyBjb25zdCkuZmxhdE1hcCgoZml4dHVyZVR5cGUpID0+IHtcbiAgICByZXR1cm4gW2ZhbHNlLCB0cnVlXS5mbGF0TWFwKChzaG93QWxsKSA9PiB7XG4gICAgICByZXR1cm4gdXR4b2xpYi5iaXRnby5vdXRwdXRTY3JpcHRzLnNjcmlwdFR5cGVzMk9mMy5mbGF0TWFwKChzY3JpcHRUeXBlKTogVGVzdFBhcmFtc1tdID0+IHtcbiAgICAgICAgaWYgKHNjcmlwdFR5cGUgPT09ICdwMnRyTXVzaWcyJykge1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB7IHNjcmlwdFR5cGUsIHNwZW5kVHlwZTogJ2tleVBhdGgnLCBzaG93QWxsLCBmaXh0dXJlVHlwZSB9LFxuICAgICAgICAgICAgeyBzY3JpcHRUeXBlLCBzcGVuZFR5cGU6ICdzY3JpcHRQYXRoJywgc2hvd0FsbCwgZml4dHVyZVR5cGUgfSxcbiAgICAgICAgICBdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbeyBzY3JpcHRUeXBlLCBzcGVuZFR5cGU6IHVuZGVmaW5lZCwgc2hvd0FsbCwgZml4dHVyZVR5cGUgfV07XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59XG5cbmdldFBhcmFtcygpLmZvckVhY2goKHsgc2NyaXB0VHlwZSwgc3BlbmRUeXBlLCBmaXh0dXJlVHlwZSwgc2hvd0FsbCB9KSA9PiB7XG4gIGNvbnN0IGFyZ3MgPSBnZXRBcmdzKHsgc2hvd0FsbCB9KTtcbiAgZGVzY3JpYmUoYHBhcnNlICR7Zml4dHVyZVR5cGV9ICR7c2NyaXB0VHlwZX0gJHtzcGVuZFR5cGUgPyBzcGVuZFR5cGUgOiAnZGVmYXVsdCd9IHNwZW5kIFthcmdzPSR7YXJnc31dYCwgZnVuY3Rpb24gKCkge1xuICAgIGZ1bmN0aW9uIHBhcnNlKHR4OiBQYXJzZXJUeCwgcHJldk91dHB1dHM/OiB1dHhvbGliLlR4T3V0cHV0PGJpZ2ludD5bXSk6IFBhcnNlck5vZGUge1xuICAgICAgcmV0dXJuIGdldFR4UGFyc2VyKFxuICAgICAgICB5YXJncyhbXSlcbiAgICAgICAgICAuY29tbWFuZChjbWRQYXJzZVR4KVxuICAgICAgICAgIC5wYXJzZShbLi4uZ2V0QXJncyh7IHNob3dBbGwgfSksICctLXBhcnNlRXJyb3I9dGhyb3cnXSkgYXMgYW55XG4gICAgICApLnBhcnNlKHR4LCB7XG4gICAgICAgIHByZXZPdXRwdXRzLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgbGV0IGZpeHR1cmU6IFBhcnNlZEZpeHR1cmU7XG4gICAgYmVmb3JlKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGZpeHR1cmUgPSBhd2FpdCBnZXRUcmFuc2FjdGlvbldpdGhTcGVuZFR5cGUodXR4b2xpYi5uZXR3b3Jrcy50ZXN0bmV0LCAndGVzdC9maXh0dXJlcy9wYXJzZS9wc2J0Jywge1xuICAgICAgICBzY3JpcHRUeXBlLFxuICAgICAgICBzcGVuZFR5cGUsXG4gICAgICAgIGZpeHR1cmVUeXBlLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdChgcGFyc2VzYCwgZnVuY3Rpb24gKCkge1xuICAgICAgcGFyc2UoZml4dHVyZS50cmFuc2FjdGlvbik7XG4gICAgICBpZiAoZml4dHVyZS5wcmV2T3V0cHV0cykge1xuICAgICAgICBwYXJzZShmaXh0dXJlLnRyYW5zYWN0aW9uLCBmaXh0dXJlLnByZXZPdXRwdXRzKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIFtmYWxzZSwgdHJ1ZV0uZm9yRWFjaCgodXNlUHJldk91dHMpID0+IHtcbiAgICAgIGl0KGBmb3JtYXRzIFt1c2VQcmV2T3V0cz0ke3VzZVByZXZPdXRzfV1gLCBhc3luYyBmdW5jdGlvbiAodGhpczogbW9jaGEuQ29udGV4dCkge1xuICAgICAgICBpZiAodXNlUHJldk91dHMgJiYgIWZpeHR1cmUucHJldk91dHB1dHMpIHtcbiAgICAgICAgICB0aGlzLnNraXAoKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBmb3JtYXR0ZWQgPSBmb3JtYXRUcmVlTm9Db2xvcihwYXJzZShmaXh0dXJlLnRyYW5zYWN0aW9uLCB1c2VQcmV2T3V0cyA/IGZpeHR1cmUucHJldk91dHB1dHMgOiB1bmRlZmluZWQpLCB7XG4gICAgICAgICAgc2hvd0FsbCxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGZpeHR1cmVOYW1lID0gc3BlbmRUeXBlID8gYCR7c2NyaXB0VHlwZX1fJHtzcGVuZFR5cGV9YCA6IHNjcmlwdFR5cGU7XG4gICAgICAgIGNvbnN0IGZpbGVuYW1lID0gW2ZpeHR1cmVOYW1lLCBmaXh0dXJlVHlwZSwgc2hvd0FsbCA/ICdhbGwnIDogJycsIHVzZVByZXZPdXRzID8gJ3ByZXZPdXRzJyA6ICcnXVxuICAgICAgICAgIC5maWx0ZXIoKHYpID0+IHYgIT09ICcnKVxuICAgICAgICAgIC5qb2luKCdfJyk7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgICBmb3JtYXR0ZWQsXG4gICAgICAgICAgYXdhaXQgZ2V0Rml4dHVyZVN0cmluZyhgdGVzdC9maXh0dXJlcy9mb3JtYXRUcmFuc2FjdGlvbi8ke2ZpbGVuYW1lfS50eHRgLCBmb3JtYXR0ZWQpXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==