bitgo 53.1.0 → 53.3.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.
- package/dist/browser/{01f1c955319505c519b0.wasm → 80fd712119c1b74b8f0c.module.wasm} +0 -0
- package/dist/browser/BitGoJS.min.js +2 -2
- package/dist/browser/{1c33a451bc41d0785dbe.module.wasm → a02589640e9e719bb4ff.module.wasm} +0 -0
- package/dist/browser/{4e894cafebea39bf4953.module.wasm → e5b1c69a8f9da4af4e3b.wasm} +0 -0
- package/dist/package.json +90 -90
- package/dist/src/bitgo.js +2 -2
- package/dist/src/v2/coinFactory.js +73 -18
- package/dist/src/v2/coins/index.js +6 -5
- package/dist/test/v2/resources/amsTokenConfig.js +25 -3
- package/dist/test/v2/unit/ams/ams.js +62 -1
- package/dist/test/v2/unit/wallet.js +204 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/src/v2/coinFactory.d.ts +2 -2
- package/dist/types/src/v2/coinFactory.d.ts.map +1 -1
- package/dist/types/src/v2/coins/index.d.ts +2 -2
- package/dist/types/src/v2/coins/index.d.ts.map +1 -1
- package/dist/types/test/v2/resources/amsTokenConfig.d.ts +20 -0
- package/dist/types/test/v2/resources/amsTokenConfig.d.ts.map +1 -1
- package/npm-shrinkwrap.json +794 -791
- package/package.json +90 -90
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.
|
|
5
|
-
exports.
|
|
6
|
-
exports.Tsusd = exports.Susd = exports.OfcToken = exports.Ofc = exports.testnetFiatCoins = exports.fiatCoins = exports.allFiatCoins = exports.Fiat = exports.ZkethToken = exports.Tzketh = exports.Zketh = exports.WorldToken = exports.Tworld = exports.World = exports.Twemix = exports.Wemix = exports.Zeta = exports.Tzeta = exports.Zec = exports.Tzec = exports.Xtz = exports.Txtz = exports.XrpToken = exports.XrpMptToken = exports.Xrp = exports.Txrp = exports.Xlm = exports.Txlm = exports.StellarToken = exports.XdcToken = exports.Txdc = exports.Xdc = exports.VetToken = exports.Tvet = exports.Vet = exports.Ttrx = exports.Trx = exports.Tislm = exports.Islm = exports.Tinjective = exports.Injective = exports.Tsei = exports.Sei = exports.Tbld = exports.Bld = exports.JettonToken = exports.Tton = exports.Ton = void 0;
|
|
3
|
+
exports.Tcelo = exports.CeloToken = exports.Celo = exports.Tcanton = exports.Canton = exports.Btg = exports.Tbtcstxsignet = exports.Tbtcstxprivate1 = exports.Tbtcstx = exports.Tbtcbgsig = exports.Tbtc4 = exports.Tbtcsig = exports.Tbtc = exports.Btc = exports.Tbsv = exports.Bsv = exports.Tbsc = exports.BscToken = exports.Bsc = exports.BeraToken = exports.Tbera = exports.Bera = exports.Tbch = exports.Bch = exports.Tbaby = exports.Baby = exports.TavaxP = exports.AvaxP = exports.TavaxC = exports.AvaxCToken = exports.AvaxC = exports.Tatom = exports.Atom = exports.Tasi = exports.Asi = exports.Tada = exports.Ada = exports.ArbethToken = exports.Tarbeth = exports.Arbeth = exports.AptToken = exports.Tapt = exports.Apt = exports.Tapechain = exports.Apechain = exports.Talgo = exports.AlgoToken = exports.Algo = exports.AbstractLightningCoin = exports.AbstractUtxoCoin = void 0;
|
|
4
|
+
exports.Tinitia = exports.Initia = exports.Ticp = exports.Icp = exports.Thbar = exports.Hbar = exports.HashToken = exports.Thash = exports.Hash = exports.Flrp = exports.FlrToken = exports.Tflr = exports.Flr = exports.EthLikeErc721Token = exports.EthLikeErc20Token = exports.EvmCoin = exports.Tetc = exports.Etc = exports.TethLikeCoin = exports.EthLikeCoin = exports.Ethw = exports.Teth = exports.Sepeth = exports.Hteth = exports.Gteth = exports.Eth = exports.Erc7984Token = exports.Erc721Token = exports.Erc20Token = exports.Teos = exports.EosToken = exports.Eos = exports.Tbcha = exports.Bcha = exports.Tdot = exports.Dot = exports.Tdoge = exports.Doge = exports.Tdash = exports.Dash = exports.Tcspr = exports.Cspr = exports.Tcronos = exports.Cronos = exports.CosmosSharedCoin = exports.Tcoreum = exports.Coreum = exports.CoredaoToken = exports.Tcoredao = exports.Coredao = void 0;
|
|
5
|
+
exports.Tia = exports.Tip20Token = exports.Ttempo = exports.Tempo = exports.TaoToken = exports.Ttao = exports.Tao = exports.SuiToken = exports.Tsui = exports.Sui = exports.Sip10Token = exports.Tstx = exports.Stx = exports.Tstt = exports.Starknet = exports.SoneiumToken = exports.Tsoneium = exports.Soneium = exports.Tsol = exports.Sol = exports.Tsgb = exports.Sgb = exports.Trune = exports.Rune = exports.Trbtc = exports.Rbtc = exports.PolyxToken = exports.Tpolyx = exports.Polyx = exports.Tpolygon = exports.PolygonToken = exports.Polygon = exports.Tpearl = exports.Pearl = exports.Tosmo = exports.Osmo = exports.OpethToken = exports.Topeth = exports.Opeth = exports.Toas = exports.Oas = exports.MonToken = exports.Tmon = exports.Mon = exports.Tltc = exports.Ltc = exports.Tlnbtc = exports.Lnbtc = exports.Kaspa = exports.Iota = void 0;
|
|
6
|
+
exports.Tsusd = exports.Susd = exports.OfcToken = exports.Ofc = exports.testnetFiatCoins = exports.fiatCoins = exports.allFiatCoins = exports.Fiat = exports.ZkethToken = exports.Tzketh = exports.Zketh = exports.WorldToken = exports.Tworld = exports.World = exports.Twemix = exports.Wemix = exports.Zeta = exports.Tzeta = exports.Zec = exports.Tzec = exports.Xtz = exports.Txtz = exports.XrpToken = exports.XrpMptToken = exports.Xrp = exports.Txrp = exports.Xlm = exports.Txlm = exports.StellarToken = exports.XdcToken = exports.Txdc = exports.Xdc = exports.VetToken = exports.Tvet = exports.Vet = exports.Ttrx = exports.Trx = exports.Tislm = exports.Islm = exports.Tinjective = exports.Injective = exports.Tsei = exports.Sei = exports.Tbld = exports.Bld = exports.JettonToken = exports.Tton = exports.Ton = exports.Ttia = void 0;
|
|
7
7
|
const abstract_utxo_1 = require("@bitgo/abstract-utxo");
|
|
8
8
|
Object.defineProperty(exports, "AbstractUtxoCoin", { enumerable: true, get: function () { return abstract_utxo_1.AbstractUtxoCoin; } });
|
|
9
9
|
const abstract_lightning_1 = require("@bitgo/abstract-lightning");
|
|
@@ -70,6 +70,7 @@ Object.defineProperty(exports, "Tbtc4", { enumerable: true, get: function () { r
|
|
|
70
70
|
Object.defineProperty(exports, "Tbtcbgsig", { enumerable: true, get: function () { return sdk_coin_btc_1.Tbtcbgsig; } });
|
|
71
71
|
Object.defineProperty(exports, "Tbtcstx", { enumerable: true, get: function () { return sdk_coin_btc_1.Tbtcstx; } });
|
|
72
72
|
Object.defineProperty(exports, "Tbtcstxprivate1", { enumerable: true, get: function () { return sdk_coin_btc_1.Tbtcstxprivate1; } });
|
|
73
|
+
Object.defineProperty(exports, "Tbtcstxsignet", { enumerable: true, get: function () { return sdk_coin_btc_1.Tbtcstxsignet; } });
|
|
73
74
|
const sdk_coin_btg_1 = require("@bitgo/sdk-coin-btg");
|
|
74
75
|
Object.defineProperty(exports, "Btg", { enumerable: true, get: function () { return sdk_coin_btg_1.Btg; } });
|
|
75
76
|
const sdk_coin_canton_1 = require("@bitgo/sdk-coin-canton");
|
|
@@ -284,4 +285,4 @@ exports.Fiat = Fiat;
|
|
|
284
285
|
exports.allFiatCoins = allFiatCoins;
|
|
285
286
|
exports.fiatCoins = fiatCoins;
|
|
286
287
|
exports.testnetFiatCoins = testnetFiatCoins;
|
|
287
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdjIvY29pbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsd0RBQXdEO0FBaUYvQyxpR0FqRkEsZ0NBQWdCLE9BaUZBO0FBaEZ6QixrRUFBa0U7QUFpRnpELHNHQWpGQSwwQ0FBcUIsT0FpRkE7QUFoRjlCLHNEQUFnRDtBQXFGdkMsb0ZBckZBLGtCQUFHLE9BcUZBO0FBQUUscUZBckZBLG1CQUFJLE9BcUZBO0FBcEZsQix3REFBOEQ7QUFnRnJELHFGQWhGQSxvQkFBSSxPQWdGQTtBQUFFLDBGQWhGQSx5QkFBUyxPQWdGQTtBQUFFLHNGQWhGQSxxQkFBSyxPQWdGQTtBQS9FL0IsZ0VBQStEO0FBZ0Z0RCx5RkFoRkEsNEJBQVEsT0FnRkE7QUFBRSwwRkFoRkEsNkJBQVMsT0FnRkE7QUEvRTVCLHNEQUEwRDtBQWdGakQsb0ZBaEZBLGtCQUFHLE9BZ0ZBO0FBQUUscUZBaEZBLG1CQUFJLE9BZ0ZBO0FBQUUseUZBaEZBLHVCQUFRLE9BZ0ZBO0FBL0U1Qiw0REFBc0U7QUFnRjdELHVGQWhGQSx3QkFBTSxPQWdGQTtBQUFFLHdGQWhGQSx5QkFBTyxPQWdGQTtBQUFFLDRGQWhGQSw2QkFBVyxPQWdGQTtBQS9FckMsc0RBQWdEO0FBaUZ2QyxvRkFqRkEsa0JBQUcsT0FpRkE7QUFBRSxxRkFqRkEsbUJBQUksT0FpRkE7QUFoRmxCLHdEQUFtRDtBQWlGMUMscUZBakZBLG9CQUFJLE9BaUZBO0FBQUUsc0ZBakZBLHFCQUFLLE9BaUZBO0FBaEZwQiwwREFBa0U7QUFpRnpELHNGQWpGQSxzQkFBSyxPQWlGQTtBQUFFLDJGQWpGQSwyQkFBVSxPQWlGQTtBQUFFLHVGQWpGQSx1QkFBTSxPQWlGQTtBQWhGbEMsMERBQXNEO0FBaUY3QyxzRkFqRkEsc0JBQUssT0FpRkE7QUFBRSx1RkFqRkEsdUJBQU0sT0FpRkE7QUFoRnRCLHdEQUFtRDtBQWlGMUMscUZB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MERBQWtFO0FBc0Z6RCxzRkF0RkEsc0JBQUssT0FzRkE7QUFBRSx1RkF0RkEsdUJBQU0sT0FzRkE7QUFBRSwyRkF0RkEsMkJBQVUsT0FzRkE7QUFyRmxDLHNEQUEwRDtBQThFakQsb0ZBOUVBLGtCQUFHLE9BOEVBO0FBQUUscUZBOUVBLG1CQUFJLE9BOEVBO0FBQUUseUZBOUVBLHVCQUFRLE9BOEVBO0FBN0U1QixzREFBdUU7QUErRTlELHFGQS9FQSxtQkFBSSxPQStFQTtBQUFFLG9GQS9FQSxrQkFBRyxPQStFQTtBQUFFLDRGQS9FQSwwQkFBVyxPQStFQTtBQUFFLHlGQS9FQSx1QkFBUSxPQStFQTtBQTlFekMsc0RBQWdEO0FBK0V2QyxxRkEvRUEsbUJBQUksT0ErRUE7QUFBRSxvRkEvRUEsa0JBQUcsT0ErRUE7QUE5RWxCLHNEQUFnRDtBQStFdkMscUZBL0VBLG1CQUFJLE9BK0VBO0FBQUUsb0ZBL0VBLGtCQUFHLE9BK0VBO0FBOUVsQix3REFBbUQ7QUErRTFDLHNGQS9FQSxxQkFBSyxPQStFQTtBQUFFLHFGQS9FQSxvQkFBSSxPQStFQTtBQTlFcEIsMERBQWtFO0FBaUZ6RCxzRkFqRkEsc0JBQUssT0FpRkE7QUFBRSx1RkFqRkEsdUJBQU0sT0FpRkE7QUFBRSwyRkFqRkEsMkJBQVUsT0FpRkE7QUFFbEMsOENBQXdDO0FBQ3hDLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxnQkFBSyxDQUFDO0FBQ3BDLGtCQUFHO0FBQUUsNEJBQVE7QUFBRSxvQkFBSTtBQUFFLHNCQUFLO0FBQTNFLG9CQUFJO0FBQUUsb0NBQVk7QUFBRSw4QkFBUztBQUFFLDRDQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0VXR4b0NvaW4gfSBmcm9tICdAYml0Z28vYWJzdHJhY3QtdXR4byc7XG5pbXBvcnQgeyBBYnN0cmFjdExpZ2h0bmluZ0NvaW4gfSBmcm9tICdAYml0Z28vYWJzdHJhY3QtbGlnaHRuaW5nJztcbmltcG9ydCB7IEFkYSwgVGFkYSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hZGEnO1xuaW1wb3J0IHsgQWxnbywgQWxnb1Rva2VuLCBUYWxnbyB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hbGdvJztcbmltcG9ydCB7IEFwZWNoYWluLCBUYXBlY2hhaW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYXBlY2hhaW4nO1xuaW1wb3J0IHsgQXB0LCBUYXB0LCBBcHRUb2tlbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hcHQnO1xuaW1wb3J0IHsgQXJiZXRoLCBUYXJiZXRoLCBBcmJldGhUb2tlbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hcmJldGgnO1xuaW1wb3J0IHsgQXNpLCBUYXNpIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWFzaSc7XG5pbXBvcnQgeyBBdG9tLCBUYXRvbSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hdG9tJztcbmltcG9ydCB7IEF2YXhDLCBBdmF4Q1Rva2VuLCBUYXZheEMgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYXZheGMnO1xuaW1wb3J0IHsgQXZheFAsIFRhdmF4UCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hdmF4cCc7XG5pbXBvcnQgeyBCYWJ5LCBUYmFieSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1iYWJ5JztcbmltcG9ydCB7IEJjaCwgVGJjaCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1iY2gnO1xuaW1wb3J0IHsgQmNoYSwgVGJjaGEgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYmNoYSc7XG5pbXBvcnQgeyBCZXJhLCBUYmVyYSwgQmVyYVRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWJlcmEnO1xuaW1wb3J0IHsgQmxkLCBUYmxkIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWJsZCc7XG5pbXBvcnQgeyBCc2MsIEJzY1Rva2VuLCBUYnNjIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWJzYyc7XG5pbXBvcnQgeyBCc3YsIFRic3YgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYnN2JztcbmltcG9ydCB7IEJ0YywgVGJ0YywgVGJ0Y3NpZywgVGJ0YzQsIFRidGNiZ3NpZywgVGJ0Y3N0eCwgVGJ0Y3N0eHByaXZhdGUxIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWJ0Yyc7XG5pbXBvcnQgeyBCdGcgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYnRnJztcbmltcG9ydCB7IENhbnRvbiwgVGNhbnRvbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1jYW50b24nO1xuaW1wb3J0IHsgQ2VsbywgQ2Vsb1Rva2VuLCBUY2VsbyB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1jZWxvJztcbmltcG9ydCB7IENvcmVkYW8sIFRjb3JlZGFvLCBDb3JlZGFvVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tY29yZWRhbyc7XG5pbXBvcnQgeyBDb3JldW0sIFRjb3JldW0gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tY29yZXVtJztcbmltcG9ydCB7IENvc21vc1NoYXJlZENvaW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tY29zbW9zJztcbmltcG9ydCB7IENyb25vcywgVGNyb25vcyB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1jcm9ub3MnO1xuaW1wb3J0IHsgQ3NwciwgVGNzcHIgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tY3Nwcic7XG5pbXBvcnQgeyBEYXNoLCBUZGFzaCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1kYXNoJztcbmltcG9ydCB7IERvZ2UsIFRkb2dlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWRvZ2UnO1xuaW1wb3J0IHsgRG90LCBUZG90IH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWRvdCc7XG5pbXBvcnQgeyBFb3MsIEVvc1Rva2VuLCBUZW9zIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWVvcyc7XG5pbXBvcnQgeyBFdGMsIFRldGMgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZXRjJztcbmltcG9ydCB7IEVyYzIwVG9rZW4sIEVyYzcyMVRva2VuLCBFcmM3OTg0VG9rZW4sIEV0aCwgR3RldGgsIEh0ZXRoLCBTZXBldGgsIFRldGggfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZXRoJztcbmltcG9ydCB7IEV2bUNvaW4sIEV0aExpa2VFcmMyMFRva2VuLCBFdGhMaWtlRXJjNzIxVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZXZtJztcbmltcG9ydCB7IEZsciwgVGZsciwgRmxyVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZmxyJztcbmltcG9ydCB7IEZscnAgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZmxycCc7XG5pbXBvcnQgeyBFdGh3IH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWV0aHcnO1xuaW1wb3J0IHsgRXRoTGlrZUNvaW4sIFRldGhMaWtlQ29pbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1ldGhsaWtlJztcbmltcG9ydCB7IEhhc2gsIFRoYXNoLCBIYXNoVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4taGFzaCc7XG5pbXBvcnQgeyBIYmFyLCBUaGJhciB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1oYmFyJztcbmltcG9ydCB7IEljcCwgVGljcCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1pY3AnO1xuaW1wb3J0IHsgSW5pdGlhLCBUaW5pdGlhIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWluaXRpYSc7XG5pbXBvcnQgeyBLYXNwYSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1rYXNwYSc7XG5pbXBvcnQgeyBJbmplY3RpdmUsIFRpbmplY3RpdmUgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4taW5qZWN0aXZlJztcbmltcG9ydCB7IElvdGEgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4taW90YSc7XG5pbXBvcnQgeyBJc2xtLCBUaXNsbSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1pc2xtJztcbmltcG9ydCB7IExuYnRjLCBUbG5idGMgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tbG5idGMnO1xuaW1wb3J0IHsgTHRjLCBUbHRjIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWx0Yyc7XG5pbXBvcnQgeyBNb24sIFRtb24sIE1vblRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLW1vbic7XG5pbXBvcnQgeyBPYXMsIFRvYXMgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tb2FzJztcbmltcG9ydCB7IE9wZXRoLCBUb3BldGgsIE9wZXRoVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tb3BldGgnO1xuaW1wb3J0IHsgT3NtbywgVG9zbW8gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tb3Ntbyc7XG5pbXBvcnQgeyBQZWFybCwgVHBlYXJsIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXBlYXJsJztcbmltcG9ydCB7IFBvbHlnb24sIFBvbHlnb25Ub2tlbiwgVHBvbHlnb24gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tcG9seWdvbic7XG5pbXBvcnQgeyBQb2x5eCwgVHBvbHl4LCBQb2x5eFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXBvbHl4JztcbmltcG9ydCB7IFJidGMsIFRyYnRjIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXJidGMnO1xuaW1wb3J0IHsgUnVuZSwgVHJ1bmUgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tcnVuZSc7XG5pbXBvcnQgeyBTZWksIFRzZWkgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tc2VpJztcbmltcG9ydCB7IFNvbmVpdW0sIFRzb25laXVtLCBTb25laXVtVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tc29uZWl1bSc7XG5pbXBvcnQgeyBUc3R0IH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXN0dCc7XG5pbXBvcnQgeyBTZ2IsIFRzZ2IgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tc2diJztcbmltcG9ydCB7IFNvbCwgVHNvbCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1zb2wnO1xuaW1wb3J0IHsgU3RhcmtuZXQgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tc3RhcmtuZXQnO1xuaW1wb3J0IHsgU3R4LCBUc3R4LCBTaXAxMFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXN0eCc7XG5pbXBvcnQgeyBTdWksIFRzdWksIFN1aVRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXN1aSc7XG5pbXBvcnQgeyBUYW8sIFR0YW8sIFRhb1Rva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXRhbyc7XG5pbXBvcnQgeyBUZW1wbywgVHRlbXBvLCBUaXAyMFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXRlbXBvJztcbmltcG9ydCB7IFRpYSwgVHRpYSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi10aWEnO1xuaW1wb3J0IHsgVG9uLCBUdG9uLCBKZXR0b25Ub2tlbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi10b24nO1xuaW1wb3J0IHsgVHJ4LCBUdHJ4IH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXRyeCc7XG5pbXBvcnQgeyBTdGVsbGFyVG9rZW4sIFR4bG0sIFhsbSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi14bG0nO1xuaW1wb3J0IHsgVmV0LCBUdmV0LCBWZXRUb2tlbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi12ZXQnO1xuaW1wb3J0IHsgV2VtaXgsIFR3ZW1peCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi13ZW1peCc7XG5pbXBvcnQgeyBXb3JsZCwgVHdvcmxkLCBXb3JsZFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXdvcmxkJztcbmltcG9ydCB7IFhkYywgVHhkYywgWGRjVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4teGRjJztcbmltcG9ydCB7IFR4cnAsIFhycCwgWHJwTXB0VG9rZW4sIFhycFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXhycCc7XG5pbXBvcnQgeyBUeHR6LCBYdHogfSBmcm9tICdAYml0Z28vc2RrLWNvaW4teHR6JztcbmltcG9ydCB7IFR6ZWMsIFplYyB9IGZyb20gJ0BiaXRnby9zZGstY29pbi16ZWMnO1xuaW1wb3J0IHsgVHpldGEsIFpldGEgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4temV0YSc7XG5pbXBvcnQgeyBaa2V0aCwgVHprZXRoLCBaa2V0aFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXprZXRoJztcblxuZXhwb3J0IHsgQWJzdHJhY3RVdHhvQ29pbiB9O1xuZXhwb3J0IHsgQWJzdHJhY3RMaWdodG5pbmdDb2luIH07XG5leHBvcnQgeyBBbGdvLCBBbGdvVG9rZW4sIFRhbGdvIH07XG5leHBvcnQgeyBBcGVjaGFpbiwgVGFwZWNoYWluIH07XG5leHBvcnQgeyBBcHQsIFRhcHQsIEFwdFRva2VuIH07XG5leHBvcnQgeyBBcmJldGgsIFRhcmJldGgsIEFyYmV0aFRva2VuIH07XG5leHBvcnQgeyBBZGEsIFRhZGEgfTtcbmV4cG9ydCB7IEFzaSwgVGFzaSB9O1xuZXhwb3J0IHsgQXRvbSwgVGF0b20gfTtcbmV4cG9ydCB7IEF2YXhDLCBBdmF4Q1Rva2VuLCBUYXZheEMgfTtcbmV4cG9ydCB7IEF2YXhQLCBUYXZheFAgfTtcbmV4cG9ydCB7IEJhYnksIFRiYWJ5IH07XG5leHBvcnQgeyBCY2gsIFRiY2ggfTtcbmV4cG9ydCB7IEJlcmEsIFRiZXJhLCBCZXJhVG9rZW4gfTtcbmV4cG9ydCB7IEJzYywgQnNjVG9rZW4sIFRic2MgfTtcbmV4cG9ydCB7IEJzdiwgVGJzdiB9O1xuZXhwb3J0IHsgQnRjLCBUYnRjLCBUYnRjc2lnLCBUYnRjNCwgVGJ0Y2Jnc2lnLCBUYnRjc3R4LCBUYnRjc3R4cHJpdmF0ZTEgfTtcbmV4cG9ydCB7IEJ0ZyB9O1xuZXhwb3J0IHsgQ2FudG9uLCBUY2FudG9uIH07XG5leHBvcnQgeyBDZWxvLCBDZWxvVG9rZW4sIFRjZWxvIH07XG5leHBvcnQgeyBDb3JlZGFvLCBUY29yZWRhbywgQ29yZWRhb1Rva2VuIH07XG5leHBvcnQgeyBDb3JldW0sIFRjb3JldW0gfTtcbmV4cG9ydCB7IENvc21vc1NoYXJlZENvaW4gfTtcbmV4cG9ydCB7IENyb25vcywgVGNyb25vcyB9O1xuZXhwb3J0IHsgQ3NwciwgVGNzcHIgfTtcbmV4cG9ydCB7IERhc2gsIFRkYXNoIH07XG5leHBvcnQgeyBEb2dlLCBUZG9nZSB9O1xuZXhwb3J0IHsgRG90LCBUZG90IH07XG5leHBvcnQgeyBCY2hhLCBUYmNoYSB9O1xuZXhwb3J0IHsgRW9zLCBFb3NUb2tlbiwgVGVvcyB9O1xuZXhwb3J0IHsgRXJjMjBUb2tlbiwgRXJjNzIxVG9rZW4sIEVyYzc5ODRUb2tlbiwgRXRoLCBHdGV0aCwgSHRldGgsIFNlcGV0aCwgVGV0aCB9O1xuZXhwb3J0IHsgRXRodyB9O1xuZXhwb3J0IHsgRXRoTGlrZUNvaW4sIFRldGhMaWtlQ29pbiB9O1xuZXhwb3J0IHsgRXRjLCBUZXRjIH07XG5leHBvcnQgeyBFdm1Db2luLCBFdGhMaWtlRXJjMjBUb2tlbiwgRXRoTGlrZUVyYzcyMVRva2VuIH07XG5leHBvcnQgeyBGbHIsIFRmbHIsIEZsclRva2VuIH07XG5leHBvcnQgeyBGbHJwIH07XG5leHBvcnQgeyBIYXNoLCBUaGFzaCwgSGFzaFRva2VuIH07XG5leHBvcnQgeyBIYmFyLCBUaGJhciB9O1xuZXhwb3J0IHsgSWNwLCBUaWNwIH07XG5leHBvcnQgeyBJbml0aWEsIFRpbml0aWEgfTtcbmV4cG9ydCB7IElvdGEgfTtcbmV4cG9ydCB7IEthc3BhIH07XG5leHBvcnQgeyBMbmJ0YywgVGxuYnRjIH07XG5leHBvcnQgeyBMdGMsIFRsdGMgfTtcbmV4cG9ydCB7IE1vbiwgVG1vbiwgTW9uVG9rZW4gfTtcbmV4cG9ydCB7IE9hcywgVG9hcyB9O1xuZXhwb3J0IHsgT3BldGgsIFRvcGV0aCwgT3BldGhUb2tlbiB9O1xuZXhwb3J0IHsgT3NtbywgVG9zbW8gfTtcbmV4cG9ydCB7IFBlYXJsLCBUcGVhcmwgfTtcbmV4cG9ydCB7IFBvbHlnb24sIFBvbHlnb25Ub2tlbiwgVHBvbHlnb24gfTtcbmV4cG9ydCB7IFBvbHl4LCBUcG9seXgsIFBvbHl4VG9rZW4gfTtcbmV4cG9ydCB7IFJidGMsIFRyYnRjIH07XG5leHBvcnQgeyBSdW5lLCBUcnVuZSB9O1xuZXhwb3J0IHsgU2diLCBUc2diIH07XG5leHBvcnQgeyBTb2wsIFRzb2wgfTtcbmV4cG9ydCB7IFNvbmVpdW0sIFRzb25laXVtLCBTb25laXVtVG9rZW4gfTtcbmV4cG9ydCB7IFN0YXJrbmV0IH07XG5leHBvcnQgeyBUc3R0IH07XG5leHBvcnQgeyBTdHgsIFRzdHgsIFNpcDEwVG9rZW4gfTtcbmV4cG9ydCB7IFN1aSwgVHN1aSwgU3VpVG9rZW4gfTtcbmV4cG9ydCB7IFRhbywgVHRhbywgVGFvVG9rZW4gfTtcbmV4cG9ydCB7IFRlbXBvLCBUdGVtcG8sIFRpcDIwVG9rZW4gfTtcbmV4cG9ydCB7IFRpYSwgVHRpYSB9O1xuZXhwb3J0IHsgVG9uLCBUdG9uLCBKZXR0b25Ub2tlbiB9O1xuZXhwb3J0IHsgQmxkLCBUYmxkIH07XG5leHBvcnQgeyBTZWksIFRzZWkgfTtcbmV4cG9ydCB7IEluamVjdGl2ZSwgVGluamVjdGl2ZSB9O1xuZXhwb3J0IHsgSXNsbSwgVGlzbG0gfTtcbmV4cG9ydCB7IFRyeCwgVHRyeCB9O1xuZXhwb3J0IHsgVmV0LCBUdmV0LCBWZXRUb2tlbiB9O1xuZXhwb3J0IHsgWGRjLCBUeGRjLCBYZGNUb2tlbiB9O1xuZXhwb3J0IHsgU3RlbGxhclRva2VuLCBUeGxtLCBYbG0gfTtcbmV4cG9ydCB7IFR4cnAsIFhycCwgWHJwTXB0VG9rZW4sIFhycFRva2VuIH07XG5leHBvcnQgeyBUeHR6LCBYdHogfTtcbmV4cG9ydCB7IFR6ZWMsIFplYyB9O1xuZXhwb3J0IHsgVHpldGEsIFpldGEgfTtcbmV4cG9ydCB7IFdlbWl4LCBUd2VtaXggfTtcbmV4cG9ydCB7IFdvcmxkLCBUd29ybGQsIFdvcmxkVG9rZW4gfTtcbmV4cG9ydCB7IFprZXRoLCBUemtldGgsIFprZXRoVG9rZW4gfTtcblxuaW1wb3J0IHsgY29pbnMgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuY29uc3QgeyBPZmMsIE9mY1Rva2VuLCBTdXNkLCBUc3VzZCwgRmlhdCwgYWxsRmlhdENvaW5zLCBmaWF0Q29pbnMsIHRlc3RuZXRGaWF0Q29pbnMgfSA9IGNvaW5zO1xuZXhwb3J0IHsgRmlhdCwgYWxsRmlhdENvaW5zLCBmaWF0Q29pbnMsIHRlc3RuZXRGaWF0Q29pbnMsIE9mYywgT2ZjVG9rZW4sIFN1c2QsIFRzdXNkIH07XG4iXX0=
|
|
288
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdjIvY29pbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsd0RBQXdEO0FBaUYvQyxpR0FqRkEsZ0NBQWdCLE9BaUZBO0FBaEZ6QixrRUFBa0U7QUFpRnpELHNHQWpGQSwwQ0FBcUIsT0FpRkE7QUFoRjlCLHNEQUFnRDtBQXFGdkMsb0ZBckZBLGtCQUFHLE9BcUZBO0FBQUUscUZBckZBLG1CQUFJLE9BcUZBO0FBcEZsQix3REFBOEQ7QUFnRnJELHFGQWhGQSxvQkFBSSxPQWdGQTtBQUFFLDBGQWhGQSx5QkFBUyxPQWdGQTtBQUFFLHNGQWhGQSxxQkFBSyxPQWdGQTtBQS9FL0IsZ0VBQStEO0FBZ0Z0RCx5RkFoRkEsNEJBQVEsT0FnRkE7QUFBRSwwRkFoRkEsNkJBQVMsT0FnRkE7QUEvRTVCLHNEQUEwRDtBQWdGakQsb0ZBaEZBLGtCQUFHLE9BZ0ZBO0FBQUUscUZBaEZBLG1CQUFJLE9BZ0ZBO0FBQUUseUZBaEZBLHVCQUFRLE9BZ0ZBO0FBL0U1Qiw0REFBc0U7QUFnRjdELHVGQWhGQSx3QkFBTSxPQWdGQTtBQUFFLHdGQWhGQSx5QkFBTyxPQWdGQTtBQUFFLDRGQWhGQSw2QkFBVyxPQWdGQTtBQS9FckMsc0RBQWdEO0FBaUZ2QyxvRkFqRkEsa0JBQUcsT0FpRkE7QUFBRSxxRkFqRkEsbUJBQUksT0FpRkE7QUFoRmxCLHdEQUFtRDtBQWlGMUMscUZBakZBLG9CQUFJLE9BaUZBO0FBQUUsc0ZBakZBLHFCQUFLLE9BaUZBO0FBaEZwQiwwREFBa0U7QUFpRnpELHNGQWpGQSxzQkFBSyxPQWlGQTtBQUFFLDJGQWpGQSwyQkFBVSxPQWlGQTtBQUFFLHVGQWpGQSx1QkFBTSxPQWlGQTtBQWhGbEMsMERBQXNEO0FBaUY3QyxzRkFqRkEsc0JBQUssT0FpRkE7QUFBRSx1RkFqRkEsdUJBQU0sT0FpRkE7QUFoRnRCLHdEQUFtRDtBQWlGMUMscUZB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QXRGQSx1QkFBTSxPQXNGQTtBQXJGdEIsMERBQWtFO0FBc0Z6RCxzRkF0RkEsc0JBQUssT0FzRkE7QUFBRSx1RkF0RkEsdUJBQU0sT0FzRkE7QUFBRSwyRkF0RkEsMkJBQVUsT0FzRkE7QUFyRmxDLHNEQUEwRDtBQThFakQsb0ZBOUVBLGtCQUFHLE9BOEVBO0FBQUUscUZBOUVBLG1CQUFJLE9BOEVBO0FBQUUseUZBOUVBLHVCQUFRLE9BOEVBO0FBN0U1QixzREFBdUU7QUErRTlELHFGQS9FQSxtQkFBSSxPQStFQTtBQUFFLG9GQS9FQSxrQkFBRyxPQStFQTtBQUFFLDRGQS9FQSwwQkFBVyxPQStFQTtBQUFFLHlGQS9FQSx1QkFBUSxPQStFQTtBQTlFekMsc0RBQWdEO0FBK0V2QyxxRkEvRUEsbUJBQUksT0ErRUE7QUFBRSxvRkEvRUEsa0JBQUcsT0ErRUE7QUE5RWxCLHNEQUFnRDtBQStFdkMscUZBL0VBLG1CQUFJLE9BK0VBO0FBQUUsb0ZBL0VBLGtCQUFHLE9BK0VBO0FBOUVsQix3REFBbUQ7QUErRTFDLHNGQS9FQSxxQkFBSyxPQStFQTtBQUFFLHFGQS9FQSxvQkFBSSxPQStFQTtBQTlFcEIsMERBQWtFO0FBaUZ6RCxzRkFqRkEsc0JBQUssT0FpRkE7QUFBRSx1RkFqRkEsdUJBQU0sT0FpRkE7QUFBRSwyRkFqRkEsMkJBQVUsT0FpRkE7QUFFbEMsOENBQXdDO0FBQ3hDLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxnQkFBSyxDQUFDO0FBQ3BDLGtCQUFHO0FBQUUsNEJBQVE7QUFBRSxvQkFBSTtBQUFFLHNCQUFLO0FBQTNFLG9CQUFJO0FBQUUsb0NBQVk7QUFBRSw4QkFBUztBQUFFLDRDQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0VXR4b0NvaW4gfSBmcm9tICdAYml0Z28vYWJzdHJhY3QtdXR4byc7XG5pbXBvcnQgeyBBYnN0cmFjdExpZ2h0bmluZ0NvaW4gfSBmcm9tICdAYml0Z28vYWJzdHJhY3QtbGlnaHRuaW5nJztcbmltcG9ydCB7IEFkYSwgVGFkYSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hZGEnO1xuaW1wb3J0IHsgQWxnbywgQWxnb1Rva2VuLCBUYWxnbyB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hbGdvJztcbmltcG9ydCB7IEFwZWNoYWluLCBUYXBlY2hhaW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYXBlY2hhaW4nO1xuaW1wb3J0IHsgQXB0LCBUYXB0LCBBcHRUb2tlbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hcHQnO1xuaW1wb3J0IHsgQXJiZXRoLCBUYXJiZXRoLCBBcmJldGhUb2tlbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hcmJldGgnO1xuaW1wb3J0IHsgQXNpLCBUYXNpIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWFzaSc7XG5pbXBvcnQgeyBBdG9tLCBUYXRvbSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hdG9tJztcbmltcG9ydCB7IEF2YXhDLCBBdmF4Q1Rva2VuLCBUYXZheEMgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYXZheGMnO1xuaW1wb3J0IHsgQXZheFAsIFRhdmF4UCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1hdmF4cCc7XG5pbXBvcnQgeyBCYWJ5LCBUYmFieSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1iYWJ5JztcbmltcG9ydCB7IEJjaCwgVGJjaCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1iY2gnO1xuaW1wb3J0IHsgQmNoYSwgVGJjaGEgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYmNoYSc7XG5pbXBvcnQgeyBCZXJhLCBUYmVyYSwgQmVyYVRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWJlcmEnO1xuaW1wb3J0IHsgQmxkLCBUYmxkIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWJsZCc7XG5pbXBvcnQgeyBCc2MsIEJzY1Rva2VuLCBUYnNjIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWJzYyc7XG5pbXBvcnQgeyBCc3YsIFRic3YgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYnN2JztcbmltcG9ydCB7IEJ0YywgVGJ0YywgVGJ0Y3NpZywgVGJ0YzQsIFRidGNiZ3NpZywgVGJ0Y3N0eCwgVGJ0Y3N0eHByaXZhdGUxLCBUYnRjc3R4c2lnbmV0IH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWJ0Yyc7XG5pbXBvcnQgeyBCdGcgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tYnRnJztcbmltcG9ydCB7IENhbnRvbiwgVGNhbnRvbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1jYW50b24nO1xuaW1wb3J0IHsgQ2VsbywgQ2Vsb1Rva2VuLCBUY2VsbyB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1jZWxvJztcbmltcG9ydCB7IENvcmVkYW8sIFRjb3JlZGFvLCBDb3JlZGFvVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tY29yZWRhbyc7XG5pbXBvcnQgeyBDb3JldW0sIFRjb3JldW0gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tY29yZXVtJztcbmltcG9ydCB7IENvc21vc1NoYXJlZENvaW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tY29zbW9zJztcbmltcG9ydCB7IENyb25vcywgVGNyb25vcyB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1jcm9ub3MnO1xuaW1wb3J0IHsgQ3NwciwgVGNzcHIgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tY3Nwcic7XG5pbXBvcnQgeyBEYXNoLCBUZGFzaCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1kYXNoJztcbmltcG9ydCB7IERvZ2UsIFRkb2dlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWRvZ2UnO1xuaW1wb3J0IHsgRG90LCBUZG90IH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWRvdCc7XG5pbXBvcnQgeyBFb3MsIEVvc1Rva2VuLCBUZW9zIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWVvcyc7XG5pbXBvcnQgeyBFdGMsIFRldGMgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZXRjJztcbmltcG9ydCB7IEVyYzIwVG9rZW4sIEVyYzcyMVRva2VuLCBFcmM3OTg0VG9rZW4sIEV0aCwgR3RldGgsIEh0ZXRoLCBTZXBldGgsIFRldGggfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZXRoJztcbmltcG9ydCB7IEV2bUNvaW4sIEV0aExpa2VFcmMyMFRva2VuLCBFdGhMaWtlRXJjNzIxVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZXZtJztcbmltcG9ydCB7IEZsciwgVGZsciwgRmxyVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZmxyJztcbmltcG9ydCB7IEZscnAgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tZmxycCc7XG5pbXBvcnQgeyBFdGh3IH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWV0aHcnO1xuaW1wb3J0IHsgRXRoTGlrZUNvaW4sIFRldGhMaWtlQ29pbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1ldGhsaWtlJztcbmltcG9ydCB7IEhhc2gsIFRoYXNoLCBIYXNoVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4taGFzaCc7XG5pbXBvcnQgeyBIYmFyLCBUaGJhciB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1oYmFyJztcbmltcG9ydCB7IEljcCwgVGljcCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1pY3AnO1xuaW1wb3J0IHsgSW5pdGlhLCBUaW5pdGlhIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWluaXRpYSc7XG5pbXBvcnQgeyBLYXNwYSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1rYXNwYSc7XG5pbXBvcnQgeyBJbmplY3RpdmUsIFRpbmplY3RpdmUgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4taW5qZWN0aXZlJztcbmltcG9ydCB7IElvdGEgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4taW90YSc7XG5pbXBvcnQgeyBJc2xtLCBUaXNsbSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1pc2xtJztcbmltcG9ydCB7IExuYnRjLCBUbG5idGMgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tbG5idGMnO1xuaW1wb3J0IHsgTHRjLCBUbHRjIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWx0Yyc7XG5pbXBvcnQgeyBNb24sIFRtb24sIE1vblRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLW1vbic7XG5pbXBvcnQgeyBPYXMsIFRvYXMgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tb2FzJztcbmltcG9ydCB7IE9wZXRoLCBUb3BldGgsIE9wZXRoVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tb3BldGgnO1xuaW1wb3J0IHsgT3NtbywgVG9zbW8gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tb3Ntbyc7XG5pbXBvcnQgeyBQZWFybCwgVHBlYXJsIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXBlYXJsJztcbmltcG9ydCB7IFBvbHlnb24sIFBvbHlnb25Ub2tlbiwgVHBvbHlnb24gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tcG9seWdvbic7XG5pbXBvcnQgeyBQb2x5eCwgVHBvbHl4LCBQb2x5eFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXBvbHl4JztcbmltcG9ydCB7IFJidGMsIFRyYnRjIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXJidGMnO1xuaW1wb3J0IHsgUnVuZSwgVHJ1bmUgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tcnVuZSc7XG5pbXBvcnQgeyBTZWksIFRzZWkgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tc2VpJztcbmltcG9ydCB7IFNvbmVpdW0sIFRzb25laXVtLCBTb25laXVtVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tc29uZWl1bSc7XG5pbXBvcnQgeyBUc3R0IH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXN0dCc7XG5pbXBvcnQgeyBTZ2IsIFRzZ2IgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tc2diJztcbmltcG9ydCB7IFNvbCwgVHNvbCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1zb2wnO1xuaW1wb3J0IHsgU3RhcmtuZXQgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4tc3RhcmtuZXQnO1xuaW1wb3J0IHsgU3R4LCBUc3R4LCBTaXAxMFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXN0eCc7XG5pbXBvcnQgeyBTdWksIFRzdWksIFN1aVRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXN1aSc7XG5pbXBvcnQgeyBUYW8sIFR0YW8sIFRhb1Rva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXRhbyc7XG5pbXBvcnQgeyBUZW1wbywgVHRlbXBvLCBUaXAyMFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXRlbXBvJztcbmltcG9ydCB7IFRpYSwgVHRpYSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi10aWEnO1xuaW1wb3J0IHsgVG9uLCBUdG9uLCBKZXR0b25Ub2tlbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi10b24nO1xuaW1wb3J0IHsgVHJ4LCBUdHJ4IH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXRyeCc7XG5pbXBvcnQgeyBTdGVsbGFyVG9rZW4sIFR4bG0sIFhsbSB9IGZyb20gJ0BiaXRnby9zZGstY29pbi14bG0nO1xuaW1wb3J0IHsgVmV0LCBUdmV0LCBWZXRUb2tlbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi12ZXQnO1xuaW1wb3J0IHsgV2VtaXgsIFR3ZW1peCB9IGZyb20gJ0BiaXRnby9zZGstY29pbi13ZW1peCc7XG5pbXBvcnQgeyBXb3JsZCwgVHdvcmxkLCBXb3JsZFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXdvcmxkJztcbmltcG9ydCB7IFhkYywgVHhkYywgWGRjVG9rZW4gfSBmcm9tICdAYml0Z28vc2RrLWNvaW4teGRjJztcbmltcG9ydCB7IFR4cnAsIFhycCwgWHJwTXB0VG9rZW4sIFhycFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXhycCc7XG5pbXBvcnQgeyBUeHR6LCBYdHogfSBmcm9tICdAYml0Z28vc2RrLWNvaW4teHR6JztcbmltcG9ydCB7IFR6ZWMsIFplYyB9IGZyb20gJ0BiaXRnby9zZGstY29pbi16ZWMnO1xuaW1wb3J0IHsgVHpldGEsIFpldGEgfSBmcm9tICdAYml0Z28vc2RrLWNvaW4temV0YSc7XG5pbXBvcnQgeyBaa2V0aCwgVHprZXRoLCBaa2V0aFRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLXprZXRoJztcblxuZXhwb3J0IHsgQWJzdHJhY3RVdHhvQ29pbiB9O1xuZXhwb3J0IHsgQWJzdHJhY3RMaWdodG5pbmdDb2luIH07XG5leHBvcnQgeyBBbGdvLCBBbGdvVG9rZW4sIFRhbGdvIH07XG5leHBvcnQgeyBBcGVjaGFpbiwgVGFwZWNoYWluIH07XG5leHBvcnQgeyBBcHQsIFRhcHQsIEFwdFRva2VuIH07XG5leHBvcnQgeyBBcmJldGgsIFRhcmJldGgsIEFyYmV0aFRva2VuIH07XG5leHBvcnQgeyBBZGEsIFRhZGEgfTtcbmV4cG9ydCB7IEFzaSwgVGFzaSB9O1xuZXhwb3J0IHsgQXRvbSwgVGF0b20gfTtcbmV4cG9ydCB7IEF2YXhDLCBBdmF4Q1Rva2VuLCBUYXZheEMgfTtcbmV4cG9ydCB7IEF2YXhQLCBUYXZheFAgfTtcbmV4cG9ydCB7IEJhYnksIFRiYWJ5IH07XG5leHBvcnQgeyBCY2gsIFRiY2ggfTtcbmV4cG9ydCB7IEJlcmEsIFRiZXJhLCBCZXJhVG9rZW4gfTtcbmV4cG9ydCB7IEJzYywgQnNjVG9rZW4sIFRic2MgfTtcbmV4cG9ydCB7IEJzdiwgVGJzdiB9O1xuZXhwb3J0IHsgQnRjLCBUYnRjLCBUYnRjc2lnLCBUYnRjNCwgVGJ0Y2Jnc2lnLCBUYnRjc3R4LCBUYnRjc3R4cHJpdmF0ZTEsIFRidGNzdHhzaWduZXQgfTtcbmV4cG9ydCB7IEJ0ZyB9O1xuZXhwb3J0IHsgQ2FudG9uLCBUY2FudG9uIH07XG5leHBvcnQgeyBDZWxvLCBDZWxvVG9rZW4sIFRjZWxvIH07XG5leHBvcnQgeyBDb3JlZGFvLCBUY29yZWRhbywgQ29yZWRhb1Rva2VuIH07XG5leHBvcnQgeyBDb3JldW0sIFRjb3JldW0gfTtcbmV4cG9ydCB7IENvc21vc1NoYXJlZENvaW4gfTtcbmV4cG9ydCB7IENyb25vcywgVGNyb25vcyB9O1xuZXhwb3J0IHsgQ3NwciwgVGNzcHIgfTtcbmV4cG9ydCB7IERhc2gsIFRkYXNoIH07XG5leHBvcnQgeyBEb2dlLCBUZG9nZSB9O1xuZXhwb3J0IHsgRG90LCBUZG90IH07XG5leHBvcnQgeyBCY2hhLCBUYmNoYSB9O1xuZXhwb3J0IHsgRW9zLCBFb3NUb2tlbiwgVGVvcyB9O1xuZXhwb3J0IHsgRXJjMjBUb2tlbiwgRXJjNzIxVG9rZW4sIEVyYzc5ODRUb2tlbiwgRXRoLCBHdGV0aCwgSHRldGgsIFNlcGV0aCwgVGV0aCB9O1xuZXhwb3J0IHsgRXRodyB9O1xuZXhwb3J0IHsgRXRoTGlrZUNvaW4sIFRldGhMaWtlQ29pbiB9O1xuZXhwb3J0IHsgRXRjLCBUZXRjIH07XG5leHBvcnQgeyBFdm1Db2luLCBFdGhMaWtlRXJjMjBUb2tlbiwgRXRoTGlrZUVyYzcyMVRva2VuIH07XG5leHBvcnQgeyBGbHIsIFRmbHIsIEZsclRva2VuIH07XG5leHBvcnQgeyBGbHJwIH07XG5leHBvcnQgeyBIYXNoLCBUaGFzaCwgSGFzaFRva2VuIH07XG5leHBvcnQgeyBIYmFyLCBUaGJhciB9O1xuZXhwb3J0IHsgSWNwLCBUaWNwIH07XG5leHBvcnQgeyBJbml0aWEsIFRpbml0aWEgfTtcbmV4cG9ydCB7IElvdGEgfTtcbmV4cG9ydCB7IEthc3BhIH07XG5leHBvcnQgeyBMbmJ0YywgVGxuYnRjIH07XG5leHBvcnQgeyBMdGMsIFRsdGMgfTtcbmV4cG9ydCB7IE1vbiwgVG1vbiwgTW9uVG9rZW4gfTtcbmV4cG9ydCB7IE9hcywgVG9hcyB9O1xuZXhwb3J0IHsgT3BldGgsIFRvcGV0aCwgT3BldGhUb2tlbiB9O1xuZXhwb3J0IHsgT3NtbywgVG9zbW8gfTtcbmV4cG9ydCB7IFBlYXJsLCBUcGVhcmwgfTtcbmV4cG9ydCB7IFBvbHlnb24sIFBvbHlnb25Ub2tlbiwgVHBvbHlnb24gfTtcbmV4cG9ydCB7IFBvbHl4LCBUcG9seXgsIFBvbHl4VG9rZW4gfTtcbmV4cG9ydCB7IFJidGMsIFRyYnRjIH07XG5leHBvcnQgeyBSdW5lLCBUcnVuZSB9O1xuZXhwb3J0IHsgU2diLCBUc2diIH07XG5leHBvcnQgeyBTb2wsIFRzb2wgfTtcbmV4cG9ydCB7IFNvbmVpdW0sIFRzb25laXVtLCBTb25laXVtVG9rZW4gfTtcbmV4cG9ydCB7IFN0YXJrbmV0IH07XG5leHBvcnQgeyBUc3R0IH07XG5leHBvcnQgeyBTdHgsIFRzdHgsIFNpcDEwVG9rZW4gfTtcbmV4cG9ydCB7IFN1aSwgVHN1aSwgU3VpVG9rZW4gfTtcbmV4cG9ydCB7IFRhbywgVHRhbywgVGFvVG9rZW4gfTtcbmV4cG9ydCB7IFRlbXBvLCBUdGVtcG8sIFRpcDIwVG9rZW4gfTtcbmV4cG9ydCB7IFRpYSwgVHRpYSB9O1xuZXhwb3J0IHsgVG9uLCBUdG9uLCBKZXR0b25Ub2tlbiB9O1xuZXhwb3J0IHsgQmxkLCBUYmxkIH07XG5leHBvcnQgeyBTZWksIFRzZWkgfTtcbmV4cG9ydCB7IEluamVjdGl2ZSwgVGluamVjdGl2ZSB9O1xuZXhwb3J0IHsgSXNsbSwgVGlzbG0gfTtcbmV4cG9ydCB7IFRyeCwgVHRyeCB9O1xuZXhwb3J0IHsgVmV0LCBUdmV0LCBWZXRUb2tlbiB9O1xuZXhwb3J0IHsgWGRjLCBUeGRjLCBYZGNUb2tlbiB9O1xuZXhwb3J0IHsgU3RlbGxhclRva2VuLCBUeGxtLCBYbG0gfTtcbmV4cG9ydCB7IFR4cnAsIFhycCwgWHJwTXB0VG9rZW4sIFhycFRva2VuIH07XG5leHBvcnQgeyBUeHR6LCBYdHogfTtcbmV4cG9ydCB7IFR6ZWMsIFplYyB9O1xuZXhwb3J0IHsgVHpldGEsIFpldGEgfTtcbmV4cG9ydCB7IFdlbWl4LCBUd2VtaXggfTtcbmV4cG9ydCB7IFdvcmxkLCBUd29ybGQsIFdvcmxkVG9rZW4gfTtcbmV4cG9ydCB7IFprZXRoLCBUemtldGgsIFprZXRoVG9rZW4gfTtcblxuaW1wb3J0IHsgY29pbnMgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuY29uc3QgeyBPZmMsIE9mY1Rva2VuLCBTdXNkLCBUc3VzZCwgRmlhdCwgYWxsRmlhdENvaW5zLCBmaWF0Q29pbnMsIHRlc3RuZXRGaWF0Q29pbnMgfSA9IGNvaW5zO1xuZXhwb3J0IHsgRmlhdCwgYWxsRmlhdENvaW5zLCBmaWF0Q29pbnMsIHRlc3RuZXRGaWF0Q29pbnMsIE9mYywgT2ZjVG9rZW4sIFN1c2QsIFRzdXNkIH07XG4iXX0=
|
|
@@ -40,7 +40,7 @@ exports.reducedAmsTokenConfig = {
|
|
|
40
40
|
decimalPlaces: 18,
|
|
41
41
|
asset: 'tip:faketoken',
|
|
42
42
|
network: {
|
|
43
|
-
name: '
|
|
43
|
+
name: 'Data Network Testnet',
|
|
44
44
|
},
|
|
45
45
|
primaryKeyCurve: 'secp256k1',
|
|
46
46
|
contractAddress: '0x1234567890123456789012345678901234567890',
|
|
@@ -62,11 +62,33 @@ exports.reducedAmsTokenConfig = {
|
|
|
62
62
|
decimalPlaces: 18,
|
|
63
63
|
asset: 'thypeevm:faketoken',
|
|
64
64
|
network: {
|
|
65
|
-
name: '
|
|
65
|
+
name: 'HyperliquidEVMTestnet',
|
|
66
66
|
},
|
|
67
67
|
primaryKeyCurve: 'secp256k1',
|
|
68
68
|
contractAddress: '0xabcdefabcdefabcdefabcdefabcdefabcdefabcd',
|
|
69
69
|
},
|
|
70
70
|
],
|
|
71
|
+
'tbsc:faketoken': [
|
|
72
|
+
{
|
|
73
|
+
id: 'c3d4e5f6-a7b8-4901-9cde-f123456789ab',
|
|
74
|
+
fullName: 'Testnet BNB fake token',
|
|
75
|
+
name: 'tbsc:faketoken',
|
|
76
|
+
prefix: '',
|
|
77
|
+
suffix: 'TBSC:FAKETOKEN',
|
|
78
|
+
baseUnit: 'wei',
|
|
79
|
+
kind: 'crypto',
|
|
80
|
+
family: 'bsc',
|
|
81
|
+
isToken: true,
|
|
82
|
+
additionalFeatures: [],
|
|
83
|
+
excludedFeatures: [],
|
|
84
|
+
decimalPlaces: 18,
|
|
85
|
+
asset: 'tbsc:faketoken',
|
|
86
|
+
network: {
|
|
87
|
+
name: 'BinanceSmartChainTestnet',
|
|
88
|
+
},
|
|
89
|
+
primaryKeyCurve: 'secp256k1',
|
|
90
|
+
contractAddress: '0x9876543210987654321098765432109876543210',
|
|
91
|
+
},
|
|
92
|
+
],
|
|
71
93
|
};
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1zVG9rZW5Db25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3YyL3Jlc291cmNlcy9hbXNUb2tlbkNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLHFCQUFxQixHQUFHO0lBQ25DLGlCQUFpQixFQUFFO1FBQ2pCO1lBQ0UsRUFBRSxFQUFFLHNDQUFzQztZQUMxQyxRQUFRLEVBQUUsMEJBQTBCO1lBQ3BDLElBQUksRUFBRSxpQkFBaUI7WUFDdkIsTUFBTSxFQUFFLEVBQUU7WUFDVixNQUFNLEVBQUUsaUJBQWlCO1lBQ3pCLFFBQVEsRUFBRSxLQUFLO1lBQ2YsSUFBSSxFQUFFLFFBQVE7WUFDZCxNQUFNLEVBQUUsS0FBSztZQUNiLE9BQU8sRUFBRSxJQUFJO1lBQ2Isa0JBQWtCLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztZQUN4QyxnQkFBZ0IsRUFBRSxDQUFDLHFCQUFxQixDQUFDO1lBQ3pDLGFBQWEsRUFBRSxDQUFDO1lBQ2hCLEtBQUssRUFBRSxpQkFBaUI7WUFDeEIsT0FBTyxFQUFFO2dCQUNQLElBQUksRUFBRSxPQUFPO2FBQ2Q7WUFDRCxlQUFlLEVBQUUsV0FBVztZQUM1QixlQUFlLEVBQUUsNENBQTRDO1NBQzlEO0tBQ0Y7SUFDRCxlQUFlLEVBQUU7UUFDZjtZQUNFLEVBQUUsRUFBRSxzQ0FBc0M7WUFDMUMsUUFBUSxFQUFFLGdDQUFnQztZQUMxQyxJQUFJLEVBQUUsZUFBZTtZQUNyQixNQUFNLEVBQUUsRUFBRTtZQUNWLE1BQU0sRUFBRSxlQUFlO1lBQ3ZCLFFBQVEsRUFBRSxLQUFLO1lBQ2YsSUFBSSxFQUFFLFFBQVE7WUFDZCxNQUFNLEVBQUUsSUFBSTtZQUNaLE9BQU8sRUFBRSxJQUFJO1lBQ2Isa0JBQWtCLEVBQUUsRUFBRTtZQUN0QixnQkFBZ0IsRUFBRSxFQUFFO1lBQ3BCLGFBQWEsRUFBRSxFQUFFO1lBQ2pCLEtBQUssRUFBRSxlQUFlO1lBQ3RCLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsc0JBQXNCO2FBQzdCO1lBQ0QsZUFBZSxFQUFFLFdBQVc7WUFDNUIsZUFBZSxFQUFFLDRDQUE0QztTQUM5RDtLQUNGO0lBQ0Qsb0JBQW9CLEVBQUU7UUFDcEI7WUFDRSxFQUFFLEVBQUUsc0NBQXNDO1lBQzFDLFFBQVEsRUFBRSxtQ0FBbUM7WUFDN0MsSUFBSSxFQUFFLG9CQUFvQjtZQUMxQixNQUFNLEVBQUUsRUFBRTtZQUNWLE1BQU0sRUFBRSxvQkFBb0I7WUFDNUIsUUFBUSxFQUFFLEtBQUs7WUFDZixJQUFJLEVBQUUsUUFBUTtZQUNkLE1BQU0sRUFBRSxTQUFTO1lBQ2pCLE9BQU8sRUFBRSxJQUFJO1lBQ2Isa0JBQWtCLEVBQUUsRUFBRTtZQUN0QixnQkFBZ0IsRUFBRSxFQUFFO1lBQ3BCLGFBQWEsRUFBRSxFQUFFO1lBQ2pCLEtBQUssRUFBRSxvQkFBb0I7WUFDM0IsT0FBTyxFQUFFO2dCQUNQLElBQUksRUFBRSx1QkFBdUI7YUFDOUI7WUFDRCxlQUFlLEVBQUUsV0FBVztZQUM1QixlQUFlLEVBQUUsNENBQTRDO1NBQzlEO0tBQ0Y7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQjtZQUNFLEVBQUUsRUFBRSxzQ0FBc0M7WUFDMUMsUUFBUSxFQUFFLHdCQUF3QjtZQUNsQyxJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLE1BQU0sRUFBRSxFQUFFO1lBQ1YsTUFBTSxFQUFFLGdCQUFnQjtZQUN4QixRQUFRLEVBQUUsS0FBSztZQUNmLElBQUksRUFBRSxRQUFRO1lBQ2QsTUFBTSxFQUFFLEtBQUs7WUFDYixPQUFPLEVBQUUsSUFBSTtZQUNiLGtCQUFrQixFQUFFLEVBQUU7WUFDdEIsZ0JBQWdCLEVBQUUsRUFBRTtZQUNwQixhQUFhLEVBQUUsRUFBRTtZQUNqQixLQUFLLEVBQUUsZ0JBQWdCO1lBQ3ZCLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsMEJBQTBCO2FBQ2pDO1lBQ0QsZUFBZSxFQUFFLFdBQVc7WUFDNUIsZUFBZSxFQUFFLDRDQUE0QztTQUM5RDtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCByZWR1Y2VkQW1zVG9rZW5Db25maWcgPSB7XG4gICdodGV0aDpmYWtldG9rZW4nOiBbXG4gICAge1xuICAgICAgaWQ6ICc0OWZmNDllYS0zMzU1LTQ3MTctYmJiMC01ZThmNWNhZTIyMDEnLFxuICAgICAgZnVsbE5hbWU6ICdIb29kaSBUZXN0bmV0IGZha2UgdG9rZW4nLFxuICAgICAgbmFtZTogJ2h0ZXRoOmZha2V0b2tlbicsXG4gICAgICBwcmVmaXg6ICcnLFxuICAgICAgc3VmZml4OiAnSFRFVEg6RkFLRVRPS0VOJyxcbiAgICAgIGJhc2VVbml0OiAnd2VpJyxcbiAgICAgIGtpbmQ6ICdjcnlwdG8nLFxuICAgICAgZmFtaWx5OiAnZXRoJyxcbiAgICAgIGlzVG9rZW46IHRydWUsXG4gICAgICBhZGRpdGlvbmFsRmVhdHVyZXM6IFsnYnVsay10cmFuc2FjdGlvbiddLFxuICAgICAgZXhjbHVkZWRGZWF0dXJlczogWydjdXN0b2R5LWJpdGdvLWtvcmVhJ10sXG4gICAgICBkZWNpbWFsUGxhY2VzOiA2LFxuICAgICAgYXNzZXQ6ICdodGV0aDpmYWtldG9rZW4nLFxuICAgICAgbmV0d29yazoge1xuICAgICAgICBuYW1lOiAnSG9vZGknLFxuICAgICAgfSxcbiAgICAgIHByaW1hcnlLZXlDdXJ2ZTogJ3NlY3AyNTZrMScsXG4gICAgICBjb250cmFjdEFkZHJlc3M6ICcweDg5YTk1OWI5MTg0YjRmOGM4NjMzNjQ2ZDVkZmQwNDlkMmViYzk4M2EnLFxuICAgIH0sXG4gIF0sXG4gICd0aXA6ZmFrZXRva2VuJzogW1xuICAgIHtcbiAgICAgIGlkOiAnYTFiMmMzZDQtZTVmNi00Nzg5LThhYmMtZGVmMTIzNDU2Nzg5JyxcbiAgICAgIGZ1bGxOYW1lOiAnRGF0YSBOZXR3b3JrIFRlc3RuZXQgRmFrZXRva2VuJyxcbiAgICAgIG5hbWU6ICd0aXA6ZmFrZXRva2VuJyxcbiAgICAgIHByZWZpeDogJycsXG4gICAgICBzdWZmaXg6ICdUSVA6RkFLRVRPS0VOJyxcbiAgICAgIGJhc2VVbml0OiAnd2VpJyxcbiAgICAgIGtpbmQ6ICdjcnlwdG8nLFxuICAgICAgZmFtaWx5OiAnaXAnLFxuICAgICAgaXNUb2tlbjogdHJ1ZSxcbiAgICAgIGFkZGl0aW9uYWxGZWF0dXJlczogW10sXG4gICAgICBleGNsdWRlZEZlYXR1cmVzOiBbXSxcbiAgICAgIGRlY2ltYWxQbGFjZXM6IDE4LFxuICAgICAgYXNzZXQ6ICd0aXA6ZmFrZXRva2VuJyxcbiAgICAgIG5ldHdvcms6IHtcbiAgICAgICAgbmFtZTogJ0RhdGEgTmV0d29yayBUZXN0bmV0JyxcbiAgICAgIH0sXG4gICAgICBwcmltYXJ5S2V5Q3VydmU6ICdzZWNwMjU2azEnLFxuICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHgxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwJyxcbiAgICB9LFxuICBdLFxuICAndGh5cGVldm06ZmFrZXRva2VuJzogW1xuICAgIHtcbiAgICAgIGlkOiAnYjJjM2Q0ZTUtZjZhNy00ODkwLTliY2QtZWYwMTIzNDU2NzhhJyxcbiAgICAgIGZ1bGxOYW1lOiAnSHlwZXJsaXF1aWQgRVZNIFRlc3RuZXQgRmFrZXRva2VuJyxcbiAgICAgIG5hbWU6ICd0aHlwZWV2bTpmYWtldG9rZW4nLFxuICAgICAgcHJlZml4OiAnJyxcbiAgICAgIHN1ZmZpeDogJ1RIWVBFRVZNOkZBS0VUT0tFTicsXG4gICAgICBiYXNlVW5pdDogJ3dlaScsXG4gICAgICBraW5kOiAnY3J5cHRvJyxcbiAgICAgIGZhbWlseTogJ2h5cGVldm0nLFxuICAgICAgaXNUb2tlbjogdHJ1ZSxcbiAgICAgIGFkZGl0aW9uYWxGZWF0dXJlczogW10sXG4gICAgICBleGNsdWRlZEZlYXR1cmVzOiBbXSxcbiAgICAgIGRlY2ltYWxQbGFjZXM6IDE4LFxuICAgICAgYXNzZXQ6ICd0aHlwZWV2bTpmYWtldG9rZW4nLFxuICAgICAgbmV0d29yazoge1xuICAgICAgICBuYW1lOiAnSHlwZXJsaXF1aWRFVk1UZXN0bmV0JyxcbiAgICAgIH0sXG4gICAgICBwcmltYXJ5S2V5Q3VydmU6ICdzZWNwMjU2azEnLFxuICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHhhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkJyxcbiAgICB9LFxuICBdLFxuICAndGJzYzpmYWtldG9rZW4nOiBbXG4gICAge1xuICAgICAgaWQ6ICdjM2Q0ZTVmNi1hN2I4LTQ5MDEtOWNkZS1mMTIzNDU2Nzg5YWInLFxuICAgICAgZnVsbE5hbWU6ICdUZXN0bmV0IEJOQiBmYWtlIHRva2VuJyxcbiAgICAgIG5hbWU6ICd0YnNjOmZha2V0b2tlbicsXG4gICAgICBwcmVmaXg6ICcnLFxuICAgICAgc3VmZml4OiAnVEJTQzpGQUtFVE9LRU4nLFxuICAgICAgYmFzZVVuaXQ6ICd3ZWknLFxuICAgICAga2luZDogJ2NyeXB0bycsXG4gICAgICBmYW1pbHk6ICdic2MnLFxuICAgICAgaXNUb2tlbjogdHJ1ZSxcbiAgICAgIGFkZGl0aW9uYWxGZWF0dXJlczogW10sXG4gICAgICBleGNsdWRlZEZlYXR1cmVzOiBbXSxcbiAgICAgIGRlY2ltYWxQbGFjZXM6IDE4LFxuICAgICAgYXNzZXQ6ICd0YnNjOmZha2V0b2tlbicsXG4gICAgICBuZXR3b3JrOiB7XG4gICAgICAgIG5hbWU6ICdCaW5hbmNlU21hcnRDaGFpblRlc3RuZXQnLFxuICAgICAgfSxcbiAgICAgIHByaW1hcnlLZXlDdXJ2ZTogJ3NlY3AyNTZrMScsXG4gICAgICBjb250cmFjdEFkZHJlc3M6ICcweDk4NzY1NDMyMTA5ODc2NTQzMjEwOTg3NjU0MzIxMDk4NzY1NDMyMTAnLFxuICAgIH0sXG4gIF0sXG59O1xuIl19
|
|
@@ -6,6 +6,8 @@ const sdk_core_1 = require("@bitgo/sdk-core");
|
|
|
6
6
|
const sdk_test_1 = require("@bitgo/sdk-test");
|
|
7
7
|
const src_1 = require("../../../../src");
|
|
8
8
|
const amsTokenConfig_1 = require("../../resources/amsTokenConfig");
|
|
9
|
+
const sdk_coin_evm_1 = require("@bitgo/sdk-coin-evm");
|
|
10
|
+
const sdk_coin_bsc_1 = require("@bitgo/sdk-coin-bsc");
|
|
9
11
|
describe('Asset metadata service', () => {
|
|
10
12
|
const microservicesUri = sdk_core_1.Environments['mock'].uri;
|
|
11
13
|
let bitgo;
|
|
@@ -127,6 +129,38 @@ describe('Asset metadata service', () => {
|
|
|
127
129
|
}
|
|
128
130
|
staticsCoin.family.should.equal('hypeevm');
|
|
129
131
|
});
|
|
132
|
+
it('should register an AMS-only token on a new-gen EVM family via the lazy path', async () => {
|
|
133
|
+
const bitgo = sdk_test_1.TestBitGo.decorate(src_1.BitGo, { env: 'mock', microservicesUri, useAms: true });
|
|
134
|
+
bitgo.initializeTestVars();
|
|
135
|
+
const tokenName = 'thypeevm:faketoken';
|
|
136
|
+
// Setup nocks for AMS API call
|
|
137
|
+
nock(microservicesUri).get(`/api/v1/assets/name/${tokenName}`).reply(200, amsTokenConfig_1.reducedAmsTokenConfig[tokenName][0]);
|
|
138
|
+
await bitgo.registerToken(tokenName);
|
|
139
|
+
const coin = bitgo.coin(tokenName);
|
|
140
|
+
should.exist(coin);
|
|
141
|
+
coin.type.should.equal(tokenName);
|
|
142
|
+
coin.tokenContractAddress.should.equal('0xabcdefabcdefabcdefabcdefabcdefabcdefabcd');
|
|
143
|
+
});
|
|
144
|
+
it('should register a statics ERC721 token on a dual-standard EVM family via the lazy path', async () => {
|
|
145
|
+
const bitgo = sdk_test_1.TestBitGo.decorate(src_1.BitGo, { env: 'mock', microservicesUri, useAms: true });
|
|
146
|
+
bitgo.initializeTestVars();
|
|
147
|
+
const tokenName = 'erc721:hbarevmtoken';
|
|
148
|
+
await bitgo.registerToken(tokenName);
|
|
149
|
+
const coin = bitgo.coin(tokenName);
|
|
150
|
+
should.exist(coin);
|
|
151
|
+
coin.type.should.equal(tokenName);
|
|
152
|
+
coin.should.be.an.instanceOf(sdk_coin_evm_1.EthLikeErc721Token);
|
|
153
|
+
});
|
|
154
|
+
it('should register a testnet ERC721 token on a dual-standard EVM family via the lazy path', async () => {
|
|
155
|
+
const bitgo = sdk_test_1.TestBitGo.decorate(src_1.BitGo, { env: 'mock', microservicesUri, useAms: true });
|
|
156
|
+
bitgo.initializeTestVars();
|
|
157
|
+
const tokenName = 'thbarevm:tmnft';
|
|
158
|
+
await bitgo.registerToken(tokenName);
|
|
159
|
+
const coin = bitgo.coin(tokenName);
|
|
160
|
+
should.exist(coin);
|
|
161
|
+
coin.type.should.equal(tokenName);
|
|
162
|
+
coin.should.be.an.instanceOf(sdk_coin_evm_1.EthLikeErc721Token);
|
|
163
|
+
});
|
|
130
164
|
it('should register a SOL token from statics library if available', async () => {
|
|
131
165
|
const bitgo = sdk_test_1.TestBitGo.decorate(src_1.BitGo, { env: 'mock', microservicesUri, useAms: true });
|
|
132
166
|
bitgo.initializeTestVars();
|
|
@@ -144,5 +178,32 @@ describe('Asset metadata service', () => {
|
|
|
144
178
|
coin.type.should.equal('tsol:usdc');
|
|
145
179
|
coin.getBaseFactor().should.equal(1e9);
|
|
146
180
|
});
|
|
181
|
+
it('should resolve an AMS-only token on a new-gen EVM family after initCoinFactory', () => {
|
|
182
|
+
bitgo.initCoinFactory(amsTokenConfig_1.reducedAmsTokenConfig);
|
|
183
|
+
const coin = bitgo.coin('thypeevm:faketoken');
|
|
184
|
+
should.exist(coin);
|
|
185
|
+
coin.type.should.equal('thypeevm:faketoken');
|
|
186
|
+
coin.name.should.equal('Hyperliquid EVM Testnet Faketoken');
|
|
187
|
+
coin.decimalPlaces.should.equal(18);
|
|
188
|
+
coin.tokenContractAddress.should.equal('0xabcdefabcdefabcdefabcdefabcdefabcdefabcd');
|
|
189
|
+
});
|
|
190
|
+
it('should resolve an AMS-only token on a legacy EVM family after initCoinFactory', () => {
|
|
191
|
+
bitgo.initCoinFactory(amsTokenConfig_1.reducedAmsTokenConfig);
|
|
192
|
+
const coin = bitgo.coin('tbsc:faketoken');
|
|
193
|
+
should.exist(coin);
|
|
194
|
+
coin.type.should.equal('tbsc:faketoken');
|
|
195
|
+
coin.name.should.equal('Testnet BNB fake token');
|
|
196
|
+
coin.decimalPlaces.should.equal(18);
|
|
197
|
+
coin.tokenContractAddress.should.equal('0x9876543210987654321098765432109876543210');
|
|
198
|
+
// AMS-only tokens on legacy families are registered through the family-agnostic
|
|
199
|
+
// EthLikeErc20Token, not the legacy BscToken class.
|
|
200
|
+
coin.should.be.an.instanceOf(sdk_coin_evm_1.EthLikeErc20Token);
|
|
201
|
+
});
|
|
202
|
+
it('should not flip a statics token on a legacy EVM family to the generic token class', () => {
|
|
203
|
+
bitgo.initCoinFactory(amsTokenConfig_1.reducedAmsTokenConfig);
|
|
204
|
+
const coin = bitgo.coin('bsc:solv');
|
|
205
|
+
should.exist(coin);
|
|
206
|
+
coin.should.be.an.instanceOf(sdk_coin_bsc_1.BscToken);
|
|
207
|
+
});
|
|
147
208
|
});
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGVzdC92Mi91bml0L2Ftcy9hbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBa0M7QUFDbEMsNkJBQThCO0FBRTlCLDhDQUErQztBQUMvQyw4Q0FBNEM7QUFDNUMseUNBQXNEO0FBQ3RELG1FQUF1RTtBQUV2RSxRQUFRLENBQUMsd0JBQXdCLEVBQUUsR0FBRyxFQUFFO0lBQ3RDLE1BQU0sZ0JBQWdCLEdBQUcsdUJBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFDbEQsSUFBSSxLQUFLLENBQUM7SUFDVixNQUFNLENBQUM7UUFDTCxLQUFLLEdBQUcsb0JBQVMsQ0FBQyxRQUFRLENBQUMsV0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFrQixDQUFDLENBQUM7UUFDbkcsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsdURBQXVELEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDckUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxzQ0FBcUIsQ0FBQyxDQUFDO1FBQzdDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMzQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsb0JBQW9CLENBQUMs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Q0FBQyxRQUFRLENBQUMsV0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFrQixDQUFDLENBQUM7WUFDekcsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDM0IsTUFBTSxLQUFLLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3ZDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDckMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQywyRkFBMkYsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN6RyxLQUFLLENBQUMsZUFBZSxDQUFDLHNDQUFxQixDQUFDLENBQUM7UUFDN0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNyQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHNob3VsZCA9IHJlcXVpcmUoJ3Nob3VsZCcpO1xuaW1wb3J0IG5vY2sgPSByZXF1aXJlKCdub2NrJyk7XG5cbmltcG9ydCB7IEVudmlyb25tZW50cyB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBUZXN0Qml0R28gfSBmcm9tICdAYml0Z28vc2RrLXRlc3QnO1xuaW1wb3J0IHsgQml0R28sIEJpdEdvT3B0aW9ucyB9IGZyb20gJy4uLy4uLy4uLy4uL3NyYyc7XG5pbXBvcnQgeyByZWR1Y2VkQW1zVG9rZW5Db25maWcgfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvYW1zVG9rZW5Db25maWcnO1xuXG5kZXNjcmliZSgnQXNzZXQgbWV0YWRhdGEgc2VydmljZScsICgpID0+IHtcbiAgY29uc3QgbWljcm9zZXJ2aWNlc1VyaSA9IEVudmlyb25tZW50c1snbW9jayddLnVyaTtcbiAgbGV0IGJpdGdvO1xuICBiZWZvcmUoZnVuY3Rpb24gKCkge1xuICAgIGJpdGdvID0gVGVzdEJpdEdvLmRlY29yYXRlKEJpdEdvLCB7IGVudjogJ21vY2snLCBtaWNyb3NlcnZpY2VzVXJpLCB1c2VBbXM6IHRydWUgfSBhcyBCaXRHb09wdGlvbnMpO1xuICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGNyZWF0ZSBhIGN1c3RvbSBjb2luIGZhY3RvcnkgZnJvbSBhbXMgcmVzcG9uc2UnLCBhc3luYyAoKSA9PiB7XG4gICAgYml0Z28uaW5pdENvaW5GYWN0b3J5KHJlZHVjZWRBbXNUb2tlbkNvbmZpZyk7XG4gICAgY29uc3QgY29pbiA9IGJpdGdvLmNvaW4oJ2h0ZXRoOmZha2V0b2tlbicpO1xuICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgICBjb2luLnR5cGUuc2hvdWxkLmVxdWFsKCdodGV0aDpmYWtldG9rZW4nKTtcbiAgICBjb2luLm5hbWUuc2hvdWxkLmVxdWFsKCdIb29kaSBUZXN0bmV0IGZha2UgdG9rZW4nKTtcbiAgICBjb2luLmRlY2ltYWxQbGFjZXMuc2hvdWxkLmVxdWFsKDYpO1xuICAgIGNvaW4udG9rZW5Db250cmFjdEFkZHJlc3Muc2hvdWxkLmVxdWFsKCcweDg5YTk1OWI5MTg0YjRmOGM4NjMzNjQ2ZDVkZmQwNDlkMmViYzk4M2EnKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBub3QgZmV0Y2ggY29pbiBmcm9tIGN1c3RvbSBjb2luIGZhY3Rvcnkgd2hlbiB1c2VBbXMgaXMgZmFsc2UnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgYml0Z29Ob0FtcyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiBmYWxzZSB9IGFzIGFueSk7XG4gICAgYml0Z29Ob0Ftcy5pbml0aWFsaXplVGVzdFZhcnMoKTtcbiAgICBiaXRnb05vQW1zLmluaXRDb2luRmFjdG9yeShyZWR1Y2VkQW1zVG9rZW5Db25maWcpO1xuICAgICgoKSA9PiB7XG4gICAgICBiaXRnb05vQW1zLmNvaW4oJ2h0ZXRoOmZha2V0b2tlbicpO1xuICAgIH0pLnNob3VsZC50aHJvdyhcbiAgICAgICdDb2luIG9yIHRva2VuIHR5cGUgaHRldGg6ZmFrZXRva2VuIG5vdCBzdXBwb3J0ZWQgb3Igbm90IGNvbXBpbGVkLiBQbGVhc2UgYmUgc3VyZSB0aGF0IHlvdSBhcmUgdXNpbmcgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIEJpdEdvSlMuIElmIHVzaW5nIEBiaXRnby9zZGstYXBpLCBwbGVhc2UgY29uZmlybSB5b3UgaGF2ZSByZWdpc3RlcmVkIGh0ZXRoOmZha2V0b2tlbiBmaXJzdC4nXG4gICAgKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBiZSBhYmxlIHRvIHJlZ2lzdGVyIGEgdG9rZW4gaW4gdGhlIGNvaW4gZmFjdG9yeScsICgpID0+IHtcbiAgICBjb25zdCB0b2tlbk5hbWUgPSAnaHRldGg6ZmFrZXRva2VuJztcbiAgICBiaXRnby5yZWdpc3RlclRva2VuKHRva2VuTmFtZSk7XG4gICAgY29uc3QgY29pbiA9IGJpdGdvLmNvaW4odG9rZW5OYW1lKTtcbiAgICBzaG91bGQuZXhpc3QoY29pbik7XG4gICAgY29pbi50eXBlLnNob3VsZC5lcXVhbCh0b2tlbk5hbWUpO1xuICAgIGNvaW4ubmFtZS5zaG91bGQuZXF1YWwoJ0hvb2RpIFRlc3RuZXQgZmFrZSB0b2tlbicpO1xuICAgIGNvaW4uZGVjaW1hbFBsYWNlcy5zaG91bGQuZXF1YWwoNik7XG4gICAgY29pbi50b2tlbkNvbnRyYWN0QWRkcmVzcy5zaG91bGQuZXF1YWwoJzB4ODlhOTU5YjkxODRiNGY4Yzg2MzM2NDZkNWRmZDA0OWQyZWJjOTgzYScpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGZldGNoIGFsbCBhc3NldHMgZnJvbSBBTVMgYW5kIGluaXRpYWxpemUgdGhlIGNvaW4gZmFjdG9yeScsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiB0cnVlIH0gYXMgQml0R29PcHRpb25zKTtcbiAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgIC8vIFNldHVwIG5vY2tzXG4gICAgbm9jayhtaWNyb3NlcnZpY2VzVXJpKS5nZXQoJy9hcGkvdjEvYXNzZXRzL2xpc3QvdGVzdG5ldCcpLnJlcGx5KDIwMCwgcmVkdWNlZEFtc1Rva2VuQ29uZmlnKTtcblxuICAgIGF3YWl0IGJpdGdvLnJlZ2lzdGVyQWxsVG9rZW5zKCk7XG4gICAgY29uc3QgY29pbiA9IGJpdGdvLmNvaW4oJ2h0ZXRoOmZha2V0b2tlbicpO1xuICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlZ2lzdGVyVG9rZW4nLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCB0aHJvdyBhbiBlcnJvciB3aGVuIHVzZUFtcyBpcyBmYWxzZScsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJpdGdvTm9BbXMgPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogZmFsc2UgfSBhcyBCaXRHb09wdGlvbnMpO1xuICAgICAgYml0Z29Ob0Ftcy5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgICAgYXdhaXQgYml0Z29Ob0Ftc1xuICAgICAgICAucmVnaXN0ZXJUb2tlbignaHRldGg6ZmFrZXRva2VuJylcbiAgICAgICAgLnNob3VsZC5iZS5yZWplY3RlZFdpdGgoJ3JlZ2lzdGVyVG9rZW4gaXMgb25seSBzdXBwb3J0ZWQgd2hlbiB1c2VBbXMgaXMgc2V0IHRvIHRydWUnKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmVnaXN0ZXIgYSB0b2tlbiBmcm9tIHN0YXRpY3MgbGlicmFyeSBpZiBhdmFpbGFibGUnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiB0cnVlIH0gYXMgQml0R29PcHRpb25zKTtcbiAgICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuICAgICAgYXdhaXQgYml0Z28ucmVnaXN0ZXJUb2tlbignaHRldGg6YmdlcmNodjInKTtcbiAgICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKCdodGV0aDpiZ2VyY2h2MicpO1xuICAgICAgc2hvdWxkLmV4aXN0KGNvaW4pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBmZXRjaCB0b2tlbiBpbmZvcm1hdGlvbiBmcm9tIEFNUyBpZiBub3QgaW4gc3RhdGljcyBsaWJyYXJ5JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogdHJ1ZSB9IGFzIEJpdEdvT3B0aW9ucyk7XG4gICAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgICAgY29uc3QgdG9rZW5OYW1lID0gJ2h0ZXRoOmZha2V0b2tlbic7XG5cbiAgICAgIC8vIFNldHVwIG5vY2tzXG4gICAgICBub2NrKG1pY3Jvc2VydmljZXNVcmkpLmdldChgL2FwaS92MS9hc3NldHMvbmFtZS8ke3Rva2VuTmFtZX1gKS5yZXBseSgyMDAsIHJlZHVjZWRBbXNUb2tlbkNvbmZpZ1t0b2tlbk5hbWVdWzBdKTtcblxuICAgICAgYXdhaXQgYml0Z28ucmVnaXN0ZXJUb2tlbih0b2tlbk5hbWUpO1xuICAgICAgY29uc3QgY29pbiA9IGJpdGdvLmNvaW4odG9rZW5OYW1lKTtcbiAgICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYmUgYWJsZSB0byByZWdpc3RlciB0aGUgb2ZjIHRva2VuJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogdHJ1ZSB9IGFzIEJpdEdvT3B0aW9ucyk7XG4gICAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgICAgY29uc3QgdG9rZW5OYW1lID0gJ29mYyc7XG5cbiAgICAgIGF3YWl0IGJpdGdvLnJlZ2lzdGVyVG9rZW4odG9rZW5OYW1lKTtcbiAgICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKHRva2VuTmFtZSk7XG4gICAgICBzaG91bGQuZXhpc3QoY29pbik7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJlZ2lzdGVyIGEgRVZNIGNvaW4gdG9rZW4gZnJvbSBzdGF0aWNzIGxpYnJhcnkgaWYgYXZhaWxhYmxlJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogdHJ1ZSB9IGFzIEJpdEdvT3B0aW9ucyk7XG4gICAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcbiAgICAgIGF3YWl0IGJpdGdvLnJlZ2lzdGVyVG9rZW4oJ3RpcDp1c2RjJyk7XG4gICAgICBjb25zdCBjb2luID0gYml0Z28uY29pbigndGlwOnVzZGMnKTtcbiAgICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmVnaXN0ZXIgYW4gRVZNIGNvaW4gdG9rZW4gZnJvbSBBTVMnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiB0cnVlIH0gYXMgQml0R29PcHRpb25zKTtcbiAgICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuXG4gICAgICBjb25zdCB0b2tlbk5hbWUgPSAndGlwOmZha2V0b2tlbic7XG5cbiAgICAgIC8vIFNldHVwIG5vY2tzIGZvciBBTVMgQVBJIGNhbGxcbiAgICAgIG5vY2sobWljcm9zZXJ2aWNlc1VyaSkuZ2V0KGAvYXBpL3YxL2Fzc2V0cy9uYW1lLyR7dG9rZW5OYW1lfWApLnJlcGx5KDIwMCwgcmVkdWNlZEFtc1Rva2VuQ29uZmlnW3Rva2VuTmFtZV1bMF0pO1xuXG4gICAgICBhd2FpdCBiaXRnby5yZWdpc3RlclRva2VuKHRva2VuTmFtZSk7XG4gICAgICBjb25zdCBjb2luID0gYml0Z28uY29pbih0b2tlbk5hbWUpO1xuICAgICAgc2hvdWxkLmV4aXN0KGNvaW4pO1xuICAgICAgY29pbi50eXBlLnNob3VsZC5lcXVhbCh0b2tlbk5hbWUpO1xuICAgICAgY29uc3Qgc3RhdGljc0NvaW4gPSBjb2luLmdldENvbmZpZygpO1xuICAgICAgc3RhdGljc0NvaW4ubmFtZS5zaG91bGQuZXF1YWwoJ3RpcCcpO1xuICAgICAgc3RhdGljc0NvaW4uZGVjaW1hbFBsYWNlcy5zaG91bGQuZXF1YWwoMTgpO1xuICAgICAgLy8gRm9yIEVWTSB0b2tlbnMsIGNvbnRyYWN0QWRkcmVzcyBpcyBhdmFpbGFibGUgb24gdGhlIHN0YXRpY3MgY29pblxuICAgICAgaWYgKCdjb250cmFjdEFkZHJlc3MnIGluIHN0YXRpY3NDb2luICYmIHN0YXRpY3NDb2luLmNvbnRyYWN0QWRkcmVzcykge1xuICAgICAgICAoc3RhdGljc0NvaW4uY29udHJhY3RBZGRyZXNzIGFzIHN0cmluZykuc2hvdWxkLmVxdWFsKCcweDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAnKTtcbiAgICAgIH1cbiAgICAgIHN0YXRpY3NDb2luLmZhbWlseS5zaG91bGQuZXF1YWwoJ2lwJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJlZ2lzdGVyIGEgdGh5cGVldm0gRVZNIGNvaW4gdG9rZW4gZnJvbSBBTVMnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiB0cnVlIH0gYXMgQml0R29PcHRpb25zKTtcbiAgICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuXG4gICAgICBjb25zdCB0b2tlbk5hbWUgPSAndGh5cGVldm06ZmFrZXRva2VuJztcblxuICAgICAgLy8gU2V0dXAgbm9ja3MgZm9yIEFNUyBBUEkgY2FsbFxuICAgICAgbm9jayhtaWNyb3NlcnZpY2VzVXJpKS5nZXQoYC9hcGkvdjEvYXNzZXRzL25hbWUvJHt0b2tlbk5hbWV9YCkucmVwbHkoMjAwLCByZWR1Y2VkQW1zVG9rZW5Db25maWdbdG9rZW5OYW1lXVswXSk7XG5cbiAgICAgIGF3YWl0IGJpdGdvLnJlZ2lzdGVyVG9rZW4odG9rZW5OYW1lKTtcbiAgICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKHRva2VuTmFtZSk7XG4gICAgICBzaG91bGQuZXhpc3QoY29pbik7XG4gICAgICBjb2luLnR5cGUuc2hvdWxkLmVxdWFsKHRva2VuTmFtZSk7XG4gICAgICBjb25zdCBzdGF0aWNzQ29pbiA9IGNvaW4uZ2V0Q29uZmlnKCk7XG4gICAgICBzdGF0aWNzQ29pbi5uYW1lLnNob3VsZC5lcXVhbCgndGh5cGVldm0nKTtcbiAgICAgIHN0YXRpY3NDb2luLmRlY2ltYWxQbGFjZXMuc2hvdWxkLmVxdWFsKDE4KTtcbiAgICAgIC8vIEZvciBFVk0gdG9rZW5zLCBjb250cmFjdEFkZHJlc3MgaXMgYXZhaWxhYmxlIG9uIHRoZSBzdGF0aWNzIGNvaW5cbiAgICAgIGlmICgnY29udHJhY3RBZGRyZXNzJyBpbiBzdGF0aWNzQ29pbiAmJiBzdGF0aWNzQ29pbi5jb250cmFjdEFkZHJlc3MpIHtcbiAgICAgICAgKHN0YXRpY3NDb2luLmNvbnRyYWN0QWRkcmVzcyBhcyBzdHJpbmcpLnNob3VsZC5lcXVhbCgnMHhhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkJyk7XG4gICAgICB9XG4gICAgICBzdGF0aWNzQ29pbi5mYW1pbHkuc2hvdWxkLmVxdWFsKCdoeXBlZXZtJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJlZ2lzdGVyIGEgU09MIHRva2VuIGZyb20gc3RhdGljcyBsaWJyYXJ5IGlmIGF2YWlsYWJsZScsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJpdGdvID0gVGVzdEJpdEdvLmRlY29yYXRlKEJpdEdvLCB7IGVudjogJ21vY2snLCBtaWNyb3NlcnZpY2VzVXJpLCB1c2VBbXM6IHRydWUgfSBhcyBCaXRHb09wdGlvbnMpO1xuICAgICAgYml0Z28uaW5pdGlhbGl6ZVRlc3RWYXJzKCk7XG4gICAgICBhd2FpdCBiaXRnby5yZWdpc3RlclRva2VuKCd0c29sOnVzZGMnKTtcbiAgICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKCd0c29sOnVzZGMnKTtcbiAgICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgICAgIGNvaW4udHlwZS5zaG91bGQuZXF1YWwoJ3Rzb2w6dXNkYycpO1xuICAgICAgY29pbi5nZXRCYXNlRmFjdG9yKCkuc2hvdWxkLmVxdWFsKDFlOSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgY3JlYXRlIGEgY3VzdG9tIGNvaW4gZmFjdG9yeSBmcm9tIGFtcyByZXNwb25zZSBhbmQgaW5jbHVkZSBTT0wgdG9rZW5zIGZyb20gc3RhdGljcycsIGFzeW5jICgpID0+IHtcbiAgICBiaXRnby5pbml0Q29pbkZhY3RvcnkocmVkdWNlZEFtc1Rva2VuQ29uZmlnKTtcbiAgICBjb25zdCBjb2luID0gYml0Z28uY29pbigndHNvbDp1c2RjJyk7XG4gICAgc2hvdWxkLmV4aXN0KGNvaW4pO1xuICAgIGNvaW4udHlwZS5zaG91bGQuZXF1YWwoJ3Rzb2w6dXNkYycpO1xuICAgIGNvaW4uZ2V0QmFzZUZhY3RvcigpLnNob3VsZC5lcXVhbCgxZTkpO1xuICB9KTtcbn0pO1xuIl19
|
|
209
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGVzdC92Mi91bml0L2Ftcy9hbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBa0M7QUFDbEMsNkJBQThCO0FBRTlCLDhDQUErQztBQUMvQyw4Q0FBNEM7QUFDNUMseUNBQXNEO0FBQ3RELG1FQUF1RTtBQUN2RSxzREFBNEU7QUFDNUUsc0RBQStDO0FBRS9DLFFBQVEsQ0FBQyx3QkFBd0IsRUFBRSxHQUFHLEVBQUU7SUFDdEMsTUFBTSxnQkFBZ0IsR0FBRyx1QkFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUNsRCxJQUFJLEtBQUssQ0FBQztJQUNWLE1BQU0sQ0FBQztRQUNMLEtBQUssR0FBRyxvQkFBUyxDQUFDLFFBQVEsQ0FBQyxXQUFLLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQWtCLENBQUMsQ0FBQztRQUNuRyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM3QixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx1REFBdUQsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNyRSxLQUFLLENBQUMsZUFBZSxDQUFDLHNDQUFxQixDQUFDLENBQUM7UUFDN0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzNDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FB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N0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNwQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsdUJBQVEsQ0FBQyxDQUFDO0lBQ3pDLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc2hvdWxkID0gcmVxdWlyZSgnc2hvdWxkJyk7XG5pbXBvcnQgbm9jayA9IHJlcXVpcmUoJ25vY2snKTtcblxuaW1wb3J0IHsgRW52aXJvbm1lbnRzIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IFRlc3RCaXRHbyB9IGZyb20gJ0BiaXRnby9zZGstdGVzdCc7XG5pbXBvcnQgeyBCaXRHbywgQml0R29PcHRpb25zIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3JjJztcbmltcG9ydCB7IHJlZHVjZWRBbXNUb2tlbkNvbmZpZyB9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9hbXNUb2tlbkNvbmZpZyc7XG5pbXBvcnQgeyBFdGhMaWtlRXJjMjBUb2tlbiwgRXRoTGlrZUVyYzcyMVRva2VuIH0gZnJvbSAnQGJpdGdvL3Nkay1jb2luLWV2bSc7XG5pbXBvcnQgeyBCc2NUb2tlbiB9IGZyb20gJ0BiaXRnby9zZGstY29pbi1ic2MnO1xuXG5kZXNjcmliZSgnQXNzZXQgbWV0YWRhdGEgc2VydmljZScsICgpID0+IHtcbiAgY29uc3QgbWljcm9zZXJ2aWNlc1VyaSA9IEVudmlyb25tZW50c1snbW9jayddLnVyaTtcbiAgbGV0IGJpdGdvO1xuICBiZWZvcmUoZnVuY3Rpb24gKCkge1xuICAgIGJpdGdvID0gVGVzdEJpdEdvLmRlY29yYXRlKEJpdEdvLCB7IGVudjogJ21vY2snLCBtaWNyb3NlcnZpY2VzVXJpLCB1c2VBbXM6IHRydWUgfSBhcyBCaXRHb09wdGlvbnMpO1xuICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGNyZWF0ZSBhIGN1c3RvbSBjb2luIGZhY3RvcnkgZnJvbSBhbXMgcmVzcG9uc2UnLCBhc3luYyAoKSA9PiB7XG4gICAgYml0Z28uaW5pdENvaW5GYWN0b3J5KHJlZHVjZWRBbXNUb2tlbkNvbmZpZyk7XG4gICAgY29uc3QgY29pbiA9IGJpdGdvLmNvaW4oJ2h0ZXRoOmZha2V0b2tlbicpO1xuICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgICBjb2luLnR5cGUuc2hvdWxkLmVxdWFsKCdodGV0aDpmYWtldG9rZW4nKTtcbiAgICBjb2luLm5hbWUuc2hvdWxkLmVxdWFsKCdIb29kaSBUZXN0bmV0IGZha2UgdG9rZW4nKTtcbiAgICBjb2luLmRlY2ltYWxQbGFjZXMuc2hvdWxkLmVxdWFsKDYpO1xuICAgIGNvaW4udG9rZW5Db250cmFjdEFkZHJlc3Muc2hvdWxkLmVxdWFsKCcweDg5YTk1OWI5MTg0YjRmOGM4NjMzNjQ2ZDVkZmQwNDlkMmViYzk4M2EnKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBub3QgZmV0Y2ggY29pbiBmcm9tIGN1c3RvbSBjb2luIGZhY3Rvcnkgd2hlbiB1c2VBbXMgaXMgZmFsc2UnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgYml0Z29Ob0FtcyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiBmYWxzZSB9IGFzIGFueSk7XG4gICAgYml0Z29Ob0Ftcy5pbml0aWFsaXplVGVzdFZhcnMoKTtcbiAgICBiaXRnb05vQW1zLmluaXRDb2luRmFjdG9yeShyZWR1Y2VkQW1zVG9rZW5Db25maWcpO1xuICAgICgoKSA9PiB7XG4gICAgICBiaXRnb05vQW1zLmNvaW4oJ2h0ZXRoOmZha2V0b2tlbicpO1xuICAgIH0pLnNob3VsZC50aHJvdyhcbiAgICAgICdDb2luIG9yIHRva2VuIHR5cGUgaHRldGg6ZmFrZXRva2VuIG5vdCBzdXBwb3J0ZWQgb3Igbm90IGNvbXBpbGVkLiBQbGVhc2UgYmUgc3VyZSB0aGF0IHlvdSBhcmUgdXNpbmcgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIEJpdEdvSlMuIElmIHVzaW5nIEBiaXRnby9zZGstYXBpLCBwbGVhc2UgY29uZmlybSB5b3UgaGF2ZSByZWdpc3RlcmVkIGh0ZXRoOmZha2V0b2tlbiBmaXJzdC4nXG4gICAgKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBiZSBhYmxlIHRvIHJlZ2lzdGVyIGEgdG9rZW4gaW4gdGhlIGNvaW4gZmFjdG9yeScsICgpID0+IHtcbiAgICBjb25zdCB0b2tlbk5hbWUgPSAnaHRldGg6ZmFrZXRva2VuJztcbiAgICBiaXRnby5yZWdpc3RlclRva2VuKHRva2VuTmFtZSk7XG4gICAgY29uc3QgY29pbiA9IGJpdGdvLmNvaW4odG9rZW5OYW1lKTtcbiAgICBzaG91bGQuZXhpc3QoY29pbik7XG4gICAgY29pbi50eXBlLnNob3VsZC5lcXVhbCh0b2tlbk5hbWUpO1xuICAgIGNvaW4ubmFtZS5zaG91bGQuZXF1YWwoJ0hvb2RpIFRlc3RuZXQgZmFrZSB0b2tlbicpO1xuICAgIGNvaW4uZGVjaW1hbFBsYWNlcy5zaG91bGQuZXF1YWwoNik7XG4gICAgY29pbi50b2tlbkNvbnRyYWN0QWRkcmVzcy5zaG91bGQuZXF1YWwoJzB4ODlhOTU5YjkxODRiNGY4Yzg2MzM2NDZkNWRmZDA0OWQyZWJjOTgzYScpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGZldGNoIGFsbCBhc3NldHMgZnJvbSBBTVMgYW5kIGluaXRpYWxpemUgdGhlIGNvaW4gZmFjdG9yeScsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiB0cnVlIH0gYXMgQml0R29PcHRpb25zKTtcbiAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgIC8vIFNldHVwIG5vY2tzXG4gICAgbm9jayhtaWNyb3NlcnZpY2VzVXJpKS5nZXQoJy9hcGkvdjEvYXNzZXRzL2xpc3QvdGVzdG5ldCcpLnJlcGx5KDIwMCwgcmVkdWNlZEFtc1Rva2VuQ29uZmlnKTtcblxuICAgIGF3YWl0IGJpdGdvLnJlZ2lzdGVyQWxsVG9rZW5zKCk7XG4gICAgY29uc3QgY29pbiA9IGJpdGdvLmNvaW4oJ2h0ZXRoOmZha2V0b2tlbicpO1xuICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlZ2lzdGVyVG9rZW4nLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCB0aHJvdyBhbiBlcnJvciB3aGVuIHVzZUFtcyBpcyBmYWxzZScsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJpdGdvTm9BbXMgPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogZmFsc2UgfSBhcyBCaXRHb09wdGlvbnMpO1xuICAgICAgYml0Z29Ob0Ftcy5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgICAgYXdhaXQgYml0Z29Ob0Ftc1xuICAgICAgICAucmVnaXN0ZXJUb2tlbignaHRldGg6ZmFrZXRva2VuJylcbiAgICAgICAgLnNob3VsZC5iZS5yZWplY3RlZFdpdGgoJ3JlZ2lzdGVyVG9rZW4gaXMgb25seSBzdXBwb3J0ZWQgd2hlbiB1c2VBbXMgaXMgc2V0IHRvIHRydWUnKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmVnaXN0ZXIgYSB0b2tlbiBmcm9tIHN0YXRpY3MgbGlicmFyeSBpZiBhdmFpbGFibGUnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiB0cnVlIH0gYXMgQml0R29PcHRpb25zKTtcbiAgICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuICAgICAgYXdhaXQgYml0Z28ucmVnaXN0ZXJUb2tlbignaHRldGg6YmdlcmNodjInKTtcbiAgICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKCdodGV0aDpiZ2VyY2h2MicpO1xuICAgICAgc2hvdWxkLmV4aXN0KGNvaW4pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBmZXRjaCB0b2tlbiBpbmZvcm1hdGlvbiBmcm9tIEFNUyBpZiBub3QgaW4gc3RhdGljcyBsaWJyYXJ5JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogdHJ1ZSB9IGFzIEJpdEdvT3B0aW9ucyk7XG4gICAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgICAgY29uc3QgdG9rZW5OYW1lID0gJ2h0ZXRoOmZha2V0b2tlbic7XG5cbiAgICAgIC8vIFNldHVwIG5vY2tzXG4gICAgICBub2NrKG1pY3Jvc2VydmljZXNVcmkpLmdldChgL2FwaS92MS9hc3NldHMvbmFtZS8ke3Rva2VuTmFtZX1gKS5yZXBseSgyMDAsIHJlZHVjZWRBbXNUb2tlbkNvbmZpZ1t0b2tlbk5hbWVdWzBdKTtcblxuICAgICAgYXdhaXQgYml0Z28ucmVnaXN0ZXJUb2tlbih0b2tlbk5hbWUpO1xuICAgICAgY29uc3QgY29pbiA9IGJpdGdvLmNvaW4odG9rZW5OYW1lKTtcbiAgICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYmUgYWJsZSB0byByZWdpc3RlciB0aGUgb2ZjIHRva2VuJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogdHJ1ZSB9IGFzIEJpdEdvT3B0aW9ucyk7XG4gICAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgICAgY29uc3QgdG9rZW5OYW1lID0gJ29mYyc7XG5cbiAgICAgIGF3YWl0IGJpdGdvLnJlZ2lzdGVyVG9rZW4odG9rZW5OYW1lKTtcbiAgICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKHRva2VuTmFtZSk7XG4gICAgICBzaG91bGQuZXhpc3QoY29pbik7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJlZ2lzdGVyIGEgRVZNIGNvaW4gdG9rZW4gZnJvbSBzdGF0aWNzIGxpYnJhcnkgaWYgYXZhaWxhYmxlJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogdHJ1ZSB9IGFzIEJpdEdvT3B0aW9ucyk7XG4gICAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcbiAgICAgIGF3YWl0IGJpdGdvLnJlZ2lzdGVyVG9rZW4oJ3RpcDp1c2RjJyk7XG4gICAgICBjb25zdCBjb2luID0gYml0Z28uY29pbigndGlwOnVzZGMnKTtcbiAgICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmVnaXN0ZXIgYW4gRVZNIGNvaW4gdG9rZW4gZnJvbSBBTVMnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiB0cnVlIH0gYXMgQml0R29PcHRpb25zKTtcbiAgICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuXG4gICAgICBjb25zdCB0b2tlbk5hbWUgPSAndGlwOmZha2V0b2tlbic7XG5cbiAgICAgIC8vIFNldHVwIG5vY2tzIGZvciBBTVMgQVBJIGNhbGxcbiAgICAgIG5vY2sobWljcm9zZXJ2aWNlc1VyaSkuZ2V0KGAvYXBpL3YxL2Fzc2V0cy9uYW1lLyR7dG9rZW5OYW1lfWApLnJlcGx5KDIwMCwgcmVkdWNlZEFtc1Rva2VuQ29uZmlnW3Rva2VuTmFtZV1bMF0pO1xuXG4gICAgICBhd2FpdCBiaXRnby5yZWdpc3RlclRva2VuKHRva2VuTmFtZSk7XG4gICAgICBjb25zdCBjb2luID0gYml0Z28uY29pbih0b2tlbk5hbWUpO1xuICAgICAgc2hvdWxkLmV4aXN0KGNvaW4pO1xuICAgICAgY29pbi50eXBlLnNob3VsZC5lcXVhbCh0b2tlbk5hbWUpO1xuICAgICAgY29uc3Qgc3RhdGljc0NvaW4gPSBjb2luLmdldENvbmZpZygpO1xuICAgICAgc3RhdGljc0NvaW4ubmFtZS5zaG91bGQuZXF1YWwoJ3RpcCcpO1xuICAgICAgc3RhdGljc0NvaW4uZGVjaW1hbFBsYWNlcy5zaG91bGQuZXF1YWwoMTgpO1xuICAgICAgLy8gRm9yIEVWTSB0b2tlbnMsIGNvbnRyYWN0QWRkcmVzcyBpcyBhdmFpbGFibGUgb24gdGhlIHN0YXRpY3MgY29pblxuICAgICAgaWYgKCdjb250cmFjdEFkZHJlc3MnIGluIHN0YXRpY3NDb2luICYmIHN0YXRpY3NDb2luLmNvbnRyYWN0QWRkcmVzcykge1xuICAgICAgICAoc3RhdGljc0NvaW4uY29udHJhY3RBZGRyZXNzIGFzIHN0cmluZykuc2hvdWxkLmVxdWFsKCcweDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAnKTtcbiAgICAgIH1cbiAgICAgIHN0YXRpY3NDb2luLmZhbWlseS5zaG91bGQuZXF1YWwoJ2lwJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJlZ2lzdGVyIGEgdGh5cGVldm0gRVZNIGNvaW4gdG9rZW4gZnJvbSBBTVMnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiB0cnVlIH0gYXMgQml0R29PcHRpb25zKTtcbiAgICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuXG4gICAgICBjb25zdCB0b2tlbk5hbWUgPSAndGh5cGVldm06ZmFrZXRva2VuJztcblxuICAgICAgLy8gU2V0dXAgbm9ja3MgZm9yIEFNUyBBUEkgY2FsbFxuICAgICAgbm9jayhtaWNyb3NlcnZpY2VzVXJpKS5nZXQoYC9hcGkvdjEvYXNzZXRzL25hbWUvJHt0b2tlbk5hbWV9YCkucmVwbHkoMjAwLCByZWR1Y2VkQW1zVG9rZW5Db25maWdbdG9rZW5OYW1lXVswXSk7XG5cbiAgICAgIGF3YWl0IGJpdGdvLnJlZ2lzdGVyVG9rZW4odG9rZW5OYW1lKTtcbiAgICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKHRva2VuTmFtZSk7XG4gICAgICBzaG91bGQuZXhpc3QoY29pbik7XG4gICAgICBjb2luLnR5cGUuc2hvdWxkLmVxdWFsKHRva2VuTmFtZSk7XG4gICAgICBjb25zdCBzdGF0aWNzQ29pbiA9IGNvaW4uZ2V0Q29uZmlnKCk7XG4gICAgICBzdGF0aWNzQ29pbi5uYW1lLnNob3VsZC5lcXVhbCgndGh5cGVldm0nKTtcbiAgICAgIHN0YXRpY3NDb2luLmRlY2ltYWxQbGFjZXMuc2hvdWxkLmVxdWFsKDE4KTtcbiAgICAgIC8vIEZvciBFVk0gdG9rZW5zLCBjb250cmFjdEFkZHJlc3MgaXMgYXZhaWxhYmxlIG9uIHRoZSBzdGF0aWNzIGNvaW5cbiAgICAgIGlmICgnY29udHJhY3RBZGRyZXNzJyBpbiBzdGF0aWNzQ29pbiAmJiBzdGF0aWNzQ29pbi5jb250cmFjdEFkZHJlc3MpIHtcbiAgICAgICAgKHN0YXRpY3NDb2luLmNvbnRyYWN0QWRkcmVzcyBhcyBzdHJpbmcpLnNob3VsZC5lcXVhbCgnMHhhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkJyk7XG4gICAgICB9XG4gICAgICBzdGF0aWNzQ29pbi5mYW1pbHkuc2hvdWxkLmVxdWFsKCdoeXBlZXZtJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJlZ2lzdGVyIGFuIEFNUy1vbmx5IHRva2VuIG9uIGEgbmV3LWdlbiBFVk0gZmFtaWx5IHZpYSB0aGUgbGF6eSBwYXRoJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogdHJ1ZSB9IGFzIEJpdEdvT3B0aW9ucyk7XG4gICAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgICAgY29uc3QgdG9rZW5OYW1lID0gJ3RoeXBlZXZtOmZha2V0b2tlbic7XG5cbiAgICAgIC8vIFNldHVwIG5vY2tzIGZvciBBTVMgQVBJIGNhbGxcbiAgICAgIG5vY2sobWljcm9zZXJ2aWNlc1VyaSkuZ2V0KGAvYXBpL3YxL2Fzc2V0cy9uYW1lLyR7dG9rZW5OYW1lfWApLnJlcGx5KDIwMCwgcmVkdWNlZEFtc1Rva2VuQ29uZmlnW3Rva2VuTmFtZV1bMF0pO1xuXG4gICAgICBhd2FpdCBiaXRnby5yZWdpc3RlclRva2VuKHRva2VuTmFtZSk7XG4gICAgICBjb25zdCBjb2luID0gYml0Z28uY29pbih0b2tlbk5hbWUpO1xuICAgICAgc2hvdWxkLmV4aXN0KGNvaW4pO1xuICAgICAgY29pbi50eXBlLnNob3VsZC5lcXVhbCh0b2tlbk5hbWUpO1xuICAgICAgKGNvaW4gYXMgRXRoTGlrZUVyYzIwVG9rZW4pLnRva2VuQ29udHJhY3RBZGRyZXNzLnNob3VsZC5lcXVhbCgnMHhhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkZWZhYmNkJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJlZ2lzdGVyIGEgc3RhdGljcyBFUkM3MjEgdG9rZW4gb24gYSBkdWFsLXN0YW5kYXJkIEVWTSBmYW1pbHkgdmlhIHRoZSBsYXp5IHBhdGgnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHbywgeyBlbnY6ICdtb2NrJywgbWljcm9zZXJ2aWNlc1VyaSwgdXNlQW1zOiB0cnVlIH0gYXMgQml0R29PcHRpb25zKTtcbiAgICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuXG4gICAgICBjb25zdCB0b2tlbk5hbWUgPSAnZXJjNzIxOmhiYXJldm10b2tlbic7XG4gICAgICBhd2FpdCBiaXRnby5yZWdpc3RlclRva2VuKHRva2VuTmFtZSk7XG4gICAgICBjb25zdCBjb2luID0gYml0Z28uY29pbih0b2tlbk5hbWUpO1xuICAgICAgc2hvdWxkLmV4aXN0KGNvaW4pO1xuICAgICAgY29pbi50eXBlLnNob3VsZC5lcXVhbCh0b2tlbk5hbWUpO1xuICAgICAgY29pbi5zaG91bGQuYmUuYW4uaW5zdGFuY2VPZihFdGhMaWtlRXJjNzIxVG9rZW4pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCByZWdpc3RlciBhIHRlc3RuZXQgRVJDNzIxIHRva2VuIG9uIGEgZHVhbC1zdGFuZGFyZCBFVk0gZmFtaWx5IHZpYSB0aGUgbGF6eSBwYXRoJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R28sIHsgZW52OiAnbW9jaycsIG1pY3Jvc2VydmljZXNVcmksIHVzZUFtczogdHJ1ZSB9IGFzIEJpdEdvT3B0aW9ucyk7XG4gICAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcblxuICAgICAgY29uc3QgdG9rZW5OYW1lID0gJ3RoYmFyZXZtOnRtbmZ0JztcbiAgICAgIGF3YWl0IGJpdGdvLnJlZ2lzdGVyVG9rZW4odG9rZW5OYW1lKTtcbiAgICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKHRva2VuTmFtZSk7XG4gICAgICBzaG91bGQuZXhpc3QoY29pbik7XG4gICAgICBjb2luLnR5cGUuc2hvdWxkLmVxdWFsKHRva2VuTmFtZSk7XG4gICAgICBjb2luLnNob3VsZC5iZS5hbi5pbnN0YW5jZU9mKEV0aExpa2VFcmM3MjFUb2tlbik7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJlZ2lzdGVyIGEgU09MIHRva2VuIGZyb20gc3RhdGljcyBsaWJyYXJ5IGlmIGF2YWlsYWJsZScsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGJpdGdvID0gVGVzdEJpdEdvLmRlY29yYXRlKEJpdEdvLCB7IGVudjogJ21vY2snLCBtaWNyb3NlcnZpY2VzVXJpLCB1c2VBbXM6IHRydWUgfSBhcyBCaXRHb09wdGlvbnMpO1xuICAgICAgYml0Z28uaW5pdGlhbGl6ZVRlc3RWYXJzKCk7XG4gICAgICBhd2FpdCBiaXRnby5yZWdpc3RlclRva2VuKCd0c29sOnVzZGMnKTtcbiAgICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKCd0c29sOnVzZGMnKTtcbiAgICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgICAgIGNvaW4udHlwZS5zaG91bGQuZXF1YWwoJ3Rzb2w6dXNkYycpO1xuICAgICAgY29pbi5nZXRCYXNlRmFjdG9yKCkuc2hvdWxkLmVxdWFsKDFlOSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgY3JlYXRlIGEgY3VzdG9tIGNvaW4gZmFjdG9yeSBmcm9tIGFtcyByZXNwb25zZSBhbmQgaW5jbHVkZSBTT0wgdG9rZW5zIGZyb20gc3RhdGljcycsIGFzeW5jICgpID0+IHtcbiAgICBiaXRnby5pbml0Q29pbkZhY3RvcnkocmVkdWNlZEFtc1Rva2VuQ29uZmlnKTtcbiAgICBjb25zdCBjb2luID0gYml0Z28uY29pbigndHNvbDp1c2RjJyk7XG4gICAgc2hvdWxkLmV4aXN0KGNvaW4pO1xuICAgIGNvaW4udHlwZS5zaG91bGQuZXF1YWwoJ3Rzb2w6dXNkYycpO1xuICAgIGNvaW4uZ2V0QmFzZUZhY3RvcigpLnNob3VsZC5lcXVhbCgxZTkpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJlc29sdmUgYW4gQU1TLW9ubHkgdG9rZW4gb24gYSBuZXctZ2VuIEVWTSBmYW1pbHkgYWZ0ZXIgaW5pdENvaW5GYWN0b3J5JywgKCkgPT4ge1xuICAgIGJpdGdvLmluaXRDb2luRmFjdG9yeShyZWR1Y2VkQW1zVG9rZW5Db25maWcpO1xuICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKCd0aHlwZWV2bTpmYWtldG9rZW4nKTtcbiAgICBzaG91bGQuZXhpc3QoY29pbik7XG4gICAgY29pbi50eXBlLnNob3VsZC5lcXVhbCgndGh5cGVldm06ZmFrZXRva2VuJyk7XG4gICAgY29pbi5uYW1lLnNob3VsZC5lcXVhbCgnSHlwZXJsaXF1aWQgRVZNIFRlc3RuZXQgRmFrZXRva2VuJyk7XG4gICAgY29pbi5kZWNpbWFsUGxhY2VzLnNob3VsZC5lcXVhbCgxOCk7XG4gICAgY29pbi50b2tlbkNvbnRyYWN0QWRkcmVzcy5zaG91bGQuZXF1YWwoJzB4YWJjZGVmYWJjZGVmYWJjZGVmYWJjZGVmYWJjZGVmYWJjZGVmYWJjZCcpO1xuICB9KTtcbiAgaXQoJ3Nob3VsZCByZXNvbHZlIGFuIEFNUy1vbmx5IHRva2VuIG9uIGEgbGVnYWN5IEVWTSBmYW1pbHkgYWZ0ZXIgaW5pdENvaW5GYWN0b3J5JywgKCkgPT4ge1xuICAgIGJpdGdvLmluaXRDb2luRmFjdG9yeShyZWR1Y2VkQW1zVG9rZW5Db25maWcpO1xuICAgIGNvbnN0IGNvaW4gPSBiaXRnby5jb2luKCd0YnNjOmZha2V0b2tlbicpO1xuICAgIHNob3VsZC5leGlzdChjb2luKTtcbiAgICBjb2luLnR5cGUuc2hvdWxkLmVxdWFsKCd0YnNjOmZha2V0b2tlbicpO1xuICAgIGNvaW4ubmFtZS5zaG91bGQuZXF1YWwoJ1Rlc3RuZXQgQk5CIGZha2UgdG9rZW4nKTtcbiAgICBjb2luLmRlY2ltYWxQbGFjZXMuc2hvdWxkLmVxdWFsKDE4KTtcbiAgICBjb2luLnRva2VuQ29udHJhY3RBZGRyZXNzLnNob3VsZC5lcXVhbCgnMHg5ODc2NTQzMjEwOTg3NjU0MzIxMDk4NzY1NDMyMTA5ODc2NTQzMjEwJyk7XG4gICAgLy8gQU1TLW9ubHkgdG9rZW5zIG9uIGxlZ2FjeSBmYW1pbGllcyBhcmUgcmVnaXN0ZXJlZCB0aHJvdWdoIHRoZSBmYW1pbHktYWdub3N0aWNcbiAgICAvLyBFdGhMaWtlRXJjMjBUb2tlbiwgbm90IHRoZSBsZWdhY3kgQnNjVG9rZW4gY2xhc3MuXG4gICAgY29pbi5zaG91bGQuYmUuYW4uaW5zdGFuY2VPZihFdGhMaWtlRXJjMjBUb2tlbik7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgbm90IGZsaXAgYSBzdGF0aWNzIHRva2VuIG9uIGEgbGVnYWN5IEVWTSBmYW1pbHkgdG8gdGhlIGdlbmVyaWMgdG9rZW4gY2xhc3MnLCAoKSA9PiB7XG4gICAgYml0Z28uaW5pdENvaW5GYWN0b3J5KHJlZHVjZWRBbXNUb2tlbkNvbmZpZyk7XG4gICAgY29uc3QgY29pbiA9IGJpdGdvLmNvaW4oJ2JzYzpzb2x2Jyk7XG4gICAgc2hvdWxkLmV4aXN0KGNvaW4pO1xuICAgIGNvaW4uc2hvdWxkLmJlLmFuLmluc3RhbmNlT2YoQnNjVG9rZW4pO1xuICB9KTtcbn0pO1xuIl19
|