@bitgo-beta/sdk-coin-ada 2.2.3-alpha.251 → 2.2.3-alpha.252
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":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAuB,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAQL,IAAI,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAuB,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAQL,IAAI,EAIJ,OAAO,EAGR,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,eAAO,MAAM,qBAAqB,YAAY,CAAC;AAC/C,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AACpD,eAAO,MAAM,yBAAyB,yBAAyB,CAAC;AAEhE,qBAAa,KAAM,YAAW,SAAS;IACrC,uCAAuC,CACrC,YAAY,EAAE,OAAO,EACrB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,aAAa,GACrB,MAAM;IAiCT,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAUtC,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAcjE,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAStC,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAuCvC,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAWrC,kBAAkB;IAElB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IA0CxC,kBAAkB;IAClB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIrC,kBAAkB;IAClB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAKvC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAShC,kBAAkB;IAClB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IASzC,kBAAkB;IAClB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAS5C,kBAAkB;IAClB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3C;;;;OAIG;IACH,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAQhD;;;;;;OAMG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAqB1C;;;;;;OAMG;IACH,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;CAoB3C;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAE1B,eAAe,KAAK,CAAC"}
|
package/dist/src/lib/utils.js
CHANGED
|
@@ -5,6 +5,7 @@ const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
|
5
5
|
const cardano_serialization_lib_nodejs_1 = require("@emurgo/cardano-serialization-lib-nodejs");
|
|
6
6
|
const keyPair_1 = require("./keyPair");
|
|
7
7
|
const bech32_1 = require("bech32");
|
|
8
|
+
const cardano_serialization_lib_browser_1 = require("@emurgo/cardano-serialization-lib-browser");
|
|
8
9
|
exports.MIN_ADA_FOR_ONE_ASSET = '1500000';
|
|
9
10
|
exports.VOTE_ALWAYS_ABSTAIN = 'always-abstain';
|
|
10
11
|
exports.VOTE_ALWAYS_NO_CONFIDENCE = 'always-no-confidence';
|
|
@@ -139,8 +140,8 @@ class Utils {
|
|
|
139
140
|
}
|
|
140
141
|
//Check for Byron-era address
|
|
141
142
|
try {
|
|
142
|
-
console.log('ByronAddress in SDK:',
|
|
143
|
-
return
|
|
143
|
+
console.log('ByronAddress in SDK:', cardano_serialization_lib_browser_1.ByronAddress);
|
|
144
|
+
return cardano_serialization_lib_browser_1.ByronAddress.is_valid(address);
|
|
144
145
|
}
|
|
145
146
|
catch (e) {
|
|
146
147
|
console.log(`Address: ${address} failed Byron test with error: ${e}`);
|
|
@@ -222,7 +223,7 @@ class Utils {
|
|
|
222
223
|
}
|
|
223
224
|
// Try decoding as a Byron (base58) address later
|
|
224
225
|
try {
|
|
225
|
-
return
|
|
226
|
+
return cardano_serialization_lib_browser_1.ByronAddress.from_base58(address).to_address();
|
|
226
227
|
}
|
|
227
228
|
catch (e) {
|
|
228
229
|
console.error(`Could not decode byron address from string '${address}'`);
|
|
@@ -245,7 +246,7 @@ class Utils {
|
|
|
245
246
|
return address.to_bech32();
|
|
246
247
|
}
|
|
247
248
|
// If not Shelley, try Byron
|
|
248
|
-
const byronAddress =
|
|
249
|
+
const byronAddress = cardano_serialization_lib_browser_1.ByronAddress.from_address(address);
|
|
249
250
|
if (byronAddress) {
|
|
250
251
|
return byronAddress.to_base58();
|
|
251
252
|
}
|
|
@@ -256,4 +257,4 @@ class Utils {
|
|
|
256
257
|
exports.Utils = Utils;
|
|
257
258
|
const utils = new Utils();
|
|
258
259
|
exports.default = utils;
|
|
259
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFxRjtBQUNyRiwrRkFnQmtEO0FBQ2xELHVDQUFvQztBQUNwQyxtQ0FBZ0M7QUFFbkIsUUFBQSxxQkFBcUIsR0FBRyxTQUFTLENBQUM7QUFDbEMsUUFBQSxtQkFBbUIsR0FBRyxnQkFBZ0IsQ0FBQztBQUN2QyxRQUFBLHlCQUF5QixHQUFHLHNCQUFzQixDQUFDO0FBRWhFLE1BQWEsS0FBSztJQUNoQix1Q0FBdUMsQ0FDckMsWUFBcUIsRUFDckIsY0FBdUIsRUFDdkIsT0FBc0I7UUFFdEIsSUFBSSxRQUFRLENBQUM7UUFDYixJQUFJLE9BQU8sS0FBSyx3QkFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3RDLHlCQUF5QjtZQUN6QixNQUFNLEdBQUcsR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDO1lBRXZDLE1BQU0sUUFBUSxHQUFHLDRDQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDL0QsMkJBQTJCO1lBQzNCLE1BQU0sVUFBVSxHQUFHLDRDQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQzFGLDBDQUEwQztZQUMxQyxRQUFRLEdBQUcsOENBQVcsQ0FBQyxHQUFHLENBQ3hCLDhDQUFXLENBQUMsT0FBTyxFQUFFLENBQUMsVUFBVSxFQUFFLEVBQ2xDLDZDQUFVLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUMxQyw2Q0FBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FDekMsQ0FBQztZQUNGLE9B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UUFFRCw0QkFBNEI7UUFDNUIsTUFBTSxZQUFZLEdBQUcsK0NBQVksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEQsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixPQUFPLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsQyxDQUFDO1FBRUQsMkJBQTJCO1FBQzNCLE1BQU0sSUFBSSw4QkFBbUIsQ0FBQywwREFBMEQsQ0FBQyxDQUFDO0lBQzVGLENBQUM7Q0FDRjtBQXRSRCxzQkFzUkM7QUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO0FBRTFCLGtCQUFlLEtBQUssQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFkZHJlc3NGb3JtYXQsIEJhc2VVdGlscywgSW52YWxpZEFkZHJlc3NFcnJvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7XG4gIEJhc2VBZGRyZXNzLFxuICBQdWJsaWNLZXksXG4gIEVkMjU1MTlTaWduYXR1cmUsXG4gIE5ldHdvcmtJbmZvLFxuICBDcmVkZW50aWFsLFxuICBSZXdhcmRBZGRyZXNzLFxuICBUcmFuc2FjdGlvbiBhcyBDYXJkYW5vVHJhbnNhY3Rpb24sXG4gIERSZXAsXG4gIEVkMjU1MTlLZXlIYXNoLFxuICBTY3JpcHRIYXNoLFxuICBEUmVwS2luZCxcbiAgQnlyb25BZGRyZXNzLFxuICBBZGRyZXNzLFxuICBFbnRlcnByaXNlQWRkcmVzcyxcbiAgUG9pbnRlckFkZHJlc3MsXG59IGZyb20gJ0BlbXVyZ28vY2FyZGFuby1zZXJpYWxpemF0aW9uLWxpYi1ub2RlanMnO1xuaW1wb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5pbXBvcnQgeyBiZWNoMzIgfSBmcm9tICdiZWNoMzInO1xuXG5leHBvcnQgY29uc3QgTUlOX0FEQV9GT1JfT05FX0FTU0VUID0gJzE1MDAwMDAnO1xuZXhwb3J0IGNvbnN0IFZPVEVfQUxXQVlTX0FCU1RBSU4gPSAnYWx3YXlzLWFic3RhaW4nO1xuZXhwb3J0IGNvbnN0IFZPVEVfQUxXQVlTX05PX0NPTkZJREVOQ0UgPSAnYWx3YXlzLW5vLWNvbmZpZGVuY2UnO1xuXG5leHBvcnQgY2xhc3MgVXRpbHMgaW1wbGVtZW50cyBCYXNlVXRpbHMge1xuICBjcmVhdGVCYXNlQWRkcmVzc1dpdGhTdGFrZUFuZFBheW1lbnRLZXkoXG4gICAgc3Rha2VLZXlQYWlyOiBLZXlQYWlyLFxuICAgIHBheW1lbnRLZXlQYWlyOiBLZXlQYWlyLFxuICAgIG5ldHdvcms6IEFkZHJlc3NGb3JtYXRcbiAgKTogc3RyaW5nIHtcbiAgICBsZXQgYmFzZUFkZHI7XG4gICAgaWYgKG5ldHdvcmsgPT09IEFkZHJlc3NGb3JtYXQubWFpbm5ldCkge1xuICAgICAgLy8gMS4gY3JlYXRlIHN0YWtlIHB1YktleVxuICAgICAgY29uc3Qga2V5ID0gc3Rha2VLZXlQYWlyLmdldEtleXMoKS5wdWI7XG5cbiAgICAgIGNvbnN0IHN0YWtlUHViID0gUHVibGljS2V5LmZyb21fYnl0ZXMoQnVmZmVyLmZyb20oa2V5LCAnaGV4JykpO1xuICAgICAgLy8gMi4gY3JlYXRlIHBheW1lbnQgcHViS2V5XG4gICAgICBjb25zdCBwYXltZW50UHViID0gUHVibGljS2V5LmZyb21fYnl0ZXMoQnVmZmVyLmZyb20ocGF5bWVudEtleVBhaXIuZ2V0S2V5cygpLnB1YiwgJ2hleCcpKTtcbiAgICAgIC8vIDMuIGNyZWF0ZSBmdWxsIGJhc2UgYWRkcmVzcyBmb3Igc3Rha2luZ1xuICAgICAgYmFzZUFkZHIgPSBCYXNlQWRkcmVzcy5uZXcoXG4gICAgICAgIE5ldHdvcmtJbmZvLm1haW5uZXQoKS5uZXR3b3JrX2lkKCksXG4gICAgICAgIENyZWRlbnRpYWwuZnJvbV9rZXloYXNoKHBheW1lbnRQdWIuaGFzaCgpKSxcbiAgICAgICAgQ3JlZGVudGlhbC5mcm9tX2tleWhhc2goc3Rha2VQdWIuaGFzaCgpKVxuICAgICAgKTtcbiAgICAgIHJldHVybiBiYXNlQWRkci50b19hZGRyZXNzKCkudG9fYmVjaDMyKCk7XG4gICAgfSBlbHNlIGlmIChuZXR3b3JrID09PSBBZGRyZXNzRm9ybWF0LnRlc3RuZXQpIHtcbiAgICAgIC8vIDEuIGNyZWF0ZSBzdGFrZSBwdWJLZXlcbiAgICAgIGNvbnN0IHN0YWtlUHViID0gUHVibGljS2V5LmZyb21fYnl0ZXMoQnVmZmVyLmZyb20oc3Rha2VLZXlQYWlyLmdldEtleXMoKS5wdWIsICdoZXgnKSk7XG4gICAgICAvLyAyLiBjcmVhdGUgcGF5bWVudCBwdWJLZXlcbiAgICAgIGNvbnN0IHBheW1lbnRQdWIgPSBQdWJsaWNLZXkuZnJvbV9ieXRlcyhCdWZmZXIuZnJvbShwYXltZW50S2V5UGFpci5nZXRLZXlzKCkucHViLCAnaGV4JykpO1xuICAgICAgLy8gMy4gY3JlYXRlIGZ1bGwgYmFzZSBhZGRyZXNzIGZvciBzdGFraW5nXG4gICAgICBjb25zdCBiYXNlQWRkciA9IEJhc2VBZGRyZXNzLm5ldyhcbiAgICAgICAgTmV0d29ya0luZm8udGVzdG5ldF9wcmVwcm9kKCkubmV0d29ya19pZCgpLFxuICAgICAgICBDcmVkZW50aWFsLmZyb21fa2V5aGFzaChwYXltZW50UHViLmhhc2goKSksXG4gICAgICAgIENyZWRlbnRpYWwuZnJvbV9rZXloYXNoKHN0YWtlUHViLmhhc2goKSlcbiAgICAgICk7XG4gICAgICByZXR1cm4gYmFzZUFkZHIudG9fYWRkcmVzcygpLnRvX2JlY2gzMigpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ltcHJvcGVyIE5ldHdvcmsgVHlwZSEnKTtcbiAgICB9XG4gIH1cblxuICB2YWxpZGF0ZUJsYWtlMmIoaGFzaDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKCFoYXNoKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmIChoYXNoLmxlbmd0aCAhPT0gNjQpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIGhhc2gubWF0Y2goL15bYS16QS1aMC05XSskLykgIT09IG51bGw7XG4gIH1cblxuICBnZXRSZXdhcmRBZGRyZXNzKHN0YWtpbmdQdWJLZXk6IHN0cmluZywgY29pbk5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3Qgc3Rha2VQdWIgPSBQdWJsaWNLZXkuZnJvbV9ieXRlcyhCdWZmZXIuZnJvbShzdGFraW5nUHViS2V5LCAnaGV4JykpO1xuICAgIGxldCByZXdhcmRBZGRyZXNzO1xuICAgIGlmIChjb2luTmFtZSA9PT0gJ2FkYScpIHtcbiAgICAgIHJld2FyZEFkZHJlc3MgPSBSZXdhcmRBZGRyZXNzLm5ldyhOZXR3b3JrSW5mby5tYWlubmV0KCkubmV0d29ya19pZCgpLCBDcmVkZW50aWFsLmZyb21fa2V5aGFzaChzdGFrZVB1Yi5oYXNoKCkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV3YXJkQWRkcmVzcyA9IFJld2FyZEFkZHJlc3MubmV3KFxuICAgICAgICBOZXR3b3JrSW5mby50ZXN0bmV0X3ByZXByb2QoKS5uZXR3b3JrX2lkKCksXG4gICAgICAgIENyZWRlbnRpYWwuZnJvbV9rZXloYXNoKHN0YWtlUHViLmhhc2goKSlcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXdhcmRBZGRyZXNzLnRvX2FkZHJlc3MoKS50b19iZWNoMzIoKTtcbiAgfVxuXG4gIGlzVmFsaWREUmVwSWQoZFJlcElkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5nZXREUmVwRnJvbURSZXBJZChkUmVwSWQpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgZ2V0RFJlcEZyb21EUmVwSWQoZFJlcElkOiBzdHJpbmcpOiBEUmVwIHtcbiAgICBzd2l0Y2ggKGRSZXBJZCkge1xuICAgICAgY2FzZSAnYWx3YXlzLWFic3RhaW4nOlxuICAgICAgICByZXR1cm4gRFJlcC5uZXdfYWx3YXlzX2Fic3RhaW4oKTtcbiAgICAgIGNhc2UgJ2Fsd2F5cy1uby1jb25maWRlbmNlJzpcbiAgICAgICAgcmV0dXJuIERSZXAubmV3X2Fsd2F5c19ub19jb25maWRlbmNlKCk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIGZvciBwYXJzaW5nIENJUC0xMDUgc3RhbmRhcmQgRFJlcCBJRFxuICAgICAgICAgIHJldHVybiBEUmVwLmZyb21fYmVjaDMyKGRSZXBJZCk7XG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgIC8vIGZvciBwYXJzaW5nIENJUC0xMjkgc3RhbmRhcmQgRFJlcCBJRFxuICAgICAgICAgIC8vIGh0dHBzOi8vY2lwcy5jYXJkYW5vLm9yZy9jaXAvQ0lQLTAxMjlcbiAgICAgICAgICBjb25zdCBkZWNvZGVkQmVjaDMyID0gYmVjaDMyLmRlY29kZShkUmVwSWQpO1xuICAgICAgICAgIGNvbnN0IGRlY29kZWRCeXRlcyA9IEJ1ZmZlci5mcm9tKGJlY2gzMi5mcm9tV29yZHMoZGVjb2RlZEJlY2gzMi53b3JkcykpO1xuICAgICAgICAgIGNvbnN0IGhlYWRlciA9IGRlY29kZWRCeXRlc1swXTtcbiAgICAgICAgICBjb25zdCBrZXlCeXRlcyA9IGRlY29kZWRCeXRlcy5zdWJhcnJheSgxKTtcblxuICAgICAgICAgIGNvbnN0IGtleVR5cGUgPSAoaGVhZGVyICYgMHhmMCkgPj4gNDtcbiAgICAgICAgICBjb25zdCBjcmVkZW50aWFsVHlwZSA9IGhlYWRlciAmIDB4MGY7XG5cbiAgICAgICAgICBpZiAoa2V5VHlwZSAhPT0gMHgwMikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGtleSB0eXBlIGZvciBEUmVwJyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3dpdGNoIChjcmVkZW50aWFsVHlwZSkge1xuICAgICAgICAgICAgY2FzZSAweDAyOlxuICAgICAgICAgICAgICBjb25zdCBlZDI1NTE5S2V5SGFzaCA9IEVkMjU1MTlLZXlIYXNoLmZyb21fYnl0ZXMoa2V5Qnl0ZXMpO1xuICAgICAgICAgICAgICByZXR1cm4gRFJlcC5uZXdfa2V5X2hhc2goZWQyNTUxOUtleUhhc2gpO1xuICAgICAgICAgICAgY2FzZSAweDAzOlxuICAgICAgICAgICAgICBjb25zdCBzY3JpcHRIYXNoID0gU2NyaXB0SGFzaC5mcm9tX2J5dGVzKGtleUJ5dGVzKTtcbiAgICAgICAgICAgICAgcmV0dXJuIERSZXAubmV3X3NjcmlwdF9oYXNoKHNjcmlwdEhhc2gpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNyZWRlbnRpYWwgdHlwZSBmb3IgRFJlcCcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldERSZXBJZEZyb21EUmVwKGRSZXA6IERSZXApOiBzdHJpbmcge1xuICAgIHN3aXRjaCAoZFJlcC5raW5kKCkpIHtcbiAgICAgIGNhc2UgRFJlcEtpbmQuQWx3YXlzQWJzdGFpbjpcbiAgICAgICAgcmV0dXJuIFZPVEVfQUxXQVlTX0FCU1RBSU47XG4gICAgICBjYXNlIERSZXBLaW5kLkFsd2F5c05vQ29uZmlkZW5jZTpcbiAgICAgICAgcmV0dXJuIFZPVEVfQUxXQVlTX05PX0NPTkZJREVOQ0U7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gZFJlcC50b19iZWNoMzIoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgLy8gdGhpcyB3aWxsIHZhbGlkYXRlIGJvdGggc3Rha2UgYW5kIHBheW1lbnQgYWRkcmVzc2VzXG4gIGlzVmFsaWRBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGJlY2gzMlByZWZpeExpc3QgPSBbJ2FkZHInLCAnYWRkcl90ZXN0JywgJ3N0YWtlJywgJ3N0YWtlX3Rlc3QnXTtcbiAgICBjb25zdCBCQVNFX0FERFJfTEVOID0gOTI7XG4gICAgY29uc3QgUkVXQVJEX0FORF9FTlRFUlBSSVNFX0FERFJfTEVOID0gNDc7XG4gICAgY29uc3QgUE9JTlRFUl9BRERSX0xFTiA9IDUyO1xuICAgIGNvbnN0IFZBTElEQVRPUl9BRERSX0xFTiA9IDU2O1xuXG4gICAgLy9DaGVjayBmb3IgU2hlbGxleS1lcmEgKEJlY2gzMikgYWRkcmVzc2VzXG4gICAgaWYgKG5ldyBSZWdFeHAoYF4oJHtiZWNoMzJQcmVmaXhMaXN0LmpvaW4oJ3wnKX0pYCkudGVzdChhZGRyZXNzKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgZGVjb2RlZEJlY2ggPSBiZWNoMzIuZGVjb2RlKGFkZHJlc3MsIDEwOCk7XG4gICAgICAgIGNvbnN0IHdvcmRMZW5ndGggPSBkZWNvZGVkQmVjaC53b3Jkcy5sZW5ndGg7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBiZWNoMzJQcmVmaXhMaXN0LmluY2x1ZGVzKGRlY29kZWRCZWNoLnByZWZpeCkgJiZcbiAgICAgICAgICAod29yZExlbmd0aCA9PT0gQkFTRV9BRERSX0xFTiB8fFxuICAgICAgICAgICAgd29yZExlbmd0aCA9PT0gUkVXQVJEX0FORF9FTlRFUlBSSVNFX0FERFJfTEVOIHx8XG4gICAgICAgICAgICB3b3JkTGVuZ3RoID09PSBQT0lOVEVSX0FERFJfTEVOKVxuICAgICAgICApIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmxvZyhgQWRkcmVzczogJHthZGRyZXNzfSBmYWlsZWQgQmVjaDMyIHRlc3Qgd2l0aCBlcnJvcjogJHtlfWApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vQ2hlY2sgZm9yIFZhbGlkYXRvciBhZGRyZXNzZXNcbiAgICBpZiAobmV3IFJlZ0V4cChgXig/IXBvb2wpW2EtejAtOV17JHtWQUxJREFUT1JfQUREUl9MRU59fSRgKS50ZXN0KGFkZHJlc3MpKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvL0NoZWNrIGZvciBCeXJvbi1lcmEgYWRkcmVzc1xuICAgIHRyeSB7XG4gICAgICBjb25zb2xlLmxvZygnQnlyb25BZGRyZXNzIGluIFNESzonLCBCeXJvbkFkZHJlc3MpO1xuICAgICAgcmV0dXJuIEJ5cm9uQWRkcmVzcy5pc192YWxpZChhZGRyZXNzKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmxvZyhgQWRkcmVzczogJHthZGRyZXNzfSBmYWlsZWQgQnlyb24gdGVzdCB3aXRoIGVycm9yOiAke2V9YCk7XG4gICAgICBjb25zb2xlLmxvZyhlLnN0YWNrKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZEJsb2NrSWQoaGFzaDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWRhdGVCbGFrZTJiKGhhc2gpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRQcml2YXRlS2V5KGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgLy8gdGhpcyB3aWxsIHJldHVybiB0cnVlIGZvciBib3RoIGV4dGVuZGVkIGFuZCBub24tZXh0ZW5kZWQgRUQyNTUxOSBrZXlzXG4gICAgcmV0dXJuIHRoaXMuaXNWYWxpZEtleShrZXkpO1xuICB9XG5cbiAgaXNWYWxpZEtleShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRyeSB7XG4gICAgICBuZXcgS2V5UGFpcih7IHBydjoga2V5IH0pO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBjYXRjaCB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRQdWJsaWNLZXkocHViS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgbmV3IEtleVBhaXIoeyBwdWI6IHB1YktleSB9KTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkU2lnbmF0dXJlKHNpZ25hdHVyZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgdHJ5IHtcbiAgICAgIEVkMjU1MTlTaWduYXR1cmUuZnJvbV9oZXgoc2lnbmF0dXJlKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkVHJhbnNhY3Rpb25JZCh0eElkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUJsYWtlMmIodHhJZCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSB0cmFuc2FjdGlvbiBib2R5IGZyb20gYSBzZXJpYWxpemVkIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzZXJpYWxpemVkVHggLSBzZXJpYWxpemVkIHRyYW5zYWN0aW9uIGluIGhleCBvciBiYXNlNjQgZm9ybWF0XG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IHRyYW5zYWN0aW9uIGJvZHkgaW4gaGV4IGZvcm1hdFxuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25Cb2R5KHNlcmlhbGl6ZWRUeDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBIRVhfUkVHRVggPSAvXlswLTlhLWZBLUZdKyQvO1xuICAgIGNvbnN0IGJ1ZmZlclJhd1RyYW5zYWN0aW9uID0gSEVYX1JFR0VYLnRlc3Qoc2VyaWFsaXplZFR4KVxuICAgICAgPyBCdWZmZXIuZnJvbShzZXJpYWxpemVkVHgsICdoZXgnKVxuICAgICAgOiBCdWZmZXIuZnJvbShzZXJpYWxpemVkVHgsICdiYXNlNjQnKTtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oQ2FyZGFub1RyYW5zYWN0aW9uLmZyb21fYnl0ZXMoYnVmZmVyUmF3VHJhbnNhY3Rpb24pLmJvZHkoKS50b19ieXRlcygpKS50b1N0cmluZygnaGV4Jyk7XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIHdhbGxldCBhZGRyZXNzIGZyb20gc3RyaW5nLlxuICAgKiBBdHRlbXB0cyB0byBkZWNvZGUgYXMgU2hlbGxleSAoYmVjaDMyKSBmaXJzdCwgdGhlbiBCeXJvbiAoYmFzZTU4KS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3MgLSBWYWxpZCBCeXJvbiBvciBTaGVsbGV5LWVyYSBhZGRyZXNzLlxuICAgKiBAcmV0dXJucyB7QWRkcmVzc30gLSBWYWxpZCBhZGRyZXNzIG9iamVjdC5cbiAgICogQHRocm93cyB7SW52YWxpZEFkZHJlc3NFcnJvcn0gSWYgdGhlIGFkZHJlc3MgaXMgbmVpdGhlciB2YWxpZCBTaGVsbGV5IG5vciBCeXJvbi5cbiAgICovXG4gIGdldFdhbGxldEFkZHJlc3MoYWRkcmVzczogc3RyaW5nKTogQWRkcmVzcyB7XG4gICAgaWYgKCFhZGRyZXNzIHx8IHR5cGVvZiBhZGRyZXNzICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBZGRyZXNzRXJyb3IoJ1Byb3ZpZGVkIGFkZHJlc3MgaXMgbm90IGEgdmFsaWQgc3RyaW5nJyk7XG4gICAgfVxuXG4gICAgLy8gVHJ5IGRlY29kaW5nIGFzIGEgU2hlbGxleSAoYmVjaDMyKSBhZGRyZXNzIGZpcnN0XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBBZGRyZXNzLmZyb21fYmVjaDMyKGFkZHJlc3MpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYENvdWxkIG5vdCBkZWNvZGUgc2hlbGx5IGFkZHJlc3MgZnJvbSBzdHJpbmcgJyR7YWRkcmVzc30nYCk7XG4gICAgfVxuXG4gICAgLy8gVHJ5IGRlY29kaW5nIGFzIGEgQnlyb24gKGJhc2U1OCkgYWRkcmVzcyBsYXRlclxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gQnlyb25BZGRyZXNzLmZyb21fYmFzZTU4KGFkZHJlc3MpLnRvX2FkZHJlc3MoKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBDb3VsZCBub3QgZGVjb2RlIGJ5cm9uIGFkZHJlc3MgZnJvbSBzdHJpbmcgJyR7YWRkcmVzc30nYCk7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkQWRkcmVzc0Vycm9yKCdQcm92aWRlZCBzdHJpbmcgaXMgbm90IGEgdmFsaWQgU2hlbGxleSBvciBCeXJvbiBhZGRyZXNzJyk7XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGFkZHJlc3Mgc3RyaW5nIGZyb20gQWRkcmVzcyBvYmplY3QuXG4gICAqIEF0dGVtcHRzIHRvIGRlY29kZSBhcyBTaGVsbGV5IChiZWNoMzIpIGZpcnN0LCB0aGVuIEJ5cm9uIChiYXNlNTgpLlxuICAgKiBAcGFyYW0ge0FkZHJlc3N9IGFkZHJlc3MgLSBWYWxpZCBBZGRyZXNzIG9iamVjdFxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSAtIFZhbGlkIEJ5cm9uIG9yIFNoZWxsZXktZXJhIGFkZHJlc3Mgc3RyaW5nLlxuICAgKiBAdGhyb3dzIHtJbnZhbGlkQWRkcmVzc0Vycm9yfSBJZiB0aGUgQWRkcmVzcyBvYmplY3QgaXMgbmVpdGhlciB2YWxpZCBTaGVsbGV5IG5vciBCeXJvbi5cbiAgICovXG4gIGdldEFkZHJlc3NTdHJpbmcoYWRkcmVzczogQWRkcmVzcyk6IHN0cmluZyB7XG4gICAgLy8gQ2hlY2sgYWxsIFNoZWxsZXkgYWRkcmVzcyB0eXBlc1xuICAgIGlmIChcbiAgICAgIEJhc2VBZGRyZXNzLmZyb21fYWRkcmVzcyhhZGRyZXNzKSB8fFxuICAgICAgRW50ZXJwcmlzZUFkZHJlc3MuZnJvbV9hZGRyZXNzKGFkZHJlc3MpIHx8XG4gICAgICBSZXdhcmRBZGRyZXNzLmZyb21fYWRkcmVzcyhhZGRyZXNzKSB8fFxuICAgICAgUG9pbnRlckFkZHJlc3MuZnJvbV9hZGRyZXNzKGFkZHJlc3MpXG4gICAgKSB7XG4gICAgICByZXR1cm4gYWRkcmVzcy50b19iZWNoMzIoKTtcbiAgICB9XG5cbiAgICAvLyBJZiBub3QgU2hlbGxleSwgdHJ5IEJ5cm9uXG4gICAgY29uc3QgYnlyb25BZGRyZXNzID0gQnlyb25BZGRyZXNzLmZyb21fYWRkcmVzcyhhZGRyZXNzKTtcbiAgICBpZiAoYnlyb25BZGRyZXNzKSB7XG4gICAgICByZXR1cm4gYnlyb25BZGRyZXNzLnRvX2Jhc2U1OCgpO1xuICAgIH1cblxuICAgIC8vIElmIG5laXRoZXIsIGl0J3MgaW52YWxpZFxuICAgIHRocm93IG5ldyBJbnZhbGlkQWRkcmVzc0Vycm9yKCdQcm92aWRlZCBBZGRyZXNzIGlzIG5vdCBhIHZhbGlkIFNoZWxsZXkgb3IgQnlyb24gYWRkcmVzcycpO1xuICB9XG59XG5cbmNvbnN0IHV0aWxzID0gbmV3IFV0aWxzKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHV0aWxzO1xuIl19
|
|
260
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFxRjtBQUNyRiwrRkFla0Q7QUFDbEQsdUNBQW9DO0FBQ3BDLG1DQUFnQztBQUNoQyxpR0FBeUU7QUFFNUQsUUFBQSxxQkFBcUIsR0FBRyxTQUFTLENBQUM7QUFDbEMsUUFBQSxtQkFBbUIsR0FBRyxnQkFBZ0IsQ0FBQztBQUN2QyxRQUFBLHlCQUF5QixHQUFHLHNCQUFzQixDQUFDO0FBRWhFLE1BQWEsS0FBSztJQUNoQix1Q0FBdUMsQ0FDckMsWUFBcUIsRUFDckIsY0FBdUIsRUFDdkIsT0FBc0I7UUFFdEIsSUFBSSxRQUFRLENBQUM7UUFDYixJQUFJLE9BQU8sS0FBSyx3QkFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3RDLHlCQUF5QjtZQUN6QixNQUFNLEdBQUcsR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDO1lBRXZDLE1BQU0sUUFBUSxHQUFHLDRDQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDL0QsMkJBQTJCO1lBQzNCLE1BQU0sVUFBVSxHQUFHLDRDQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQzFGLDBDQUEwQztZQUMxQyxRQUFRLEdBQUcsOENBQVcsQ0FBQyxHQUFHLENBQ3hCLDhDQUFXLENBQUMsT0FBTyxFQUFFLENBQUMsVUFBVSxFQUFFLEVBQ2xDLDZDQUFVLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUMxQyw2Q0FBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FDekMs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O1FBQzdCLENBQUM7UUFFRCw0QkFBNEI7UUFDNUIsTUFBTSxZQUFZLEdBQUcsZ0RBQVksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEQsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixPQUFPLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsQyxDQUFDO1FBRUQsMkJBQTJCO1FBQzNCLE1BQU0sSUFBSSw4QkFBbUIsQ0FBQywwREFBMEQsQ0FBQyxDQUFDO0lBQzVGLENBQUM7Q0FDRjtBQXRSRCxzQkFzUkM7QUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO0FBRTFCLGtCQUFlLEtBQUssQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFkZHJlc3NGb3JtYXQsIEJhc2VVdGlscywgSW52YWxpZEFkZHJlc3NFcnJvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7XG4gIEJhc2VBZGRyZXNzLFxuICBQdWJsaWNLZXksXG4gIEVkMjU1MTlTaWduYXR1cmUsXG4gIE5ldHdvcmtJbmZvLFxuICBDcmVkZW50aWFsLFxuICBSZXdhcmRBZGRyZXNzLFxuICBUcmFuc2FjdGlvbiBhcyBDYXJkYW5vVHJhbnNhY3Rpb24sXG4gIERSZXAsXG4gIEVkMjU1MTlLZXlIYXNoLFxuICBTY3JpcHRIYXNoLFxuICBEUmVwS2luZCxcbiAgQWRkcmVzcyxcbiAgRW50ZXJwcmlzZUFkZHJlc3MsXG4gIFBvaW50ZXJBZGRyZXNzLFxufSBmcm9tICdAZW11cmdvL2NhcmRhbm8tc2VyaWFsaXphdGlvbi1saWItbm9kZWpzJztcbmltcG9ydCB7IEtleVBhaXIgfSBmcm9tICcuL2tleVBhaXInO1xuaW1wb3J0IHsgYmVjaDMyIH0gZnJvbSAnYmVjaDMyJztcbmltcG9ydCB7IEJ5cm9uQWRkcmVzcyB9IGZyb20gJ0BlbXVyZ28vY2FyZGFuby1zZXJpYWxpemF0aW9uLWxpYi1icm93c2VyJztcblxuZXhwb3J0IGNvbnN0IE1JTl9BREFfRk9SX09ORV9BU1NFVCA9ICcxNTAwMDAwJztcbmV4cG9ydCBjb25zdCBWT1RFX0FMV0FZU19BQlNUQUlOID0gJ2Fsd2F5cy1hYnN0YWluJztcbmV4cG9ydCBjb25zdCBWT1RFX0FMV0FZU19OT19DT05GSURFTkNFID0gJ2Fsd2F5cy1uby1jb25maWRlbmNlJztcblxuZXhwb3J0IGNsYXNzIFV0aWxzIGltcGxlbWVudHMgQmFzZVV0aWxzIHtcbiAgY3JlYXRlQmFzZUFkZHJlc3NXaXRoU3Rha2VBbmRQYXltZW50S2V5KFxuICAgIHN0YWtlS2V5UGFpcjogS2V5UGFpcixcbiAgICBwYXltZW50S2V5UGFpcjogS2V5UGFpcixcbiAgICBuZXR3b3JrOiBBZGRyZXNzRm9ybWF0XG4gICk6IHN0cmluZyB7XG4gICAgbGV0IGJhc2VBZGRyO1xuICAgIGlmIChuZXR3b3JrID09PSBBZGRyZXNzRm9ybWF0Lm1haW5uZXQpIHtcbiAgICAgIC8vIDEuIGNyZWF0ZSBzdGFrZSBwdWJLZXlcbiAgICAgIGNvbnN0IGtleSA9IHN0YWtlS2V5UGFpci5nZXRLZXlzKCkucHViO1xuXG4gICAgICBjb25zdCBzdGFrZVB1YiA9IFB1YmxpY0tleS5mcm9tX2J5dGVzKEJ1ZmZlci5mcm9tKGtleSwgJ2hleCcpKTtcbiAgICAgIC8vIDIuIGNyZWF0ZSBwYXltZW50IHB1YktleVxuICAgICAgY29uc3QgcGF5bWVudFB1YiA9IFB1YmxpY0tleS5mcm9tX2J5dGVzKEJ1ZmZlci5mcm9tKHBheW1lbnRLZXlQYWlyLmdldEtleXMoKS5wdWIsICdoZXgnKSk7XG4gICAgICAvLyAzLiBjcmVhdGUgZnVsbCBiYXNlIGFkZHJlc3MgZm9yIHN0YWtpbmdcbiAgICAgIGJhc2VBZGRyID0gQmFzZUFkZHJlc3MubmV3KFxuICAgICAgICBOZXR3b3JrSW5mby5tYWlubmV0KCkubmV0d29ya19pZCgpLFxuICAgICAgICBDcmVkZW50aWFsLmZyb21fa2V5aGFzaChwYXltZW50UHViLmhhc2goKSksXG4gICAgICAgIENyZWRlbnRpYWwuZnJvbV9rZXloYXNoKHN0YWtlUHViLmhhc2goKSlcbiAgICAgICk7XG4gICAgICByZXR1cm4gYmFzZUFkZHIudG9fYWRkcmVzcygpLnRvX2JlY2gzMigpO1xuICAgIH0gZWxzZSBpZiAobmV0d29yayA9PT0gQWRkcmVzc0Zvcm1hdC50ZXN0bmV0KSB7XG4gICAgICAvLyAxLiBjcmVhdGUgc3Rha2UgcHViS2V5XG4gICAgICBjb25zdCBzdGFrZVB1YiA9IFB1YmxpY0tleS5mcm9tX2J5dGVzKEJ1ZmZlci5mcm9tKHN0YWtlS2V5UGFpci5nZXRLZXlzKCkucHViLCAnaGV4JykpO1xuICAgICAgLy8gMi4gY3JlYXRlIHBheW1lbnQgcHViS2V5XG4gICAgICBjb25zdCBwYXltZW50UHViID0gUHVibGljS2V5LmZyb21fYnl0ZXMoQnVmZmVyLmZyb20ocGF5bWVudEtleVBhaXIuZ2V0S2V5cygpLnB1YiwgJ2hleCcpKTtcbiAgICAgIC8vIDMuIGNyZWF0ZSBmdWxsIGJhc2UgYWRkcmVzcyBmb3Igc3Rha2luZ1xuICAgICAgY29uc3QgYmFzZUFkZHIgPSBCYXNlQWRkcmVzcy5uZXcoXG4gICAgICAgIE5ldHdvcmtJbmZvLnRlc3RuZXRfcHJlcHJvZCgpLm5ldHdvcmtfaWQoKSxcbiAgICAgICAgQ3JlZGVudGlhbC5mcm9tX2tleWhhc2gocGF5bWVudFB1Yi5oYXNoKCkpLFxuICAgICAgICBDcmVkZW50aWFsLmZyb21fa2V5aGFzaChzdGFrZVB1Yi5oYXNoKCkpXG4gICAgICApO1xuICAgICAgcmV0dXJuIGJhc2VBZGRyLnRvX2FkZHJlc3MoKS50b19iZWNoMzIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbXByb3BlciBOZXR3b3JrIFR5cGUhJyk7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVCbGFrZTJiKGhhc2g6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghaGFzaCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpZiAoaGFzaC5sZW5ndGggIT09IDY0KSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiBoYXNoLm1hdGNoKC9eW2EtekEtWjAtOV0rJC8pICE9PSBudWxsO1xuICB9XG5cbiAgZ2V0UmV3YXJkQWRkcmVzcyhzdGFraW5nUHViS2V5OiBzdHJpbmcsIGNvaW5OYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHN0YWtlUHViID0gUHVibGljS2V5LmZyb21fYnl0ZXMoQnVmZmVyLmZyb20oc3Rha2luZ1B1YktleSwgJ2hleCcpKTtcbiAgICBsZXQgcmV3YXJkQWRkcmVzcztcbiAgICBpZiAoY29pbk5hbWUgPT09ICdhZGEnKSB7XG4gICAgICByZXdhcmRBZGRyZXNzID0gUmV3YXJkQWRkcmVzcy5uZXcoTmV0d29ya0luZm8ubWFpbm5ldCgpLm5ldHdvcmtfaWQoKSwgQ3JlZGVudGlhbC5mcm9tX2tleWhhc2goc3Rha2VQdWIuaGFzaCgpKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJld2FyZEFkZHJlc3MgPSBSZXdhcmRBZGRyZXNzLm5ldyhcbiAgICAgICAgTmV0d29ya0luZm8udGVzdG5ldF9wcmVwcm9kKCkubmV0d29ya19pZCgpLFxuICAgICAgICBDcmVkZW50aWFsLmZyb21fa2V5aGFzaChzdGFrZVB1Yi5oYXNoKCkpXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gcmV3YXJkQWRkcmVzcy50b19hZGRyZXNzKCkudG9fYmVjaDMyKCk7XG4gIH1cblxuICBpc1ZhbGlkRFJlcElkKGRSZXBJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuZ2V0RFJlcEZyb21EUmVwSWQoZFJlcElkKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIGdldERSZXBGcm9tRFJlcElkKGRSZXBJZDogc3RyaW5nKTogRFJlcCB7XG4gICAgc3dpdGNoIChkUmVwSWQpIHtcbiAgICAgIGNhc2UgJ2Fsd2F5cy1hYnN0YWluJzpcbiAgICAgICAgcmV0dXJuIERSZXAubmV3X2Fsd2F5c19hYnN0YWluKCk7XG4gICAgICBjYXNlICdhbHdheXMtbm8tY29uZmlkZW5jZSc6XG4gICAgICAgIHJldHVybiBEUmVwLm5ld19hbHdheXNfbm9fY29uZmlkZW5jZSgpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAvLyBmb3IgcGFyc2luZyBDSVAtMTA1IHN0YW5kYXJkIERSZXAgSURcbiAgICAgICAgICByZXR1cm4gRFJlcC5mcm9tX2JlY2gzMihkUmVwSWQpO1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAvLyBmb3IgcGFyc2luZyBDSVAtMTI5IHN0YW5kYXJkIERSZXAgSURcbiAgICAgICAgICAvLyBodHRwczovL2NpcHMuY2FyZGFuby5vcmcvY2lwL0NJUC0wMTI5XG4gICAgICAgICAgY29uc3QgZGVjb2RlZEJlY2gzMiA9IGJlY2gzMi5kZWNvZGUoZFJlcElkKTtcbiAgICAgICAgICBjb25zdCBkZWNvZGVkQnl0ZXMgPSBCdWZmZXIuZnJvbShiZWNoMzIuZnJvbVdvcmRzKGRlY29kZWRCZWNoMzIud29yZHMpKTtcbiAgICAgICAgICBjb25zdCBoZWFkZXIgPSBkZWNvZGVkQnl0ZXNbMF07XG4gICAgICAgICAgY29uc3Qga2V5Qnl0ZXMgPSBkZWNvZGVkQnl0ZXMuc3ViYXJyYXkoMSk7XG5cbiAgICAgICAgICBjb25zdCBrZXlUeXBlID0gKGhlYWRlciAmIDB4ZjApID4+IDQ7XG4gICAgICAgICAgY29uc3QgY3JlZGVudGlhbFR5cGUgPSBoZWFkZXIgJiAweDBmO1xuXG4gICAgICAgICAgaWYgKGtleVR5cGUgIT09IDB4MDIpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBrZXkgdHlwZSBmb3IgRFJlcCcpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHN3aXRjaCAoY3JlZGVudGlhbFR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgMHgwMjpcbiAgICAgICAgICAgICAgY29uc3QgZWQyNTUxOUtleUhhc2ggPSBFZDI1NTE5S2V5SGFzaC5mcm9tX2J5dGVzKGtleUJ5dGVzKTtcbiAgICAgICAgICAgICAgcmV0dXJuIERSZXAubmV3X2tleV9oYXNoKGVkMjU1MTlLZXlIYXNoKTtcbiAgICAgICAgICAgIGNhc2UgMHgwMzpcbiAgICAgICAgICAgICAgY29uc3Qgc2NyaXB0SGFzaCA9IFNjcmlwdEhhc2guZnJvbV9ieXRlcyhrZXlCeXRlcyk7XG4gICAgICAgICAgICAgIHJldHVybiBEUmVwLm5ld19zY3JpcHRfaGFzaChzY3JpcHRIYXNoKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBjcmVkZW50aWFsIHR5cGUgZm9yIERSZXAnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXREUmVwSWRGcm9tRFJlcChkUmVwOiBEUmVwKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGRSZXAua2luZCgpKSB7XG4gICAgICBjYXNlIERSZXBLaW5kLkFsd2F5c0Fic3RhaW46XG4gICAgICAgIHJldHVybiBWT1RFX0FMV0FZU19BQlNUQUlOO1xuICAgICAgY2FzZSBEUmVwS2luZC5BbHdheXNOb0NvbmZpZGVuY2U6XG4gICAgICAgIHJldHVybiBWT1RFX0FMV0FZU19OT19DT05GSURFTkNFO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGRSZXAudG9fYmVjaDMyKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIC8vIHRoaXMgd2lsbCB2YWxpZGF0ZSBib3RoIHN0YWtlIGFuZCBwYXltZW50IGFkZHJlc3Nlc1xuICBpc1ZhbGlkQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBiZWNoMzJQcmVmaXhMaXN0ID0gWydhZGRyJywgJ2FkZHJfdGVzdCcsICdzdGFrZScsICdzdGFrZV90ZXN0J107XG4gICAgY29uc3QgQkFTRV9BRERSX0xFTiA9IDkyO1xuICAgIGNvbnN0IFJFV0FSRF9BTkRfRU5URVJQUklTRV9BRERSX0xFTiA9IDQ3O1xuICAgIGNvbnN0IFBPSU5URVJfQUREUl9MRU4gPSA1MjtcbiAgICBjb25zdCBWQUxJREFUT1JfQUREUl9MRU4gPSA1NjtcblxuICAgIC8vQ2hlY2sgZm9yIFNoZWxsZXktZXJhIChCZWNoMzIpIGFkZHJlc3Nlc1xuICAgIGlmIChuZXcgUmVnRXhwKGBeKCR7YmVjaDMyUHJlZml4TGlzdC5qb2luKCd8Jyl9KWApLnRlc3QoYWRkcmVzcykpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGRlY29kZWRCZWNoID0gYmVjaDMyLmRlY29kZShhZGRyZXNzLCAxMDgpO1xuICAgICAgICBjb25zdCB3b3JkTGVuZ3RoID0gZGVjb2RlZEJlY2gud29yZHMubGVuZ3RoO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgYmVjaDMyUHJlZml4TGlzdC5pbmNsdWRlcyhkZWNvZGVkQmVjaC5wcmVmaXgpICYmXG4gICAgICAgICAgKHdvcmRMZW5ndGggPT09IEJBU0VfQUREUl9MRU4gfHxcbiAgICAgICAgICAgIHdvcmRMZW5ndGggPT09IFJFV0FSRF9BTkRfRU5URVJQUklTRV9BRERSX0xFTiB8fFxuICAgICAgICAgICAgd29yZExlbmd0aCA9PT0gUE9JTlRFUl9BRERSX0xFTilcbiAgICAgICAgKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc29sZS5sb2coYEFkZHJlc3M6ICR7YWRkcmVzc30gZmFpbGVkIEJlY2gzMiB0ZXN0IHdpdGggZXJyb3I6ICR7ZX1gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvL0NoZWNrIGZvciBWYWxpZGF0b3IgYWRkcmVzc2VzXG4gICAgaWYgKG5ldyBSZWdFeHAoYF4oPyFwb29sKVthLXowLTldeyR7VkFMSURBVE9SX0FERFJfTEVOfX0kYCkudGVzdChhZGRyZXNzKSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgLy9DaGVjayBmb3IgQnlyb24tZXJhIGFkZHJlc3NcbiAgICB0cnkge1xuICAgICAgY29uc29sZS5sb2coJ0J5cm9uQWRkcmVzcyBpbiBTREs6JywgQnlyb25BZGRyZXNzKTtcbiAgICAgIHJldHVybiBCeXJvbkFkZHJlc3MuaXNfdmFsaWQoYWRkcmVzcyk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5sb2coYEFkZHJlc3M6ICR7YWRkcmVzc30gZmFpbGVkIEJ5cm9uIHRlc3Qgd2l0aCBlcnJvcjogJHtlfWApO1xuICAgICAgY29uc29sZS5sb2coZS5zdGFjayk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRCbG9ja0lkKGhhc2g6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnZhbGlkYXRlQmxha2UyYihoYXNoKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkUHJpdmF0ZUtleShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIC8vIHRoaXMgd2lsbCByZXR1cm4gdHJ1ZSBmb3IgYm90aCBleHRlbmRlZCBhbmQgbm9uLWV4dGVuZGVkIEVEMjU1MTkga2V5c1xuICAgIHJldHVybiB0aGlzLmlzVmFsaWRLZXkoa2V5KTtcbiAgfVxuXG4gIGlzVmFsaWRLZXkoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgbmV3IEtleVBhaXIoeyBwcnY6IGtleSB9KTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkUHVibGljS2V5KHB1YktleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgdHJ5IHtcbiAgICAgIG5ldyBLZXlQYWlyKHsgcHViOiBwdWJLZXkgfSk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFNpZ25hdHVyZShzaWduYXR1cmU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRyeSB7XG4gICAgICBFZDI1NTE5U2lnbmF0dXJlLmZyb21faGV4KHNpZ25hdHVyZSk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFRyYW5zYWN0aW9uSWQodHhJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWRhdGVCbGFrZTJiKHR4SWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgdHJhbnNhY3Rpb24gYm9keSBmcm9tIGEgc2VyaWFsaXplZCB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2VyaWFsaXplZFR4IC0gc2VyaWFsaXplZCB0cmFuc2FjdGlvbiBpbiBoZXggb3IgYmFzZTY0IGZvcm1hdFxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSB0cmFuc2FjdGlvbiBib2R5IGluIGhleCBmb3JtYXRcbiAgICovXG4gIGdldFRyYW5zYWN0aW9uQm9keShzZXJpYWxpemVkVHg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgSEVYX1JFR0VYID0gL15bMC05YS1mQS1GXSskLztcbiAgICBjb25zdCBidWZmZXJSYXdUcmFuc2FjdGlvbiA9IEhFWF9SRUdFWC50ZXN0KHNlcmlhbGl6ZWRUeClcbiAgICAgID8gQnVmZmVyLmZyb20oc2VyaWFsaXplZFR4LCAnaGV4JylcbiAgICAgIDogQnVmZmVyLmZyb20oc2VyaWFsaXplZFR4LCAnYmFzZTY0Jyk7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKENhcmRhbm9UcmFuc2FjdGlvbi5mcm9tX2J5dGVzKGJ1ZmZlclJhd1RyYW5zYWN0aW9uKS5ib2R5KCkudG9fYnl0ZXMoKSkudG9TdHJpbmcoJ2hleCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSB3YWxsZXQgYWRkcmVzcyBmcm9tIHN0cmluZy5cbiAgICogQXR0ZW1wdHMgdG8gZGVjb2RlIGFzIFNoZWxsZXkgKGJlY2gzMikgZmlyc3QsIHRoZW4gQnlyb24gKGJhc2U1OCkuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhZGRyZXNzIC0gVmFsaWQgQnlyb24gb3IgU2hlbGxleS1lcmEgYWRkcmVzcy5cbiAgICogQHJldHVybnMge0FkZHJlc3N9IC0gVmFsaWQgYWRkcmVzcyBvYmplY3QuXG4gICAqIEB0aHJvd3Mge0ludmFsaWRBZGRyZXNzRXJyb3J9IElmIHRoZSBhZGRyZXNzIGlzIG5laXRoZXIgdmFsaWQgU2hlbGxleSBub3IgQnlyb24uXG4gICAqL1xuICBnZXRXYWxsZXRBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IEFkZHJlc3Mge1xuICAgIGlmICghYWRkcmVzcyB8fCB0eXBlb2YgYWRkcmVzcyAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQWRkcmVzc0Vycm9yKCdQcm92aWRlZCBhZGRyZXNzIGlzIG5vdCBhIHZhbGlkIHN0cmluZycpO1xuICAgIH1cblxuICAgIC8vIFRyeSBkZWNvZGluZyBhcyBhIFNoZWxsZXkgKGJlY2gzMikgYWRkcmVzcyBmaXJzdFxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gQWRkcmVzcy5mcm9tX2JlY2gzMihhZGRyZXNzKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBDb3VsZCBub3QgZGVjb2RlIHNoZWxseSBhZGRyZXNzIGZyb20gc3RyaW5nICcke2FkZHJlc3N9J2ApO1xuICAgIH1cblxuICAgIC8vIFRyeSBkZWNvZGluZyBhcyBhIEJ5cm9uIChiYXNlNTgpIGFkZHJlc3MgbGF0ZXJcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIEJ5cm9uQWRkcmVzcy5mcm9tX2Jhc2U1OChhZGRyZXNzKS50b19hZGRyZXNzKCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5lcnJvcihgQ291bGQgbm90IGRlY29kZSBieXJvbiBhZGRyZXNzIGZyb20gc3RyaW5nICcke2FkZHJlc3N9J2ApO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgSW52YWxpZEFkZHJlc3NFcnJvcignUHJvdmlkZWQgc3RyaW5nIGlzIG5vdCBhIHZhbGlkIFNoZWxsZXkgb3IgQnlyb24gYWRkcmVzcycpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhZGRyZXNzIHN0cmluZyBmcm9tIEFkZHJlc3Mgb2JqZWN0LlxuICAgKiBBdHRlbXB0cyB0byBkZWNvZGUgYXMgU2hlbGxleSAoYmVjaDMyKSBmaXJzdCwgdGhlbiBCeXJvbiAoYmFzZTU4KS5cbiAgICogQHBhcmFtIHtBZGRyZXNzfSBhZGRyZXNzIC0gVmFsaWQgQWRkcmVzcyBvYmplY3RcbiAgICogQHJldHVybnMge3N0cmluZ30gLSBWYWxpZCBCeXJvbiBvciBTaGVsbGV5LWVyYSBhZGRyZXNzIHN0cmluZy5cbiAgICogQHRocm93cyB7SW52YWxpZEFkZHJlc3NFcnJvcn0gSWYgdGhlIEFkZHJlc3Mgb2JqZWN0IGlzIG5laXRoZXIgdmFsaWQgU2hlbGxleSBub3IgQnlyb24uXG4gICAqL1xuICBnZXRBZGRyZXNzU3RyaW5nKGFkZHJlc3M6IEFkZHJlc3MpOiBzdHJpbmcge1xuICAgIC8vIENoZWNrIGFsbCBTaGVsbGV5IGFkZHJlc3MgdHlwZXNcbiAgICBpZiAoXG4gICAgICBCYXNlQWRkcmVzcy5mcm9tX2FkZHJlc3MoYWRkcmVzcykgfHxcbiAgICAgIEVudGVycHJpc2VBZGRyZXNzLmZyb21fYWRkcmVzcyhhZGRyZXNzKSB8fFxuICAgICAgUmV3YXJkQWRkcmVzcy5mcm9tX2FkZHJlc3MoYWRkcmVzcykgfHxcbiAgICAgIFBvaW50ZXJBZGRyZXNzLmZyb21fYWRkcmVzcyhhZGRyZXNzKVxuICAgICkge1xuICAgICAgcmV0dXJuIGFkZHJlc3MudG9fYmVjaDMyKCk7XG4gICAgfVxuXG4gICAgLy8gSWYgbm90IFNoZWxsZXksIHRyeSBCeXJvblxuICAgIGNvbnN0IGJ5cm9uQWRkcmVzcyA9IEJ5cm9uQWRkcmVzcy5mcm9tX2FkZHJlc3MoYWRkcmVzcyk7XG4gICAgaWYgKGJ5cm9uQWRkcmVzcykge1xuICAgICAgcmV0dXJuIGJ5cm9uQWRkcmVzcy50b19iYXNlNTgoKTtcbiAgICB9XG5cbiAgICAvLyBJZiBuZWl0aGVyLCBpdCdzIGludmFsaWRcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFkZHJlc3NFcnJvcignUHJvdmlkZWQgQWRkcmVzcyBpcyBub3QgYSB2YWxpZCBTaGVsbGV5IG9yIEJ5cm9uIGFkZHJlc3MnKTtcbiAgfVxufVxuXG5jb25zdCB1dGlscyA9IG5ldyBVdGlscygpO1xuXG5leHBvcnQgZGVmYXVsdCB1dGlscztcbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo-beta/sdk-coin-ada",
|
|
3
|
-
"version": "2.2.3-alpha.
|
|
3
|
+
"version": "2.2.3-alpha.252",
|
|
4
4
|
"description": "BitGo SDK coin library for Ada",
|
|
5
5
|
"main": "./dist/src/index.js",
|
|
6
6
|
"types": "./dist/src/index.d.ts",
|
|
@@ -40,9 +40,9 @@
|
|
|
40
40
|
]
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@bitgo-beta/sdk-core": "2.4.1-alpha.
|
|
44
|
-
"@bitgo-beta/sdk-lib-mpc": "8.2.1-alpha.
|
|
45
|
-
"@bitgo-beta/statics": "10.0.1-alpha.
|
|
43
|
+
"@bitgo-beta/sdk-core": "2.4.1-alpha.253",
|
|
44
|
+
"@bitgo-beta/sdk-lib-mpc": "8.2.1-alpha.209",
|
|
45
|
+
"@bitgo-beta/statics": "10.0.1-alpha.253",
|
|
46
46
|
"@emurgo/cardano-serialization-lib-browser": "^12.0.1",
|
|
47
47
|
"@emurgo/cardano-serialization-lib-nodejs": "^12.0.1",
|
|
48
48
|
"bech32": "^2.0.0",
|
|
@@ -52,8 +52,8 @@
|
|
|
52
52
|
"tweetnacl": "^1.0.3"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@bitgo-beta/sdk-api": "1.6.1-alpha.
|
|
55
|
+
"@bitgo-beta/sdk-api": "1.6.1-alpha.253",
|
|
56
56
|
"@bitgo-beta/sdk-test": "^8.0.65"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "5671e0d1e270358b568a6349a83fb31392641d61"
|
|
59
59
|
}
|