@bitgo-beta/statics 15.1.1-beta.14 → 15.1.1-beta.1400

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 (117) hide show
  1. package/dist/src/account.d.ts +897 -73
  2. package/dist/src/account.d.ts.map +1 -1
  3. package/dist/src/account.js +1407 -149
  4. package/dist/src/ada.d.ts.map +1 -1
  5. package/dist/src/ada.js +9 -3
  6. package/dist/src/allCoinsAndTokens.d.ts +2 -0
  7. package/dist/src/allCoinsAndTokens.d.ts.map +1 -0
  8. package/dist/src/allCoinsAndTokens.js +948 -0
  9. package/dist/src/avaxp.d.ts.map +1 -1
  10. package/dist/src/avaxp.js +10 -3
  11. package/dist/src/base.d.ts +2050 -34
  12. package/dist/src/base.d.ts.map +1 -1
  13. package/dist/src/base.js +2143 -50
  14. package/dist/src/canton.d.ts +34 -0
  15. package/dist/src/canton.d.ts.map +1 -0
  16. package/dist/src/canton.js +51 -0
  17. package/dist/src/coinFeatures.d.ts +109 -0
  18. package/dist/src/coinFeatures.d.ts.map +1 -0
  19. package/dist/src/coinFeatures.js +690 -0
  20. package/dist/src/coins/adaTokens.d.ts +2 -0
  21. package/dist/src/coins/adaTokens.d.ts.map +1 -0
  22. package/dist/src/coins/adaTokens.js +17 -0
  23. package/dist/src/coins/avaxTokens.d.ts +2 -0
  24. package/dist/src/coins/avaxTokens.d.ts.map +1 -0
  25. package/dist/src/coins/avaxTokens.js +125 -0
  26. package/dist/src/coins/botOfcTokens.d.ts +2 -0
  27. package/dist/src/coins/botOfcTokens.d.ts.map +1 -0
  28. package/dist/src/coins/botOfcTokens.js +5 -0
  29. package/dist/src/coins/botTokens.d.ts +3 -0
  30. package/dist/src/coins/botTokens.d.ts.map +1 -0
  31. package/dist/src/coins/botTokens.js +43 -0
  32. package/dist/src/coins/bscTokens.d.ts +2 -0
  33. package/dist/src/coins/bscTokens.d.ts.map +1 -0
  34. package/dist/src/coins/bscTokens.js +187 -0
  35. package/dist/src/coins/cosmosTokens.d.ts +2 -0
  36. package/dist/src/coins/cosmosTokens.d.ts.map +1 -0
  37. package/dist/src/coins/cosmosTokens.js +12 -0
  38. package/dist/src/coins/erc20Coins.d.ts +2 -0
  39. package/dist/src/coins/erc20Coins.d.ts.map +1 -0
  40. package/dist/src/coins/erc20Coins.js +1939 -0
  41. package/dist/src/coins/jettonTokens.d.ts +2 -0
  42. package/dist/src/coins/jettonTokens.d.ts.map +1 -0
  43. package/dist/src/coins/jettonTokens.js +13 -0
  44. package/dist/src/coins/nep141Tokens.d.ts +2 -0
  45. package/dist/src/coins/nep141Tokens.d.ts.map +1 -0
  46. package/dist/src/coins/nep141Tokens.js +16 -0
  47. package/dist/src/coins/ofcCoins.d.ts +2 -0
  48. package/dist/src/coins/ofcCoins.d.ts.map +1 -0
  49. package/dist/src/coins/ofcCoins.js +788 -0
  50. package/dist/src/coins/ofcErc20Coins.d.ts +3 -0
  51. package/dist/src/coins/ofcErc20Coins.d.ts.map +1 -0
  52. package/dist/src/coins/ofcErc20Coins.js +1594 -0
  53. package/dist/src/coins/polygonTokens.d.ts +2 -0
  54. package/dist/src/coins/polygonTokens.d.ts.map +1 -0
  55. package/dist/src/coins/polygonTokens.js +158 -0
  56. package/dist/src/coins/polyxTokens.d.ts +2 -0
  57. package/dist/src/coins/polyxTokens.d.ts.map +1 -0
  58. package/dist/src/coins/polyxTokens.js +21 -0
  59. package/dist/src/coins/sip10Tokens.d.ts +2 -0
  60. package/dist/src/coins/sip10Tokens.d.ts.map +1 -0
  61. package/dist/src/coins/sip10Tokens.js +25 -0
  62. package/dist/src/coins/solTokens.d.ts +3 -0
  63. package/dist/src/coins/solTokens.d.ts.map +1 -0
  64. package/dist/src/coins/solTokens.js +422 -0
  65. package/dist/src/coins/vetTokens.d.ts +2 -0
  66. package/dist/src/coins/vetTokens.d.ts.map +1 -0
  67. package/dist/src/coins/vetTokens.js +11 -0
  68. package/dist/src/coins.d.ts +11 -1
  69. package/dist/src/coins.d.ts.map +1 -1
  70. package/dist/src/coins.js +334 -1411
  71. package/dist/src/constants.d.ts +1 -0
  72. package/dist/src/constants.d.ts.map +1 -1
  73. package/dist/src/constants.js +3 -2
  74. package/dist/src/flrp.d.ts +40 -0
  75. package/dist/src/flrp.d.ts.map +1 -0
  76. package/dist/src/flrp.js +65 -0
  77. package/dist/src/index.d.ts +3 -1
  78. package/dist/src/index.d.ts.map +1 -1
  79. package/dist/src/index.js +26 -3
  80. package/dist/src/lightning.d.ts +43 -0
  81. package/dist/src/lightning.d.ts.map +1 -0
  82. package/dist/src/lightning.js +60 -0
  83. package/dist/src/map.d.ts +10 -0
  84. package/dist/src/map.d.ts.map +1 -1
  85. package/dist/src/map.js +146 -17
  86. package/dist/src/networkFeatureMapForTokens.d.ts +3 -0
  87. package/dist/src/networkFeatureMapForTokens.d.ts.map +1 -0
  88. package/dist/src/networkFeatureMapForTokens.js +31 -0
  89. package/dist/src/networks.d.ts +1359 -8
  90. package/dist/src/networks.d.ts.map +1 -1
  91. package/dist/src/networks.js +1741 -63
  92. package/dist/src/ofc.d.ts +597 -3
  93. package/dist/src/ofc.d.ts.map +1 -1
  94. package/dist/src/ofc.js +1419 -28
  95. package/dist/src/tokenConfig.d.ts +268 -14
  96. package/dist/src/tokenConfig.d.ts.map +1 -1
  97. package/dist/src/tokenConfig.js +998 -244
  98. package/dist/src/utxo.d.ts +3 -1
  99. package/dist/src/utxo.d.ts.map +1 -1
  100. package/dist/src/utxo.js +85 -3
  101. package/dist/tsconfig.tsbuildinfo +1 -2744
  102. package/package.json +6 -3
  103. package/.mocharc.js +0 -10
  104. package/.prettierignore +0 -2
  105. package/CHANGELOG.md +0 -552
  106. package/dist/resources/dot/index.d.ts +0 -3
  107. package/dist/resources/dot/index.d.ts.map +0 -1
  108. package/dist/resources/dot/index.js +0 -15
  109. package/dist/resources/dot/mainnet.d.ts +0 -2
  110. package/dist/resources/dot/mainnet.d.ts.map +0 -1
  111. package/dist/resources/dot/mainnet.js +0 -5
  112. package/dist/resources/dot/westend.d.ts +0 -2
  113. package/dist/resources/dot/westend.d.ts.map +0 -1
  114. package/dist/resources/dot/westend.js +0 -5
  115. package/resources/dot/index.ts +0 -2
  116. package/resources/dot/mainnet.ts +0 -2
  117. package/resources/dot/westend.ts +0 -2
@@ -1,6 +1,6 @@
1
1
  import { BaseCoin, BaseUnit, CoinFeature, KeyCurve, UnderlyingAsset } from './base';
2
2
  import { UtxoNetwork } from './networks';
3
- export interface UtxoConstructorOptions {
3
+ interface UtxoConstructorOptions {
4
4
  id: string;
5
5
  fullName: string;
6
6
  name: string;
@@ -38,4 +38,6 @@ export declare class UtxoCoin extends BaseCoin {
38
38
  export declare function utxo(id: string, name: string, fullName: string, network: UtxoNetwork, asset: UnderlyingAsset, baseUnit: BaseUnit, features?: CoinFeature[], prefix?: string, suffix?: string,
39
39
  /** All UTXOs BitGo supports are SECP256K1 **/
40
40
  primaryKeyCurve?: KeyCurve): Readonly<UtxoCoin>;
41
+ export declare const utxoCoins: Readonly<BaseCoin>[];
42
+ export {};
41
43
  //# sourceMappingURL=utxo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utxo.d.ts","sourceRoot":"","sources":["../../src/utxo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAY,QAAQ,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,WAAW,CAAC;IACrB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,QAAQ,CAAC;CAC3B;AAED,qBAAa,QAAS,SAAQ,QAAQ;IACpC,gBAAuB,gBAAgB,gBAKrC;IAEF;;OAEG;IACH,SAAgB,OAAO,EAAE,WAAW,CAAC;gBAEzB,OAAO,EAAE,sBAAsB;IAW3C,SAAS,CAAC,kBAAkB,IAAI,GAAG,CAAC,WAAW,CAAC;IAIhD,SAAS,CAAC,gBAAgB,IAAI,GAAG,CAAC,WAAW,CAAC;CAG/C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,IAAI,CAClB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,GAAE,WAAW,EAA8B,EACnD,MAAM,SAAK,EACX,MAAM,GAAE,MAA2B;AACnC,8CAA8C;AAC9C,eAAe,GAAE,QAA6B,sBAgB/C"}
1
+ {"version":3,"file":"utxo.d.ts","sourceRoot":"","sources":["../../src/utxo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAY,QAAQ,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9F,OAAO,EAAY,WAAW,EAAE,MAAM,YAAY,CAAC;AAEnD,UAAU,sBAAsB;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,WAAW,CAAC;IACrB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,EAAE,eAAe,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,QAAQ,CAAC;CAC3B;AAED,qBAAa,QAAS,SAAQ,QAAQ;IACpC,gBAAuB,gBAAgB,gBAWrC;IAEF;;OAEG;IACH,SAAgB,OAAO,EAAE,WAAW,CAAC;gBAEzB,OAAO,EAAE,sBAAsB;IAW3C,SAAS,CAAC,kBAAkB,IAAI,GAAG,CAAC,WAAW,CAAC;IAIhD,SAAS,CAAC,gBAAgB,IAAI,GAAG,CAAC,WAAW,CAAC;CAG/C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,IAAI,CAClB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,GAAE,WAAW,EAA8B,EACnD,MAAM,SAAK,EACX,MAAM,GAAE,MAA2B;AACnC,8CAA8C;AAC9C,eAAe,GAAE,QAA6B,sBAgB/C;AAkDD,eAAO,MAAM,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAmMzC,CAAC"}
package/dist/src/utxo.js CHANGED
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.utxo = exports.UtxoCoin = void 0;
3
+ exports.utxoCoins = exports.UtxoCoin = void 0;
4
+ exports.utxo = utxo;
4
5
  const base_1 = require("./base");
6
+ const networks_1 = require("./networks");
5
7
  class UtxoCoin extends base_1.BaseCoin {
6
8
  constructor(options) {
7
9
  super({
@@ -25,6 +27,12 @@ UtxoCoin.DEFAULT_FEATURES = [
25
27
  base_1.CoinFeature.CHILD_PAYS_FOR_PARENT,
26
28
  base_1.CoinFeature.CUSTODY,
27
29
  base_1.CoinFeature.CUSTODY_BITGO_TRUST,
30
+ base_1.CoinFeature.CUSTODY_BITGO_MENA_FZE,
31
+ base_1.CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE,
32
+ base_1.CoinFeature.CUSTODY_BITGO_INDIA,
33
+ base_1.CoinFeature.MULTISIG_COLD,
34
+ base_1.CoinFeature.MULTISIG,
35
+ base_1.CoinFeature.PAYGO,
28
36
  ];
29
37
  /**
30
38
  * Factory function for utxo coin instances.
@@ -55,5 +63,79 @@ primaryKeyCurve = base_1.KeyCurve.Secp256k1) {
55
63
  baseUnit,
56
64
  }));
57
65
  }
58
- exports.utxo = utxo;
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXR4by5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dHhvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGlDQUE4RjtBQWdCOUYsTUFBYSxRQUFTLFNBQVEsZUFBUTtJQWFwQyxZQUFZLE9BQStCO1FBQ3pDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxlQUFRLENBQUMsTUFBTTtZQUNyQixPQUFPLEVBQUUsS0FBSztZQUNkLGFBQWEsRUFBRSxDQUFDO1NBQ2pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUNqQyxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLE9BQU8sSUFBSSxHQUFHLENBQUMsQ0FBQyxrQkFBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVTLGdCQUFnQjtRQUN4QixPQUFPLElBQUksR0FBRyxDQUFDLENBQUMsa0JBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7O0FBOUJILDRCQStCQztBQTlCd0IseUJBQWdCLEdBQUc7SUFDeEMsa0JBQVcsQ0FBQyxhQUFhO0lBQ3pCLGtCQUFXLENBQUMscUJBQXFCO0lBQ2pDLGtCQUFXLENBQUMsT0FBTztJQUNuQixrQkFBVyxDQUFDLG1CQUFtQjtDQUNoQyxDQUFDO0FBMkJKOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILFNBQWdCLElBQUksQ0FDbEIsRUFBVSxFQUNWLElBQVksRUFDWixRQUFnQixFQUNoQixPQUFvQixFQUNwQixLQUFzQixFQUN0QixRQUFrQixFQUNsQixXQUEwQixRQUFRLENBQUMsZ0JBQWdCLEVBQ25ELE1BQU0sR0FBRyxFQUFFLEVBQ1gsU0FBaUIsSUFBSSxDQUFDLFdBQVcsRUFBRTtBQUNuQyw4Q0FBOEM7QUFDOUMsa0JBQTRCLGVBQVEsQ0FBQyxTQUFTO0lBRTlDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsSUFBSSxRQUFRLENBQUM7UUFDWCxFQUFFO1FBQ0YsSUFBSTtRQUNKLFFBQVE7UUFDUixPQUFPO1FBQ1AsTUFBTTtRQUNOLE1BQU07UUFDTixRQUFRO1FBQ1IsS0FBSztRQUNMLGVBQWU7UUFDZixRQUFRO0tBQ1QsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDO0FBM0JELG9CQTJCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luLCBCYXNlVW5pdCwgQ29pbkZlYXR1cmUsIENvaW5LaW5kLCBLZXlDdXJ2ZSwgVW5kZXJseWluZ0Fzc2V0IH0gZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7IFV0eG9OZXR3b3JrIH0gZnJvbSAnLi9uZXR3b3Jrcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXR4b0NvbnN0cnVjdG9yT3B0aW9ucyB7XG4gIGlkOiBzdHJpbmc7XG4gIGZ1bGxOYW1lOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgbmV0d29yazogVXR4b05ldHdvcms7XG4gIGZlYXR1cmVzOiBDb2luRmVhdHVyZVtdO1xuICBhc3NldDogVW5kZXJseWluZ0Fzc2V0O1xuICBiYXNlVW5pdDogQmFzZVVuaXQ7XG4gIHByZWZpeD86IHN0cmluZztcbiAgc3VmZml4Pzogc3RyaW5nO1xuICBwcmltYXJ5S2V5Q3VydmU6IEtleUN1cnZlO1xufVxuXG5leHBvcnQgY2xhc3MgVXR4b0NvaW4gZXh0ZW5kcyBCYXNlQ29pbiB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9GRUFUVVJFUyA9IFtcbiAgICBDb2luRmVhdHVyZS5VTlNQRU5UX01PREVMLFxuICAgIENvaW5GZWF0dXJlLkNISUxEX1BBWVNfRk9SX1BBUkVOVCxcbiAgICBDb2luRmVhdHVyZS5DVVNUT0RZLFxuICAgIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fVFJVU1QsXG4gIF07XG5cbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgZmllbGRzIGZvciB1dHhvIGNvaW5zXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmV0d29yazogVXR4b05ldHdvcms7XG5cbiAgY29uc3RydWN0b3Iob3B0aW9uczogVXR4b0NvbnN0cnVjdG9yT3B0aW9ucykge1xuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBraW5kOiBDb2luS2luZC5DUllQVE8sXG4gICAgICBpc1Rva2VuOiBmYWxzZSxcbiAgICAgIGRlY2ltYWxQbGFjZXM6IDgsXG4gICAgfSk7XG5cbiAgICB0aGlzLm5ldHdvcmsgPSBvcHRpb25zLm5ldHdvcms7XG4gIH1cblxuICBwcm90ZWN0ZWQgZGlzYWxsb3dlZEZlYXR1cmVzKCk6IFNldDxDb2luRmVhdHVyZT4ge1xuICAgIHJldHVybiBuZXcgU2V0KFtDb2luRmVhdHVyZS5BQ0NPVU5UX01PREVMXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVxdWlyZWRGZWF0dXJlcygpOiBTZXQ8Q29pbkZlYXR1cmU+IHtcbiAgICByZXR1cm4gbmV3IFNldChbQ29pbkZlYXR1cmUuVU5TUEVOVF9NT0RFTF0pO1xuICB9XG59XG5cbi8qKlxuICogRmFjdG9yeSBmdW5jdGlvbiBmb3IgdXR4byBjb2luIGluc3RhbmNlcy5cbiAqXG4gKiBAcGFyYW0gaWQgdXVpZCB2NCBvZiB0aGUgY29pblxuICogQHBhcmFtIG5hbWUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGNvaW5cbiAqIEBwYXJhbSBmdWxsTmFtZSBDb21wbGV0ZSBodW1hbi1yZWFkYWJsZSBuYW1lIG9mIHRoZSBjb2luXG4gKiBAcGFyYW0gbmV0d29yayBOZXR3b3JrIG9iamVjdCBmb3IgdGhpcyBjb2luXG4gKiBAcGFyYW0gYXNzZXQgQXNzZXQgd2hpY2ggdGhpcyBjb2luIHJlcHJlc2VudHMuIFRoaXMgaXMgdGhlIHNhbWUgZm9yIGJvdGggbWFpbm5ldCBhbmQgdGVzdG5ldCB2YXJpYW50cyBvZiBhIGNvaW4uXG4gKiBAcGFyYW0gZmVhdHVyZXM/IEZlYXR1cmVzIG9mIHRoaXMgY29pbi4gRGVmYXVsdHMgdG8gdGhlIERFRkFVTFRfRkVBVFVSRVMgZGVmaW5lZCBpbiBgVXR4b0NvaW5gXG4gKiBAcGFyYW0gcHJlZml4PyBPcHRpb25hbCBjb2luIHByZWZpeC4gRGVmYXVsdHMgdG8gZW1wdHkgc3RyaW5nXG4gKiBAcGFyYW0gc3VmZml4PyBPcHRpb25hbCBjb2luIHN1ZmZpeC4gRGVmYXVsdHMgdG8gY29pbiBuYW1lLlxuICogQHBhcmFtIHByaW1hcnlLZXlDdXJ2ZSBUaGUgZWxsaXB0aWMgY3VydmUgZm9yIHRoaXMgY2hhaW4vdG9rZW5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHV0eG8oXG4gIGlkOiBzdHJpbmcsXG4gIG5hbWU6IHN0cmluZyxcbiAgZnVsbE5hbWU6IHN0cmluZyxcbiAgbmV0d29yazogVXR4b05ldHdvcmssXG4gIGFzc2V0OiBVbmRlcmx5aW5nQXNzZXQsXG4gIGJhc2VVbml0OiBCYXNlVW5pdCxcbiAgZmVhdHVyZXM6IENvaW5GZWF0dXJlW10gPSBVdHhvQ29pbi5ERUZBVUxUX0ZFQVRVUkVTLFxuICBwcmVmaXggPSAnJyxcbiAgc3VmZml4OiBzdHJpbmcgPSBuYW1lLnRvVXBwZXJDYXNlKCksXG4gIC8qKiBBbGwgVVRYT3MgQml0R28gc3VwcG9ydHMgYXJlIFNFQ1AyNTZLMSAqKi9cbiAgcHJpbWFyeUtleUN1cnZlOiBLZXlDdXJ2ZSA9IEtleUN1cnZlLlNlY3AyNTZrMVxuKSB7XG4gIHJldHVybiBPYmplY3QuZnJlZXplKFxuICAgIG5ldyBVdHhvQ29pbih7XG4gICAgICBpZCxcbiAgICAgIG5hbWUsXG4gICAgICBmdWxsTmFtZSxcbiAgICAgIG5ldHdvcmssXG4gICAgICBwcmVmaXgsXG4gICAgICBzdWZmaXgsXG4gICAgICBmZWF0dXJlcyxcbiAgICAgIGFzc2V0LFxuICAgICAgcHJpbWFyeUtleUN1cnZlLFxuICAgICAgYmFzZVVuaXQsXG4gICAgfSlcbiAgKTtcbn1cbiJdfQ==
66
+ const BCH_FEATURES = [
67
+ ...UtxoCoin.DEFAULT_FEATURES,
68
+ base_1.CoinFeature.BULK_TRANSACTION,
69
+ base_1.CoinFeature.CUSTODY_BITGO_GERMANY,
70
+ base_1.CoinFeature.CUSTODY_BITGO_NEW_YORK,
71
+ base_1.CoinFeature.CUSTODY_BITGO_FRANKFURT,
72
+ base_1.CoinFeature.CUSTODY_BITGO_SINGAPORE,
73
+ base_1.CoinFeature.CUSTODY_BULK_TRANSACTION,
74
+ ];
75
+ const BTC_FEATURES = [
76
+ ...UtxoCoin.DEFAULT_FEATURES,
77
+ base_1.CoinFeature.CUSTODY_BITGO_GERMANY,
78
+ base_1.CoinFeature.CUSTODY_BITGO_NEW_YORK,
79
+ base_1.CoinFeature.CUSTODY_BITGO_FRANKFURT,
80
+ base_1.CoinFeature.CUSTODY_BITGO_SISTER_TRUST_ONE,
81
+ base_1.CoinFeature.CUSTODY_BITGO_KOREA,
82
+ base_1.CoinFeature.CUSTODY_BITGO_EUROPE_APS,
83
+ base_1.CoinFeature.BULK_TRANSACTION,
84
+ base_1.CoinFeature.DISTRIBUTED_CUSTODY,
85
+ base_1.CoinFeature.CUSTODY_BITGO_SINGAPORE,
86
+ base_1.CoinFeature.CUSTODY_BITGO_SWITZERLAND,
87
+ base_1.CoinFeature.STUCK_TRANSACTION_MANAGEMENT_ONCHAIN,
88
+ base_1.CoinFeature.STAKING,
89
+ ];
90
+ const BTG_FEATURES = [
91
+ ...UtxoCoin.DEFAULT_FEATURES,
92
+ base_1.CoinFeature.CUSTODY_BITGO_GERMANY,
93
+ base_1.CoinFeature.CUSTODY_BITGO_FRANKFURT,
94
+ ];
95
+ const LTC_FEATURES = [
96
+ ...UtxoCoin.DEFAULT_FEATURES,
97
+ base_1.CoinFeature.CUSTODY_BITGO_GERMANY,
98
+ base_1.CoinFeature.CUSTODY_BITGO_NEW_YORK,
99
+ base_1.CoinFeature.CUSTODY_BITGO_FRANKFURT,
100
+ base_1.CoinFeature.CUSTODY_BITGO_SINGAPORE,
101
+ base_1.CoinFeature.BULK_TRANSACTION,
102
+ ];
103
+ const DOGE_FEATURES = [
104
+ ...UtxoCoin.DEFAULT_FEATURES,
105
+ base_1.CoinFeature.CUSTODY_BITGO_GERMANY,
106
+ base_1.CoinFeature.CUSTODY_BITGO_FRANKFURT,
107
+ base_1.CoinFeature.CUSTODY_BITGO_SINGAPORE,
108
+ base_1.CoinFeature.CUSTODY_BITGO_NEW_YORK,
109
+ base_1.CoinFeature.BULK_TRANSACTION,
110
+ ];
111
+ const DASH_FEATURES = [...UtxoCoin.DEFAULT_FEATURES, base_1.CoinFeature.CUSTODY_BITGO_FRANKFURT, base_1.CoinFeature.BULK_TRANSACTION];
112
+ const TDASH_FEATURES = [...UtxoCoin.DEFAULT_FEATURES, base_1.CoinFeature.BULK_TRANSACTION];
113
+ const ZEC_FEATURES = [...UtxoCoin.DEFAULT_FEATURES, base_1.CoinFeature.BULK_TRANSACTION];
114
+ exports.utxoCoins = [
115
+ utxo('8d6e08d5-399f-414f-8430-6ceca1798cbf', 'bch', 'Bitcoin Cash', networks_1.Networks.main.bitcoinCash, base_1.UnderlyingAsset.BCH, base_1.BaseUnit.BTC, BCH_FEATURES),
116
+ utxo('aae6fafc-5091-4b10-9a11-aa6cefea2805', 'tbch', 'Testnet Bitcoin Cash', networks_1.Networks.test.bitcoinCash, base_1.UnderlyingAsset.BCH, base_1.BaseUnit.BTC, BCH_FEATURES),
117
+ utxo('941587ce-1c7a-4305-b908-15455d15e961', 'bcha', 'ECash', networks_1.Networks.main.eCash, base_1.UnderlyingAsset.BCHA, base_1.BaseUnit.BTC),
118
+ utxo('af8de1e0-3e33-47bf-94d3-fb3c2bebead2', 'tbcha', 'Testnet ECash', networks_1.Networks.test.eCash, base_1.UnderlyingAsset.BCHA, base_1.BaseUnit.BTC),
119
+ utxo('f728cfc7-d0cf-4f99-bca0-d25273e65fcf', 'bsv', 'Bitcoin SV', networks_1.Networks.main.bitcoinSV, base_1.UnderlyingAsset.BSV, base_1.BaseUnit.BTC, [base_1.CoinFeature.DEPRECATED, ...UtxoCoin.DEFAULT_FEATURES]),
120
+ utxo('7cb81518-85d7-400f-960e-7bc00b3bfa62', 'tbsv', 'Testnet Bitcoin SV', networks_1.Networks.test.bitcoinSV, base_1.UnderlyingAsset.BSV, base_1.BaseUnit.BTC, [base_1.CoinFeature.DEPRECATED, ...UtxoCoin.DEFAULT_FEATURES]),
121
+ utxo('5c1691c5-c9cc-49ed-abe0-c433dab2edaa', 'btc', 'Bitcoin', networks_1.Networks.main.bitcoin, base_1.UnderlyingAsset.BTC, base_1.BaseUnit.BTC, BTC_FEATURES),
122
+ utxo('cde7559d-a536-4d12-8de4-90baa09f90bd', 'tbtc', 'Testnet Bitcoin', networks_1.Networks.test.bitcoin, base_1.UnderlyingAsset.BTC, base_1.BaseUnit.BTC, BTC_FEATURES.filter((f) => f !== base_1.CoinFeature.STAKING)),
123
+ utxo('a0d53dc9-2dcc-4ebb-a2d4-51983fe20da6', 'tbtcsig', 'Public Signet Bitcoin', networks_1.Networks.test.bitcoinPublicSignet, base_1.UnderlyingAsset.BTC, base_1.BaseUnit.BTC, BTC_FEATURES),
124
+ utxo('f76cec3f-7aef-473d-af5d-4c47dd40dfa8', 'tbtc4', 'Testnet4 Bitcoin', networks_1.Networks.test.bitcoinTestnet4, base_1.UnderlyingAsset.BTC, base_1.BaseUnit.BTC, BTC_FEATURES),
125
+ utxo('722522dc-a613-4bff-a1d1-183ebe5138ae', 'tbtcbgsig', 'BitGo Signet Bitcoin', networks_1.Networks.test.bitcoinBitGoSignet, base_1.UnderlyingAsset.BTC, base_1.BaseUnit.BTC, BTC_FEATURES),
126
+ utxo('8feb110d-0d68-44ce-ae97-b8c30ec870a9', 'btg', 'Bitcoin Gold', networks_1.Networks.main.bitcoinGold, base_1.UnderlyingAsset.BTG, base_1.BaseUnit.BTC, BTG_FEATURES.filter((f) => f !== base_1.CoinFeature.CUSTODY_BITGO_SINGAPORE)),
127
+ utxo('633246f2-af21-41b8-8b9e-ba9ae25d386f', 'tbtg', 'Testnet Bitcoin Gold', networks_1.Networks.test.bitcoinGold, base_1.UnderlyingAsset.BTG, base_1.BaseUnit.BTC, base_1.BaseCoin.getFeaturesByTypeExcluding([base_1.CoinFeature.CUSTODY_BITGO_MENA_FZE, base_1.CoinFeature.MULTISIG_COLD], BTG_FEATURES)),
128
+ utxo('9c8097f1-5d2c-4a62-a94c-96c271c0e5e0', 'ltc', 'Litecoin', networks_1.Networks.main.litecoin, base_1.UnderlyingAsset.LTC, base_1.BaseUnit.LTC, LTC_FEATURES),
129
+ utxo('1aca32c8-a3e5-42eb-82df-4c263d8bfc68', 'tltc', 'Testnet Litecoin', networks_1.Networks.test.litecoin, base_1.UnderlyingAsset.LTC, base_1.BaseUnit.LTC, LTC_FEATURES),
130
+ utxo('0739be6a-c72e-468d-9464-ca5601965708', 'dash', 'Dash', networks_1.Networks.main.dash, base_1.UnderlyingAsset.DASH, base_1.BaseUnit.DASH, DASH_FEATURES.filter((feature) => ![
131
+ base_1.CoinFeature.CUSTODY_BITGO_SINGAPORE,
132
+ base_1.CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE,
133
+ base_1.CoinFeature.CUSTODY_BITGO_MENA_FZE,
134
+ ].includes(feature))),
135
+ utxo('5950d78f-e8dd-457a-ab5d-310e6b476bb1', 'tdash', 'Testnet Dash', networks_1.Networks.test.dash, base_1.UnderlyingAsset.DASH, base_1.BaseUnit.DASH, TDASH_FEATURES),
136
+ utxo('508f6b53-1e6e-41fd-b541-b2498b7c4b61', 'zec', 'ZCash', networks_1.Networks.main.zCash, base_1.UnderlyingAsset.ZEC, base_1.BaseUnit.ZEC, ZEC_FEATURES),
137
+ utxo('549a4499-387c-42d3-9048-c01d6724d98a', 'tzec', 'Testnet ZCash', networks_1.Networks.test.zCash, base_1.UnderlyingAsset.ZEC, base_1.BaseUnit.ZEC, ZEC_FEATURES),
138
+ utxo('c93a9160-458f-4a31-bea0-4a93ae8b1d2d', 'doge', 'Dogecoin', networks_1.Networks.main.dogecoin, base_1.UnderlyingAsset.DOGE, base_1.BaseUnit.BTC, DOGE_FEATURES),
139
+ utxo('7a1597e8-fd8e-4b68-8086-f9159e37e0ce', 'tdoge', 'Testnet Dogecoin', networks_1.Networks.test.dogecoin, base_1.UnderlyingAsset.DOGE, base_1.BaseUnit.BTC, DOGE_FEATURES),
140
+ ];
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXR4by5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dHhvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQW9FQSxvQkEyQkM7QUEvRkQsaUNBQThGO0FBQzlGLHlDQUFtRDtBQWVuRCxNQUFhLFFBQVMsU0FBUSxlQUFRO0lBbUJwQyxZQUFZLE9BQStCO1FBQ3pDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxlQUFRLENBQUMsTUFBTTtZQUNyQixPQUFPLEVBQUUsS0FBSztZQUNkLGFBQWEsRUFBRSxDQUFDO1NBQ2pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUNqQyxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLE9BQU8sSUFBSSxHQUFHLENBQUMsQ0FBQyxrQkFBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVTLGdCQUFnQjtRQUN4QixPQUFPLElBQUksR0FBRyxDQUFDLENBQUMsa0JBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7O0FBcENILDRCQXFDQztBQXBDd0IseUJBQWdCLEdBQUc7SUFDeEMsa0JBQVcsQ0FBQyxhQUFhO0lBQ3pCLGtCQUFXLENBQUMscUJBQXFCO0lBQ2pDLGtCQUFXLENBQUMsT0FBTztJQUNuQixrQkFBVyxDQUFDLG1CQUFtQjtJQUMvQixrQkFBVyxDQUFDLHNCQUFzQjtJQUNsQyxrQkFBVyxDQUFDLDhCQUE4QjtJQUMxQyxrQkFBVyxDQUFDLG1CQUFtQjtJQUMvQixrQkFBVyxDQUFDLGFBQWE7SUFDekIsa0JBQVcsQ0FBQyxRQUFRO0lBQ3BCLGtCQUFXLENBQUMsS0FBSztDQUNsQixDQUFDO0FBMkJKOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILFNBQWdCLElBQUksQ0FDbEIsRUFBVSxFQUNWLElBQVksRUFDWixRQUFnQixFQUNoQixPQUFvQixFQUNwQixLQUFzQixF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dEMsTUFBTSxFQUNOLGVBQWUsRUFDZixtQkFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQ25CLHNCQUFlLENBQUMsR0FBRyxFQUNuQixlQUFRLENBQUMsR0FBRyxFQUNaLFlBQVksQ0FDYjtJQUNELElBQUksQ0FDRixzQ0FBc0MsRUFDdEMsTUFBTSxFQUNOLFVBQVUsRUFDVixtQkFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQ3RCLHNCQUFlLENBQUMsSUFBSSxFQUNwQixlQUFRLENBQUMsR0FBRyxFQUNaLGFBQWEsQ0FDZDtJQUNELElBQUksQ0FDRixzQ0FBc0MsRUFDdEMsT0FBTyxFQUNQLGtCQUFrQixFQUNsQixtQkFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQ3RCLHNCQUFlLENBQUMsSUFBSSxFQUNwQixlQUFRLENBQUMsR0FBRyxFQUNaLGFBQWEsQ0FDZDtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiwgQmFzZVVuaXQsIENvaW5GZWF0dXJlLCBDb2luS2luZCwgS2V5Q3VydmUsIFVuZGVybHlpbmdBc3NldCB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyBOZXR3b3JrcywgVXR4b05ldHdvcmsgfSBmcm9tICcuL25ldHdvcmtzJztcblxuaW50ZXJmYWNlIFV0eG9Db25zdHJ1Y3Rvck9wdGlvbnMge1xuICBpZDogc3RyaW5nO1xuICBmdWxsTmFtZTogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIG5ldHdvcms6IFV0eG9OZXR3b3JrO1xuICBmZWF0dXJlczogQ29pbkZlYXR1cmVbXTtcbiAgYXNzZXQ6IFVuZGVybHlpbmdBc3NldDtcbiAgYmFzZVVuaXQ6IEJhc2VVbml0O1xuICBwcmVmaXg/OiBzdHJpbmc7XG4gIHN1ZmZpeD86IHN0cmluZztcbiAgcHJpbWFyeUtleUN1cnZlOiBLZXlDdXJ2ZTtcbn1cblxuZXhwb3J0IGNsYXNzIFV0eG9Db2luIGV4dGVuZHMgQmFzZUNvaW4ge1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfRkVBVFVSRVMgPSBbXG4gICAgQ29pbkZlYXR1cmUuVU5TUEVOVF9NT0RFTCxcbiAgICBDb2luRmVhdHVyZS5DSElMRF9QQVlTX0ZPUl9QQVJFTlQsXG4gICAgQ29pbkZlYXR1cmUuQ1VTVE9EWSxcbiAgICBDb2luRmVhdHVyZS5DVVNUT0RZX0JJVEdPX1RSVVNULFxuICAgIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fTUVOQV9GWkUsXG4gICAgQ29pbkZlYXR1cmUuQ1VTVE9EWV9CSVRHT19DVVNUT0RZX01FTkFfRlpFLFxuICAgIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fSU5ESUEsXG4gICAgQ29pbkZlYXR1cmUuTVVMVElTSUdfQ09MRCxcbiAgICBDb2luRmVhdHVyZS5NVUxUSVNJRyxcbiAgICBDb2luRmVhdHVyZS5QQVlHTyxcbiAgXTtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBmaWVsZHMgZm9yIHV0eG8gY29pbnNcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuZXR3b3JrOiBVdHhvTmV0d29yaztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBVdHhvQ29uc3RydWN0b3JPcHRpb25zKSB7XG4gICAgc3VwZXIoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIGtpbmQ6IENvaW5LaW5kLkNSWVBUTyxcbiAgICAgIGlzVG9rZW46IGZhbHNlLFxuICAgICAgZGVjaW1hbFBsYWNlczogOCxcbiAgICB9KTtcblxuICAgIHRoaXMubmV0d29yayA9IG9wdGlvbnMubmV0d29yaztcbiAgfVxuXG4gIHByb3RlY3RlZCBkaXNhbGxvd2VkRmVhdHVyZXMoKTogU2V0PENvaW5GZWF0dXJlPiB7XG4gICAgcmV0dXJuIG5ldyBTZXQoW0NvaW5GZWF0dXJlLkFDQ09VTlRfTU9ERUxdKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZXF1aXJlZEZlYXR1cmVzKCk6IFNldDxDb2luRmVhdHVyZT4ge1xuICAgIHJldHVybiBuZXcgU2V0KFtDb2luRmVhdHVyZS5VTlNQRU5UX01PREVMXSk7XG4gIH1cbn1cblxuLyoqXG4gKiBGYWN0b3J5IGZ1bmN0aW9uIGZvciB1dHhvIGNvaW4gaW5zdGFuY2VzLlxuICpcbiAqIEBwYXJhbSBpZCB1dWlkIHY0IG9mIHRoZSBjb2luXG4gKiBAcGFyYW0gbmFtZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgY29pblxuICogQHBhcmFtIGZ1bGxOYW1lIENvbXBsZXRlIGh1bWFuLXJlYWRhYmxlIG5hbWUgb2YgdGhlIGNvaW5cbiAqIEBwYXJhbSBuZXR3b3JrIE5ldHdvcmsgb2JqZWN0IGZvciB0aGlzIGNvaW5cbiAqIEBwYXJhbSBhc3NldCBBc3NldCB3aGljaCB0aGlzIGNvaW4gcmVwcmVzZW50cy4gVGhpcyBpcyB0aGUgc2FtZSBmb3IgYm90aCBtYWlubmV0IGFuZCB0ZXN0bmV0IHZhcmlhbnRzIG9mIGEgY29pbi5cbiAqIEBwYXJhbSBmZWF0dXJlcz8gRmVhdHVyZXMgb2YgdGhpcyBjb2luLiBEZWZhdWx0cyB0byB0aGUgREVGQVVMVF9GRUFUVVJFUyBkZWZpbmVkIGluIGBVdHhvQ29pbmBcbiAqIEBwYXJhbSBwcmVmaXg/IE9wdGlvbmFsIGNvaW4gcHJlZml4LiBEZWZhdWx0cyB0byBlbXB0eSBzdHJpbmdcbiAqIEBwYXJhbSBzdWZmaXg/IE9wdGlvbmFsIGNvaW4gc3VmZml4LiBEZWZhdWx0cyB0byBjb2luIG5hbWUuXG4gKiBAcGFyYW0gcHJpbWFyeUtleUN1cnZlIFRoZSBlbGxpcHRpYyBjdXJ2ZSBmb3IgdGhpcyBjaGFpbi90b2tlblxuICovXG5leHBvcnQgZnVuY3Rpb24gdXR4byhcbiAgaWQ6IHN0cmluZyxcbiAgbmFtZTogc3RyaW5nLFxuICBmdWxsTmFtZTogc3RyaW5nLFxuICBuZXR3b3JrOiBVdHhvTmV0d29yayxcbiAgYXNzZXQ6IFVuZGVybHlpbmdBc3NldCxcbiAgYmFzZVVuaXQ6IEJhc2VVbml0LFxuICBmZWF0dXJlczogQ29pbkZlYXR1cmVbXSA9IFV0eG9Db2luLkRFRkFVTFRfRkVBVFVSRVMsXG4gIHByZWZpeCA9ICcnLFxuICBzdWZmaXg6IHN0cmluZyA9IG5hbWUudG9VcHBlckNhc2UoKSxcbiAgLyoqIEFsbCBVVFhPcyBCaXRHbyBzdXBwb3J0cyBhcmUgU0VDUDI1NksxICoqL1xuICBwcmltYXJ5S2V5Q3VydmU6IEtleUN1cnZlID0gS2V5Q3VydmUuU2VjcDI1NmsxXG4pIHtcbiAgcmV0dXJuIE9iamVjdC5mcmVlemUoXG4gICAgbmV3IFV0eG9Db2luKHtcbiAgICAgIGlkLFxuICAgICAgbmFtZSxcbiAgICAgIGZ1bGxOYW1lLFxuICAgICAgbmV0d29yayxcbiAgICAgIHByZWZpeCxcbiAgICAgIHN1ZmZpeCxcbiAgICAgIGZlYXR1cmVzLFxuICAgICAgYXNzZXQsXG4gICAgICBwcmltYXJ5S2V5Q3VydmUsXG4gICAgICBiYXNlVW5pdCxcbiAgICB9KVxuICApO1xufVxuXG5jb25zdCBCQ0hfRkVBVFVSRVMgPSBbXG4gIC4uLlV0eG9Db2luLkRFRkFVTFRfRkVBVFVSRVMsXG4gIENvaW5GZWF0dXJlLkJVTEtfVFJBTlNBQ1RJT04sXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fR0VSTUFOWSxcbiAgQ29pbkZlYXR1cmUuQ1VTVE9EWV9CSVRHT19ORVdfWU9SSyxcbiAgQ29pbkZlYXR1cmUuQ1VTVE9EWV9CSVRHT19GUkFOS0ZVUlQsXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fU0lOR0FQT1JFLFxuICBDb2luRmVhdHVyZS5DVVNUT0RZX0JVTEtfVFJBTlNBQ1RJT04sXG5dO1xuY29uc3QgQlRDX0ZFQVRVUkVTID0gW1xuICAuLi5VdHhvQ29pbi5ERUZBVUxUX0ZFQVRVUkVTLFxuICBDb2luRmVhdHVyZS5DVVNUT0RZX0JJVEdPX0dFUk1BTlksXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fTkVXX1lPUkssXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fRlJBTktGVVJULFxuICBDb2luRmVhdHVyZS5DVVNUT0RZX0JJVEdPX1NJU1RFUl9UUlVTVF9PTkUsXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fS09SRUEsXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fRVVST1BFX0FQUyxcbiAgQ29pbkZlYXR1cmUuQlVMS19UUkFOU0FDVElPTixcbiAgQ29pbkZlYXR1cmUuRElTVFJJQlVURURfQ1VTVE9EWSxcbiAgQ29pbkZlYXR1cmUuQ1VTVE9EWV9CSVRHT19TSU5HQVBPUkUsXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fU1dJVFpFUkxBTkQsXG4gIENvaW5GZWF0dXJlLlNUVUNLX1RSQU5TQUNUSU9OX01BTkFHRU1FTlRfT05DSEFJTixcbiAgQ29pbkZlYXR1cmUuU1RBS0lORyxcbl07XG5jb25zdCBCVEdfRkVBVFVSRVMgPSBbXG4gIC4uLlV0eG9Db2luLkRFRkFVTFRfRkVBVFVSRVMsXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fR0VSTUFOWSxcbiAgQ29pbkZlYXR1cmUuQ1VTVE9EWV9CSVRHT19GUkFOS0ZVUlQsXG5dO1xuY29uc3QgTFRDX0ZFQVRVUkVTID0gW1xuICAuLi5VdHhvQ29pbi5ERUZBVUxUX0ZFQVRVUkVTLFxuICBDb2luRmVhdHVyZS5DVVNUT0RZX0JJVEdPX0dFUk1BTlksXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fTkVXX1lPUkssXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fRlJBTktGVVJULFxuICBDb2luRmVhdHVyZS5DVVNUT0RZX0JJVEdPX1NJTkdBUE9SRSxcbiAgQ29pbkZlYXR1cmUuQlVMS19UUkFOU0FDVElPTixcbl07XG5jb25zdCBET0dFX0ZFQVRVUkVTID0gW1xuICAuLi5VdHhvQ29pbi5ERUZBVUxUX0ZFQVRVUkVTLFxuICBDb2luRmVhdHVyZS5DVVNUT0RZX0JJVEdPX0dFUk1BTlksXG4gIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fRlJBTktGVVJULFxuICBDb2luRmVhdHVyZS5DVVNUT0RZX0JJVEdPX1NJTkdBUE9SRSxcbiAgQ29pbkZlYXR1cmUuQ1VTVE9EWV9CSVRHT19ORVdfWU9SSyxcbiAgQ29pbkZlYXR1cmUuQlVMS19UUkFOU0FDVElPTixcbl07XG5jb25zdCBEQVNIX0ZFQVRVUkVTID0gWy4uLlV0eG9Db2luLkRFRkFVTFRfRkVBVFVSRVMsIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fRlJBTktGVVJULCBDb2luRmVhdHVyZS5CVUxLX1RSQU5TQUNUSU9OXTtcbmNvbnN0IFREQVNIX0ZFQVRVUkVTID0gWy4uLlV0eG9Db2luLkRFRkFVTFRfRkVBVFVSRVMsIENvaW5GZWF0dXJlLkJVTEtfVFJBTlNBQ1RJT05dO1xuY29uc3QgWkVDX0ZFQVRVUkVTID0gWy4uLlV0eG9Db2luLkRFRkFVTFRfRkVBVFVSRVMsIENvaW5GZWF0dXJlLkJVTEtfVFJBTlNBQ1RJT05dO1xuZXhwb3J0IGNvbnN0IHV0eG9Db2luczogUmVhZG9ubHk8QmFzZUNvaW4+W10gPSBbXG4gIHV0eG8oXG4gICAgJzhkNmUwOGQ1LTM5OWYtNDE0Zi04NDMwLTZjZWNhMTc5OGNiZicsXG4gICAgJ2JjaCcsXG4gICAgJ0JpdGNvaW4gQ2FzaCcsXG4gICAgTmV0d29ya3MubWFpbi5iaXRjb2luQ2FzaCxcbiAgICBVbmRlcmx5aW5nQXNzZXQuQkNILFxuICAgIEJhc2VVbml0LkJUQyxcbiAgICBCQ0hfRkVBVFVSRVNcbiAgKSxcbiAgdXR4byhcbiAgICAnYWFlNmZhZmMtNTA5MS00YjEwLTlhMTEtYWE2Y2VmZWEyODA1JyxcbiAgICAndGJjaCcsXG4gICAgJ1Rlc3RuZXQgQml0Y29pbiBDYXNoJyxcbiAgICBOZXR3b3Jrcy50ZXN0LmJpdGNvaW5DYXNoLFxuICAgIFVuZGVybHlpbmdBc3NldC5CQ0gsXG4gICAgQmFzZVVuaXQuQlRDLFxuICAgIEJDSF9GRUFUVVJFU1xuICApLFxuICB1dHhvKFxuICAgICc5NDE1ODdjZS0xYzdhLTQzMDUtYjkwOC0xNTQ1NWQxNWU5NjEnLFxuICAgICdiY2hhJyxcbiAgICAnRUNhc2gnLFxuICAgIE5ldHdvcmtzLm1haW4uZUNhc2gsXG4gICAgVW5kZXJseWluZ0Fzc2V0LkJDSEEsXG4gICAgQmFzZVVuaXQuQlRDXG4gICksXG4gIHV0eG8oXG4gICAgJ2FmOGRlMWUwLTNlMzMtNDdiZi05NGQzLWZiM2MyYmViZWFkMicsXG4gICAgJ3RiY2hhJyxcbiAgICAnVGVzdG5ldCBFQ2FzaCcsXG4gICAgTmV0d29ya3MudGVzdC5lQ2FzaCxcbiAgICBVbmRlcmx5aW5nQXNzZXQuQkNIQSxcbiAgICBCYXNlVW5pdC5CVENcbiAgKSxcbiAgdXR4byhcbiAgICAnZjcyOGNmYzctZDBjZi00Zjk5LWJjYTAtZDI1MjczZTY1ZmNmJyxcbiAgICAnYnN2JyxcbiAgICAnQml0Y29pbiBTVicsXG4gICAgTmV0d29ya3MubWFpbi5iaXRjb2luU1YsXG4gICAgVW5kZXJseWluZ0Fzc2V0LkJTVixcbiAgICBCYXNlVW5pdC5CVEMsXG4gICAgW0NvaW5GZWF0dXJlLkRFUFJFQ0FURUQsIC4uLlV0eG9Db2luLkRFRkFVTFRfRkVBVFVSRVNdXG4gICksXG4gIHV0eG8oXG4gICAgJzdjYjgxNTE4LTg1ZDctNDAwZi05NjBlLTdiYzAwYjNiZmE2MicsXG4gICAgJ3Ric3YnLFxuICAgICdUZXN0bmV0IEJpdGNvaW4gU1YnLFxuICAgIE5ldHdvcmtzLnRlc3QuYml0Y29pblNWLFxuICAgIFVuZGVybHlpbmdBc3NldC5CU1YsXG4gICAgQmFzZVVuaXQuQlRDLFxuICAgIFtDb2luRmVhdHVyZS5ERVBSRUNBVEVELCAuLi5VdHhvQ29pbi5ERUZBVUxUX0ZFQVRVUkVTXVxuICApLFxuICB1dHhvKFxuICAgICc1YzE2OTFjNS1jOWNjLTQ5ZWQtYWJlMC1jNDMzZGFiMmVkYWEnLFxuICAgICdidGMnLFxuICAgICdCaXRjb2luJyxcbiAgICBOZXR3b3Jrcy5tYWluLmJpdGNvaW4sXG4gICAgVW5kZXJseWluZ0Fzc2V0LkJUQyxcbiAgICBCYXNlVW5pdC5CVEMsXG4gICAgQlRDX0ZFQVRVUkVTXG4gICksXG4gIHV0eG8oXG4gICAgJ2NkZTc1NTlkLWE1MzYtNGQxMi04ZGU0LTkwYmFhMDlmOTBiZCcsXG4gICAgJ3RidGMnLFxuICAgICdUZXN0bmV0IEJpdGNvaW4nLFxuICAgIE5ldHdvcmtzLnRlc3QuYml0Y29pbixcbiAgICBVbmRlcmx5aW5nQXNzZXQuQlRDLFxuICAgIEJhc2VVbml0LkJUQyxcbiAgICBCVENfRkVBVFVSRVMuZmlsdGVyKChmKSA9PiBmICE9PSBDb2luRmVhdHVyZS5TVEFLSU5HKVxuICApLFxuICB1dHhvKFxuICAgICdhMGQ1M2RjOS0yZGNjLTRlYmItYTJkNC01MTk4M2ZlMjBkYTYnLFxuICAgICd0YnRjc2lnJyxcbiAgICAnUHVibGljIFNpZ25ldCBCaXRjb2luJyxcbiAgICBOZXR3b3Jrcy50ZXN0LmJpdGNvaW5QdWJsaWNTaWduZXQsXG4gICAgVW5kZXJseWluZ0Fzc2V0LkJUQyxcbiAgICBCYXNlVW5pdC5CVEMsXG4gICAgQlRDX0ZFQVRVUkVTXG4gICksXG4gIHV0eG8oXG4gICAgJ2Y3NmNlYzNmLTdhZWYtNDczZC1hZjVkLTRjNDdkZDQwZGZhOCcsXG4gICAgJ3RidGM0JyxcbiAgICAnVGVzdG5ldDQgQml0Y29pbicsXG4gICAgTmV0d29ya3MudGVzdC5iaXRjb2luVGVzdG5ldDQsXG4gICAgVW5kZXJseWluZ0Fzc2V0LkJUQyxcbiAgICBCYXNlVW5pdC5CVEMsXG4gICAgQlRDX0ZFQVRVUkVTXG4gICksXG4gIHV0eG8oXG4gICAgJzcyMjUyMmRjLWE2MTMtNGJmZi1hMWQxLTE4M2ViZTUxMzhhZScsXG4gICAgJ3RidGNiZ3NpZycsXG4gICAgJ0JpdEdvIFNpZ25ldCBCaXRjb2luJyxcbiAgICBOZXR3b3Jrcy50ZXN0LmJpdGNvaW5CaXRHb1NpZ25ldCxcbiAgICBVbmRlcmx5aW5nQXNzZXQuQlRDLFxuICAgIEJhc2VVbml0LkJUQyxcbiAgICBCVENfRkVBVFVSRVNcbiAgKSxcbiAgdXR4byhcbiAgICAnOGZlYjExMGQtMGQ2OC00NGNlLWFlOTctYjhjMzBlYzg3MGE5JyxcbiAgICAnYnRnJyxcbiAgICAnQml0Y29pbiBHb2xkJyxcbiAgICBOZXR3b3Jrcy5tYWluLmJpdGNvaW5Hb2xkLFxuICAgIFVuZGVybHlpbmdBc3NldC5CVEcsXG4gICAgQmFzZVVuaXQuQlRDLFxuICAgIEJUR19GRUFUVVJFUy5maWx0ZXIoKGYpID0+IGYgIT09IENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fU0lOR0FQT1JFKVxuICApLFxuICB1dHhvKFxuICAgICc2MzMyNDZmMi1hZjIxLTQxYjgtOGI5ZS1iYTlhZTI1ZDM4NmYnLFxuICAgICd0YnRnJyxcbiAgICAnVGVzdG5ldCBCaXRjb2luIEdvbGQnLFxuICAgIE5ldHdvcmtzLnRlc3QuYml0Y29pbkdvbGQsXG4gICAgVW5kZXJseWluZ0Fzc2V0LkJURyxcbiAgICBCYXNlVW5pdC5CVEMsXG4gICAgQmFzZUNvaW4uZ2V0RmVhdHVyZXNCeVR5cGVFeGNsdWRpbmcoW0NvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fTUVOQV9GWkUsIENvaW5GZWF0dXJlLk1VTFRJU0lHX0NPTERdLCBCVEdfRkVBVFVSRVMpXG4gICksXG4gIHV0eG8oXG4gICAgJzljODA5N2YxLTVkMmMtNGE2Mi1hOTRjLTk2YzI3MWMwZTVlMCcsXG4gICAgJ2x0YycsXG4gICAgJ0xpdGVjb2luJyxcbiAgICBOZXR3b3Jrcy5tYWluLmxpdGVjb2luLFxuICAgIFVuZGVybHlpbmdBc3NldC5MVEMsXG4gICAgQmFzZVVuaXQuTFRDLFxuICAgIExUQ19GRUFUVVJFU1xuICApLFxuICB1dHhvKFxuICAgICcxYWNhMzJjOC1hM2U1LTQyZWItODJkZi00YzI2M2Q4YmZjNjgnLFxuICAgICd0bHRjJyxcbiAgICAnVGVzdG5ldCBMaXRlY29pbicsXG4gICAgTmV0d29ya3MudGVzdC5saXRlY29pbixcbiAgICBVbmRlcmx5aW5nQXNzZXQuTFRDLFxuICAgIEJhc2VVbml0LkxUQyxcbiAgICBMVENfRkVBVFVSRVNcbiAgKSxcbiAgdXR4byhcbiAgICAnMDczOWJlNmEtYzcyZS00NjhkLTk0NjQtY2E1NjAxOTY1NzA4JyxcbiAgICAnZGFzaCcsXG4gICAgJ0Rhc2gnLFxuICAgIE5ldHdvcmtzLm1haW4uZGFzaCxcbiAgICBVbmRlcmx5aW5nQXNzZXQuREFTSCxcbiAgICBCYXNlVW5pdC5EQVNILFxuICAgIERBU0hfRkVBVFVSRVMuZmlsdGVyKFxuICAgICAgKGZlYXR1cmUpID0+XG4gICAgICAgICFbXG4gICAgICAgICAgQ29pbkZlYXR1cmUuQ1VTVE9EWV9CSVRHT19TSU5HQVBPUkUsXG4gICAgICAgICAgQ29pbkZlYXR1cmUuQ1VTVE9EWV9CSVRHT19DVVNUT0RZX01FTkFfRlpFLFxuICAgICAgICAgIENvaW5GZWF0dXJlLkNVU1RPRFlfQklUR09fTUVOQV9GWkUsXG4gICAgICAgIF0uaW5jbHVkZXMoZmVhdHVyZSlcbiAgICApXG4gICksXG4gIHV0eG8oXG4gICAgJzU5NTBkNzhmLWU4ZGQtNDU3YS1hYjVkLTMxMGU2YjQ3NmJiMScsXG4gICAgJ3RkYXNoJyxcbiAgICAnVGVzdG5ldCBEYXNoJyxcbiAgICBOZXR3b3Jrcy50ZXN0LmRhc2gsXG4gICAgVW5kZXJseWluZ0Fzc2V0LkRBU0gsXG4gICAgQmFzZVVuaXQuREFTSCxcbiAgICBUREFTSF9GRUFUVVJFU1xuICApLFxuICB1dHhvKFxuICAgICc1MDhmNmI1My0xZTZlLTQxZmQtYjU0MS1iMjQ5OGI3YzRiNjEnLFxuICAgICd6ZWMnLFxuICAgICdaQ2FzaCcsXG4gICAgTmV0d29ya3MubWFpbi56Q2FzaCxcbiAgICBVbmRlcmx5aW5nQXNzZXQuWkVDLFxuICAgIEJhc2VVbml0LlpFQyxcbiAgICBaRUNfRkVBVFVSRVNcbiAgKSxcbiAgdXR4byhcbiAgICAnNTQ5YTQ0OTktMzg3Yy00MmQzLTkwNDgtYzAxZDY3MjRkOThhJyxcbiAgICAndHplYycsXG4gICAgJ1Rlc3RuZXQgWkNhc2gnLFxuICAgIE5ldHdvcmtzLnRlc3QuekNhc2gsXG4gICAgVW5kZXJseWluZ0Fzc2V0LlpFQyxcbiAgICBCYXNlVW5pdC5aRUMsXG4gICAgWkVDX0ZFQVRVUkVTXG4gICksXG4gIHV0eG8oXG4gICAgJ2M5M2E5MTYwLTQ1OGYtNGEzMS1iZWEwLTRhOTNhZThiMWQyZCcsXG4gICAgJ2RvZ2UnLFxuICAgICdEb2dlY29pbicsXG4gICAgTmV0d29ya3MubWFpbi5kb2dlY29pbixcbiAgICBVbmRlcmx5aW5nQXNzZXQuRE9HRSxcbiAgICBCYXNlVW5pdC5CVEMsXG4gICAgRE9HRV9GRUFUVVJFU1xuICApLFxuICB1dHhvKFxuICAgICc3YTE1OTdlOC1mZDhlLTRiNjgtODA4Ni1mOTE1OWUzN2UwY2UnLFxuICAgICd0ZG9nZScsXG4gICAgJ1Rlc3RuZXQgRG9nZWNvaW4nLFxuICAgIE5ldHdvcmtzLnRlc3QuZG9nZWNvaW4sXG4gICAgVW5kZXJseWluZ0Fzc2V0LkRPR0UsXG4gICAgQmFzZVVuaXQuQlRDLFxuICAgIERPR0VfRkVBVFVSRVNcbiAgKSxcbl07XG4iXX0=