@appium/base-driver 8.5.2 → 8.5.5
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/build/lib/basedriver/capabilities.d.ts.map +1 -1
- package/build/lib/basedriver/capabilities.js +1 -1
- package/build/lib/basedriver/commands/event.js +1 -1
- package/build/lib/basedriver/commands/find.d.ts.map +1 -1
- package/build/lib/basedriver/commands/find.js +1 -1
- package/build/lib/basedriver/commands/index.js +1 -1
- package/build/lib/basedriver/commands/log.d.ts.map +1 -1
- package/build/lib/basedriver/commands/log.js +1 -1
- package/build/lib/basedriver/commands/session.js +1 -1
- package/build/lib/basedriver/commands/settings.d.ts.map +1 -1
- package/build/lib/basedriver/commands/settings.js +1 -1
- package/build/lib/basedriver/commands/timeout.d.ts.map +1 -1
- package/build/lib/basedriver/commands/timeout.js +1 -1
- package/build/lib/basedriver/core.d.ts +120 -139
- package/build/lib/basedriver/core.d.ts.map +1 -1
- package/build/lib/basedriver/core.js +1 -49
- package/build/lib/basedriver/desired-caps.d.ts +5 -2
- package/build/lib/basedriver/desired-caps.d.ts.map +1 -1
- package/build/lib/basedriver/desired-caps.js +14 -18
- package/build/lib/basedriver/device-settings.d.ts +9 -9
- package/build/lib/basedriver/device-settings.d.ts.map +1 -1
- package/build/lib/basedriver/device-settings.js +4 -4
- package/build/lib/basedriver/driver.d.ts +43 -38
- package/build/lib/basedriver/driver.d.ts.map +1 -1
- package/build/lib/basedriver/driver.js +58 -11
- package/build/lib/basedriver/helpers.d.ts +8 -3
- package/build/lib/basedriver/helpers.d.ts.map +1 -1
- package/build/lib/basedriver/helpers.js +4 -6
- package/build/lib/basedriver/logger.d.ts +1 -1
- package/build/lib/basedriver/logger.d.ts.map +1 -1
- package/build/lib/basedriver/logger.js +1 -1
- package/build/lib/constants.js +1 -1
- package/build/lib/express/crash.d.ts.map +1 -1
- package/build/lib/express/crash.js +1 -1
- package/build/lib/express/express-logging.d.ts.map +1 -1
- package/build/lib/express/express-logging.js +1 -1
- package/build/lib/express/idempotency.js +1 -1
- package/build/lib/express/logger.d.ts +1 -1
- package/build/lib/express/logger.d.ts.map +1 -1
- package/build/lib/express/logger.js +1 -1
- package/build/lib/express/middleware.d.ts.map +1 -1
- package/build/lib/express/middleware.js +1 -1
- package/build/lib/express/server.d.ts +21 -0
- package/build/lib/express/server.d.ts.map +1 -1
- package/build/lib/express/server.js +4 -9
- package/build/lib/express/static.d.ts.map +1 -1
- package/build/lib/express/static.js +2 -2
- package/build/lib/express/websocket.d.ts +14 -11
- package/build/lib/express/websocket.d.ts.map +1 -1
- package/build/lib/express/websocket.js +2 -2
- package/build/lib/helpers/capabilities.d.ts.map +1 -1
- package/build/lib/helpers/capabilities.js +1 -1
- package/build/lib/index.d.ts +2 -1
- package/build/lib/index.js +7 -1
- package/build/lib/jsonwp-proxy/protocol-converter.d.ts.map +1 -1
- package/build/lib/jsonwp-proxy/protocol-converter.js +2 -2
- package/build/lib/jsonwp-proxy/proxy.d.ts +30 -5
- package/build/lib/jsonwp-proxy/proxy.d.ts.map +1 -1
- package/build/lib/jsonwp-proxy/proxy.js +20 -4
- package/build/lib/jsonwp-status/status.d.ts.map +1 -1
- package/build/lib/jsonwp-status/status.js +2 -2
- package/build/lib/protocol/errors.d.ts +17 -8
- package/build/lib/protocol/errors.d.ts.map +1 -1
- package/build/lib/protocol/errors.js +9 -5
- package/build/lib/protocol/helpers.js +1 -1
- package/build/lib/protocol/index.js +1 -1
- package/build/lib/protocol/protocol.d.ts.map +1 -1
- package/build/lib/protocol/protocol.js +1 -1
- package/build/lib/protocol/routes.d.ts +17 -3
- package/build/lib/protocol/routes.d.ts.map +1 -1
- package/build/lib/protocol/routes.js +1 -1
- package/build/lib/protocol/validators.js +1 -1
- package/build/test/basedriver/driver-e2e-tests.js +1 -1
- package/build/test/basedriver/driver-tests.js +1 -1
- package/build/test/basedriver/index.js +1 -1
- package/build/test/e2e/basedriver/driver.e2e.spec.js +1 -1
- package/build/test/e2e/basedriver/helpers.e2e.spec.js +1 -1
- package/build/test/e2e/basedriver/websockets.e2e.spec.js +1 -1
- package/build/test/e2e/express/server.e2e.spec.js +1 -1
- package/build/test/e2e/jsonwp-proxy/proxy.e2e.spec.js +1 -1
- package/build/test/e2e/protocol/fake-driver.js +1 -1
- package/build/test/e2e/protocol/helpers.js +1 -1
- package/build/test/e2e/protocol/protocol.e2e.spec.js +13 -13
- package/build/test/helpers.js +1 -1
- package/build/test/unit/basedriver/capabilities.spec.js +12 -12
- package/build/test/unit/basedriver/capability.spec.js +15 -15
- package/build/test/unit/basedriver/commands/event.spec.js +1 -1
- package/build/test/unit/basedriver/commands/log.spec.js +1 -1
- package/build/test/unit/basedriver/device-settings.spec.js +1 -1
- package/build/test/unit/basedriver/driver.spec.js +1 -1
- package/build/test/unit/basedriver/helpers.spec.js +33 -33
- package/build/test/unit/basedriver/timeout.spec.js +1 -1
- package/build/test/unit/express/server.spec.js +1 -1
- package/build/test/unit/express/static.spec.js +2 -2
- package/build/test/unit/jsonwp-proxy/mock-request.js +1 -1
- package/build/test/unit/jsonwp-proxy/protocol-converter.spec.js +1 -1
- package/build/test/unit/jsonwp-proxy/proxy.spec.js +2 -2
- package/build/test/unit/jsonwp-proxy/url.spec.js +1 -1
- package/build/test/unit/jsonwp-status/status.spec.js +1 -1
- package/build/test/unit/protocol/errors.spec.js +1 -1
- package/build/test/unit/protocol/routes.spec.js +1 -1
- package/build/test/unit/protocol/validator.spec.js +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/lib/basedriver/capabilities.js +95 -47
- package/lib/basedriver/commands/event.js +4 -4
- package/lib/basedriver/commands/find.js +12 -26
- package/lib/basedriver/commands/index.js +7 -7
- package/lib/basedriver/commands/log.js +5 -7
- package/lib/basedriver/commands/session.js +3 -3
- package/lib/basedriver/commands/settings.js +3 -5
- package/lib/basedriver/commands/timeout.js +18 -23
- package/lib/basedriver/core.js +150 -229
- package/lib/basedriver/desired-caps.js +30 -29
- package/lib/basedriver/device-settings.js +21 -20
- package/lib/basedriver/driver.js +131 -96
- package/lib/basedriver/helpers.js +124 -81
- package/lib/basedriver/logger.js +1 -1
- package/lib/constants.js +2 -6
- package/lib/express/crash.js +4 -6
- package/lib/express/express-logging.js +26 -24
- package/lib/express/idempotency.js +16 -16
- package/lib/express/logger.js +1 -1
- package/lib/express/middleware.js +49 -33
- package/lib/express/server.js +68 -44
- package/lib/express/static.js +11 -12
- package/lib/express/websocket.js +26 -16
- package/lib/helpers/capabilities.js +11 -16
- package/lib/index.js +50 -33
- package/lib/jsonwp-proxy/protocol-converter.js +85 -69
- package/lib/jsonwp-proxy/proxy.js +116 -53
- package/lib/jsonwp-status/status.js +36 -29
- package/lib/protocol/errors.js +469 -292
- package/lib/protocol/helpers.js +5 -8
- package/lib/protocol/index.js +22 -15
- package/lib/protocol/protocol.js +103 -55
- package/lib/protocol/routes.js +430 -273
- package/lib/protocol/validators.js +5 -5
- package/package.json +9 -11
- package/test/basedriver/driver-e2e-tests.js +92 -66
- package/test/basedriver/driver-tests.js +90 -33
- package/test/basedriver/index.js +1 -1
|
@@ -270,7 +270,7 @@ describe('proxy', function () {
|
|
|
270
270
|
await j.proxyReqRes(req, res);
|
|
271
271
|
res.sentBody.should.eql({
|
|
272
272
|
value: {
|
|
273
|
-
|
|
273
|
+
foo: 'bar'
|
|
274
274
|
}
|
|
275
275
|
});
|
|
276
276
|
});
|
|
@@ -289,4 +289,4 @@ describe('proxy', function () {
|
|
|
289
289
|
});
|
|
290
290
|
});
|
|
291
291
|
});
|
|
292
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9qc29ud3AtcHJveHkvcHJveHkuc3BlYy5qcyJdLCJuYW1lcyI6WyJidWlsZFJlcVJlcyIsInVybCIsIm1ldGhvZCIsImJvZHkiLCJyZXEiLCJvcmlnaW5hbFVybCIsInJlcyIsImhlYWRlcnMiLCJzZXQiLCJrIiwidiIsInN0YXR1cyIsImNvZGUiLCJzZW50Q29kZSIsInNlbmQiLCJKU09OIiwicGFyc2UiLCJlIiwic2VudEJvZHkiLCJkZXNjcmliZSIsInBvcnQiLCJtb2NrUHJveHkiLCJvcHRzIiwic2VydmVyIiwiVEVTVF9IT1NUIiwicHJveHkiLCJKV1Byb3h5IiwicmVxdWVzdCIsImFyZ3MiLCJiZWZvcmUiLCJpdCIsImoiLCJzaG91bGQiLCJlcXVhbCIsImRlc2lyZWRDYXBhYmlsaXRpZXMiLCJzdGF0dXNDb2RlIiwiZXFsIiwic2Vzc2lvbklkIiwidmFsdWUiLCJicm93c2VyTmFtZSIsImdldFVybEZvclByb3h5IiwicmVxQmFzZVBhdGgiLCJuZXdVcmwiLCJlcnIiLCJleGlzdCIsIm1lc3NhZ2UiLCJjb250YWluIiwiZm9vIiwiZXZlbnR1YWxseSIsImJlIiwicmVqZWN0ZWRXaXRoIiwiZ2V0QWN0dWFsRXJyb3IiLCJlcnJvcnMiLCJFbGVtZW50Tm90VmlzaWJsZUVycm9yIiwidHJ1ZSIsImNvbW1hbmQiLCJlcnJvciIsInByb3h5UmVxUmVzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQSxTQUFTQSxXQUFULENBQXNCQyxHQUF0QixFQUEyQkMsTUFBM0IsRUFBbUNDLElBQW5DLEVBQXlDO0FBQ3ZDLE1BQUlDLEdBQUcsR0FBRztBQUFDQyxJQUFBQSxXQUFXLEVBQUVKLEdBQWQ7QUFBbUJDLElBQUFBLE1BQW5CO0FBQTJCQyxJQUFBQTtBQUEzQixHQUFWO0FBQ0EsTUFBSUcsR0FBRyxHQUFHLEVBQVY7QUFDQUEsRUFBQUEsR0FBRyxDQUFDQyxPQUFKLEdBQWMsRUFB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K0IsQ0FBQyxDQUFDMEIsV0FBRixDQUFjckQsR0FBZCxFQUFtQkUsR0FBbkIsQ0FBTjtBQUNBQSxNQUFBQSxHQUFHLENBQUNPLFFBQUosQ0FBYW1CLE1BQWIsQ0FBb0JDLEtBQXBCLENBQTBCLEdBQTFCO0FBQ0EzQixNQUFBQSxHQUFHLENBQUNZLFFBQUosQ0FBYWMsTUFBYixDQUFvQkksR0FBcEIsQ0FBd0I7QUFBQ0UsUUFBQUEsS0FBSyxFQUFFO0FBQUNPLFVBQUFBLE9BQU8sRUFBRTtBQUFWO0FBQVIsT0FBeEI7QUFDRCxLQU5DLENBQUY7QUFPRCxHQWxDTyxDQUFSO0FBbUNELENBOUtPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0cmFuc3BpbGU6bW9jaGFcblxuaW1wb3J0IHsgSldQcm94eSB9IGZyb20gJy4uLy4uLy4uL2xpYic7XG5pbXBvcnQgcmVxdWVzdCBmcm9tICcuL21vY2stcmVxdWVzdCc7XG5pbXBvcnQgeyBpc0Vycm9yVHlwZSwgZXJyb3JzIH0gZnJvbSAnLi4vLi4vLi4vbGliL3Byb3RvY29sL2Vycm9ycyc7XG5pbXBvcnQgeyBnZXRUZXN0UG9ydCwgVEVTVF9IT1NUIH0gZnJvbSAnLi4vLi4vaGVscGVycyc7XG5cbmZ1bmN0aW9uIGJ1aWxkUmVxUmVzICh1cmwsIG1ldGhvZCwgYm9keSkge1xuICBsZXQgcmVxID0ge29yaWdpbmFsVXJsOiB1cmwsIG1ldGhvZCwgYm9keX07XG4gIGxldCByZXMgPSB7fTtcbiAgcmVzLmhlYWRlcnMgPSB7fTtcbiAgcmVzLnNldCA9IChrLCB2KSA9PiB7IHJlc1trXSA9IHY7IH07XG4gIHJlcy5zdGF0dXMgPSAoY29kZSkgPT4ge1xuICAgIHJlcy5zZW50Q29kZSA9IGNvZGU7XG4gICAgcmV0dXJuIHJlcztcbiAgfTtcbiAgcmVzLnNlbmQgPSAoYm9keSkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBib2R5ID0gSlNPTi5wYXJzZShib2R5KTtcbiAgICB9IGNhdGNoIChlKSB7fVxuICAgIHJlcy5zZW50Qm9keSA9IGJvZHk7XG4gIH07XG4gIHJldHVybiBbcmVxLCByZXNdO1xufVxuXG5kZXNjcmliZSgncHJveHknLCBmdW5jdGlvbiAoKSB7XG4gIGxldCBwb3J0O1xuXG4gIGZ1bmN0aW9uIG1vY2tQcm94eSAob3B0cyA9IHt9KSB7XG4gICAgLy8gc2V0cyBkZWZhdWx0IHNlcnZlci9wb3J0XG4gICAgb3B0cyA9IHtzZXJ2ZXI6IFRFU1RfSE9TVCwgcG9ydCwgLi4ub3B0c307XG4gICAgbGV0IHByb3h5ID0gbmV3IEpXUHJveHkob3B0cyk7XG4gICAgcHJveHkucmVxdWVzdCA9IGFzeW5jIGZ1bmN0aW9uICguLi5hcmdzKSB7XG4gICAgICByZXR1cm4gYXdhaXQgcmVxdWVzdCguLi5hcmdzKTtcbiAgICB9O1xuICAgIHJldHVybiBwcm94eTtcbiAgfVxuXG4gIGJlZm9yZShhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgcG9ydCA9IGF3YWl0IGdldFRlc3RQb3J0KCk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgb3ZlcnJpZGUgZGVmYXVsdCBwYXJhbXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgbGV0IGogPSBtb2NrUHJveHkoe3NlcnZlcjogJzEyNy4wLjAuMicsIHBvcnR9KTtcbiAgICBqLnNlcnZlci5zaG91bGQuZXF1YWwoJzEyNy4wLjAuMicpO1xuICAgIGoucG9ydC5zaG91bGQuZXF1YWwocG9ydCk7XG4gIH0pO1xuICBpdCgnc2hvdWxkIHNhdmUgc2Vzc2lvbiBpZCBvbiBzZXNzaW9uIGNyZWF0aW9uJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGxldCBqID0gbW9ja1Byb3h5KCk7XG4gICAgbGV0IFtyZXMsIGJvZHldID0gYXdhaXQgai5wcm94eSgnL3Nlc3Npb24nLCAnUE9TVCcsIHtkZXNpcmVkQ2FwYWJpbGl0aWVzOiB7fX0pO1xuICAgIHJlcy5zdGF0dXNDb2RlLnNob3VsZC5lcXVhbCgyMDApO1xuICAgIGJvZHkuc2hvdWxkLmVxbCh7c3RhdHVzOiAwLCBzZXNzaW9uSWQ6ICcxMjMnLCB2YWx1ZToge2Jyb3dzZXJOYW1lOiAnYm9vJ319KTtcbiAgICBqLnNlc3Npb25JZC5zaG91bGQuZXF1YWwoJzEyMycpO1xuICB9KTtcbiAgZGVzY3JpYmUoJ2dldFVybEZvclByb3h5JywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdzaG91bGQgbW9kaWZ5IHNlc3Npb24gaWQsIGhvc3QsIGFuZCBwb3J0JywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGouZ2V0VXJsRm9yUHJveHkoJ2h0dHA6Ly9ob3N0LmNvbToxMjM0L3Nlc3Npb24vNDU2L2VsZW1lbnQvMjAwL3ZhbHVlJylcbiAgICAgICAuc2hvdWxkLmVxbChgaHR0cDovLyR7VEVTVF9IT1NUfToke3BvcnR9L3Nlc3Npb24vMTIzL2VsZW1lbnQvMjAwL3ZhbHVlYCk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBwcmVwZW5kIHNjaGVtZSwgaG9zdCBhbmQgcG9ydCBpZiBub3QgcHJvdmlkZWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgai5nZXRVcmxGb3JQcm94eSgnL3Nlc3Npb24vNDU2L2VsZW1lbnQvMjAwL3ZhbHVlJylcbiAgICAgICAuc2hvdWxkLmVxbChgaHR0cDovLyR7VEVTVF9IT1NUfToke3BvcnR9L3Nlc3Npb24vMTIzL2VsZW1lbnQvMjAwL3ZhbHVlYCk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCByZXNwZWN0IG5vbnN0YW5kYXJkIGluY29taW5nIHJlcXVlc3QgYmFzZSBwYXRoJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMycsIHJlcUJhc2VQYXRoOiAnJ30pO1xuICAgICAgai5nZXRVcmxGb3JQcm94eSgnL3Nlc3Npb24vNDU2L2VsZW1lbnQvMjAwL3ZhbHVlJylcbiAgICAgICAuc2hvdWxkLmVxbChgaHR0cDovLyR7VEVTVF9IT1NUfToke3BvcnR9L3Nlc3Npb24vMTIzL2VsZW1lbnQvMjAwL3ZhbHVlYCk7XG5cbiAgICAgIGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMycsIHJlcUJhc2VQYXRoOiAnL215L2Jhc2UvcGF0aCd9KTtcbiAgICAgIGouZ2V0VXJsRm9yUHJveHkoJy9teS9iYXNlL3BhdGgvc2Vzc2lvbi80NTYvZWxlbWVudC8yMDAvdmFsdWUnKVxuICAgICAgIC5zaG91bGQuZXFsKGBodHRwOi8vJHtURVNUX0hPU1R9OiR7cG9ydH0vc2Vzc2lvbi8xMjMvZWxlbWVudC8yMDAvdmFsdWVgKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHdvcmsgd2l0aCB1cmxzIHdoaWNoIGRvIG5vdCBoYXZlIHNlc3Npb24gaWRzJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGouZ2V0VXJsRm9yUHJveHkoJ2h0dHA6Ly9ob3N0LmNvbToxMjM0L3Nlc3Npb24nKVxuICAgICAgIC5zaG91bGQuZXFsKGBodHRwOi8vJHtURVNUX0hPU1R9OiR7cG9ydH0vc2Vzc2lvbmApO1xuXG4gICAgICBsZXQgbmV3VXJsID0gai5nZXRVcmxGb3JQcm94eSgnL3Nlc3Npb24nKTtcbiAgICAgIG5ld1VybC5zaG91bGQuZXFsKGBodHRwOi8vJHtURVNUX0hPU1R9OiR7cG9ydH0vc2Vzc2lvbmApO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgdGhyb3cgYW4gZXJyb3IgaWYgdXJsIHJlcXVpcmVzIGEgc2Vzc2lvbklkIGJ1dCBpdHMgbnVsbCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KCk7XG4gICAgICBsZXQgZTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGouZ2V0VXJsRm9yUHJveHkoJy9zZXNzaW9uLzQ1Ni9lbGVtZW50LzIwMC92YWx1ZScpO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGUgPSBlcnI7XG4gICAgICB9XG4gICAgICBzaG91bGQuZXhpc3QoZSk7XG4gICAgICBlLm1lc3NhZ2Uuc2hvdWxkLmNvbnRhaW4oJ3dpdGhvdXQgc2Vzc2lvbiBpZCcpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgbm90IHRocm93IGFuIGVycm9yIGlmIHVybCBkb2VzIG5vdCByZXF1aXJlIGEgc2Vzc2lvbiBpZCBhbmQgaXRzIG51bGwnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSgpO1xuICAgICAgbGV0IG5ld1VybCA9IGouZ2V0VXJsRm9yUHJveHkoJy9zdGF0dXMnKTtcblxuICAgICAgc2hvdWxkLmV4aXN0KG5ld1VybCk7XG4gICAgfSk7XG4gIH0pO1xuICBkZXNjcmliZSgnc3RyYWlnaHQgcHJveHknLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBzdWNjZXNzZnVsbHkgcHJveHkgc3RyYWlnaHQnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSgpO1xuICAgICAgbGV0IFtyZXMsIGJvZHldID0gYXdhaXQgai5wcm94eSgnL3N0YXR1cycsICdHRVQnKTtcbiAgICAgIHJlcy5zdGF0dXNDb2RlLnNob3VsZC5lcXVhbCgyMDApO1xuICAgICAgYm9keS5zaG91bGQuZXFsKHtzdGF0dXM6IDAsIHZhbHVlOiB7Zm9vOiAnYmFyJ319KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHBhc3MgYWxvbmcgcmVxdWVzdCBlcnJvcnMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgai5wcm94eSgnL2JhZHVybCcsICdHRVQnKS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZFdpdGgoJ0NvdWxkIG5vdCBwcm94eScpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcHJveHkgZXJyb3IgcmVzcG9uc2VzIGFuZCBjb2RlcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KHtzZXNzaW9uSWQ6ICcxMjMnfSk7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBqLnByb3h5KCcvZWxlbWVudC9iYWQvdGV4dCcsICdHRVQnKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgaXNFcnJvclR5cGUoZS5nZXRBY3R1YWxFcnJvcigpLCBlcnJvcnMuRWxlbWVudE5vdFZpc2libGVFcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuICBkZXNjcmliZSgnY29tbWFuZCBwcm94eScsIGZ1bmN0aW9uICgpIHtcbiAgICBpdCgnc2hvdWxkIHN1Y2Nlc3NmdWxseSBwcm94eSBjb21tYW5kJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoKTtcbiAgICAgIGxldCByZXMgPSBhd2FpdCBqLmNvbW1hbmQoJy9zdGF0dXMnLCAnR0VUJyk7XG4gICAgICByZXMuc2hvdWxkLmVxbCh7Zm9vOiAnYmFyJ30pO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcGFzcyBhbG9uZyByZXF1ZXN0IGVycm9ycycsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KHtzZXNzaW9uSWQ6ICcxMjMnfSk7XG4gICAgICBqLmNvbW1hbmQoJy9iYWR1cmwnLCAnR0VUJykuc2hvdWxkLmV2ZW50dWFsbHkuYmUucmVqZWN0ZWRXaXRoKCdDb3VsZCBub3QgcHJveHknKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHRocm93IHdoZW4gYSBjb21tYW5kIGZhaWxzJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGxldCBlID0gbnVsbDtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IGouY29tbWFuZCgnL2VsZW1lbnQvYmFkL3RleHQnLCAnR0VUJyk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgZSA9IGVycjtcbiAgICAgIH1cbiAgICAgIHNob3VsZC5leGlzdChlKTtcbiAgICAgIGUubWVzc2FnZS5zaG91bGQuY29udGFpbignSW52aXNpYmxlIGVsZW1lbnQnKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHRocm93IHdoZW4gYSBjb21tYW5kIGZhaWxzIHdpdGggYSAyMDAgYmVjYXVzZSB0aGUgc3RhdHVzIGlzIG5vdCAwJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGxldCBlID0gbnVsbDtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IGouY29tbWFuZCgnL2VsZW1lbnQvMjAwL3RleHQnLCAnR0VUJyk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgZSA9IGVycjtcbiAgICAgIH1cbiAgICAgIHNob3VsZC5leGlzdChlKTtcbiAgICAgIGUuZXJyb3Iuc2hvdWxkLmVxbCgnZWxlbWVudCBub3QgdmlzaWJsZScpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgdGhyb3cgd2hlbiBhIGNvbW1hbmQgZmFpbHMgd2l0aCBhIDEwMCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KHtzZXNzaW9uSWQ6ICcxMjMnfSk7XG4gICAgICBsZXQgZSA9IG51bGw7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBqLmNvbW1hbmQoJy9zZXNzaW9uL2JhZGNocm9tZS9ub2Nocm9tZScsICdHRVQnKTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBlID0gZXJyO1xuICAgICAgfVxuICAgICAgc2hvdWxkLmV4aXN0KGUpO1xuICAgICAgZS5tZXNzYWdlLnNob3VsZC5jb250YWluKCdjaHJvbWUgbm90IHJlYWNoYWJsZScpO1xuICAgIH0pO1xuICB9KTtcbiAgZGVzY3JpYmUoJ3JlcS9yZXMgcHJveHknLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBzdWNjZXNzZnVsbHkgcHJveHkgdmlhIHJlcSBhbmQgc2VuZCB0byByZXMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSgpO1xuICAgICAgbGV0IFtyZXEsIHJlc10gPSBidWlsZFJlcVJlcygnL3N0YXR1cycsICdHRVQnKTtcbiAgICAgIGF3YWl0IGoucHJveHlSZXFSZXMocmVxLCByZXMpO1xuICAgICAgcmVzLmhlYWRlcnNbJ2NvbnRlbnQtdHlwZSddLnNob3VsZC5lcXVhbCgnYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCcpO1xuICAgICAgcmVzLnNlbnRDb2RlLnNob3VsZC5lcXVhbCgyMDApO1xuICAgICAgcmVzLnNlbnRCb2R5LnNob3VsZC5lcWwoe3ZhbHVlOiB7Zm9vOiAnYmFyJ319KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHJld3JpdGUgdGhlIGlubmVyIHNlc3Npb24gaWQgc28gaXQgZG9lc250IGNoYW5nZScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KHtzZXNzaW9uSWQ6ICcxMjMnfSk7XG4gICAgICBsZXQgW3JlcSwgcmVzXSA9IGJ1aWxkUmVxUmVzKCcvZWxlbWVudC8yMDAvdmFsdWUnLCAnR0VUJyk7XG4gICAgICBhd2FpdCBqLnByb3h5UmVxUmVzKHJlcSwgcmVzKTtcbiAgICAgIHJlcy5zZW50Qm9keS5zaG91bGQuZXFsKHt2YWx1ZTogJ2Zvb2JhcicsIHNlc3Npb25JZDogJzEyMyd9KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHJld3JpdGUgdGhlIGlubmVyIHNlc3Npb24gaWQgd2l0aCBzZXNzaW9uSWQgaW4gdXJsJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGxldCBbcmVxLCByZXNdID0gYnVpbGRSZXFSZXMoJy9zZXNzaW9uLzQ1Ni9lbGVtZW50LzIwMC92YWx1ZScsICdQT1NUJyk7XG4gICAgICBhd2FpdCBqLnByb3h5UmVxUmVzKHJlcSwgcmVzKTtcbiAgICAgIHJlcy5zZW50Qm9keS5zaG91bGQuZXFsKHt2YWx1ZTogJ2Zvb2JhcicsIHNlc3Npb25JZDogJzQ1Nid9KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHBhc3MgdGhyb3VnaCB1cmxzIHRoYXQgZG8gbm90IHJlcXVpcmUgc2Vzc2lvbiBJRHMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgbGV0IFtyZXEsIHJlc10gPSBidWlsZFJlcVJlcygnL3N0YXR1cycsICdHRVQnKTtcbiAgICAgIGF3YWl0IGoucHJveHlSZXFSZXMocmVxLCByZXMpO1xuICAgICAgcmVzLnNlbnRCb2R5LnNob3VsZC5lcWwoe3ZhbHVlOiB7J2Zvbyc6ICdiYXInfX0pO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcHJveHkgc3RyYW5nZSByZXNwb25zZXMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgbGV0IFtyZXEsIHJlc10gPSBidWlsZFJlcVJlcygnL25vY2hyb21lJywgJ0dFVCcpO1xuICAgICAgYXdhaXQgai5wcm94eVJlcVJlcyhyZXEsIHJlcyk7XG4gICAgICByZXMuc2VudENvZGUuc2hvdWxkLmVxdWFsKDEwMCk7XG4gICAgICByZXMuc2VudEJvZHkuc2hvdWxkLmVxbCh7dmFsdWU6IHttZXNzYWdlOiAnY2hyb21lIG5vdCByZWFjaGFibGUnfX0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|
|
292
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFJlcVJlcyIsInVybCIsIm1ldGhvZCIsImJvZHkiLCJyZXEiLCJvcmlnaW5hbFVybCIsInJlcyIsImhlYWRlcnMiLCJzZXQiLCJrIiwidiIsInN0YXR1cyIsImNvZGUiLCJzZW50Q29kZSIsInNlbmQiLCJKU09OIiwicGFyc2UiLCJlIiwic2VudEJvZHkiLCJkZXNjcmliZSIsInBvcnQiLCJtb2NrUHJveHkiLCJvcHRzIiwic2VydmVyIiwiVEVTVF9IT1NUIiwicHJveHkiLCJKV1Byb3h5IiwicmVxdWVzdCIsImFyZ3MiLCJiZWZvcmUiLCJnZXRUZXN0UG9ydCIsIml0IiwiaiIsInNob3VsZCIsImVxdWFsIiwiZGVzaXJlZENhcGFiaWxpdGllcyIsInN0YXR1c0NvZGUiLCJlcWwiLCJzZXNzaW9uSWQiLCJ2YWx1ZSIsImJyb3dzZXJOYW1lIiwiZ2V0VXJsRm9yUHJveHkiLCJyZXFCYXNlUGF0aCIsIm5ld1VybCIsImVyciIsImV4aXN0IiwibWVzc2FnZSIsImNvbnRhaW4iLCJmb28iLCJldmVudHVhbGx5IiwiYmUiLCJyZWplY3RlZFdpdGgiLCJpc0Vycm9yVHlwZSIsImdldEFjdHVhbEVycm9yIiwiZXJyb3JzIiwiRWxlbWVudE5vdFZpc2libGVFcnJvciIsInRydWUiLCJjb21tYW5kIiwiZXJyb3IiLCJwcm94eVJlcVJlcyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9qc29ud3AtcHJveHkvcHJveHkuc3BlYy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0cmFuc3BpbGU6bW9jaGFcblxuaW1wb3J0IHtKV1Byb3h5fSBmcm9tICcuLi8uLi8uLi9saWInO1xuaW1wb3J0IHJlcXVlc3QgZnJvbSAnLi9tb2NrLXJlcXVlc3QnO1xuaW1wb3J0IHtpc0Vycm9yVHlwZSwgZXJyb3JzfSBmcm9tICcuLi8uLi8uLi9saWIvcHJvdG9jb2wvZXJyb3JzJztcbmltcG9ydCB7Z2V0VGVzdFBvcnQsIFRFU1RfSE9TVH0gZnJvbSAnLi4vLi4vaGVscGVycyc7XG5cbmZ1bmN0aW9uIGJ1aWxkUmVxUmVzKHVybCwgbWV0aG9kLCBib2R5KSB7XG4gIGxldCByZXEgPSB7b3JpZ2luYWxVcmw6IHVybCwgbWV0aG9kLCBib2R5fTtcbiAgbGV0IHJlcyA9IHt9O1xuICByZXMuaGVhZGVycyA9IHt9O1xuICByZXMuc2V0ID0gKGssIHYpID0+IHtcbiAgICByZXNba10gPSB2O1xuICB9O1xuICByZXMuc3RhdHVzID0gKGNvZGUpID0+IHtcbiAgICByZXMuc2VudENvZGUgPSBjb2RlO1xuICAgIHJldHVybiByZXM7XG4gIH07XG4gIHJlcy5zZW5kID0gKGJvZHkpID0+IHtcbiAgICB0cnkge1xuICAgICAgYm9keSA9IEpTT04ucGFyc2UoYm9keSk7XG4gICAgfSBjYXRjaCAoZSkge31cbiAgICByZXMuc2VudEJvZHkgPSBib2R5O1xuICB9O1xuICByZXR1cm4gW3JlcSwgcmVzXTtcbn1cblxuZGVzY3JpYmUoJ3Byb3h5JywgZnVuY3Rpb24gKCkge1xuICBsZXQgcG9ydDtcblxuICBmdW5jdGlvbiBtb2NrUHJveHkob3B0cyA9IHt9KSB7XG4gICAgLy8gc2V0cyBkZWZhdWx0IHNlcnZlci9wb3J0XG4gICAgb3B0cyA9IHtzZXJ2ZXI6IFRFU1RfSE9TVCwgcG9ydCwgLi4ub3B0c307XG4gICAgbGV0IHByb3h5ID0gbmV3IEpXUHJveHkob3B0cyk7XG4gICAgcHJveHkucmVxdWVzdCA9IGFzeW5jIGZ1bmN0aW9uICguLi5hcmdzKSB7XG4gICAgICByZXR1cm4gYXdhaXQgcmVxdWVzdCguLi5hcmdzKTtcbiAgICB9O1xuICAgIHJldHVybiBwcm94eTtcbiAgfVxuXG4gIGJlZm9yZShhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgcG9ydCA9IGF3YWl0IGdldFRlc3RQb3J0KCk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgb3ZlcnJpZGUgZGVmYXVsdCBwYXJhbXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgbGV0IGogPSBtb2NrUHJveHkoe3NlcnZlcjogJzEyNy4wLjAuMicsIHBvcnR9KTtcbiAgICBqLnNlcnZlci5zaG91bGQuZXF1YWwoJzEyNy4wLjAuMicpO1xuICAgIGoucG9ydC5zaG91bGQuZXF1YWwocG9ydCk7XG4gIH0pO1xuICBpdCgnc2hvdWxkIHNhdmUgc2Vzc2lvbiBpZCBvbiBzZXNzaW9uIGNyZWF0aW9uJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGxldCBqID0gbW9ja1Byb3h5KCk7XG4gICAgbGV0IFtyZXMsIGJvZHldID0gYXdhaXQgai5wcm94eSgnL3Nlc3Npb24nLCAnUE9TVCcsIHtcbiAgICAgIGRlc2lyZWRDYXBhYmlsaXRpZXM6IHt9LFxuICAgIH0pO1xuICAgIHJlcy5zdGF0dXNDb2RlLnNob3VsZC5lcXVhbCgyMDApO1xuICAgIGJvZHkuc2hvdWxkLmVxbCh7c3RhdHVzOiAwLCBzZXNzaW9uSWQ6ICcxMjMnLCB2YWx1ZToge2Jyb3dzZXJOYW1lOiAnYm9vJ319KTtcbiAgICBqLnNlc3Npb25JZC5zaG91bGQuZXF1YWwoJzEyMycpO1xuICB9KTtcbiAgZGVzY3JpYmUoJ2dldFVybEZvclByb3h5JywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdzaG91bGQgbW9kaWZ5IHNlc3Npb24gaWQsIGhvc3QsIGFuZCBwb3J0JywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGouZ2V0VXJsRm9yUHJveHkoJ2h0dHA6Ly9ob3N0LmNvbToxMjM0L3Nlc3Npb24vNDU2L2VsZW1lbnQvMjAwL3ZhbHVlJykuc2hvdWxkLmVxbChcbiAgICAgICAgYGh0dHA6Ly8ke1RFU1RfSE9TVH06JHtwb3J0fS9zZXNzaW9uLzEyMy9lbGVtZW50LzIwMC92YWx1ZWBcbiAgICAgICk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBwcmVwZW5kIHNjaGVtZSwgaG9zdCBhbmQgcG9ydCBpZiBub3QgcHJvdmlkZWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgai5nZXRVcmxGb3JQcm94eSgnL3Nlc3Npb24vNDU2L2VsZW1lbnQvMjAwL3ZhbHVlJykuc2hvdWxkLmVxbChcbiAgICAgICAgYGh0dHA6Ly8ke1RFU1RfSE9TVH06JHtwb3J0fS9zZXNzaW9uLzEyMy9lbGVtZW50LzIwMC92YWx1ZWBcbiAgICAgICk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCByZXNwZWN0IG5vbnN0YW5kYXJkIGluY29taW5nIHJlcXVlc3QgYmFzZSBwYXRoJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMycsIHJlcUJhc2VQYXRoOiAnJ30pO1xuICAgICAgai5nZXRVcmxGb3JQcm94eSgnL3Nlc3Npb24vNDU2L2VsZW1lbnQvMjAwL3ZhbHVlJykuc2hvdWxkLmVxbChcbiAgICAgICAgYGh0dHA6Ly8ke1RFU1RfSE9TVH06JHtwb3J0fS9zZXNzaW9uLzEyMy9lbGVtZW50LzIwMC92YWx1ZWBcbiAgICAgICk7XG5cbiAgICAgIGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMycsIHJlcUJhc2VQYXRoOiAnL215L2Jhc2UvcGF0aCd9KTtcbiAgICAgIGouZ2V0VXJsRm9yUHJveHkoJy9teS9iYXNlL3BhdGgvc2Vzc2lvbi80NTYvZWxlbWVudC8yMDAvdmFsdWUnKS5zaG91bGQuZXFsKFxuICAgICAgICBgaHR0cDovLyR7VEVTVF9IT1NUfToke3BvcnR9L3Nlc3Npb24vMTIzL2VsZW1lbnQvMjAwL3ZhbHVlYFxuICAgICAgKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHdvcmsgd2l0aCB1cmxzIHdoaWNoIGRvIG5vdCBoYXZlIHNlc3Npb24gaWRzJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGouZ2V0VXJsRm9yUHJveHkoJ2h0dHA6Ly9ob3N0LmNvbToxMjM0L3Nlc3Npb24nKS5zaG91bGQuZXFsKFxuICAgICAgICBgaHR0cDovLyR7VEVTVF9IT1NUfToke3BvcnR9L3Nlc3Npb25gXG4gICAgICApO1xuXG4gICAgICBsZXQgbmV3VXJsID0gai5nZXRVcmxGb3JQcm94eSgnL3Nlc3Npb24nKTtcbiAgICAgIG5ld1VybC5zaG91bGQuZXFsKGBodHRwOi8vJHtURVNUX0hPU1R9OiR7cG9ydH0vc2Vzc2lvbmApO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgdGhyb3cgYW4gZXJyb3IgaWYgdXJsIHJlcXVpcmVzIGEgc2Vzc2lvbklkIGJ1dCBpdHMgbnVsbCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KCk7XG4gICAgICBsZXQgZTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGouZ2V0VXJsRm9yUHJveHkoJy9zZXNzaW9uLzQ1Ni9lbGVtZW50LzIwMC92YWx1ZScpO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGUgPSBlcnI7XG4gICAgICB9XG4gICAgICBzaG91bGQuZXhpc3QoZSk7XG4gICAgICBlLm1lc3NhZ2Uuc2hvdWxkLmNvbnRhaW4oJ3dpdGhvdXQgc2Vzc2lvbiBpZCcpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgbm90IHRocm93IGFuIGVycm9yIGlmIHVybCBkb2VzIG5vdCByZXF1aXJlIGEgc2Vzc2lvbiBpZCBhbmQgaXRzIG51bGwnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSgpO1xuICAgICAgbGV0IG5ld1VybCA9IGouZ2V0VXJsRm9yUHJveHkoJy9zdGF0dXMnKTtcblxuICAgICAgc2hvdWxkLmV4aXN0KG5ld1VybCk7XG4gICAgfSk7XG4gIH0pO1xuICBkZXNjcmliZSgnc3RyYWlnaHQgcHJveHknLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBzdWNjZXNzZnVsbHkgcHJveHkgc3RyYWlnaHQnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSgpO1xuICAgICAgbGV0IFtyZXMsIGJvZHldID0gYXdhaXQgai5wcm94eSgnL3N0YXR1cycsICdHRVQnKTtcbiAgICAgIHJlcy5zdGF0dXNDb2RlLnNob3VsZC5lcXVhbCgyMDApO1xuICAgICAgYm9keS5zaG91bGQuZXFsKHtzdGF0dXM6IDAsIHZhbHVlOiB7Zm9vOiAnYmFyJ319KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHBhc3MgYWxvbmcgcmVxdWVzdCBlcnJvcnMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgai5wcm94eSgnL2JhZHVybCcsICdHRVQnKS5zaG91bGQuZXZlbnR1YWxseS5iZS5yZWplY3RlZFdpdGgoJ0NvdWxkIG5vdCBwcm94eScpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcHJveHkgZXJyb3IgcmVzcG9uc2VzIGFuZCBjb2RlcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KHtzZXNzaW9uSWQ6ICcxMjMnfSk7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBqLnByb3h5KCcvZWxlbWVudC9iYWQvdGV4dCcsICdHRVQnKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgaXNFcnJvclR5cGUoZS5nZXRBY3R1YWxFcnJvcigpLCBlcnJvcnMuRWxlbWVudE5vdFZpc2libGVFcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuICBkZXNjcmliZSgnY29tbWFuZCBwcm94eScsIGZ1bmN0aW9uICgpIHtcbiAgICBpdCgnc2hvdWxkIHN1Y2Nlc3NmdWxseSBwcm94eSBjb21tYW5kJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoKTtcbiAgICAgIGxldCByZXMgPSBhd2FpdCBqLmNvbW1hbmQoJy9zdGF0dXMnLCAnR0VUJyk7XG4gICAgICByZXMuc2hvdWxkLmVxbCh7Zm9vOiAnYmFyJ30pO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcGFzcyBhbG9uZyByZXF1ZXN0IGVycm9ycycsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KHtzZXNzaW9uSWQ6ICcxMjMnfSk7XG4gICAgICBqLmNvbW1hbmQoJy9iYWR1cmwnLCAnR0VUJykuc2hvdWxkLmV2ZW50dWFsbHkuYmUucmVqZWN0ZWRXaXRoKCdDb3VsZCBub3QgcHJveHknKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHRocm93IHdoZW4gYSBjb21tYW5kIGZhaWxzJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGxldCBlID0gbnVsbDtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IGouY29tbWFuZCgnL2VsZW1lbnQvYmFkL3RleHQnLCAnR0VUJyk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgZSA9IGVycjtcbiAgICAgIH1cbiAgICAgIHNob3VsZC5leGlzdChlKTtcbiAgICAgIGUubWVzc2FnZS5zaG91bGQuY29udGFpbignSW52aXNpYmxlIGVsZW1lbnQnKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHRocm93IHdoZW4gYSBjb21tYW5kIGZhaWxzIHdpdGggYSAyMDAgYmVjYXVzZSB0aGUgc3RhdHVzIGlzIG5vdCAwJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGxldCBlID0gbnVsbDtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IGouY29tbWFuZCgnL2VsZW1lbnQvMjAwL3RleHQnLCAnR0VUJyk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgZSA9IGVycjtcbiAgICAgIH1cbiAgICAgIHNob3VsZC5leGlzdChlKTtcbiAgICAgIGUuZXJyb3Iuc2hvdWxkLmVxbCgnZWxlbWVudCBub3QgdmlzaWJsZScpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgdGhyb3cgd2hlbiBhIGNvbW1hbmQgZmFpbHMgd2l0aCBhIDEwMCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KHtzZXNzaW9uSWQ6ICcxMjMnfSk7XG4gICAgICBsZXQgZSA9IG51bGw7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBqLmNvbW1hbmQoJy9zZXNzaW9uL2JhZGNocm9tZS9ub2Nocm9tZScsICdHRVQnKTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBlID0gZXJyO1xuICAgICAgfVxuICAgICAgc2hvdWxkLmV4aXN0KGUpO1xuICAgICAgZS5tZXNzYWdlLnNob3VsZC5jb250YWluKCdjaHJvbWUgbm90IHJlYWNoYWJsZScpO1xuICAgIH0pO1xuICB9KTtcbiAgZGVzY3JpYmUoJ3JlcS9yZXMgcHJveHknLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBzdWNjZXNzZnVsbHkgcHJveHkgdmlhIHJlcSBhbmQgc2VuZCB0byByZXMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSgpO1xuICAgICAgbGV0IFtyZXEsIHJlc10gPSBidWlsZFJlcVJlcygnL3N0YXR1cycsICdHRVQnKTtcbiAgICAgIGF3YWl0IGoucHJveHlSZXFSZXMocmVxLCByZXMpO1xuICAgICAgcmVzLmhlYWRlcnNbJ2NvbnRlbnQtdHlwZSddLnNob3VsZC5lcXVhbCgnYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCcpO1xuICAgICAgcmVzLnNlbnRDb2RlLnNob3VsZC5lcXVhbCgyMDApO1xuICAgICAgcmVzLnNlbnRCb2R5LnNob3VsZC5lcWwoe3ZhbHVlOiB7Zm9vOiAnYmFyJ319KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHJld3JpdGUgdGhlIGlubmVyIHNlc3Npb24gaWQgc28gaXQgZG9lc250IGNoYW5nZScsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBqID0gbW9ja1Byb3h5KHtzZXNzaW9uSWQ6ICcxMjMnfSk7XG4gICAgICBsZXQgW3JlcSwgcmVzXSA9IGJ1aWxkUmVxUmVzKCcvZWxlbWVudC8yMDAvdmFsdWUnLCAnR0VUJyk7XG4gICAgICBhd2FpdCBqLnByb3h5UmVxUmVzKHJlcSwgcmVzKTtcbiAgICAgIHJlcy5zZW50Qm9keS5zaG91bGQuZXFsKHt2YWx1ZTogJ2Zvb2JhcicsIHNlc3Npb25JZDogJzEyMyd9KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHJld3JpdGUgdGhlIGlubmVyIHNlc3Npb24gaWQgd2l0aCBzZXNzaW9uSWQgaW4gdXJsJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGxldCBbcmVxLCByZXNdID0gYnVpbGRSZXFSZXMoJy9zZXNzaW9uLzQ1Ni9lbGVtZW50LzIwMC92YWx1ZScsICdQT1NUJyk7XG4gICAgICBhd2FpdCBqLnByb3h5UmVxUmVzKHJlcSwgcmVzKTtcbiAgICAgIHJlcy5zZW50Qm9keS5zaG91bGQuZXFsKHt2YWx1ZTogJ2Zvb2JhcicsIHNlc3Npb25JZDogJzQ1Nid9KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHBhc3MgdGhyb3VnaCB1cmxzIHRoYXQgZG8gbm90IHJlcXVpcmUgc2Vzc2lvbiBJRHMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaiA9IG1vY2tQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgbGV0IFtyZXEsIHJlc10gPSBidWlsZFJlcVJlcygnL3N0YXR1cycsICdHRVQnKTtcbiAgICAgIGF3YWl0IGoucHJveHlSZXFSZXMocmVxLCByZXMpO1xuICAgICAgcmVzLnNlbnRCb2R5LnNob3VsZC5lcWwoe3ZhbHVlOiB7Zm9vOiAnYmFyJ319KTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHByb3h5IHN0cmFuZ2UgcmVzcG9uc2VzJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGogPSBtb2NrUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGxldCBbcmVxLCByZXNdID0gYnVpbGRSZXFSZXMoJy9ub2Nocm9tZScsICdHRVQnKTtcbiAgICAgIGF3YWl0IGoucHJveHlSZXFSZXMocmVxLCByZXMpO1xuICAgICAgcmVzLnNlbnRDb2RlLnNob3VsZC5lcXVhbCgxMDApO1xuICAgICAgcmVzLnNlbnRCb2R5LnNob3VsZC5lcWwoe3ZhbHVlOiB7bWVzc2FnZTogJ2Nocm9tZSBub3QgcmVhY2hhYmxlJ319KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsU0FBU0EsV0FBVCxDQUFxQkMsR0FBckIsRUFBMEJDLE1BQTFCLEVBQWtDQyxJQUFsQyxFQUF3QztFQUN0QyxJQUFJQyxHQUFHLEdBQUc7SUFBQ0MsV0FBVyxFQUFFSixHQUFkO0lBQW1CQyxNQUFuQjtJQUEyQkM7RUFBM0IsQ0FBVjtFQUNBLElBQUlHLEdBQUcsR0FBRyxFQUFWO0VBQ0FBLEdBQUcsQ0FBQ0MsT0FBSixHQUFjLEVBQWQ7O0VBQ0FELEdBQUcsQ0FBQ0UsR0FBSixHQUFVLENBQUNDLENBQUQsRUFBSUMsQ0FBSixLQUFVO0lBQ2xCSixHQUFHLENBQUNHLENBQUQsQ0FBSCxHQUFTQyxDQUFUO0VBQ0QsQ0FGRDs7RUFHQUosR0FBRyxDQUFDSyxNQUFKLEdBQWNDLElBQUQsSUFBVTtJQUNyQk4sR0FBRyxDQUFDTyxRQUFKLEdBQWVELElBQWY7SUFDQSxPQUFPTixHQUFQO0VBQ0QsQ0FIRDs7RUFJQUEsR0FBRyxDQUFDUSxJQUFKLEdBQVlYLElBQUQsSUFBVTtJQUNuQixJQUFJO01BQ0ZBLElBQUksR0FBR1ksSUFBSSxDQUFDQyxLQUFMLENBQVdiLElBQVgsQ0FBUDtJQUNELENBRkQsQ0FFRSxPQUFPYyxDQUFQLEVBQVUsQ0FBRTs7SUFDZFgsR0FBRyxDQUFDWSxRQUFKLEdBQWVmLElBQWY7RUFD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
|
|
@@ -162,4 +162,4 @@ describe('JWProxy', function () {
|
|
|
162
162
|
});
|
|
163
163
|
});
|
|
164
164
|
});
|
|
165
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9qc29ud3AtcHJveHkvdXJsLnNwZWMuanMiXSwibmFtZXMiOlsiZGVzY3JpYmUiLCJwb3J0IiwiY3JlYXRlVGVzdFVSTCIsInRlc3RTdGF0dXNVUkwiLCJjcmVhdGVUZXN0U2Vzc2lvblVSTCIsInRlc3ROZXdTZXNzaW9uVVJMIiwiUFJPWFlfSE9TVCIsIlBST1hZX1BPUlQiLCJjcmVhdGVQcm94eVVSTCIsIlBST1hZX1NUQVRVU19VUkwiLCJjcmVhdGVKV1Byb3h5Iiwib3B0cyIsIkpXUHJveHkiLCJzZXJ2ZXIiLCJURVNUX0hPU1QiLCJiZWZvcmUiLCJfIiwiaXQiLCJpbmNvbWluZ1VybCIsImoiLCJwcm94eVVybCIsImdldFVybEZvclByb3h5Iiwic2hvdWxkIiwiZXF1YWwiLCJzY2hlbWUiLCJiYXNlIiwic2Vzc2lvbklkIiwidGhyb3ciXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBOztBQUNBOztBQUNBOztBQUVBQSxRQUFRLENBQUMsU0FBRCxFQUFZLFlBQVk7QUFDOUIsTUFBSUMsSUFBSjtBQUVBLE1BQUlDLGFBQUo7QUFDQSxNQUFJQyxhQUFKO0FBQ0EsTUFBSUMsb0JBQUo7QUFDQSxNQUFJQyxpQkFBSjtBQUVBLFFBQU1DLFVBQVUsR0FBRyxXQUFuQjtBQUNBLFFBQU1DLFVBQVUsR0FBRyxJQUFuQjtBQUVBLFFBQU1DLGNBQWMsR0FBRyw4QkFBZ0JGLFVBQWhCLEVBQTRCQyxVQUE1QixDQUF2QjtBQUNBLFFBQU1FLGdCQUFnQixHQUFHRCxjQUFjLENBQUMsRUFBRCxFQUFLLFFBQUwsQ0FBdkM7O0FBRUEsV0FBU0UsYUFBVCxDQUF3QkMsSUFBSSxHQUFHLEVBQS9CLEVBQW1DO0FBQ2pDLFdBQU8sSUFBSUMsWUFBSixDQUFZO0FBQUNDLE1BQUFBLE1BQU0sRUFBRUMsa0JBQVQ7QUFBb0JiLE1BQUFBLElBQXBCO0FBQTBCLFNBQUdVO0FBQTdCLEtBQVosQ0FBUDtBQUNEOztBQUVESSxFQUFBQSxNQUFNLENBQUMs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QWhCLENBQXNCckIsYUFBYSxDQUFDLFFBQUQsRUFBVyxtQ0FBWCxDQUFuQztBQUNELEtBTEMsQ0FBRjtBQU1BZSxJQUFBQSxFQUFFLENBQUMsbUVBQUQsRUFBc0UsWUFBWTtBQUNsRixVQUFJQyxXQUFXLEdBQUcsVUFBbEI7QUFDQSxVQUFJQyxDQUFDLEdBQUdULGFBQWEsRUFBckI7QUFDQSxPQUFDLE1BQU07QUFBRVMsUUFBQUEsQ0FBQyxDQUFDRSxjQUFGLENBQWlCSCxXQUFqQjtBQUFnQyxPQUF6QyxFQUEyQ0ksTUFBM0MsQ0FBa0RLLEtBQWxELENBQXdELFlBQXhEO0FBQ0QsS0FKQyxDQUFGO0FBS0QsR0FuRU8sQ0FBUjtBQXFFRCxDQS9ITyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHJhbnNwaWxlOm1vY2hhXG5cbmltcG9ydCB7IEpXUHJveHkgfSBmcm9tICcuLi8uLi8uLi9saWInO1xuaW1wb3J0IHsgZ2V0VGVzdFBvcnQsIFRFU1RfSE9TVCwgY3JlYXRlQXBwaXVtVVJMIH0gZnJvbSAnLi4vLi4vaGVscGVycyc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuXG5kZXNjcmliZSgnSldQcm94eScsIGZ1bmN0aW9uICgpIHtcbiAgbGV0IHBvcnQ7XG5cbiAgbGV0IGNyZWF0ZVRlc3RVUkw7XG4gIGxldCB0ZXN0U3RhdHVzVVJMO1xuICBsZXQgY3JlYXRlVGVzdFNlc3Npb25VUkw7XG4gIGxldCB0ZXN0TmV3U2Vzc2lvblVSTDtcblxuICBjb25zdCBQUk9YWV9IT1NUID0gJzEyNy4wLjAuMic7XG4gIGNvbnN0IFBST1hZX1BPUlQgPSA0NzIzO1xuXG4gIGNvbnN0IGNyZWF0ZVByb3h5VVJMID0gY3JlYXRlQXBwaXVtVVJMKFBST1hZX0hPU1QsIFBST1hZX1BPUlQpO1xuICBjb25zdCBQUk9YWV9TVEFUVVNfVVJMID0gY3JlYXRlUHJveHlVUkwoJycsICdzdGF0dXMnKTtcblxuICBmdW5jdGlvbiBjcmVhdGVKV1Byb3h5IChvcHRzID0ge30pIHtcbiAgICByZXR1cm4gbmV3IEpXUHJveHkoe3NlcnZlcjogVEVTVF9IT1NULCBwb3J0LCAuLi5vcHRzfSk7XG4gIH1cblxuICBiZWZvcmUoYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIHBvcnQgPSBhd2FpdCBnZXRUZXN0UG9ydCgpO1xuICAgIGNyZWF0ZVRlc3RVUkwgPSBjcmVhdGVBcHBpdW1VUkwoVEVTVF9IT1NULCBwb3J0KTtcbiAgICB0ZXN0U3RhdHVzVVJMID0gY3JlYXRlVGVzdFVSTCgnJywgJ3N0YXR1cycpO1xuICAgIGNyZWF0ZVRlc3RTZXNzaW9uVVJMID0gY3JlYXRlVGVzdFVSTChfLCAnJyk7XG4gICAgdGVzdE5ld1Nlc3Npb25VUkwgPSBjcmVhdGVUZXN0VVJMKCcnLCAnc2Vzc2lvbicpO1xuICB9KTtcblxuICBkZXNjcmliZSgncHJveHlpbmcgZnVsbCB1cmxzJywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdzaG91bGQgdHJhbnNsYXRlIGhvc3QgYW5kIHBvcnQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSBQUk9YWV9TVEFUVVNfVVJMO1xuICAgICAgbGV0IGogPSBjcmVhdGVKV1Byb3h5KCk7XG4gICAgICBsZXQgcHJveHlVcmwgPSBqLmdldFVybEZvclByb3h5KGluY29taW5nVXJsKTtcbiAgICAgIHByb3h5VXJsLnNob3VsZC5lcXVhbCh0ZXN0U3RhdHVzVVJMKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHRyYW5zbGF0ZSB0aGUgc2NoZW1lJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gUFJPWFlfU1RBVFVTX1VSTDtcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSh7c2NoZW1lOiAnSFRUUFMnfSk7XG4gICAgICBsZXQgcHJveHlVcmwgPSBqLmdldFVybEZvclByb3h5KGluY29taW5nVXJsKTtcbiAgICAgIHByb3h5VXJsLnNob3VsZC5lcXVhbChjcmVhdGVBcHBpdW1VUkwoYGh0dHBzOi8vJHtURVNUX0hPU1R9YCwgcG9ydCwgJycsICdzdGF0dXMnKSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCB0cmFuc2xhdGUgdGhlIGJhc2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSBQUk9YWV9TVEFUVVNfVVJMO1xuICAgICAgbGV0IGogPSBjcmVhdGVKV1Byb3h5KHtiYXNlOiAnJ30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwodGVzdFN0YXR1c1VSTCk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCB0cmFuc2xhdGUgdGhlIHNlc3Npb24gaWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSBjcmVhdGVQcm94eVVSTCgnZm9vYmFyJywgJ2VsZW1lbnQnKTtcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSh7c2Vzc2lvbklkOiAnYmFyYmF6J30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwoY3JlYXRlVGVzdFVSTCgnYmFyYmF6JywgJ2VsZW1lbnQnKSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBlcnJvciB3aGVuIHRyYW5zbGF0aW5nIHNlc3Npb24gY29tbWFuZHMgd2l0aG91dCBzZXNzaW9uIGlkJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gY3JlYXRlUHJveHlVUkwoJ2Zvb2JhcicsICdlbGVtZW50Jyk7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoKTtcbiAgICAgICgoKSA9PiB7IGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpOyB9KS5zaG91bGQudGhyb3coJ3Nlc3Npb24gaWQnKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3Byb3h5aW5nIHBhcnRpYWwgdXJscycsIGZ1bmN0aW9uICgpIHtcbiAgICBpdCgnc2hvdWxkIHByb3h5IC9zdGF0dXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSAnL3N0YXR1cyc7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoKTtcbiAgICAgIGxldCBwcm94eVVybCA9IGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpO1xuICAgICAgcHJveHlVcmwuc2hvdWxkLmVxdWFsKHRlc3RTdGF0dXNVUkwpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcHJveHkgL3Nlc3Npb24nLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSAnL3Nlc3Npb24nO1xuICAgICAgbGV0IGogPSBjcmVhdGVKV1Byb3h5KCk7XG4gICAgICBsZXQgcHJveHlVcmwgPSBqLmdldFVybEZvclByb3h5KGluY29taW5nVXJsKTtcbiAgICAgIHByb3h5VXJsLnNob3VsZC5lcXVhbCh0ZXN0TmV3U2Vzc2lvblVSTCk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBwcm94eSAvc2Vzc2lvbnMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSAnL3Nlc3Npb25zJztcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSgpO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwoY3JlYXRlVGVzdFVSTCgnJywgJ3Nlc3Npb25zJykpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcHJveHkgc2Vzc2lvbiBjb21tYW5kcyBiYXNlZCBvZmYgL3Nlc3Npb24nLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSAnL3Nlc3Npb24vZm9vYmFyL2VsZW1lbnQnO1xuICAgICAgbGV0IGogPSBjcmVhdGVKV1Byb3h5KHtzZXNzaW9uSWQ6ICdiYXJiYXonfSk7XG4gICAgICBsZXQgcHJveHlVcmwgPSBqLmdldFVybEZvclByb3h5KGluY29taW5nVXJsKTtcbiAgICAgIHByb3h5VXJsLnNob3VsZC5lcXVhbChjcmVhdGVUZXN0VVJMKCdiYXJiYXonLCAnZWxlbWVudCcpKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIGVycm9yIHNlc3Npb24gY29tbWFuZHMgYmFzZWQgb2ZmIC9zZXNzaW9uIHdpdGhvdXQgc2Vzc2lvbiBpZCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBpbmNvbWluZ1VybCA9ICcvc2Vzc2lvbi9mb29iYXIvZWxlbWVudCc7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoKTtcbiAgICAgICgoKSA9PiB7IGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpOyB9KS5zaG91bGQudGhyb3coJ3Nlc3Npb24gaWQnKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHByb3h5IHNlc3Npb24gY29tbWFuZHMgYmFzZWQgb2ZmICcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBpbmNvbWluZ1VybCA9ICcvc2Vzc2lvbi8zZDAwMWRiMi03OTg3LTQyYTctOTc1ZC04ZDVkNTMwNDA4M2YvdGltZW91dHMvaW1wbGljaXRfd2FpdCc7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoe3Nlc3Npb25JZDogJzEyMyd9KTtcbiAgICAgIGxldCBwcm94eVVybCA9IGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpO1xuICAgICAgcHJveHlVcmwuc2hvdWxkLmVxdWFsKGNyZWF0ZVRlc3RVUkwoJzEyMycsICd0aW1lb3V0cy9pbXBsaWNpdF93YWl0JykpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcHJveHkgc2Vzc2lvbiBjb21tYW5kcyBiYXNlZCBvZmYgL3Nlc3Npb24gYXMgXCJcIicsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBpbmNvbWluZ1VybCA9ICcnO1xuICAgICAgbGV0IGogPSBjcmVhdGVKV1Byb3h5KCk7XG4gICAgICAoKCkgPT4geyBqLmdldFVybEZvclByb3h5KGluY29taW5nVXJsKTsgfSkuc2hvdWxkLnRocm93KCdzZXNzaW9uIGlkJyk7XG4gICAgICBqID0gY3JlYXRlSldQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwoY3JlYXRlVGVzdFNlc3Npb25VUkwoJzEyMycpKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHByb3h5IHNlc3Npb24gY29tbWFuZHMgd2l0aG91dCAvc2Vzc2lvbicsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBpbmNvbWluZ1VybCA9ICcvZWxlbWVudCc7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoe3Nlc3Npb25JZDogJ2JhcmJheid9KTtcbiAgICAgIGxldCBwcm94eVVybCA9IGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpO1xuICAgICAgcHJveHlVcmwuc2hvdWxkLmVxdWFsKGNyZWF0ZVRlc3RVUkwoJ2JhcmJheicsICdlbGVtZW50JykpO1xuICAgIH0pO1xuICAgIGl0KGBzaG91bGQgcHJveHkgc2Vzc2lvbiBjb21tYW5kcyB3aGVuICcvc2Vzc2lvbicgaXMgaW4gdGhlIHVybGAsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBpbmNvbWluZ1VybCA9ICcvc2Vzc2lvbi84MmE5YjdkYS1mYWFmLTRhMWQtOGVmMy01ZTRmYjU4MTIyMDAvY29va2llL3Nlc3Npb24tc29tZXRoaW5nLW9yLW90aGVyJztcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSh7c2Vzc2lvbklkOiAnYmFyYmF6J30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwoY3JlYXRlVGVzdFVSTCgnYmFyYmF6JywgJ2Nvb2tpZS9zZXNzaW9uLXNvbWV0aGluZy1vci1vdGhlcicpKTtcbiAgICB9KTtcbiAgICBpdChgc2hvdWxkIHByb3h5IHNlc3Npb24gY29tbWFuZHMgd2hlbiAnL3Nlc3Npb24nIGlzIGluIHRoZSB1cmwgYW5kIG5vdCBiYXNlIG9uIHRoZSBvcmlnaW5hbCB1cmxgLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSAnL3Nlc3Npb24vODJhOWI3ZGEtZmFhZi00YTFkLThlZjMtNWU0ZmI1ODEyMjAwL2Nvb2tpZS9zZXNzaW9uLXNvbWV0aGluZy1vci1vdGhlcic7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoe3Nlc3Npb25JZDogJ2JhcmJheid9KTtcbiAgICAgIGxldCBwcm94eVVybCA9IGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpO1xuICAgICAgcHJveHlVcmwuc2hvdWxkLmVxdWFsKGNyZWF0ZVRlc3RVUkwoJ2JhcmJheicsICdjb29raWUvc2Vzc2lvbi1zb21ldGhpbmctb3Itb3RoZXInKSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBlcnJvciBzZXNzaW9uIGNvbW1hbmRzIHdpdGhvdXQgL3Nlc3Npb24gd2l0aG91dCBzZXNzaW9uIGlkJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gJy9lbGVtZW50JztcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSgpO1xuICAgICAgKCgpID0+IHsgai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7IH0pLnNob3VsZC50aHJvdygnc2Vzc2lvbiBpZCcpO1xuICAgIH0pO1xuICB9KTtcblxufSk7XG4iXX0=
|
|
165
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZXNjcmliZSIsInBvcnQiLCJjcmVhdGVUZXN0VVJMIiwidGVzdFN0YXR1c1VSTCIsImNyZWF0ZVRlc3RTZXNzaW9uVVJMIiwidGVzdE5ld1Nlc3Npb25VUkwiLCJQUk9YWV9IT1NUIiwiUFJPWFlfUE9SVCIsImNyZWF0ZVByb3h5VVJMIiwiY3JlYXRlQXBwaXVtVVJMIiwiUFJPWFlfU1RBVFVTX1VSTCIsImNyZWF0ZUpXUHJveHkiLCJvcHRzIiwiSldQcm94eSIsInNlcnZlciIsIlRFU1RfSE9TVCIsImJlZm9yZSIsImdldFRlc3RQb3J0IiwiXyIsIml0IiwiaW5jb21pbmdVcmwiLCJqIiwicHJveHlVcmwiLCJnZXRVcmxGb3JQcm94eSIsInNob3VsZCIsImVxdWFsIiwic2NoZW1lIiwiYmFzZSIsInNlc3Npb25JZCIsInRocm93Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdGVzdC91bml0L2pzb253cC1wcm94eS91cmwuc3BlYy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0cmFuc3BpbGU6bW9jaGFcblxuaW1wb3J0IHtKV1Byb3h5fSBmcm9tICcuLi8uLi8uLi9saWInO1xuaW1wb3J0IHtnZXRUZXN0UG9ydCwgVEVTVF9IT1NULCBjcmVhdGVBcHBpdW1VUkx9IGZyb20gJy4uLy4uL2hlbHBlcnMnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuZGVzY3JpYmUoJ0pXUHJveHknLCBmdW5jdGlvbiAoKSB7XG4gIGxldCBwb3J0O1xuXG4gIGxldCBjcmVhdGVUZXN0VVJMO1xuICBsZXQgdGVzdFN0YXR1c1VSTDtcbiAgbGV0IGNyZWF0ZVRlc3RTZXNzaW9uVVJMO1xuICBsZXQgdGVzdE5ld1Nlc3Npb25VUkw7XG5cbiAgY29uc3QgUFJPWFlfSE9TVCA9ICcxMjcuMC4wLjInO1xuICBjb25zdCBQUk9YWV9QT1JUID0gNDcyMztcblxuICBjb25zdCBjcmVhdGVQcm94eVVSTCA9IGNyZWF0ZUFwcGl1bVVSTChQUk9YWV9IT1NULCBQUk9YWV9QT1JUKTtcbiAgY29uc3QgUFJPWFlfU1RBVFVTX1VSTCA9IGNyZWF0ZVByb3h5VVJMKCcnLCAnc3RhdHVzJyk7XG5cbiAgZnVuY3Rpb24gY3JlYXRlSldQcm94eShvcHRzID0ge30pIHtcbiAgICByZXR1cm4gbmV3IEpXUHJveHkoe3NlcnZlcjogVEVTVF9IT1NULCBwb3J0LCAuLi5vcHRzfSk7XG4gIH1cblxuICBiZWZvcmUoYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIHBvcnQgPSBhd2FpdCBnZXRUZXN0UG9ydCgpO1xuICAgIGNyZWF0ZVRlc3RVUkwgPSBjcmVhdGVBcHBpdW1VUkwoVEVTVF9IT1NULCBwb3J0KTtcbiAgICB0ZXN0U3RhdHVzVVJMID0gY3JlYXRlVGVzdFVSTCgnJywgJ3N0YXR1cycpO1xuICAgIGNyZWF0ZVRlc3RTZXNzaW9uVVJMID0gY3JlYXRlVGVzdFVSTChfLCAnJyk7XG4gICAgdGVzdE5ld1Nlc3Npb25VUkwgPSBjcmVhdGVUZXN0VVJMKCcnLCAnc2Vzc2lvbicpO1xuICB9KTtcblxuICBkZXNjcmliZSgncHJveHlpbmcgZnVsbCB1cmxzJywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdzaG91bGQgdHJhbnNsYXRlIGhvc3QgYW5kIHBvcnQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSBQUk9YWV9TVEFUVVNfVVJMO1xuICAgICAgbGV0IGogPSBjcmVhdGVKV1Byb3h5KCk7XG4gICAgICBsZXQgcHJveHlVcmwgPSBqLmdldFVybEZvclByb3h5KGluY29taW5nVXJsKTtcbiAgICAgIHByb3h5VXJsLnNob3VsZC5lcXVhbCh0ZXN0U3RhdHVzVVJMKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHRyYW5zbGF0ZSB0aGUgc2NoZW1lJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gUFJPWFlfU1RBVFVTX1VSTDtcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSh7c2NoZW1lOiAnSFRUUFMnfSk7XG4gICAgICBsZXQgcHJveHlVcmwgPSBqLmdldFVybEZvclByb3h5KGluY29taW5nVXJsKTtcbiAgICAgIHByb3h5VXJsLnNob3VsZC5lcXVhbChjcmVhdGVBcHBpdW1VUkwoYGh0dHBzOi8vJHtURVNUX0hPU1R9YCwgcG9ydCwgJycsICdzdGF0dXMnKSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCB0cmFuc2xhdGUgdGhlIGJhc2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSBQUk9YWV9TVEFUVVNfVVJMO1xuICAgICAgbGV0IGogPSBjcmVhdGVKV1Byb3h5KHtiYXNlOiAnJ30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwodGVzdFN0YXR1c1VSTCk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCB0cmFuc2xhdGUgdGhlIHNlc3Npb24gaWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSBjcmVhdGVQcm94eVVSTCgnZm9vYmFyJywgJ2VsZW1lbnQnKTtcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSh7c2Vzc2lvbklkOiAnYmFyYmF6J30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwoY3JlYXRlVGVzdFVSTCgnYmFyYmF6JywgJ2VsZW1lbnQnKSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBlcnJvciB3aGVuIHRyYW5zbGF0aW5nIHNlc3Npb24gY29tbWFuZHMgd2l0aG91dCBzZXNzaW9uIGlkJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gY3JlYXRlUHJveHlVUkwoJ2Zvb2JhcicsICdlbGVtZW50Jyk7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoKTtcbiAgICAgICgoKSA9PiB7XG4gICAgICAgIGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpO1xuICAgICAgfSkuc2hvdWxkLnRocm93KCdzZXNzaW9uIGlkJyk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdwcm94eWluZyBwYXJ0aWFsIHVybHMnLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3Nob3VsZCBwcm94eSAvc3RhdHVzJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gJy9zdGF0dXMnO1xuICAgICAgbGV0IGogPSBjcmVhdGVKV1Byb3h5KCk7XG4gICAgICBsZXQgcHJveHlVcmwgPSBqLmdldFVybEZvclByb3h5KGluY29taW5nVXJsKTtcbiAgICAgIHByb3h5VXJsLnNob3VsZC5lcXVhbCh0ZXN0U3RhdHVzVVJMKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHByb3h5IC9zZXNzaW9uJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gJy9zZXNzaW9uJztcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSgpO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwodGVzdE5ld1Nlc3Npb25VUkwpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcHJveHkgL3Nlc3Npb25zJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gJy9zZXNzaW9ucyc7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoKTtcbiAgICAgIGxldCBwcm94eVVybCA9IGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpO1xuICAgICAgcHJveHlVcmwuc2hvdWxkLmVxdWFsKGNyZWF0ZVRlc3RVUkwoJycsICdzZXNzaW9ucycpKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHByb3h5IHNlc3Npb24gY29tbWFuZHMgYmFzZWQgb2ZmIC9zZXNzaW9uJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gJy9zZXNzaW9uL2Zvb2Jhci9lbGVtZW50JztcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSh7c2Vzc2lvbklkOiAnYmFyYmF6J30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwoY3JlYXRlVGVzdFVSTCgnYmFyYmF6JywgJ2VsZW1lbnQnKSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBlcnJvciBzZXNzaW9uIGNvbW1hbmRzIGJhc2VkIG9mZiAvc2Vzc2lvbiB3aXRob3V0IHNlc3Npb24gaWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPSAnL3Nlc3Npb24vZm9vYmFyL2VsZW1lbnQnO1xuICAgICAgbGV0IGogPSBjcmVhdGVKV1Byb3h5KCk7XG4gICAgICAoKCkgPT4ge1xuICAgICAgICBqLmdldFVybEZvclByb3h5KGluY29taW5nVXJsKTtcbiAgICAgIH0pLnNob3VsZC50aHJvdygnc2Vzc2lvbiBpZCcpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcHJveHkgc2Vzc2lvbiBjb21tYW5kcyBiYXNlZCBvZmYgJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gJy9zZXNzaW9uLzNkMDAxZGIyLTc5ODctNDJhNy05NzVkLThkNWQ1MzA0MDgzZi90aW1lb3V0cy9pbXBsaWNpdF93YWl0JztcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwoY3JlYXRlVGVzdFVSTCgnMTIzJywgJ3RpbWVvdXRzL2ltcGxpY2l0X3dhaXQnKSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBwcm94eSBzZXNzaW9uIGNvbW1hbmRzIGJhc2VkIG9mZiAvc2Vzc2lvbiBhcyBcIlwiJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gJyc7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoKTtcbiAgICAgICgoKSA9PiB7XG4gICAgICAgIGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpO1xuICAgICAgfSkuc2hvdWxkLnRocm93KCdzZXNzaW9uIGlkJyk7XG4gICAgICBqID0gY3JlYXRlSldQcm94eSh7c2Vzc2lvbklkOiAnMTIzJ30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwoY3JlYXRlVGVzdFNlc3Npb25VUkwoJzEyMycpKTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHByb3h5IHNlc3Npb24gY29tbWFuZHMgd2l0aG91dCAvc2Vzc2lvbicsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBpbmNvbWluZ1VybCA9ICcvZWxlbWVudCc7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoe3Nlc3Npb25JZDogJ2JhcmJheid9KTtcbiAgICAgIGxldCBwcm94eVVybCA9IGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpO1xuICAgICAgcHJveHlVcmwuc2hvdWxkLmVxdWFsKGNyZWF0ZVRlc3RVUkwoJ2JhcmJheicsICdlbGVtZW50JykpO1xuICAgIH0pO1xuICAgIGl0KGBzaG91bGQgcHJveHkgc2Vzc2lvbiBjb21tYW5kcyB3aGVuICcvc2Vzc2lvbicgaXMgaW4gdGhlIHVybGAsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBpbmNvbWluZ1VybCA9XG4gICAgICAgICcvc2Vzc2lvbi84MmE5YjdkYS1mYWFmLTRhMWQtOGVmMy01ZTRmYjU4MTIyMDAvY29va2llL3Nlc3Npb24tc29tZXRoaW5nLW9yLW90aGVyJztcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSh7c2Vzc2lvbklkOiAnYmFyYmF6J30pO1xuICAgICAgbGV0IHByb3h5VXJsID0gai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICBwcm94eVVybC5zaG91bGQuZXF1YWwoY3JlYXRlVGVzdFVSTCgnYmFyYmF6JywgJ2Nvb2tpZS9zZXNzaW9uLXNvbWV0aGluZy1vci1vdGhlcicpKTtcbiAgICB9KTtcbiAgICBpdChgc2hvdWxkIHByb3h5IHNlc3Npb24gY29tbWFuZHMgd2hlbiAnL3Nlc3Npb24nIGlzIGluIHRoZSB1cmwgYW5kIG5vdCBiYXNlIG9uIHRoZSBvcmlnaW5hbCB1cmxgLCBmdW5jdGlvbiAoKSB7XG4gICAgICBsZXQgaW5jb21pbmdVcmwgPVxuICAgICAgICAnL3Nlc3Npb24vODJhOWI3ZGEtZmFhZi00YTFkLThlZjMtNWU0ZmI1ODEyMjAwL2Nvb2tpZS9zZXNzaW9uLXNvbWV0aGluZy1vci1vdGhlcic7XG4gICAgICBsZXQgaiA9IGNyZWF0ZUpXUHJveHkoe3Nlc3Npb25JZDogJ2JhcmJheid9KTtcbiAgICAgIGxldCBwcm94eVVybCA9IGouZ2V0VXJsRm9yUHJveHkoaW5jb21pbmdVcmwpO1xuICAgICAgcHJveHlVcmwuc2hvdWxkLmVxdWFsKGNyZWF0ZVRlc3RVUkwoJ2JhcmJheicsICdjb29raWUvc2Vzc2lvbi1zb21ldGhpbmctb3Itb3RoZXInKSk7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBlcnJvciBzZXNzaW9uIGNvbW1hbmRzIHdpdGhvdXQgL3Nlc3Npb24gd2l0aG91dCBzZXNzaW9uIGlkJywgZnVuY3Rpb24gKCkge1xuICAgICAgbGV0IGluY29taW5nVXJsID0gJy9lbGVtZW50JztcbiAgICAgIGxldCBqID0gY3JlYXRlSldQcm94eSgpO1xuICAgICAgKCgpID0+IHtcbiAgICAgICAgai5nZXRVcmxGb3JQcm94eShpbmNvbWluZ1VybCk7XG4gICAgICB9KS5zaG91bGQudGhyb3coJ3Nlc3Npb24gaWQnKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FB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
|
|
@@ -31,4 +31,4 @@ describe('jsonwp-status', function () {
|
|
|
31
31
|
});
|
|
32
32
|
});
|
|
33
33
|
});
|
|
34
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZXNjcmliZSIsIml0Iiwib2JqIiwiXyIsInZhbHVlcyIsInN0YXR1c0NvZGVzIiwic2hvdWxkIiwiZXhpc3QiLCJjb2RlIiwiYmUiLCJhIiwic3VtbWFyeSIsImdldFN1bW1hcnlCeUNvZGUiLCJlcXVhbCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9qc29ud3Atc3RhdHVzL3N0YXR1cy5zcGVjLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge3N0YXR1c0NvZGVzLCBnZXRTdW1tYXJ5QnlDb2RlfSBmcm9tICcuLi8uLi8uLi9saWInO1xuXG5kZXNjcmliZSgnanNvbndwLXN0YXR1cycsIGZ1bmN0aW9uICgpIHtcbiAgZGVzY3JpYmUoJ2NvZGVzJywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdzaG91bGQgZXhwb3J0IGNvZGUgbnVtYmVycyBhbmQgc3VtbWFyaWVzJywgZnVuY3Rpb24gKCkge1xuICAgICAgZm9yIChsZXQgb2JqIG9mIF8udmFsdWVzKHN0YXR1c0NvZGVzKSkge1xuICAgICAgICBzaG91bGQuZXhpc3Qob2JqLmNvZGUpO1xuICAgICAgICBvYmouY29kZS5zaG91bGQuYmUuYSgnbnVtYmVyJyk7XG4gICAgICAgIHNob3VsZC5leGlzdChvYmouc3VtbWFyeSk7XG4gICAgICAgIG9iai5zdW1tYXJ5LnNob3VsZC5iZS5hKCdzdHJpbmcnKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG4gIGRlc2NyaWJlKCdnZXRTdW1tYXJ5QnlDb2RlJywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdzaG91bGQgZ2V0IHRoZSBzdW1tYXJ5IGZvciBhIGNvZGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBnZXRTdW1tYXJ5QnlDb2RlKDApLnNob3VsZC5lcXVhbCgnVGhlIGNvbW1hbmQgZXhlY3V0ZWQgc3VjY2Vzc2Z1bGx5LicpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgY29udmVydCBjb2RlcyB0byBpbnRzJywgZnVuY3Rpb24gKCkge1xuICAgICAgZ2V0U3VtbWFyeUJ5Q29kZSgnMCcpLnNob3VsZC5lcXVhbCgnVGhlIGNvbW1hbmQgZXhlY3V0ZWQgc3VjY2Vzc2Z1bGx5LicpO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcmV0dXJuIGFuIGVycm9yIHN0cmluZyBmb3IgdW5rbm93biBjb2RlJywgZnVuY3Rpb24gKCkge1xuICAgICAgZ2V0U3VtbWFyeUJ5Q29kZSgxMDAwKS5zaG91bGQuZXF1YWwoJ0FuIGVycm9yIG9jY3VycmVkJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUVBQSxRQUFRLENBQUMsZUFBRCxFQUFrQixZQUFZO0VBQ3BDQSxRQUFRLENBQUMsT0FBRCxFQUFVLFlBQVk7SUFDNUJDLEVBQUUsQ0FBQywwQ0FBRCxFQUE2QyxZQUFZO01BQ3pELEtBQUssSUFBSUMsR0FBVCxJQUFnQkMsZUFBQSxDQUFFQyxNQUFGLENBQVNDLGdCQUFULENBQWhCLEVBQXVDO1FBQ3JDQyxNQUFNLENBQUNDLEtBQVAsQ0FBYUwsR0FBRyxDQUFDTSxJQUFqQjtRQUNBTixHQUFHLENBQUNNLElBQUosQ0FBU0YsTUFBVCxDQUFnQkcsRUFBaEIsQ0FBbUJDLENBQW5CLENBQXFCLFFBQXJCO1FBQ0FKLE1BQU0sQ0FBQ0MsS0FBUCxDQUFhTCxHQUFHLENBQUNTLE9BQWpCO1FBQ0FULEdBQUcsQ0FBQ1MsT0FBSixDQUFZTCxNQUFaLENBQW1CRyxFQUFuQixDQUFzQkMsQ0FBdEIsQ0FBd0IsUUFBeEI7TUFDRDtJQUNGLENBUEMsQ0FBRjtFQVFELENBVE8sQ0FBUjtFQVVBVixRQUFRLENBQUMsa0JBQUQsRUFBcUIsWUFBWTtJQUN2Q0MsRUFBRSxDQUFDLG1DQUFELEVBQXNDLFlBQVk7TUFDbEQsSUFBQVcscUJBQUEsRUFBaUIsQ0FBakIsRUFBb0JOLE1BQXBCLENBQTJCTyxLQUEzQixDQUFpQyxvQ0FBakM7SUFDRCxDQUZDLENBQUY7SUFHQVosRUFBRSxDQUFDLDhCQUFELEVBQWlDLFlBQVk7TUFDN0MsSUFBQVcscUJBQUEsRUFBaUIsR0FBakIsRUFBc0JOLE1BQXRCLENBQTZCTyxLQUE3QixDQUFtQyxvQ0FBbkM7SUFDRCxDQUZDLENBQUY7SUFHQVosRUFBRSxDQUFDLGdEQUFELEVBQW1ELFlBQVk7TUFDL0QsSUFBQVcscUJBQUEsRUFBaUIsSUFBakIsRUFBdUJOLE1BQXZCLENBQThCTyxLQUE5QixDQUFvQyxtQkFBcEM7SUFDRCxDQUZDLENBQUY7RUFHRCxDQVZPLENBQVI7QUFXRCxDQXRCTyxDQUFSIn0=
|
|
@@ -387,4 +387,4 @@ describe('.getActualError', function () {
|
|
|
387
387
|
});
|
|
388
388
|
});
|
|
389
389
|
});
|
|
390
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9wcm90b2NvbC9lcnJvcnMuc3BlYy5qcyJdLCJuYW1lcyI6WyJiYXNlbmFtZSIsInBhdGgiLCJfX2ZpbGVuYW1lIiwiZXJyb3JzTGlzdCIsImVycm9yTmFtZSIsImVycm9yTXNnIiwiZXJyb3IiLCJlcnJvckNvZGUiLCJkZXNjcmliZSIsIml0IiwiZXJyb3JzIiwic2hvdWxkIiwiaGF2ZSIsInByb3BlcnR5IiwiQmFkUGFyYW1ldGVyc0Vycm9yIiwibm90IiwiUHJveHlSZXF1ZXN0RXJyb3IiLCJfIiwiaW5jbHVkZXMiLCJVbmtub3duRXJyb3IiLCJiZSIsInRydWUiLCJ3M2NFcnJvciIsImVxdWFsIiwibWVzc2FnZSIsIm1hdGNoIiwibm9uNDAwRXJyb3JzIiwiZXhwZWN0ZWRFcnJvckNvZGUiLCJleGlzdCIsIkVsZW1lbnRDbGlja0ludGVyY2VwdGVkRXJyb3IiLCJFcnJvciIsImUiLCJodHRwU3RhdHVzIiwiaHR0cFJlc3BvbnNlQm9keSIsInN0YWNrdHJhY2UiLCJ2YWx1ZSIsImNvbnRhaW4iLCJub1N1Y2hFbGVtZW50RXJyb3IiLCJOb1N1Y2hFbGVtZW50RXJyb3IiLCJiYWRQYXJhbXNFcnJvciIsInN0YXR1cyIsInNlc3Npb25JZCIsImFjdHVhbEVycm9yIiwiZ2V0QWN0dWFsRXJyb3IiLCJTdGFsZUVsZW1lbnRSZWZlcmVuY2VFcnJvciIsIkpTT04iLCJzdHJpbmdpZnkiLCJIVFRQU3RhdHVzQ29kZXMiLCJOT1RfRk9VTkQiLCJCQURfUkVRVUVTVCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsTUFBTUEsUUFBUSxHQUFHQyxjQUFLRCxRQUFMLENBQWNFLFVBQWQsQ0FBakI7O0FBS0EsSUFBSUMsVUFBVSxHQUFHLENBQ2Y7QUFDRUMsRUFBQUEsU0FBUyxFQUFFLG1CQURiO0FBRUVDLEVBQUFBLFFBQVEsRUFBRSwrQ0FGWjtBQUdFQyxFQUFBQSxLQUFLLEVB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RCxXQUFaLEVBQXlCaEMsWUFBT2tDLDBCQUFoQyxFQUE0RGpDLE1BQTVELENBQW1FUyxFQUFuRSxDQUFzRUMsSUFBdEU7QUFDRCxLQVJDLENBQUY7QUFTRCxHQXBDTyxDQUFSO0FBcUNELENBckVPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBlcnJvcnMsIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlLCBlcnJvckZyb21XM0NKc29uQ29kZSwgaXNFcnJvclR5cGVcbn0gZnJvbSAnLi4vLi4vLi4vbGliJztcbmltcG9ydCB7IGdldFJlc3BvbnNlRm9yVzNDRXJyb3IgfSBmcm9tICcuLi8uLi8uLi9saWIvcHJvdG9jb2wvZXJyb3JzJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBTdGF0dXNDb2RlcyBhcyBIVFRQU3RhdHVzQ29kZXMgfSBmcm9tICdodHRwLXN0YXR1cy1jb2Rlcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcblxuY29uc3QgYmFzZW5hbWUgPSBwYXRoLmJhc2VuYW1lKF9fZmlsZW5hbWUpO1xuXG5cbi8vIEVycm9yIGNvZGVzIGFuZCBtZXNzYWdlcyBoYXZlIGJlZW4gYWRkZWQgYWNjb3JkaW5nIHRvIEpzb25XaXJlUHJvdG9jb2wgc2VlXG4vLyBodHRwczovL2NvZGUuZ29vZ2xlLmNvbS9wL3NlbGVuaXVtL3dpa2kvSnNvbldpcmVQcm90b2NvbCNSZXNwb25zZV9TdGF0dXNfQ29kZXNcbmxldCBlcnJvcnNMaXN0ID0gW1xuICB7XG4gICAgZXJyb3JOYW1lOiAnTm9TdWNoRHJpdmVyRXJyb3InLFxuICAgIGVycm9yTXNnOiAnQSBzZXNzaW9uIGlzIGVpdGhlciB0ZXJtaW5hdGVkIG9yIG5vdCBzdGFydGVkJyxcbiAgICBlcnJvcjogJ2ludmFsaWQgc2Vzc2lvbiBpZCcsXG4gICAgZXJyb3JDb2RlOiA2XG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdFbGVtZW50Q2xpY2tJbnRlcmNlcHRlZEVycm9yJyxcbiAgICBlcnJvck1zZzogJ1RoZSBFbGVtZW50IENsaWNrIGNvbW1hbmQgY291bGQgbm90IGJlIGNvbXBsZXRlZCBiZWNhdXNlIHRoZSBlbGVtZW50IHJlY2VpdmluZyB0aGUgZXZlbnRzIGlzIG9ic2N1cmluZyB0aGUgZWxlbWVudCB0aGF0IHdhcyByZXF1ZXN0ZWQgY2xpY2tlZCcsXG4gICAgZXJyb3I6ICdlbGVtZW50IGNsaWNrIGludGVyY2VwdGVkJyxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0VsZW1lbnROb3RJbnRlcmFjdGFibGVFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBIGNvbW1hbmQgY291bGQgbm90IGJlIGNvbXBsZXRlZCBiZWNhdXNlIHRoZSBlbGVtZW50IGlzIG5vdCBwb2ludGVyLSBvciBrZXlib2FyZCBpbnRlcmFjdGFibGUnLFxuICAgIGVycm9yOiAnZWxlbWVudCBub3QgaW50ZXJhY3RhYmxlJyxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0luc2VjdXJlQ2VydGlmaWNhdGVFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdOYXZpZ2F0aW9uIGNhdXNlZCB0aGUgdXNlciBhZ2VudCB0byBoaXQgYSBjZXJ0aWZpY2F0ZSB3YXJuaW5nLCB3aGljaCBpcyB1c3VhbGx5IHRoZSByZXN1bHQgb2YgYW4gZXhwaXJlZCBvciBpbnZhbGlkIFRMUyBjZXJ0aWZpY2F0ZScsXG4gICAgZXJyb3I6ICdpbnNlY3VyZSBjZXJ0aWZpY2F0ZScsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdJbnZhbGlkQXJndW1lbnRFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdUaGUgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgY29tbWFuZCBhcmUgZWl0aGVyIGludmFsaWQgb3IgbWFsZm9ybWVkJyxcbiAgICBlcnJvcjogJ2ludmFsaWQgYXJndW1lbnQnLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnTm9TdWNoRWxlbWVudEVycm9yJyxcbiAgICBlcnJvck1zZzogJ0FuIGVsZW1lbnQgY291bGQgbm90IGJlIGxvY2F0ZWQgb24gdGhlIHBhZ2UgdXNpbmcgdGhlICcgK1xuICAgICAgICAnZ2l2ZW4gc2VhcmNoIHBhcmFtZXRlcnMuJyxcbiAgICBlcnJvcjogJ25vIHN1Y2ggZWxlbWVudCcsXG4gICAgZXJyb3JDb2RlOiA3XG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdOb1N1Y2hGcmFtZUVycm9yJyxcbiAgICBlcnJvck1zZzogJ0EgcmVxdWVzdCB0byBzd2l0Y2ggdG8gYSBmcmFtZSBjb3VsZCBub3QgYmUgc2F0aXNmaWVkICcgK1xuICAgICAgICAnYmVjYXVzZSB0aGUgZnJhbWUgY291bGQgbm90IGJlIGZvdW5kLicsXG4gICAgZXJyb3I6ICdubyBzdWNoIGZyYW1lJyxcbiAgICBlcnJvckNvZGU6IDhcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ1Vua25vd25Db21tYW5kRXJyb3InLFxuICAgIGVycm9yTXNnOiAnVGhlIHJlcXVlc3RlZCByZXNvdXJjZSBjb3VsZCBub3QgYmUgZm91bmQsIG9yIGEgcmVxdWVzdCAnICtcbiAgICAgICAgJ3dhcyByZWNlaXZlZCB1c2luZyBhbiBIVFRQIG1ldGhvZCB0aGF0IGlzIG5vdCBzdXBwb3J0ZWQgYnkgJyArXG4gICAgICAgICd0aGUgbWFwcGVkIHJlc291cmNlLicsXG4gICAgZXJyb3I6ICd1bmtub3duIGNvbW1hbmQnLFxuICAgIGVycm9yQ29kZTogOVxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnU3RhbGVFbGVtZW50UmVmZXJlbmNlRXJyb3InLFxuICAgIGVycm9yTXNnOiAnQW4gZWxlbWVudCBjb21tYW5kIGZhaWxlZCBiZWNhdXNlIHRoZSByZWZlcmVuY2VkIGVsZW1lbnQgaXMgJyArXG4gICAgICAgICdubyBsb25nZXIgYXR0YWNoZWQgdG8gdGhlIERPTS4nLFxuICAgIGVycm9yOiAnc3RhbGUgZWxlbWVudCByZWZlcmVuY2UnLFxuICAgIGVycm9yQ29kZTogMTBcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0VsZW1lbnROb3RWaXNpYmxlRXJyb3InLFxuICAgIGVycm9yTXNnOiAnQW4gZWxlbWVudCBjb21tYW5kIGNvdWxkIG5vdCBiZSBjb21wbGV0ZWQgYmVjYXVzZSB0aGUgJyArXG4gICAgICAgICdlbGVtZW50IGlzIG5vdCB2aXNpYmxlIG9uIHRoZSBwYWdlLicsXG4gICAgZXJyb3JDb2RlOiAxMVxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnSW52YWxpZEVsZW1lbnRTdGF0ZUVycm9yJyxcbiAgICBlcnJvck1zZzogJ0FuIGVsZW1lbnQgY29tbWFuZCBjb3VsZCBub3QgYmUgY29tcGxldGVkIGJlY2F1c2UgdGhlIGVsZW1lbnQgJyArXG4gICAgICAgICdpcyBpbiBhbiBpbnZhbGlkIHN0YXRlIChlLmcuIGF0dGVtcHRpbmcgdG8gY2xpY2sgYSBkaXNhYmxlZCAnICtcbiAgICAgICAgJ2VsZW1lbnQpLicsXG4gICAgZXJyb3I6ICdpbnZhbGlkIGVsZW1lbnQgc3RhdGUnLFxuICAgIGVycm9yQ29kZTogMTJcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ1Vua25vd25FcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBbiB1bmtub3duIHNlcnZlci1zaWRlIGVycm9yIG9jY3VycmVkIHdoaWxlIHByb2Nlc3NpbmcgdGhlICcgK1xuICAgICAgICAnY29tbWFuZC4nLFxuICAgIGVycm9yOiAndW5rbm93biBlcnJvcicsXG4gICAgZXJyb3JDb2RlOiAxM1xuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnRWxlbWVudElzTm90U2VsZWN0YWJsZUVycm9yJyxcbiAgICBlcnJvck1zZzogJ0FuIGF0dGVtcHQgd2FzIG1hZGUgdG8gc2VsZWN0IGFuIGVsZW1lbnQgdGhhdCBjYW5ub3QgJyArXG4gICAgICAgICdiZSBzZWxlY3RlZC4nLFxuICAgIGVycm9yOiAnZWxlbWVudCBub3Qgc2VsZWN0YWJsZScsXG4gICAgZXJyb3JDb2RlOiAxNVxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnSmF2YVNjcmlwdEVycm9yJyxcbiAgICBlcnJvck1zZzogJ0FuIGVycm9yIG9jY3VycmVkIHdoaWxlIGV4ZWN1dGluZyB1c2VyIHN1cHBsaWVkIEphdmFTY3JpcHQuJyxcbiAgICBlcnJvcjogJ2phdmFzY3JpcHQgZXJyb3InLFxuICAgIGVycm9yQ29kZTogMTdcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ1hQYXRoTG9va3VwRXJyb3InLFxuICAgIGVycm9yTXNnOiAnQW4gZXJyb3Igb2NjdXJyZWQgd2hpbGUgc2VhcmNoaW5nIGZvciBhbiBlbGVtZW50IGJ5IFhQYXRoLicsXG4gICAgZXJyb3JDb2RlOiAxOVxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnVGltZW91dEVycm9yJyxcbiAgICBlcnJvck1zZzogJ0FuIG9wZXJhdGlvbiBkaWQgbm90IGNvbXBsZXRlIGJlZm9yZSBpdHMgdGltZW91dCBleHBpcmVkLicsXG4gICAgZXJyb3I6ICd0aW1lb3V0JyxcbiAgICBlcnJvckNvZGU6IDIxXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdOb1N1Y2hXaW5kb3dFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBIHJlcXVlc3QgdG8gc3dpdGNoIHRvIGEgZGlmZmVyZW50IHdpbmRvdyBjb3VsZCBub3QgYmUgJyArXG4gICAgICAgICdzYXRpc2ZpZWQgYmVjYXVzZSB0aGUgd2luZG93IGNvdWxkIG5vdCBiZSBmb3VuZC4nLFxuICAgIGVycm9yOiAnbm8gc3VjaCB3aW5kb3cnLFxuICAgIGVycm9yQ29kZTogMjNcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0ludmFsaWRDb29raWVEb21haW5FcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBbiBpbGxlZ2FsIGF0dGVtcHQgd2FzIG1hZGUgdG8gc2V0IGEgY29va2llIHVuZGVyIGEgZGlmZmVyZW50ICcgK1xuICAgICAgICAnZG9tYWluIHRoYW4gdGhlIGN1cnJlbnQgcGFnZS4nLFxuICAgIGVycm9yOiAnaW52YWxpZCBjb29raWUgZG9tYWluJyxcbiAgICBlcnJvckNvZGU6IDI0XG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdJbnZhbGlkQ29vcmRpbmF0ZXNFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdUaGUgY29vcmRpbmF0ZXMgcHJvdmlkZWQgdG8gYW4gaW50ZXJhY3Rpb25zIG9wZXJhdGlvbiBhcmUgaW52YWxpZC4nLFxuICAgIGVycm9yOiAnaW52YWxpZCBjb29yZGluYXRlcycsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdVbmFibGVUb1NldENvb2tpZUVycm9yJyxcbiAgICBlcnJvck1zZzogYEEgcmVxdWVzdCB0byBzZXQgYSBjb29raWUncyB2YWx1ZSBjb3VsZCBub3QgYmUgc2F0aXNmaWVkLmAsXG4gICAgZXJyb3I6ICd1bmFibGUgdG8gc2V0IGNvb2tpZScsXG4gICAgZXJyb3JDb2RlOiAyNVxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnVW5leHBlY3RlZEFsZXJ0T3BlbkVycm9yJyxcbiAgICBlcnJvck1zZzogJ0EgbW9kYWwgZGlhbG9nIHdhcyBvcGVuLCBibG9ja2luZyB0aGlzIG9wZXJhdGlvbicsXG4gICAgZXJyb3I6ICd1bmV4cGVjdGVkIGFsZXJ0IG9wZW4nLFxuICAgIGVycm9yQ29kZTogMjZcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ05vQWxlcnRPcGVuRXJyb3InLFxuICAgIGVycm9yTXNnOiAnQW4gYXR0ZW1wdCB3YXMgbWFkZSB0byBvcGVyYXRlIG9uIGEgbW9kYWwgZGlhbG9nIHdoZW4gb25lIHdhcyAnICtcbiAgICAgICAgJ25vdCBvcGVuLicsXG4gICAgZXJyb3JDb2RlOiAyN1xuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnU2NyaXB0VGltZW91dEVycm9yJyxcbiAgICBlcnJvck1zZzogJ0Egc2NyaXB0IGRpZCBub3QgY29tcGxldGUgYmVmb3JlIGl0cyB0aW1lb3V0IGV4cGlyZWQuJyxcbiAgICBlcnJvcjogJ3NjcmlwdCB0aW1lb3V0JyxcbiAgICBlcnJvckNvZGU6IDI4XG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdJbnZhbGlkRWxlbWVudENvb3JkaW5hdGVzRXJyb3InLFxuICAgIGVycm9yTXNnOiAnVGhlIGNvb3JkaW5hdGVzIHByb3ZpZGVkIHRvIGFuIGludGVyYWN0aW9ucyBvcGVyYXRpb24gYXJlICcgK1xuICAgICAgICAnaW52YWxpZC4nLFxuICAgIGVycm9yQ29kZTogMjlcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0lNRU5vdEF2YWlsYWJsZUVycm9yJyxcbiAgICBlcnJvck1zZzogJ0lNRSB3YXMgbm90IGF2YWlsYWJsZS4nLFxuICAgIGVycm9yQ29kZTogMzBcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0lNRUVuZ2luZUFjdGl2YXRpb25GYWlsZWRFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBbiBJTUUgZW5naW5lIGNvdWxkIG5vdCBiZSBzdGFydGVkLicsXG4gICAgZXJyb3JDb2RlOiAzMVxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnSW52YWxpZFNlbGVjdG9yRXJyb3InLFxuICAgIGVycm9yTXNnOiAnQXJndW1lbnQgd2FzIGFuIGludmFsaWQgc2VsZWN0b3IgKGUuZy4gWFBhdGgvQ1NTKS4nLFxuICAgIGVycm9yOiAnaW52YWxpZCBzZWxlY3RvcicsXG4gICAgZXJyb3JDb2RlOiAzMlxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnU2Vzc2lvbk5vdENyZWF0ZWRFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBIG5ldyBzZXNzaW9uIGNvdWxkIG5vdCBiZSBjcmVhdGVkLicsXG4gICAgZXJyb3I6ICdzZXNzaW9uIG5vdCBjcmVhdGVkJyxcbiAgICBlcnJvckNvZGU6IDMzXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdNb3ZlVGFyZ2V0T3V0T2ZCb3VuZHNFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdUYXJnZXQgcHJvdmlkZWQgZm9yIGEgbW92ZSBhY3Rpb24gaXMgb3V0IG9mIGJvdW5kcy4nLFxuICAgIGVycm9yOiAnbW92ZSB0YXJnZXQgb3V0IG9mIGJvdW5kcycsXG4gICAgZXJyb3JDb2RlOiAzNFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnTm9TdWNoQWxlcnRFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBbiBhdHRlbXB0IHdhcyBtYWRlIHRvIG9wZXJhdGUgb24gYSBtb2RhbCBkaWFsb2cgd2hlbiBvbmUgd2FzIG5vdCBvcGVuLicsXG4gICAgZXJyb3I6ICdubyBzdWNoIGFsZXJ0JyxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ05vU3VjaENvb2tpZUVycm9yJyxcbiAgICBlcnJvck1zZzogJ05vIGNvb2tpZSBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCBuYW1lIHdhcyBmb3VuZCBhbW9uZ3N0IHRoZSBhc3NvY2lhdGVkIGNvb2tpZXMgb2YgdGhlIGN1cnJlbnQgYnJvd3NpbmcgY29udGV4dOKAmXMgYWN0aXZlIGRvY3VtZW50JyxcbiAgICBlcnJvcjogJ25vIHN1Y2ggY29va2llJyxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ05vdFlldEltcGxlbWVudGVkRXJyb3InLFxuICAgIGVycm9yTXNnOiAnTWV0aG9kIGhhcyBub3QgeWV0IGJlZW4gaW1wbGVtZW50ZWQnLFxuICAgIGVycm9yOiAndW5rbm93biBtZXRob2QnLFxuICAgIGVycm9yQ29kZTogNDA1XG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdVbmtub3duQ29tbWFuZEVycm9yJyxcbiAgICBlcnJvck1zZzogJ1RoZSByZXF1ZXN0ZWQgcmVzb3VyY2UgY291bGQgbm90IGJlIGZvdW5kLCBvciBhIHJlcXVlc3Qgd2FzIHJlY2VpdmVkIHVzaW5nIGFuIEhUVFAgbWV0aG9kIHRoYXQgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgbWFwcGVkIHJlc291cmNlLicsXG4gICAgZXJyb3I6ICd1bmtub3duIGNvbW1hbmQnLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnVW5rbm93bk1ldGhvZEVycm9yJyxcbiAgICBlcnJvck1zZzogJ1RoZSByZXF1ZXN0ZWQgY29tbWFuZCBtYXRjaGVkIGEga25vd24gVVJMIGJ1dCBkaWQgbm90IG1hdGNoIGFuIG1ldGhvZCBmb3IgdGhhdCBVUkwnLFxuICAgIGVycm9yOiAndW5rbm93biBtZXRob2QnLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBIHNlcnZlci1zaWRlIGVycm9yIG9jY3VycmVkLiBDb21tYW5kIGNhbm5vdCBiZSBzdXBwb3J0ZWQuJyxcbiAgICBlcnJvcjogJ3Vuc3VwcG9ydGVkIG9wZXJhdGlvbicsXG4gIH0sXG5dO1xuXG5kZXNjcmliZSgnZXJyb3JzJywgZnVuY3Rpb24gKCkge1xuICBmb3IgKGxldCBlcnJvciBvZiBlcnJvcnNMaXN0KSB7XG4gICAgaXQoZXJyb3IuZXJyb3JOYW1lICsgJyBzaG91bGQgaGF2ZSBhIEpTT05XUCBjb2RlIG9yIFczQyBjb2RlIGFuZCBtZXNzYWdlJywgZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKGVycm9yLmVycm9yQ29kZSkge1xuICAgICAgICBuZXcgZXJyb3JzW2Vycm9yLmVycm9yTmFtZV0oKVxuICAgICAgICAgIC5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnanNvbndwQ29kZScsIGVycm9yLmVycm9yQ29kZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXcgZXJyb3JzW2Vycm9yLmVycm9yTmFtZV0oKVxuICAgICAgICAgIC5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnZXJyb3InLCBlcnJvci5lcnJvcik7XG4gICAgICB9XG4gICAgICBuZXcgZXJyb3JzW2Vycm9yLmVycm9yTmFtZV0oKVxuICAgICAgICAuc2hvdWxkLmhhdmUucHJvcGVydHkoJ21lc3NhZ2UnLCBlcnJvci5lcnJvck1zZyk7XG4gICAgfSk7XG4gIH1cbiAgaXQoJ0JhZFBhcmFtZXRlcnNFcnJvciBzaG91bGQgbm90IGhhdmUgY29kZSBhbmQgc2hvdWxkIGhhdmUgbWVzc2cnLCBmdW5jdGlvbiAoKSB7XG4gICAgbmV3IGVycm9ycy5CYWRQYXJhbWV0ZXJzRXJyb3IoKVxuICAgICAgLnNob3VsZC5ub3QuaGF2ZS5wcm9wZXJ0eSgnanNvbndwQ29kZScpO1xuICAgIG5ldyBlcnJvcnMuQmFkUGFyYW1ldGVyc0Vycm9yKClcbiAgICAgIC5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnbWVzc2FnZScpO1xuICB9KTtcbiAgaXQoJ1Byb3h5UmVxdWVzdEVycm9yIHNob3VsZCBoYXZlIG1lc3NhZ2UgYW5kIGpzb253cCcsIGZ1bmN0aW9uICgpIHtcbiAgICBuZXcgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKClcbiAgICAgICAgLnNob3VsZC5oYXZlLnByb3BlcnR5KCdqc29ud3AnKTtcbiAgICBuZXcgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKClcbiAgICAgICAgLnNob3VsZC5oYXZlLnByb3BlcnR5KCdtZXNzYWdlJyk7XG4gIH0pO1xufSk7XG5kZXNjcmliZSgnZXJyb3JGcm9tTUpTT05XUFN0YXR1c0NvZGUnLCBmdW5jdGlvbiAoKSB7XG4gIGZvciAobGV0IGVycm9yIG9mIGVycm9yc0xpc3QpIHtcbiAgICBpZiAoZXJyb3IuZXJyb3JOYW1lICE9PSAnTm90WWV0SW1wbGVtZW50ZWRFcnJvcicpIHtcbiAgICAgIGl0KGVycm9yLmVycm9yQ29kZSArICcgc2hvdWxkIHJldHVybiBjb3JyZWN0IGVycm9yJywgZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoZXJyb3IuZXJyb3JDb2RlKSB7XG4gICAgICAgICAgZXJyb3JGcm9tTUpTT05XUFN0YXR1c0NvZGUoZXJyb3IuZXJyb3JDb2RlKVxuICAgICAgICAgICAgLnNob3VsZC5oYXZlLnByb3BlcnR5KCdqc29ud3BDb2RlJywgZXJyb3IuZXJyb3JDb2RlKTtcbiAgICAgICAgICBlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZShlcnJvci5lcnJvckNvZGUpXG4gICAgICAgICAgICAuc2hvdWxkLmhhdmUucHJvcGVydHkoJ21lc3NhZ2UnLCBlcnJvci5lcnJvck1zZyk7XG4gICAgICAgICAgaWYgKCFfLmluY2x1ZGVzKFsxMywgMzNdLCBlcnJvci5lcnJvckNvZGUpKSB7XG4gICAgICAgICAgICBlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZShlcnJvci5lcnJvckNvZGUsICdhYmNkJylcbiAgICAgICAgICAgICAgLnNob3VsZC5oYXZlLnByb3BlcnR5KCdqc29ud3BDb2RlJywgZXJyb3IuZXJyb3JDb2RlKTtcbiAgICAgICAgICAgIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlKGVycm9yLmVycm9yQ29kZSwgJ2FiY2QnKVxuICAgICAgICAgICAgICAuc2hvdWxkLmhhdmUucHJvcGVydHkoJ21lc3NhZ2UnLCAnYWJjZCcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpc0Vycm9yVHlwZShlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZShlcnJvci5lcnJvckNvZGUpLCBlcnJvcnMuVW5rbm93bkVycm9yKS5zaG91bGQuYmUudHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG4gIGl0KCdzaG91bGQgdGhyb3cgdW5rbm93biBlcnJvciBmb3IgdW5rbm93biBjb2RlJywgZnVuY3Rpb24gKCkge1xuICAgIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlKDk5KVxuICAgICAgLnNob3VsZC5oYXZlLnByb3BlcnR5KCdqc29ud3BDb2RlJywgMTMpO1xuICAgIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlKDk5KVxuICAgICAgLnNob3VsZC5oYXZlLnByb3BlcnR5KCdtZXNzYWdlJywgJ0FuIHVua25vd24gc2VydmVyLXNpZGUgZXJyb3Igb2NjdXJyZWQgJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2hpbGUgcHJvY2Vzc2luZyB0aGUgY29tbWFuZC4nKTtcbiAgfSk7XG59KTtcbmRlc2NyaWJlKCdlcnJvckZyb21XM0NKc29uQ29kZScsIGZ1bmN0aW9uICgpIHtcbiAgZm9yIChsZXQgZXJyb3Igb2YgZXJyb3JzTGlzdCkge1xuICAgIGlmIChlcnJvci5lcnJvck5hbWUgIT09ICdOb3RZZXRJbXBsZW1lbnRlZEVycm9yJykge1xuICAgICAgaXQoZXJyb3IuZXJyb3JOYW1lICsgJyBzaG91bGQgcmV0dXJuIGNvcnJlY3QgZXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGNvbnN0IHtlcnJvcjogdzNjRXJyb3J9ID0gZXJyb3I7XG4gICAgICAgIGlmICh3M2NFcnJvcikge1xuICAgICAgICAgIGVycm9yRnJvbVczQ0pzb25Db2RlKHczY0Vycm9yKS5lcnJvci5zaG91bGQuZXF1YWwoZXJyb3IuZXJyb3IpO1xuICAgICAgICAgIGVycm9yRnJvbVczQ0pzb25Db2RlKHczY0Vycm9yKS5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnbWVzc2FnZScsIGVycm9yLmVycm9yTXNnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpc0Vycm9yVHlwZShlcnJvckZyb21XM0NKc29uQ29kZSh3M2NFcnJvciksIGVycm9ycy5Vbmtub3duRXJyb3IpLnNob3VsZC5iZS50cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbiAgaXQoJ3Nob3VsZCBwYXJzZSB1bmtub3duIGVycm9ycycsIGZ1bmN0aW9uICgpIHtcbiAgICBpc0Vycm9yVHlwZShlcnJvckZyb21XM0NKc29uQ29kZSgnbm90IGEgcmVhbCBlcnJvciBjb2RlJyksIGVycm9ycy5Vbmtub3duRXJyb3IpLnNob3VsZC5iZS50cnVlO1xuICAgIGVycm9yRnJvbVczQ0pzb25Db2RlKCdub3QgYSByZWFsIGVycm9yIGNvZGUnKS5tZXNzYWdlLnNob3VsZC5tYXRjaCgvQW4gdW5rbm93biBzZXJ2ZXItc2lkZSBlcnJvciBvY2N1cnJlZC8pO1xuICAgIGVycm9yRnJvbVczQ0pzb25Db2RlKCdub3QgYSByZWFsIGVycm9yIGNvZGUnKS5lcnJvci5zaG91bGQuZXF1YWwoJ3Vua25vd24gZXJyb3InKTtcbiAgfSk7XG59KTtcbmRlc2NyaWJlKCd3M2MgU3RhdHVzIENvZGVzJywgZnVuY3Rpb24gKCkge1xuICBpdCgnc2hvdWxkIG1hdGNoIHRoZSBjb3JyZWN0IGVycm9yIGNvZGVzJywgZnVuY3Rpb24gKCkge1xuICAgIGxldCBub240MDBFcnJvcnMgPSBbXG4gICAgICBbJ05vU3VjaERyaXZlckVycm9yJywgNDA0XSxcbiAgICAgIFsnTm9TdWNoRnJhbWVFcnJvcicsIDQwNF0sXG4gICAgICBbJ05vQWxlcnRPcGVuRXJyb3InLCA0MDRdLFxuICAgICAgWydOb1N1Y2hXaW5kb3dFcnJvcicsIDQwNF0sXG4gICAgICBbJ1N0YWxlRWxlbWVudFJlZmVyZW5jZUVycm9yJywgNDA0XSxcbiAgICAgIFsnSmF2YVNjcmlwdEVycm9yJywgNTAwXSxcbiAgICAgIFsnTW92ZVRhcmdldE91dE9mQm91bmRzRXJyb3InLCA1MDBdLFxuICAgICAgWydOb1N1Y2hDb29raWVFcnJvcicsIDQwNF0sXG4gICAgICBbJ05vU3VjaEVsZW1lbnRFcnJvcicsIDQwNF0sXG4gICAgICBbJ1NjcmlwdFRpbWVvdXRFcnJvcicsIDQwOF0sXG4gICAgICBbJ1Nlc3Npb25Ob3RDcmVhdGVkRXJyb3InLCA1MDBdLFxuICAgICAgWydUaW1lb3V0RXJyb3InLCA0MDhdLFxuICAgICAgWydVbmFibGVUb1NldENvb2tpZUVycm9yJywgNTAwXSxcbiAgICAgIFsnVW5hYmxlVG9DYXB0dXJlU2NyZWVuJywgNTAwXSxcbiAgICAgIFsnVW5leHBlY3RlZEFsZXJ0T3BlbkVycm9yJywgNTAwXSxcbiAgICAgIFsnVW5rbm93bkNvbW1hbmRFcnJvcicsIDQwNF0sXG4gICAgICBbJ1Vua25vd25FcnJvcicsIDUwMF0sXG4gICAgICBbJ1Vua25vd25NZXRob2RFcnJvcicsIDQwNV0sXG4gICAgICBbJ1Vuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3InLCA1MDBdLFxuICAgIF07XG5cbiAgICAvLyBUZXN0IHRoZSBlcnJvcnMgdGhhdCB3ZSBkb24ndCBleHBlY3QgdG8gcmV0dXJuIDQwMCBjb2RlXG4gICAgZm9yIChsZXQgW2Vycm9yTmFtZSwgZXhwZWN0ZWRFcnJvckNvZGVdIG9mIG5vbjQwMEVycm9ycykge1xuICAgICAgZXJyb3JzW2Vycm9yTmFtZV0uc2hvdWxkLmV4aXN0O1xuICAgICAgKG5ldyBlcnJvcnNbZXJyb3JOYW1lXSgpKS5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgndzNjU3RhdHVzJywgZXhwZWN0ZWRFcnJvckNvZGUpO1xuICAgIH1cblxuICAgIC8vIFRlc3QgYW4gZXJyb3IgdGhhdCB3ZSBleHBlY3QgdG8gcmV0dXJuIDQwMCBjb2RlXG4gICAgKG5ldyBlcnJvcnMuRWxlbWVudENsaWNrSW50ZXJjZXB0ZWRFcnJvcigpKS5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgndzNjU3RhdHVzJywgNDAwKTtcbiAgfSk7XG59KTtcbmRlc2NyaWJlKCcuZ2V0UmVzcG9uc2VGb3JXM0NFcnJvcicsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJ3Nob3VsZCByZXR1cm4gYW4gZXJyb3IsIG1lc3NhZ2UgYW5kIHN0YWNrdHJhY2UgZm9yIGp1c3QgYSBnZW5lcmljIGV4Y2VwdGlvbicsIGZ1bmN0aW9uICgpIHtcbiAgICB0cnkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdTb21lIHJhbmRvbSBlcnJvcicpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnN0IFtodHRwU3RhdHVzLCBodHRwUmVzcG9uc2VCb2R5XSA9IGdldFJlc3BvbnNlRm9yVzNDRXJyb3IoZSk7XG4gICAgICBodHRwU3RhdHVzLnNob3VsZC5lcXVhbCg1MDApO1xuICAgICAgY29uc3Qge2Vycm9yLCBtZXNzYWdlLCBzdGFja3RyYWNlfSA9IGh0dHBSZXNwb25zZUJvZHkudmFsdWU7XG4gICAgICBtZXNzYWdlLnNob3VsZC5tYXRjaCgvU29tZSByYW5kb20gZXJyb3IvKTtcbiAgICAgIGVycm9yLnNob3VsZC5lcXVhbCgndW5rbm93biBlcnJvcicpO1xuICAgICAgc3RhY2t0cmFjZS5zaG91bGQubWF0Y2goL2F0IGdldFJlc3BvbnNlRm9yVzNDRXJyb3IvKTtcbiAgICAgIHN0YWNrdHJhY2Uuc2hvdWxkLm1hdGNoKC9Tb21lIHJhbmRvbSBlcnJvci8pO1xuICAgICAgc3RhY2t0cmFjZS5zaG91bGQuY29udGFpbihiYXNlbmFtZSk7XG4gICAgfVxuICB9KTtcbiAgaXQoJ3Nob3VsZCByZXR1cm4gYW4gZXJyb3IsIG1lc3NhZ2UgYW5kIHN0YWNrdHJhY2UgZm9yIGEgTm9TdWNoRWxlbWVudEVycm9yJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IG5vU3VjaEVsZW1lbnRFcnJvciA9IG5ldyBlcnJvcnMuTm9TdWNoRWxlbWVudEVycm9yKCdzcGVjaWZpYyBlcnJvciBtZXNzYWdlJyk7XG4gICAgY29uc3QgW2h0dHBTdGF0dXMsIGh0dHBSZXNwb25zZUJvZHldID0gZ2V0UmVzcG9uc2VGb3JXM0NFcnJvcihub1N1Y2hFbGVtZW50RXJyb3IpO1xuICAgIGh0dHBTdGF0dXMuc2hvdWxkLmVxdWFsKDQwNCk7XG4gICAgY29uc3Qge2Vycm9yLCBtZXNzYWdlLCBzdGFja3RyYWNlfSA9IGh0dHBSZXNwb25zZUJvZHkudmFsdWU7XG4gICAgZXJyb3Iuc2hvdWxkLmVxdWFsKCdubyBzdWNoIGVsZW1lbnQnKTtcbiAgICBtZXNzYWdlLnNob3VsZC5tYXRjaCgvc3BlY2lmaWMgZXJyb3IgbWVzc2FnZS8pO1xuICAgIHN0YWNrdHJhY2Uuc2hvdWxkLmNvbnRhaW4oYmFzZW5hbWUpO1xuICB9KTtcbiAgaXQoJ3Nob3VsZCBoYW5kbGUgQmFkUGFyYW1ldGVyc0Vycm9yJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IGJhZFBhcmFtc0Vycm9yID0gbmV3IGVycm9ycy5CYWRQYXJhbWV0ZXJzRXJyb3IoJ19fRk9PX18nLCAnX19CQVJfXycsICdfX0hFTExPX1dPUkxEX18nKTtcbiAgICBjb25zdCBbaHR0cFN0YXR1cywgaHR0cFJlc3BvbnNlQm9keV0gPSBnZXRSZXNwb25zZUZvclczQ0Vycm9yKGJhZFBhcmFtc0Vycm9yKTtcbiAgICBodHRwU3RhdHVzLnNob3VsZC5lcXVhbCg0MDApO1xuICAgIGNvbnN0IHtlcnJvciwgbWVzc2FnZSwgc3RhY2t0cmFjZX0gPSBodHRwUmVzcG9uc2VCb2R5LnZhbHVlO1xuICAgIGVycm9yLnNob3VsZC5lcXVhbCgnaW52YWxpZCBhcmd1bWVudCcpO1xuICAgIG1lc3NhZ2Uuc2hvdWxkLm1hdGNoKC9fX0JBUl9fLyk7XG4gICAgbWVzc2FnZS5zaG91bGQubWF0Y2goL19fSEVMTE9fV09STERfXy8pO1xuICAgIHN0YWNrdHJhY2Uuc2hvdWxkLmNvbnRhaW4oYmFzZW5hbWUpO1xuICB9KTtcbiAgaXQoJ3Nob3VsZCB0cmFuc2xhdGUgSlNPTldQIGVycm9ycycsIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBbaHR0cFN0YXR1cywgaHR0cFJlc3BvbnNlQm9keV0gPSBnZXRSZXNwb25zZUZvclczQ0Vycm9yKHtcbiAgICAgIHN0YXR1czogNyxcbiAgICAgIHZhbHVlOiAnTXkgY3VzdG9tIG1lc3NhZ2UnLFxuICAgICAgc2Vzc2lvbklkOiAnRmFrZSBTZXNzaW9uIElkJyxcbiAgICB9KTtcbiAgICBodHRwU3RhdHVzLnNob3VsZC5lcXVhbCg0MDQpO1xuICAgIGNvbnN0IHtlcnJvciwgbWVzc2FnZSwgc3RhY2t0cmFjZX0gPSBodHRwUmVzcG9uc2VCb2R5LnZhbHVlO1xuICAgIG1lc3NhZ2Uuc2hvdWxkLmVxdWFsKCdNeSBjdXN0b20gbWVzc2FnZScpO1xuICAgIGVycm9yLnNob3VsZC5lcXVhbCgnbm8gc3VjaCBlbGVtZW50Jyk7XG4gICAgc3RhY2t0cmFjZS5zaG91bGQuZXhpc3Q7XG4gIH0pO1xufSk7XG5kZXNjcmliZSgnLmdldEFjdHVhbEVycm9yJywgZnVuY3Rpb24gKCkge1xuICBkZXNjcmliZSgnTUpTT05XUCcsIGZ1bmN0aW9uICgpIHtcbiAgICBpdCgnc2hvdWxkIG1hcCBhIHN0YXR1cyBjb2RlIDcgbm8gc3VjaCBlbGVtZW50IGVycm9yIGFzIGEgTm9TdWNoRWxlbWVudEVycm9yJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgYWN0dWFsRXJyb3IgPSBuZXcgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKCdFcnJvciBtZXNzYWdlIGRvZXMgbm90IG1hdHRlcicsIHtcbiAgICAgICAgdmFsdWU6ICdkb2VzIG5vdCBtYXR0ZXInLFxuICAgICAgICBzdGF0dXM6IDcsXG4gICAgICB9KS5nZXRBY3R1YWxFcnJvcigpO1xuICAgICAgaXNFcnJvclR5cGUoYWN0dWFsRXJyb3IsIGVycm9ycy5Ob1N1Y2hFbGVtZW50RXJyb3IpLnNob3VsZC5iZS50cnVlO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgbWFwIGEgc3RhdHVzIGNvZGUgMTAsIFN0YWxlRWxlbWVudFJlZmVyZW5jZUVycm9yJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgYWN0dWFsRXJyb3IgPSBuZXcgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKCdFcnJvciBtZXNzYWdlIGRvZXMgbm90IG1hdHRlcicsIHtcbiAgICAgICAgdmFsdWU6ICdEb2VzIG5vdCBtYXR0ZXInLFxuICAgICAgICBzdGF0dXM6IDEwLFxuICAgICAgfSkuZ2V0QWN0dWFsRXJyb3IoKTtcbiAgICAgIGlzRXJyb3JUeXBlKGFjdHVhbEVycm9yLCBlcnJvcnMuU3RhbGVFbGVtZW50UmVmZXJlbmNlRXJyb3IpLnNob3VsZC5iZS50cnVlO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgbWFwIGFuIHVua25vd24gZXJyb3IgdG8gVW5rbm93bkVycm9yJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgYWN0dWFsRXJyb3IgPSBuZXcgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKCdFcnJvciBtZXNzYWdlIGRvZXMgbm90IG1hdHRlcicsIHtcbiAgICAgICAgdmFsdWU6ICdEb2VzIG5vdCBtYXR0ZXInLFxuICAgICAgICBzdGF0dXM6IC0xMDBcbiAgICAgIH0pLmdldEFjdHVhbEVycm9yKCk7XG4gICAgICBpc0Vycm9yVHlwZShhY3R1YWxFcnJvciwgZXJyb3JzLlVua25vd25FcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBwYXJzZSBhIEpTT04gc3RyaW5nJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgYWN0dWFsRXJyb3IgPSBuZXcgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKCdFcnJvciBtZXNzYWdlIGRvZXMgbm90IG1hdHRlcicsIEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgdmFsdWU6ICdEb2VzIG5vdCBtYXR0ZXInLFxuICAgICAgICBzdGF0dXM6IC0xMDBcbiAgICAgIH0pKS5nZXRBY3R1YWxFcnJvcigpO1xuICAgICAgaXNFcnJvclR5cGUoYWN0dWFsRXJyb3IsIGVycm9ycy5Vbmtub3duRXJyb3IpLnNob3VsZC5iZS50cnVlO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnVzNDJywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdzaG91bGQgbWFwIGEgNDA0IG5vIHN1Y2ggZWxlbWVudCBlcnJvciBhcyBhIE5vU3VjaEVsZW1lbnRFcnJvcicsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGFjdHVhbEVycm9yID0gbmV3IGVycm9ycy5Qcm94eVJlcXVlc3RFcnJvcignRXJyb3IgbWVzc2FnZSBkb2VzIG5vdCBtYXR0ZXInLCB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgZXJyb3I6IGVycm9ycy5Ob1N1Y2hFbGVtZW50RXJyb3IuZXJyb3IoKSxcbiAgICAgICAgfSxcbiAgICAgIH0sIEhUVFBTdGF0dXNDb2Rlcy5OT1RfRk9VTkQpLmdldEFjdHVhbEVycm9yKCk7XG4gICAgICBpc0Vycm9yVHlwZShhY3R1YWxFcnJvciwgZXJyb3JzLk5vU3VjaEVsZW1lbnRFcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBtYXAgYSA0MDAgU3RhbGVFbGVtZW50UmVmZXJlbmNlRXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhY3R1YWxFcnJvciA9IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoJ0Vycm9yIG1lc3NhZ2UgZG9lcyBub3QgbWF0dGVyJywge1xuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgIGVycm9yOiBlcnJvcnMuU3RhbGVFbGVtZW50UmVmZXJlbmNlRXJyb3IuZXJyb3IoKSxcblxuICAgICAgICB9LFxuICAgICAgfSwgSFRUUFN0YXR1c0NvZGVzLkJBRF9SRVFVRVNUKS5nZXRBY3R1YWxFcnJvcigpO1xuICAgICAgaXNFcnJvclR5cGUoYWN0dWFsRXJyb3IsIGVycm9ycy5TdGFsZUVsZW1lbnRSZWZlcmVuY2VFcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBtYXAgYW4gdW5rbm93biBlcnJvciB0byBVbmtub3duRXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhY3R1YWxFcnJvciA9IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoJ0Vycm9yIG1lc3NhZ2UgZG9lcyBub3QgbWF0dGVyJywgbnVsbCwge1xuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgIGVycm9yOiAnTm90IGEgdmFsaWQgdzNjIEpTT04gY29kZSdcblxuICAgICAgICB9LFxuICAgICAgfSwgNDU2KS5nZXRBY3R1YWxFcnJvcigpO1xuICAgICAgaXNFcnJvclR5cGUoYWN0dWFsRXJyb3IsIGVycm9ycy5Vbmtub3duRXJyb3IpLnNob3VsZC5iZS50cnVlO1xuICAgIH0pO1xuICAgIGl0KCdzaG91bGQgcGFyc2UgYSBKU09OIHN0cmluZycsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGFjdHVhbEVycm9yID0gbmV3IGVycm9ycy5Qcm94eVJlcXVlc3RFcnJvcignRXJyb3IgbWVzc2FnZSBkb2VzIG5vdCBtYXR0ZXInLCBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgZXJyb3I6IGVycm9ycy5TdGFsZUVsZW1lbnRSZWZlcmVuY2VFcnJvci5lcnJvcigpLFxuXG4gICAgICAgIH0sXG4gICAgICB9KSwgSFRUUFN0YXR1c0NvZGVzLkJBRF9SRVFVRVNUKS5nZXRBY3R1YWxFcnJvcigpO1xuICAgICAgaXNFcnJvclR5cGUoYWN0dWFsRXJyb3IsIGVycm9ycy5TdGFsZUVsZW1lbnRSZWZlcmVuY2VFcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
390
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJiYXNlbmFtZSIsInBhdGgiLCJfX2ZpbGVuYW1lIiwiZXJyb3JzTGlzdCIsImVycm9yTmFtZSIsImVycm9yTXNnIiwiZXJyb3IiLCJlcnJvckNvZGUiLCJkZXNjcmliZSIsIml0IiwiZXJyb3JzIiwic2hvdWxkIiwiaGF2ZSIsInByb3BlcnR5IiwiQmFkUGFyYW1ldGVyc0Vycm9yIiwibm90IiwiUHJveHlSZXF1ZXN0RXJyb3IiLCJlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZSIsIl8iLCJpbmNsdWRlcyIsImlzRXJyb3JUeXBlIiwiVW5rbm93bkVycm9yIiwiYmUiLCJ0cnVlIiwidzNjRXJyb3IiLCJlcnJvckZyb21XM0NKc29uQ29kZSIsImVxdWFsIiwibWVzc2FnZSIsIm1hdGNoIiwibm9uNDAwRXJyb3JzIiwiZXhwZWN0ZWRFcnJvckNvZGUiLCJleGlzdCIsIkVsZW1lbnRDbGlja0ludGVyY2VwdGVkRXJyb3IiLCJFcnJvciIsImUiLCJodHRwU3RhdHVzIiwiaHR0cFJlc3BvbnNlQm9keSIsImdldFJlc3BvbnNlRm9yVzNDRXJyb3IiLCJzdGFja3RyYWNlIiwidmFsdWUiLCJjb250YWluIiwibm9TdWNoRWxlbWVudEVycm9yIiwiTm9TdWNoRWxlbWVudEVycm9yIiwiYmFkUGFyYW1zRXJyb3IiLCJzdGF0dXMiLCJzZXNzaW9uSWQiLCJhY3R1YWxFcnJvciIsImdldEFjdHVhbEVycm9yIiwiU3RhbGVFbGVtZW50UmVmZXJlbmNlRXJyb3IiLCJKU09OIiwic3RyaW5naWZ5IiwiSFRUUFN0YXR1c0NvZGVzIiwiTk9UX0ZPVU5EIiwiQkFEX1JFUVVFU1QiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3VuaXQvcHJvdG9jb2wvZXJyb3JzLnNwZWMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtlcnJvcnMsIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlLCBlcnJvckZyb21XM0NKc29uQ29kZSwgaXNFcnJvclR5cGV9IGZyb20gJy4uLy4uLy4uL2xpYic7XG5pbXBvcnQge2dldFJlc3BvbnNlRm9yVzNDRXJyb3J9IGZyb20gJy4uLy4uLy4uL2xpYi9wcm90b2NvbC9lcnJvcnMnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7U3RhdHVzQ29kZXMgYXMgSFRUUFN0YXR1c0NvZGVzfSBmcm9tICdodHRwLXN0YXR1cy1jb2Rlcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcblxuY29uc3QgYmFzZW5hbWUgPSBwYXRoLmJhc2VuYW1lKF9fZmlsZW5hbWUpO1xuXG4vLyBFcnJvciBjb2RlcyBhbmQgbWVzc2FnZXMgaGF2ZSBiZWVuIGFkZGVkIGFjY29yZGluZyB0byBKc29uV2lyZVByb3RvY29sIHNlZVxuLy8gaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9zZWxlbml1bS93aWtpL0pzb25XaXJlUHJvdG9jb2wjUmVzcG9uc2VfU3RhdHVzX0NvZGVzXG5sZXQgZXJyb3JzTGlzdCA9IFtcbiAge1xuICAgIGVycm9yTmFtZTogJ05vU3VjaERyaXZlckVycm9yJyxcbiAgICBlcnJvck1zZzogJ0Egc2Vzc2lvbiBpcyBlaXRoZXIgdGVybWluYXRlZCBvciBub3Qgc3RhcnRlZCcsXG4gICAgZXJyb3I6ICdpbnZhbGlkIHNlc3Npb24gaWQnLFxuICAgIGVycm9yQ29kZTogNixcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0VsZW1lbnRDbGlja0ludGVyY2VwdGVkRXJyb3InLFxuICAgIGVycm9yTXNnOlxuICAgICAgJ1RoZSBFbGVtZW50IENsaWNrIGNvbW1hbmQgY291bGQgbm90IGJlIGNvbXBsZXRlZCBiZWNhdXNlIHRoZSBlbGVtZW50IHJlY2VpdmluZyB0aGUgZXZlbnRzIGlzIG9ic2N1cmluZyB0aGUgZWxlbWVudCB0aGF0IHdhcyByZXF1ZXN0ZWQgY2xpY2tlZCcsXG4gICAgZXJyb3I6ICdlbGVtZW50IGNsaWNrIGludGVyY2VwdGVkJyxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0VsZW1lbnROb3RJbnRlcmFjdGFibGVFcnJvcicsXG4gICAgZXJyb3JNc2c6XG4gICAgICAnQSBjb21tYW5kIGNvdWxkIG5vdCBiZSBjb21wbGV0ZWQgYmVjYXVzZSB0aGUgZWxlbWVudCBpcyBub3QgcG9pbnRlci0gb3Iga2V5Ym9hcmQgaW50ZXJhY3RhYmxlJyxcbiAgICBlcnJvcjogJ2VsZW1lbnQgbm90IGludGVyYWN0YWJsZScsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdJbnNlY3VyZUNlcnRpZmljYXRlRXJyb3InLFxuICAgIGVycm9yTXNnOlxuICAgICAgJ05hdmlnYXRpb24gY2F1c2VkIHRoZSB1c2VyIGFnZW50IHRvIGhpdCBhIGNlcnRpZmljYXRlIHdhcm5pbmcsIHdoaWNoIGlzIHVzdWFsbHkgdGhlIHJlc3VsdCBvZiBhbiBleHBpcmVkIG9yIGludmFsaWQgVExTIGNlcnRpZmljYXRlJyxcbiAgICBlcnJvcjogJ2luc2VjdXJlIGNlcnRpZmljYXRlJyxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0ludmFsaWRBcmd1bWVudEVycm9yJyxcbiAgICBlcnJvck1zZzogJ1RoZSBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSBjb21tYW5kIGFyZSBlaXRoZXIgaW52YWxpZCBvciBtYWxmb3JtZWQnLFxuICAgIGVycm9yOiAnaW52YWxpZCBhcmd1bWVudCcsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdOb1N1Y2hFbGVtZW50RXJyb3InLFxuICAgIGVycm9yTXNnOiAnQW4gZWxlbWVudCBjb3VsZCBub3QgYmUgbG9jYXRlZCBvbiB0aGUgcGFnZSB1c2luZyB0aGUgJyArICdnaXZlbiBzZWFyY2ggcGFyYW1ldGVycy4nLFxuICAgIGVycm9yOiAnbm8gc3VjaCBlbGVtZW50JyxcbiAgICBlcnJvckNvZGU6IDcsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdOb1N1Y2hGcmFtZUVycm9yJyxcbiAgICBlcnJvck1zZzpcbiAgICAgICdBIHJlcXVlc3QgdG8gc3dpdGNoIHRvIGEgZnJhbWUgY291bGQgbm90IGJlIHNhdGlzZmllZCAnICtcbiAgICAgICdiZWNhdXNlIHRoZSBmcmFtZSBjb3VsZCBub3QgYmUgZm91bmQuJyxcbiAgICBlcnJvcjogJ25vIHN1Y2ggZnJhbWUnLFxuICAgIGVycm9yQ29kZTogOCxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ1Vua25vd25Db21tYW5kRXJyb3InLFxuICAgIGVycm9yTXNnOlxuICAgICAgJ1RoZSByZXF1ZXN0ZWQgcmVzb3VyY2UgY291bGQgbm90IGJlIGZvdW5kLCBvciBhIHJlcXVlc3QgJyArXG4gICAgICAnd2FzIHJlY2VpdmVkIHVzaW5nIGFuIEhUVFAgbWV0aG9kIHRoYXQgaXMgbm90IHN1cHBvcnRlZCBieSAnICtcbiAgICAgICd0aGUgbWFwcGVkIHJlc291cmNlLicsXG4gICAgZXJyb3I6ICd1bmtub3duIGNvbW1hbmQnLFxuICAgIGVycm9yQ29kZTogOSxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ1N0YWxlRWxlbWVudFJlZmVyZW5jZUVycm9yJyxcbiAgICBlcnJvck1zZzpcbiAgICAgICdBbiBlbGVtZW50IGNvbW1hbmQgZmFpbGVkIGJlY2F1c2UgdGhlIHJlZmVyZW5jZWQgZWxlbWVudCBpcyAnICtcbiAgICAgICdubyBsb25nZXIgYXR0YWNoZWQgdG8gdGhlIERPTS4nLFxuICAgIGVycm9yOiAnc3RhbGUgZWxlbWVudCByZWZlcmVuY2UnLFxuICAgIGVycm9yQ29kZTogMTAsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdFbGVtZW50Tm90VmlzaWJsZUVycm9yJyxcbiAgICBlcnJvck1zZzpcbiAgICAgICdBbiBlbGVtZW50IGNvbW1hbmQgY291bGQgbm90IGJlIGNvbXBsZXRlZCBiZWNhdXNlIHRoZSAnICtcbiAgICAgICdlbGVtZW50IGlzIG5vdCB2aXNpYmxlIG9uIHRoZSBwYWdlLicsXG4gICAgZXJyb3JDb2RlOiAxMSxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0ludmFsaWRFbGVtZW50U3RhdGVFcnJvcicsXG4gICAgZXJyb3JNc2c6XG4gICAgICAnQW4gZWxlbWVudCBjb21tYW5kIGNvdWxkIG5vdCBiZSBjb21wbGV0ZWQgYmVjYXVzZSB0aGUgZWxlbWVudCAnICtcbiAgICAgICdpcyBpbiBhbiBpbnZhbGlkIHN0YXRlIChlLmcuIGF0dGVtcHRpbmcgdG8gY2xpY2sgYSBkaXNhYmxlZCAnICtcbiAgICAgICdlbGVtZW50KS4nLFxuICAgIGVycm9yOiAnaW52YWxpZCBlbGVtZW50IHN0YXRlJyxcbiAgICBlcnJvckNvZGU6IDEyLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnVW5rbm93bkVycm9yJyxcbiAgICBlcnJvck1zZzogJ0FuIHVua25vd24gc2VydmVyLXNpZGUgZXJyb3Igb2NjdXJyZWQgd2hpbGUgcHJvY2Vzc2luZyB0aGUgJyArICdjb21tYW5kLicsXG4gICAgZXJyb3I6ICd1bmtub3duIGVycm9yJyxcbiAgICBlcnJvckNvZGU6IDEzLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnRWxlbWVudElzTm90U2VsZWN0YWJsZUVycm9yJyxcbiAgICBlcnJvck1zZzogJ0FuIGF0dGVtcHQgd2FzIG1hZGUgdG8gc2VsZWN0IGFuIGVsZW1lbnQgdGhhdCBjYW5ub3QgJyArICdiZSBzZWxlY3RlZC4nLFxuICAgIGVycm9yOiAnZWxlbWVudCBub3Qgc2VsZWN0YWJsZScsXG4gICAgZXJyb3JDb2RlOiAxNSxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0phdmFTY3JpcHRFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBleGVjdXRpbmcgdXNlciBzdXBwbGllZCBKYXZhU2NyaXB0LicsXG4gICAgZXJyb3I6ICdqYXZhc2NyaXB0IGVycm9yJyxcbiAgICBlcnJvckNvZGU6IDE3LFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnWFBhdGhMb29rdXBFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBzZWFyY2hpbmcgZm9yIGFuIGVsZW1lbnQgYnkgWFBhdGguJyxcbiAgICBlcnJvckNvZGU6IDE5LFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnVGltZW91dEVycm9yJyxcbiAgICBlcnJvck1zZzogJ0FuIG9wZXJhdGlvbiBkaWQgbm90IGNvbXBsZXRlIGJlZm9yZSBpdHMgdGltZW91dCBleHBpcmVkLicsXG4gICAgZXJyb3I6ICd0aW1lb3V0JyxcbiAgICBlcnJvckNvZGU6IDIxLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnTm9TdWNoV2luZG93RXJyb3InLFxuICAgIGVycm9yTXNnOlxuICAgICAgJ0EgcmVxdWVzdCB0byBzd2l0Y2ggdG8gYSBkaWZmZXJlbnQgd2luZG93IGNvdWxkIG5vdCBiZSAnICtcbiAgICAgICdzYXRpc2ZpZWQgYmVjYXVzZSB0aGUgd2luZG93IGNvdWxkIG5vdCBiZSBmb3VuZC4nLFxuICAgIGVycm9yOiAnbm8gc3VjaCB3aW5kb3cnLFxuICAgIGVycm9yQ29kZTogMjMsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdJbnZhbGlkQ29va2llRG9tYWluRXJyb3InLFxuICAgIGVycm9yTXNnOlxuICAgICAgJ0FuIGlsbGVnYWwgYXR0ZW1wdCB3YXMgbWFkZSB0byBzZXQgYSBjb29raWUgdW5kZXIgYSBkaWZmZXJlbnQgJyArXG4gICAgICAnZG9tYWluIHRoYW4gdGhlIGN1cnJlbnQgcGFnZS4nLFxuICAgIGVycm9yOiAnaW52YWxpZCBjb29raWUgZG9tYWluJyxcbiAgICBlcnJvckNvZGU6IDI0LFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnSW52YWxpZENvb3JkaW5hdGVzRXJyb3InLFxuICAgIGVycm9yTXNnOiAnVGhlIGNvb3JkaW5hdGVzIHByb3ZpZGVkIHRvIGFuIGludGVyYWN0aW9ucyBvcGVyYXRpb24gYXJlIGludmFsaWQuJyxcbiAgICBlcnJvcjogJ2ludmFsaWQgY29vcmRpbmF0ZXMnLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnVW5hYmxlVG9TZXRDb29raWVFcnJvcicsXG4gICAgZXJyb3JNc2c6IGBBIHJlcXVlc3QgdG8gc2V0IGEgY29va2llJ3MgdmFsdWUgY291bGQgbm90IGJlIHNhdGlzZmllZC5gLFxuICAgIGVycm9yOiAndW5hYmxlIHRvIHNldCBjb29raWUnLFxuICAgIGVycm9yQ29kZTogMjUsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdVbmV4cGVjdGVkQWxlcnRPcGVuRXJyb3InLFxuICAgIGVycm9yTXNnOiAnQSBtb2RhbCBkaWFsb2cgd2FzIG9wZW4sIGJsb2NraW5nIHRoaXMgb3BlcmF0aW9uJyxcbiAgICBlcnJvcjogJ3VuZXhwZWN0ZWQgYWxlcnQgb3BlbicsXG4gICAgZXJyb3JDb2RlOiAyNixcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ05vQWxlcnRPcGVuRXJyb3InLFxuICAgIGVycm9yTXNnOiAnQW4gYXR0ZW1wdCB3YXMgbWFkZSB0byBvcGVyYXRlIG9uIGEgbW9kYWwgZGlhbG9nIHdoZW4gb25lIHdhcyAnICsgJ25vdCBvcGVuLicsXG4gICAgZXJyb3JDb2RlOiAyNyxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ1NjcmlwdFRpbWVvdXRFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBIHNjcmlwdCBkaWQgbm90IGNvbXBsZXRlIGJlZm9yZSBpdHMgdGltZW91dCBleHBpcmVkLicsXG4gICAgZXJyb3I6ICdzY3JpcHQgdGltZW91dCcsXG4gICAgZXJyb3JDb2RlOiAyOCxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0ludmFsaWRFbGVtZW50Q29vcmRpbmF0ZXNFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdUaGUgY29vcmRpbmF0ZXMgcHJvdmlkZWQgdG8gYW4gaW50ZXJhY3Rpb25zIG9wZXJhdGlvbiBhcmUgJyArICdpbnZhbGlkLicsXG4gICAgZXJyb3JDb2RlOiAyOSxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ0lNRU5vdEF2YWlsYWJsZUVycm9yJyxcbiAgICBlcnJvck1zZzogJ0lNRSB3YXMgbm90IGF2YWlsYWJsZS4nLFxuICAgIGVycm9yQ29kZTogMzAsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdJTUVFbmdpbmVBY3RpdmF0aW9uRmFpbGVkRXJyb3InLFxuICAgIGVycm9yTXNnOiAnQW4gSU1FIGVuZ2luZSBjb3VsZCBub3QgYmUgc3RhcnRlZC4nLFxuICAgIGVycm9yQ29kZTogMzEsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdJbnZhbGlkU2VsZWN0b3JFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBcmd1bWVudCB3YXMgYW4gaW52YWxpZCBzZWxlY3RvciAoZS5nLiBYUGF0aC9DU1MpLicsXG4gICAgZXJyb3I6ICdpbnZhbGlkIHNlbGVjdG9yJyxcbiAgICBlcnJvckNvZGU6IDMyLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnU2Vzc2lvbk5vdENyZWF0ZWRFcnJvcicsXG4gICAgZXJyb3JNc2c6ICdBIG5ldyBzZXNzaW9uIGNvdWxkIG5vdCBiZSBjcmVhdGVkLicsXG4gICAgZXJyb3I6ICdzZXNzaW9uIG5vdCBjcmVhdGVkJyxcbiAgICBlcnJvckNvZGU6IDMzLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnTW92ZVRhcmdldE91dE9mQm91bmRzRXJyb3InLFxuICAgIGVycm9yTXNnOiAnVGFyZ2V0IHByb3ZpZGVkIGZvciBhIG1vdmUgYWN0aW9uIGlzIG91dCBvZiBib3VuZHMuJyxcbiAgICBlcnJvcjogJ21vdmUgdGFyZ2V0IG91dCBvZiBib3VuZHMnLFxuICAgIGVycm9yQ29kZTogMzQsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdOb1N1Y2hBbGVydEVycm9yJyxcbiAgICBlcnJvck1zZzogJ0FuIGF0dGVtcHQgd2FzIG1hZGUgdG8gb3BlcmF0ZSBvbiBhIG1vZGFsIGRpYWxvZyB3aGVuIG9uZSB3YXMgbm90IG9wZW4uJyxcbiAgICBlcnJvcjogJ25vIHN1Y2ggYWxlcnQnLFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnTm9TdWNoQ29va2llRXJyb3InLFxuICAgIGVycm9yTXNnOlxuICAgICAgJ05vIGNvb2tpZSBtYXRjaGluZyB0aGUgZ2l2ZW4gcGF0aCBuYW1lIHdhcyBmb3VuZCBhbW9uZ3N0IHRoZSBhc3NvY2lhdGVkIGNvb2tpZXMgb2YgdGhlIGN1cnJlbnQgYnJvd3NpbmcgY29udGV4dOKAmXMgYWN0aXZlIGRvY3VtZW50JyxcbiAgICBlcnJvcjogJ25vIHN1Y2ggY29va2llJyxcbiAgfSxcbiAge1xuICAgIGVycm9yTmFtZTogJ05vdFlldEltcGxlbWVudGVkRXJyb3InLFxuICAgIGVycm9yTXNnOiAnTWV0aG9kIGhhcyBub3QgeWV0IGJlZW4gaW1wbGVtZW50ZWQnLFxuICAgIGVycm9yOiAndW5rbm93biBtZXRob2QnLFxuICAgIGVycm9yQ29kZTogNDA1LFxuICB9LFxuICB7XG4gICAgZXJyb3JOYW1lOiAnVW5rbm93bkNvbW1hbmRFcnJvcicsXG4gICAgZXJyb3JNc2c6XG4gICAgICAnVGhlIHJlcXVlc3RlZCByZXNvdXJjZSBjb3VsZCBub3QgYmUgZm91bmQsIG9yIGEgcmVxdWVzdCB3YXMgcmVjZWl2ZWQgdXNpbmcgYW4gSFRUUCBtZXRob2QgdGhhdCBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBtYXBwZWQgcmVzb3VyY2UuJyxcbiAgICBlcnJvcjogJ3Vua25vd24gY29tbWFuZCcsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdVbmtub3duTWV0aG9kRXJyb3InLFxuICAgIGVycm9yTXNnOiAnVGhlIHJlcXVlc3RlZCBjb21tYW5kIG1hdGNoZWQgYSBrbm93biBVUkwgYnV0IGRpZCBub3QgbWF0Y2ggYW4gbWV0aG9kIGZvciB0aGF0IFVSTCcsXG4gICAgZXJyb3I6ICd1bmtub3duIG1ldGhvZCcsXG4gIH0sXG4gIHtcbiAgICBlcnJvck5hbWU6ICdVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yJyxcbiAgICBlcnJvck1zZzogJ0Egc2VydmVyLXNpZGUgZXJyb3Igb2NjdXJyZWQuIENvbW1hbmQgY2Fubm90IGJlIHN1cHBvcnRlZC4nLFxuICAgIGVycm9yOiAndW5zdXBwb3J0ZWQgb3BlcmF0aW9uJyxcbiAgfSxcbl07XG5cbmRlc2NyaWJlKCdlcnJvcnMnLCBmdW5jdGlvbiAoKSB7XG4gIGZvciAobGV0IGVycm9yIG9mIGVycm9yc0xpc3QpIHtcbiAgICBpdChlcnJvci5lcnJvck5hbWUgKyAnIHNob3VsZCBoYXZlIGEgSlNPTldQIGNvZGUgb3IgVzNDIGNvZGUgYW5kIG1lc3NhZ2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBpZiAoZXJyb3IuZXJyb3JDb2RlKSB7XG4gICAgICAgIG5ldyBlcnJvcnNbZXJyb3IuZXJyb3JOYW1lXSgpLnNob3VsZC5oYXZlLnByb3BlcnR5KCdqc29ud3BDb2RlJywgZXJyb3IuZXJyb3JDb2RlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5ldyBlcnJvcnNbZXJyb3IuZXJyb3JOYW1lXSgpLnNob3VsZC5oYXZlLnByb3BlcnR5KCdlcnJvcicsIGVycm9yLmVycm9yKTtcbiAgICAgIH1cbiAgICAgIG5ldyBlcnJvcnNbZXJyb3IuZXJyb3JOYW1lXSgpLnNob3VsZC5oYXZlLnByb3BlcnR5KCdtZXNzYWdlJywgZXJyb3IuZXJyb3JNc2cpO1xuICAgIH0pO1xuICB9XG4gIGl0KCdCYWRQYXJhbWV0ZXJzRXJyb3Igc2hvdWxkIG5vdCBoYXZlIGNvZGUgYW5kIHNob3VsZCBoYXZlIG1lc3NnJywgZnVuY3Rpb24gKCkge1xuICAgIG5ldyBlcnJvcnMuQmFkUGFyYW1ldGVyc0Vycm9yKCkuc2hvdWxkLm5vdC5oYXZlLnByb3BlcnR5KCdqc29ud3BDb2RlJyk7XG4gICAgbmV3IGVycm9ycy5CYWRQYXJhbWV0ZXJzRXJyb3IoKS5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnbWVzc2FnZScpO1xuICB9KTtcbiAgaXQoJ1Byb3h5UmVxdWVzdEVycm9yIHNob3VsZCBoYXZlIG1lc3NhZ2UgYW5kIGpzb253cCcsIGZ1bmN0aW9uICgpIHtcbiAgICBuZXcgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKCkuc2hvdWxkLmhhdmUucHJvcGVydHkoJ2pzb253cCcpO1xuICAgIG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoKS5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnbWVzc2FnZScpO1xuICB9KTtcbn0pO1xuZGVzY3JpYmUoJ2Vycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlJywgZnVuY3Rpb24gKCkge1xuICBmb3IgKGxldCBlcnJvciBvZiBlcnJvcnNMaXN0KSB7XG4gICAgaWYgKGVycm9yLmVycm9yTmFtZSAhPT0gJ05vdFlldEltcGxlbWVudGVkRXJyb3InKSB7XG4gICAgICBpdChlcnJvci5lcnJvckNvZGUgKyAnIHNob3VsZCByZXR1cm4gY29ycmVjdCBlcnJvcicsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKGVycm9yLmVycm9yQ29kZSkge1xuICAgICAgICAgIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlKGVycm9yLmVycm9yQ29kZSkuc2hvdWxkLmhhdmUucHJvcGVydHkoXG4gICAgICAgICAgICAnanNvbndwQ29kZScsXG4gICAgICAgICAgICBlcnJvci5lcnJvckNvZGVcbiAgICAgICAgICApO1xuICAgICAgICAgIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlKGVycm9yLmVycm9yQ29kZSkuc2hvdWxkLmhhdmUucHJvcGVydHkoXG4gICAgICAgICAgICAnbWVzc2FnZScsXG4gICAgICAgICAgICBlcnJvci5lcnJvck1zZ1xuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKCFfLmluY2x1ZGVzKFsxMywgMzNdLCBlcnJvci5lcnJvckNvZGUpKSB7XG4gICAgICAgICAgICBlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZShlcnJvci5lcnJvckNvZGUsICdhYmNkJykuc2hvdWxkLmhhdmUucHJvcGVydHkoXG4gICAgICAgICAgICAgICdqc29ud3BDb2RlJyxcbiAgICAgICAgICAgICAgZXJyb3IuZXJyb3JDb2RlXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgZXJyb3JGcm9tTUpTT05XUFN0YXR1c0NvZGUoZXJyb3IuZXJyb3JDb2RlLCAnYWJjZCcpLnNob3VsZC5oYXZlLnByb3BlcnR5KFxuICAgICAgICAgICAgICAnbWVzc2FnZScsXG4gICAgICAgICAgICAgICdhYmNkJ1xuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaXNFcnJvclR5cGUoZXJyb3JGcm9tTUpTT05XUFN0YXR1c0NvZGUoZXJyb3IuZXJyb3JDb2RlKSwgZXJyb3JzLlVua25vd25FcnJvcikuc2hvdWxkLmJlXG4gICAgICAgICAgICAudHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG4gIGl0KCdzaG91bGQgdGhyb3cgdW5rbm93biBlcnJvciBmb3IgdW5rbm93biBjb2RlJywgZnVuY3Rpb24gKCkge1xuICAgIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlKDk5KS5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnanNvbndwQ29kZScsIDEzKTtcbiAgICBlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZSg5OSkuc2hvdWxkLmhhdmUucHJvcGVydHkoXG4gICAgICAnbWVzc2FnZScsXG4gICAgICAnQW4gdW5rbm93biBzZXJ2ZXItc2lkZSBlcnJvciBvY2N1cnJlZCAnICsgJ3doaWxlIHByb2Nlc3NpbmcgdGhlIGNvbW1hbmQuJ1xuICAgICk7XG4gIH0pO1xufSk7XG5kZXNjcmliZSgnZXJyb3JGcm9tVzNDSnNvbkNvZGUnLCBmdW5jdGlvbiAoKSB7XG4gIGZvciAobGV0IGVycm9yIG9mIGVycm9yc0xpc3QpIHtcbiAgICBpZiAoZXJyb3IuZXJyb3JOYW1lICE9PSAnTm90WWV0SW1wbGVtZW50ZWRFcnJvcicpIHtcbiAgICAgIGl0KGVycm9yLmVycm9yTmFtZSArICcgc2hvdWxkIHJldHVybiBjb3JyZWN0IGVycm9yJywgZnVuY3Rpb24gKCkge1xuICAgICAgICBjb25zdCB7ZXJyb3I6IHczY0Vycm9yfSA9IGVycm9yO1xuICAgICAgICBpZiAodzNjRXJyb3IpIHtcbiAgICAgICAgICBlcnJvckZyb21XM0NKc29uQ29kZSh3M2NFcnJvcikuZXJyb3Iuc2hvdWxkLmVxdWFsKGVycm9yLmVycm9yKTtcbiAgICAgICAgICBlcnJvckZyb21XM0NKc29uQ29kZSh3M2NFcnJvcikuc2hvdWxkLmhhdmUucHJvcGVydHkoJ21lc3NhZ2UnLCBlcnJvci5lcnJvck1zZyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaXNFcnJvclR5cGUoZXJyb3JGcm9tVzNDSnNvbkNvZGUodzNjRXJyb3IpLCBlcnJvcnMuVW5rbm93bkVycm9yKS5zaG91bGQuYmUudHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG4gIGl0KCdzaG91bGQgcGFyc2UgdW5rbm93biBlcnJvcnMnLCBmdW5jdGlvbiAoKSB7XG4gICAgaXNFcnJvclR5cGUoZXJyb3JGcm9tVzNDSnNvbkNvZGUoJ25vdCBhIHJlYWwgZXJyb3IgY29kZScpLCBlcnJvcnMuVW5rbm93bkVycm9yKS5zaG91bGQuYmUudHJ1ZTtcbiAgICBlcnJvckZyb21XM0NKc29uQ29kZSgnbm90IGEgcmVhbCBlcnJvciBjb2RlJykubWVzc2FnZS5zaG91bGQubWF0Y2goXG4gICAgICAvQW4gdW5rbm93biBzZXJ2ZXItc2lkZSBlcnJvciBvY2N1cnJlZC9cbiAgICApO1xuICAgIGVycm9yRnJvbVczQ0pzb25Db2RlKCdub3QgYSByZWFsIGVycm9yIGNvZGUnKS5lcnJvci5zaG91bGQuZXF1YWwoJ3Vua25vd24gZXJyb3InKTtcbiAgfSk7XG59KTtcbmRlc2NyaWJlKCd3M2MgU3RhdHVzIENvZGVzJywgZnVuY3Rpb24gKCkge1xuICBpdCgnc2hvdWxkIG1hdGNoIHRoZSBjb3JyZWN0IGVycm9yIGNvZGVzJywgZnVuY3Rpb24gKCkge1xuICAgIGxldCBub240MDBFcnJvcnMgPSBbXG4gICAgICBbJ05vU3VjaERyaXZlckVycm9yJywgNDA0XSxcbiAgICAgIFsnTm9TdWNoRnJhbWVFcnJvcicsIDQwNF0sXG4gICAgICBbJ05vQWxlcnRPcGVuRXJyb3InLCA0MDRdLFxuICAgICAgWydOb1N1Y2hXaW5kb3dFcnJvcicsIDQwNF0sXG4gICAgICBbJ1N0YWxlRWxlbWVudFJlZmVyZW5jZUVycm9yJywgNDA0XSxcbiAgICAgIFsnSmF2YVNjcmlwdEVycm9yJywgNTAwXSxcbiAgICAgIFsnTW92ZVRhcmdldE91dE9mQm91bmRzRXJyb3InLCA1MDBdLFxuICAgICAgWydOb1N1Y2hDb29raWVFcnJvcicsIDQwNF0sXG4gICAgICBbJ05vU3VjaEVsZW1lbnRFcnJvcicsIDQwNF0sXG4gICAgICBbJ1NjcmlwdFRpbWVvdXRFcnJvcicsIDQwOF0sXG4gICAgICBbJ1Nlc3Npb25Ob3RDcmVhdGVkRXJyb3InLCA1MDBdLFxuICAgICAgWydUaW1lb3V0RXJyb3InLCA0MDhdLFxuICAgICAgWydVbmFibGVUb1NldENvb2tpZUVycm9yJywgNTAwXSxcbiAgICAgIFsnVW5hYmxlVG9DYXB0dXJlU2NyZWVuJywgNTAwXSxcbiAgICAgIFsnVW5leHBlY3RlZEFsZXJ0T3BlbkVycm9yJywgNTAwXSxcbiAgICAgIFsnVW5rbm93bkNvbW1hbmRFcnJvcicsIDQwNF0sXG4gICAgICBbJ1Vua25vd25FcnJvcicsIDUwMF0sXG4gICAgICBbJ1Vua25vd25NZXRob2RFcnJvcicsIDQwNV0sXG4gICAgICBbJ1Vuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3InLCA1MDBdLFxuICAgIF07XG5cbiAgICAvLyBUZXN0IHRoZSBlcnJvcnMgdGhhdCB3ZSBkb24ndCBleHBlY3QgdG8gcmV0dXJuIDQwMCBjb2RlXG4gICAgZm9yIChsZXQgW2Vycm9yTmFtZSwgZXhwZWN0ZWRFcnJvckNvZGVdIG9mIG5vbjQwMEVycm9ycykge1xuICAgICAgZXJyb3JzW2Vycm9yTmFtZV0uc2hvdWxkLmV4aXN0O1xuICAgICAgbmV3IGVycm9yc1tlcnJvck5hbWVdKCkuc2hvdWxkLmhhdmUucHJvcGVydHkoJ3czY1N0YXR1cycsIGV4cGVjdGVkRXJyb3JDb2RlKTtcbiAgICB9XG5cbiAgICAvLyBUZXN0IGFuIGVycm9yIHRoYXQgd2UgZXhwZWN0IHRvIHJldHVybiA0MDAgY29kZVxuICAgIG5ldyBlcnJvcnMuRWxlbWVudENsaWNrSW50ZXJjZXB0ZWRFcnJvcigpLnNob3VsZC5oYXZlLnByb3BlcnR5KCd3M2NTdGF0dXMnLCA0MDApO1xuICB9KTtcbn0pO1xuZGVzY3JpYmUoJy5nZXRSZXNwb25zZUZvclczQ0Vycm9yJywgZnVuY3Rpb24gKCkge1xuICBpdCgnc2hvdWxkIHJldHVybiBhbiBlcnJvciwgbWVzc2FnZSBhbmQgc3RhY2t0cmFjZSBmb3IganVzdCBhIGdlbmVyaWMgZXhjZXB0aW9uJywgZnVuY3Rpb24gKCkge1xuICAgIHRyeSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NvbWUgcmFuZG9tIGVycm9yJyk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc3QgW2h0dHBTdGF0dXMsIGh0dHBSZXNwb25zZUJvZHldID0gZ2V0UmVzcG9uc2VGb3JXM0NFcnJvcihlKTtcbiAgICAgIGh0dHBTdGF0dXMuc2hvdWxkLmVxdWFsKDUwMCk7XG4gICAgICBjb25zdCB7ZXJyb3IsIG1lc3NhZ2UsIHN0YWNrdHJhY2V9ID0gaHR0cFJlc3BvbnNlQm9keS52YWx1ZTtcbiAgICAgIG1lc3NhZ2Uuc2hvdWxkLm1hdGNoKC9Tb21lIHJhbmRvbSBlcnJvci8pO1xuICAgICAgZXJyb3Iuc2hvdWxkLmVxdWFsKCd1bmtub3duIGVycm9yJyk7XG4gICAgICBzdGFja3RyYWNlLnNob3VsZC5tYXRjaCgvYXQgZ2V0UmVzcG9uc2VGb3JXM0NFcnJvci8pO1xuICAgICAgc3RhY2t0cmFjZS5zaG91bGQubWF0Y2goL1NvbWUgcmFuZG9tIGVycm9yLyk7XG4gICAgICBzdGFja3RyYWNlLnNob3VsZC5jb250YWluKGJhc2VuYW1lKTtcbiAgICB9XG4gIH0pO1xuICBpdCgnc2hvdWxkIHJldHVybiBhbiBlcnJvciwgbWVzc2FnZSBhbmQgc3RhY2t0cmFjZSBmb3IgYSBOb1N1Y2hFbGVtZW50RXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3Qgbm9TdWNoRWxlbWVudEVycm9yID0gbmV3IGVycm9ycy5Ob1N1Y2hFbGVtZW50RXJyb3IoJ3NwZWNpZmljIGVycm9yIG1lc3NhZ2UnKTtcbiAgICBjb25zdCBbaHR0cFN0YXR1cywgaHR0cFJlc3BvbnNlQm9keV0gPSBnZXRSZXNwb25zZUZvclczQ0Vycm9yKG5vU3VjaEVsZW1lbnRFcnJvcik7XG4gICAgaHR0cFN0YXR1cy5zaG91bGQuZXF1YWwoNDA0KTtcbiAgICBjb25zdCB7ZXJyb3IsIG1lc3NhZ2UsIHN0YWNrdHJhY2V9ID0gaHR0cFJlc3BvbnNlQm9keS52YWx1ZTtcbiAgICBlcnJvci5zaG91bGQuZXF1YWwoJ25vIHN1Y2ggZWxlbWVudCcpO1xuICAgIG1lc3NhZ2Uuc2hvdWxkLm1hdGNoKC9zcGVjaWZpYyBlcnJvciBtZXNzYWdlLyk7XG4gICAgc3RhY2t0cmFjZS5zaG91bGQuY29udGFpbihiYXNlbmFtZSk7XG4gIH0pO1xuICBpdCgnc2hvdWxkIGhhbmRsZSBCYWRQYXJhbWV0ZXJzRXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgYmFkUGFyYW1zRXJyb3IgPSBuZXcgZXJyb3JzLkJhZFBhcmFtZXRlcnNFcnJvcignX19GT09fXycsICdfX0JBUl9fJywgJ19fSEVMTE9fV09STERfXycpO1xuICAgIGNvbnN0IFtodHRwU3RhdHVzLCBodHRwUmVzcG9uc2VCb2R5XSA9IGdldFJlc3BvbnNlRm9yVzNDRXJyb3IoYmFkUGFyYW1zRXJyb3IpO1xuICAgIGh0dHBTdGF0dXMuc2hvdWxkLmVxdWFsKDQwMCk7XG4gICAgY29uc3Qge2Vycm9yLCBtZXNzYWdlLCBzdGFja3RyYWNlfSA9IGh0dHBSZXNwb25zZUJvZHkudmFsdWU7XG4gICAgZXJyb3Iuc2hvdWxkLmVxdWFsKCdpbnZhbGlkIGFyZ3VtZW50Jyk7XG4gICAgbWVzc2FnZS5zaG91bGQubWF0Y2goL19fQkFSX18vKTtcbiAgICBtZXNzYWdlLnNob3VsZC5tYXRjaCgvX19IRUxMT19XT1JMRF9fLyk7XG4gICAgc3RhY2t0cmFjZS5zaG91bGQuY29udGFpbihiYXNlbmFtZSk7XG4gIH0pO1xuICBpdCgnc2hvdWxkIHRyYW5zbGF0ZSBKU09OV1AgZXJyb3JzJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IFtodHRwU3RhdHVzLCBodHRwUmVzcG9uc2VCb2R5XSA9IGdldFJlc3BvbnNlRm9yVzNDRXJyb3Ioe1xuICAgICAgc3RhdHVzOiA3LFxuICAgICAgdmFsdWU6ICdNeSBjdXN0b20gbWVzc2FnZScsXG4gICAgICBzZXNzaW9uSWQ6ICdGYWtlIFNlc3Npb24gSWQnLFxuICAgIH0pO1xuICAgIGh0dHBTdGF0dXMuc2hvdWxkLmVxdWFsKDQwNCk7XG4gICAgY29uc3Qge2Vycm9yLCBtZXNzYWdlLCBzdGFja3RyYWNlfSA9IGh0dHBSZXNwb25zZUJvZHkudmFsdWU7XG4gICAgbWVzc2FnZS5zaG91bGQuZXF1YWwoJ015IGN1c3RvbSBtZXNzYWdlJyk7XG4gICAgZXJyb3Iuc2hvdWxkLmVxdWFsKCdubyBzdWNoIGVsZW1lbnQnKTtcbiAgICBzdGFja3RyYWNlLnNob3VsZC5leGlzdDtcbiAgfSk7XG59KTtcbmRlc2NyaWJlKCcuZ2V0QWN0dWFsRXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gIGRlc2NyaWJlKCdNSlNPTldQJywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdzaG91bGQgbWFwIGEgc3RhdHVzIGNvZGUgNyBubyBzdWNoIGVsZW1lbnQgZXJyb3IgYXMgYSBOb1N1Y2hFbGVtZW50RXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhY3R1YWxFcnJvciA9IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoJ0Vycm9yIG1lc3NhZ2UgZG9lcyBub3QgbWF0dGVyJywge1xuICAgICAgICB2YWx1ZTogJ2RvZXMgbm90IG1hdHRlcicsXG4gICAgICAgIHN0YXR1czogNyxcbiAgICAgIH0pLmdldEFjdHVhbEVycm9yKCk7XG4gICAgICBpc0Vycm9yVHlwZShhY3R1YWxFcnJvciwgZXJyb3JzLk5vU3VjaEVsZW1lbnRFcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBtYXAgYSBzdGF0dXMgY29kZSAxMCwgU3RhbGVFbGVtZW50UmVmZXJlbmNlRXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhY3R1YWxFcnJvciA9IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoJ0Vycm9yIG1lc3NhZ2UgZG9lcyBub3QgbWF0dGVyJywge1xuICAgICAgICB2YWx1ZTogJ0RvZXMgbm90IG1hdHRlcicsXG4gICAgICAgIHN0YXR1czogMTAsXG4gICAgICB9KS5nZXRBY3R1YWxFcnJvcigpO1xuICAgICAgaXNFcnJvclR5cGUoYWN0dWFsRXJyb3IsIGVycm9ycy5TdGFsZUVsZW1lbnRSZWZlcmVuY2VFcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBtYXAgYW4gdW5rbm93biBlcnJvciB0byBVbmtub3duRXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhY3R1YWxFcnJvciA9IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoJ0Vycm9yIG1lc3NhZ2UgZG9lcyBub3QgbWF0dGVyJywge1xuICAgICAgICB2YWx1ZTogJ0RvZXMgbm90IG1hdHRlcicsXG4gICAgICAgIHN0YXR1czogLTEwMCxcbiAgICAgIH0pLmdldEFjdHVhbEVycm9yKCk7XG4gICAgICBpc0Vycm9yVHlwZShhY3R1YWxFcnJvciwgZXJyb3JzLlVua25vd25FcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBwYXJzZSBhIEpTT04gc3RyaW5nJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgYWN0dWFsRXJyb3IgPSBuZXcgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKFxuICAgICAgICAnRXJyb3IgbWVzc2FnZSBkb2VzIG5vdCBtYXR0ZXInLFxuICAgICAgICBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgdmFsdWU6ICdEb2VzIG5vdCBtYXR0ZXInLFxuICAgICAgICAgIHN0YXR1czogLTEwMCxcbiAgICAgICAgfSlcbiAgICAgICkuZ2V0QWN0dWFsRXJyb3IoKTtcbiAgICAgIGlzRXJyb3JUeXBlKGFjdHVhbEVycm9yLCBlcnJvcnMuVW5rbm93bkVycm9yKS5zaG91bGQuYmUudHJ1ZTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ1czQycsIGZ1bmN0aW9uICgpIHtcbiAgICBpdCgnc2hvdWxkIG1hcCBhIDQwNCBubyBzdWNoIGVsZW1lbnQgZXJyb3IgYXMgYSBOb1N1Y2hFbGVtZW50RXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhY3R1YWxFcnJvciA9IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoXG4gICAgICAgICdFcnJvciBtZXNzYWdlIGRvZXMgbm90IG1hdHRlcicsXG4gICAgICAgIHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgZXJyb3I6IGVycm9ycy5Ob1N1Y2hFbGVtZW50RXJyb3IuZXJyb3IoKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBIVFRQU3RhdHVzQ29kZXMuTk9UX0ZPVU5EXG4gICAgICApLmdldEFjdHVhbEVycm9yKCk7XG4gICAgICBpc0Vycm9yVHlwZShhY3R1YWxFcnJvciwgZXJyb3JzLk5vU3VjaEVsZW1lbnRFcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBtYXAgYSA0MDAgU3RhbGVFbGVtZW50UmVmZXJlbmNlRXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhY3R1YWxFcnJvciA9IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoXG4gICAgICAgICdFcnJvciBtZXNzYWdlIGRvZXMgbm90IG1hdHRlcicsXG4gICAgICAgIHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgZXJyb3I6IGVycm9ycy5TdGFsZUVsZW1lbnRSZWZlcmVuY2VFcnJvci5lcnJvcigpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIEhUVFBTdGF0dXNDb2Rlcy5CQURfUkVRVUVTVFxuICAgICAgKS5nZXRBY3R1YWxFcnJvcigpO1xuICAgICAgaXNFcnJvclR5cGUoYWN0dWFsRXJyb3IsIGVycm9ycy5TdGFsZUVsZW1lbnRSZWZlcmVuY2VFcnJvcikuc2hvdWxkLmJlLnRydWU7XG4gICAgfSk7XG4gICAgaXQoJ3Nob3VsZCBtYXAgYW4gdW5rbm93biBlcnJvciB0byBVbmtub3duRXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhY3R1YWxFcnJvciA9IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoXG4gICAgICAgICdFcnJvciBtZXNzYWdlIGRvZXMgbm90IG1hdHRlcicsXG4gICAgICAgIG51bGwsXG4gICAgICAgIHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgZXJyb3I6ICdOb3QgYSB2YWxpZCB3M2MgSlNPTiBjb2RlJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICA0NTZcbiAgICAgICkuZ2V0QWN0dWFsRXJyb3IoKTtcbiAgICAgIGlzRXJyb3JUeXBlKGFjdHVhbEVycm9yLCBlcnJvcnMuVW5rbm93bkVycm9yKS5zaG91bGQuYmUudHJ1ZTtcbiAgICB9KTtcbiAgICBpdCgnc2hvdWxkIHBhcnNlIGEgSlNPTiBzdHJpbmcnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhY3R1YWxFcnJvciA9IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IoXG4gICAgICAgICdFcnJvciBtZXNzYWdlIGRvZXMgbm90IG1hdHRlcicsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgZXJyb3I6IGVycm9ycy5TdGFsZUVsZW1lbnRSZWZlcmVuY2VFcnJvci5lcnJvcigpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pLFxuICAgICAgICBIVFRQU3RhdHVzQ29kZXMuQkFEX1JFUVVFU1RcbiAgICAgICkuZ2V0QWN0dWFsRXJyb3IoKTtcbiAgICAgIGlzRXJyb3JUeXBlKGFjdHVhbEVycm9yLCBlcnJvcnMuU3RhbGVFbGVtZW50UmVmZXJlbmNlRXJyb3IpLnNob3VsZC5iZS50cnVlO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQSxNQUFNQSxRQUFRLEdBQUdDLGFBQUEsQ0FBS0QsUUFBTCxDQUFjRSxVQUFkLENBQWpCOztBQUlBLElBQUlDLFVBQVUsR0FBRyxDQUNmO0VBQ0VDLFNBQVMsRUFBRSxtQkFEYjtFQUVFQyxRQUFRLEVBQUUsK0NBRlo7RUFHRUMsS0FBSyxFQUFFLG9CQUhUO0VBSUVDLFNBQVMsRUFBRTtBQUpiLENBRGUsRUFPZjtFQUNFSCxTQUFTLEVBQUUsOEJBRGI7RUFFRUMsUUFBUSxFQUNOLCtJQUhKO0VBSUVDLEtBQUssRUFBRTtBQUpULENBUGUsRUFhZjtFQUNFRixTQUFTLEVBQUUsNkJBRGI7RUFFRUMsUUFBUSxFQUNOLCtGQUhKO0VBSUVDLEtBQUssRUFBRTtBQUpULENBYmUsRUFtQmY7RUFDRUYsU0FBUyxFQUFFLDBCQURiO0VBRUVDLFFBQVEsRUFDTixxSUFISjtFQUlFQyxLQUFLLEVBQUU7QUFKVCxDQW5CZSxFQXlCZjtFQUNFRixTQUFTLEVBQUUsc0JBRGI7RUFFRUMsUUFBUSxFQUFFLHFFQUZaO0VBR0VDLEtBQUssRUFBRTtBQUhULENBekJlLEVBOEJmO0VBQ0VGLFNBQVMsRUFBRSxvQkFEYjtFQUVFQyxRQUFRLEVBQUUsMkRBQTJELDBCQUZ2RTtFQUdFQyxLQUFLLEVBQUUsaUJBSFQ7RUFJRUMsU0FBUyxFQUFFO0FBSmIsQ0E5QmUsRUFvQ2Y7RUFDRUgsU0FBUyxFQUFFLGtCQURiO0VBRUVDLFFBQVEsRUFDTiwyREFDQSx1Q0FKSjtFQUtFQyxLQUFLLEVBQUUsZUFMVDtFQU1F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
|
|
@@ -77,4 +77,4 @@ describe('Protocol', function () {
|
|
|
77
77
|
});
|
|
78
78
|
});
|
|
79
79
|
});
|
|
80
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZXNjcmliZSIsIml0Iiwic2hhc3VtIiwiY3J5cHRvIiwiY3JlYXRlSGFzaCIsInVybCIsInVybE1hcHBpbmciLCJfIiwidG9QYWlycyIsIk1FVEhPRF9NQVAiLCJ1cGRhdGUiLCJtZXRob2QiLCJtZXRob2RNYXBwaW5nIiwiY29tbWFuZCIsInBheWxvYWRQYXJhbXMiLCJhbGxQYXJhbXMiLCJmbGF0dGVuIiwicmVxdWlyZWQiLCJvcHRpb25hbCIsImNvbmNhdCIsInBhcmFtIiwid3JhcCIsImhhc2giLCJkaWdlc3QiLCJzdWJzdHJpbmciLCJzaG91bGQiLCJlcXVhbCIsImNtZE5hbWUiLCJyb3V0ZVRvQ29tbWFuZE5hbWUiLCJyb3V0ZSIsImNoYWkiLCJ1bmRlZmluZWQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3VuaXQvcHJvdG9jb2wvcm91dGVzLnNwZWMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gdHJhbnNwaWxlOm1vY2hhXG5cbmltcG9ydCB7X30gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7TUVUSE9EX01BUCwgcm91dGVUb0NvbW1hbmROYW1lfSBmcm9tICcuLi8uLi8uLi9saWIvcHJvdG9jb2wnO1xuaW1wb3J0IGNyeXB0byBmcm9tICdjcnlwdG8nO1xuXG5kZXNjcmliZSgnUHJvdG9jb2wnLCBmdW5jdGlvbiAoKSB7XG4gIC8vIFRPRE8gdGVzdCBhZ2FpbnN0IGFuIGV4cGxpY2l0IHByb3RvY29sIHJhdGhlciB0aGFuIGEgaGFzaCBvZiBhIHByZXZpb3VzXG4gIC8vIHByb3RvY29sXG5cbiAgZGVzY3JpYmUoJ2Vuc3VyZSBwcm90b2NvbCBjb25zaXN0ZW5jeScsIGZ1bmN0aW9uICgpIHtcbiAgICBpdCgnc2hvdWxkIG5vdCBjaGFuZ2UgcHJvdG9jb2wgYmV0d2VlbiBwYXRjaCB2ZXJzaW9ucycsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCBzaGFzdW0gPSBjcnlwdG8uY3JlYXRlSGFzaCgnc2hhMScpO1xuICAgICAgZm9yIChsZXQgW3VybCwgdXJsTWFwcGluZ10gb2YgXy50b1BhaXJzKE1FVEhPRF9NQVApKSB7XG4gICAgICAgIHNoYXN1bS51cGRhdGUodXJsKTtcbiAgICAgICAgZm9yIChsZXQgW21ldGhvZCwgbWV0aG9kTWFwcGluZ10gb2YgXy50b1BhaXJzKHVybE1hcHBpbmcpKSB7XG4gICAgICAgICAgc2hhc3VtLnVwZGF0ZShtZXRob2QpO1xuICAgICAgICAgIGlmIChtZXRob2RNYXBwaW5nLmNvbW1hbmQpIHtcbiAgICAgICAgICAgIHNoYXN1bS51cGRhdGUobWV0aG9kTWFwcGluZy5jb21tYW5kKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKG1ldGhvZE1hcHBpbmcucGF5bG9hZFBhcmFtcykge1xuICAgICAgICAgICAgbGV0IGFsbFBhcmFtcyA9IF8uZmxhdHRlbihtZXRob2RNYXBwaW5nLnBheWxvYWRQYXJhbXMucmVxdWlyZWQpO1xuICAgICAgICAgICAgaWYgKG1ldGhvZE1hcHBpbmcucGF5bG9hZFBhcmFtcy5vcHRpb25hbCkge1xuICAgICAgICAgICAgICBhbGxQYXJhbXMgPSBhbGxQYXJhbXMuY29uY2F0KF8uZmxhdHRlbihtZXRob2RNYXBwaW5nLnBheWxvYWRQYXJhbXMub3B0aW9uYWwpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvciAobGV0IHBhcmFtIG9mIGFsbFBhcmFtcykge1xuICAgICAgICAgICAgICBzaGFzdW0udXBkYXRlKHBhcmFtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChtZXRob2RNYXBwaW5nLnBheWxvYWRQYXJhbXMud3JhcCkge1xuICAgICAgICAgICAgICBzaGFzdW0udXBkYXRlKCdza2lwJyk7XG4gICAgICAgICAgICAgIHNoYXN1bS51cGRhdGUobWV0aG9kTWFwcGluZy5wYXlsb2FkUGFyYW1zLndyYXApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgbGV0IGhhc2ggPSBzaGFzdW0uZGlnZXN0KCdoZXgnKS5zdWJzdHJpbmcoMCwgOCk7XG4gICAgICAvLyBNb2RpZnkgdGhlIGhhc2ggd2hlbmV2ZXIgdGhlIHByb3RvY29sIGhhcyBpbnRlbnRpb25hbGx5IGJlZW4gbW9kaWZpZWQuXG4gICAgICBoYXNoLnNob3VsZC5lcXVhbCgnNzM2YmYyNDYnKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2NoZWNrIHJvdXRlIHRvIGNvbW1hbmQgbmFtZSBjb252ZXJzaW9uJywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdzaG91bGQgcHJvcGVybHkgbG9va3VwIGNvcnJlY3QgY29tbWFuZCBuYW1lIGZvciBlbmRwb2ludCB3aXRoIHNlc3Npb24nLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBjbWROYW1lID0gcm91dGVUb0NvbW1hbmROYW1lKCcvdGltZW91dHMnLCAnUE9TVCcpO1xuICAgICAgY21kTmFtZS5zaG91bGQuZXF1YWwoJ3RpbWVvdXRzJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHByb3Blcmx5IGxvb2t1cCBjb3JyZWN0IGNvbW1hbmQgbmFtZSBmb3IgZW5kcG9pbnQgd2l0aCBzZXNzaW9uJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgY21kTmFtZSA9IHJvdXRlVG9Db21tYW5kTmFtZSgnL3RpbWVvdXRzL2ltcGxpY2l0X3dhaXQnLCAnUE9TVCcpO1xuICAgICAgY21kTmFtZS5zaG91bGQuZXF1YWwoJ2ltcGxpY2l0V2FpdCcpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBwcm9wZXJseSBsb29rdXAgY29ycmVjdCBjb21tYW5kIG5hbWUgZm9yIGVuZHBvaW50IHdpdGhvdXQgc2Vzc2lvbicsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGNtZE5hbWUgPSByb3V0ZVRvQ29tbWFuZE5hbWUoJy9zdGF0dXMnLCAnR0VUJyk7XG4gICAgICBjbWROYW1lLnNob3VsZC5lcXVhbCgnZ2V0U3RhdHVzJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHByb3Blcmx5IGxvb2t1cCBjb3JyZWN0IGNvbW1hbmQgbmFtZSBmb3IgZW5kcG9pbnQgd2l0aG91dCBsZWFkaW5nIHNsYXNoJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgY21kTmFtZSA9IHJvdXRlVG9Db21tYW5kTmFtZSgnc3RhdHVzJywgJ0dFVCcpO1xuICAgICAgY21kTmFtZS5zaG91bGQuZXF1YWwoJ2dldFN0YXR1cycpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBwcm9wZXJseSBsb29rdXAgY29ycmVjdCBjb21tYW5kIG5hbWUgZm9yIGZ1bGx5IHNwZWNpZmllZCBlbmRwb2ludCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGNtZE5hbWUgPSByb3V0ZVRvQ29tbWFuZE5hbWUoJy9zdGF0dXMnLCAnR0VUJyk7XG4gICAgICBjbWROYW1lLnNob3VsZC5lcXVhbCgnZ2V0U3RhdHVzJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIG5vdCBmaW5kIGNvbW1hbmQgbmFtZSBpZiBpbmNvcnJlY3QgaW5wdXQgZGF0YSBoYXMgYmVlbiBzcGVjaWZpZWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBmb3IgKGxldCBbcm91dGUsIG1ldGhvZF0gb2YgW1xuICAgICAgICBbJy9zdGF0dXMnLCAnUE9TVCddLFxuICAgICAgICBbJy94c3RhdHVzJywgJ0dFVCddLFxuICAgICAgICBbJ3N0YXR1cycsICdQT1NUJ10sXG4gICAgICBdKSB7XG4gICAgICAgIGNvbnN0IGNtZE5hbWUgPSByb3V0ZVRvQ29tbWFuZE5hbWUocm91dGUsIG1ldGhvZCk7XG4gICAgICAgIGNoYWkuc2hvdWxkKCkuZXF1YWwoY21kTmFtZSwgdW5kZWZpbmVkKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBRUFBLFFBQVEsQ0FBQyxVQUFELEVBQWEsWUFBWTtFQUkvQkEsUUFBUSxDQUFDLDZCQUFELEVBQWdDLFlBQVk7SUFD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
|
|
@@ -146,4 +146,4 @@ describe('Protocol', function () {
|
|
|
146
146
|
});
|
|
147
147
|
});
|
|
148
148
|
});
|
|
149
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9wcm90b2NvbC92YWxpZGF0b3Iuc3BlYy5qcyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsIml0IiwidmFsaWRhdG9ycyIsInNldFVybCIsInNob3VsZCIsInRocm93Iiwibm90IiwiaW1wbGljaXRXYWl0IiwiYXN5bmNTY3JpcHRUaW1lb3V0IiwiY2xpY2tDdXJyZW50Iiwic2V0TmV0d29ya0Nvbm5lY3Rpb24iXSwibWFwcGluZ3MiOiI7Ozs7QUFFQTs7QUFJQUEsUUFBUSxDQUFDLFVBQUQsRUFBYSxZQUFZO0FBQy9CQSxFQUFBQSxRQUFRLENBQUMsa0JBQUQsRUFBcUIsWUFBWTtBQUV2Q0EsSUFBQUEsUUFBUSxDQUFDLFFBQUQsRUFBVyxZQUFZO0FBQzdCQyxNQUFBQSxFQUFFLENBQUMsZ0NBQUQsRUFBbUMsWUFBWTtBQUMvQyxTQUFDLE1BQU07QUFBQ0MsaUNBQVdDLE1BQVg7QUFBcUIsU0FBN0IsRUFBK0JDLE1BQS9CLENBQXNDQyxLQUF0QyxDQUE0QyxNQUE1QztBQUNELE9BRkMsQ0FBRjtBQUdBSixNQUFBQSxFQUFFLENBQUMsb0NBQUQsRUFBdUMsWUFBWTtBQUNuRCxTQUFDLE1BQU07QUFBQ0MsaUNBQVdDLE1BQVgsQ0FBa0IsS0FBbEI7QUFBMEIsU0FBbEMsRUFBb0NDLE1BQXBDLENBQTJDQyxLQUEzQyxDQUFpRCxNQUFqRDtBQUNELE9BRkMsQ0FBRjtBQUdBSixNQUFBQSxFQUFFLENBQUMsa0RBQUQsRUFBcUQsWUFBWTtBQUNqRSxTQUFDLE1BQU07QUFBQ0MsaUNBQVdDLE1BQVgsQ0FBa0Isa0JBQWxCO0FBQXVDLFNBQS9DLEVBQWlEQyxNQUFqRCxDQUF3REUsR0FBeEQsQ0FBNERELEtBQTVEO0FBQ0QsT0FGQyxDQUFGO0FBR0FKLE1BQUFBLEVBQUUsQ0FBQyxrREFBRCxFQUFxRCxZQUFZO0FBQ2pFLFNBQUMsTUFBTTtBQUFDQyxpQ0FBV0MsTUFBWCxDQUFrQiw2QkFBbEI7QUFBa0QsU0FBMUQsRUFBNERDLE1B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c0NvbnRlbnQiOlsiLy8gdHJhbnNwaWxlOm1vY2hhXG5cbmltcG9ydCB7IHZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi8uLi9saWIvcHJvdG9jb2wvdmFsaWRhdG9ycyc7XG5cblxuXG5kZXNjcmliZSgnUHJvdG9jb2wnLCBmdW5jdGlvbiAoKSB7XG4gIGRlc2NyaWJlKCdkaXJlY3QgdG8gZHJpdmVyJywgZnVuY3Rpb24gKCkge1xuXG4gICAgZGVzY3JpYmUoJ3NldFVybCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGl0KCdzaG91bGQgZmFpbCB3aGVuIG5vIHVybCBwYXNzZWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7dmFsaWRhdG9ycy5zZXRVcmwoKTt9KS5zaG91bGQudGhyb3coL3VybC9pKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCBmYWlsIHdoZW4gZ2l2ZW4gaW52YWxpZCB1cmwnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7dmFsaWRhdG9ycy5zZXRVcmwoJ2ZvbycpO30pLnNob3VsZC50aHJvdygvdXJsL2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIHN1Y2NlZWQgd2hlbiBnaXZlbiB1cmwgc3RhcnRpbmcgd2l0aCBodHRwJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge3ZhbGlkYXRvcnMuc2V0VXJsKCdodHRwOi8vYXBwaXVtLmlvJyk7fSkuc2hvdWxkLm5vdC50aHJvdygpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIHN1Y2NlZWQgd2hlbiBnaXZlbiBhbiBhbmRyb2lkLWxpa2Ugc2NoZW1lJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge3ZhbGlkYXRvcnMuc2V0VXJsKCdjb250ZW50Oi8vY29udGFjdHMvcGVvcGxlLzEnKTt9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aXRoIGh5cGhlbnMgZG90cyBhbmQgcGx1cyBjaGFycyBpbiB0aGUgc2NoZW1lJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge3ZhbGlkYXRvcnMuc2V0VXJsKCdteS1hcHAuYStiOi8vbG9naW4nKTt9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGFuIGFib3V0IHNjaGVtZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLnNldFVybCgnYWJvdXQ6YmxhbmsnKTt9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGEgZGF0YSBzY2hlbWUnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7dmFsaWRhdG9ycy5zZXRVcmwoJ2RhdGE6dGV4dC9odG1sLDxodG1sPjwvaHRtbD4nKTt9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgICBkZXNjcmliZSgnaW1wbGljaXRXYWl0JywgZnVuY3Rpb24gKCkge1xuICAgICAgaXQoJ3Nob3VsZCBmYWlsIHdoZW4gZ2l2ZW4gbm8gbXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7dmFsaWRhdG9ycy5pbXBsaWNpdFdhaXQoKTt9KS5zaG91bGQudGhyb3coL21zL2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBnaXZlbiBhIG5vbi1udW1lcmljIG1zJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge3ZhbGlkYXRvcnMuaW1wbGljaXRXYWl0KCdmaXZlJyk7fSkuc2hvdWxkLnRocm93KC9tcy9pKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCBmYWlsIHdoZW4gZ2l2ZW4gYSBuZWdhdGl2ZSBtcycsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLmltcGxpY2l0V2FpdCgtMSk7fSkuc2hvdWxkLnRocm93KC9tcy9pKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCBzdWNjZWVkIHdoZW4gZ2l2ZW4gYW4gbXMgb2YgMCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLmltcGxpY2l0V2FpdCgwKTt9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGFuIG1zIGdyZWF0ZXIgdGhhbiAwJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge3ZhbGlkYXRvcnMuaW1wbGljaXRXYWl0KDEwMCk7fSkuc2hvdWxkLm5vdC50aHJvdygpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gICAgZGVzY3JpYmUoJ2FzeW5jU2NyaXB0VGltZW91dCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGl0KCdzaG91bGQgZmFpbCB3aGVuIGdpdmVuIG5vIG1zJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge3ZhbGlkYXRvcnMuYXN5bmNTY3JpcHRUaW1lb3V0KCk7fSkuc2hvdWxkLnRocm93KC9tcy9pKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCBmYWlsIHdoZW4gZ2l2ZW4gYSBub24tbnVtZXJpYyBtcycsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLmFzeW5jU2NyaXB0VGltZW91dCgnZml2ZScpO30pLnNob3VsZC50aHJvdygvbXMvaSk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgZmFpbCB3aGVuIGdpdmVuIGEgbmVnYXRpdmUgbXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7dmFsaWRhdG9ycy5hc3luY1NjcmlwdFRpbWVvdXQoLTEpO30pLnNob3VsZC50aHJvdygvbXMvaSk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGFuIG1zIG9mIDAnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7dmFsaWRhdG9ycy5hc3luY1NjcmlwdFRpbWVvdXQoMCk7fSkuc2hvdWxkLm5vdC50aHJvdygpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIHN1Y2NlZWQgd2hlbiBnaXZlbiBhbiBtcyBncmVhdGVyIHRoYW4gMCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLmFzeW5jU2NyaXB0VGltZW91dCgxMDApO30pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGRlc2NyaWJlKCdjbGlja0N1cnJlbnQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBnaXZlbiBhbiBpbnZhbGlkIGJ1dHRvbicsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLmNsaWNrQ3VycmVudCg0KTt9KS5zaG91bGQudGhyb3coLzAsIDEsIG9yIDIvaSk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGEgdmFsaWQgYnV0dG9uJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge3ZhbGlkYXRvcnMuY2xpY2tDdXJyZW50KDApO30pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLmNsaWNrQ3VycmVudCgxKTt9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICAgICgoKSA9PiB7dmFsaWRhdG9ycy5jbGlja0N1cnJlbnQoMik7fSkuc2hvdWxkLm5vdC50aHJvdygpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gICAgZGVzY3JpYmUoJ3NldE5ldHdvcmtDb25uZWN0aW9uJywgZnVuY3Rpb24gKCkge1xuICAgICAgaXQoJ3Nob3VsZCBmYWlsIHdoZW4gZ2l2ZW4gbm8gdHlwZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLnNldE5ldHdvcmtDb25uZWN0aW9uKCk7fSkuc2hvdWxkLnRocm93KC8wLCAxLCAyLCA0LCA2L2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBnaXZlbiBhbiBpbnZhbGlkIHR5cGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7dmFsaWRhdG9ycy5zZXROZXR3b3JrQ29ubmVjdGlvbig4KTt9KS5zaG91bGQudGhyb3coLzAsIDEsIDIsIDQsIDYvaSk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGEgdmFsaWQgdHlwZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLnNldE5ldHdvcmtDb25uZWN0aW9uKDApO30pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLnNldE5ldHdvcmtDb25uZWN0aW9uKDEpO30pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLnNldE5ldHdvcmtDb25uZWN0aW9uKDIpO30pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLnNldE5ldHdvcmtDb25uZWN0aW9uKDQpO30pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgICAgKCgpID0+IHt2YWxpZGF0b3JzLnNldE5ldHdvcmtDb25uZWN0aW9uKDYpO30pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|
|
149
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZXNjcmliZSIsIml0IiwidmFsaWRhdG9ycyIsInNldFVybCIsInNob3VsZCIsInRocm93Iiwibm90IiwiaW1wbGljaXRXYWl0IiwiYXN5bmNTY3JpcHRUaW1lb3V0IiwiY2xpY2tDdXJyZW50Iiwic2V0TmV0d29ya0Nvbm5lY3Rpb24iXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3VuaXQvcHJvdG9jb2wvdmFsaWRhdG9yLnNwZWMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gdHJhbnNwaWxlOm1vY2hhXG5cbmltcG9ydCB7dmFsaWRhdG9yc30gZnJvbSAnLi4vLi4vLi4vbGliL3Byb3RvY29sL3ZhbGlkYXRvcnMnO1xuXG5kZXNjcmliZSgnUHJvdG9jb2wnLCBmdW5jdGlvbiAoKSB7XG4gIGRlc2NyaWJlKCdkaXJlY3QgdG8gZHJpdmVyJywgZnVuY3Rpb24gKCkge1xuICAgIGRlc2NyaWJlKCdzZXRVcmwnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBubyB1cmwgcGFzc2VkJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuc2V0VXJsKCk7XG4gICAgICAgIH0pLnNob3VsZC50aHJvdygvdXJsL2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBnaXZlbiBpbnZhbGlkIHVybCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnNldFVybCgnZm9vJyk7XG4gICAgICAgIH0pLnNob3VsZC50aHJvdygvdXJsL2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIHN1Y2NlZWQgd2hlbiBnaXZlbiB1cmwgc3RhcnRpbmcgd2l0aCBodHRwJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuc2V0VXJsKCdodHRwOi8vYXBwaXVtLmlvJyk7XG4gICAgICAgIH0pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCBzdWNjZWVkIHdoZW4gZ2l2ZW4gYW4gYW5kcm9pZC1saWtlIHNjaGVtZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnNldFVybCgnY29udGVudDovL2NvbnRhY3RzL3Blb3BsZS8xJyk7XG4gICAgICAgIH0pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgIH0pO1xuICAgICAgaXQoJ3Nob3VsZCBzdWNjZWVkIHdpdGggaHlwaGVucyBkb3RzIGFuZCBwbHVzIGNoYXJzIGluIHRoZSBzY2hlbWUnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7XG4gICAgICAgICAgdmFsaWRhdG9ycy5zZXRVcmwoJ215LWFwcC5hK2I6Ly9sb2dpbicpO1xuICAgICAgICB9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGFuIGFib3V0IHNjaGVtZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnNldFVybCgnYWJvdXQ6YmxhbmsnKTtcbiAgICAgICAgfSkuc2hvdWxkLm5vdC50aHJvdygpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIHN1Y2NlZWQgd2hlbiBnaXZlbiBhIGRhdGEgc2NoZW1lJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuc2V0VXJsKCdkYXRhOnRleHQvaHRtbCw8aHRtbD48L2h0bWw+Jyk7XG4gICAgICAgIH0pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGRlc2NyaWJlKCdpbXBsaWNpdFdhaXQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBnaXZlbiBubyBtcycsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLmltcGxpY2l0V2FpdCgpO1xuICAgICAgICB9KS5zaG91bGQudGhyb3coL21zL2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBnaXZlbiBhIG5vbi1udW1lcmljIG1zJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuaW1wbGljaXRXYWl0KCdmaXZlJyk7XG4gICAgICAgIH0pLnNob3VsZC50aHJvdygvbXMvaSk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgZmFpbCB3aGVuIGdpdmVuIGEgbmVnYXRpdmUgbXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7XG4gICAgICAgICAgdmFsaWRhdG9ycy5pbXBsaWNpdFdhaXQoLTEpO1xuICAgICAgICB9KS5zaG91bGQudGhyb3coL21zL2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIHN1Y2NlZWQgd2hlbiBnaXZlbiBhbiBtcyBvZiAwJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuaW1wbGljaXRXYWl0KDApO1xuICAgICAgICB9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGFuIG1zIGdyZWF0ZXIgdGhhbiAwJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuaW1wbGljaXRXYWl0KDEwMCk7XG4gICAgICAgIH0pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGRlc2NyaWJlKCdhc3luY1NjcmlwdFRpbWVvdXQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBnaXZlbiBubyBtcycsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLmFzeW5jU2NyaXB0VGltZW91dCgpO1xuICAgICAgICB9KS5zaG91bGQudGhyb3coL21zL2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBnaXZlbiBhIG5vbi1udW1lcmljIG1zJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuYXN5bmNTY3JpcHRUaW1lb3V0KCdmaXZlJyk7XG4gICAgICAgIH0pLnNob3VsZC50aHJvdygvbXMvaSk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgZmFpbCB3aGVuIGdpdmVuIGEgbmVnYXRpdmUgbXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7XG4gICAgICAgICAgdmFsaWRhdG9ycy5hc3luY1NjcmlwdFRpbWVvdXQoLTEpO1xuICAgICAgICB9KS5zaG91bGQudGhyb3coL21zL2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIHN1Y2NlZWQgd2hlbiBnaXZlbiBhbiBtcyBvZiAwJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuYXN5bmNTY3JpcHRUaW1lb3V0KDApO1xuICAgICAgICB9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGFuIG1zIGdyZWF0ZXIgdGhhbiAwJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuYXN5bmNTY3JpcHRUaW1lb3V0KDEwMCk7XG4gICAgICAgIH0pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGRlc2NyaWJlKCdjbGlja0N1cnJlbnQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBpdCgnc2hvdWxkIGZhaWwgd2hlbiBnaXZlbiBhbiBpbnZhbGlkIGJ1dHRvbicsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLmNsaWNrQ3VycmVudCg0KTtcbiAgICAgICAgfSkuc2hvdWxkLnRocm93KC8wLCAxLCBvciAyL2kpO1xuICAgICAgfSk7XG4gICAgICBpdCgnc2hvdWxkIHN1Y2NlZWQgd2hlbiBnaXZlbiBhIHZhbGlkIGJ1dHRvbicsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLmNsaWNrQ3VycmVudCgwKTtcbiAgICAgICAgfSkuc2hvdWxkLm5vdC50aHJvdygpO1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuY2xpY2tDdXJyZW50KDEpO1xuICAgICAgICB9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICAgICgoKSA9PiB7XG4gICAgICAgICAgdmFsaWRhdG9ycy5jbGlja0N1cnJlbnQoMik7XG4gICAgICAgIH0pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGRlc2NyaWJlKCdzZXROZXR3b3JrQ29ubmVjdGlvbicsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGl0KCdzaG91bGQgZmFpbCB3aGVuIGdpdmVuIG5vIHR5cGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICgoKSA9PiB7XG4gICAgICAgICAgdmFsaWRhdG9ycy5zZXROZXR3b3JrQ29ubmVjdGlvbigpO1xuICAgICAgICB9KS5zaG91bGQudGhyb3coLzAsIDEsIDIsIDQsIDYvaSk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgZmFpbCB3aGVuIGdpdmVuIGFuIGludmFsaWQgdHlwZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnNldE5ldHdvcmtDb25uZWN0aW9uKDgpO1xuICAgICAgICB9KS5zaG91bGQudGhyb3coLzAsIDEsIDIsIDQsIDYvaSk7XG4gICAgICB9KTtcbiAgICAgIGl0KCdzaG91bGQgc3VjY2VlZCB3aGVuIGdpdmVuIGEgdmFsaWQgdHlwZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnNldE5ldHdvcmtDb25uZWN0aW9uKDApO1xuICAgICAgICB9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICAgICgoKSA9PiB7XG4gICAgICAgICAgdmFsaWRhdG9ycy5zZXROZXR3b3JrQ29ubmVjdGlvbigxKTtcbiAgICAgICAgfSkuc2hvdWxkLm5vdC50aHJvdygpO1xuICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgIHZhbGlkYXRvcnMuc2V0TmV0d29ya0Nvbm5lY3Rpb24oMik7XG4gICAgICAgIH0pLnNob3VsZC5ub3QudGhyb3coKTtcbiAgICAgICAgKCgpID0+IHtcbiAgICAgICAgICB2YWxpZGF0b3JzLnNldE5ldHdvcmtDb25uZWN0aW9uKDQpO1xuICAgICAgICB9KS5zaG91bGQubm90LnRocm93KCk7XG4gICAgICAgICgoKSA9PiB7XG4gICAgICAgICAgdmFsaWRhdG9ycy5zZXROZXR3b3JrQ29ubmVjdGlvbig2KTtcbiAgICAgICAgfSkuc2hvdWxkLm5vdC50aHJvdygpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFFQTs7QUFFQUEsUUFBUSxDQUFDLFVBQUQsRUFBYSxZQUFZO0VBQy9CQSxRQUFRLENBQUMsa0JBQUQsRUFBcUIsWUFBWTtJQUN2Q0EsUUFBUSxDQUFDLFFBQUQsRUFBVyxZQUFZO01BQzdCQyxFQUFFLENBQUMsZ0NBQUQsRUFBbUMsWUFBWTtRQUMvQyxDQUFDLE1BQU07VUFDTEMsc0JBQUEsQ0FBV0MsTUFBWDtRQUNELENBRkQsRUFFR0MsTUFGSCxDQUVVQyxLQUZWLENBRWdCLE1BRmhCO01BR0QsQ0FKQyxDQUFGO01BS0FKLEVBQUUsQ0FBQyxvQ0FBRCxFQUF1QyxZQUFZO1FBQ25E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
|