@bitgo-beta/sdk-coin-eth 4.4.1-beta.1834 → 4.4.1-beta.1836
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.
|
@@ -13,6 +13,10 @@ const transactionBuilder_1 = require("@bitgo-beta/abstract-eth/test/unit/transac
|
|
|
13
13
|
describe('ETH Flush NFT Tests (from abstract-eth)', () => {
|
|
14
14
|
(0, transactionBuilder_1.runFlushNftTests)('eth', getBuilder_1.getBuilder);
|
|
15
15
|
});
|
|
16
|
+
// Run the shared FlushERC7984ForwarderToken tests from abstract-eth
|
|
17
|
+
describe('ETH FlushERC7984ForwarderToken Tests (from abstract-eth)', () => {
|
|
18
|
+
(0, transactionBuilder_1.runFlushERC7984Tests)('eth', getBuilder_1.getBuilder);
|
|
19
|
+
});
|
|
16
20
|
describe('Eth Transaction builder flush tokens (ETH-specific)', function () {
|
|
17
21
|
const defaultKeyPair = new src_1.KeyPair({
|
|
18
22
|
prv: 'FAC4D04AA0025ECF200D74BC9B5E4616E4B8338B69B61362AAAD49F76E68EF28',
|
|
@@ -278,4 +282,4 @@ describe('Eth Transaction builder flush tokens (ETH-specific)', function () {
|
|
|
278
282
|
});
|
|
279
283
|
});
|
|
280
284
|
});
|
|
281
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1c2hUb2tlbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3VuaXQvdHJhbnNhY3Rpb25CdWlsZGVyL2ZsdXNoVG9rZW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLG1EQUF1RDtBQUN2RCxzQ0FPc0I7QUFDdEIsOENBQTJDO0FBQzNDLHNEQUFzRDtBQUN0RCw4RkFBeUY7QUFFekYsbURBQW1EO0FBQ25ELFFBQVEsQ0FBQyx5Q0FBeUMsRUFBRSxHQUFHLEVBQUU7SUFDdkQsSUFBQSxxQ0FBZ0IsRUFBQyxLQUFLLEVBQUUsdUJBQVUsQ0FBQyxDQUFDO0FBQ3RDLENBQUMsQ0FBQyxDQUFDO0FBRUgsUUFBUSxDQUFDLHFEQUFxRCxFQUFFO0lBQzlELE1BQU0sY0FBYyxHQUFHLElBQUksYUFBTyxDQUFDO1FBQ2pDLEdBQUcsRUFBRSxrRUFBa0U7S0FDeEUsQ0FBQyxDQUFDO0lBWUgsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLFdBQVcsT0FBMkI7UUFDbEUsTUFBTSxTQUFTLEdBQVEsSUFBQSx1QkFBVSxFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsMEJBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU1QyxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMzQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUVELElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN2QyxTQUFTLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzlCLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcs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QyxDQUFDO2dCQUNYLFlBQVksRUFBRSw0Q0FBNEM7Z0JBQzFELGVBQWUsRUFBRSw0Q0FBNEM7YUFDOUQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHNob3VsZCBmcm9tICdzaG91bGQnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHtcbiAgRVRIVHJhbnNhY3Rpb25UeXBlLFxuICBGZWUsXG4gIGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWQsXG4gIGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWRWNCxcbiAgS2V5UGFpcixcbiAgVHJhbnNhY3Rpb24sXG59IGZyb20gJy4uLy4uLy4uL3NyYyc7XG5pbXBvcnQgeyBnZXRCdWlsZGVyIH0gZnJvbSAnLi4vZ2V0QnVpbGRlcic7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWludGVybmFsLW1vZHVsZXNcbmltcG9ydCB7IHJ1bkZsdXNoTmZ0VGVzdHMgfSBmcm9tICdAYml0Z28tYmV0YS9hYnN0cmFjdC1ldGgvdGVzdC91bml0L3RyYW5zYWN0aW9uQnVpbGRlcic7XG5cbi8vIFJ1biB0aGUgc2hhcmVkIGZsdXNoIE5GVCB0ZXN0cyBmcm9tIGFic3RyYWN0LWV0aFxuZGVzY3JpYmUoJ0VUSCBGbHVzaCBORlQgVGVzdHMgKGZyb20gYWJzdHJhY3QtZXRoKScsICgpID0+IHtcbiAgcnVuRmx1c2hOZnRUZXN0cygnZXRoJywgZ2V0QnVpbGRlcik7XG59KTtcblxuZGVzY3JpYmUoJ0V0aCBUcmFuc2FjdGlvbiBidWlsZGVyIGZsdXNoIHRva2VucyAoRVRILXNwZWNpZmljKScsIGZ1bmN0aW9uICgpIHtcbiAgY29uc3QgZGVmYXVsdEtleVBhaXIgPSBuZXcgS2V5UGFpcih7XG4gICAgcHJ2OiAnRkFDNEQwNEFBMDAyNUVDRjIwMEQ3NEJDOUI1RTQ2MTZFNEI4MzM4QjY5QjYxMzYyQUFBRDQ5Rjc2RTY4RUYyOCcsXG4gIH0pO1xuXG4gIGludGVyZmFjZSBGbHVzaFRva2Vuc0RldGFpbHMge1xuICAgIGZvcndhcmRlckFkZHJlc3M/OiBzdHJpbmc7XG4gICAgdG9rZW5BZGRyZXNzPzogc3RyaW5nO1xuICAgIGNvbnRyYWN0QWRkcmVzcz86IHN0cmluZztcbiAgICBjb3VudGVyPzogbnVtYmVyO1xuICAgIGZlZT86IEZlZTtcbiAgICBrZXk/OiBLZXlQYWlyO1xuICAgIGZvcndhcmRlclZlcnNpb24/OiBudW1iZXI7XG4gIH1cblxuICBjb25zdCBidWlsZFRyYW5zYWN0aW9uID0gYXN5bmMgZnVuY3Rpb24gKGRldGFpbHM6IEZsdXNoVG9rZW5zRGV0YWlscyk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCB0eEJ1aWxkZXI6IGFueSA9IGdldEJ1aWxkZXIoJ3RldGgnKTtcbiAgICB0eEJ1aWxkZXIudHlwZShUcmFuc2FjdGlvblR5cGUuRmx1c2hUb2tlbnMpO1xuXG4gICAgaWYgKGRldGFpbHMuZm9yd2FyZGVyQWRkcmVzcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0eEJ1aWxkZXIuZm9yd2FyZGVyQWRkcmVzcyhkZXRhaWxzLmZvcndhcmRlckFkZHJlc3MpO1xuICAgIH1cblxuICAgIGlmIChkZXRhaWxzLnRva2VuQWRkcmVzcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0eEJ1aWxkZXIudG9rZW5BZGRyZXNzKGRldGFpbHMudG9rZW5BZGRyZXNzKTtcbiAgICB9XG5cbiAgICBpZiAoZGV0YWlscy5mZWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdHhCdWlsZGVyLmZlZShkZXRhaWxzLmZlZSk7XG4gICAgfVxuXG4gICAgaWYgKGRldGFpbHMuY29udHJhY3RBZGRyZXNzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHR4QnVpbGRlci5jb250cmFjdChkZXRhaWxzLmNvbnRyYWN0QWRkcmVzcyk7XG4gICAgfVxuXG4gICAgaWYgKGRldGFpbHMuY291bnRlciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0eEJ1aWxkZXIuY291bnRlcihkZXRhaWxzLmNvdW50ZXIpO1xuICAgIH1cblxuICAgIGlmIChkZXRhaWxzLmtleSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0eEJ1aWxkZXIuc2lnbih7IGtleTogZGV0YWlscy5rZXkuZ2V0S2V5cygpLnBydiB9KTtcbiAgICB9XG5cbiAgICBpZiAoZGV0YWlscy5mb3J3YXJkZXJWZXJzaW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHR4QnVpbGRlci5mb3J3YXJkZXJWZXJzaW9uKGRldGFpbHMuZm9yd2FyZGVyVmVyc2lvbik7XG4gICAgfVxuXG4gICAgcmV0dXJuIGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICB9O1xuXG4gIGRlc2NyaWJlKCdzaG91bGQgYnVpbGQnLCAoKSA9PiB7XG4gICAgaXQoJ2Egd2FsbGV0IGZsdXNoIGZvcndhcmRlciB0cmFuc2FjdGlvbicsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgYnVpbGRUcmFuc2FjdGlvbih7XG4gICAgICAgIGZlZToge1xuICAgICAgICAgIGZlZTogJzEwJyxcbiAgICAgICAgICBnYXNMaW1pdDogJzEwMDAnLFxuICAgICAgICB9LFxuICAgICAgICBjb3VudGVyOiAxLFxuICAgICAgICBmb3J3YXJkZXJBZGRyZXNzOiAnMHg1M2I4ZTkxYmIzYjhmNjE4YjVmMDEwMDRlZjEwOGYxMzRmMjE5NTczJyxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiAnMHhiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyxcbiAgICAgIH0pO1xuXG4gICAgICB0eC50eXBlLnNob3VsZC5lcXVhbChUcmFuc2FjdGlvblR5cGUuRmx1c2hUb2tlbnMpO1xuICAgICAgY29uc3QgdHhKc29uID0gdHgudG9Kc29uKCk7XG4gICAgICB0eEpzb24uZ2FzTGltaXQuc2hvdWxkLmVxdWFsKCcxMDAwJyk7XG4gICAgICB0eEpzb24uX3R5cGUuc2hvdWxkLmVxdWFscyhFVEhUcmFuc2FjdGlvblR5cGUuTEVHQUNZKTtcbiAgICAgIHR4SnNvbi5nYXNQcmljZSEuc2hvdWxkLmVxdWFsKCcxMCcpO1xuICAgICAgc2hvdWxkLmVxdWFsKHR4SnNvbi5ub25jZSwgMSk7XG4gICAgICB0eEpzb24uZGF0YS5zaG91bGQuc3RhcnRXaXRoKGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWQpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2Egd2FsbGV0IGZsdXNoIGZvcndhcmRlciB0cmFuc2FjdGlvbiB3aXRoIGVpcDE1NTkgZmVlIG1vZGVsJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHggPSBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgZmVlOiB7XG4gICAgICAgICAgZmVlOiAnMzAnLFxuICAgICAgICAgIGVpcDE1NTk6IHtcbiAgICAgICAgICAgIG1heFByaW9yaXR5RmVlUGVyR2FzOiAnNScsXG4gICAgICAgICAgICBtYXhGZWVQZXJHYXM6ICczMCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBnYXNMaW1pdDogJzEwMDAnLFxuICAgICAgICB9LFxuICAgICAgICBjb3VudGVyOiAxLFxuICAgICAgICBmb3J3YXJkZXJBZGRyZXNzOiAnMHg1M2I4ZTkxYmIzYjhmNjE4YjVmMDEwMDRlZjEwOGYxMzRmMjE5NTczJyxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiAnMHhiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyxcbiAgICAgIH0pO1xuXG4gICAgICB0eC50eXBlLnNob3VsZC5lcXVhbChUcmFuc2FjdGlvblR5cGUuRmx1c2hUb2tlbnMpO1xuICAgICAgY29uc3QgdHhKc29uID0gdHgudG9Kc29uKCk7XG4gICAgICB0eEpzb24uZ2FzTGltaXQuc2hvdWxkLmVxdWFsKCcxMDAwJyk7XG4gICAgICB0eEpzb24uX3R5cGUuc2hvdWxkLmVxdWFscyhFVEhUcmFuc2FjdGlvblR5cGUuRUlQMTU1OSk7XG4gICAgICB0eEpzb24ubWF4RmVlUGVyR2FzIS5zaG91bGQuZXF1YWwoJzMwJyk7XG4gICAgICB0eEpzb24ubWF4UHJpb3JpdHlGZWVQZXJHYXMhLnNob3VsZC5lcXVhbCgnNScpO1xuICAgICAgc2hvdWxkLmVxdWFsKHR4SnNvbi5ub25jZSwgMSk7XG4gICAgICB0eEpzb24uZGF0YS5zaG91bGQuc3RhcnRXaXRoKGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWQpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2Egd2FsbGV0IGZsdXNoIGZvcndhcmRlciB0cmFuc2FjdGlvbiB3aXRoIG5vbmNlIDAnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMDAwJyxcbiAgICAgICAgfSxcbiAgICAgICAgY291bnRlcjogMCxcbiAgICAgICAgZm9yd2FyZGVyQWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIHRva2VuQWRkcmVzczogJzB4YmNmOTM1ZDIwNmNhMzI5MjllMWI4ODdhMDdlZDI0MGYwZDhjY2QyMicsXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogJzB4OGY5NzdlOTEyZWY1MDA1NDhhMGMzYmU2ZGRkZTk4OTlmMTE5OWI4MScsXG4gICAgICB9KTtcblxuICAgICAgdHgudHlwZS5zaG91bGQuZXF1YWwoVHJhbnNhY3Rpb25UeXBlLkZsdXNoVG9rZW5zKTtcbiAgICAgIGNvbnN0IHR4SnNvbiA9IHR4LnRvSnNvbigpO1xuICAgICAgdHhKc29uLmdhc0xpbWl0LnNob3VsZC5lcXVhbCgnMTAwMCcpO1xuICAgICAgdHhKc29uLl90eXBlLnNob3VsZC5lcXVhbHMoRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSk7XG4gICAgICB0eEpzb24uZ2FzUHJpY2UhLnNob3VsZC5lcXVhbCgnMTAnKTtcbiAgICAgIHNob3VsZC5lcXVhbCh0eEpzb24ubm9uY2UsIDApO1xuICAgICAgdHhKc29uLmRhdGEuc2hvdWxkLnN0YXJ0V2l0aChmbHVzaEZvcndhcmRlclRva2Vuc01ldGhvZElkKTtcbiAgICB9KTtcblxuICAgIGl0KCdhIHdhbGxldCBmbHVzaCBmb3J3YXJkZXIgdHJhbnNhY3Rpb24gd2l0aCBmb3J3YXJkZXIgVmVyc2lvbiA0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHggPSBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgZmVlOiB7XG4gICAgICAgICAgZmVlOiAnMTAnLFxuICAgICAgICAgIGdhc0xpbWl0OiAnMTAwMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IDAsXG4gICAgICAgIGZvcndhcmRlckFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICB0b2tlbkFkZHJlc3M6ICcweGJjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICBmb3J3YXJkZXJWZXJzaW9uOiA0LFxuICAgICAgfSk7XG5cbiAgICAgIHR4LnR5cGUuc2hvdWxkLmVxdWFsKFRyYW5zYWN0aW9uVHlwZS5GbHVzaFRva2Vucyk7XG4gICAgICBjb25zdCB0eEpzb24gPSB0eC50b0pzb24oKTtcbiAgICAgIHR4SnNvbi5nYXNMaW1pdC5zaG91bGQuZXF1YWwoJzEwMDAnKTtcbiAgICAgIHR4SnNvbi5fdHlwZS5zaG91bGQuZXF1YWxzKEVUSFRyYW5zYWN0aW9uVHlwZS5MRUdBQ1kpO1xuICAgICAgc2hvdWxkLmVxdWFsKHR4SnNvbi5ub25jZSwgMCk7XG4gICAgICB0eEpzb24uZGF0YS5zaG91bGQuc3RhcnRXaXRoKGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWRWNCk7XG4gICAgfSk7XG5cbiAgICBpdCgnZGVjb2RlIHdhbGxldCBmbHVzaCBmb3J3YXJkZXIgdHJhbnNhY3Rpb24gd2l0aCBmb3J3YXJkZXIgVmVyc2lvbiA0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHggPSBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgZmVlOiB7XG4gICAgICAgICAgZmVlOiAnMTAnLFxuICAgICAgICAgIGdhc0xpbWl0OiAnMTAwMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IDAsXG4gICAgICAgIGZvcndhcmRlckFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICB0b2tlbkFkZHJlc3M6ICcweGJjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICBmb3J3YXJkZXJWZXJzaW9uOiA0LFxuICAgICAgfSk7XG4gICAgICBjb25zdCB0eEJ1aWRlckZyb21SYXc6IGFueSA9IGdldEJ1aWxkZXIoJ3RldGgnKTtcbiAgICAgIHR4QnVpZGVyRnJvbVJhdy5mcm9tKHR4LnRvQnJvYWRjYXN0Rm9ybWF0KCkpO1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdHhCdWlkZXJGcm9tUmF3LmJ1aWxkKCk7XG4gICAgICBjb25zdCB0eEpzb24gPSByZXN1bHQudG9Kc29uKCk7XG4gICAgICB0eEpzb24udG8uc2hvdWxkLmVxdWFsKCcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnKTtcbiAgICAgIHR4SnNvbi5kYXRhLnNob3VsZC5jb250YWluRXFsKCdiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnZGVjb2RlIHdhbGxldCBmbHVzaCBmb3J3YXJkZXIgdHJhbnNhY3Rpb24gd2l0aCBmb3J3YXJkZXIgVmVyc2lvbiA8IDQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMDAwJyxcbiAgICAgICAgfSxcbiAgICAgICAgY291bnRlcjogMCxcbiAgICAgICAgZm9yd2FyZGVyQWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIHRva2VuQWRkcmVzczogJzB4YmNmOTM1ZDIwNmNhMzI5MjllMWI4ODdhMDdlZDI0MGYwZDhjY2QyMicsXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogJzB4OGY5NzdlOTEyZWY1MDA1NDhhMGMzYmU2ZGRkZTk4OTlmMTE5OWI4MScsXG4gICAgICAgIGZvcndhcmRlclZlcnNpb246IDIsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IHR4QnVpZGVyRnJvbVJhdzogYW55ID0gZ2V0QnVpbGRlcigndGV0aCcpO1xuICAgICAgdHhCdWlkZXJGcm9tUmF3LmZyb20odHgudG9Ccm9hZGNhc3RGb3JtYXQoKSk7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0eEJ1aWRlckZyb21SYXcuYnVpbGQoKTtcbiAgICAgIGNvbnN0IHR4SnNvbiA9IHJlc3VsdC50b0pzb24oKTtcbiAgICAgIHR4SnNvbi50by5zaG91bGQuZXF1YWwoJzB4OGY5NzdlOTEyZWY1MDA1NDhhMGMzYmU2ZGRkZTk4OTlmMTE5OWI4MScpO1xuICAgICAgdHhKc29uLmRhdGEuc2hvdWxkLmNvbnRhaW5FcWwoJ2JjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInKTtcbiAgICAgIHR4SnNvbi5kYXRhLnNob3VsZC5jb250YWluRXFsKCc1M2I4ZTkxYmIzYjhmNjE4YjVmMDEwMDRlZjEwOGYxMzRmMjE5NTczJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnYW4gdW5zaWduZWQgZmx1c2ggdHJhbnNhY3Rpb24gZnJvbSBzZXJpYWxpemVkJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHggPSBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgZmVlOiB7XG4gICAgICAgICAgZmVlOiAnMTAnLFxuICAgICAgICAgIGdhc0xpbWl0OiAnMTAwMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IDAsXG4gICAgICAgIGZvcndhcmRlckFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICB0b2tlbkFkZHJlc3M6ICcweGJjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6ICcweDhmOTc3ZTkxMmVmNTAwNTQ4YTBjM2JlNmRkZGU5ODk5ZjExOTliODEnLFxuICAgICAgfSk7XG4gICAgICBjb25zdCBzZXJpYWxpemVkID0gdHgudG9Ccm9hZGNhc3RGb3JtYXQoKTtcblxuICAgICAgLy8gbm93IHJlYnVpbGQgZnJvbSB0aGUgc2lnbmVkIHNlcmlhbGl6ZWQgdHggYW5kIG1ha2Ugc3VyZSBpdCBzdGF5cyB0aGUgc2FtZVxuICAgICAgY29uc3QgbmV3VHhCdWlsZGVyOiBhbnkgPSBnZXRCdWlsZGVyKCd0ZXRoJyk7XG4gICAgICBuZXdUeEJ1aWxkZXIuZnJvbShzZXJpYWxpemVkKTtcbiAgICAgIGNvbnN0IG5ld1R4ID0gYXdhaXQgbmV3VHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgICBzaG91bGQuZXF1YWwobmV3VHgudG9Ccm9hZGNhc3RGb3JtYXQoKSwgc2VyaWFsaXplZCk7XG4gICAgICBuZXdUeC50b0pzb24oKS5kYXRhLnNob3VsZC5zdGFydFdpdGgoZmx1c2hGb3J3YXJkZXJUb2tlbnNNZXRob2RJZCk7XG4gICAgICBzaG91bGQuZXF1YWwobmV3VHgudG9Kc29uKCkudiwgJzB4NzcnKTtcbiAgICB9KTtcblxuICAgIGl0KCdhIHNpZ25lZCBmbHVzaCB0cmFuc2FjdGlvbiBmcm9tIHNlcmlhbGl6ZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMDAwJyxcbiAgICAgICAgfSxcbiAgICAgICAgY291bnRlcjogMCxcbiAgICAgICAgZm9yd2FyZGVyQWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIHRva2VuQWRkcmVzczogJzB4YmNmOTM1ZDIwNmNhMzI5MjllMWI4ODdhMDdlZDI0MGYwZDhjY2QyMicsXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogJzB4OGY5NzdlOTEyZWY1MDA1NDhhMGMzYmU2ZGRkZTk4OTlmMTE5OWI4MScsXG4gICAgICAgIGtleTogZGVmYXVsdEtleVBhaXIsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSB0eC50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuXG4gICAgICAvLyBub3cgcmVidWlsZCBmcm9tIHRoZSBzaWduZWQgc2VyaWFsaXplZCB0eCBhbmQgbWFrZSBzdXJlIGl0IHN0YXlzIHRoZSBzYW1lXG4gICAgICBjb25zdCBuZXdUeEJ1aWxkZXI6IGFueSA9IGdldEJ1aWxkZXIoJ3RldGgnKTtcbiAgICAgIG5ld1R4QnVpbGRlci5mcm9tKHNlcmlhbGl6ZWQpO1xuICAgICAgY29uc3QgbmV3VHggPSBhd2FpdCBuZXdUeEJ1aWxkZXIuYnVpbGQoKTtcbiAgICAgIHNob3VsZC5lcXVhbChuZXdUeC50b0Jyb2FkY2FzdEZvcm1hdCgpLCBzZXJpYWxpemVkKTtcbiAgICAgIHNob3VsZC5lcXVhbChuZXdUeC5pZCwgJzB4NWJmZDRjNmI5YWU5ZGZiYzllMDYyMjQ3YzBkZWJlNGUxYzY4NzBhNzZjNDIwY2U3ZjZlMzM1MzkwNDIwZGNkNicpO1xuICAgICAgY29uc3QgdHhKc29uID0gbmV3VHgudG9Kc29uKCk7XG4gICAgICBzaG91bGQuZXhpc3QodHhKc29uLnYpO1xuICAgICAgc2hvdWxkLmV4aXN0KHR4SnNvbi5yKTtcbiAgICAgIHNob3VsZC5leGlzdCh0eEpzb24ucyk7XG4gICAgICBzaG91bGQuZXhpc3QodHhKc29uLmZyb20pO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnc2hvdWxkIGZhaWwgdG8gYnVpbGQnLCAoKSA9PiB7XG4gICAgaXQoJ2EgdHJhbnNhY3Rpb24gd2l0aG91dCBmZWUnLCBhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgY291bnRlcjogMCxcbiAgICAgICAgZm9yd2FyZGVyQWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIHRva2VuQWRkcmVzczogJzB4YmNmOTM1ZDIwNmNhMzI5MjllMWI4ODdhMDdlZDI0MGYwZDhjY2QyMicsXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogJzB4OGY5NzdlOTEyZWY1MDA1NDhhMGMzYmU2ZGRkZTk4OTlmMTE5OWI4MScsXG4gICAgICB9KS5zaG91bGQuYmUucmVqZWN0ZWRXaXRoKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiBtaXNzaW5nIGZlZScpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2EgdHJhbnNhY3Rpb24gd2l0aG91dCBjb250cmFjdEFkZHJlc3MnLCBhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgZmVlOiB7XG4gICAgICAgICAgZmVlOiAnMTAnLFxuICAgICAgICAgIGdhc0xpbWl0OiAnMTAnLFxuICAgICAgICB9LFxuICAgICAgICBjb3VudGVyOiAwLFxuICAgICAgICBmb3J3YXJkZXJBZGRyZXNzOiAnMHg1M2I4ZTkxYmIzYjhmNjE4YjVmMDEwMDRlZjEwOGYxMzRmMjE5NTczJyxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiAnMHhiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyxcbiAgICAgIH0pLnNob3VsZC5iZS5yZWplY3RlZFdpdGgoJ0ludmFsaWQgdHJhbnNhY3Rpb246IG1pc3NpbmcgY29udHJhY3QgYWRkcmVzcycpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2Egd2FsbGV0IGZsdXNoIGZvcndhcmRlciBWNCB0cmFuc2FjdGlvbiB3aXRoIGRpZmZlcmVudCBjb250cmFjdCBhZGRyZXNzJywgYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgYnVpbGRUcmFuc2FjdGlvbih7XG4gICAgICAgIGZlZToge1xuICAgICAgICAgIGZlZTogJzEwJyxcbiAgICAgICAgICBnYXNMaW1pdDogJzEwMDAnLFxuICAgICAgICB9LFxuICAgICAgICBjb3VudGVyOiAwLFxuICAgICAgICBmb3J3YXJkZXJBZGRyZXNzOiAnMHg1M2I4ZTkxYmIzYjhmNjE4YjVmMDEwMDRlZjEwOGYxMzRmMjE5NTczJyxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiAnMHhiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyxcbiAgICAgICAgZm9yd2FyZGVyVmVyc2lvbjogNCxcbiAgICAgIH0pLnNob3VsZC5iZS5yZWplY3RlZFdpdGgoJ0ludmFsaWQgY29udHJhY3QgYWRkcmVzczogMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnYSB0cmFuc2FjdGlvbiB3aXRob3V0IHRva2VuQWRkcmVzcycsIGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IDAsXG4gICAgICAgIGZvcndhcmRlckFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6ICcweDhmOTc3ZTkxMmVmNTAwNTQ4YTBjM2JlNmRkZGU5ODk5ZjExOTliODEnLFxuICAgICAgfSkuc2hvdWxkLmJlLnJlamVjdGVkV2l0aCgnSW52YWxpZCB0cmFuc2FjdGlvbjogbWlzc2luZyB0b2tlbiBhZGRyZXNzJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnYSB0cmFuc2FjdGlvbiB3aXRob3V0IGZvcndhcmRlckFkZHJlc3MnLCBhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgZmVlOiB7XG4gICAgICAgICAgZmVlOiAnMTAnLFxuICAgICAgICAgIGdhc0xpbWl0OiAnMTAnLFxuICAgICAgICB9LFxuICAgICAgICBjb3VudGVyOiAwLFxuICAgICAgICB0b2tlbkFkZHJlc3M6ICcweGJjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6ICcweDhmOTc3ZTkxMmVmNTAwNTQ4YTBjM2JlNmRkZGU5ODk5ZjExOTliODEnLFxuICAgICAgfSkuc2hvdWxkLmJlLnJlamVjdGVkV2l0aCgnSW52YWxpZCB0cmFuc2FjdGlvbjogbWlzc2luZyBmb3J3YXJkZXIgYWRkcmVzcycpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2EgdHJhbnNhY3Rpb24gd2l0aCBpbnZhbGlkIGNvdW50ZXInLCBhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgZmVlOiB7XG4gICAgICAgICAgZmVlOiAnMTAnLFxuICAgICAgICAgIGdhc0xpbWl0OiAnMTAnLFxuICAgICAgICB9LFxuICAgICAgICBjb3VudGVyOiAtMSxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiAnMHhiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyxcbiAgICAgIH0pLnNob3VsZC5iZS5yZWplY3RlZFdpdGgoJ0ludmFsaWQgY291bnRlcjogLTEnKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
285
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1c2hUb2tlbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3VuaXQvdHJhbnNhY3Rpb25CdWlsZGVyL2ZsdXNoVG9rZW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLG1EQUF1RDtBQUN2RCxzQ0FPc0I7QUFDdEIsOENBQTJDO0FBQzNDLHNEQUFzRDtBQUN0RCw4RkFBK0c7QUFFL0csbURBQW1EO0FBQ25ELFFBQVEsQ0FBQyx5Q0FBeUMsRUFBRSxHQUFHLEVBQUU7SUFDdkQsSUFBQSxxQ0FBZ0IsRUFBQyxLQUFLLEVBQUUsdUJBQVUsQ0FBQyxDQUFDO0FBQ3RDLENBQUMsQ0FBQyxDQUFDO0FBRUgsb0VBQW9FO0FBQ3BFLFFBQVEsQ0FBQywwREFBMEQsRUFBRSxHQUFHLEVBQUU7SUFDeEUsSUFBQSx5Q0FBb0IsRUFBQyxLQUFLLEVBQUUsdUJBQVUsQ0FBQyxDQUFDO0FBQzFDLENBQUMsQ0FBQyxDQUFDO0FBRUgsUUFBUSxDQUFDLHFEQUFxRCxFQUFFO0lBQzlELE1BQU0sY0FBYyxHQUFHLElBQUksYUFBTyxDQUFDO1FBQ2pDLEdBQUcsRUFBRSxrRUFBa0U7S0FDeEUsQ0FBQyxDQUFDO0lBWUgsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLFdBQVcsT0FBMkI7UUFDbEUsTUFBTSxTQUFTLEdBQVEsSUFBQSx1QkFBVSxFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsMEJBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU1QyxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMzQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUVELElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN2QyxTQUFTLENBQUMsWUFBWSxDQUFDLE9B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QUssSUFBSSxFQUFFO1lBQ2xELE1BQU0sZ0JBQWdCLENBQUM7Z0JBQ3JCLEdBQUcsRUFBRTtvQkFDSCxHQUFHLEVBQUUsSUFBSTtvQkFDVCxRQUFRLEVBQUUsSUFBSTtpQkFDZjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxDQUFDO2dCQUNYLFlBQVksRUFBRSw0Q0FBNEM7Z0JBQzFELGVBQWUsRUFBRSw0Q0FBNEM7YUFDOUQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHNob3VsZCBmcm9tICdzaG91bGQnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHtcbiAgRVRIVHJhbnNhY3Rpb25UeXBlLFxuICBGZWUsXG4gIGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWQsXG4gIGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWRWNCxcbiAgS2V5UGFpcixcbiAgVHJhbnNhY3Rpb24sXG59IGZyb20gJy4uLy4uLy4uL3NyYyc7XG5pbXBvcnQgeyBnZXRCdWlsZGVyIH0gZnJvbSAnLi4vZ2V0QnVpbGRlcic7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWludGVybmFsLW1vZHVsZXNcbmltcG9ydCB7IHJ1bkZsdXNoTmZ0VGVzdHMsIHJ1bkZsdXNoRVJDNzk4NFRlc3RzIH0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3QtZXRoL3Rlc3QvdW5pdC90cmFuc2FjdGlvbkJ1aWxkZXInO1xuXG4vLyBSdW4gdGhlIHNoYXJlZCBmbHVzaCBORlQgdGVzdHMgZnJvbSBhYnN0cmFjdC1ldGhcbmRlc2NyaWJlKCdFVEggRmx1c2ggTkZUIFRlc3RzIChmcm9tIGFic3RyYWN0LWV0aCknLCAoKSA9PiB7XG4gIHJ1bkZsdXNoTmZ0VGVzdHMoJ2V0aCcsIGdldEJ1aWxkZXIpO1xufSk7XG5cbi8vIFJ1biB0aGUgc2hhcmVkIEZsdXNoRVJDNzk4NEZvcndhcmRlclRva2VuIHRlc3RzIGZyb20gYWJzdHJhY3QtZXRoXG5kZXNjcmliZSgnRVRIIEZsdXNoRVJDNzk4NEZvcndhcmRlclRva2VuIFRlc3RzIChmcm9tIGFic3RyYWN0LWV0aCknLCAoKSA9PiB7XG4gIHJ1bkZsdXNoRVJDNzk4NFRlc3RzKCdldGgnLCBnZXRCdWlsZGVyKTtcbn0pO1xuXG5kZXNjcmliZSgnRXRoIFRyYW5zYWN0aW9uIGJ1aWxkZXIgZmx1c2ggdG9rZW5zIChFVEgtc3BlY2lmaWMpJywgZnVuY3Rpb24gKCkge1xuICBjb25zdCBkZWZhdWx0S2V5UGFpciA9IG5ldyBLZXlQYWlyKHtcbiAgICBwcnY6ICdGQUM0RDA0QUEwMDI1RUNGMjAwRDc0QkM5QjVFNDYxNkU0QjgzMzhCNjlCNjEzNjJBQUFENDlGNzZFNjhFRjI4JyxcbiAgfSk7XG5cbiAgaW50ZXJmYWNlIEZsdXNoVG9rZW5zRGV0YWlscyB7XG4gICAgZm9yd2FyZGVyQWRkcmVzcz86IHN0cmluZztcbiAgICB0b2tlbkFkZHJlc3M/OiBzdHJpbmc7XG4gICAgY29udHJhY3RBZGRyZXNzPzogc3RyaW5nO1xuICAgIGNvdW50ZXI/OiBudW1iZXI7XG4gICAgZmVlPzogRmVlO1xuICAgIGtleT86IEtleVBhaXI7XG4gICAgZm9yd2FyZGVyVmVyc2lvbj86IG51bWJlcjtcbiAgfVxuXG4gIGNvbnN0IGJ1aWxkVHJhbnNhY3Rpb24gPSBhc3luYyBmdW5jdGlvbiAoZGV0YWlsczogRmx1c2hUb2tlbnNEZXRhaWxzKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHR4QnVpbGRlcjogYW55ID0gZ2V0QnVpbGRlcigndGV0aCcpO1xuICAgIHR4QnVpbGRlci50eXBlKFRyYW5zYWN0aW9uVHlwZS5GbHVzaFRva2Vucyk7XG5cbiAgICBpZiAoZGV0YWlscy5mb3J3YXJkZXJBZGRyZXNzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHR4QnVpbGRlci5mb3J3YXJkZXJBZGRyZXNzKGRldGFpbHMuZm9yd2FyZGVyQWRkcmVzcyk7XG4gICAgfVxuXG4gICAgaWYgKGRldGFpbHMudG9rZW5BZGRyZXNzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHR4QnVpbGRlci50b2tlbkFkZHJlc3MoZGV0YWlscy50b2tlbkFkZHJlc3MpO1xuICAgIH1cblxuICAgIGlmIChkZXRhaWxzLmZlZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0eEJ1aWxkZXIuZmVlKGRldGFpbHMuZmVlKTtcbiAgICB9XG5cbiAgICBpZiAoZGV0YWlscy5jb250cmFjdEFkZHJlc3MgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdHhCdWlsZGVyLmNvbnRyYWN0KGRldGFpbHMuY29udHJhY3RBZGRyZXNzKTtcbiAgICB9XG5cbiAgICBpZiAoZGV0YWlscy5jb3VudGVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHR4QnVpbGRlci5jb3VudGVyKGRldGFpbHMuY291bnRlcik7XG4gICAgfVxuXG4gICAgaWYgKGRldGFpbHMua2V5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHR4QnVpbGRlci5zaWduKHsga2V5OiBkZXRhaWxzLmtleS5nZXRLZXlzKCkucHJ2IH0pO1xuICAgIH1cblxuICAgIGlmIChkZXRhaWxzLmZvcndhcmRlclZlcnNpb24gIT09IHVuZGVmaW5lZCkge1xuICAgICAgdHhCdWlsZGVyLmZvcndhcmRlclZlcnNpb24oZGV0YWlscy5mb3J3YXJkZXJWZXJzaW9uKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gIH07XG5cbiAgZGVzY3JpYmUoJ3Nob3VsZCBidWlsZCcsICgpID0+IHtcbiAgICBpdCgnYSB3YWxsZXQgZmx1c2ggZm9yd2FyZGVyIHRyYW5zYWN0aW9uJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHggPSBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgZmVlOiB7XG4gICAgICAgICAgZmVlOiAnMTAnLFxuICAgICAgICAgIGdhc0xpbWl0OiAnMTAwMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IDEsXG4gICAgICAgIGZvcndhcmRlckFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICB0b2tlbkFkZHJlc3M6ICcweGJjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6ICcweDhmOTc3ZTkxMmVmNTAwNTQ4YTBjM2JlNmRkZGU5ODk5ZjExOTliODEnLFxuICAgICAgfSk7XG5cbiAgICAgIHR4LnR5cGUuc2hvdWxkLmVxdWFsKFRyYW5zYWN0aW9uVHlwZS5GbHVzaFRva2Vucyk7XG4gICAgICBjb25zdCB0eEpzb24gPSB0eC50b0pzb24oKTtcbiAgICAgIHR4SnNvbi5nYXNMaW1pdC5zaG91bGQuZXF1YWwoJzEwMDAnKTtcbiAgICAgIHR4SnNvbi5fdHlwZS5zaG91bGQuZXF1YWxzKEVUSFRyYW5zYWN0aW9uVHlwZS5MRUdBQ1kpO1xuICAgICAgdHhKc29uLmdhc1ByaWNlIS5zaG91bGQuZXF1YWwoJzEwJyk7XG4gICAgICBzaG91bGQuZXF1YWwodHhKc29uLm5vbmNlLCAxKTtcbiAgICAgIHR4SnNvbi5kYXRhLnNob3VsZC5zdGFydFdpdGgoZmx1c2hGb3J3YXJkZXJUb2tlbnNNZXRob2RJZCk7XG4gICAgfSk7XG5cbiAgICBpdCgnYSB3YWxsZXQgZmx1c2ggZm9yd2FyZGVyIHRyYW5zYWN0aW9uIHdpdGggZWlwMTU1OSBmZWUgbW9kZWwnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICczMCcsXG4gICAgICAgICAgZWlwMTU1OToge1xuICAgICAgICAgICAgbWF4UHJpb3JpdHlGZWVQZXJHYXM6ICc1JyxcbiAgICAgICAgICAgIG1heEZlZVBlckdhczogJzMwJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGdhc0xpbWl0OiAnMTAwMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IDEsXG4gICAgICAgIGZvcndhcmRlckFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICB0b2tlbkFkZHJlc3M6ICcweGJjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6ICcweDhmOTc3ZTkxMmVmNTAwNTQ4YTBjM2JlNmRkZGU5ODk5ZjExOTliODEnLFxuICAgICAgfSk7XG5cbiAgICAgIHR4LnR5cGUuc2hvdWxkLmVxdWFsKFRyYW5zYWN0aW9uVHlwZS5GbHVzaFRva2Vucyk7XG4gICAgICBjb25zdCB0eEpzb24gPSB0eC50b0pzb24oKTtcbiAgICAgIHR4SnNvbi5nYXNMaW1pdC5zaG91bGQuZXF1YWwoJzEwMDAnKTtcbiAgICAgIHR4SnNvbi5fdHlwZS5zaG91bGQuZXF1YWxzKEVUSFRyYW5zYWN0aW9uVHlwZS5FSVAxNTU5KTtcbiAgICAgIHR4SnNvbi5tYXhGZWVQZXJHYXMhLnNob3VsZC5lcXVhbCgnMzAnKTtcbiAgICAgIHR4SnNvbi5tYXhQcmlvcml0eUZlZVBlckdhcyEuc2hvdWxkLmVxdWFsKCc1Jyk7XG4gICAgICBzaG91bGQuZXF1YWwodHhKc29uLm5vbmNlLCAxKTtcbiAgICAgIHR4SnNvbi5kYXRhLnNob3VsZC5zdGFydFdpdGgoZmx1c2hGb3J3YXJkZXJUb2tlbnNNZXRob2RJZCk7XG4gICAgfSk7XG5cbiAgICBpdCgnYSB3YWxsZXQgZmx1c2ggZm9yd2FyZGVyIHRyYW5zYWN0aW9uIHdpdGggbm9uY2UgMCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgYnVpbGRUcmFuc2FjdGlvbih7XG4gICAgICAgIGZlZToge1xuICAgICAgICAgIGZlZTogJzEwJyxcbiAgICAgICAgICBnYXNMaW1pdDogJzEwMDAnLFxuICAgICAgICB9LFxuICAgICAgICBjb3VudGVyOiAwLFxuICAgICAgICBmb3J3YXJkZXJBZGRyZXNzOiAnMHg1M2I4ZTkxYmIzYjhmNjE4YjVmMDEwMDRlZjEwOGYxMzRmMjE5NTczJyxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiAnMHhiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyxcbiAgICAgIH0pO1xuXG4gICAgICB0eC50eXBlLnNob3VsZC5lcXVhbChUcmFuc2FjdGlvblR5cGUuRmx1c2hUb2tlbnMpO1xuICAgICAgY29uc3QgdHhKc29uID0gdHgudG9Kc29uKCk7XG4gICAgICB0eEpzb24uZ2FzTGltaXQuc2hvdWxkLmVxdWFsKCcxMDAwJyk7XG4gICAgICB0eEpzb24uX3R5cGUuc2hvdWxkLmVxdWFscyhFVEhUcmFuc2FjdGlvblR5cGUuTEVHQUNZKTtcbiAgICAgIHR4SnNvbi5nYXNQcmljZSEuc2hvdWxkLmVxdWFsKCcxMCcpO1xuICAgICAgc2hvdWxkLmVxdWFsKHR4SnNvbi5ub25jZSwgMCk7XG4gICAgICB0eEpzb24uZGF0YS5zaG91bGQuc3RhcnRXaXRoKGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWQpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2Egd2FsbGV0IGZsdXNoIGZvcndhcmRlciB0cmFuc2FjdGlvbiB3aXRoIGZvcndhcmRlciBWZXJzaW9uIDQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMDAwJyxcbiAgICAgICAgfSxcbiAgICAgICAgY291bnRlcjogMCxcbiAgICAgICAgZm9yd2FyZGVyQWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIHRva2VuQWRkcmVzczogJzB4YmNmOTM1ZDIwNmNhMzI5MjllMWI4ODdhMDdlZDI0MGYwZDhjY2QyMicsXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIGZvcndhcmRlclZlcnNpb246IDQsXG4gICAgICB9KTtcblxuICAgICAgdHgudHlwZS5zaG91bGQuZXF1YWwoVHJhbnNhY3Rpb25UeXBlLkZsdXNoVG9rZW5zKTtcbiAgICAgIGNvbnN0IHR4SnNvbiA9IHR4LnRvSnNvbigpO1xuICAgICAgdHhKc29uLmdhc0xpbWl0LnNob3VsZC5lcXVhbCgnMTAwMCcpO1xuICAgICAgdHhKc29uLl90eXBlLnNob3VsZC5lcXVhbHMoRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSk7XG4gICAgICBzaG91bGQuZXF1YWwodHhKc29uLm5vbmNlLCAwKTtcbiAgICAgIHR4SnNvbi5kYXRhLnNob3VsZC5zdGFydFdpdGgoZmx1c2hGb3J3YXJkZXJUb2tlbnNNZXRob2RJZFY0KTtcbiAgICB9KTtcblxuICAgIGl0KCdkZWNvZGUgd2FsbGV0IGZsdXNoIGZvcndhcmRlciB0cmFuc2FjdGlvbiB3aXRoIGZvcndhcmRlciBWZXJzaW9uIDQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMDAwJyxcbiAgICAgICAgfSxcbiAgICAgICAgY291bnRlcjogMCxcbiAgICAgICAgZm9yd2FyZGVyQWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIHRva2VuQWRkcmVzczogJzB4YmNmOTM1ZDIwNmNhMzI5MjllMWI4ODdhMDdlZDI0MGYwZDhjY2QyMicsXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIGZvcndhcmRlclZlcnNpb246IDQsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IHR4QnVpZGVyRnJvbVJhdzogYW55ID0gZ2V0QnVpbGRlcigndGV0aCcpO1xuICAgICAgdHhCdWlkZXJGcm9tUmF3LmZyb20odHgudG9Ccm9hZGNhc3RGb3JtYXQoKSk7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0eEJ1aWRlckZyb21SYXcuYnVpbGQoKTtcbiAgICAgIGNvbnN0IHR4SnNvbiA9IHJlc3VsdC50b0pzb24oKTtcbiAgICAgIHR4SnNvbi50by5zaG91bGQuZXF1YWwoJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycpO1xuICAgICAgdHhKc29uLmRhdGEuc2hvdWxkLmNvbnRhaW5FcWwoJ2JjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInKTtcbiAgICB9KTtcblxuICAgIGl0KCdkZWNvZGUgd2FsbGV0IGZsdXNoIGZvcndhcmRlciB0cmFuc2FjdGlvbiB3aXRoIGZvcndhcmRlciBWZXJzaW9uIDwgNCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgYnVpbGRUcmFuc2FjdGlvbih7XG4gICAgICAgIGZlZToge1xuICAgICAgICAgIGZlZTogJzEwJyxcbiAgICAgICAgICBnYXNMaW1pdDogJzEwMDAnLFxuICAgICAgICB9LFxuICAgICAgICBjb3VudGVyOiAwLFxuICAgICAgICBmb3J3YXJkZXJBZGRyZXNzOiAnMHg1M2I4ZTkxYmIzYjhmNjE4YjVmMDEwMDRlZjEwOGYxMzRmMjE5NTczJyxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiAnMHhiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyxcbiAgICAgICAgZm9yd2FyZGVyVmVyc2lvbjogMixcbiAgICAgIH0pO1xuICAgICAgY29uc3QgdHhCdWlkZXJGcm9tUmF3OiBhbnkgPSBnZXRCdWlsZGVyKCd0ZXRoJyk7XG4gICAgICB0eEJ1aWRlckZyb21SYXcuZnJvbSh0eC50b0Jyb2FkY2FzdEZvcm1hdCgpKTtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHR4QnVpZGVyRnJvbVJhdy5idWlsZCgpO1xuICAgICAgY29uc3QgdHhKc29uID0gcmVzdWx0LnRvSnNvbigpO1xuICAgICAgdHhKc29uLnRvLnNob3VsZC5lcXVhbCgnMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyk7XG4gICAgICB0eEpzb24uZGF0YS5zaG91bGQuY29udGFpbkVxbCgnYmNmOTM1ZDIwNmNhMzI5MjllMWI4ODdhMDdlZDI0MGYwZDhjY2QyMicpO1xuICAgICAgdHhKc29uLmRhdGEuc2hvdWxkLmNvbnRhaW5FcWwoJzUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnKTtcbiAgICB9KTtcblxuICAgIGl0KCdhbiB1bnNpZ25lZCBmbHVzaCB0cmFuc2FjdGlvbiBmcm9tIHNlcmlhbGl6ZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMDAwJyxcbiAgICAgICAgfSxcbiAgICAgICAgY291bnRlcjogMCxcbiAgICAgICAgZm9yd2FyZGVyQWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIHRva2VuQWRkcmVzczogJzB4YmNmOTM1ZDIwNmNhMzI5MjllMWI4ODdhMDdlZDI0MGYwZDhjY2QyMicsXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogJzB4OGY5NzdlOTEyZWY1MDA1NDhhMGMzYmU2ZGRkZTk4OTlmMTE5OWI4MScsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSB0eC50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuXG4gICAgICAvLyBub3cgcmVidWlsZCBmcm9tIHRoZSBzaWduZWQgc2VyaWFsaXplZCB0eCBhbmQgbWFrZSBzdXJlIGl0IHN0YXlzIHRoZSBzYW1lXG4gICAgICBjb25zdCBuZXdUeEJ1aWxkZXI6IGFueSA9IGdldEJ1aWxkZXIoJ3RldGgnKTtcbiAgICAgIG5ld1R4QnVpbGRlci5mcm9tKHNlcmlhbGl6ZWQpO1xuICAgICAgY29uc3QgbmV3VHggPSBhd2FpdCBuZXdUeEJ1aWxkZXIuYnVpbGQoKTtcbiAgICAgIHNob3VsZC5lcXVhbChuZXdUeC50b0Jyb2FkY2FzdEZvcm1hdCgpLCBzZXJpYWxpemVkKTtcbiAgICAgIG5ld1R4LnRvSnNvbigpLmRhdGEuc2hvdWxkLnN0YXJ0V2l0aChmbHVzaEZvcndhcmRlclRva2Vuc01ldGhvZElkKTtcbiAgICAgIHNob3VsZC5lcXVhbChuZXdUeC50b0pzb24oKS52LCAnMHg3NycpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2Egc2lnbmVkIGZsdXNoIHRyYW5zYWN0aW9uIGZyb20gc2VyaWFsaXplZCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgYnVpbGRUcmFuc2FjdGlvbih7XG4gICAgICAgIGZlZToge1xuICAgICAgICAgIGZlZTogJzEwJyxcbiAgICAgICAgICBnYXNMaW1pdDogJzEwMDAnLFxuICAgICAgICB9LFxuICAgICAgICBjb3VudGVyOiAwLFxuICAgICAgICBmb3J3YXJkZXJBZGRyZXNzOiAnMHg1M2I4ZTkxYmIzYjhmNjE4YjVmMDEwMDRlZjEwOGYxMzRmMjE5NTczJyxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiAnMHhiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyxcbiAgICAgICAga2V5OiBkZWZhdWx0S2V5UGFpcixcbiAgICAgIH0pO1xuICAgICAgY29uc3Qgc2VyaWFsaXplZCA9IHR4LnRvQnJvYWRjYXN0Rm9ybWF0KCk7XG5cbiAgICAgIC8vIG5vdyByZWJ1aWxkIGZyb20gdGhlIHNpZ25lZCBzZXJpYWxpemVkIHR4IGFuZCBtYWtlIHN1cmUgaXQgc3RheXMgdGhlIHNhbWVcbiAgICAgIGNvbnN0IG5ld1R4QnVpbGRlcjogYW55ID0gZ2V0QnVpbGRlcigndGV0aCcpO1xuICAgICAgbmV3VHhCdWlsZGVyLmZyb20oc2VyaWFsaXplZCk7XG4gICAgICBjb25zdCBuZXdUeCA9IGF3YWl0IG5ld1R4QnVpbGRlci5idWlsZCgpO1xuICAgICAgc2hvdWxkLmVxdWFsKG5ld1R4LnRvQnJvYWRjYXN0Rm9ybWF0KCksIHNlcmlhbGl6ZWQpO1xuICAgICAgc2hvdWxkLmVxdWFsKG5ld1R4LmlkLCAnMHg1YmZkNGM2YjlhZTlkZmJjOWUwNjIyNDdjMGRlYmU0ZTFjNjg3MGE3NmM0MjBjZTdmNmUzMzUzOTA0MjBkY2Q2Jyk7XG4gICAgICBjb25zdCB0eEpzb24gPSBuZXdUeC50b0pzb24oKTtcbiAgICAgIHNob3VsZC5leGlzdCh0eEpzb24udik7XG4gICAgICBzaG91bGQuZXhpc3QodHhKc29uLnIpO1xuICAgICAgc2hvdWxkLmV4aXN0KHR4SnNvbi5zKTtcbiAgICAgIHNob3VsZC5leGlzdCh0eEpzb24uZnJvbSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdzaG91bGQgZmFpbCB0byBidWlsZCcsICgpID0+IHtcbiAgICBpdCgnYSB0cmFuc2FjdGlvbiB3aXRob3V0IGZlZScsIGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBjb3VudGVyOiAwLFxuICAgICAgICBmb3J3YXJkZXJBZGRyZXNzOiAnMHg1M2I4ZTkxYmIzYjhmNjE4YjVmMDEwMDRlZjEwOGYxMzRmMjE5NTczJyxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiAnMHhiY2Y5MzVkMjA2Y2EzMjkyOWUxYjg4N2EwN2VkMjQwZjBkOGNjZDIyJyxcbiAgICAgICAgY29udHJhY3RBZGRyZXNzOiAnMHg4Zjk3N2U5MTJlZjUwMDU0OGEwYzNiZTZkZGRlOTg5OWYxMTk5YjgxJyxcbiAgICAgIH0pLnNob3VsZC5iZS5yZWplY3RlZFdpdGgoJ0ludmFsaWQgdHJhbnNhY3Rpb246IG1pc3NpbmcgZmVlJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnYSB0cmFuc2FjdGlvbiB3aXRob3V0IGNvbnRyYWN0QWRkcmVzcycsIGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IDAsXG4gICAgICAgIGZvcndhcmRlckFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICB0b2tlbkFkZHJlc3M6ICcweGJjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInLFxuICAgICAgfSkuc2hvdWxkLmJlLnJlamVjdGVkV2l0aCgnSW52YWxpZCB0cmFuc2FjdGlvbjogbWlzc2luZyBjb250cmFjdCBhZGRyZXNzJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnYSB3YWxsZXQgZmx1c2ggZm9yd2FyZGVyIFY0IHRyYW5zYWN0aW9uIHdpdGggZGlmZmVyZW50IGNvbnRyYWN0IGFkZHJlc3MnLCBhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCBidWlsZFRyYW5zYWN0aW9uKHtcbiAgICAgICAgZmVlOiB7XG4gICAgICAgICAgZmVlOiAnMTAnLFxuICAgICAgICAgIGdhc0xpbWl0OiAnMTAwMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IDAsXG4gICAgICAgIGZvcndhcmRlckFkZHJlc3M6ICcweDUzYjhlOTFiYjNiOGY2MThiNWYwMTAwNGVmMTA4ZjEzNGYyMTk1NzMnLFxuICAgICAgICB0b2tlbkFkZHJlc3M6ICcweGJjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6ICcweDhmOTc3ZTkxMmVmNTAwNTQ4YTBjM2JlNmRkZGU5ODk5ZjExOTliODEnLFxuICAgICAgICBmb3J3YXJkZXJWZXJzaW9uOiA0LFxuICAgICAgfSkuc2hvdWxkLmJlLnJlamVjdGVkV2l0aCgnSW52YWxpZCBjb250cmFjdCBhZGRyZXNzOiAweDhmOTc3ZTkxMmVmNTAwNTQ4YTBjM2JlNmRkZGU5ODk5ZjExOTliODEnKTtcbiAgICB9KTtcblxuICAgIGl0KCdhIHRyYW5zYWN0aW9uIHdpdGhvdXQgdG9rZW5BZGRyZXNzJywgYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgYnVpbGRUcmFuc2FjdGlvbih7XG4gICAgICAgIGZlZToge1xuICAgICAgICAgIGZlZTogJzEwJyxcbiAgICAgICAgICBnYXNMaW1pdDogJzEwJyxcbiAgICAgICAgfSxcbiAgICAgICAgY291bnRlcjogMCxcbiAgICAgICAgZm9yd2FyZGVyQWRkcmVzczogJzB4NTNiOGU5MWJiM2I4ZjYxOGI1ZjAxMDA0ZWYxMDhmMTM0ZjIxOTU3MycsXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogJzB4OGY5NzdlOTEyZWY1MDA1NDhhMGMzYmU2ZGRkZTk4OTlmMTE5OWI4MScsXG4gICAgICB9KS5zaG91bGQuYmUucmVqZWN0ZWRXaXRoKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiBtaXNzaW5nIHRva2VuIGFkZHJlc3MnKTtcbiAgICB9KTtcblxuICAgIGl0KCdhIHRyYW5zYWN0aW9uIHdpdGhvdXQgZm9yd2FyZGVyQWRkcmVzcycsIGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IDAsXG4gICAgICAgIHRva2VuQWRkcmVzczogJzB4YmNmOTM1ZDIwNmNhMzI5MjllMWI4ODdhMDdlZDI0MGYwZDhjY2QyMicsXG4gICAgICAgIGNvbnRyYWN0QWRkcmVzczogJzB4OGY5NzdlOTEyZWY1MDA1NDhhMGMzYmU2ZGRkZTk4OTlmMTE5OWI4MScsXG4gICAgICB9KS5zaG91bGQuYmUucmVqZWN0ZWRXaXRoKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiBtaXNzaW5nIGZvcndhcmRlciBhZGRyZXNzJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnYSB0cmFuc2FjdGlvbiB3aXRoIGludmFsaWQgY291bnRlcicsIGFzeW5jICgpID0+IHtcbiAgICAgIGF3YWl0IGJ1aWxkVHJhbnNhY3Rpb24oe1xuICAgICAgICBmZWU6IHtcbiAgICAgICAgICBmZWU6ICcxMCcsXG4gICAgICAgICAgZ2FzTGltaXQ6ICcxMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGNvdW50ZXI6IC0xLFxuICAgICAgICB0b2tlbkFkZHJlc3M6ICcweGJjZjkzNWQyMDZjYTMyOTI5ZTFiODg3YTA3ZWQyNDBmMGQ4Y2NkMjInLFxuICAgICAgICBjb250cmFjdEFkZHJlc3M6ICcweDhmOTc3ZTkxMmVmNTAwNTQ4YTBjM2JlNmRkZGU5ODk5ZjExOTliODEnLFxuICAgICAgfSkuc2hvdWxkLmJlLnJlamVjdGVkV2l0aCgnSW52YWxpZCBjb3VudGVyOiAtMScpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|