@bitgo/statics 58.14.0 → 58.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"coins.d.ts","sourceRoot":"","sources":["../../src/coins.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAQhC,eAAO,MAAM,KAAK,SAMhB,CAAC;AAEH,wBAAgB,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,CAuPjF;AAiCD,wBAAgB,sBAAsB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAElH;AAED,wBAAgB,gCAAgC,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,GAAG,OAAO,CAkD1G;AAED,wBAAgB,uCAAuC,CACrD,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,EAAE,CAAC,GAC7D,OAAO,CA2BT;AAED,wBAAgB,oCAAoC,CAClD,WAAW,EAAE,qBAAqB,GACjC,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,CAsBhC"}
1
+ {"version":3,"file":"coins.d.ts","sourceRoot":"","sources":["../../src/coins.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,QAAQ,EAAe,MAAM,QAAQ,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAQhC,eAAO,MAAM,KAAK,SAMhB,CAAC;AAmBH,wBAAgB,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,CA6PjF;AAiCD,wBAAgB,sBAAsB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAElH;AAED,wBAAgB,gCAAgC,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,GAAG,OAAO,CAkD1G;AAED,wBAAgB,uCAAuC,CACrD,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,EAAE,CAAC,GAC7D,OAAO,CA2BT;AAED,wBAAgB,oCAAoC,CAClD,WAAW,EAAE,qBAAqB,GACjC,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,CAsBhC"}
package/dist/src/coins.js CHANGED
@@ -8,6 +8,7 @@ exports.createTokenMapUsingTrimmedConfigDetails = createTokenMapUsingTrimmedConf
8
8
  exports.createTokenUsingTrimmedConfigDetails = createTokenUsingTrimmedConfigDetails;
9
9
  const account_1 = require("./account");
10
10
  const ofc_1 = require("./ofc");
11
+ const base_1 = require("./base");
11
12
  const map_1 = require("./map");
12
13
  const networks_1 = require("./networks");
13
14
  const networkFeatureMapForTokens_1 = require("./networkFeatureMapForTokens");
@@ -22,6 +23,19 @@ exports.coins = map_1.CoinMap.fromCoins([
22
23
  ...ofcCoins_1.ofcCoins,
23
24
  ...botOfcTokens_1.botOfcTokens,
24
25
  ]);
26
+ // Build a map of ERC20-supporting chain family names to their mainnet coin names
27
+ // Maps family -> coin name (e.g., 'ip' -> 'ip')
28
+ const erc20ChainToNameMap = {};
29
+ // TODO: remove ip coin here and remove other evm coins from switch block, once changes are tested (Ticket: https://bitgoinc.atlassian.net/browse/WIN-7835)
30
+ const enabledEvmCoins = ['ip'];
31
+ allCoinsAndTokens_1.allCoinsAndTokens.forEach((coin) => {
32
+ if (coin.features.includes(base_1.CoinFeature.SUPPORTS_ERC20) &&
33
+ coin.network.type === networks_1.NetworkType.MAINNET &&
34
+ !coin.isToken &&
35
+ enabledEvmCoins.includes(coin.family)) {
36
+ erc20ChainToNameMap[coin.family] = coin.name;
37
+ }
38
+ });
25
39
  function createToken(token) {
26
40
  const initializerMap = {
27
41
  algo: account_1.algoToken,
@@ -57,6 +71,10 @@ function createToken(token) {
57
71
  ada: account_1.adaToken,
58
72
  ton: account_1.jettonToken,
59
73
  };
74
+ // dynamically add erc20 token initializers for eth like chains to the initializer map
75
+ Object.keys(erc20ChainToNameMap).forEach((key) => {
76
+ initializerMap[key] = account_1.erc20Token;
77
+ });
60
78
  //return the BaseCoin from default coin map if present
61
79
  if (isCoinPresentInCoinMap({ ...token })) {
62
80
  if (exports.coins.has(token.name)) {
@@ -102,6 +120,7 @@ function createToken(token) {
102
120
  case 'opeth':
103
121
  case 'polygon':
104
122
  case 'trx':
123
+ case erc20ChainToNameMap[family]:
105
124
  return initializer(...commonArgs.slice(0, 4), // id, name, fullName, decimalPlaces
106
125
  token.contractAddress || token.tokenAddress, // contractAddress
107
126
  ...commonArgs.slice(4) // asset, features, prefix, suffix, network, primaryKeyCurve
@@ -339,4 +358,4 @@ function createTokenUsingTrimmedConfigDetails(tokenConfig) {
339
358
  return createToken(fullTokenConfig);
340
359
  }
341
360
  }
342
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29pbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29pbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBaURBLGtDQXVQQztBQWlDRCx3REFFQztBQUVELDRFQWtEQztBQUVELDBGQTZCQztBQUVELG9GQXdCQztBQXhiRCx1Q0E2Qm1CO0FBQ25CLCtCQUFpQztBQUdqQywrQkFBZ0M7QUFDaEMseUNBQXNDO0FBQ3RDLDZFQUEwRTtBQUMxRSx5REFBc0U7QUFDdEUsK0NBQTRDO0FBQzVDLDJEQUF3RDtBQUN4RCx1REFBb0Q7QUFFdkMsUUFBQSxLQUFLLEdBQUcsYUFBTyxDQUFDLFNBQVMsQ0FBQztJQUNyQyxHQUFHLHFDQUFpQjtJQUNwQixHQUFHLDZCQUFhO0lBQ2hCLEdBQUcsOEJBQWM7SUFDakIsR0FBRyxtQkFBUTtJQUNYLEdBQUcsMkJBQVk7Q0FDaEIsQ0FBQyxDQUFDO0FBRUgsU0FBZ0IsV0FBVyxDQUFDLEtBQXFCO0lBQy9DLE1BQU0sY0FBYyxHQUE0QjtRQUM5QyxJQUFJLEVBQUUsbUJBQVM7UUFDZixHQUFHLEVBQUUsa0JBQVE7UUFDYixNQUFNLEVBQUUscUJBQVc7UUFDbkIsS0FBSyxFQUFFLG1CQUFTO1FBQ2hCLE9BQU8sRUFBRSxvQkFBVTtRQUNuQixJQUFJLEVBQUUsbUJBQVM7UUFDZixJQUFJLEVBQUUsb0JBQVU7UUFDaEIsUUFBUSxFQUFFLG9CQUFVO1FBQ3BCLE1BQU0sRUFBRSxvQkFBVTtRQUNsQixHQUFHLEVBQUUsb0JBQVU7UUFDZixHQUFHLEVBQUUsb0JBQVU7UUFDZixHQUFHLEVBQUUsa0JBQVE7UUFDYixJQUFJLEVBQUUsbUJBQVM7UUFDZixNQUFNLEVBQUUscUJBQVc7UUFDbkIsR0FBRyxFQUFFLGVBQUs7UUFDVixHQUFHLEVBQUUsa0JBQVE7UUFDYixJQUFJLEVBQUUscUJBQVc7UUFDakIsSUFBSSxFQUFFLHFCQUFXO1FBQ2pCLEtBQUssRUFBRSxvQkFBVTtRQUNqQixPQUFPLEVBQUUs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Y3Rpb24sXG4gIGFwdFRva2VuLFxuICBhcmJldGhFcmMyMCxcbiAgYXZheEVyYzIwLFxuICBiZXJhRXJjMjAsXG4gIGJzY1Rva2VuLFxuICBjZWxvVG9rZW4sXG4gIGNvc21vc1Rva2VuLFxuICBlb3NUb2tlbixcbiAgZXJjMjAsXG4gIGhlZGVyYVRva2VuLFxuICBqZXR0b25Ub2tlbixcbiAgbmVwMTQxVG9rZW4sXG4gIG9wZXRoRXJjMjAsXG4gIHBvbHlnb25FcmMyMCxcbiAgcG9seXhUb2tlbixcbiAgc2lwMTBUb2tlbixcbiAgc29sVG9rZW4sXG4gIHN0ZWxsYXJUb2tlbixcbiAgc3VpVG9rZW4sXG4gIHRhb1Rva2VuLFxuICB0cm9uVG9rZW4sXG4gIHZldE5GVENvbGxlY3Rpb24sXG4gIHZldFRva2VuLFxuICB4cnBUb2tlbixcbiAgYWRhVG9rZW4sXG4gIGVyYzIwVG9rZW4sXG59IGZyb20gJy4vYWNjb3VudCc7XG5pbXBvcnQgeyBvZmNUb2tlbiB9IGZyb20gJy4vb2ZjJztcbmltcG9ydCB7IEJhc2VDb2luIH0gZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7IEFtc1Rva2VuQ29uZmlnLCBUcmltbWVkQW1zVG9rZW5Db25maWcgfSBmcm9tICcuL3Rva2VuQ29uZmlnJztcbmltcG9ydCB7IENvaW5NYXAgfSBmcm9tICcuL21hcCc7XG5pbXBvcnQgeyBOZXR3b3JrcyB9IGZyb20gJy4vbmV0d29ya3MnO1xuaW1wb3J0IHsgbmV0d29ya0ZlYXR1cmVNYXBGb3JUb2tlbnMgfSBmcm9tICcuL25ldHdvcmtGZWF0dXJlTWFwRm9yVG9rZW5zJztcbmltcG9ydCB7IG9mY0VyYzIwQ29pbnMsIHRPZmNFcmMyMENvaW5zIH0gZnJvbSAnLi9jb2lucy9vZmNFcmMyMENvaW5zJztcbmltcG9ydCB7IG9mY0NvaW5zIH0gZnJvbSAnLi9jb2lucy9vZmNDb2lucyc7XG5pbXBvcnQgeyBhbGxDb2luc0FuZFRva2VucyB9IGZyb20gJy4vYWxsQ29pbnNBbmRUb2tlbnMnO1xuaW1wb3J0IHsgYm90T2ZjVG9rZW5zIH0gZnJvbSAnLi9jb2lucy9ib3RPZmNUb2tlbnMnO1xuXG5leHBvcnQgY29uc3QgY29pbnMgPSBDb2luTWFwLmZyb21Db2lucyhbXG4gIC4uLmFsbENvaW5zQW5kVG9rZW5zLFxuICAuLi5vZmNFcmMyMENvaW5zLFxuICAuLi50T2ZjRXJjMjBDb2lucyxcbiAgLi4ub2ZjQ29pbnMsXG4gIC4uLmJvdE9mY1Rva2Vucyxcbl0pO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlVG9rZW4odG9rZW46IEFtc1Rva2VuQ29uZmlnKTogUmVhZG9ubHk8QmFzZUNvaW4+IHwgdW5kZWZpbmVkIHtcbiAgY29uc3QgaW5pdGlhbGl6ZXJNYXA6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge1xuICAgIGFsZ286IGFsZ29Ub2tlbixcbiAgICBhcHQ6IGFwdFRva2VuLFxuICAgIGFyYmV0aDogYXJiZXRoRXJjMjAsXG4gICAgYXZheGM6IGF2YXhFcmMyMCxcbiAgICBiYXNlZXRoOiBlcmMyMFRva2VuLFxuICAgIGJlcmE6IGJlcmFFcmMyMCxcbiAgICBmbG93OiBlcmMyMFRva2VuLFxuICAgIGxpbmVhZXRoOiBlcmMyMFRva2VuLFxuICAgIHNlaWV2bTogZXJjMjBUb2tlbixcbiAgICBtb246IGVyYzIwVG9rZW4sXG4gICAgeGRjOiBlcmMyMFRva2VuLFxuICAgIGJzYzogYnNjVG9rZW4sXG4gICAgY2VsbzogY2Vsb1Rva2VuLFxuICAgIGNvc21vczogY29zbW9zVG9rZW4sXG4gICAgZXRoOiBlcmMyMCxcbiAgICBlb3M6IGVvc1Rva2VuLFxuICAgIGhiYXI6IGhlZGVyYVRva2VuLFxuICAgIG5lYXI6IG5lcDE0MVRva2VuLFxuICAgIG9wZXRoOiBvcGV0aEVyYzIwLFxuICAgIHBvbHlnb246IHBvbHlnb25FcmMyMCxcbiAgICBzb2w6IHNvbFRva2VuLFxuICAgIHN0eDogc2lwMTBUb2tlbixcbiAgICBzdWk6IHN1aVRva2VuLFxuICAgIHRhbzogdGFvVG9rZW4sXG4gICAgcG9seXg6IHBvbHl4VG9rZW4sXG4gICAgdHJ4OiB0cm9uVG9rZW4sXG4gICAgdmV0OiB2ZXRUb2tlbixcbiAgICB4bG06IHN0ZWxsYXJUb2tlbixcbiAgICB4cnA6IHhycFRva2VuLFxuICAgIG9mYzogb2ZjVG9rZW4sXG4gICAgYWRhOiBhZGFUb2tlbixcbiAgICB0b246IGpldHRvblRva2VuLFxuICB9O1xuXG4gIC8vcmV0dXJuIHRoZSBCYXNlQ29pbiBmcm9tIGRlZmF1bHQgY29pbiBtYXAgaWYgcHJlc2VudFxuICBpZiAoaXNDb2luUHJlc2VudEluQ29pbk1hcCh7IC4uLnRva2VuIH0pKSB7XG4gICAgaWYgKGNvaW5zLmhhcyh0b2tlbi5uYW1lKSkge1xuICAgICAgcmV0dXJuIGNvaW5zLmdldCh0b2tlbi5uYW1lKTtcbiAgICB9XG4gICAgaWYgKGNvaW5zLmhhcyh0b2tlbi5pZCkpIHtcbiAgICAgIHJldHVybiBjb2lucy5nZXQodG9rZW4uaWQpO1xuICAgIH1cbiAgICBpZiAodG9rZW4uYWxpYXMgJiYgY29pbnMuaGFzKHRva2VuLmFsaWFzKSkge1xuICAgICAgcmV0dXJuIGNvaW5zLmdldCh0b2tlbi5hbGlhcyk7XG4gICAgfVxuICB9XG4gIGNvbnN0IGZhbWlseSA9IHRva2VuLmZhbWlseTtcbiAgY29uc3QgaW5pdGlhbGl6ZXIgPSBpbml0aWFsaXplck1hcFtmYW1pbHldIGFzICguLi5hcmdzOiB1bmtub3duW10pID0+IFJlYWRvbmx5PEJhc2VDb2luPjtcbiAgaWYgKCFpbml0aWFsaXplcikge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBjb25zdCBjb21tb25BcmdzID0gW1xuICAgIHRva2VuLmlkLFxuICAgIHRva2VuLm5hbWUsXG4gICAgdG9rZW4uZnVsbE5hbWUsXG4gICAgdG9rZW4uZGVjaW1hbFBsYWNlcyxcbiAgICB0b2tlbi5hc3NldCxcbiAgICB0b2tlbi5mZWF0dXJlcyxcbiAgICB0b2tlbi5wcmVmaXgsXG4gICAgdG9rZW4uc3VmZml4LFxuICAgIHRva2VuLm5ldHdvcmssXG4gICAgdG9rZW4ucHJpbWFyeUtleUN1cnZlLFxuICBdO1xuXG4gIHN3aXRjaCAoZmFtaWx5KSB7XG4gICAgY2FzZSAnYXJiZXRoJzpcbiAgICBjYXNlICdhdmF4Yyc6XG4gICAgY2FzZSAnYmFzZWV0aCc6XG4gICAgY2FzZSAnYmVyYSc6XG4gICAgY2FzZSAnYnNjJzpcbiAgICBjYXNlICdmbG93JzpcbiAgICBjYXNlICdsaW5lYWV0aCc6XG4gICAgY2FzZSAnc2VpZXZtJzpcbiAgICBjYXNlICdtb24nOlxuICAgIGNhc2UgJ3hkYyc6XG4gICAgY2FzZSAnY2Vsbyc6XG4gICAgY2FzZSAnZXRoJzpcbiAgICBjYXNlICdvcGV0aCc6XG4gICAgY2FzZSAncG9seWdvbic6XG4gICAgY2FzZSAndHJ4JzpcbiAgICAgIHJldHVybiBpbml0aWFsaXplcihcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCA0KSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lLCBkZWNpbWFsUGxhY2VzXG4gICAgICAgIHRva2VuLmNvbnRyYWN0QWRkcmVzcyB8fCB0b2tlbi50b2tlbkFkZHJlc3MsIC8vIGNvbnRyYWN0QWRkcmVzc1xuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQpIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcblxuICAgIGNhc2UgJ2FwdCc6XG4gICAgICBjb25zdCB7IGluaXRGdW5jLCBvYmplY3RJZCB9ID0gZ2V0QXB0VG9rZW5Jbml0aWFsaXplcih0b2tlbik7XG4gICAgICByZXR1cm4gaW5pdEZ1bmMoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgNCksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlc1xuICAgICAgICBvYmplY3RJZCxcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg0KSAvLyBhc3NldCwgZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG5cbiAgICBjYXNlICd2ZXQnOlxuICAgICAgY29uc3QgeyB2ZXRJbml0RnVuYywgdmV0T2JqZWN0SWQsIGlzTkZUIH0gPSBnZXRWZXRUb2tlbkluaXRpYWxpemVyKHRva2VuKTtcbiAgICAgIGlmIChpc05GVCkge1xuICAgICAgICByZXR1cm4gdmV0SW5pdEZ1bmMoXG4gICAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCAzKSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lXG4gICAgICAgICAgdmV0T2JqZWN0SWQsXG4gICAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg0KSAvLyBhc3NldCwgZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB2ZXRJbml0RnVuYyhcbiAgICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDQpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXNcbiAgICAgICAgICB2ZXRPYmplY3RJZCxcbiAgICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQpIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgY2FzZSAnc3R4JzpcbiAgICAgIHJldHVybiBpbml0aWFsaXplcihcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCA0KSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lLCBkZWNpbWFsUGxhY2VzXG4gICAgICAgIHRva2VuLmFzc2V0SWQsIC8vIGFzc2V0SWRcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg0KSAvLyBhc3NldCwgZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG5cbiAgICBjYXNlICdhbGdvJzpcbiAgICAgIHJldHVybiBpbml0aWFsaXplcihcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCAyKSwgLy8gaWQsIG5hbWVcbiAgICAgICAgdG9rZW4uYWxpYXMsIC8vIGFsaWFzXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMikgLy8gZnVsbE5hbWUsIGRlY2ltYWwsIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcblxuICAgIGNhc2UgJ2Vvcyc6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgNCksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlc1xuICAgICAgICB0b2tlbi5jb250cmFjdE5hbWUsIC8vIGNvbnRyYWN0TmFtZVxuICAgICAgICB0b2tlbi5jb250cmFjdEFkZHJlc3MsIC8vIGNvbnRyYWN0QWRkcmVzc1xuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQsIDgpLCAvLyBhc3NldCwgZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4XG4gICAgICAgIHRva2VuLnN5bWJvbCwgLy8gc3ltYm9sXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoOCkgLy8gbmV0d29yaywgcHJpbWFyeUtleUN1cnZlXG4gICAgICApO1xuXG4gICAgY2FzZSAnaGJhcic6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgMyksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZVxuICAgICAgICB0b2tlbi5uZXR3b3JrLCAvLyBuZXR3b3JrXG4gICAgICAgIHRva2VuLmRlY2ltYWxQbGFjZXMsXG4gICAgICAgIHRva2VuLmFzc2V0LFxuICAgICAgICB0b2tlbi5jb250cmFjdEFkZHJlc3MsIC8vIGNvbnRyYWN0QWRkcmVzc1xuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDUsIDgpLCAvLyBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXhcbiAgICAgICAgdG9rZW4ucHJpbWFyeUtleUN1cnZlXG4gICAgICApO1xuXG4gICAgY2FzZSAnc29sJzpcbiAgICAgIHJldHVybiBpbml0aWFsaXplcihcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCA0KSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lLCBkZWNpbWFsUGxhY2VzXG4gICAgICAgIHRva2VuLnRva2VuQWRkcmVzcywgLy8gdG9rZW5BZGRyZXNzXG4gICAgICAgIHRva2VuLmNvbnRyYWN0QWRkcmVzcywgLy8gY29udHJhY3RBZGRyZXNzXG4gICAgICAgIHRva2VuLmFzc2V0LFxuICAgICAgICB0b2tlbi5mZWF0dXJlcyxcbiAgICAgICAgdG9rZW4ucHJvZ3JhbUlkLFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDYpIC8vIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG5cbiAgICBjYXNlICdzdWknOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDQpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXNcbiAgICAgICAgdG9rZW4ucGFja2FnZUlkLCAvLyBwYWNrYWdlSWRcbiAgICAgICAgdG9rZW4ubW9kdWxlLCAvLyBtb2R1bGVcbiAgICAgICAgdG9rZW4uc3ltYm9sLCAvLyBzeW1ib2xcbiAgICAgICAgdG9rZW4uY29udHJhY3RBZGRyZXNzLCAvLyBjb250cmFjdEFkZHJlc3NcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg0KSAvLyBhc3NldCwgZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG5cbiAgICBjYXNlICd0YW8nOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDQpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXNcbiAgICAgICAgdG9rZW4uc3VibmV0SWQsIC8vIHN1Ym5ldElkXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNCkgLy8gYXNzZXQsIGZlYXR1cmVzLCBwcmVmaXgsIHN1ZmZpeCwgbmV0d29yaywgcHJpbWFyeUtleUN1cnZlXG4gICAgICApO1xuICAgIGNhc2UgJ3BvbHl4JzpcbiAgICAgIHJldHVybiBpbml0aWFsaXplcihcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCA0KSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lLCBkZWNpbWFsUGxhY2VzXG4gICAgICAgIHRva2VuLnRpY2tlciwgLy8gdGlja2VyXG4gICAgICAgIHRva2VuLmFzc2V0SWQsIC8vIGFzc2V0SWRcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg0KSAvLyBhc3NldCwgZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG5cbiAgICBjYXNlICd4bG0nOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDUpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXMsIGFzc2V0XG4gICAgICAgIHRva2VuLmRvbWFpbiwgLy8gZG9tYWluXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNSkgLy8gZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG5cbiAgICBjYXNlICd4cnAnOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDQpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXNcbiAgICAgICAgdG9rZW4uaXNzdWVyQWRkcmVzcywgLy8gaXNzdWVyQWRkcmVzc1xuICAgICAgICB0b2tlbi5jdXJyZWNueWNvZGUsIC8vIGN1cnJlbmN5Q29kZVxuICAgICAgICB0b2tlbi5jb250cmFjdEFkZHJlc3MsIC8vIGNvbnRyYWN0QWRkcmVzc1xuICAgICAgICB0b2tlbi5kb21haW4sIC8vIGRvbWFpblxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQpIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcbiAgICBjYXNlICdvZmMnOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXMsIGFzc2V0LCBwcmVmaXgsIHN1ZmZpeCwgbmV0d29yaywgcHJpbWFyeUtleUN1cnZlXG4gICAgICAgIHRva2VuLmJhc2VVbml0LCAvLyBiYXNlVW5pdFxuICAgICAgICB0b2tlbi5pc1Rva2VuLCAvLyBpc1Rva2VuXG4gICAgICAgIHRva2VuLmtpbmQsIC8vIGtpbmRcbiAgICAgICAgdG9rZW4uYWRkcmVzc0NvaW4gLy8gYWRkcmVzc0NvaW5cbiAgICAgICk7XG4gICAgY2FzZSAnYXNpJzpcbiAgICBjYXNlICdhdG9tJzpcbiAgICBjYXNlICdiYWJ5JzpcbiAgICBjYXNlICdibGQnOlxuICAgIGNhc2UgJ2NvcmV1bSc6XG4gICAgY2FzZSAnY3Jvbm9zJzpcbiAgICBjYXNlICdoYXNoJzpcbiAgICBjYXNlICdpbmplY3RpdmUnOlxuICAgIGNhc2UgJ2luaXRpYSc6XG4gICAgY2FzZSAnb3Ntbyc6XG4gICAgY2FzZSAndGhvcic6XG4gICAgY2FzZSAnc2VpJzpcbiAgICBjYXNlICd0aWEnOlxuICAgIGNhc2UgJ3pldGEnOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDMpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWVcbiAgICAgICAgdG9rZW4uZGVub20sIC8vIGRlbm9tXG4gICAgICAgIHRva2VuLmRlY2ltYWxQbGFjZXMsIC8vIGRlY2ltYWxQbGFjZXNcbiAgICAgICAgdG9rZW4ubmV0d29yaywgLy8gbmV0d29ya1xuICAgICAgICB0b2tlbi5iYXNlVW5pdCwgLy8gYmFzZVVuaXRcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg0LCA4KSwgLy8gYXNzZXQsIGZlYXR1cmVzLCBwcmVmaXgsIHN1ZmZpeFxuICAgICAgICB0b2tlbi5wcmltYXJ5S2V5Q3VydmUgLy8gcHJpbWFyeUtleUN1cnZlXG4gICAgICApO1xuICAgIGNhc2UgJ2FkYSc6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgNCksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlc1xuICAgICAgICB0b2tlbi5hc3NldE5hbWUsXG4gICAgICAgIHRva2VuLnBvbGljeUlkLFxuICAgICAgICB0b2tlbi5jb250cmFjdEFkZHJlc3MsXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNCkgLy8gYXNzZXQsIGZlYXR1cmVzLCBwcmVmaXgsIHN1ZmZpeCwgbmV0d29yaywgcHJpbWFyeUtleUN1cnZlXG4gICAgICApO1xuICAgIGNhc2UgJ3Rvbic6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgNCksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlc1xuICAgICAgICB0b2tlbi5jb250cmFjdEFkZHJlc3MsIC8vIGNvbnRyYWN0QWRkcmVzc1xuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQpIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRBcHRUb2tlbkluaXRpYWxpemVyKHRva2VuOiBBbXNUb2tlbkNvbmZpZykge1xuICBpZiAodG9rZW4uYXNzZXRJZCkge1xuICAgIC8vIHVzZWQgZm9yIGZ1bmdpYmxlLWFzc2V0cyAvIGxlZ2FjeSBjb2lucyBldGMuXG4gICAgcmV0dXJuIHtcbiAgICAgIGluaXRGdW5jOiBhcHRUb2tlbiBhcyAoLi4uYXJnczogdW5rbm93bltdKSA9PiBSZWFkb25seTxCYXNlQ29pbj4sXG4gICAgICBvYmplY3RJZDogdG9rZW4uYXNzZXRJZCxcbiAgICB9O1xuICB9XG4gIC8vIHVzZWQgZm9yIG5vbi1mdW5naWJsZSB0b2tlbiAoTkZUKSBjb2xsZWN0aW9uc1xuICByZXR1cm4ge1xuICAgIGluaXRGdW5jOiBhcHRORlRDb2xsZWN0aW9uIGFzICguLi5hcmdzOiB1bmtub3duW10pID0+IFJlYWRvbmx5PEJhc2VDb2luPixcbiAgICBvYmplY3RJZDogdG9rZW4ubmZ0Q29sbGVjdGlvbklkLFxuICB9O1xufVxuXG5mdW5jdGlvbiBnZXRWZXRUb2tlbkluaXRpYWxpemVyKHRva2VuOiBBbXNUb2tlbkNvbmZpZykge1xuICBpZiAodG9rZW4ubmZ0Q29sbGVjdGlvbklkKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHZldEluaXRGdW5jOiB2ZXRORlRDb2xsZWN0aW9uIGFzICguLi5hcmdzOiB1bmtub3duW10pID0+IFJlYWRvbmx5PEJhc2VDb2luPixcbiAgICAgIHZldE9iamVjdElkOiB0b2tlbi5uZnRDb2xsZWN0aW9uSWQsXG4gICAgICBpc05GVDogdHJ1ZSxcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB2ZXRJbml0RnVuYzogdmV0VG9rZW4gYXMgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gUmVhZG9ubHk8QmFzZUNvaW4+LFxuICAgIHZldE9iamVjdElkOiB0b2tlbi5jb250cmFjdEFkZHJlc3MsXG4gICAgaXNORlQ6IGZhbHNlLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNDb2luUHJlc2VudEluQ29pbk1hcCh7IG5hbWUsIGlkLCBhbGlhcyB9OiB7IG5hbWU6IHN0cmluZzsgaWQ/OiBzdHJpbmc7IGFsaWFzPzogc3RyaW5nIH0pOiBib29sZWFuIHtcbiAgcmV0dXJuIEJvb2xlYW4oY29pbnMuaGFzKG5hbWUpIHx8IChpZCAmJiBjb2lucy5oYXMoaWQpKSB8fCAoYWxpYXMgJiYgY29pbnMuaGFzKGFsaWFzKSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlVG9rZW5NYXBVc2luZ0NvbmZpZ0RldGFpbHModG9rZW5Db25maWdNYXA6IFJlY29yZDxzdHJpbmcsIEFtc1Rva2VuQ29uZmlnW10+KTogQ29pbk1hcCB7XG4gIGNvbnN0IEJhc2VDb2luczogTWFwPHN0cmluZywgUmVhZG9ubHk8QmFzZUNvaW4+PiA9IG5ldyBNYXAoKTtcblxuICBjb25zdCBuZnRBbmRPdGhlclRva2VucyA9IG5ldyBTZXQoW1xuICAgICdlcmM3MjE6YnNjdG9rZW4nLFxuICAgICd0ZXJjNzIxOmJzY3Rva2VuJyxcbiAgICAnZXJjMTE1NTpic2N0b2tlbicsXG4gICAgJ3RlcmMxMTU1OmJzY3Rva2VuJyxcbiAgICAnZXJjNzIxOndpdGNoJyxcbiAgICAnZXJjNzIxOnRva2VuJyxcbiAgICAnZXJjMTE1NTp0b2tlbicsXG4gICAgJ25vbnN0YW5kYXJkOnRva2VuJyxcbiAgICAndGVyYzcyMTp0b2tlbicsXG4gICAgJ3RlcmMxMTU1OnRva2VuJyxcbiAgICAndG5vbnN0YW5kYXJkOnRva2VuJyxcbiAgICAndGVyYzcyMTpiaXRnb2VyYzcyMScsXG4gICAgJ3RlcmMxMTU1OmJpdGdvZXJjMTE1NScsXG4gICAgJ3RlcmM3MjE6aG9vZGlkaicsXG4gICAgJ2VyYzcyMTpwb2x5Z29udG9rZW4nLFxuICAgICdlcmMxMTU1OnBvbHlnb250b2tlbicsXG4gICAgJ3RlcmM3MjE6cG9seWdvbnRva2VuJyxcbiAgICAndGVyYzExNTU6cG9seWdvbnRva2VuJyxcbiAgICAnZXJjNzIxOnNvbmVpdW10b2tlbicsXG4gICAgJ2VyYzExNTU6c29uZWl1bXRva2VuJyxcbiAgICAndGVyYzcyMTpzb25laXVtdG9rZW4nLFxuICAgICd0ZXJjMTE1NTpzb25laXVtdG9rZW4nLFxuICBdKTtcblxuICAvLyBBZGQgYWxsIHRoZSBjb2lucyBmcm9tIHN0YXRpY3MgY29pbiBtYXAgZmlyc3RcbiAgY29pbnMuZm9yRWFjaCgoY29pbiwgY29pbk5hbWUpID0+IHtcbiAgICBCYXNlQ29pbnMuc2V0KGNvaW5OYW1lLCBjb2luKTtcbiAgfSk7XG5cbiAgLy8gYWRkIHRoZSB0b2tlbnMgbm90IHByZXNlbnQgaW4gdGhlIHN0YXRpYyBjb2luIG1hcFxuICBmb3IgKGNvbnN0IHRva2VuQ29uZmlncyBvZiBPYmplY3QudmFsdWVzKHRva2VuQ29uZmlnTWFwKSkge1xuICAgIGNvbnN0IHRva2VuQ29uZmlnID0gdG9rZW5Db25maWdzWzBdO1xuXG4gICAgaWYgKFxuICAgICAgIWlzQ29pblByZXNlbnRJbkNvaW5NYXAoeyAuLi50b2tlbkNvbmZpZyB9KSAmJlxuICAgICAgdG9rZW5Db25maWcuaXNUb2tlbiAmJlxuICAgICAgIW5mdEFuZE90aGVyVG9rZW5zLmhhcyh0b2tlbkNvbmZpZy5uYW1lKVxuICAgICkge1xuICAgICAgY29uc3QgdG9rZW4gPSBjcmVhdGVUb2tlbih0b2tlbkNvbmZpZyk7XG4gICAgICBpZiAodG9rZW4pIHtcbiAgICAgICAgQmFzZUNvaW5zLnNldCh0b2tlbi5uYW1lLCB0b2tlbik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIENvaW5NYXAuZnJvbUNvaW5zKEFycmF5LmZyb20oQmFzZUNvaW5zLnZhbHVlcygpKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVUb2tlbk1hcFVzaW5nVHJpbW1lZENvbmZpZ0RldGFpbHMoXG4gIHJlZHVjZWRUb2tlbkNvbmZpZ01hcDogUmVjb3JkPHN0cmluZywgVHJpbW1lZEFtc1Rva2VuQ29uZmlnW10+XG4pOiBDb2luTWFwIHtcbiAgY29uc3QgYW1zVG9rZW5Db25maWdNYXA6IFJlY29yZDxzdHJpbmcsIEFtc1Rva2VuQ29uZmlnW10+ID0ge307XG4gIGNvbnN0IG5ldHdvcmtOYW1lTWFwID0gbmV3IE1hcChcbiAgICBPYmplY3QudmFsdWVzKE5ldHdvcmtzKS5mbGF0TWFwKChuZXR3b3JrVHlwZSkgPT5cbiAgICAgIE9iamVjdC52YWx1ZXMobmV0d29ya1R5cGUpLm1hcCgobmV0d29yaykgPT4gW25ldHdvcmsubmFtZSwgbmV0d29ya10pXG4gICAgKVxuICApO1xuXG4gIGZvciAoY29uc3QgdG9rZW5Db25maWdzIG9mIE9iamVjdC52YWx1ZXMocmVkdWNlZFRva2VuQ29uZmlnTWFwKSkge1xuICAgIGNvbnN0IHRva2VuQ29uZmlnID0gdG9rZW5Db25maWdzWzBdO1xuICAgIGNvbnN0IG5ldHdvcmsgPSBuZXR3b3JrTmFtZU1hcC5nZXQodG9rZW5Db25maWcubmV0d29yay5uYW1lKTtcbiAgICBpZiAoXG4gICAgICAhaXNDb2luUHJlc2VudEluQ29pbk1hcCh7IC4uLnRva2VuQ29uZmlnIH0pICYmXG4gICAgICBuZXR3b3JrICYmXG4gICAgICB0b2tlbkNvbmZpZy5pc1Rva2VuICYmXG4gICAgICBuZXR3b3JrRmVhdHVyZU1hcEZvclRva2Vuc1tuZXR3b3JrLmZhbWlseV1cbiAgICApIHtcbiAgICAgIGNvbnN0IGZlYXR1cmVzID0gbmV3IFNldChbXG4gICAgICAgIC4uLihuZXR3b3JrRmVhdHVyZU1hcEZvclRva2Vuc1tuZXR3b3JrLmZhbWlseV0gfHwgW10pLFxuICAgICAgICAuLi4odG9rZW5Db25maWcuYWRkaXRpb25hbEZlYXR1cmVzIHx8IFtdKSxcbiAgICAgIF0pO1xuICAgICAgdG9rZW5Db25maWcuZXhjbHVkZWRGZWF0dXJlcz8uZm9yRWFjaCgoZmVhdHVyZSkgPT4gZmVhdHVyZXMuZGVsZXRlKGZlYXR1cmUpKTtcbiAgICAgIGFtc1Rva2VuQ29uZmlnTWFwW3Rva2VuQ29uZmlnLm5hbWVdID0gW3sgLi4udG9rZW5Db25maWcsIGZlYXR1cmVzOiBBcnJheS5mcm9tKGZlYXR1cmVzKSwgbmV0d29yayB9XTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY3JlYXRlVG9rZW5NYXBVc2luZ0NvbmZpZ0RldGFpbHMoYW1zVG9rZW5Db25maWdNYXApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlVG9rZW5Vc2luZ1RyaW1tZWRDb25maWdEZXRhaWxzKFxuICB0b2tlbkNvbmZpZzogVHJpbW1lZEFtc1Rva2VuQ29uZmlnXG4pOiBSZWFkb25seTxCYXNlQ29pbj4gfCB1bmRlZmluZWQge1xuICBsZXQgZnVsbFRva2VuQ29uZmlnOiBBbXNUb2tlbkNvbmZpZyB8IHVuZGVmaW5lZDtcbiAgY29uc3QgbmV0d29ya05hbWVNYXAgPSBuZXcgTWFwKFxuICAgIE9iamVjdC52YWx1ZXMoTmV0d29ya3MpLmZsYXRNYXAoKG5ldHdvcmtUeXBlKSA9PlxuICAgICAgT2JqZWN0LnZhbHVlcyhuZXR3b3JrVHlwZSkubWFwKChuZXR3b3JrKSA9PiBbbmV0d29yay5uYW1lLCBuZXR3b3JrXSlcbiAgICApXG4gICk7XG4gIGNvbnN0IG5ldHdvcmsgPSBuZXR3b3JrTmFtZU1hcC5nZXQodG9rZW5Db25maWcubmV0d29yay5uYW1lKTtcbiAgaWYgKFxuICAgICFpc0NvaW5QcmVzZW50SW5Db2luTWFwKHsgLi4udG9rZW5Db25maWcgfSkgJiZcbiAgICBuZXR3b3JrICYmXG4gICAgdG9rZW5Db25maWcuaXNUb2tlbiAmJlxuICAgIG5ldHdvcmtGZWF0dXJlTWFwRm9yVG9rZW5zW25ldHdvcmsuZmFtaWx5XVxuICApIHtcbiAgICBjb25zdCBmZWF0dXJlcyA9IG5ldyBTZXQoW1xuICAgICAgLi4uKG5ldHdvcmtGZWF0dXJlTWFwRm9yVG9rZW5zW25ldHdvcmsuZmFtaWx5XSB8fCBbXSksXG4gICAgICAuLi4odG9rZW5Db25maWcuYWRkaXRpb25hbEZlYXR1cmVzIHx8IFtdKSxcbiAgICBdKTtcbiAgICB0b2tlbkNvbmZpZy5leGNsdWRlZEZlYXR1cmVzPy5mb3JFYWNoKChmZWF0dXJlKSA9PiBmZWF0dXJlcy5kZWxldGUoZmVhdHVyZSkpO1xuICAgIGZ1bGxUb2tlbkNvbmZpZyA9IHsgLi4udG9rZW5Db25maWcsIGZlYXR1cmVzOiBBcnJheS5mcm9tKGZlYXR1cmVzKSwgbmV0d29yayB9IGFzIEFtc1Rva2VuQ29uZmlnO1xuICAgIHJldHVybiBjcmVhdGVUb2tlbihmdWxsVG9rZW5Db25maWcpO1xuICB9XG59XG4iXX0=
361
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29pbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29pbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBa0VBLGtDQTZQQztBQWlDRCx3REFFQztBQUVELDRFQWtEQztBQUVELDBGQTZCQztBQUVELG9GQXdCQztBQS9jRCx1Q0E2Qm1CO0FBQ25CLCtCQUFpQztBQUNqQyxpQ0FBK0M7QUFFL0MsK0JBQWdDO0FBQ2hDLHlDQUFtRDtBQUNuRCw2RUFBMEU7QUFDMUUseURBQXNFO0FBQ3RFLCtDQUE0QztBQUM1QywyREFBd0Q7QUFDeEQsdURBQW9EO0FBRXZDLFFBQUEsS0FBSyxHQUFHLGFBQU8sQ0FBQyxTQUFTLENBQUM7SUFDckMsR0FBRyxxQ0FBaUI7SUFDcEIsR0FBRyw2QkFBYTtJQUNoQixHQUFHLDhCQUFjO0lBQ2pCLEdBQUcsbUJBQVE7SUFDWCxHQUFHLDJCQUFZO0NBQ2hCLENBQUMsQ0FBQztBQUVILGlGQUFpRjtBQUNqRixnREFBZ0Q7QUFDaEQsTUFBTSxtQkFBbUIsR0FBMkIsRUFBRSxDQUFDO0FBRXZELDJKQUEySjtBQUMzSixNQUFNLGVBQWUsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQy9CLHFDQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO0lBQ2pDLElBQ0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsa0JBQVcsQ0FBQyxjQUFjLENBQUM7UUFDbEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUssc0JBQVcsQ0FBQyxPQUFPO1FBQ3pDLENBQUMsSUFBSSxDQUFDLE9BQU87UUFDYixlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFDckMsQ0FBQztRQUNELG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQy9DLENBQUM7QUFDSCxDQUFDLENBQUMsQ0FBQztBQUVILFNBQWdC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LENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3RCxJQUNFLENBQUMsc0JBQXNCLENBQUMsRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDO1FBQzNDLE9BQU87UUFDUCxXQUFXLENBQUMsT0FBTztRQUNuQix1REFBMEIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQzFDLENBQUM7UUFDRCxNQUFNLFFBQVEsR0FBRyxJQUFJLEdBQUcsQ0FBQztZQUN2QixHQUFHLENBQUMsdURBQTBCLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNyRCxHQUFHLENBQUMsV0FBVyxDQUFDLGtCQUFrQixJQUFJLEVBQUUsQ0FBQztTQUMxQyxDQUFDLENBQUM7UUFDSCxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDN0UsZUFBZSxHQUFHLEVBQUUsR0FBRyxXQUFXLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsT0FBTyxFQUFvQixDQUFDO1FBQ2hHLE9BQU8sV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYWxnb1Rva2VuLFxuICBhcHRORlRDb2xsZWN0aW9uLFxuICBhcHRUb2tlbixcbiAgYXJiZXRoRXJjMjAsXG4gIGF2YXhFcmMyMCxcbiAgYmVyYUVyYzIwLFxuICBic2NUb2tlbixcbiAgY2Vsb1Rva2VuLFxuICBjb3Ntb3NUb2tlbixcbiAgZW9zVG9rZW4sXG4gIGVyYzIwLFxuICBoZWRlcmFUb2tlbixcbiAgamV0dG9uVG9rZW4sXG4gIG5lcDE0MVRva2VuLFxuICBvcGV0aEVyYzIwLFxuICBwb2x5Z29uRXJjMjAsXG4gIHBvbHl4VG9rZW4sXG4gIHNpcDEwVG9rZW4sXG4gIHNvbFRva2VuLFxuICBzdGVsbGFyVG9rZW4sXG4gIHN1aVRva2VuLFxuICB0YW9Ub2tlbixcbiAgdHJvblRva2VuLFxuICB2ZXRORlRDb2xsZWN0aW9uLFxuICB2ZXRUb2tlbixcbiAgeHJwVG9rZW4sXG4gIGFkYVRva2VuLFxuICBlcmMyMFRva2VuLFxufSBmcm9tICcuL2FjY291bnQnO1xuaW1wb3J0IHsgb2ZjVG9rZW4gfSBmcm9tICcuL29mYyc7XG5pbXBvcnQgeyBCYXNlQ29pbiwgQ29pbkZlYXR1cmUgfSBmcm9tICcuL2Jhc2UnO1xuaW1wb3J0IHsgQW1zVG9rZW5Db25maWcsIFRyaW1tZWRBbXNUb2tlbkNvbmZpZyB9IGZyb20gJy4vdG9rZW5Db25maWcnO1xuaW1wb3J0IHsgQ29pbk1hcCB9IGZyb20gJy4vbWFwJztcbmltcG9ydCB7IE5ldHdvcmtzLCBOZXR3b3JrVHlwZSB9IGZyb20gJy4vbmV0d29ya3MnO1xuaW1wb3J0IHsgbmV0d29ya0ZlYXR1cmVNYXBGb3JUb2tlbnMgfSBmcm9tICcuL25ldHdvcmtGZWF0dXJlTWFwRm9yVG9rZW5zJztcbmltcG9ydCB7IG9mY0VyYzIwQ29pbnMsIHRPZmNFcmMyMENvaW5zIH0gZnJvbSAnLi9jb2lucy9vZmNFcmMyMENvaW5zJztcbmltcG9ydCB7IG9mY0NvaW5zIH0gZnJvbSAnLi9jb2lucy9vZmNDb2lucyc7XG5pbXBvcnQgeyBhbGxDb2luc0FuZFRva2VucyB9IGZyb20gJy4vYWxsQ29pbnNBbmRUb2tlbnMnO1xuaW1wb3J0IHsgYm90T2ZjVG9rZW5zIH0gZnJvbSAnLi9jb2lucy9ib3RPZmNUb2tlbnMnO1xuXG5leHBvcnQgY29uc3QgY29pbnMgPSBDb2luTWFwLmZyb21Db2lucyhbXG4gIC4uLmFsbENvaW5zQW5kVG9rZW5zLFxuICAuLi5vZmNFcmMyMENvaW5zLFxuICAuLi50T2ZjRXJjMjBDb2lucyxcbiAgLi4ub2ZjQ29pbnMsXG4gIC4uLmJvdE9mY1Rva2Vucyxcbl0pO1xuXG4vLyBCdWlsZCBhIG1hcCBvZiBFUkMyMC1zdXBwb3J0aW5nIGNoYWluIGZhbWlseSBuYW1lcyB0byB0aGVpciBtYWlubmV0IGNvaW4gbmFtZXNcbi8vIE1hcHMgZmFtaWx5IC0+IGNvaW4gbmFtZSAoZS5nLiwgJ2lwJyAtPiAnaXAnKVxuY29uc3QgZXJjMjBDaGFpblRvTmFtZU1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuXG4vLyBUT0RPOiByZW1vdmUgaXAgY29pbiBoZXJlIGFuZCByZW1vdmUgb3RoZXIgZXZtIGNvaW5zIGZyb20gc3dpdGNoIGJsb2NrLCBvbmNlIGNoYW5nZXMgYXJlIHRlc3RlZCAoVGlja2V0OiBodHRwczovL2JpdGdvaW5jLmF0bGFzc2lhbi5uZXQvYnJvd3NlL1dJTi03ODM1KVxuY29uc3QgZW5hYmxlZEV2bUNvaW5zID0gWydpcCddO1xuYWxsQ29pbnNBbmRUb2tlbnMuZm9yRWFjaCgoY29pbikgPT4ge1xuICBpZiAoXG4gICAgY29pbi5mZWF0dXJlcy5pbmNsdWRlcyhDb2luRmVhdHVyZS5TVVBQT1JUU19FUkMyMCkgJiZcbiAgICBjb2luLm5ldHdvcmsudHlwZSA9PT0gTmV0d29ya1R5cGUuTUFJTk5FVCAmJlxuICAgICFjb2luLmlzVG9rZW4gJiZcbiAgICBlbmFibGVkRXZtQ29pbnMuaW5jbHVkZXMoY29pbi5mYW1pbHkpXG4gICkge1xuICAgIGVyYzIwQ2hhaW5Ub05hbWVNYXBbY29pbi5mYW1pbHldID0gY29pbi5uYW1lO1xuICB9XG59KTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVRva2VuKHRva2VuOiBBbXNUb2tlbkNvbmZpZyk6IFJlYWRvbmx5PEJhc2VDb2luPiB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IGluaXRpYWxpemVyTWFwOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHtcbiAgICBhbGdvOiBhbGdvVG9rZW4sXG4gICAgYXB0OiBhcHRUb2tlbixcbiAgICBhcmJldGg6IGFyYmV0aEVyYzIwLFxuICAgIGF2YXhjOiBhdmF4RXJjMjAsXG4gICAgYmFzZWV0aDogZXJjMjBUb2tlbixcbiAgICBiZXJhOiBiZXJhRXJjMjAsXG4gICAgZmxvdzogZXJjMjBUb2tlbixcbiAgICBsaW5lYWV0aDogZXJjMjBUb2tlbixcbiAgICBzZWlldm06IGVyYzIwVG9rZW4sXG4gICAgbW9uOiBlcmMyMFRva2VuLFxuICAgIHhkYzogZXJjMjBUb2tlbixcbiAgICBic2M6IGJzY1Rva2VuLFxuICAgIGNlbG86IGNlbG9Ub2tlbixcbiAgICBjb3Ntb3M6IGNvc21vc1Rva2VuLFxuICAgIGV0aDogZXJjMjAsXG4gICAgZW9zOiBlb3NUb2tlbixcbiAgICBoYmFyOiBoZWRlcmFUb2tlbixcbiAgICBuZWFyOiBuZXAxNDFUb2tlbixcbiAgICBvcGV0aDogb3BldGhFcmMyMCxcbiAgICBwb2x5Z29uOiBwb2x5Z29uRXJjMjAsXG4gICAgc29sOiBzb2xUb2tlbixcbiAgICBzdHg6IHNpcDEwVG9rZW4sXG4gICAgc3VpOiBzdWlUb2tlbixcbiAgICB0YW86IHRhb1Rva2VuLFxuICAgIHBvbHl4OiBwb2x5eFRva2VuLFxuICAgIHRyeDogdHJvblRva2VuLFxuICAgIHZldDogdmV0VG9rZW4sXG4gICAgeGxtOiBzdGVsbGFyVG9rZW4sXG4gICAgeHJwOiB4cnBUb2tlbixcbiAgICBvZmM6IG9mY1Rva2VuLFxuICAgIGFkYTogYWRhVG9rZW4sXG4gICAgdG9uOiBqZXR0b25Ub2tlbixcbiAgfTtcblxuICAvLyBkeW5hbWljYWxseSBhZGQgZXJjMjAgdG9rZW4gaW5pdGlhbGl6ZXJzIGZvciBldGggbGlrZSBjaGFpbnMgdG8gdGhlIGluaXRpYWxpemVyIG1hcFxuICBPYmplY3Qua2V5cyhlcmMyMENoYWluVG9OYW1lTWFwKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICBpbml0aWFsaXplck1hcFtrZXldID0gZXJjMjBUb2tlbjtcbiAgfSk7XG5cbiAgLy9yZXR1cm4gdGhlIEJhc2VDb2luIGZyb20gZGVmYXVsdCBjb2luIG1hcCBpZiBwcmVzZW50XG4gIGlmIChpc0NvaW5QcmVzZW50SW5Db2luTWFwKHsgLi4udG9rZW4gfSkpIHtcbiAgICBpZiAoY29pbnMuaGFzKHRva2VuLm5hbWUpKSB7XG4gICAgICByZXR1cm4gY29pbnMuZ2V0KHRva2VuLm5hbWUpO1xuICAgIH1cbiAgICBpZiAoY29pbnMuaGFzKHRva2VuLmlkKSkge1xuICAgICAgcmV0dXJuIGNvaW5zLmdldCh0b2tlbi5pZCk7XG4gICAgfVxuICAgIGlmICh0b2tlbi5hbGlhcyAmJiBjb2lucy5oYXModG9rZW4uYWxpYXMpKSB7XG4gICAgICByZXR1cm4gY29pbnMuZ2V0KHRva2VuLmFsaWFzKTtcbiAgICB9XG4gIH1cbiAgY29uc3QgZmFtaWx5ID0gdG9rZW4uZmFtaWx5O1xuICBjb25zdCBpbml0aWFsaXplciA9IGluaXRpYWxpemVyTWFwW2ZhbWlseV0gYXMgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gUmVhZG9ubHk8QmFzZUNvaW4+O1xuICBpZiAoIWluaXRpYWxpemVyKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNvbnN0IGNvbW1vbkFyZ3MgPSBbXG4gICAgdG9rZW4uaWQsXG4gICAgdG9rZW4ubmFtZSxcbiAgICB0b2tlbi5mdWxsTmFtZSxcbiAgICB0b2tlbi5kZWNpbWFsUGxhY2VzLFxuICAgIHRva2VuLmFzc2V0LFxuICAgIHRva2VuLmZlYXR1cmVzLFxuICAgIHRva2VuLnByZWZpeCxcbiAgICB0b2tlbi5zdWZmaXgsXG4gICAgdG9rZW4ubmV0d29yayxcbiAgICB0b2tlbi5wcmltYXJ5S2V5Q3VydmUsXG4gIF07XG5cbiAgc3dpdGNoIChmYW1pbHkpIHtcbiAgICBjYXNlICdhcmJldGgnOlxuICAgIGNhc2UgJ2F2YXhjJzpcbiAgICBjYXNlICdiYXNlZXRoJzpcbiAgICBjYXNlICdiZXJhJzpcbiAgICBjYXNlICdic2MnOlxuICAgIGNhc2UgJ2Zsb3cnOlxuICAgIGNhc2UgJ2xpbmVhZXRoJzpcbiAgICBjYXNlICdzZWlldm0nOlxuICAgIGNhc2UgJ21vbic6XG4gICAgY2FzZSAneGRjJzpcbiAgICBjYXNlICdjZWxvJzpcbiAgICBjYXNlICdldGgnOlxuICAgIGNhc2UgJ29wZXRoJzpcbiAgICBjYXNlICdwb2x5Z29uJzpcbiAgICBjYXNlICd0cngnOlxuICAgIGNhc2UgZXJjMjBDaGFpblRvTmFtZU1hcFtmYW1pbHldOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDQpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXNcbiAgICAgICAgdG9rZW4uY29udHJhY3RBZGRyZXNzIHx8IHRva2VuLnRva2VuQWRkcmVzcywgLy8gY29udHJhY3RBZGRyZXNzXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNCkgLy8gYXNzZXQsIGZlYXR1cmVzLCBwcmVmaXgsIHN1ZmZpeCwgbmV0d29yaywgcHJpbWFyeUtleUN1cnZlXG4gICAgICApO1xuXG4gICAgY2FzZSAnYXB0JzpcbiAgICAgIGNvbnN0IHsgaW5pdEZ1bmMsIG9iamVjdElkIH0gPSBnZXRBcHRUb2tlbkluaXRpYWxpemVyKHRva2VuKTtcbiAgICAgIHJldHVybiBpbml0RnVuYyhcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCA0KSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lLCBkZWNpbWFsUGxhY2VzXG4gICAgICAgIG9iamVjdElkLFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQpIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcblxuICAgIGNhc2UgJ3ZldCc6XG4gICAgICBjb25zdCB7IHZldEluaXRGdW5jLCB2ZXRPYmplY3RJZCwgaXNORlQgfSA9IGdldFZldFRva2VuSW5pdGlhbGl6ZXIodG9rZW4pO1xuICAgICAgaWYgKGlzTkZUKSB7XG4gICAgICAgIHJldHVybiB2ZXRJbml0RnVuYyhcbiAgICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDMpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWVcbiAgICAgICAgICB2ZXRPYmplY3RJZCxcbiAgICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQpIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHZldEluaXRGdW5jKFxuICAgICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgNCksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlc1xuICAgICAgICAgIHZldE9iamVjdElkLFxuICAgICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNCkgLy8gYXNzZXQsIGZlYXR1cmVzLCBwcmVmaXgsIHN1ZmZpeCwgbmV0d29yaywgcHJpbWFyeUtleUN1cnZlXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICBjYXNlICdzdHgnOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDQpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXNcbiAgICAgICAgdG9rZW4uYXNzZXRJZCwgLy8gYXNzZXRJZFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQpIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcblxuICAgIGNhc2UgJ2FsZ28nOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDIpLCAvLyBpZCwgbmFtZVxuICAgICAgICB0b2tlbi5hbGlhcywgLy8gYWxpYXNcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgyKSAvLyBmdWxsTmFtZSwgZGVjaW1hbCwgYXNzZXQsIGZlYXR1cmVzLCBwcmVmaXgsIHN1ZmZpeCwgbmV0d29yaywgcHJpbWFyeUtleUN1cnZlXG4gICAgICApO1xuXG4gICAgY2FzZSAnZW9zJzpcbiAgICAgIHJldHVybiBpbml0aWFsaXplcihcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCA0KSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lLCBkZWNpbWFsUGxhY2VzXG4gICAgICAgIHRva2VuLmNvbnRyYWN0TmFtZSwgLy8gY29udHJhY3ROYW1lXG4gICAgICAgIHRva2VuLmNvbnRyYWN0QWRkcmVzcywgLy8gY29udHJhY3RBZGRyZXNzXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNCwgOCksIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXhcbiAgICAgICAgdG9rZW4uc3ltYm9sLCAvLyBzeW1ib2xcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg4KSAvLyBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG5cbiAgICBjYXNlICdoYmFyJzpcbiAgICAgIHJldHVybiBpbml0aWFsaXplcihcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCAzKSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lXG4gICAgICAgIHRva2VuLm5ldHdvcmssIC8vIG5ldHdvcmtcbiAgICAgICAgdG9rZW4uZGVjaW1hbFBsYWNlcyxcbiAgICAgICAgdG9rZW4uYXNzZXQsXG4gICAgICAgIHRva2VuLmNvbnRyYWN0QWRkcmVzcywgLy8gY29udHJhY3RBZGRyZXNzXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNSwgOCksIC8vIGZlYXR1cmVzLCBwcmVmaXgsIHN1ZmZpeFxuICAgICAgICB0b2tlbi5wcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG5cbiAgICBjYXNlICdzb2wnOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDQpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXNcbiAgICAgICAgdG9rZW4udG9rZW5BZGRyZXNzLCAvLyB0b2tlbkFkZHJlc3NcbiAgICAgICAgdG9rZW4uY29udHJhY3RBZGRyZXNzLCAvLyBjb250cmFjdEFkZHJlc3NcbiAgICAgICAgdG9rZW4uYXNzZXQsXG4gICAgICAgIHRva2VuLmZlYXR1cmVzLFxuICAgICAgICB0b2tlbi5wcm9ncmFtSWQsXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNikgLy8gcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcblxuICAgIGNhc2UgJ3N1aSc6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgNCksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlc1xuICAgICAgICB0b2tlbi5wYWNrYWdlSWQsIC8vIHBhY2thZ2VJZFxuICAgICAgICB0b2tlbi5tb2R1bGUsIC8vIG1vZHVsZVxuICAgICAgICB0b2tlbi5zeW1ib2wsIC8vIHN5bWJvbFxuICAgICAgICB0b2tlbi5jb250cmFjdEFkZHJlc3MsIC8vIGNvbnRyYWN0QWRkcmVzc1xuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQpIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcblxuICAgIGNhc2UgJ3Rhbyc6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgNCksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlc1xuICAgICAgICB0b2tlbi5zdWJuZXRJZCwgLy8gc3VibmV0SWRcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg0KSAvLyBhc3NldCwgZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG4gICAgY2FzZSAncG9seXgnOlxuICAgICAgcmV0dXJuIGluaXRpYWxpemVyKFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDAsIDQpLCAvLyBpZCwgbmFtZSwgZnVsbE5hbWUsIGRlY2ltYWxQbGFjZXNcbiAgICAgICAgdG9rZW4udGlja2VyLCAvLyB0aWNrZXJcbiAgICAgICAgdG9rZW4uYXNzZXRJZCwgLy8gYXNzZXRJZFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQpIC8vIGFzc2V0LCBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcblxuICAgIGNhc2UgJ3hsbSc6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgNSksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlcywgYXNzZXRcbiAgICAgICAgdG9rZW4uZG9tYWluLCAvLyBkb21haW5cbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg1KSAvLyBmZWF0dXJlcywgcHJlZml4LCBzdWZmaXgsIG5ldHdvcmssIHByaW1hcnlLZXlDdXJ2ZVxuICAgICAgKTtcblxuICAgIGNhc2UgJ3hycCc6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgNCksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlc1xuICAgICAgICB0b2tlbi5pc3N1ZXJBZGRyZXNzLCAvLyBpc3N1ZXJBZGRyZXNzXG4gICAgICAgIHRva2VuLmN1cnJlY255Y29kZSwgLy8gY3VycmVuY3lDb2RlXG4gICAgICAgIHRva2VuLmNvbnRyYWN0QWRkcmVzcywgLy8gY29udHJhY3RBZGRyZXNzXG4gICAgICAgIHRva2VuLmRvbWFpbiwgLy8gZG9tYWluXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNCkgLy8gYXNzZXQsIGZlYXR1cmVzLCBwcmVmaXgsIHN1ZmZpeCwgbmV0d29yaywgcHJpbWFyeUtleUN1cnZlXG4gICAgICApO1xuICAgIGNhc2UgJ29mYyc6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3MsIC8vIGlkLCBuYW1lLCBmdWxsTmFtZSwgZGVjaW1hbFBsYWNlcywgYXNzZXQsIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICAgdG9rZW4uYmFzZVVuaXQsIC8vIGJhc2VVbml0XG4gICAgICAgIHRva2VuLmlzVG9rZW4sIC8vIGlzVG9rZW5cbiAgICAgICAgdG9rZW4ua2luZCwgLy8ga2luZFxuICAgICAgICB0b2tlbi5hZGRyZXNzQ29pbiAvLyBhZGRyZXNzQ29pblxuICAgICAgKTtcbiAgICBjYXNlICdhc2knOlxuICAgIGNhc2UgJ2F0b20nOlxuICAgIGNhc2UgJ2JhYnknOlxuICAgIGNhc2UgJ2JsZCc6XG4gICAgY2FzZSAnY29yZXVtJzpcbiAgICBjYXNlICdjcm9ub3MnOlxuICAgIGNhc2UgJ2hhc2gnOlxuICAgIGNhc2UgJ2luamVjdGl2ZSc6XG4gICAgY2FzZSAnaW5pdGlhJzpcbiAgICBjYXNlICdvc21vJzpcbiAgICBjYXNlICd0aG9yJzpcbiAgICBjYXNlICdzZWknOlxuICAgIGNhc2UgJ3RpYSc6XG4gICAgY2FzZSAnemV0YSc6XG4gICAgICByZXR1cm4gaW5pdGlhbGl6ZXIoXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoMCwgMyksIC8vIGlkLCBuYW1lLCBmdWxsTmFtZVxuICAgICAgICB0b2tlbi5kZW5vbSwgLy8gZGVub21cbiAgICAgICAgdG9rZW4uZGVjaW1hbFBsYWNlcywgLy8gZGVjaW1hbFBsYWNlc1xuICAgICAgICB0b2tlbi5uZXR3b3JrLCAvLyBuZXR3b3JrXG4gICAgICAgIHRva2VuLmJhc2VVbml0LCAvLyBiYXNlVW5pdFxuICAgICAgICAuLi5jb21tb25BcmdzLnNsaWNlKDQsIDgpLCAvLyBhc3NldCwgZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4XG4gICAgICAgIHRva2VuLnByaW1hcnlLZXlDdXJ2ZSAvLyBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG4gICAgY2FzZSAnYWRhJzpcbiAgICAgIHJldHVybiBpbml0aWFsaXplcihcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCA0KSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lLCBkZWNpbWFsUGxhY2VzXG4gICAgICAgIHRva2VuLmFzc2V0TmFtZSxcbiAgICAgICAgdG9rZW4ucG9saWN5SWQsXG4gICAgICAgIHRva2VuLmNvbnRyYWN0QWRkcmVzcyxcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSg0KSAvLyBhc3NldCwgZmVhdHVyZXMsIHByZWZpeCwgc3VmZml4LCBuZXR3b3JrLCBwcmltYXJ5S2V5Q3VydmVcbiAgICAgICk7XG4gICAgY2FzZSAndG9uJzpcbiAgICAgIHJldHVybiBpbml0aWFsaXplcihcbiAgICAgICAgLi4uY29tbW9uQXJncy5zbGljZSgwLCA0KSwgLy8gaWQsIG5hbWUsIGZ1bGxOYW1lLCBkZWNpbWFsUGxhY2VzXG4gICAgICAgIHRva2VuLmNvbnRyYWN0QWRkcmVzcywgLy8gY29udHJhY3RBZGRyZXNzXG4gICAgICAgIC4uLmNvbW1vbkFyZ3Muc2xpY2UoNCkgLy8gYXNzZXQsIGZlYXR1cmVzLCBwcmVmaXgsIHN1ZmZpeCwgbmV0d29yaywgcHJpbWFyeUtleUN1cnZlXG4gICAgICApO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldEFwdFRva2VuSW5pdGlhbGl6ZXIodG9rZW46IEFtc1Rva2VuQ29uZmlnKSB7XG4gIGlmICh0b2tlbi5hc3NldElkKSB7XG4gICAgLy8gdXNlZCBmb3IgZnVuZ2libGUtYXNzZXRzIC8gbGVnYWN5IGNvaW5zIGV0Yy5cbiAgICByZXR1cm4ge1xuICAgICAgaW5pdEZ1bmM6IGFwdFRva2VuIGFzICguLi5hcmdzOiB1bmtub3duW10pID0+IFJlYWRvbmx5PEJhc2VDb2luPixcbiAgICAgIG9iamVjdElkOiB0b2tlbi5hc3NldElkLFxuICAgIH07XG4gIH1cbiAgLy8gdXNlZCBmb3Igbm9uLWZ1bmdpYmxlIHRva2VuIChORlQpIGNvbGxlY3Rpb25zXG4gIHJldHVybiB7XG4gICAgaW5pdEZ1bmM6IGFwdE5GVENvbGxlY3Rpb24gYXMgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gUmVhZG9ubHk8QmFzZUNvaW4+LFxuICAgIG9iamVjdElkOiB0b2tlbi5uZnRDb2xsZWN0aW9uSWQsXG4gIH07XG59XG5cbmZ1bmN0aW9uIGdldFZldFRva2VuSW5pdGlhbGl6ZXIodG9rZW46IEFtc1Rva2VuQ29uZmlnKSB7XG4gIGlmICh0b2tlbi5uZnRDb2xsZWN0aW9uSWQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdmV0SW5pdEZ1bmM6IHZldE5GVENvbGxlY3Rpb24gYXMgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gUmVhZG9ubHk8QmFzZUNvaW4+LFxuICAgICAgdmV0T2JqZWN0SWQ6IHRva2VuLm5mdENvbGxlY3Rpb25JZCxcbiAgICAgIGlzTkZUOiB0cnVlLFxuICAgIH07XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHZldEluaXRGdW5jOiB2ZXRUb2tlbiBhcyAoLi4uYXJnczogdW5rbm93bltdKSA9PiBSZWFkb25seTxCYXNlQ29pbj4sXG4gICAgdmV0T2JqZWN0SWQ6IHRva2VuLmNvbnRyYWN0QWRkcmVzcyxcbiAgICBpc05GVDogZmFsc2UsXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvaW5QcmVzZW50SW5Db2luTWFwKHsgbmFtZSwgaWQsIGFsaWFzIH06IHsgbmFtZTogc3RyaW5nOyBpZD86IHN0cmluZzsgYWxpYXM/OiBzdHJpbmcgfSk6IGJvb2xlYW4ge1xuICByZXR1cm4gQm9vbGVhbihjb2lucy5oYXMobmFtZSkgfHwgKGlkICYmIGNvaW5zLmhhcyhpZCkpIHx8IChhbGlhcyAmJiBjb2lucy5oYXMoYWxpYXMpKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVUb2tlbk1hcFVzaW5nQ29uZmlnRGV0YWlscyh0b2tlbkNvbmZpZ01hcDogUmVjb3JkPHN0cmluZywgQW1zVG9rZW5Db25maWdbXT4pOiBDb2luTWFwIHtcbiAgY29uc3QgQmFzZUNvaW5zOiBNYXA8c3RyaW5nLCBSZWFkb25seTxCYXNlQ29pbj4+ID0gbmV3IE1hcCgpO1xuXG4gIGNvbnN0IG5mdEFuZE90aGVyVG9rZW5zID0gbmV3IFNldChbXG4gICAgJ2VyYzcyMTpic2N0b2tlbicsXG4gICAgJ3RlcmM3MjE6YnNjdG9rZW4nLFxuICAgICdlcmMxMTU1OmJzY3Rva2VuJyxcbiAgICAndGVyYzExNTU6YnNjdG9rZW4nLFxuICAgICdlcmM3MjE6d2l0Y2gnLFxuICAgICdlcmM3MjE6dG9rZW4nLFxuICAgICdlcmMxMTU1OnRva2VuJyxcbiAgICAnbm9uc3RhbmRhcmQ6dG9rZW4nLFxuICAgICd0ZXJjNzIxOnRva2VuJyxcbiAgICAndGVyYzExNTU6dG9rZW4nLFxuICAgICd0bm9uc3RhbmRhcmQ6dG9rZW4nLFxuICAgICd0ZXJjNzIxOmJpdGdvZXJjNzIxJyxcbiAgICAndGVyYzExNTU6Yml0Z29lcmMxMTU1JyxcbiAgICAndGVyYzcyMTpob29kaWRqJyxcbiAgICAnZXJjNzIxOnBvbHlnb250b2tlbicsXG4gICAgJ2VyYzExNTU6cG9seWdvbnRva2VuJyxcbiAgICAndGVyYzcyMTpwb2x5Z29udG9rZW4nLFxuICAgICd0ZXJjMTE1NTpwb2x5Z29udG9rZW4nLFxuICAgICdlcmM3MjE6c29uZWl1bXRva2VuJyxcbiAgICAnZXJjMTE1NTpzb25laXVtdG9rZW4nLFxuICAgICd0ZXJjNzIxOnNvbmVpdW10b2tlbicsXG4gICAgJ3RlcmMxMTU1OnNvbmVpdW10b2tlbicsXG4gIF0pO1xuXG4gIC8vIEFkZCBhbGwgdGhlIGNvaW5zIGZyb20gc3RhdGljcyBjb2luIG1hcCBmaXJzdFxuICBjb2lucy5mb3JFYWNoKChjb2luLCBjb2luTmFtZSkgPT4ge1xuICAgIEJhc2VDb2lucy5zZXQoY29pbk5hbWUsIGNvaW4pO1xuICB9KTtcblxuICAvLyBhZGQgdGhlIHRva2VucyBub3QgcHJlc2VudCBpbiB0aGUgc3RhdGljIGNvaW4gbWFwXG4gIGZvciAoY29uc3QgdG9rZW5Db25maWdzIG9mIE9iamVjdC52YWx1ZXModG9rZW5Db25maWdNYXApKSB7XG4gICAgY29uc3QgdG9rZW5Db25maWcgPSB0b2tlbkNvbmZpZ3NbMF07XG5cbiAgICBpZiAoXG4gICAgICAhaXNDb2luUHJlc2VudEluQ29pbk1hcCh7IC4uLnRva2VuQ29uZmlnIH0pICYmXG4gICAgICB0b2tlbkNvbmZpZy5pc1Rva2VuICYmXG4gICAgICAhbmZ0QW5kT3RoZXJUb2tlbnMuaGFzKHRva2VuQ29uZmlnLm5hbWUpXG4gICAgKSB7XG4gICAgICBjb25zdCB0b2tlbiA9IGNyZWF0ZVRva2VuKHRva2VuQ29uZmlnKTtcbiAgICAgIGlmICh0b2tlbikge1xuICAgICAgICBCYXNlQ29pbnMuc2V0KHRva2VuLm5hbWUsIHRva2VuKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gQ29pbk1hcC5mcm9tQ29pbnMoQXJyYXkuZnJvbShCYXNlQ29pbnMudmFsdWVzKCkpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVRva2VuTWFwVXNpbmdUcmltbWVkQ29uZmlnRGV0YWlscyhcbiAgcmVkdWNlZFRva2VuQ29uZmlnTWFwOiBSZWNvcmQ8c3RyaW5nLCBUcmltbWVkQW1zVG9rZW5Db25maWdbXT5cbik6IENvaW5NYXAge1xuICBjb25zdCBhbXNUb2tlbkNvbmZpZ01hcDogUmVjb3JkPHN0cmluZywgQW1zVG9rZW5Db25maWdbXT4gPSB7fTtcbiAgY29uc3QgbmV0d29ya05hbWVNYXAgPSBuZXcgTWFwKFxuICAgIE9iamVjdC52YWx1ZXMoTmV0d29ya3MpLmZsYXRNYXAoKG5ldHdvcmtUeXBlKSA9PlxuICAgICAgT2JqZWN0LnZhbHVlcyhuZXR3b3JrVHlwZSkubWFwKChuZXR3b3JrKSA9PiBbbmV0d29yay5uYW1lLCBuZXR3b3JrXSlcbiAgICApXG4gICk7XG5cbiAgZm9yIChjb25zdCB0b2tlbkNvbmZpZ3Mgb2YgT2JqZWN0LnZhbHVlcyhyZWR1Y2VkVG9rZW5Db25maWdNYXApKSB7XG4gICAgY29uc3QgdG9rZW5Db25maWcgPSB0b2tlbkNvbmZpZ3NbMF07XG4gICAgY29uc3QgbmV0d29yayA9IG5ldHdvcmtOYW1lTWFwLmdldCh0b2tlbkNvbmZpZy5uZXR3b3JrLm5hbWUpO1xuICAgIGlmIChcbiAgICAgICFpc0NvaW5QcmVzZW50SW5Db2luTWFwKHsgLi4udG9rZW5Db25maWcgfSkgJiZcbiAgICAgIG5ldHdvcmsgJiZcbiAgICAgIHRva2VuQ29uZmlnLmlzVG9rZW4gJiZcbiAgICAgIG5ldHdvcmtGZWF0dXJlTWFwRm9yVG9rZW5zW25ldHdvcmsuZmFtaWx5XVxuICAgICkge1xuICAgICAgY29uc3QgZmVhdHVyZXMgPSBuZXcgU2V0KFtcbiAgICAgICAgLi4uKG5ldHdvcmtGZWF0dXJlTWFwRm9yVG9rZW5zW25ldHdvcmsuZmFtaWx5XSB8fCBbXSksXG4gICAgICAgIC4uLih0b2tlbkNvbmZpZy5hZGRpdGlvbmFsRmVhdHVyZXMgfHwgW10pLFxuICAgICAgXSk7XG4gICAgICB0b2tlbkNvbmZpZy5leGNsdWRlZEZlYXR1cmVzPy5mb3JFYWNoKChmZWF0dXJlKSA9PiBmZWF0dXJlcy5kZWxldGUoZmVhdHVyZSkpO1xuICAgICAgYW1zVG9rZW5Db25maWdNYXBbdG9rZW5Db25maWcubmFtZV0gPSBbeyAuLi50b2tlbkNvbmZpZywgZmVhdHVyZXM6IEFycmF5LmZyb20oZmVhdHVyZXMpLCBuZXR3b3JrIH1dO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjcmVhdGVUb2tlbk1hcFVzaW5nQ29uZmlnRGV0YWlscyhhbXNUb2tlbkNvbmZpZ01hcCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVUb2tlblVzaW5nVHJpbW1lZENvbmZpZ0RldGFpbHMoXG4gIHRva2VuQ29uZmlnOiBUcmltbWVkQW1zVG9rZW5Db25maWdcbik6IFJlYWRvbmx5PEJhc2VDb2luPiB8IHVuZGVmaW5lZCB7XG4gIGxldCBmdWxsVG9rZW5Db25maWc6IEFtc1Rva2VuQ29uZmlnIHwgdW5kZWZpbmVkO1xuICBjb25zdCBuZXR3b3JrTmFtZU1hcCA9IG5ldyBNYXAoXG4gICAgT2JqZWN0LnZhbHVlcyhOZXR3b3JrcykuZmxhdE1hcCgobmV0d29ya1R5cGUpID0+XG4gICAgICBPYmplY3QudmFsdWVzKG5ldHdvcmtUeXBlKS5tYXAoKG5ldHdvcmspID0+IFtuZXR3b3JrLm5hbWUsIG5ldHdvcmtdKVxuICAgIClcbiAgKTtcbiAgY29uc3QgbmV0d29yayA9IG5ldHdvcmtOYW1lTWFwLmdldCh0b2tlbkNvbmZpZy5uZXR3b3JrLm5hbWUpO1xuICBpZiAoXG4gICAgIWlzQ29pblByZXNlbnRJbkNvaW5NYXAoeyAuLi50b2tlbkNvbmZpZyB9KSAmJlxuICAgIG5ldHdvcmsgJiZcbiAgICB0b2tlbkNvbmZpZy5pc1Rva2VuICYmXG4gICAgbmV0d29ya0ZlYXR1cmVNYXBGb3JUb2tlbnNbbmV0d29yay5mYW1pbHldXG4gICkge1xuICAgIGNvbnN0IGZlYXR1cmVzID0gbmV3IFNldChbXG4gICAgICAuLi4obmV0d29ya0ZlYXR1cmVNYXBGb3JUb2tlbnNbbmV0d29yay5mYW1pbHldIHx8IFtdKSxcbiAgICAgIC4uLih0b2tlbkNvbmZpZy5hZGRpdGlvbmFsRmVhdHVyZXMgfHwgW10pLFxuICAgIF0pO1xuICAgIHRva2VuQ29uZmlnLmV4Y2x1ZGVkRmVhdHVyZXM/LmZvckVhY2goKGZlYXR1cmUpID0+IGZlYXR1cmVzLmRlbGV0ZShmZWF0dXJlKSk7XG4gICAgZnVsbFRva2VuQ29uZmlnID0geyAuLi50b2tlbkNvbmZpZywgZmVhdHVyZXM6IEFycmF5LmZyb20oZmVhdHVyZXMpLCBuZXR3b3JrIH0gYXMgQW1zVG9rZW5Db25maWc7XG4gICAgcmV0dXJuIGNyZWF0ZVRva2VuKGZ1bGxUb2tlbkNvbmZpZyk7XG4gIH1cbn1cbiJdfQ==
@@ -1 +1 @@
1
- {"version":3,"file":"lightning.d.ts","sourceRoot":"","sources":["../../src/lightning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAY,QAAQ,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAY,MAAM,YAAY,CAAC;AAExD,UAAU,2BAA2B;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,gBAAgB,CAAC;IAC1B,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,aAAc,SAAQ,QAAQ;IACzC,gBAAuB,gBAAgB,gBAAiC;IAExE;;OAEG;IACH,SAAgB,OAAO,EAAE,gBAAgB,CAAC;gBAE9B,OAAO,EAAE,2BAA2B;IAWhD,SAAS,CAAC,kBAAkB,IAAI,GAAG,CAAC,WAAW,CAAC;IAIhD,SAAS,CAAC,gBAAgB,IAAI,GAAG,CAAC,WAAW,CAAC;CAG/C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CACvB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,GAAE,WAAW,EAAmC,EACxD,MAAM,SAAK,EACX,MAAM,GAAE,MAA2B;AACnC,mDAAmD;AACnD,eAAe,GAAE,QAA6B,2BAgB/C;AAID,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAmB9C,CAAC"}
1
+ {"version":3,"file":"lightning.d.ts","sourceRoot":"","sources":["../../src/lightning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAY,QAAQ,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAY,MAAM,YAAY,CAAC;AAExD,UAAU,2BAA2B;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,gBAAgB,CAAC;IAC1B,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,aAAc,SAAQ,QAAQ;IACzC,gBAAuB,gBAAgB,gBAAiC;IAExE;;OAEG;IACH,SAAgB,OAAO,EAAE,gBAAgB,CAAC;gBAE9B,OAAO,EAAE,2BAA2B;IAWhD,SAAS,CAAC,kBAAkB,IAAI,GAAG,CAAC,WAAW,CAAC;IAIhD,SAAS,CAAC,gBAAgB,IAAI,GAAG,CAAC,WAAW,CAAC;CAG/C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CACvB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,GAAE,WAAW,EAAmC,EACxD,MAAM,SAAK,EACX,MAAM,GAAE,MAA2B;AACnC,mDAAmD;AACnD,eAAe,GAAE,QAA6B,2BAgB/C;AAMD,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAmB9C,CAAC"}
@@ -53,8 +53,10 @@ primaryKeyCurve = base_1.KeyCurve.Secp256k1) {
53
53
  }));
54
54
  }
55
55
  const LNBTC_FEATURES = [...LightningCoin.DEFAULT_FEATURES];
56
+ // TODO(BTC-2821): Add staking feature to lnbtc after testing
57
+ const TLNBTC_FEATURES = [...LNBTC_FEATURES, base_1.CoinFeature.STAKING];
56
58
  exports.lightningCoins = [
57
59
  lightning('051aab40-efbc-4f58-9506-14cc95369e0a', 'lnbtc', 'Lightning Bitcoin', networks_1.Networks.main.lnbtc, base_1.UnderlyingAsset.LNBTC, base_1.BaseUnit.LNBTC, LNBTC_FEATURES),
58
- lightning('3cbabaa7-a063-4db3-b3a8-ea8cc38033e5', 'tlnbtc', 'Testnet Lightning Bitcoin', networks_1.Networks.test.lnbtc, base_1.UnderlyingAsset.LNBTC, base_1.BaseUnit.LNBTC, LNBTC_FEATURES),
60
+ lightning('3cbabaa7-a063-4db3-b3a8-ea8cc38033e5', 'tlnbtc', 'Testnet Lightning Bitcoin', networks_1.Networks.test.lnbtc, base_1.UnderlyingAsset.LNBTC, base_1.BaseUnit.LNBTC, TLNBTC_FEATURES),
59
61
  ];
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpZ2h0bmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF5REEsOEJBMkJDO0FBcEZELGlDQUE4RjtBQUM5Rix5Q0FBd0Q7QUFleEQsTUFBYSxhQUFjLFNBQVEsZUFBUTtJQVF6QyxZQUFZLE9BQW9DO1FBQzlDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxlQUFRLENBQUMsTUFBTTtZQUNyQixPQUFPLEVBQUUsS0FBSztZQUNkLGFBQWEsRUFBRSxFQUFFO1NBQ2xCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUNqQyxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLE9BQU8sSUFBSSxHQUFHLENBQUMsQ0FBQyxrQkFBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVTLGdCQUFnQjtRQUN4QixPQUFPLElBQUksR0FBRyxDQUFDLENBQUMsa0JBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7O0FBekJILHNDQTBCQztBQXpCd0IsOEJBQWdCLEdBQUcsQ0FBQyxrQkFBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBMkIxRTs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxTQUFnQixTQUFTLENBQ3ZCLEVBQVUsRUFDVixJQUFZLEVBQ1osUUFBZ0IsRUFDaEIsT0FBeUIsRUFDekIsS0FBc0IsRUFDdEIsUUFBa0IsRUFDbEIsV0FBMEIsYUFBYSxDQUFDLGdCQUFnQixFQUN4RCxNQUFNLEdBQUcsRUFBRSxFQUNYLFNBQWlCLElBQUksQ0FBQyxXQUFXLEVBQUU7QUFDbkMsbURBQW1EO0FBQ25ELGtCQUE0QixlQUFRLENBQUMsU0FBUztJQUU5QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLElBQUksYUFBYSxDQUFDO1FBQ2hCLEVBQUU7UUFDRixJQUFJO1FBQ0osUUFBUTtRQUNSLE9BQU87UUFDUCxNQUFNO1FBQ04sTUFBTTtRQUNOLFFBQVE7UUFDUixLQUFLO1FBQ0wsZUFBZTtRQUNmLFFBQVE7S0FDVCxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLGNBQWMsR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFFOUMsUUFBQSxjQUFjLEdBQXlCO0lBQ2xELFNBQVMsQ0FDUCxzQ0FBc0MsRUFDdEMsT0FBTyxFQUNQLG1CQUFtQixFQUNuQixtQkFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQ25CLHNCQUFlLENBQUMsS0FBSyxFQUNyQixlQUFRLENBQUMsS0FBSyxFQUNkLGNBQWMsQ0FDZjtJQUNELFNBQVMsQ0FDUCxzQ0FBc0MsRUFDdEMsUUFBUSxFQUNSLDJCQUEyQixFQUMzQixtQkFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQ25CLHNCQUFlLENBQUMsS0FBSyxFQUNyQixlQUFRLENBQUMsS0FBSyxFQUNkLGNBQWMsQ0FDZjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiwgQmFzZVVuaXQsIENvaW5GZWF0dXJlLCBDb2luS2luZCwgS2V5Q3VydmUsIFVuZGVybHlpbmdBc3NldCB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyBMaWdodG5pbmdOZXR3b3JrLCBOZXR3b3JrcyB9IGZyb20gJy4vbmV0d29ya3MnO1xuXG5pbnRlcmZhY2UgTGlnaHRuaW5nQ29uc3RydWN0b3JPcHRpb25zIHtcbiAgaWQ6IHN0cmluZztcbiAgZnVsbE5hbWU6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBuZXR3b3JrOiBMaWdodG5pbmdOZXR3b3JrO1xuICBmZWF0dXJlczogQ29pbkZlYXR1cmVbXTtcbiAgYXNzZXQ6IFVuZGVybHlpbmdBc3NldDtcbiAgYmFzZVVuaXQ6IEJhc2VVbml0O1xuICBwcmVmaXg/OiBzdHJpbmc7XG4gIHN1ZmZpeD86IHN0cmluZztcbiAgcHJpbWFyeUtleUN1cnZlOiBLZXlDdXJ2ZTtcbn1cblxuZXhwb3J0IGNsYXNzIExpZ2h0bmluZ0NvaW4gZXh0ZW5kcyBCYXNlQ29pbiB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9GRUFUVVJFUyA9IFtDb2luRmVhdHVyZS5MSUdIVE5JTkdfTU9ERUxdO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGZpZWxkcyBmb3IgbGlnaHRuaW5nIGNvaW5zXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmV0d29yazogTGlnaHRuaW5nTmV0d29yaztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBMaWdodG5pbmdDb25zdHJ1Y3Rvck9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAga2luZDogQ29pbktpbmQuQ1JZUFRPLFxuICAgICAgaXNUb2tlbjogZmFsc2UsXG4gICAgICBkZWNpbWFsUGxhY2VzOiAxMSxcbiAgICB9KTtcblxuICAgIHRoaXMubmV0d29yayA9IG9wdGlvbnMubmV0d29yaztcbiAgfVxuXG4gIHByb3RlY3RlZCBkaXNhbGxvd2VkRmVhdHVyZXMoKTogU2V0PENvaW5GZWF0dXJlPiB7XG4gICAgcmV0dXJuIG5ldyBTZXQoW0NvaW5GZWF0dXJlLkFDQ09VTlRfTU9ERUxdKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZXF1aXJlZEZlYXR1cmVzKCk6IFNldDxDb2luRmVhdHVyZT4ge1xuICAgIHJldHVybiBuZXcgU2V0KFtDb2luRmVhdHVyZS5MSUdIVE5JTkdfTU9ERUxdKTtcbiAgfVxufVxuXG4vKipcbiAqIEZhY3RvcnkgZnVuY3Rpb24gZm9yIGxpZ2h0bmluZyBjb2luIGluc3RhbmNlcy5cbiAqXG4gKiBAcGFyYW0gaWQgdXVpZCB2NCBvZiB0aGUgY29pblxuICogQHBhcmFtIG5hbWUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGNvaW5cbiAqIEBwYXJhbSBmdWxsTmFtZSBDb21wbGV0ZSBodW1hbi1yZWFkYWJsZSBuYW1lIG9mIHRoZSBjb2luXG4gKiBAcGFyYW0gbmV0d29yayBOZXR3b3JrIG9iamVjdCBmb3IgdGhpcyBjb2luXG4gKiBAcGFyYW0gYXNzZXQgQXNzZXQgd2hpY2ggdGhpcyBjb2luIHJlcHJlc2VudHMuIFRoaXMgaXMgdGhlIHNhbWUgZm9yIGJvdGggbWFpbm5ldCBhbmQgdGVzdG5ldCB2YXJpYW50cyBvZiBhIGNvaW4uXG4gKiBAcGFyYW0gZmVhdHVyZXM/IEZlYXR1cmVzIG9mIHRoaXMgY29pbi4gRGVmYXVsdHMgdG8gdGhlIERFRkFVTFRfRkVBVFVSRVMgZGVmaW5lZCBpbiBgTGlnaHRuaW5nQ29pbmBcbiAqIEBwYXJhbSBwcmVmaXg/IE9wdGlvbmFsIGNvaW4gcHJlZml4LiBEZWZhdWx0cyB0byBlbXB0eSBzdHJpbmdcbiAqIEBwYXJhbSBzdWZmaXg/IE9wdGlvbmFsIGNvaW4gc3VmZml4LiBEZWZhdWx0cyB0byBjb2luIG5hbWUuXG4gKiBAcGFyYW0gcHJpbWFyeUtleUN1cnZlIFRoZSBlbGxpcHRpYyBjdXJ2ZSBmb3IgdGhpcyBjaGFpbi90b2tlblxuICovXG5leHBvcnQgZnVuY3Rpb24gbGlnaHRuaW5nKFxuICBpZDogc3RyaW5nLFxuICBuYW1lOiBzdHJpbmcsXG4gIGZ1bGxOYW1lOiBzdHJpbmcsXG4gIG5ldHdvcms6IExpZ2h0bmluZ05ldHdvcmssXG4gIGFzc2V0OiBVbmRlcmx5aW5nQXNzZXQsXG4gIGJhc2VVbml0OiBCYXNlVW5pdCxcbiAgZmVhdHVyZXM6IENvaW5GZWF0dXJlW10gPSBMaWdodG5pbmdDb2luLkRFRkFVTFRfRkVBVFVSRVMsXG4gIHByZWZpeCA9ICcnLFxuICBzdWZmaXg6IHN0cmluZyA9IG5hbWUudG9VcHBlckNhc2UoKSxcbiAgLyoqIEFsbCBMaWdodG5pbmdzIEJpdEdvIHN1cHBvcnRzIGFyZSBTRUNQMjU2SzEgKiovXG4gIHByaW1hcnlLZXlDdXJ2ZTogS2V5Q3VydmUgPSBLZXlDdXJ2ZS5TZWNwMjU2azFcbikge1xuICByZXR1cm4gT2JqZWN0LmZyZWV6ZShcbiAgICBuZXcgTGlnaHRuaW5nQ29pbih7XG4gICAgICBpZCxcbiAgICAgIG5hbWUsXG4gICAgICBmdWxsTmFtZSxcbiAgICAgIG5ldHdvcmssXG4gICAgICBwcmVmaXgsXG4gICAgICBzdWZmaXgsXG4gICAgICBmZWF0dXJlcyxcbiAgICAgIGFzc2V0LFxuICAgICAgcHJpbWFyeUtleUN1cnZlLFxuICAgICAgYmFzZVVuaXQsXG4gICAgfSlcbiAgKTtcbn1cblxuY29uc3QgTE5CVENfRkVBVFVSRVMgPSBbLi4uTGlnaHRuaW5nQ29pbi5ERUZBVUxUX0ZFQVRVUkVTXTtcblxuZXhwb3J0IGNvbnN0IGxpZ2h0bmluZ0NvaW5zOiBSZWFkb25seTxCYXNlQ29pbj5bXSA9IFtcbiAgbGlnaHRuaW5nKFxuICAgICcwNTFhYWI0MC1lZmJjLTRmNTgtOTUwNi0xNGNjOTUzNjllMGEnLFxuICAgICdsbmJ0YycsXG4gICAgJ0xpZ2h0bmluZyBCaXRjb2luJyxcbiAgICBOZXR3b3Jrcy5tYWluLmxuYnRjLFxuICAgIFVuZGVybHlpbmdBc3NldC5MTkJUQyxcbiAgICBCYXNlVW5pdC5MTkJUQyxcbiAgICBMTkJUQ19GRUFUVVJFU1xuICApLFxuICBsaWdodG5pbmcoXG4gICAgJzNjYmFiYWE3LWEwNjMtNGRiMy1iM2E4LWVhOGNjMzgwMzNlNScsXG4gICAgJ3RsbmJ0YycsXG4gICAgJ1Rlc3RuZXQgTGlnaHRuaW5nIEJpdGNvaW4nLFxuICAgIE5ldHdvcmtzLnRlc3QubG5idGMsXG4gICAgVW5kZXJseWluZ0Fzc2V0LkxOQlRDLFxuICAgIEJhc2VVbml0LkxOQlRDLFxuICAgIExOQlRDX0ZFQVRVUkVTXG4gICksXG5dO1xuIl19
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpZ2h0bmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF5REEsOEJBMkJDO0FBcEZELGlDQUE4RjtBQUM5Rix5Q0FBd0Q7QUFleEQsTUFBYSxhQUFjLFNBQVEsZUFBUTtJQVF6QyxZQUFZLE9BQW9DO1FBQzlDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxlQUFRLENBQUMsTUFBTTtZQUNyQixPQUFPLEVBQUUsS0FBSztZQUNkLGFBQWEsRUFBRSxFQUFFO1NBQ2xCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUNqQyxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLE9BQU8sSUFBSSxHQUFHLENBQUMsQ0FBQyxrQkFBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVTLGdCQUFnQjtRQUN4QixPQUFPLElBQUksR0FBRyxDQUFDLENBQUMsa0JBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7O0FBekJILHNDQTBCQztBQXpCd0IsOEJBQWdCLEdBQUcsQ0FBQyxrQkFBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBMkIxRTs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxTQUFnQixTQUFTLENBQ3ZCLEVBQVUsRUFDVixJQUFZLEVBQ1osUUFBZ0IsRUFDaEIsT0FBeUIsRUFDekIsS0FBc0IsRUFDdEIsUUFBa0IsRUFDbEIsV0FBMEIsYUFBYSxDQUFDLGdCQUFnQixFQUN4RCxNQUFNLEdBQUcsRUFBRSxFQUNYLFNBQWlCLElBQUksQ0FBQyxXQUFXLEVBQUU7QUFDbkMsbURBQW1EO0FBQ25ELGtCQUE0QixlQUFRLENBQUMsU0FBUztJQUU5QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLElBQUksYUFBYSxDQUFDO1FBQ2hCLEVBQUU7UUFDRixJQUFJO1FBQ0osUUFBUTtRQUNSLE9BQU87UUFDUCxNQUFNO1FBQ04sTUFBTTtRQUNOLFFBQVE7UUFDUixLQUFLO1FBQ0wsZUFBZTtRQUNmLFFBQVE7S0FDVCxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLGNBQWMsR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDM0QsNkRBQTZEO0FBQzdELE1BQU0sZUFBZSxHQUFHLENBQUMsR0FBRyxjQUFjLEVBQUUsa0JBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUVwRCxRQUFBLGNBQWMsR0FBeUI7SUFDbEQsU0FBUyxDQUNQLHNDQUFzQyxFQUN0QyxPQUFPLEVBQ1AsbUJBQW1CLEVBQ25CLG1CQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssRUFDbkIsc0JBQWUsQ0FBQyxLQUFLLEVBQ3JCLGVBQVEsQ0FBQyxLQUFLLEVBQ2QsY0FBYyxDQUNmO0lBQ0QsU0FBUyxDQUNQLHNDQUFzQyxFQUN0QyxRQUFRLEVBQ1IsMkJBQTJCLEVBQzNCLG1CQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssRUFDbkIsc0JBQWUsQ0FBQyxLQUFLLEVBQ3JCLGVBQVEsQ0FBQyxLQUFLLEVBQ2QsZUFBZSxDQUNoQjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiwgQmFzZVVuaXQsIENvaW5GZWF0dXJlLCBDb2luS2luZCwgS2V5Q3VydmUsIFVuZGVybHlpbmdBc3NldCB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyBMaWdodG5pbmdOZXR3b3JrLCBOZXR3b3JrcyB9IGZyb20gJy4vbmV0d29ya3MnO1xuXG5pbnRlcmZhY2UgTGlnaHRuaW5nQ29uc3RydWN0b3JPcHRpb25zIHtcbiAgaWQ6IHN0cmluZztcbiAgZnVsbE5hbWU6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBuZXR3b3JrOiBMaWdodG5pbmdOZXR3b3JrO1xuICBmZWF0dXJlczogQ29pbkZlYXR1cmVbXTtcbiAgYXNzZXQ6IFVuZGVybHlpbmdBc3NldDtcbiAgYmFzZVVuaXQ6IEJhc2VVbml0O1xuICBwcmVmaXg/OiBzdHJpbmc7XG4gIHN1ZmZpeD86IHN0cmluZztcbiAgcHJpbWFyeUtleUN1cnZlOiBLZXlDdXJ2ZTtcbn1cblxuZXhwb3J0IGNsYXNzIExpZ2h0bmluZ0NvaW4gZXh0ZW5kcyBCYXNlQ29pbiB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9GRUFUVVJFUyA9IFtDb2luRmVhdHVyZS5MSUdIVE5JTkdfTU9ERUxdO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGZpZWxkcyBmb3IgbGlnaHRuaW5nIGNvaW5zXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmV0d29yazogTGlnaHRuaW5nTmV0d29yaztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBMaWdodG5pbmdDb25zdHJ1Y3Rvck9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAga2luZDogQ29pbktpbmQuQ1JZUFRPLFxuICAgICAgaXNUb2tlbjogZmFsc2UsXG4gICAgICBkZWNpbWFsUGxhY2VzOiAxMSxcbiAgICB9KTtcblxuICAgIHRoaXMubmV0d29yayA9IG9wdGlvbnMubmV0d29yaztcbiAgfVxuXG4gIHByb3RlY3RlZCBkaXNhbGxvd2VkRmVhdHVyZXMoKTogU2V0PENvaW5GZWF0dXJlPiB7XG4gICAgcmV0dXJuIG5ldyBTZXQoW0NvaW5GZWF0dXJlLkFDQ09VTlRfTU9ERUxdKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZXF1aXJlZEZlYXR1cmVzKCk6IFNldDxDb2luRmVhdHVyZT4ge1xuICAgIHJldHVybiBuZXcgU2V0KFtDb2luRmVhdHVyZS5MSUdIVE5JTkdfTU9ERUxdKTtcbiAgfVxufVxuXG4vKipcbiAqIEZhY3RvcnkgZnVuY3Rpb24gZm9yIGxpZ2h0bmluZyBjb2luIGluc3RhbmNlcy5cbiAqXG4gKiBAcGFyYW0gaWQgdXVpZCB2NCBvZiB0aGUgY29pblxuICogQHBhcmFtIG5hbWUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGNvaW5cbiAqIEBwYXJhbSBmdWxsTmFtZSBDb21wbGV0ZSBodW1hbi1yZWFkYWJsZSBuYW1lIG9mIHRoZSBjb2luXG4gKiBAcGFyYW0gbmV0d29yayBOZXR3b3JrIG9iamVjdCBmb3IgdGhpcyBjb2luXG4gKiBAcGFyYW0gYXNzZXQgQXNzZXQgd2hpY2ggdGhpcyBjb2luIHJlcHJlc2VudHMuIFRoaXMgaXMgdGhlIHNhbWUgZm9yIGJvdGggbWFpbm5ldCBhbmQgdGVzdG5ldCB2YXJpYW50cyBvZiBhIGNvaW4uXG4gKiBAcGFyYW0gZmVhdHVyZXM/IEZlYXR1cmVzIG9mIHRoaXMgY29pbi4gRGVmYXVsdHMgdG8gdGhlIERFRkFVTFRfRkVBVFVSRVMgZGVmaW5lZCBpbiBgTGlnaHRuaW5nQ29pbmBcbiAqIEBwYXJhbSBwcmVmaXg/IE9wdGlvbmFsIGNvaW4gcHJlZml4LiBEZWZhdWx0cyB0byBlbXB0eSBzdHJpbmdcbiAqIEBwYXJhbSBzdWZmaXg/IE9wdGlvbmFsIGNvaW4gc3VmZml4LiBEZWZhdWx0cyB0byBjb2luIG5hbWUuXG4gKiBAcGFyYW0gcHJpbWFyeUtleUN1cnZlIFRoZSBlbGxpcHRpYyBjdXJ2ZSBmb3IgdGhpcyBjaGFpbi90b2tlblxuICovXG5leHBvcnQgZnVuY3Rpb24gbGlnaHRuaW5nKFxuICBpZDogc3RyaW5nLFxuICBuYW1lOiBzdHJpbmcsXG4gIGZ1bGxOYW1lOiBzdHJpbmcsXG4gIG5ldHdvcms6IExpZ2h0bmluZ05ldHdvcmssXG4gIGFzc2V0OiBVbmRlcmx5aW5nQXNzZXQsXG4gIGJhc2VVbml0OiBCYXNlVW5pdCxcbiAgZmVhdHVyZXM6IENvaW5GZWF0dXJlW10gPSBMaWdodG5pbmdDb2luLkRFRkFVTFRfRkVBVFVSRVMsXG4gIHByZWZpeCA9ICcnLFxuICBzdWZmaXg6IHN0cmluZyA9IG5hbWUudG9VcHBlckNhc2UoKSxcbiAgLyoqIEFsbCBMaWdodG5pbmdzIEJpdEdvIHN1cHBvcnRzIGFyZSBTRUNQMjU2SzEgKiovXG4gIHByaW1hcnlLZXlDdXJ2ZTogS2V5Q3VydmUgPSBLZXlDdXJ2ZS5TZWNwMjU2azFcbikge1xuICByZXR1cm4gT2JqZWN0LmZyZWV6ZShcbiAgICBuZXcgTGlnaHRuaW5nQ29pbih7XG4gICAgICBpZCxcbiAgICAgIG5hbWUsXG4gICAgICBmdWxsTmFtZSxcbiAgICAgIG5ldHdvcmssXG4gICAgICBwcmVmaXgsXG4gICAgICBzdWZmaXgsXG4gICAgICBmZWF0dXJlcyxcbiAgICAgIGFzc2V0LFxuICAgICAgcHJpbWFyeUtleUN1cnZlLFxuICAgICAgYmFzZVVuaXQsXG4gICAgfSlcbiAgKTtcbn1cblxuY29uc3QgTE5CVENfRkVBVFVSRVMgPSBbLi4uTGlnaHRuaW5nQ29pbi5ERUZBVUxUX0ZFQVRVUkVTXTtcbi8vIFRPRE8oQlRDLTI4MjEpOiBBZGQgc3Rha2luZyBmZWF0dXJlIHRvIGxuYnRjIGFmdGVyIHRlc3RpbmdcbmNvbnN0IFRMTkJUQ19GRUFUVVJFUyA9IFsuLi5MTkJUQ19GRUFUVVJFUywgQ29pbkZlYXR1cmUuU1RBS0lOR107XG5cbmV4cG9ydCBjb25zdCBsaWdodG5pbmdDb2luczogUmVhZG9ubHk8QmFzZUNvaW4+W10gPSBbXG4gIGxpZ2h0bmluZyhcbiAgICAnMDUxYWFiNDAtZWZiYy00ZjU4LTk1MDYtMTRjYzk1MzY5ZTBhJyxcbiAgICAnbG5idGMnLFxuICAgICdMaWdodG5pbmcgQml0Y29pbicsXG4gICAgTmV0d29ya3MubWFpbi5sbmJ0YyxcbiAgICBVbmRlcmx5aW5nQXNzZXQuTE5CVEMsXG4gICAgQmFzZVVuaXQuTE5CVEMsXG4gICAgTE5CVENfRkVBVFVSRVNcbiAgKSxcbiAgbGlnaHRuaW5nKFxuICAgICczY2JhYmFhNy1hMDYzLTRkYjMtYjNhOC1lYThjYzM4MDMzZTUnLFxuICAgICd0bG5idGMnLFxuICAgICdUZXN0bmV0IExpZ2h0bmluZyBCaXRjb2luJyxcbiAgICBOZXR3b3Jrcy50ZXN0LmxuYnRjLFxuICAgIFVuZGVybHlpbmdBc3NldC5MTkJUQyxcbiAgICBCYXNlVW5pdC5MTkJUQyxcbiAgICBUTE5CVENfRkVBVFVSRVNcbiAgKSxcbl07XG4iXX0=
@@ -120,10 +120,18 @@ export interface EthereumNetwork extends AccountNetwork {
120
120
  readonly batcherContractAddress?: string;
121
121
  readonly forwarderFactoryAddress?: string;
122
122
  readonly forwarderImplementationAddress?: string;
123
- readonly nativeCoinOperationHashPrefix?: string;
124
- readonly tokenOperationHashPrefix?: string;
123
+ readonly walletV2ForwarderFactoryAddress?: string;
124
+ readonly walletV2ForwarderImplementationAddress?: string;
125
125
  readonly walletV4ForwarderFactoryAddress?: string;
126
126
  readonly walletV4ForwarderImplementationAddress?: string;
127
+ readonly walletFactoryAddress?: string;
128
+ readonly walletImplementationAddress?: string;
129
+ readonly walletV2FactoryAddress?: string;
130
+ readonly walletV2ImplementationAddress?: string;
131
+ readonly walletV4FactoryAddress?: string;
132
+ readonly walletV4ImplementationAddress?: string;
133
+ readonly nativeCoinOperationHashPrefix?: string;
134
+ readonly tokenOperationHashPrefix?: string;
127
135
  }
128
136
  export interface TronNetwork extends AccountNetwork {
129
137
  maxFeeLimit: string;
@@ -494,10 +502,18 @@ declare class Ethereum extends Mainnet implements EthereumNetwork {
494
502
  batcherContractAddress: string;
495
503
  forwarderFactoryAddress: string;
496
504
  forwarderImplementationAddress: string;
497
- nativeCoinOperationHashPrefix: string;
498
- tokenOperationHashPrefix: string;
505
+ walletV2ForwarderFactoryAddress: string;
506
+ walletV2ForwarderImplementationAddress: string;
499
507
  walletV4ForwarderFactoryAddress: string;
500
508
  walletV4ForwarderImplementationAddress: string;
509
+ nativeCoinOperationHashPrefix: string;
510
+ tokenOperationHashPrefix: string;
511
+ walletFactoryAddress: string;
512
+ walletImplementationAddress: string;
513
+ walletV2FactoryAddress: string;
514
+ walletV2ImplementationAddress: string;
515
+ walletV4FactoryAddress: string;
516
+ walletV4ImplementationAddress: string;
501
517
  }
502
518
  declare class Ethereum2 extends Mainnet implements AccountNetwork {
503
519
  name: string;
@@ -573,10 +589,18 @@ declare class Hoodi extends Testnet implements EthereumNetwork {
573
589
  batcherContractAddress: string;
574
590
  forwarderFactoryAddress: string;
575
591
  forwarderImplementationAddress: string;
576
- nativeCoinOperationHashPrefix: string;
577
- tokenOperationHashPrefix: string;
592
+ walletV2ForwarderFactoryAddress: string;
593
+ walletV2ForwarderImplementationAddress: string;
578
594
  walletV4ForwarderFactoryAddress: string;
579
595
  walletV4ForwarderImplementationAddress: string;
596
+ walletFactoryAddress: string;
597
+ walletImplementationAddress: string;
598
+ walletV2FactoryAddress: string;
599
+ walletV2ImplementationAddress: string;
600
+ walletV4FactoryAddress: string;
601
+ walletV4ImplementationAddress: string;
602
+ nativeCoinOperationHashPrefix: string;
603
+ tokenOperationHashPrefix: string;
580
604
  }
581
605
  declare class EthereumClassic extends Mainnet implements EthereumNetwork {
582
606
  name: string;
@@ -1014,6 +1038,8 @@ declare class Polygon extends Mainnet implements EthereumNetwork {
1014
1038
  batcherContractAddress: string;
1015
1039
  nativeCoinOperationHashPrefix: string;
1016
1040
  tokenOperationHashPrefix: string;
1041
+ walletV4ForwarderFactoryAddress: string;
1042
+ walletV4ForwarderImplementationAddress: string;
1017
1043
  }
1018
1044
  declare class PolygonTestnet extends Testnet implements EthereumNetwork {
1019
1045
  name: string;
@@ -1028,6 +1054,8 @@ declare class PolygonTestnet extends Testnet implements EthereumNetwork {
1028
1054
  batcherContractAddress: string;
1029
1055
  nativeCoinOperationHashPrefix: string;
1030
1056
  tokenOperationHashPrefix: string;
1057
+ walletV4ForwarderFactoryAddress: string;
1058
+ walletV4ForwarderImplementationAddress: string;
1031
1059
  }
1032
1060
  declare class Optimism extends Mainnet implements EthereumNetwork {
1033
1061
  name: string;
@@ -1041,6 +1069,8 @@ declare class Optimism extends Mainnet implements EthereumNetwork {
1041
1069
  forwarderImplementationAddress: string;
1042
1070
  walletFactoryAddress: string;
1043
1071
  walletImplementationAddress: string;
1072
+ walletV4ForwarderFactoryAddress: string;
1073
+ walletV4ForwarderImplementationAddress: string;
1044
1074
  batcherContractAddress: string;
1045
1075
  }
1046
1076
  declare class OptimismTestnet extends Testnet implements EthereumNetwork {
@@ -1055,6 +1085,8 @@ declare class OptimismTestnet extends Testnet implements EthereumNetwork {
1055
1085
  forwarderImplementationAddress: string;
1056
1086
  walletFactoryAddress: string;
1057
1087
  walletImplementationAddress: string;
1088
+ walletV4ForwarderFactoryAddress: string;
1089
+ walletV4ForwarderImplementationAddress: string;
1058
1090
  batcherContractAddress: string;
1059
1091
  }
1060
1092
  declare class ZkSync extends Mainnet implements EthereumNetwork {
@@ -1076,6 +1108,8 @@ declare class ZkSyncTestnet extends Testnet implements EthereumNetwork {
1076
1108
  tokenOperationHashPrefix: string;
1077
1109
  forwarderFactoryAddress: string;
1078
1110
  forwarderImplementationAddress: string;
1111
+ walletV4ForwarderFactoryAddress: string;
1112
+ walletV4ForwarderImplementationAddress: string;
1079
1113
  walletFactoryAddress: string;
1080
1114
  walletImplementationAddress: string;
1081
1115
  }
@@ -1324,6 +1358,38 @@ declare class MantleTestnet extends Testnet implements EthereumNetwork {
1324
1358
  chainId: number;
1325
1359
  nativeCoinOperationHashPrefix: string;
1326
1360
  }
1361
+ declare class JovayETH extends Mainnet implements EthereumNetwork {
1362
+ name: string;
1363
+ family: CoinFamily;
1364
+ explorerUrl: string;
1365
+ accountExplorerUrl: string;
1366
+ chainId: number;
1367
+ nativeCoinOperationHashPrefix: string;
1368
+ }
1369
+ declare class JovayETHTestnet extends Testnet implements EthereumNetwork {
1370
+ name: string;
1371
+ family: CoinFamily;
1372
+ explorerUrl: string;
1373
+ accountExplorerUrl: string;
1374
+ chainId: number;
1375
+ nativeCoinOperationHashPrefix: string;
1376
+ }
1377
+ declare class Xlayer extends Mainnet implements EthereumNetwork {
1378
+ name: string;
1379
+ family: CoinFamily;
1380
+ explorerUrl: string;
1381
+ accountExplorerUrl: string;
1382
+ chainId: number;
1383
+ nativeCoinOperationHashPrefix: string;
1384
+ }
1385
+ declare class XlayerTestnet extends Testnet implements EthereumNetwork {
1386
+ name: string;
1387
+ family: CoinFamily;
1388
+ explorerUrl: string;
1389
+ accountExplorerUrl: string;
1390
+ chainId: number;
1391
+ nativeCoinOperationHashPrefix: string;
1392
+ }
1327
1393
  declare class CreditcoinTestnet extends Testnet implements EthereumNetwork {
1328
1394
  name: string;
1329
1395
  family: CoinFamily;
@@ -1877,6 +1943,7 @@ export declare const Networks: {
1877
1943
  injective: Readonly<Injective>;
1878
1944
  irys: Readonly<Irys>;
1879
1945
  islm: Readonly<Islm>;
1946
+ jovayeth: Readonly<JovayETH>;
1880
1947
  kaia: Readonly<Kaia>;
1881
1948
  kava: Readonly<Kava>;
1882
1949
  kavaevm: Readonly<KavaEVM>;
@@ -1896,6 +1963,7 @@ export declare const Networks: {
1896
1963
  oas: Readonly<Oas>;
1897
1964
  og: Readonly<Og>;
1898
1965
  ofc: Readonly<Ofc>;
1966
+ okb: Readonly<Xlayer>;
1899
1967
  optimism: Readonly<Optimism>;
1900
1968
  osmo: Readonly<Osmo>;
1901
1969
  rbtc: Readonly<Rbtc>;
@@ -1980,6 +2048,7 @@ export declare const Networks: {
1980
2048
  iota: Readonly<IotaTestnet>;
1981
2049
  irys: Readonly<IrysTestnet>;
1982
2050
  islm: Readonly<IslmTestnet>;
2051
+ jovayeth: Readonly<JovayETHTestnet>;
1983
2052
  kava: Readonly<KavaTestnet>;
1984
2053
  kavaevm: Readonly<KavaEVMTestnet>;
1985
2054
  kovan: Readonly<Kovan>;
@@ -1999,6 +2068,7 @@ export declare const Networks: {
1999
2068
  oas: Readonly<OasTestnet>;
2000
2069
  og: Readonly<OgTestnet>;
2001
2070
  ofc: Readonly<OfcTestnet>;
2071
+ okb: Readonly<XlayerTestnet>;
2002
2072
  optimism: Readonly<OptimismTestnet>;
2003
2073
  osmo: Readonly<OsmoTestnet>;
2004
2074
  rbtc: Readonly<RbtcTestnet>;
@@ -1 +1 @@
1
- {"version":3,"file":"networks.d.ts","sourceRoot":"","sources":["../../src/networks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"networks.d.ts","sourceRoot":"","sources":["../../src/networks.ts"],"names":[],"mappings":"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"}