@appium/base-driver 8.5.2 → 8.5.3
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.js +1 -1
- package/build/lib/basedriver/commands/event.js +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.js +1 -1
- package/build/lib/basedriver/commands/session.js +1 -1
- package/build/lib/basedriver/commands/settings.js +1 -1
- package/build/lib/basedriver/commands/timeout.js +1 -1
- package/build/lib/basedriver/core.js +1 -1
- package/build/lib/basedriver/desired-caps.js +1 -1
- package/build/lib/basedriver/device-settings.js +1 -1
- package/build/lib/basedriver/driver.js +1 -1
- package/build/lib/basedriver/helpers.js +1 -1
- package/build/lib/basedriver/logger.js +1 -1
- package/build/lib/constants.js +1 -1
- package/build/lib/express/crash.js +1 -1
- package/build/lib/express/express-logging.js +1 -1
- package/build/lib/express/idempotency.js +1 -1
- package/build/lib/express/logger.js +1 -1
- package/build/lib/express/middleware.js +1 -1
- package/build/lib/express/server.js +1 -1
- package/build/lib/express/static.js +1 -1
- package/build/lib/express/websocket.js +1 -1
- package/build/lib/helpers/capabilities.js +1 -1
- package/build/lib/index.js +1 -1
- package/build/lib/jsonwp-proxy/protocol-converter.js +1 -1
- package/build/lib/jsonwp-proxy/proxy.js +1 -1
- package/build/lib/jsonwp-status/status.js +1 -1
- package/build/lib/protocol/errors.js +1 -1
- package/build/lib/protocol/helpers.js +1 -1
- package/build/lib/protocol/index.js +1 -1
- package/build/lib/protocol/protocol.js +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 +1 -1
- package/build/test/helpers.js +1 -1
- package/build/test/unit/basedriver/capabilities.spec.js +1 -1
- package/build/test/unit/basedriver/capability.spec.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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/package.json +5 -8
|
@@ -234,4 +234,4 @@ function normalizeBasePath(basePath) {
|
|
|
234
234
|
|
|
235
235
|
return basePath;
|
|
236
236
|
}
|
|
237
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9leHByZXNzL3NlcnZlci5qcyJdLCJuYW1lcyI6WyJLRUVQX0FMSVZFX1RJTUVPVVRfTVMiLCJzZXJ2ZXIiLCJvcHRzIiwicm91dGVDb25maWd1cmluZ0Z1bmN0aW9uIiwicG9ydCIsImhvc3RuYW1lIiwiYWxsb3dDb3JzIiwiYmFzZVBhdGgiLCJERUZBVUxUX0JBU0VfUEFUSCIsImV4dHJhTWV0aG9kTWFwIiwic2VydmVyVXBkYXRlcnMiLCJrZWVwQWxpdmVUaW1lb3V0IiwiYXBwIiwiaHR0cFNlcnZlciIsImh0dHAiLCJjcmVhdGVTZXJ2ZXIiLCJCIiwicmVzb2x2ZSIsInJlamVjdCIsImNvbmZpZ3VyZUh0dHAiLCJjb25maWd1cmVTZXJ2ZXIiLCJhZGRSb3V0ZXMiLCJ1cGRhdGVyIiwiYWxsIiwiY2F0Y2g0MDRIYW5kbGVyIiwic3RhcnRTZXJ2ZXIiLCJlcnIiLCJub3JtYWxpemVCYXNlUGF0aCIsInVzZSIsImVuZExvZ0Zvcm1hdHRlciIsInBhdGgiLCJTVEFUSUNfRElSIiwiZXhwcmVzcyIsInN0YXRpYyIsInByb2R1Y2VFcnJvciIsInByb2R1Y2VDcmFzaCIsImFsbG93Q3Jvc3NEb21haW4iLCJoYW5kbGVJZGVtcG90ZW5jeSIsImRlZmF1bHRUb0pTT05Db250ZW50VHlwZSIsImJvZHlQYXJzZXIiLCJ1cmxlbmNvZGVkIiwiZXh0ZW5kZWQiLCJjYXRjaEFsbEhhbmRsZXIiLCJqc29uIiwibGltaXQiLCJzdGFydExvZ0Zvcm1hdHRlciIsIndlbGNvbWUiLCJndWluZWFQaWciLCJndWluZWFQaWdTY3JvbGxhYmxlIiwiZ3VpbmVhUGlnQXBwQmFubmVyIiwic2VydmVyU3RhdGUiLCJub3RpZmllciIsIkV2ZW50RW1pdHRlciIsImNsb3NlZCIsImFkZFdlYlNvY2tldEhhbmRsZXIiLCJyZW1vdmVXZWJTb2NrZXRIYW5kbGVyIiwicmVtb3ZlQWxsV2ViU29ja2V0SGFuZGxlcnMiLCJnZXRXZWJTb2NrZXRIYW5kbGVycyIsImNsb3NlIiwiYmluZCIsImVtaXQiLCJsb2ciLCJpbmZvIiwib24iLCJjb2RlIiwiZXJyb3IiLCJzb2NrZXQiLCJzZXRUaW1lb3V0IiwiZGVzdHJveSIsIl9vcGVuUmVxQ291bnQiLCJvbmNlIiwicmVtb3ZlTGlzdGVuZXIiLCJyZXEiLCJyZXMiLCJjb25uZWN0aW9uIiwic2VydmVyQXJncyIsInB1c2giLCJzdGFydFByb21pc2UiLCJwcm9taXNpZnkiLCJsaXN0ZW4iLCJjb250ZXh0IiwiaGVhZGVyc1RpbWVvdXQiLCJfIiwiaXNTdHJpbmciLCJFcnJvciIsInJlcGxhY2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFLQTs7QUFDQTs7QUFDQTs7QUFJQTs7QUFDQTs7QUFDQTs7QUFHQSxNQUFNQSxxQkFBcUIsR0FBRyxLQUFLLEVBQUwsR0FBVSxJQUF4Qzs7QUFHQSxlQUFlQyxNQUFmLENBQXVCQyxJQUFJLEdBQUcsRUFBOUIsRUFBa0M7QUFDaEMsUUFBTTtBQUNKQyxJQUFBQSx3QkFESTtBQUVKQyxJQUFBQSxJQUZJO0FBR0pDLElBQUFBLFFBQVEsR0FBRyxJQUhQO0FBSUpDLElBQUFBLFNBQVMsR0FBRyxJQUpSO0FBS0pDLElBQUFBLFFBQVEsR0FBR0MsNEJBTFA7QUFNSkMsSUFBQUEsY0FBYyxHQUFHLEVBTmI7QUFPSkMsSUFBQUEsY0FBYyxHQUFHLEVBUGI7QUFRSkMsSUFBQUEsZ0JBQWdCLEdBQUdYO0FBUmYsTUFTRkUsSUFUSjtBQVlBLFFBQU1VLEdBQUcsR0FBRyx1QkFBWjs7QUFDQSxRQUFNQyxVQUFVLEdBQUdDLGNBQUtDLFlBQUwsQ0FBa0JILEdBQWxCLENBQW5COztBQUNBLFNBQU8sTUFBTSxJQUFJSSxpQkFBSixDQUFNLE9BQU9DLE9BQVAsRUFBZ0JDLE1BQWhCLEtBQTJCO0FBTTVDLFFBQUk7QUFDRkMsTUFBQUEsYUFBYSxDQUFDO0FBQUNOLFFBQUFBLFVBQUQ7QUFBYUssUUFB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QVcsdUJBQXNCN0UsUUFBUyxFQUExQyxDQUFOO0FBQ0Q7O0FBSURBLEVBQUFBLFFBQVEsR0FBR0EsUUFBUSxDQUFDOEUsT0FBVCxDQUFpQixLQUFqQixFQUF3QixFQUF4QixDQUFYOztBQUlBLE1BQUk5RSxRQUFRLEtBQUssRUFBYixJQUFtQkEsUUFBUSxDQUFDLENBQUQsQ0FBUixLQUFnQixHQUF2QyxFQUE0QztBQUMxQ0EsSUFBQUEsUUFBUSxHQUFJLElBQUdBLFFBQVMsRUFBeEI7QUFDRDs7QUFFRCxTQUFPQSxRQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgZXhwcmVzcyBmcm9tICdleHByZXNzJztcbmltcG9ydCBodHRwIGZyb20gJ2h0dHAnO1xuaW1wb3J0IGZhdmljb24gZnJvbSAnc2VydmUtZmF2aWNvbic7XG5pbXBvcnQgYm9keVBhcnNlciBmcm9tICdib2R5LXBhcnNlcic7XG5pbXBvcnQgbWV0aG9kT3ZlcnJpZGUgZnJvbSAnbWV0aG9kLW92ZXJyaWRlJztcbmltcG9ydCBsb2cgZnJvbSAnLi9sb2dnZXInO1xuaW1wb3J0IHsgc3RhcnRMb2dGb3JtYXR0ZXIsIGVuZExvZ0Zvcm1hdHRlciB9IGZyb20gJy4vZXhwcmVzcy1sb2dnaW5nJztcbmltcG9ydCB7XG4gIGFsbG93Q3Jvc3NEb21haW4sIGZpeFB5dGhvbkNvbnRlbnRUeXBlLCBkZWZhdWx0VG9KU09OQ29udGVudFR5cGUsXG4gIGNhdGNoQWxsSGFuZGxlciwgYWxsb3dDcm9zc0RvbWFpbkFzeW5jRXhlY3V0ZSwgaGFuZGxlSWRlbXBvdGVuY3ksXG4gIGNhdGNoNDA0SGFuZGxlcixcbn0gZnJvbSAnLi9taWRkbGV3YXJlJztcbmltcG9ydCB7IGd1aW5lYVBpZywgZ3VpbmVhUGlnU2Nyb2xsYWJsZSwgZ3VpbmVhUGlnQXBwQmFubmVyLCB3ZWxjb21lLCBTVEFUSUNfRElSIH0gZnJvbSAnLi9zdGF0aWMnO1xuaW1wb3J0IHsgcHJvZHVjZUVycm9yLCBwcm9kdWNlQ3Jhc2ggfSBmcm9tICcuL2NyYXNoJztcbmltcG9ydCB7XG4gIGFkZFdlYlNvY2tldEhhbmRsZXIsIHJlbW92ZVdlYlNvY2tldEhhbmRsZXIsIHJlbW92ZUFsbFdlYlNvY2tldEhhbmRsZXJzLFxuICBnZXRXZWJTb2NrZXRIYW5kbGVyc1xufSBmcm9tICcuL3dlYnNvY2tldCc7XG5pbXBvcnQgQiBmcm9tICdibHVlYmlyZCc7XG5pbXBvcnQgeyBERUZBVUxUX0JBU0VfUEFUSCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdldmVudHMnO1xuXG5cbmNvbnN0IEtFRVBfQUxJVkVfVElNRU9VVF9NUyA9IDEwICogNjAgKiAxMDAwOyAvLyAxMCBtaW51dGVzXG5cblxuYXN5bmMgZnVuY3Rpb24gc2VydmVyIChvcHRzID0ge30pIHtcbiAgY29uc3Qge1xuICAgIHJvdXRlQ29uZmlndXJpbmdGdW5jdGlvbixcbiAgICBwb3J0LFxuICAgIGhvc3RuYW1lID0gbnVsbCxcbiAgICBhbGxvd0NvcnMgPSB0cnVlLFxuICAgIGJhc2VQYXRoID0gREVGQVVMVF9CQVNFX1BBVEgsXG4gICAgZXh0cmFNZXRob2RNYXAgPSB7fSxcbiAgICBzZXJ2ZXJVcGRhdGVycyA9IFtdLFxuICAgIGtlZXBBbGl2ZVRpbWVvdXQgPSBLRUVQX0FMSVZFX1RJTUVPVVRfTVMsXG4gIH0gPSBvcHRzO1xuXG4gIC8vIGNyZWF0ZSB0aGUgYWN0dWFsIGh0dHAgc2VydmVyXG4gIGNvbnN0IGFwcCA9IGV4cHJlc3MoKTtcbiAgY29uc3QgaHR0cFNlcnZlciA9IGh0dHAuY3JlYXRlU2VydmVyKGFwcCk7XG4gIHJldHVybiBhd2FpdCBuZXcgQihhc3luYyAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgLy8gd2UgcHV0IGFuIGFzeW5jIGZ1bmN0aW9uIGFzIHRoZSBwcm9taXNlIGNvbnN0cnVjdG9yIGJlY2F1c2Ugd2Ugd2FudCBzb21lIHRoaW5ncyB0byBoYXBwZW4gaW5cbiAgICAvLyBzZXJpYWwgKGFwcGxpY2F0aW9uIG9mIHBsdWdpbiB1cGRhdGVzLCBmb3IgZXhhbXBsZSkuIEJ1dCB3ZSBzdGlsbCBuZWVkIHRvIHVzZSBhIHByb21pc2UgaGVyZVxuICAgIC8vIGJlY2F1c2Ugc29tZSBlbGVtZW50cyBvZiBzZXJ2ZXIgc3RhcnQgZmFpbHVyZSBvbmx5IGhhcHBlbiBpbiBodHRwU2VydmVyIGxpc3RlbmVycy4gU28gdGhlXG4gICAgLy8gd2F5IHdlIHJlc29sdmUgaXQgaXMgdG8gdXNlIGFuIGFzeW5jIGZ1bmN0aW9uIGhlcmUgYnV0IHRvIHdyYXAgYWxsIHRoZSBpbm5lciBsb2dpYyBpblxuICAgIC8vIHRyeS9jYXRjaCBzbyBhbnkgZXJyb3JzIGNhbiBiZSBwYXNzZWQgdG8gcmVqZWN0LlxuICAgIHRyeSB7XG4gICAgICBjb25maWd1cmVIdHRwKHtodHRwU2VydmVyLCByZWplY3QsIGtlZXBBbGl2ZVRpbWVvdXR9KTtcbiAgICAgIGNvbmZpZ3VyZVNlcnZlcih7YXBwLCBhZGRSb3V0ZXM6IHJvdXRlQ29uZmlndXJpbmdGdW5jdGlvbiwgYWxsb3dDb3JzLCBiYXNlUGF0aCwgZXh0cmFNZXRob2RNYXB9KTtcbiAgICAgIC8vIGFsbG93IGV4dGVuc2lvbnMgdG8gdXBkYXRlIHRoZSBhcHAgYW5kIGh0dHAgc2VydmVyIG9iamVjdHNcbiAgICAgIGZvciAoY29uc3QgdXBkYXRlciBvZiBzZXJ2ZXJVcGRhdGVycykge1xuICAgICAgICBhd2FpdCB1cGRhdGVyKGFwcCwgaHR0cFNlcnZlcik7XG4gICAgICB9XG5cbiAgICAgIC8vIG9uY2UgYWxsIGNvbmZpZ3VyYXRpb25zIGFuZCB1cGRhdGVycyBoYXZlIGJlZW4gYXBwbGllZCwgbWFrZSBzdXJlIHRvIHNldCB1cCBhIGNhdGNoYWxsXG4gICAgICAvLyBoYW5kbGVyIHNvIHRoYXQgYW55dGhpbmcgdW5rbm93biA0MDRzLiBCdXQgZG8gdGhpcyBhZnRlciBldmVyeXRoaW5nIGVsc2Ugc2luY2Ugd2UgZG9uJ3RcbiAgICAgIC8vIHdhbnQgdG8gYmxvY2sgZXh0ZW5zaW9ucycgYWJpbGl0eSB0byBhZGQgcm91dGVzIGlmIHRoZXkgd2FudC5cbiAgICAgIGFwcC5hbGwoJyonLCBjYXRjaDQwNEhhbmRsZXIpO1xuXG4gICAgICBhd2FpdCBzdGFydFNlcnZlcih7aHR0cFNlcnZlciwgaG9zdG5hbWUsIHBvcnQsIGtlZXBBbGl2ZVRpbWVvdXR9KTtcbiAgICAgIHJlc29sdmUoaHR0cFNlcnZlcik7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZWplY3QoZXJyKTtcbiAgICB9XG4gIH0pO1xuXG59XG5cbmZ1bmN0aW9uIGNvbmZpZ3VyZVNlcnZlciAoe1xuICBhcHAsXG4gIGFkZFJvdXRlcyxcbiAgYWxsb3dDb3JzID0gdHJ1ZSxcbiAgYmFzZVBhdGggPSBERUZBVUxUX0JBU0VfUEFUSCxcbiAgZXh0cmFNZXRob2RNYXAgPSB7fSxcbn0pIHtcbiAgYmFzZVBhdGggPSBub3JtYWxpemVCYXNlUGF0aChiYXNlUGF0aCk7XG5cbiAgYXBwLnVzZShlbmRMb2dGb3JtYXR0ZXIpO1xuXG4gIC8vIHNldCB1cCBzdGF0aWMgYXNzZXRzXG4gIGFwcC51c2UoZmF2aWNvbihwYXRoLnJlc29sdmUoU1RBVElDX0RJUiwgJ2Zhdmljb24uaWNvJykpKTtcbiAgYXBwLnVzZShleHByZXNzLnN0YXRpYyhTVEFUSUNfRElSKSk7XG5cbiAgLy8gY3Jhc2ggcm91dGVzLCBmb3IgdGVzdGluZ1xuICBhcHAudXNlKGAke2Jhc2VQYXRofS9wcm9kdWNlX2Vycm9yYCwgcHJvZHVjZUVycm9yKTtcbiAgYXBwLnVzZShgJHtiYXNlUGF0aH0vY3Jhc2hgLCBwcm9kdWNlQ3Jhc2gpO1xuXG4gIC8vIGFkZCBtaWRkbGV3YXJlc1xuICBpZiAoYWxsb3dDb3JzKSB7XG4gICAgYXBwLnVzZShhbGxvd0Nyb3NzRG9tYWluKTtcbiAgfSBlbHNlIHtcbiAgICBhcHAudXNlKGFsbG93Q3Jvc3NEb21haW5Bc3luY0V4ZWN1dGUoYmFzZVBhdGgpKTtcbiAgfVxuICBhcHAudXNlKGhhbmRsZUlkZW1wb3RlbmN5KTtcbiAgYXBwLnVzZShmaXhQeXRob25Db250ZW50VHlwZShiYXNlUGF0aCkpO1xuICBhcHAudXNlKGRlZmF1bHRUb0pTT05Db250ZW50VHlwZSk7XG4gIGFwcC51c2UoYm9keVBhcnNlci51cmxlbmNvZGVkKHtleHRlbmRlZDogdHJ1ZX0pKTtcbiAgYXBwLnVzZShtZXRob2RPdmVycmlkZSgpKTtcbiAgYXBwLnVzZShjYXRjaEFsbEhhbmRsZXIpO1xuXG4gIC8vIG1ha2Ugc3VyZSBhcHBpdW0gbmV2ZXIgZmFpbHMgYmVjYXVzZSBvZiBhIGZpbGUgc2l6ZSB1cGxvYWQgbGltaXRcbiAgYXBwLnVzZShib2R5UGFyc2VyLmpzb24oe2xpbWl0OiAnMWdiJ30pKTtcblxuICAvLyBzZXQgdXAgc3RhcnQgbG9nZ2luZyAod2hpY2ggZGVwZW5kcyBvbiBib2R5UGFyc2VyIGRvaW5nIGl0cyB0aGluZylcbiAgYXBwLnVzZShzdGFydExvZ0Zvcm1hdHRlcik7XG5cbiAgYWRkUm91dGVzKGFwcCwge2Jhc2VQYXRoLCBleHRyYU1ldGhvZE1hcH0pO1xuXG4gIC8vIGR5bmFtaWMgcm91dGVzIGZvciB0ZXN0aW5nLCBldGMuXG4gIGFwcC5hbGwoJy93ZWxjb21lJywgd2VsY29tZSk7XG4gIGFwcC5hbGwoJy90ZXN0L2d1aW5lYS1waWcnLCBndWluZWFQaWcpO1xuICBhcHAuYWxsKCcvdGVzdC9ndWluZWEtcGlnLXNjcm9sbGFibGUnLCBndWluZWFQaWdTY3JvbGxhYmxlKTtcbiAgYXBwLmFsbCgnL3Rlc3QvZ3VpbmVhLXBpZy1hcHAtYmFubmVyJywgZ3VpbmVhUGlnQXBwQmFubmVyKTtcbn1cblxuZnVuY3Rpb24gY29uZmlndXJlSHR0cCAoe2h0dHBTZXJ2ZXIsIHJlamVjdCwga2VlcEFsaXZlVGltZW91dH0pIHtcbiAgY29uc3Qgc2VydmVyU3RhdGUgPSB7XG4gICAgbm90aWZpZXI6IG5ldyBFdmVudEVtaXR0ZXIoKSxcbiAgICBjbG9zZWQ6IGZhbHNlLFxuICB9O1xuICBodHRwU2VydmVyLmFkZFdlYlNvY2tldEhhbmRsZXIgPSBhZGRXZWJTb2NrZXRIYW5kbGVyO1xuICBodHRwU2VydmVyLnJlbW92ZVdlYlNvY2tldEhhbmRsZXIgPSByZW1vdmVXZWJTb2NrZXRIYW5kbGVyO1xuICBodHRwU2VydmVyLnJlbW92ZUFsbFdlYlNvY2tldEhhbmRsZXJzID0gcmVtb3ZlQWxsV2ViU29ja2V0SGFuZGxlcnM7XG4gIGh0dHBTZXJ2ZXIuZ2V0V2ViU29ja2V0SGFuZGxlcnMgPSBnZXRXZWJTb2NrZXRIYW5kbGVycztcblxuICAvLyBodHRwLlNlcnZlci5jbG9zZSgpIG9ubHkgc3RvcHMgbmV3IGNvbm5lY3Rpb25zLCBidXQgd2UgbmVlZCB0byB3YWl0IHVudGlsXG4gIC8vIGFsbCBjb25uZWN0aW9ucyBhcmUgY2xvc2VkIGFuZCB0aGUgYGNsb3NlYCBldmVudCBpcyBlbWl0dGVkXG4gIGNvbnN0IGNsb3NlID0gaHR0cFNlcnZlci5jbG9zZS5iaW5kKGh0dHBTZXJ2ZXIpO1xuICBodHRwU2VydmVyLmNsb3NlID0gYXN5bmMgKCkgPT4gYXdhaXQgbmV3IEIoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvbm9kZS12MC54LWFyY2hpdmUvaXNzdWVzLzkwNjYjaXNzdWVjb21tZW50LTEyNDIxMDU3NlxuICAgIHNlcnZlclN0YXRlLmNsb3NlZCA9IHRydWU7XG4gICAgc2VydmVyU3RhdGUubm90aWZpZXIuZW1pdCgnc2h1dGRvd24nKTtcbiAgICBsb2cuaW5mbygnV2FpdGluZyB1bnRpbCB0aGUgc2VydmVyIGlzIGNsb3NlZCcpO1xuICAgIGh0dHBTZXJ2ZXIub24oJ2Nsb3NlJywgKCkgPT4ge1xuICAgICAgbG9nLmluZm8oJ1JlY2VpdmVkIHNlcnZlciBjbG9zZSBldmVudCcpO1xuICAgICAgcmVzb2x2ZSgpO1xuICAgIH0pO1xuICAgIGNsb3NlKChlcnIpID0+IHtcbiAgICAgIGlmIChlcnIpIHJlamVjdChlcnIpOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIGN1cmx5XG4gICAgfSk7XG4gIH0pO1xuXG4gIGh0dHBTZXJ2ZXIub24oJ2Vycm9yJywgKGVycikgPT4ge1xuICAgIGlmIChlcnIuY29kZSA9PT0gJ0VBRERSTk9UQVZBSUwnKSB7XG4gICAgICBsb2cuZXJyb3IoJ0NvdWxkIG5vdCBzdGFydCBSRVNUIGh0dHAgaW50ZXJmYWNlIGxpc3RlbmVyLiAnICtcbiAgICAgICAgICAgICAgICAnUmVxdWVzdGVkIGFkZHJlc3MgaXMgbm90IGF2YWlsYWJsZS4nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9nLmVycm9yKCdDb3VsZCBub3Qgc3RhcnQgUkVTVCBodHRwIGludGVyZmFjZSBsaXN0ZW5lci4gVGhlIHJlcXVlc3RlZCAnICtcbiAgICAgICAgICAgICAgICAncG9ydCBtYXkgYWxyZWFkeSBiZSBpbiB1c2UuIFBsZWFzZSBtYWtlIHN1cmUgdGhlcmUgaXMgbm8gJyArXG4gICAgICAgICAgICAgICAgJ290aGVyIGluc3RhbmNlIG9mIHRoaXMgc2VydmVyIHJ1bm5pbmcgYWxyZWFkeS4nKTtcbiAgICB9XG4gICAgcmVqZWN0KGVycik7XG4gIH0pO1xuXG4gIGh0dHBTZXJ2ZXIub24oJ2Nvbm5lY3Rpb24nLCAoc29ja2V0KSA9PiB7XG4gICAgc29ja2V0LnNldFRpbWVvdXQoa2VlcEFsaXZlVGltZW91dCk7XG4gICAgc29ja2V0Lm9uKCdlcnJvcicsIHJlamVjdCk7XG5cbiAgICBmdW5jdGlvbiBkZXN0cm95ICgpIHtcbiAgICAgIHNvY2tldC5kZXN0cm95KCk7XG4gICAgfVxuICAgIHNvY2tldC5fb3BlblJlcUNvdW50ID0gMDtcbiAgICBzb2NrZXQub25jZSgnY2xvc2UnLCAoKSA9PiBzZXJ2ZXJTdGF0ZS5ub3RpZmllci5yZW1vdmVMaXN0ZW5lcignc2h1dGRvd24nLCBkZXN0cm95KSk7XG4gICAgc2VydmVyU3RhdGUubm90aWZpZXIub25jZSgnc2h1dGRvd24nLCBkZXN0cm95KTtcbiAgfSk7XG5cbiAgaHR0cFNlcnZlci5vbigncmVxdWVzdCcsIGZ1bmN0aW9uIChyZXEsIHJlcykge1xuICAgIGNvbnN0IHNvY2tldCA9IHJlcS5jb25uZWN0aW9uIHx8IHJlcS5zb2NrZXQ7XG4gICAgc29ja2V0Ll9vcGVuUmVxQ291bnQrKztcbiAgICByZXMub24oJ2ZpbmlzaCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIHNvY2tldC5fb3BlblJlcUNvdW50LS07XG4gICAgICBpZiAoc2VydmVyU3RhdGUuY2xvc2VkICYmIHNvY2tldC5fb3BlblJlcUNvdW50ID09PSAwKSB7XG4gICAgICAgIHNvY2tldC5kZXN0cm95KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufVxuXG5hc3luYyBmdW5jdGlvbiBzdGFydFNlcnZlciAoe2h0dHBTZXJ2ZXIsIHBvcnQsIGhvc3RuYW1lLCBrZWVwQWxpdmVUaW1lb3V0fSkge1xuICBjb25zdCBzZXJ2ZXJBcmdzID0gW3BvcnRdO1xuICBpZiAoaG9zdG5hbWUpIHtcbiAgICAvLyBJZiB0aGUgaG9zdG5hbWUgaXMgb21pdHRlZCwgdGhlIHNlcnZlciB3aWxsIGFjY2VwdFxuICAgIC8vIGNvbm5lY3Rpb25zIG9uIGFueSBJUCBhZGRyZXNzXG4gICAgc2VydmVyQXJncy5wdXNoKGhvc3RuYW1lKTtcbiAgfVxuICBjb25zdCBzdGFydFByb21pc2UgPSBCLnByb21pc2lmeShodHRwU2VydmVyLmxpc3Rlbiwge2NvbnRleHQ6IGh0dHBTZXJ2ZXJ9KSguLi5zZXJ2ZXJBcmdzKTtcbiAgaHR0cFNlcnZlci5rZWVwQWxpdmVUaW1lb3V0ID0ga2VlcEFsaXZlVGltZW91dDtcbiAgLy8gaGVhZGVycyB0aW1lb3V0IG11c3QgYmUgZ3JlYXRlciB0aGFuIGtlZXBBbGl2ZVRpbWVvdXRcbiAgaHR0cFNlcnZlci5oZWFkZXJzVGltZW91dCA9IGtlZXBBbGl2ZVRpbWVvdXQgKyA1ICogMTAwMDtcbiAgYXdhaXQgc3RhcnRQcm9taXNlO1xufVxuXG5mdW5jdGlvbiBub3JtYWxpemVCYXNlUGF0aCAoYmFzZVBhdGgpIHtcbiAgaWYgKCFfLmlzU3RyaW5nKGJhc2VQYXRoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBwYXRoIHByZWZpeCAke2Jhc2VQYXRofWApO1xuICB9XG5cbiAgLy8gZW5zdXJlIHRoZSBwYXRoIHByZWZpeCBkb2VzIG5vdCBlbmQgaW4gJy8nLCBzaW5jZSBvdXIgbWV0aG9kIG1hcFxuICAvLyBzdGFydHMgYWxsIHBhdGhzIHdpdGggJy8nXG4gIGJhc2VQYXRoID0gYmFzZVBhdGgucmVwbGFjZSgvXFwvJC8sICcnKTtcblxuICAvLyBsaWtld2lzZSwgZW5zdXJlIHRoZSBwYXRoIHByZWZpeCBkb2VzIGFsd2F5cyBTVEFSVCB3aXRoIC8sIHVubGVzcyB0aGUgcGF0aFxuICAvLyBpcyBlbXB0eSBtZWFuaW5nIG5vIGJhc2UgcGF0aCBhdCBhbGxcbiAgaWYgKGJhc2VQYXRoICE9PSAnJyAmJiBiYXNlUGF0aFswXSAhPT0gJy8nKSB7XG4gICAgYmFzZVBhdGggPSBgLyR7YmFzZVBhdGh9YDtcbiAgfVxuXG4gIHJldHVybiBiYXNlUGF0aDtcbn1cblxuZXhwb3J0IHsgc2VydmVyLCBjb25maWd1cmVTZXJ2ZXIsIG5vcm1hbGl6ZUJhc2VQYXRoIH07XG4iXX0=
|
|
237
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJLRUVQX0FMSVZFX1RJTUVPVVRfTVMiLCJzZXJ2ZXIiLCJvcHRzIiwicm91dGVDb25maWd1cmluZ0Z1bmN0aW9uIiwicG9ydCIsImhvc3RuYW1lIiwiYWxsb3dDb3JzIiwiYmFzZVBhdGgiLCJERUZBVUxUX0JBU0VfUEFUSCIsImV4dHJhTWV0aG9kTWFwIiwic2VydmVyVXBkYXRlcnMiLCJrZWVwQWxpdmVUaW1lb3V0IiwiYXBwIiwiaHR0cFNlcnZlciIsImh0dHAiLCJjcmVhdGVTZXJ2ZXIiLCJCIiwicmVzb2x2ZSIsInJlamVjdCIsImNvbmZpZ3VyZUh0dHAiLCJjb25maWd1cmVTZXJ2ZXIiLCJhZGRSb3V0ZXMiLCJ1cGRhdGVyIiwiYWxsIiwiY2F0Y2g0MDRIYW5kbGVyIiwic3RhcnRTZXJ2ZXIiLCJlcnIiLCJub3JtYWxpemVCYXNlUGF0aCIsInVzZSIsImVuZExvZ0Zvcm1hdHRlciIsInBhdGgiLCJTVEFUSUNfRElSIiwiZXhwcmVzcyIsInN0YXRpYyIsInByb2R1Y2VFcnJvciIsInByb2R1Y2VDcmFzaCIsImFsbG93Q3Jvc3NEb21haW4iLCJoYW5kbGVJZGVtcG90ZW5jeSIsImRlZmF1bHRUb0pTT05Db250ZW50VHlwZSIsImJvZHlQYXJzZXIiLCJ1cmxlbmNvZGVkIiwiZXh0ZW5kZWQiLCJjYXRjaEFsbEhhbmRsZXIiLCJqc29uIiwibGltaXQiLCJzdGFydExvZ0Zvcm1hdHRlciIsIndlbGNvbWUiLCJndWluZWFQaWciLCJndWluZWFQaWdTY3JvbGxhYmxlIiwiZ3VpbmVhUGlnQXBwQmFubmVyIiwic2VydmVyU3RhdGUiLCJub3RpZmllciIsIkV2ZW50RW1pdHRlciIsImNsb3NlZCIsImFkZFdlYlNvY2tldEhhbmRsZXIiLCJyZW1vdmVXZWJTb2NrZXRIYW5kbGVyIiwicmVtb3ZlQWxsV2ViU29ja2V0SGFuZGxlcnMiLCJnZXRXZWJTb2NrZXRIYW5kbGVycyIsImNsb3NlIiwiYmluZCIsImVtaXQiLCJsb2ciLCJpbmZvIiwib24iLCJjb2RlIiwiZXJyb3IiLCJzb2NrZXQiLCJzZXRUaW1lb3V0IiwiZGVzdHJveSIsIl9vcGVuUmVxQ291bnQiLCJvbmNlIiwicmVtb3ZlTGlzdGVuZXIiLCJyZXEiLCJyZXMiLCJjb25uZWN0aW9uIiwic2VydmVyQXJncyIsInB1c2giLCJzdGFydFByb21pc2UiLCJwcm9taXNpZnkiLCJsaXN0ZW4iLCJjb250ZXh0IiwiaGVhZGVyc1RpbWVvdXQiLCJfIiwiaXNTdHJpbmciLCJFcnJvciIsInJlcGxhY2UiXSwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZXhwcmVzcy9zZXJ2ZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IGV4cHJlc3MgZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgaHR0cCBmcm9tICdodHRwJztcbmltcG9ydCBmYXZpY29uIGZyb20gJ3NlcnZlLWZhdmljb24nO1xuaW1wb3J0IGJvZHlQYXJzZXIgZnJvbSAnYm9keS1wYXJzZXInO1xuaW1wb3J0IG1ldGhvZE92ZXJyaWRlIGZyb20gJ21ldGhvZC1vdmVycmlkZSc7XG5pbXBvcnQgbG9nIGZyb20gJy4vbG9nZ2VyJztcbmltcG9ydCB7IHN0YXJ0TG9nRm9ybWF0dGVyLCBlbmRMb2dGb3JtYXR0ZXIgfSBmcm9tICcuL2V4cHJlc3MtbG9nZ2luZyc7XG5pbXBvcnQge1xuICBhbGxvd0Nyb3NzRG9tYWluLCBmaXhQeXRob25Db250ZW50VHlwZSwgZGVmYXVsdFRvSlNPTkNvbnRlbnRUeXBlLFxuICBjYXRjaEFsbEhhbmRsZXIsIGFsbG93Q3Jvc3NEb21haW5Bc3luY0V4ZWN1dGUsIGhhbmRsZUlkZW1wb3RlbmN5LFxuICBjYXRjaDQwNEhhbmRsZXIsXG59IGZyb20gJy4vbWlkZGxld2FyZSc7XG5pbXBvcnQgeyBndWluZWFQaWcsIGd1aW5lYVBpZ1Njcm9sbGFibGUsIGd1aW5lYVBpZ0FwcEJhbm5lciwgd2VsY29tZSwgU1RBVElDX0RJUiB9IGZyb20gJy4vc3RhdGljJztcbmltcG9ydCB7IHByb2R1Y2VFcnJvciwgcHJvZHVjZUNyYXNoIH0gZnJvbSAnLi9jcmFzaCc7XG5pbXBvcnQge1xuICBhZGRXZWJTb2NrZXRIYW5kbGVyLCByZW1vdmVXZWJTb2NrZXRIYW5kbGVyLCByZW1vdmVBbGxXZWJTb2NrZXRIYW5kbGVycyxcbiAgZ2V0V2ViU29ja2V0SGFuZGxlcnNcbn0gZnJvbSAnLi93ZWJzb2NrZXQnO1xuaW1wb3J0IEIgZnJvbSAnYmx1ZWJpcmQnO1xuaW1wb3J0IHsgREVGQVVMVF9CQVNFX1BBVEggfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnZXZlbnRzJztcblxuXG5jb25zdCBLRUVQX0FMSVZFX1RJTUVPVVRfTVMgPSAxMCAqIDYwICogMTAwMDsgLy8gMTAgbWludXRlc1xuXG5cbmFzeW5jIGZ1bmN0aW9uIHNlcnZlciAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtcbiAgICByb3V0ZUNvbmZpZ3VyaW5nRnVuY3Rpb24sXG4gICAgcG9ydCxcbiAgICBob3N0bmFtZSA9IG51bGwsXG4gICAgYWxsb3dDb3JzID0gdHJ1ZSxcbiAgICBiYXNlUGF0aCA9IERFRkFVTFRfQkFTRV9QQVRILFxuICAgIGV4dHJhTWV0aG9kTWFwID0ge30sXG4gICAgc2VydmVyVXBkYXRlcnMgPSBbXSxcbiAgICBrZWVwQWxpdmVUaW1lb3V0ID0gS0VFUF9BTElWRV9USU1FT1VUX01TLFxuICB9ID0gb3B0cztcblxuICAvLyBjcmVhdGUgdGhlIGFjdHVhbCBodHRwIHNlcnZlclxuICBjb25zdCBhcHAgPSBleHByZXNzKCk7XG4gIGNvbnN0IGh0dHBTZXJ2ZXIgPSBodHRwLmNyZWF0ZVNlcnZlcihhcHApO1xuICByZXR1cm4gYXdhaXQgbmV3IEIoYXN5bmMgKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIC8vIHdlIHB1dCBhbiBhc3luYyBmdW5jdGlvbiBhcyB0aGUgcHJvbWlzZSBjb25zdHJ1Y3RvciBiZWNhdXNlIHdlIHdhbnQgc29tZSB0aGluZ3MgdG8gaGFwcGVuIGluXG4gICAgLy8gc2VyaWFsIChhcHBsaWNhdGlvbiBvZiBwbHVnaW4gdXBkYXRlcywgZm9yIGV4YW1wbGUpLiBCdXQgd2Ugc3RpbGwgbmVlZCB0byB1c2UgYSBwcm9taXNlIGhlcmVcbiAgICAvLyBiZWNhdXNlIHNvbWUgZWxlbWVudHMgb2Ygc2VydmVyIHN0YXJ0IGZhaWx1cmUgb25seSBoYXBwZW4gaW4gaHR0cFNlcnZlciBsaXN0ZW5lcnMuIFNvIHRoZVxuICAgIC8vIHdheSB3ZSByZXNvbHZlIGl0IGlzIHRvIHVzZSBhbiBhc3luYyBmdW5jdGlvbiBoZXJlIGJ1dCB0byB3cmFwIGFsbCB0aGUgaW5uZXIgbG9naWMgaW5cbiAgICAvLyB0cnkvY2F0Y2ggc28gYW55IGVycm9ycyBjYW4gYmUgcGFzc2VkIHRvIHJlamVjdC5cbiAgICB0cnkge1xuICAgICAgY29uZmlndXJlSHR0cCh7aHR0cFNlcnZlciwgcmVqZWN0LCBrZWVwQWxpdmVUaW1lb3V0fSk7XG4gICAgICBjb25maWd1cmVTZXJ2ZXIoe2FwcCwgYWRkUm91dGVzOiByb3V0ZUNvbmZpZ3VyaW5nRnVuY3Rpb24sIGFsbG93Q29ycywgYmFzZVBhdGgsIGV4dHJhTWV0aG9kTWFwfSk7XG4gICAgICAvLyBhbGxvdyBleHRlbnNpb25zIHRvIHVwZGF0ZSB0aGUgYXBwIGFuZCBodHRwIHNlcnZlciBvYmplY3RzXG4gICAgICBmb3IgKGNvbnN0IHVwZGF0ZXIgb2Ygc2VydmVyVXBkYXRlcnMpIHtcbiAgICAgICAgYXdhaXQgdXBkYXRlcihhcHAsIGh0dHBTZXJ2ZXIpO1xuICAgICAgfVxuXG4gICAgICAvLyBvbmNlIGFsbCBjb25maWd1cmF0aW9ucyBhbmQgdXBkYXRlcnMgaGF2ZSBiZWVuIGFwcGxpZWQsIG1ha2Ugc3VyZSB0byBzZXQgdXAgYSBjYXRjaGFsbFxuICAgICAgLy8gaGFuZGxlciBzbyB0aGF0IGFueXRoaW5nIHVua25vd24gNDA0cy4gQnV0IGRvIHRoaXMgYWZ0ZXIgZXZlcnl0aGluZyBlbHNlIHNpbmNlIHdlIGRvbid0XG4gICAgICAvLyB3YW50IHRvIGJsb2NrIGV4dGVuc2lvbnMnIGFiaWxpdHkgdG8gYWRkIHJvdXRlcyBpZiB0aGV5IHdhbnQuXG4gICAgICBhcHAuYWxsKCcqJywgY2F0Y2g0MDRIYW5kbGVyKTtcblxuICAgICAgYXdhaXQgc3RhcnRTZXJ2ZXIoe2h0dHBTZXJ2ZXIsIGhvc3RuYW1lLCBwb3J0LCBrZWVwQWxpdmVUaW1lb3V0fSk7XG4gICAgICByZXNvbHZlKGh0dHBTZXJ2ZXIpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmVqZWN0KGVycik7XG4gICAgfVxuICB9KTtcblxufVxuXG5mdW5jdGlvbiBjb25maWd1cmVTZXJ2ZXIgKHtcbiAgYXBwLFxuICBhZGRSb3V0ZXMsXG4gIGFsbG93Q29ycyA9IHRydWUsXG4gIGJhc2VQYXRoID0gREVGQVVMVF9CQVNFX1BBVEgsXG4gIGV4dHJhTWV0aG9kTWFwID0ge30sXG59KSB7XG4gIGJhc2VQYXRoID0gbm9ybWFsaXplQmFzZVBhdGgoYmFzZVBhdGgpO1xuXG4gIGFwcC51c2UoZW5kTG9nRm9ybWF0dGVyKTtcblxuICAvLyBzZXQgdXAgc3RhdGljIGFzc2V0c1xuICBhcHAudXNlKGZhdmljb24ocGF0aC5yZXNvbHZlKFNUQVRJQ19ESVIsICdmYXZpY29uLmljbycpKSk7XG4gIGFwcC51c2UoZXhwcmVzcy5zdGF0aWMoU1RBVElDX0RJUikpO1xuXG4gIC8vIGNyYXNoIHJvdXRlcywgZm9yIHRlc3RpbmdcbiAgYXBwLnVzZShgJHtiYXNlUGF0aH0vcHJvZHVjZV9lcnJvcmAsIHByb2R1Y2VFcnJvcik7XG4gIGFwcC51c2UoYCR7YmFzZVBhdGh9L2NyYXNoYCwgcHJvZHVjZUNyYXNoKTtcblxuICAvLyBhZGQgbWlkZGxld2FyZXNcbiAgaWYgKGFsbG93Q29ycykge1xuICAgIGFwcC51c2UoYWxsb3dDcm9zc0RvbWFpbik7XG4gIH0gZWxzZSB7XG4gICAgYXBwLnVzZShhbGxvd0Nyb3NzRG9tYWluQXN5bmNFeGVjdXRlKGJhc2VQYXRoKSk7XG4gIH1cbiAgYXBwLnVzZShoYW5kbGVJZGVtcG90ZW5jeSk7XG4gIGFwcC51c2UoZml4UHl0aG9uQ29udGVudFR5cGUoYmFzZVBhdGgpKTtcbiAgYXBwLnVzZShkZWZhdWx0VG9KU09OQ29udGVudFR5cGUpO1xuICBhcHAudXNlKGJvZHlQYXJzZXIudXJsZW5jb2RlZCh7ZXh0ZW5kZWQ6IHRydWV9KSk7XG4gIGFwcC51c2UobWV0aG9kT3ZlcnJpZGUoKSk7XG4gIGFwcC51c2UoY2F0Y2hBbGxIYW5kbGVyKTtcblxuICAvLyBtYWtlIHN1cmUgYXBwaXVtIG5ldmVyIGZhaWxzIGJlY2F1c2Ugb2YgYSBmaWxlIHNpemUgdXBsb2FkIGxpbWl0XG4gIGFwcC51c2UoYm9keVBhcnNlci5qc29uKHtsaW1pdDogJzFnYid9KSk7XG5cbiAgLy8gc2V0IHVwIHN0YXJ0IGxvZ2dpbmcgKHdoaWNoIGRlcGVuZHMgb24gYm9keVBhcnNlciBkb2luZyBpdHMgdGhpbmcpXG4gIGFwcC51c2Uoc3RhcnRMb2dGb3JtYXR0ZXIpO1xuXG4gIGFkZFJvdXRlcyhhcHAsIHtiYXNlUGF0aCwgZXh0cmFNZXRob2RNYXB9KTtcblxuICAvLyBkeW5hbWljIHJvdXRlcyBmb3IgdGVzdGluZywgZXRjLlxuICBhcHAuYWxsKCcvd2VsY29tZScsIHdlbGNvbWUpO1xuICBhcHAuYWxsKCcvdGVzdC9ndWluZWEtcGlnJywgZ3VpbmVhUGlnKTtcbiAgYXBwLmFsbCgnL3Rlc3QvZ3VpbmVhLXBpZy1zY3JvbGxhYmxlJywgZ3VpbmVhUGlnU2Nyb2xsYWJsZSk7XG4gIGFwcC5hbGwoJy90ZXN0L2d1aW5lYS1waWctYXBwLWJhbm5lcicsIGd1aW5lYVBpZ0FwcEJhbm5lcik7XG59XG5cbmZ1bmN0aW9uIGNvbmZpZ3VyZUh0dHAgKHtodHRwU2VydmVyLCByZWplY3QsIGtlZXBBbGl2ZVRpbWVvdXR9KSB7XG4gIGNvbnN0IHNlcnZlclN0YXRlID0ge1xuICAgIG5vdGlmaWVyOiBuZXcgRXZlbnRFbWl0dGVyKCksXG4gICAgY2xvc2VkOiBmYWxzZSxcbiAgfTtcbiAgaHR0cFNlcnZlci5hZGRXZWJTb2NrZXRIYW5kbGVyID0gYWRkV2ViU29ja2V0SGFuZGxlcjtcbiAgaHR0cFNlcnZlci5yZW1vdmVXZWJTb2NrZXRIYW5kbGVyID0gcmVtb3ZlV2ViU29ja2V0SGFuZGxlcjtcbiAgaHR0cFNlcnZlci5yZW1vdmVBbGxXZWJTb2NrZXRIYW5kbGVycyA9IHJlbW92ZUFsbFdlYlNvY2tldEhhbmRsZXJzO1xuICBodHRwU2VydmVyLmdldFdlYlNvY2tldEhhbmRsZXJzID0gZ2V0V2ViU29ja2V0SGFuZGxlcnM7XG5cbiAgLy8gaHR0cC5TZXJ2ZXIuY2xvc2UoKSBvbmx5IHN0b3BzIG5ldyBjb25uZWN0aW9ucywgYnV0IHdlIG5lZWQgdG8gd2FpdCB1bnRpbFxuICAvLyBhbGwgY29ubmVjdGlvbnMgYXJlIGNsb3NlZCBhbmQgdGhlIGBjbG9zZWAgZXZlbnQgaXMgZW1pdHRlZFxuICBjb25zdCBjbG9zZSA9IGh0dHBTZXJ2ZXIuY2xvc2UuYmluZChodHRwU2VydmVyKTtcbiAgaHR0cFNlcnZlci5jbG9zZSA9IGFzeW5jICgpID0+IGF3YWl0IG5ldyBCKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUtdjAueC1hcmNoaXZlL2lzc3Vlcy85MDY2I2lzc3VlY29tbWVudC0xMjQyMTA1NzZcbiAgICBzZXJ2ZXJTdGF0ZS5jbG9zZWQgPSB0cnVlO1xuICAgIHNlcnZlclN0YXRlLm5vdGlmaWVyLmVtaXQoJ3NodXRkb3duJyk7XG4gICAgbG9nLmluZm8oJ1dhaXRpbmcgdW50aWwgdGhlIHNlcnZlciBpcyBjbG9zZWQnKTtcbiAgICBodHRwU2VydmVyLm9uKCdjbG9zZScsICgpID0+IHtcbiAgICAgIGxvZy5pbmZvKCdSZWNlaXZlZCBzZXJ2ZXIgY2xvc2UgZXZlbnQnKTtcbiAgICAgIHJlc29sdmUoKTtcbiAgICB9KTtcbiAgICBjbG9zZSgoZXJyKSA9PiB7XG4gICAgICBpZiAoZXJyKSByZWplY3QoZXJyKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBjdXJseVxuICAgIH0pO1xuICB9KTtcblxuICBodHRwU2VydmVyLm9uKCdlcnJvcicsIChlcnIpID0+IHtcbiAgICBpZiAoZXJyLmNvZGUgPT09ICdFQUREUk5PVEFWQUlMJykge1xuICAgICAgbG9nLmVycm9yKCdDb3VsZCBub3Qgc3RhcnQgUkVTVCBodHRwIGludGVyZmFjZSBsaXN0ZW5lci4gJyArXG4gICAgICAgICAgICAgICAgJ1JlcXVlc3RlZCBhZGRyZXNzIGlzIG5vdCBhdmFpbGFibGUuJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvZy5lcnJvcignQ291bGQgbm90IHN0YXJ0IFJFU1QgaHR0cCBpbnRlcmZhY2UgbGlzdGVuZXIuIFRoZSByZXF1ZXN0ZWQgJyArXG4gICAgICAgICAgICAgICAgJ3BvcnQgbWF5IGFscmVhZHkgYmUgaW4gdXNlLiBQbGVhc2UgbWFrZSBzdXJlIHRoZXJlIGlzIG5vICcgK1xuICAgICAgICAgICAgICAgICdvdGhlciBpbnN0YW5jZSBvZiB0aGlzIHNlcnZlciBydW5uaW5nIGFscmVhZHkuJyk7XG4gICAgfVxuICAgIHJlamVjdChlcnIpO1xuICB9KTtcblxuICBodHRwU2VydmVyLm9uKCdjb25uZWN0aW9uJywgKHNvY2tldCkgPT4ge1xuICAgIHNvY2tldC5zZXRUaW1lb3V0KGtlZXBBbGl2ZVRpbWVvdXQpO1xuICAgIHNvY2tldC5vbignZXJyb3InLCByZWplY3QpO1xuXG4gICAgZnVuY3Rpb24gZGVzdHJveSAoKSB7XG4gICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgIH1cbiAgICBzb2NrZXQuX29wZW5SZXFDb3VudCA9IDA7XG4gICAgc29ja2V0Lm9uY2UoJ2Nsb3NlJywgKCkgPT4gc2VydmVyU3RhdGUubm90aWZpZXIucmVtb3ZlTGlzdGVuZXIoJ3NodXRkb3duJywgZGVzdHJveSkpO1xuICAgIHNlcnZlclN0YXRlLm5vdGlmaWVyLm9uY2UoJ3NodXRkb3duJywgZGVzdHJveSk7XG4gIH0pO1xuXG4gIGh0dHBTZXJ2ZXIub24oJ3JlcXVlc3QnLCBmdW5jdGlvbiAocmVxLCByZXMpIHtcbiAgICBjb25zdCBzb2NrZXQgPSByZXEuY29ubmVjdGlvbiB8fCByZXEuc29ja2V0O1xuICAgIHNvY2tldC5fb3BlblJlcUNvdW50Kys7XG4gICAgcmVzLm9uKCdmaW5pc2gnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBzb2NrZXQuX29wZW5SZXFDb3VudC0tO1xuICAgICAgaWYgKHNlcnZlclN0YXRlLmNsb3NlZCAmJiBzb2NrZXQuX29wZW5SZXFDb3VudCA9PT0gMCkge1xuICAgICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gc3RhcnRTZXJ2ZXIgKHtodHRwU2VydmVyLCBwb3J0LCBob3N0bmFtZSwga2VlcEFsaXZlVGltZW91dH0pIHtcbiAgY29uc3Qgc2VydmVyQXJncyA9IFtwb3J0XTtcbiAgaWYgKGhvc3RuYW1lKSB7XG4gICAgLy8gSWYgdGhlIGhvc3RuYW1lIGlzIG9taXR0ZWQsIHRoZSBzZXJ2ZXIgd2lsbCBhY2NlcHRcbiAgICAvLyBjb25uZWN0aW9ucyBvbiBhbnkgSVAgYWRkcmVzc1xuICAgIHNlcnZlckFyZ3MucHVzaChob3N0bmFtZSk7XG4gIH1cbiAgY29uc3Qgc3RhcnRQcm9taXNlID0gQi5wcm9taXNpZnkoaHR0cFNlcnZlci5saXN0ZW4sIHtjb250ZXh0OiBodHRwU2VydmVyfSkoLi4uc2VydmVyQXJncyk7XG4gIGh0dHBTZXJ2ZXIua2VlcEFsaXZlVGltZW91dCA9IGtlZXBBbGl2ZVRpbWVvdXQ7XG4gIC8vIGhlYWRlcnMgdGltZW91dCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBrZWVwQWxpdmVUaW1lb3V0XG4gIGh0dHBTZXJ2ZXIuaGVhZGVyc1RpbWVvdXQgPSBrZWVwQWxpdmVUaW1lb3V0ICsgNSAqIDEwMDA7XG4gIGF3YWl0IHN0YXJ0UHJvbWlzZTtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplQmFzZVBhdGggKGJhc2VQYXRoKSB7XG4gIGlmICghXy5pc1N0cmluZyhiYXNlUGF0aCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcGF0aCBwcmVmaXggJHtiYXNlUGF0aH1gKTtcbiAgfVxuXG4gIC8vIGVuc3VyZSB0aGUgcGF0aCBwcmVmaXggZG9lcyBub3QgZW5kIGluICcvJywgc2luY2Ugb3VyIG1ldGhvZCBtYXBcbiAgLy8gc3RhcnRzIGFsbCBwYXRocyB3aXRoICcvJ1xuICBiYXNlUGF0aCA9IGJhc2VQYXRoLnJlcGxhY2UoL1xcLyQvLCAnJyk7XG5cbiAgLy8gbGlrZXdpc2UsIGVuc3VyZSB0aGUgcGF0aCBwcmVmaXggZG9lcyBhbHdheXMgU1RBUlQgd2l0aCAvLCB1bmxlc3MgdGhlIHBhdGhcbiAgLy8gaXMgZW1wdHkgbWVhbmluZyBubyBiYXNlIHBhdGggYXQgYWxsXG4gIGlmIChiYXNlUGF0aCAhPT0gJycgJiYgYmFzZVBhdGhbMF0gIT09ICcvJykge1xuICAgIGJhc2VQYXRoID0gYC8ke2Jhc2VQYXRofWA7XG4gIH1cblxuICByZXR1cm4gYmFzZVBhdGg7XG59XG5cbmV4cG9ydCB7IHNlcnZlciwgY29uZmlndXJlU2VydmVyLCBub3JtYWxpemVCYXNlUGF0aCB9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBS0E7O0FBQ0E7O0FBQ0E7O0FBSUE7O0FBQ0E7O0FBQ0E7O0FBR0EsTUFBTUEscUJBQXFCLEdBQUcsS0FBSyxFQUFMLEdBQVUsSUFBeEM7O0FBR0EsZUFBZUMsTUFBZixDQUF1QkMsSUFBSSxHQUFHLEVBQTlCLEVBQWtDO0VBQ2hDLE1BQU07SUFDSkMsd0JBREk7SUFFSkMsSUFGSTtJQUdKQyxRQUFRLEdBQUcsSUFIUDtJQUlKQyxTQUFTLEdBQUcsSUFKUjtJQUtKQyxRQUFRLEdBQUdDLDRCQUxQO0lBTUpDLGNBQWMsR0FBRyxFQU5iO0lBT0pDLGNB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
|
|
@@ -93,4 +93,4 @@ async function getTemplate(templateName) {
|
|
|
93
93
|
let content = await _support.fs.readFile(_path.default.resolve(STATIC_DIR, 'test', templateName));
|
|
94
94
|
return _lodash.default.template(content.toString());
|
|
95
95
|
}
|
|
96
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
96
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTVEFUSUNfRElSIiwicGF0aCIsInJlc29sdmUiLCJfX2Rpcm5hbWUiLCJfIiwiaXNOdWxsIiwibWF0Y2giLCJndWluZWFQaWdUZW1wbGF0ZSIsInJlcSIsInJlcyIsInBhZ2UiLCJkZWxheSIsInBhcnNlSW50IiwicGFyYW1zIiwicXVlcnkiLCJ0aHJvd0Vycm9yIiwic2VydmVyVGltZSIsIkRhdGUiLCJ1c2VyQWdlbnQiLCJoZWFkZXJzIiwiY29tbWVudCIsIm1ldGhvZCIsImJvZHkiLCJjb21tZW50cyIsImxvZyIsImRlYnVnIiwiSlNPTiIsInN0cmluZ2lmeSIsIkIiLCJzZXQiLCJjb29raWUiLCJkb21haW4iLCJzZW5kIiwiZ2V0VGVtcGxhdGUiLCJndWluZWFQaWciLCJndWluZWFQaWdTY3JvbGxhYmxlIiwiZ3VpbmVhUGlnQXBwQmFubmVyIiwid2VsY29tZSIsIm1lc3NhZ2UiLCJ0ZW1wbGF0ZU5hbWUiLCJjb250ZW50IiwiZnMiLCJyZWFkRmlsZSIsInRlbXBsYXRlIiwidG9TdHJpbmciXSwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZXhwcmVzcy9zdGF0aWMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgbG9nIGZyb20gJy4vbG9nZ2VyJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBmcyB9IGZyb20gJ0BhcHBpdW0vc3VwcG9ydCc7XG5pbXBvcnQgQiBmcm9tICdibHVlYmlyZCc7XG5cblxubGV0IFNUQVRJQ19ESVIgPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi4nLCAnLi4nLCAnLi4nLCAnc3RhdGljJyk7XG5pZiAoXy5pc051bGwocGF0aC5yZXNvbHZlKF9fZGlybmFtZSkubWF0Y2goL2J1aWxkWy9cXFxcXWxpYlsvXFxcXF1leHByZXNzJC8pKSkge1xuICAvLyBpbiBzb21lIGNvbnRleHRzIHdlIGFyZSBub3QgaW4gdGhlIGJ1aWxkIGRpcmVjdG9yeSxcbiAgLy8gc28gd2UgZG9uJ3Qgd2FudCB0byBnbyBiYWNrIHRoZSBleHRyYSBsZXZlbFxuICBTVEFUSUNfRElSID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4uJywgJy4uJywgJ3N0YXRpYycpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBndWluZWFQaWdUZW1wbGF0ZSAocmVxLCByZXMsIHBhZ2UpIHtcbiAgY29uc3QgZGVsYXkgPSBwYXJzZUludChyZXEucGFyYW1zLmRlbGF5IHx8IHJlcS5xdWVyeS5kZWxheSB8fCAwLCAxMCk7XG4gIGNvbnN0IHRocm93RXJyb3IgPSByZXEucGFyYW1zLnRocm93RXJyb3IgfHwgcmVxLnF1ZXJ5LnRocm93RXJyb3IgfHwgJyc7XG4gIGxldCBwYXJhbXMgPSB7XG4gICAgdGhyb3dFcnJvcixcbiAgICBzZXJ2ZXJUaW1lOiBuZXcgRGF0ZSgpLFxuICAgIHVzZXJBZ2VudDogcmVxLmhlYWRlcnNbJ3VzZXItYWdlbnQnXSxcbiAgICBjb21tZW50OiAnTm9uZSdcbiAgfTtcbiAgaWYgKHJlcS5tZXRob2QgPT09ICdQT1NUJykge1xuICAgIHBhcmFtcy5jb21tZW50ID0gcmVxLmJvZHkuY29tbWVudHMgfHwgcGFyYW1zLmNvbW1lbnQ7XG4gIH1cbiAgbG9nLmRlYnVnKGBTZW5kaW5nIGd1aW5lYSBwaWcgcmVzcG9uc2Ugd2l0aCBwYXJhbXM6ICR7SlNPTi5zdHJpbmdpZnkocGFyYW1zKX1gKTtcbiAgaWYgKGRlbGF5KSB7XG4gICAgbG9nLmRlYnVnKGBXYWl0aW5nICR7ZGVsYXl9bXMgYmVmb3JlIHJlc3BvbmRpbmdgKTtcbiAgICBhd2FpdCBCLmRlbGF5KGRlbGF5KTtcbiAgfVxuICByZXMuc2V0KCdjb250ZW50LXR5cGUnLCAndGV4dC9odG1sJyk7XG4gIHJlcy5jb29raWUoJ2d1aW5lYWNvb2tpZTEnLCAnaSBhbSBhIGNvb2tpZSB2YWx1ZScsIHtwYXRoOiAnLyd9KTtcbiAgcmVzLmNvb2tpZSgnZ3VpbmVhY29va2llMicsICdjb29racOpMicsIHtwYXRoOiAnLyd9KTtcbiAgcmVzLmNvb2tpZSgnZ3VpbmVhY29va2llMycsICdjYW50IGFjY2VzcyB0aGlzJywge1xuICAgIGRvbWFpbjogJy5ibGFyZ2ltYXJnLmNvbScsXG4gICAgcGF0aDogJy8nXG4gIH0pO1xuICByZXMuc2VuZCgoYXdhaXQgZ2V0VGVtcGxhdGUocGFnZSkpKHBhcmFtcykpO1xufVxuXG4vKlxuICogRHluYW1pYyBwYWdlIG1hcHBlZCB0byAvdGVzdC9ndWluZWEtcGlnXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGd1aW5lYVBpZyAocmVxLCByZXMpIHtcbiAgcmV0dXJuIGF3YWl0IGd1aW5lYVBpZ1RlbXBsYXRlKHJlcSwgcmVzLCAnZ3VpbmVhLXBpZy5odG1sJyk7XG59XG5cbi8qXG4gKiBEeW5hbWljIHBhZ2UgbWFwcGVkIHRvIC90ZXN0L2d1aW5lYS1waWctc2Nyb2xsYWJsZVxuICovXG5hc3luYyBmdW5jdGlvbiBndWluZWFQaWdTY3JvbGxhYmxlIChyZXEsIHJlcykge1xuICByZXR1cm4gYXdhaXQgZ3VpbmVhUGlnVGVtcGxhdGUocmVxLCByZXMsICdndWluZWEtcGlnLXNjcm9sbGFibGUuaHRtbCcpO1xufVxuXG4vKlxuICogRHluYW1pYyBwYWdlIG1hcHBlZCB0byAvdGVzdC9ndWluZWEtcGlnLWFwcC1iYW5uZXJcbiAqL1xuYXN5bmMgZnVuY3Rpb24gZ3VpbmVhUGlnQXBwQmFubmVyIChyZXEsIHJlcykge1xuICByZXR1cm4gYXdhaXQgZ3VpbmVhUGlnVGVtcGxhdGUocmVxLCByZXMsICdndWluZWEtcGlnLWFwcC1iYW5uZXIuaHRtbCcpO1xufVxuXG4vKlxuICogRHluYW1pYyBwYWdlIG1hcHBlZCB0byAvd2VsY29tZVxuICovXG5hc3luYyBmdW5jdGlvbiB3ZWxjb21lIChyZXEsIHJlcykge1xuICBsZXQgcGFyYW1zID0ge21lc3NhZ2U6ICdMZXRcXCdzIGJyb3dzZSEnfTtcbiAgbG9nLmRlYnVnKGBTZW5kaW5nIHdlbGNvbWUgcmVzcG9uc2Ugd2l0aCBwYXJhbXM6ICR7SlNPTi5zdHJpbmdpZnkocGFyYW1zKX1gKTtcbiAgcmVzLnNlbmQoKGF3YWl0IGdldFRlbXBsYXRlKCd3ZWxjb21lLmh0bWwnKSkocGFyYW1zKSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldFRlbXBsYXRlICh0ZW1wbGF0ZU5hbWUpIHtcbiAgbGV0IGNvbnRlbnQgPSBhd2FpdCBmcy5yZWFkRmlsZShwYXRoLnJlc29sdmUoU1RBVElDX0RJUiwgJ3Rlc3QnLCB0ZW1wbGF0ZU5hbWUpKTtcbiAgcmV0dXJuIF8udGVtcGxhdGUoY29udGVudC50b1N0cmluZygpKTtcbn1cblxuZXhwb3J0IHsgZ3VpbmVhUGlnLCBndWluZWFQaWdTY3JvbGxhYmxlLCBndWluZWFQaWdBcHBCYW5uZXIsIHdlbGNvbWUsIFNUQVRJQ19ESVIgfTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBR0EsSUFBSUEsVUFBVSxHQUFHQyxjQUFLQyxPQUFMLENBQWFDLFNBQWIsRUFBd0IsSUFBeEIsRUFBOEIsSUFBOUIsRUFBb0MsSUFBcEMsRUFBMEMsUUFBMUMsQ0FBakI7Ozs7QUFDQSxJQUFJQyxnQkFBRUMsTUFBRixDQUFTSixjQUFLQyxPQUFMLENBQWFDLFNBQWIsRUFBd0JHLEtBQXhCLENBQThCLDRCQUE5QixDQUFULENBQUosRUFBMkU7RUFHekUscUJBQUFOLFVBQVUsR0FBR0MsY0FBS0MsT0FBTCxDQUFhQyxTQUFiLEVBQXdCLElBQXhCLEVBQThCLElBQTlCLEVBQW9DLFFBQXBDLENBQWI7QUFDRDs7QUFFRCxlQUFlSSxpQkFBZixDQUFrQ0MsR0FBbEMsRUFBdUNDLEdBQXZDLEVBQTRDQyxJQUE1QyxFQUFrRDtFQUNoRCxNQUFNQyxLQUFLLEdBQUdDLFFBQVEsQ0FBQ0osR0FBRyxDQUFDSyxNQUFKLENBQVdGLEtBQVgsSUFBb0JILEdBQUcsQ0FBQ00sS0FBSixDQUFVSCxLQUE5QixJQUF1QyxDQUF4QyxFQUEyQyxFQUEzQyxDQUF0QjtFQUNBLE1BQU1JLFVBQVUsR0FBR1AsR0FB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
|
|
@@ -95,4 +95,4 @@ async function removeAllWebSocketHandlers() {
|
|
|
95
95
|
|
|
96
96
|
return _lodash.default.some(await _bluebird.default.all(_lodash.default.keys(this.webSocketsMapping).map(pathname => this.removeWebSocketHandler(pathname))));
|
|
97
97
|
}
|
|
98
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJERUZBVUxUX1dTX1BBVEhOQU1FX1BSRUZJWCIsImFkZFdlYlNvY2tldEhhbmRsZXIiLCJoYW5kbGVyUGF0aG5hbWUiLCJoYW5kbGVyU2VydmVyIiwiXyIsImlzVW5kZWZpbmVkIiwid2ViU29ja2V0c01hcHBpbmciLCJvbiIsInJlcXVlc3QiLCJzb2NrZXQiLCJoZWFkIiwiY3VycmVudFBhdGhuYW1lIiwiVVJMIiwidXJsIiwicGF0aG5hbWUiLCJpZ24iLCJ3c1NlcnZlciIsInRvUGFpcnMiLCJoYW5kbGVVcGdyYWRlIiwid3MiLCJlbWl0IiwiZGVzdHJveSIsImdldFdlYlNvY2tldEhhbmRsZXJzIiwia2V5c0ZpbHRlciIsImlzRW1wdHkiLCJyZWR1Y2UiLCJhY2MiLCJpc1N0cmluZyIsImluY2x1ZGVzIiwicmVtb3ZlV2ViU29ja2V0SGFuZGxlciIsImNsb3NlIiwiY2xpZW50IiwiY2xpZW50cyIsInRlcm1pbmF0ZSIsInJlbW92ZUFsbFdlYlNvY2tldEhhbmRsZXJzIiwic29tZSIsIkIiLCJhbGwiLCJrZXlzIiwibWFwIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL2V4cHJlc3Mvd2Vic29ja2V0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBVUkwgfSBmcm9tICd1cmwnO1xuaW1wb3J0IEIgZnJvbSAnYmx1ZWJpcmQnO1xuXG5jb25zdCBERUZBVUxUX1dTX1BBVEhOQU1FX1BSRUZJWCA9ICcvd3MnO1xuXG5cbi8qKlxuICogQWRkcyB3ZWJzb2NrZXQgaGFuZGxlciB0byBleHByZXNzIHNlcnZlciBpbnN0YW5jZS5cbiAqIEl0IGlzIGV4cGVjdGVkIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGluIEV4cHJlc3NcbiAqIHNlcnZlciBpbnN0YW5jZSBjb250ZXh0LlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBzZXJ2ZXIgLSBBbiBpbnN0YW5jZSBvZiBleHByZXNzIEhUVFAgc2VydmVyLlxuICogQHBhcmFtIHtzdHJpbmd9IGhhbmRsZXJQYXRobmFtZSAtIFdlYiBzb2NrZXQgZW5kcG9pbnQgcGF0aCBzdGFydGluZyB3aXRoXG4gKiBhIHNpbmdsZSBzbGFzaCBjaGFyYWN0ZXIuIEl0IGlzIHJlY29tbWVuZGVkIHRvIGFsd2F5cyBhZGRcbiAqIERFRkFVTFRfV1NfUEFUSE5BTUVfUFJFRklYIHRvIGFsbCB3ZWIgc29ja2V0IHBhdGhuYW1lcy5cbiAqIEBwYXJhbSB7T2JqZWN0fSBoYW5kbGVyU2VydmVyIC0gV2ViU29ja2V0IHNlcnZlciBpbnN0YW5jZS4gU2VlXG4gKiBodHRwczovL2dpdGh1Yi5jb20vd2Vic29ja2V0cy93cy9wdWxsLzg4NSBmb3IgbW9yZSBkZXRhaWxzXG4gKiBvbiBob3cgdG8gY29uZmlndXJlIHRoZSBoYW5kbGVyIHByb3Blcmx5LlxuICovXG5hc3luYyBmdW5jdGlvbiBhZGRXZWJTb2NrZXRIYW5kbGVyIChoYW5kbGVyUGF0aG5hbWUsIGhhbmRsZXJTZXJ2ZXIpIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSByZXF1aXJlLWF3YWl0XG4gIGlmIChfLmlzVW5kZWZpbmVkKHRoaXMud2ViU29ja2V0c01hcHBpbmcpKSB7XG4gICAgdGhpcy53ZWJTb2NrZXRzTWFwcGluZyA9IHt9O1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWJzb2NrZXRzL3dzL3B1bGwvODg1XG4gICAgdGhpcy5vbigndXBncmFkZScsIChyZXF1ZXN0LCBzb2NrZXQsIGhlYWQpID0+IHtcbiAgICAgIGxldCBjdXJyZW50UGF0aG5hbWU7XG4gICAgICB0cnkge1xuICAgICAgICBjdXJyZW50UGF0aG5hbWUgPSAobmV3IFVSTChyZXF1ZXN0LnVybCkpLnBhdGhuYW1lO1xuICAgICAgfSBjYXRjaCAoaWduKSB7XG4gICAgICAgIGN1cnJlbnRQYXRobmFtZSA9IHJlcXVlc3QudXJsO1xuICAgICAgfVxuICAgICAgZm9yIChjb25zdCBbcGF0aG5hbWUsIHdzU2VydmVyXSBvZiBfLnRvUGFpcnModGhpcy53ZWJTb2NrZXRzTWFwcGluZykpIHtcbiAgICAgICAgaWYgKGN1cnJlbnRQYXRobmFtZSA9PT0gcGF0aG5hbWUpIHtcbiAgICAgICAgICB3c1NlcnZlci5oYW5kbGVVcGdyYWRlKHJlcXVlc3QsIHNvY2tldCwgaGVhZCwgKHdzKSA9PiB7XG4gICAgICAgICAgICB3c1NlcnZlci5lbWl0KCdjb25uZWN0aW9uJywgd3MsIHJlcXVlc3QpO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgc29ja2V0LmRlc3Ryb3koKTtcbiAgICB9KTtcbiAgfVxuICB0aGlzLndlYlNvY2tldHNNYXBwaW5nW2hhbmRsZXJQYXRobmFtZV0gPSBoYW5kbGVyU2VydmVyO1xufVxuXG4vKipcbiAqIFJldHVybnMgd2ViIHNvY2tldCBoYW5kbGVycyByZWdpc3RlcmVkIGZvciB0aGUgZ2l2ZW4gc2VydmVyXG4gKiBpbnN0YW5jZS5cbiAqIEl0IGlzIGV4cGVjdGVkIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGluIEV4cHJlc3NcbiAqIHNlcnZlciBpbnN0YW5jZSBjb250ZXh0LlxuICpcbiAqIEBwYXJhbSB7P3N0cmluZ30ga2V5c0ZpbHRlciBbbnVsbF0tIE9ubHkgaW5jbHVkZSBwYXRobmFtZXMgd2l0aCBnaXZlblxuICogYGtleXNGaWx0ZXJgIHZhbHVlIGlmIHNldC4gQWxsIHBhaXJzIHdpbGwgYmUgaW5jbHVkZWQgYnkgZGVmYXVsdC5cbiAqIEByZXR1cm5zIHtPYmplY3R9IHBhdGhuYW1lcyB0byB3ZWJzb2NrZXQgc2VydmVyIGlzbnRhbmNlcyBtYXBwaW5nXG4gKiBtYXRjaGluZyB0aGUgc2VhcmNoIGNyaXRlcmlhIG9yIGFuIGVtcHR5IG9iamVjdCBvdGhlcndpc2UuXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGdldFdlYlNvY2tldEhhbmRsZXJzIChrZXlzRmlsdGVyID0gbnVsbCkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHJlcXVpcmUtYXdhaXRcbiAgaWYgKF8uaXNFbXB0eSh0aGlzLndlYlNvY2tldHNNYXBwaW5nKSkge1xuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIHJldHVybiBfLnRvUGFpcnModGhpcy53ZWJTb2NrZXRzTWFwcGluZykucmVkdWNlKChhY2MsIFtwYXRobmFtZSwgd3NTZXJ2ZXJdKSA9PiB7XG4gICAgaWYgKCFfLmlzU3RyaW5nKGtleXNGaWx0ZXIpIHx8IHBhdGhuYW1lLmluY2x1ZGVzKGtleXNGaWx0ZXIpKSB7XG4gICAgICBhY2NbcGF0aG5hbWVdID0gd3NTZXJ2ZXI7XG4gICAgfVxuICAgIHJldHVybiBhY2M7XG4gIH0sIHt9KTtcbn1cblxuLyoqXG4gKiBSZW1vdmVzIGV4aXN0aW5nIHdlYnNvY2tldCBoYW5kbGVyIGZyb20gZXhwcmVzcyBzZXJ2ZXIgaW5zdGFuY2UuXG4gKiBUaGUgY2FsbCBpcyBpZ25vcmVkIGlmIHRoZSBnaXZlbiBgaGFuZGxlclBhdGhuYW1lYCBoYW5kbGVyXG4gKiBpcyBub3QgcHJlc2VudCBpbiB0aGUgaGFuZGxlcnMgbGlzdC5cbiAqIEl0IGlzIGV4cGVjdGVkIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGluIEV4cHJlc3NcbiAqIHNlcnZlciBpbnN0YW5jZSBjb250ZXh0LlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBoYW5kbGVyUGF0aG5hbWUgLSBXZWJzb2NrZXQgZW5kcG9pbnQgcGF0aC5cbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmIHRoZSBoYW5kbGVyUGF0aG5hbWUgd2FzIGZvdW5kIGFuZCBkZWxldGVkXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHJlbW92ZVdlYlNvY2tldEhhbmRsZXIgKGhhbmRsZXJQYXRobmFtZSkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHJlcXVpcmUtYXdhaXRcbiAgY29uc3Qgd3NTZXJ2ZXIgPSB0aGlzLndlYlNvY2tldHNNYXBwaW5nPy5baGFuZGxlclBhdGhuYW1lXTtcbiAgaWYgKCF3c1NlcnZlcikge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgd3NTZXJ2ZXIuY2xvc2UoKTtcbiAgICBmb3IgKGNvbnN0IGNsaWVudCBvZiAod3NTZXJ2ZXIuY2xpZW50cyB8fCBbXSkpIHtcbiAgICAgIGNsaWVudC50ZXJtaW5hdGUoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGlnbikge1xuICAgIC8vIGlnbm9yZVxuICB9IGZpbmFsbHkge1xuICAgIGRlbGV0ZSB0aGlzLndlYlNvY2tldHNNYXBwaW5nW2hhbmRsZXJQYXRobmFtZV07XG4gIH1cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKipcbiAqIFJlbW92ZXMgYWxsIGV4aXN0aW5nIHdlYnNvY2tldCBoYW5kbGVyIGZyb20gZXhwcmVzcyBzZXJ2ZXIgaW5zdGFuY2UuXG4gKiBJdCBpcyBleHBlY3RlZCB0aGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCBpbiBFeHByZXNzXG4gKiBzZXJ2ZXIgaW5zdGFuY2UgY29udGV4dC5cbiAqXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZiBhdCBsZWFzdCBvbmUgaGFuZGxlciBoYXMgYmVlbiBkZWxldGVkXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHJlbW92ZUFsbFdlYlNvY2tldEhhbmRsZXJzICgpIHtcbiAgaWYgKF8uaXNFbXB0eSh0aGlzLndlYlNvY2tldHNNYXBwaW5nKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiBfLnNvbWUoXG4gICAgYXdhaXQgQi5hbGwoXG4gICAgICBfLmtleXModGhpcy53ZWJTb2NrZXRzTWFwcGluZykubWFwKChwYXRobmFtZSkgPT4gdGhpcy5yZW1vdmVXZWJTb2NrZXRIYW5kbGVyKHBhdGhuYW1lKSlcbiAgICApXG4gICk7XG59XG5cbmV4cG9ydCB7XG4gIGFkZFdlYlNvY2tldEhhbmRsZXIsIHJlbW92ZVdlYlNvY2tldEhhbmRsZXIsIHJlbW92ZUFsbFdlYlNvY2tldEhhbmRsZXJzLFxuICBnZXRXZWJTb2NrZXRIYW5kbGVycywgREVGQVVMVF9XU19QQVRITkFNRV9QUkVGSVgsXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFFQSxNQUFNQSwwQkFBMEIsR0FBRyxLQUFuQzs7O0FBZ0JBLGVBQWVDLG1CQUFmLENBQW9DQyxlQUFwQyxFQUFxREMsYUFBckQsRUFBb0U7RUFDbEUsSUFBSUMsZ0JBQUVDLFdBQUYsQ0FBYyxLQUFLQyxpQkFBbkIsQ0FBSixFQUEyQztJQUN6QyxLQUFLQSxpQkFBTCxHQUF5QixFQUF6QjtJQUVBLEtBQUtDLEVBQUwsQ0FBUSxTQUFSLEVBQW1CLENBQUNDLE9BQUQsRUFBVUMsTUFBVixFQUFrQkMsSUFBbEIsS0FBMkI7TUFDNUMsSUFBSUMsZUFBSjs7TUFDQSxJQUFJO1FBQ0ZBLGVBQWUsR0FBSSxJQUFJQyxRQUFKLENBQVFKLE9BQU8sQ0FBQ0ssR0FBaEIsQ0FBRCxDQUF1QkMsUUFBekM7TUFDRCxDQUZELENBRUUsT0FBT0MsR0FBUCxFQUFZO1FBQ1pKLGVBQWUsR0FBR0gsT0FBTyxDQUFDSyxHQUExQjtNQUNEOztNQUNELEtBQUssTUFBTSxDQUFDQyxRQUFELEVBQVdFLFFBQVgsQ0FBWCxJQUFtQ1osZ0JBQUVhLE9BQUYsQ0FBVSxLQUFLWCxpQkFBZixDQUFuQyxFQUFzRTtRQUNwRSxJQUFJSyxlQUFlLEtBQUtHLFFBQXhCLEVBQWtDO1VBQ2hDRSxRQUFRLENBQUNFLGFBQVQsQ0FBdUJWLE9BQXZCLEVBQWdDQyxNQUFoQyxFQUF3Q0MsSUFBeEMsRUFBK0NTLEVBQUQsSUFBUTtZQUNwREgsUUFBUSxDQUFDSSxJQUFULENBQWMsWUFBZCxFQUE0QkQsRUFBNUIsRUFBZ0NYLE9BQWhDO1VBQ0QsQ0FGRDtVQUdBO1FBQ0Q7TUFDRjs7TUFDREMsTUFBTSxDQUFDWSxPQUFQO0lBQ0QsQ0FoQkQ7RUFpQkQ7O0VBQ0QsS0FBS2YsaUJBQUwsQ0FBdUJKLGVBQXZCLElBQTBDQyxhQUExQztBQUNEOztBQWFELGVBQWVtQixvQkFBZixDQUFxQ0MsVUFBVSxHQUFHLElBQWxELEVBQXdEO0VBQ3RELElBQUluQixnQkFBRW9CLE9BQUYsQ0FBVSxLQUFLbEIsaUJBQWYsQ0FBSixFQUF1QztJQUNyQyxPQUFPLEVBQVA7RUFDRDs7RUFFRCxPQUFPRixnQkFBRWEsT0FBRixDQUFVLEtBQUtYLGlCQUFmLEVBQWtDbUIsTUFBbEMsQ0FBeUMsQ0FBQ0MsR0FBRCxFQUFNLENBQUNaLFFBQUQsRUFBV0UsUUFBWCxDQUFOLEtBQStCO0lBQzdFLElBQUksQ0FBQ1osZ0JBQUV1QixRQUFGLENBQVdKLFVBQVgsQ0FBRCxJQUEyQlQsUUFBUSxDQUFDYyxRQUFULENBQWtCTCxVQUFsQixDQUEvQixFQUE4RDtNQUM1REcsR0FBRyxDQUFDWixRQUFELENBQUgsR0FBZ0JFLFFBQWhCO0lBQ0Q7O0lBQ0QsT0FBT1UsR0FBUDtFQUNELENBTE0sRUFLSixFQUxJLENBQVA7QUFNRDs7QUFZRCxlQUFlRyxzQkFBZixDQUF1QzNCLGVBQXZDLEVBQXdEO0VBQUE7O0VBQ3RELE1BQU1jLFFBQVEsNEJBQUcsS0FBS1YsaUJBQVIsMERBQUcsc0JBQXlCSixlQUF6QixDQUFqQjs7RUFDQSxJQUFJLENBQUNjLFFBQUwsRUFBZTtJQUNiLE9BQU8sS0FBUDtFQUNEOztFQUVELElBQUk7SUFDRkEsUUFBUSxDQUFDYyxLQUFUOztJQUNBLEtBQUssTUFBTUMsTUFBWCxJQUFzQmYsUUFBUSxDQUFDZ0IsT0FBVCxJQUFvQixFQUExQyxFQUErQztNQUM3Q0QsTUFBTSxDQUFDRSxTQUFQO0lBQ0Q7O0lBQ0QsT0FBTyxJQUFQO0VBQ0QsQ0FORCxDQU1FLE9BQU9sQixHQUFQLEVBQVksQ0FFYixDQVJELFNBUVU7SUFDUixPQUFPLEtBQUtULGlCQUFMLENBQXVCSixlQUF2QixDQUFQO0VBQ0Q7O0VBQ0QsT0FBTyxLQUFQO0FBQ0Q7O0FBU0QsZUFBZWdDLDBCQUFmLEdBQTZDO0VBQzNDLElBQUk5QixnQkFBRW9CLE9BQUYsQ0FBVSxLQUFLbEIsaUJBQWYsQ0FBSixFQUF1QztJQUNyQyxPQUFPLEtBQVA7RUFDRDs7RUFFRCxPQUFPRixnQkFBRStCLElBQUYsQ0FDTCxNQUFNQyxrQkFBRUMsR0FBRixDQUNKakMsZ0JBQUVrQyxJQUFGLENBQU8sS0FBS2hDLGlCQUFaLEVBQStCaUMsR0FBL0IsQ0FBb0N6QixRQUFELElBQWMsS0FBS2Usc0JBQUwsQ0FBNEJmLFFBQTVCLENBQWpELENBREksQ0FERCxDQUFQO0FBS0QifQ==
|
|
@@ -74,4 +74,4 @@ function fixCaps(originalCaps, desiredCapConstraints, log) {
|
|
|
74
74
|
|
|
75
75
|
return caps;
|
|
76
76
|
}
|
|
77
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpc1czY0NhcHMiLCJjYXBzIiwiXyIsImlzUGxhaW5PYmplY3QiLCJpc0ZpcnN0TWF0Y2hWYWxpZCIsImlzQXJyYXkiLCJmaXJzdE1hdGNoIiwiaXNFbXB0eSIsImV2ZXJ5IiwiaXNBbHdheXNNYXRjaFZhbGlkIiwiYWx3YXlzTWF0Y2giLCJoYXMiLCJmaXhDYXBzIiwib3JpZ2luYWxDYXBzIiwiZGVzaXJlZENhcENvbnN0cmFpbnRzIiwibG9nIiwiY2xvbmUiLCJib29sZWFuQ2FwcyIsImtleXMiLCJwaWNrQnkiLCJrIiwiaXNCb29sZWFuIiwiY2FwIiwidmFsdWUiLCJpc1N0cmluZyIsInRvTG93ZXJDYXNlIiwid2FybiIsImludENhcHMiLCJpc051bWJlciIsInRyaW0iLCJuZXdWYWx1ZSIsInBhcnNlSW50IiwicGFyc2VGbG9hdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oZWxwZXJzL2NhcGFiaWxpdGllcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuZnVuY3Rpb24gaXNXM2NDYXBzIChjYXBzKSB7XG4gIGlmICghXy5pc1BsYWluT2JqZWN0KGNhcHMpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgaXNGaXJzdE1hdGNoVmFsaWQgPSAoKSA9PiBfLmlzQXJyYXkoY2Fwcy5maXJzdE1hdGNoKVxuICAgICYmICFfLmlzRW1wdHkoY2Fwcy5maXJzdE1hdGNoKSAmJiBfLmV2ZXJ5KGNhcHMuZmlyc3RNYXRjaCwgXy5pc1BsYWluT2JqZWN0KTtcbiAgY29uc3QgaXNBbHdheXNNYXRjaFZhbGlkID0gKCkgPT4gXy5pc1BsYWluT2JqZWN0KGNhcHMuYWx3YXlzTWF0Y2gpO1xuICBpZiAoXy5oYXMoY2FwcywgJ2ZpcnN0TWF0Y2gnKSAmJiBfLmhhcyhjYXBzLCAnYWx3YXlzTWF0Y2gnKSkge1xuICAgIHJldHVybiBpc0ZpcnN0TWF0Y2hWYWxpZCgpICYmIGlzQWx3YXlzTWF0Y2hWYWxpZCgpO1xuICB9XG4gIGlmIChfLmhhcyhjYXBzLCAnZmlyc3RNYXRjaCcpKSB7XG4gICAgcmV0dXJuIGlzRmlyc3RNYXRjaFZhbGlkKCk7XG4gIH1cbiAgaWYgKF8uaGFzKGNhcHMsICdhbHdheXNNYXRjaCcpKSB7XG4gICAgcmV0dXJuIGlzQWx3YXlzTWF0Y2hWYWxpZCgpO1xuICB9XG4gIHJldHVybiBmYWxzZTtcbn1cblxuLyoqXG4gKlxuICogQHBhcmFtIHtDYXBhYmlsaXRpZXN9IG9yaWdpbmFsQ2Fwc1xuICogQHBhcmFtIHtDb25zdHJhaW50c30gZGVzaXJlZENhcENvbnN0cmFpbnRzXG4gKiBAcGFyYW0ge0FwcGl1bUxvZ2dlcn0gbG9nXG4gKiBAcmV0dXJucyB7Q2FwYWJpbGl0aWVzfVxuICovXG5mdW5jdGlvbiBmaXhDYXBzIChvcmlnaW5hbENhcHMsIGRlc2lyZWRDYXBDb25zdHJhaW50cywgbG9nKSB7XG4gIGxldCBjYXBzID0gXy5jbG9uZShvcmlnaW5hbENhcHMpO1xuXG4gIC8vIGJvb2xlYW4gY2FwYWJpbGl0aWVzIGNhbiBiZSBwYXNzZWQgaW4gYXMgc3RyaW5ncyAnZmFsc2UnIGFuZCAndHJ1ZSdcbiAgLy8gd2hpY2ggd2Ugd2FudCB0byB0cmFuc2xhdGUgaW50byBib29sZWFuIHZhbHVlc1xuICBsZXQgYm9vbGVhbkNhcHMgPSBfLmtleXMoXG4gICAgXy5waWNrQnkoZGVzaXJlZENhcENvbnN0cmFpbnRzLCAoaykgPT4gay5pc0Jvb2xlYW4gPT09IHRydWUpLFxuICApO1xuICBmb3IgKGxldCBjYXAgb2YgYm9vbGVhbkNhcHMpIHtcbiAgICBsZXQgdmFsdWUgPSBvcmlnaW5hbENhcHNbY2FwXTtcbiAgICBpZiAoXy5pc1N0cmluZyh2YWx1ZSkpIHtcbiAgICAgIHZhbHVlID0gdmFsdWUudG9Mb3dlckNhc2UoKTtcbiAgICAgIGlmICh2YWx1ZSA9PT0gJ3RydWUnIHx8IHZhbHVlID09PSAnZmFsc2UnKSB7XG4gICAgICAgIGxvZy53YXJuKFxuICAgICAgICAgIGBDYXBhYmlsaXR5ICcke2NhcH0nIGNoYW5nZWQgZnJvbSBzdHJpbmcgdG8gYm9vbGVhbi4gVGhpcyBtYXkgY2F1c2UgdW5leHBlY3RlZCBiZWhhdmlvcmAsXG4gICAgICAgICk7XG4gICAgICAgIGNhcHNbY2FwXSA9IHZhbHVlID09PSAndHJ1ZSc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gaW50IGNhcGFiaWxpdGllcyBhcmUgb2Z0ZW4gc2VudCBpbiBhcyBzdHJpbmdzIGJ5IGZyYW1ld29ya3NcbiAgbGV0IGludENhcHMgPSBfLmtleXMoXG4gICAgXy5waWNrQnkoZGVzaXJlZENhcENvbnN0cmFpbnRzLCAoaykgPT4gay5pc051bWJlciA9PT0gdHJ1ZSksXG4gICk7XG4gIGZvciAobGV0IGNhcCBvZiBpbnRDYXBzKSB7XG4gICAgbGV0IHZhbHVlID0gb3JpZ2luYWxDYXBzW2NhcF07XG4gICAgaWYgKF8uaXNTdHJpbmcodmFsdWUpKSB7XG4gICAgICB2YWx1ZSA9IHZhbHVlLnRyaW0oKTtcbiAgICAgIGxldCBuZXdWYWx1ZSA9IHBhcnNlSW50KHZhbHVlLCAxMCk7XG4gICAgICBpZiAodmFsdWUgIT09IGAke25ld1ZhbHVlfWApIHtcbiAgICAgICAgbmV3VmFsdWUgPSBwYXJzZUZsb2F0KHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIGxvZy53YXJuKFxuICAgICAgICBgQ2FwYWJpbGl0eSAnJHtjYXB9JyBjaGFuZ2VkIGZyb20gc3RyaW5nICgnJHt2YWx1ZX0nKSB0byBpbnRlZ2VyICgke25ld1ZhbHVlfSkuIFRoaXMgbWF5IGNhdXNlIHVuZXhwZWN0ZWQgYmVoYXZpb3JgLFxuICAgICAgKTtcbiAgICAgIGNhcHNbY2FwXSA9IG5ld1ZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjYXBzO1xufVxuXG5leHBvcnQge1xuICBpc1czY0NhcHMsXG4gIGZpeENhcHNcbn07XG5cbi8qKlxuICogQHR5cGVkZWYge2ltcG9ydCgnQGFwcGl1bS90eXBlcycpLkNhcGFiaWxpdGllc30gQ2FwYWJpbGl0aWVzXG4gKiBAdHlwZWRlZiB7aW1wb3J0KCdAYXBwaXVtL3R5cGVzJykuQ29uc3RyYWludHN9IENvbnN0cmFpbnRzXG4gKiBAdHlwZWRlZiB7aW1wb3J0KCdAYXBwaXVtL3R5cGVzJykuQXBwaXVtTG9nZ2VyfSBBcHBpdW1Mb2dnZXJcbiAqL1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFFQTs7QUFFQSxTQUFTQSxTQUFULENBQW9CQyxJQUFwQixFQUEwQjtFQUN4QixJQUFJLENBQUNDLGdCQUFFQyxhQUFGLENBQWdCRixJQUFoQixDQUFMLEVBQTRCO0lBQzFCLE9BQU8sS0FBUDtFQUNEOztFQUVELE1BQU1HLGlCQUFpQixHQUFHLE1BQU1GLGdCQUFFRyxPQUFGLENBQVVKLElBQUksQ0FBQ0ssVUFBZixLQUMzQixDQUFDSixnQkFBRUssT0FBRixDQUFVTixJQUFJLENBQUNLLFVBQWYsQ0FEMEIsSUFDSUosZ0JBQUVNLEtBQUYsQ0FBUVAsSUFBSSxDQUFDSyxVQUFiLEVBQXlCSixnQkFBRUMsYUFBM0IsQ0FEcEM7O0VBRUEsTUFBTU0sa0JBQWtCLEdBQUcsTUFBTVAsZ0JBQUVDLGFBQUYsQ0FBZ0JGLElBQUksQ0FBQ1MsV0FBckIsQ0FBakM7O0VBQ0EsSUFBSVIsZ0JBQUVTLEdBQUYsQ0FBTVYsSUFBTixFQUFZLFlBQVosS0FBNkJDLGdCQUFFUyxHQUFGLENBQU1WLElBQU4sRUFBWSxhQUFaLENBQWpDLEVBQTZEO0lBQzNELE9BQU9HLGlCQUFpQixNQUFNSyxrQkFBa0IsRUFBaEQ7RUFDRDs7RUFDRCxJQUFJUCxnQkFBRVMsR0FBRixDQUFNVixJQUFOLEVBQVksWUFBWixDQUFKLEVBQStCO0lBQzdCLE9BQU9HLGlCQUFpQixFQUF4QjtFQUNEOztFQUNELElBQUlGLGdCQUFFUyxHQUFGLENBQU1WLElBQU4sRUFBWSxhQUFaLENBQUosRUFBZ0M7SUFDOUIsT0FBT1Esa0JBQWtCLEVBQXpCO0VBQ0Q7O0VBQ0QsT0FBTyxLQUFQO0FBQ0Q7O0FBU0QsU0FBU0csT0FBVCxDQUFrQkMsWUFBbEIsRUFBZ0NDLHFCQUFoQyxFQUF1REMsR0FBdkQsRUFBNEQ7RUFDMUQsSUFBSWQsSUFBSSxHQUFHQyxnQkFBRWMsS0FBRixDQUFRSCxZQUFSLENBQVg7O0VBSUEsSUFBSUksV0FBVyxHQUFHZixnQkFBRWdCLElBQUYsQ0FDaEJoQixnQkFBRWlCLE1BQUYsQ0FBU0wscUJBQVQsRUFBaUNNLENBQUQsSUFBT0EsQ0FBQyxDQUFDQyxTQUFGLEtBQWdCLElBQXZELENBRGdCLENBQWxCOztFQUdBLEtBQUssSUFBSUMsR0FBVCxJQUFnQkwsV0FBaEIsRUFBNkI7SUFDM0IsSUFBSU0sS0FBSyxHQUFHVixZQUFZLENBQUNTLEdBQUQsQ0FBeEI7O0lBQ0EsSUFBSXBCLGdCQUFFc0IsUUFBRixDQUFXRCxLQUFYLENBQUosRUFBdUI7TUFDckJBLEtBQUssR0FBR0EsS0FBSyxDQUFDRSxXQUFOLEVBQVI7O01BQ0EsSUFBSUYsS0FBSyxLQUFLLE1BQVYsSUFBb0JBLEtBQUssS0FBSyxPQUFsQyxFQUEyQztRQUN6Q1IsR0FBRyxDQUFDVyxJQUFKLENBQ0csZUFBY0osR0FBSSxzRUFEckI7UUFHQXJCLElBQUksQ0FBQ3FCLEdBQUQsQ0FBSixHQUFZQyxLQUFLLEtBQUssTUFBdEI7TUFDRDtJQUNGO0VBQ0Y7O0VBR0QsSUFBSUksT0FBTyxHQUFHekIsZ0JBQUVnQixJQUFGLENBQ1poQixnQkFBRWlCLE1BQUYsQ0FBU0wscUJBQVQsRUFBaUNNLENBQUQsSUFBT0EsQ0FBQyxDQUFDUSxRQUFGLEtBQWUsSUFBdEQsQ0FEWSxDQUFkOztFQUdBLEtBQUssSUFBSU4sR0FBVCxJQUFnQkssT0FBaEIsRUFBeUI7SUFDdkIsSUFBSUosS0FBSyxHQUFHVixZQUFZLENBQUNTLEdBQUQsQ0FBeEI7O0lBQ0EsSUFBSXBCLGdCQUFFc0IsUUFBRixDQUFXRCxLQUFYLENBQUosRUFBdUI7TUFDckJBLEtBQUssR0FBR0EsS0FBSyxDQUFDTSxJQUFOLEVBQVI7TUFDQSxJQUFJQyxRQUFRLEdBQUdDLFFBQVEsQ0FBQ1IsS0FBRCxFQUFRLEVBQVIsQ0FBdkI7O01BQ0EsSUFBSUEsS0FBSyxLQUFNLEdBQUVPLFFBQVMsRUFBMUIsRUFBNkI7UUFDM0JBLFFBQVEsR0FBR0UsVUFBVSxDQUFDVCxLQUFELENBQXJCO01BQ0Q7O01BQ0RSLEdBQUcsQ0FBQ1csSUFBSixDQUNHLGVBQWNKLEdBQUksMkJBQTBCQyxLQUFNLGtCQUFpQk8sUUFBUyx1Q0FEL0U7TUFHQTdCLElBQUksQ0FBQ3FCLEdBQUQsQ0FBSixHQUFZUSxRQUFaO0lBQ0Q7RUFDRjs7RUFFRCxPQUFPN0IsSUFBUDtBQUNEIn0=
|
package/build/lib/index.js
CHANGED
|
@@ -139,4 +139,4 @@ const {
|
|
|
139
139
|
DEFAULT_WS_PATHNAME_PREFIX
|
|
140
140
|
} = ws;
|
|
141
141
|
exports.DEFAULT_WS_PATHNAME_PREFIX = DEFAULT_WS_PATHNAME_PREFIX;
|
|
142
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
142
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCIiwiY29uZmlnIiwiY2FuY2VsbGF0aW9uIiwiQmFzZURyaXZlciIsInJvdXRlQ29uZmlndXJpbmdGdW5jdGlvbiIsImVycm9ycyIsImlzRXJyb3JUeXBlIiwiZXJyb3JGcm9tTUpTT05XUFN0YXR1c0NvZGUiLCJlcnJvckZyb21XM0NKc29uQ29kZSIsIkFMTF9DT01NQU5EUyIsIk1FVEhPRF9NQVAiLCJyb3V0ZVRvQ29tbWFuZE5hbWUiLCJOT19TRVNTSU9OX0lEX0NPTU1BTkRTIiwiaXNTZXNzaW9uQ29tbWFuZCIsImRldGVybWluZVByb3RvY29sIiwiQ1JFQVRFX1NFU1NJT05fQ09NTUFORCIsIkRFTEVURV9TRVNTSU9OX0NPTU1BTkQiLCJHRVRfU1RBVFVTX0NPTU1BTkQiLCJwcm90b2NvbCIsIlNUQVRJQ19ESVIiLCJzdGF0aWNJbmRleCIsInNlcnZlciIsIm5vcm1hbGl6ZUJhc2VQYXRoIiwic2VydmVySW5kZXgiLCJKV1Byb3h5IiwicHJveHlJbmRleCIsImNvZGVzIiwic3RhdHVzQ29kZXMiLCJnZXRTdW1tYXJ5QnlDb2RlIiwic3RhdHVzSW5kZXgiLCJwcm9jZXNzQ2FwYWJpbGl0aWVzIiwiaXNTdGFuZGFyZENhcCIsInZhbGlkYXRlQ2FwcyIsImNhcHMiLCJERUZBVUxUX1dTX1BBVEhOQU1FX1BSRUZJWCIsIndzIl0sInNvdXJjZXMiOlsiLi4vLi4vbGliL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgQiBmcm9tICdibHVlYmlyZCc7XG5cbkIuY29uZmlnKHtcbiAgY2FuY2VsbGF0aW9uOiB0cnVlLFxufSk7XG5cbi8vIEJhc2VEcml2ZXIgZXhwb3J0c1xuaW1wb3J0IHsgQmFzZURyaXZlciB9IGZyb20gJy4vYmFzZWRyaXZlci9kcml2ZXInO1xuZXhwb3J0IHsgRHJpdmVyQ29yZSB9IGZyb20gJy4vYmFzZWRyaXZlci9jb3JlJztcbmltcG9ydCB7IERldmljZVNldHRpbmdzIH0gZnJvbSAnLi9iYXNlZHJpdmVyL2RldmljZS1zZXR0aW5ncyc7XG5cbmV4cG9ydCB7IEJhc2VEcml2ZXIsIERldmljZVNldHRpbmdzIH07XG5leHBvcnQgZGVmYXVsdCBCYXNlRHJpdmVyO1xuXG5cbi8vIE1KU09OV1AgZXhwb3J0c1xuaW1wb3J0ICogYXMgcHJvdG9jb2wgZnJvbSAnLi9wcm90b2NvbCc7XG5pbXBvcnQge1xuICBERUZBVUxUX0JBU0VfUEFUSCwgUFJPVE9DT0xTXG59IGZyb20gJy4vY29uc3RhbnRzJztcblxuY29uc3Qge1xuICByb3V0ZUNvbmZpZ3VyaW5nRnVuY3Rpb24sIGVycm9ycywgaXNFcnJvclR5cGUsXG4gIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlLCBlcnJvckZyb21XM0NKc29uQ29kZSwgQUxMX0NPTU1BTkRTLCBNRVRIT0RfTUFQLFxuICByb3V0ZVRvQ29tbWFuZE5hbWUsIE5PX1NFU1NJT05fSURfQ09NTUFORFMsIGlzU2Vzc2lvbkNvbW1hbmQsXG4gIGRldGVybWluZVByb3RvY29sLCBDUkVBVEVfU0VTU0lPTl9DT01NQU5ELFxuICBERUxFVEVfU0VTU0lPTl9DT01NQU5ELCBHRVRfU1RBVFVTX0NPTU1BTkQsXG59ID0gcHJvdG9jb2w7XG5cbmV4cG9ydCB7XG4gIHJvdXRlQ29uZmlndXJpbmdGdW5jdGlvbiwgZXJyb3JzLCBpc0Vycm9yVHlwZSwgUFJPVE9DT0xTLFxuICBlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZSwgZXJyb3JGcm9tVzNDSnNvbkNvZGUsIGRldGVybWluZVByb3RvY29sLFxuICBlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZSBhcyBlcnJvckZyb21Db2RlLCBBTExfQ09NTUFORFMsIE1FVEhPRF9NQVAsXG4gIHJvdXRlVG9Db21tYW5kTmFtZSwgTk9fU0VTU0lPTl9JRF9DT01NQU5EUywgaXNTZXNzaW9uQ29tbWFuZCxcbiAgREVGQVVMVF9CQVNFX1BBVEgsIENSRUFURV9TRVNTSU9OX0NPTU1BTkQsXG4gIERFTEVURV9TRVNTSU9OX0NPTU1BTkQsIEdFVF9TVEFUVVNfQ09NTUFORCxcbn07XG5cbi8vIEV4cHJlc3MgZXhwb3J0c1xuaW1wb3J0ICogYXMgc3RhdGljSW5kZXggZnJvbSAnLi9leHByZXNzL3N0YXRpYyc7XG5jb25zdCB7IFNUQVRJQ19ESVIgfSA9IHN0YXRpY0luZGV4O1xuZXhwb3J0IHsgU1RBVElDX0RJUiB9O1xuXG5pbXBvcnQgKiBhcyBzZXJ2ZXJJbmRleCBmcm9tICcuL2V4cHJlc3Mvc2VydmVyJztcbmNvbnN0IHsgc2VydmVyLCBub3JtYWxpemVCYXNlUGF0aCB9ID0gc2VydmVySW5kZXg7XG5leHBvcnQgeyBzZXJ2ZXIsIG5vcm1hbGl6ZUJhc2VQYXRoIH07XG5cbi8vIGpzb253cC1wcm94eSBleHBvcnRzXG5pbXBvcnQgKiBhcyBwcm94eUluZGV4IGZyb20gJy4vanNvbndwLXByb3h5L3Byb3h5JztcbmNvbnN0IHsgSldQcm94eSB9ID0gcHJveHlJbmRleDtcbmV4cG9ydCB7IEpXUHJveHkgfTtcblxuLy8ganNvbndwLXN0YXR1cyBleHBvcnRzXG5pbXBvcnQgKiBhcyBzdGF0dXNJbmRleCBmcm9tICcuL2pzb253cC1zdGF0dXMvc3RhdHVzJztcbmNvbnN0IHsgY29kZXM6IHN0YXR1c0NvZGVzLCBnZXRTdW1tYXJ5QnlDb2RlIH0gPSBzdGF0dXNJbmRleDtcbmV4cG9ydCB7IHN0YXR1c0NvZGVzLCBnZXRTdW1tYXJ5QnlDb2RlIH07XG5cbi8vIFczQyBjYXBhYmlsaXRpZXMgcGFyc2VyXG5pbXBvcnQgKiBhcyBjYXBzIGZyb20gJy4vYmFzZWRyaXZlci9jYXBhYmlsaXRpZXMnO1xuY29uc3QgeyBwcm9jZXNzQ2FwYWJpbGl0aWVzLCBpc1N0YW5kYXJkQ2FwLCB2YWxpZGF0ZUNhcHMgfSA9IGNhcHM7XG5leHBvcnQgeyBwcm9jZXNzQ2FwYWJpbGl0aWVzLCBpc1N0YW5kYXJkQ2FwLCB2YWxpZGF0ZUNhcHMgfTtcblxuLy8gV2ViIHNvY2tldCBoZWxwZXJzXG5pbXBvcnQgKiBhcyB3cyBmcm9tICcuL2V4cHJlc3Mvd2Vic29ja2V0JztcbmNvbnN0IHsgREVGQVVMVF9XU19QQVRITkFNRV9QUkVGSVggfSA9IHdzO1xuZXhwb3J0IHsgREVGQVVMVF9XU19QQVRITkFNRV9QUkVGSVggfTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUE7O0FBT0E7O0FBQ0E7O0FBQ0E7O0FBT0E7O0FBQ0E7O0FBc0JBOztBQUlBOztBQUtBOztBQUtBOztBQUtBOztBQUtBOzs7Ozs7QUE3REFBLGtCQUFFQyxNQUFGLENBQVM7RUFDUEMsWUFBWSxFQUFFO0FBRFAsQ0FBVDs7ZUFVZUMsa0I7O0FBU2YsTUFBTTtFQUNKQyx3QkFESTtFQUNzQkMsTUFEdEI7RUFDOEJDLFdBRDlCO0VBRUpDLDBCQUZJO0VBRXdCQyxvQkFGeEI7RUFFOENDLFlBRjlDO0VBRTREQyxVQUY1RDtFQUdKQyxrQkFISTtFQUdnQkMsc0JBSGhCO0VBR3dDQyxnQkFIeEM7RUFJSkMsaUJBSkk7RUFJZUMsc0JBSmY7RUFLSkMsc0JBTEk7RUFLb0JDO0FBTHBCLElBTUZDLFFBTko7Ozs7Ozs7Ozs7Ozs7OztBQW1CQSxNQUFNO0VBQUVDO0FBQUYsSUFBaUJDLFdBQXZCOztBQUlBLE1BQU07RUFBRUMsTUFBRjtFQUFVQztBQUFWLElBQWdDQyxXQUF0Qzs7O0FBS0EsTUFBTTtFQUFFQztBQUFGLElBQWNDLFVBQXBCOztBQUtBLE1BQU07RUFBRUMsS0FBSyxFQUFFQyxXQUFUO0VBQXNCQztBQUF0QixJQUEyQ0MsV0FBakQ7OztBQUtBLE1BQU07RUFBRUMsbUJBQUY7RUFBdUJDLGFBQXZCO0VBQXNDQztBQUF0QyxJQUF1REMsSUFBN0Q7Ozs7QUFLQSxNQUFNO0VBQUVDO0FBQUYsSUFBaUNDLEVBQXZDIn0=
|
|
@@ -238,4 +238,4 @@ class ProtocolConverter {
|
|
|
238
238
|
|
|
239
239
|
var _default = ProtocolConverter;
|
|
240
240
|
exports.default = _default;
|
|
241
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9qc29ud3AtcHJveHkvcHJvdG9jb2wtY29udmVydGVyLmpzIl0sIm5hbWVzIjpbIkNPTU1BTkRfVVJMU19DT05GTElDVFMiLCJjb21tYW5kTmFtZXMiLCJqc29ud3BDb252ZXJ0ZXIiLCJ1cmwiLCJyZXBsYWNlIiwiaW5jbHVkZXMiLCJ3M2NDb252ZXJ0ZXIiLCJ0ZXN0IiwidzNjVXJsIiwidzNjUHJvcGVydHlSZWdleCIsImpzb253cFVybCIsIk1KU09OV1AiLCJXM0MiLCJQUk9UT0NPTFMiLCJERUZBVUxUX0xPRyIsImxvZ2dlciIsImdldExvZ2dlciIsIlByb3RvY29sQ29udmVydGVyIiwiY29uc3RydWN0b3IiLCJwcm94eUZ1bmMiLCJsb2ciLCJfZG93bnN0cmVhbVByb3RvY29sIiwiX2xvZyIsImRvd25zdHJlYW1Qcm90b2NvbCIsInZhbHVlIiwiZ2V0VGltZW91dFJlcXVlc3RPYmplY3RzIiwiYm9keSIsIl8iLCJoYXMiLCJ0eXBlVG9XM0MiLCJ4IiwidHlwZSIsIm1zIiwidHlwZVRvSlNPTldQIiwidG9QYWlycyIsImZpbHRlciIsInBhaXIiLCJtYXAiLCJwcm94eVNldFRpbWVvdXRzIiwibWV0aG9kIiwicmVzcG9uc2UiLCJyZXNCb2R5IiwidGltZW91dFJlcXVlc3RPYmplY3RzIiwiZGVidWciLCJKU09OIiwic3RyaW5naWZ5IiwidGltZW91dE9iaiIsInN0YXR1c0NvZGUiLCJwcm94eVNldFdpbmRvdyIsImJvZHlPYmoiLCJ1dGlsIiwic2FmZUpzb25QYXJzZSIsImlzUGxhaW5PYmplY3QiLCJuYW1lIiwiaGFuZGxlIiwicHJveHlTZXRWYWx1ZSIsImhhc1ZhbHVlIiwidGV4dCIsImlzU3RyaW5nIiwiaXNBcnJheSIsImpvaW4iLCJPYmplY3QiLCJhc3NpZ24iLCJwcm94eVNldEZyYW1lIiwiaWQiLCJNSlNPTldQX0VMRU1FTlRfS0VZIiwiVzNDX0VMRU1FTlRfS0VZIiwicHJveHlQZXJmb3JtQWN0aW9ucyIsInByb3h5UmVsZWFzZUFjdGlvbnMiLCJjb252ZXJ0QW5kUHJveHkiLCJjb21tYW5kTmFtZSIsInJld3JpdHRlblVybCIsImluZm8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSU8sTUFBTUEsc0JBQXNCLEdBQUcsQ0FDcEM7QUFDRUMsRUFBQUEsWUFBWSxFQUFFLENBQUMsU0FBRCxFQUFZLGNBQVosQ0FEaEI7QUFFRUMsRUFBQUEsZUFBZSxFQUFHQyxHQUFELElBQVNBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZLGFBQVosRUFDeEJELEdBQUcsQ0FBQ0UsUUFBSixDQUFhLE9BQWIsSUFBd0IsZ0JBQXhCLEdBQTJDLFVBRG5CLENBRjVCO0FBSUVDLEVBQUFBLFlBQVksRUFBR0gsR0FBRCxJQUFTQSxHQUFHLENBQUNDLE9BQUosQ0FBWSxhQUFaLEVBQ3JCRCxHQUFHLENBQUNFLFFBQUosQ0FBYSxPQUFiLElBQXdCLGdCQUF4QixHQUEyQyxlQUR0QjtBQUp6QixDQURvQyxFQVFwQztBQUNFSixFQUFBQSxZQUFZLEVBQUUsQ0FBQyxzQkFBRCxDQURoQjtBQUVFQyxFQUFBQSxlQUFlLEVBQUdDLEdBQUQsSUFBU0EsR0FBRyxDQUFDQyxPQUFKLENBQVksaUNBQVosRUFDeEIsZ0JBRHdCLENBRjVCO0FBSUVFLEVBQUFBLFlBQVksRUFBR0gsR0FBRCxJQUFTQSxHQUFHLENBQUNDLE9BQUosQ0FBWSx1QkFBWixFQUNyQix3QkFEcUI7QUFKekIsQ0FSb0MsRUFlcEM7QUFDRUgsRUFBQUEsWUFBWSxFQUFFLENBQUMsa0JBQUQsRUFBcUIsaUJBQXJCLENBRGhCOztBQUVFQyxFQUFBQSxlQUFlLENBQUVDLEdBQUYsRUFBTztBQUNwQixXQUFPLFlBQVlJLElBQVosQ0FBaUJKLEdBQWpCLElBQ0hBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZLFdBQVosRUFBeUIsZ0JBQXpCLENBREcsR0FFSEQsR0FBRyxDQUFDQyxPQUFKLENBQVksdUJBQVosRUFBcUMsa0JBQXJDLENBRko7QUFHRCxHQU5IOztBQU9FRSxFQUFBQSxZQUFZLENBQUVILEdBQUYsRUFBTztBQUNqQixXQUFPLG1CQUFtQkksSUFBbkIsQ0FBd0JKLEdBQXhCLElBQ0hBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZLGtCQUFaLEVBQWdDLFNBQWhDLENBREcsR0FFSEQsR0FBRyxDQUFDQyxPQUFKLENBQVksbUJBQVosRUFBaUMsaUJBQWpDLENBRko7QUFHRDs7QUFYSCxDQWZvQyxFQTRCcEM7QUFDRUgsRUFBQUEsWUFBWSxFQUFFLENBQUMsYUFBRCxDQURoQjtBQUVFQyxFQUFBQSxlQUFlLEVBQUdNLE1BQUQsSUFBWTtBQUMzQixVQUFNQyxnQkFBZ0IsR0FBRyx1Q0FBekI7QUFDQSxVQUFNQyxTQUFTLEdBQUdGLE1BQU0sQ0FBQ0osT0FBUCxDQUFlSyxnQkFBZixFQUFpQywwQkFBakMsQ0FBbEI7QUFDQSxXQUFPQyxTQUFQO0FBQ0QsR0FOSDtBQU9FSixFQUFBQSxZQUFZLEVBQUdJLFNBQUQsSUFBZUE7QUFQL0IsQ0E1Qm9DLENBQS9COztBQXNDUCxNQUFNO0FBQUNDLEVBQUFBLE9BQUQ7QUFBVUMsRUFBQUE7QUFBVixJQUFpQkMsb0JBQXZCOztBQUNBLE1BQU1DLFdBQVcsR0FBR0MsZ0JBQU9DLFNBQVAsQ0FBaUIsb0JBQWpCLENBQXBCOztBQUdBLE1BQU1DLGlCQUFOLENBQXdCO0FBQ3RCQyxFQUFBQSxXQUFXLENBQUVDLFNBQUYsRUFBYUMsR0FBRyxHQUFHLElBQW5CLEVBQXlCO0FBQ2xDLFNBQUtELFNBQUwsR0FBaUJBLFNBQWpCO0FBQ0EsU0FBS0UsbUJBQUwsR0FBMkIsSUFBM0I7QUFDQSxTQUFLQyxJQUFMLEdBQVlGLEdBQVo7QUFDRDs7QUFFTSxNQUFIQSxHQUFHLEdBQUk7QUFBQTs7QUFDVCx5QkFBTyxLQUFLRSxJQUFaLG1EQUFvQlIsV0FBcEI7QUFDRDs7QUFFcUIsTUFBbEJTLGtCQUFrQixDQUFFQyxLQUFGLEVBQVM7QUFDN0IsU0FBS0gsbUJBQUwsR0FBMkJHLEtBQTNCO0FBQ0Q7O0FBRXFCLE1BQWxCRCxrQkFBa0IsR0FBSTtBQUN4QixXQUFPLEtBQUtGLG1CQUFaO0FBQ0Q7O0FBVURJLEVBQUFBLHdCQUF3QixDQUFFQyxJQUFGLEVBQVE7QUFDOUIsUUFBSSxLQUFLSCxrQkFBTCxLQUE0QlgsR0FBNUIsSUFBbUNlLGdCQUFFQyxHQUFGLENBQU1GLElBQU4sRUFBWSxJQUFaLENBQW5DLElBQXdEQyxnQkFBRUMsR0FBRixDQUFNRixJQUFOLEVBQVksTUFBWixDQUE1RCxFQUFpRjtBQUMvRSxZQUFNRyxTQUFTLEdBQUlDLENBQUQsSUFBT0EsQ0FBQyxLQUFLLFdBQU4sR0FBb0IsVUFBcEIsR0FBaUNBLENBQTFEOztBQUNBLGFBQU8sQ0FBQztBQUNOLFNBQUNELFNBQVMsQ0FBQ0gsSUFBSSxDQUFDSyxJQUFOLENBQVYsR0FBd0JMLElBQUksQ0FBQ007QUFEdkIsT0FBRCxDQUFQO0FBR0Q7O0FBRUQsUUFBSSxLQUFLVCxrQkFBTCxLQUE0QlosT0FBNUIsS0FBd0MsQ0FBQ2dCLGdCQUFFQyxHQUFGLENBQU1GLElBQU4sRUFBWSxJQUFaLENBQUQsSUFBc0IsQ0FBQ0MsZ0JBQUVDLEdBQUYsQ0FBTUYsSUFBTixFQUFZLE1BQVosQ0FBL0QsQ0FBSixFQUF5RjtBQUN2RixZQUFNTyxZQUFZLEdBQUlILENBQUQsSUFBT0EsQ0FBQyxLQUFLLFVBQU4sR0FBbUIsV0FBbkIsR0FBaUNBLENBQTdEOztBQUNBLGFBQU9ILGdCQUFFTyxPQUFGLENBQVVSLElBQVYsRUFFSlMsTUFGSSxDQUVJQyxJQUFELElBQVUscUJBQXFCN0IsSUFBckIsQ0FBMkIsR0FBRTZCLElBQUksQ0FBQyxDQUFELENBQUksRUFBckMsQ0FGYixFQUdKQyxHQUhJLENBR0EsVUFBVUQsSUFBVixFQUFnQjtBQUNuQixlQUFPO0FBQ0xMLFVBQUFBLElBQUksRUFBRUUsWUFBWSxDQUFDRyxJQUFJLENBQUMsQ0FBRCxDQUFMLENBRGI7QUFFTEosVUFBQUEsRUFBRSxFQUFFSSxJQUFJLENBQUMsQ0FBRDtBQUZILFNBQVA7QUFJRCxPQVJJLENBQVA7QUFTRDs7QUFFRCxXQUFPLENBQUNWLElBQUQsQ0FBUDtBQUNEOztBQVFxQixRQUFoQlksZ0JBQWdCLENBQUVuQyxHQUFGLEVBQU9vQyxNQUFQLEVBQWViLElBQWYsRUFBcUI7QUFDekMsUUFBSWMsUUFBSixFQUFjQyxPQUFkO0FBRUEsVUFBTUMscUJBQXFCLEdBQUcsS0FBS2pCLHdCQUFMLENBQThCQyxJQUE5QixDQUE5QjtBQUNBLFNBQUtOLEdBQUwsQ0FBU3VCLEtBQVQsQ0FBZ0Isd0RBQXVEQyxJQUFJLENBQUNDLFNBQUwsQ0FBZUgscUJBQWYsQ0FBc0MsRUFBN0c7O0FBQ0EsU0FBSyxNQUFNSSxVQUFYLElBQXlCSixxQkFBekIsRUFBZ0Q7QUFDOUMsT0FBQ0YsUUFBRCxFQUFXQyxPQUFYLElBQXNCLE1BQU0sS0FBS3RCLFNBQUwsQ0FBZWhCLEdBQWYsRUFBb0JvQyxNQUFwQixFQUE0Qk8sVUFBNUIsQ0FBNUI7O0FBR0EsVUFBSSxLQUFLdkIsa0JBQUwsS0FBNEJaLE9BQWhDLEVBQXlDO0FBQ3ZDLGVBQU8sQ0FBQzZCLFFBQUQsRUFBV0MsT0FBWCxDQUFQO0FBQ0Q7O0FBR0QsVUFBSUQsUUFBUSxDQUFDTyxVQUFULElBQXVCLEdBQTNCLEVBQWdDO0FBQzlCLGVBQU8sQ0FBQ1AsUUFBRCxFQUFXQyxPQUFYLENBQVA7QUFDRDtBQUdGOztBQUNELFdBQU8sQ0FBQ0QsUUFBRCxFQUFXQyxPQUFYLENBQVA7QUFDRDs7QUFFbUIsUUFBZE8sY0FBYyxDQUFFN0MsR0FBRixFQUFPb0MsTUFBUCxFQUFlYixJQUFmLEVBQXFCO0FBQ3ZDLFVBQU11QixPQUFPLEdBQUdDLGNBQUtDLGFBQUwsQ0FBbUJ6QixJQUFuQixDQUFoQjs7QUFDQSxRQUFJQyxnQkFBRXlCLGFBQUYsQ0FBZ0JILE9BQWhCLENBQUosRUFBOEI7QUFDNUIsVUFBSSxLQUFLMUIsa0JBQUwsS0FBNEJYLEdBQTVCLElBQW1DZSxnQkFBRUMsR0FBRixDQUFNcUIsT0FBTixFQUFlLE1BQWYsQ0FBbkMsSUFBNkQsQ0FBQ3RCLGdCQUFFQyxHQUFGLENBQU1xQixPQUFOLEVBQWUsUUFBZixDQUFsRSxFQUE0RjtBQUMxRixhQUFLN0IsR0FBTCxDQUFTdUIsS0FBVCxDQUFnQix3QkFBdUJNLE9BQU8sQ0FBQ0ksSUFBSywrQkFBcEQ7QUFDQSxlQUFPLE1BQU0sS0FBS2xDLFNBQUwsQ0FBZWhCLEdBQWYsRUFBb0JvQyxNQUFwQixFQUE0QixFQUN2QyxHQUFHVSxPQURvQztBQUV2Q0ssVUFBQUEsTUFBTSxFQUFFTCxPQUFPLENBQUNJO0FBRnVCLFNBQTVCLENBQWI7QUFJRDs7QUFDRCxVQUFJLEtBQUs5QixrQkFBTCxLQUE0QlosT0FBNUIsSUFBdUNnQixnQkFBRUMsR0FBRixDQUFNcUIsT0FBTixFQUFlLFFBQWYsQ0FBdkMsSUFBbUUsQ0FBQ3RCLGdCQUFFQyxHQUFGLENBQU1xQixPQUFOLEVBQWUsTUFBZixDQUF4RSxFQUFnRztBQUM5RixhQUFLN0IsR0FBTCxDQUFTdUIsS0FBVCxDQUFnQiwwQkFBeUJNLE9BQU8sQ0FBQ0ssTUFBTyxnQ0FBeEQ7QUFDQSxlQUFPLE1BQU0sS0FBS25DLFNBQUwsQ0FBZWhCLEdBQWYsRUFBb0JvQyxNQUFwQixFQUE0QixFQUN2QyxHQUFHVSxPQURvQztBQUV2Q0ksVUFBQUEsSUFBSSxFQUFFSixPQUFPLENBQUNLO0FBRnlCLFNBQTVCLENBQWI7QUFJRDtBQUNGOztBQUVELFdBQU8sTUFBTSxLQUFLbkMsU0FBTCxDQUFlaEIsR0FBZixFQUFvQm9DLE1BQXBCLEVBQTRCYixJQUE1QixDQUFiO0FBQ0Q7O0FBRWtCLFFBQWI2QixhQUFhLENBQUVwRCxHQUFGLEVBQU9vQyxNQUFQLEVBQWViLElBQWYsRUFBcUI7QUFDdEMsVUFBTXVCLE9BQU8sR0FBR0MsY0FBS0MsYUFBTCxDQUFtQnpCLElBQW5CLENBQWhCOztBQUNBLFFBQUlDLGdCQUFFeUIsYUFBRixDQUFnQkgsT0FBaEIsTUFBNkJDLGNBQUtNLFFBQUwsQ0FBY1AsT0FBTyxDQUFDUSxJQUF0QixLQUErQlAsY0FBS00sUUFBTCxDQUFjUCxPQUFPLENBQUN6QixLQUF0QixDQUE1RCxDQUFKLEVBQStGO0FBQzdGLFVBQUk7QUFBQ2lDLFFBQUFBLElBQUQ7QUFBT2pDLFFBQUFBO0FBQVAsVUFBZ0J5QixPQUFwQjs7QUFDQSxVQUFJQyxjQUFLTSxRQUFMLENBQWNDLElBQWQsS0FBdUIsQ0FBQ1AsY0FBS00sUUFBTCxDQUFjaEMsS0FBZCxDQUE1QixFQUFrRDtBQUNoREEsUUFBQUEsS0FBSyxHQUFHRyxnQkFBRStCLFFBQUYsQ0FBV0QsSUFBWCxJQUNKLENBQUMsR0FBR0EsSUFBSixDQURJLEdBRUg5QixnQkFBRWdDLE9BQUYsQ0FBVUYsSUFBVixJQUFrQkEsSUFBbEIsR0FBeUIsRUFGOUI7QUFHQSxhQUFLckMsR0FBTCxDQUFTdUIsS0FBVCxDQUFnQiwwQkFBeUJDLElBQUksQ0FBQ0MsU0FBTCxDQUFlckIsS0FBZixDQUFzQiw2QkFBL0Q7QUFDRCxPQUxELE1BS08sSUFBSSxDQUFDMEIsY0FBS00sUUFBTCxDQUFjQyxJQUFkLENBQUQsSUFBd0JQLGNBQUtNLFFBQUwsQ0FBY2hDLEtBQWQsQ0FBNUIsRUFBa0Q7QUFDdkRpQyxRQUFBQSxJQUFJLEdBQUc5QixnQkFBRWdDLE9BQUYsQ0FBVW5DLEtBQVYsSUFDSEEsS0FBSyxDQUFDb0MsSUFBTixDQUFXLEVBQVgsQ0FERyxHQUVGakMsZ0JBQUUrQixRQUFGLENBQVdsQyxLQUFYLElBQW9CQSxLQUFwQixHQUE0QixFQUZqQztBQUdBLGFBQUtKLEdBQUwsQ0FBU3VCLEtBQVQsQ0FBZ0IseUJBQXdCQyxJQUFJLENBQUNDLFNBQUwsQ0FBZVksSUFBZixDQUFxQiw2QkFBN0Q7QUFDRDs7QUFDRCxhQUFPLE1BQU0sS0FBS3RDLFNBQUwsQ0FBZWhCLEdBQWYsRUFBb0JvQyxNQUFwQixFQUE0QnNCLE1BQU0sQ0FBQ0MsTUFBUCxDQUFjLEVBQWQsRUFBa0JiLE9BQWxCLEVBQTJCO0FBQ2xFUSxRQUFBQSxJQURrRTtBQUVsRWpDLFFBQUFBO0FBRmtFLE9BQTNCLENBQTVCLENBQWI7QUFJRDs7QUFFRCxXQUFPLE1BQU0sS0FBS0wsU0FBTCxDQUFlaEIsR0FBZixFQUFvQm9DLE1BQXBCLEVBQTRCYixJQUE1QixDQUFiO0FBQ0Q7O0FBRWtCLFFBQWJxQyxhQUFhLENBQUU1RCxHQUFGLEVBQU9vQyxNQUFQLEVBQWViLElBQWYsRUFBcUI7QUFDdEMsVUFBTXVCLE9BQU8sR0FBR0MsY0FBS0MsYUFBTCxDQUFtQnpCLElBQW5CLENBQWhCOztBQUNBLFdBQU9DLGdCQUFFQyxHQUFGLENBQU1xQixPQUFOLEVBQWUsSUFBZixLQUF3QnRCLGdCQUFFeUIsYUFBRixDQUFnQkgsT0FBTyxDQUFDZSxFQUF4QixDQUF4QixHQUNILE1BQU0sS0FBSzdDLFNBQUwsQ0FBZWhCLEdBQWYsRUFBb0JvQyxNQUFwQixFQUE0QixFQUNsQyxHQUFHVSxPQUQrQjtBQUVsQ2UsTUFBQUEsRUFBRSxFQUFFLDRCQUFjZixPQUFPLENBQUNlLEVBQXRCLEVBQTBCQyw4QkFBMUIsRUFBK0NDLDBCQUEvQztBQUY4QixLQUE1QixDQURILEdBS0gsTUFBTSxLQUFLL0MsU0FBTCxDQUFlaEIsR0FBZixFQUFvQm9DLE1BQXBCLEVBQTRCYixJQUE1QixDQUxWO0FBTUQ7O0FBRXdCLFFBQW5CeUMsbUJBQW1CLENBQUVoRSxHQUFGLEVBQU9vQyxNQUFQLEVBQWViLElBQWYsRUFBcUI7QUFDNUMsVUFBTXVCLE9BQU8sR0FBR0MsY0FBS0MsYUFBTCxDQUFtQnpCLElBQW5CLENBQWhCOztBQUNBLFdBQU9DLGdCQUFFeUIsYUFBRixDQUFnQkgsT0FBaEIsSUFDSCxNQUFNLEtBQUs5QixTQUFMLENBQWVoQixHQUFmLEVBQW9Cb0MsTUFBcEIsRUFBNEIsNEJBQWNVLE9BQWQsRUFBdUJnQiw4QkFBdkIsRUFBNENDLDBCQUE1QyxDQUE1QixDQURILEdBRUgsTUFBTSxLQUFLL0MsU0FBTCxDQUFlaEIsR0FBZixFQUFvQm9DLE1BQXBCLEVBQTRCYixJQUE1QixDQUZWO0FBR0Q7O0FBRXdCLFFBQW5CMEMsbUJBQW1CLENBQUVqRSxHQUFGLEVBQU9vQyxNQUFQLEVBQWU7QUFDdEMsV0FBTyxNQUFNLEtBQUtwQixTQUFMLENBQWVoQixHQUFmLEVBQW9Cb0MsTUFBcEIsQ0FBYjtBQUNEOztBQVlvQixRQUFmOEIsZUFBZSxDQUFFQyxXQUFGLEVBQWVuRSxHQUFmLEVBQW9Cb0MsTUFBcEIsRUFBNEJiLElBQTVCLEVBQWtDO0FBQ3JELFFBQUksQ0FBQyxLQUFLSCxrQkFBVixFQUE4QjtBQUM1QixhQUFPLE1BQU0sS0FBS0osU0FBTCxDQUFlaEIsR0FBZixFQUFvQm9DLE1BQXBCLEVBQTRCYixJQUE1QixDQUFiO0FBQ0Q7O0FBR0QsWUFBUTRDLFdBQVI7QUFDRSxXQUFLLFVBQUw7QUFDRSxlQUFPLE1BQU0sS0FBS2hDLGdCQUFMLENBQXNCbkMsR0FBdEIsRUFBMkJvQyxNQUEzQixFQUFtQ2IsSUFBbkMsQ0FBYjs7QUFDRixXQUFLLFdBQUw7QUFDRSxlQUFPLE1BQU0sS0FBS3NCLGNBQUwsQ0FBb0I3QyxHQUFwQixFQUF5Qm9DLE1BQXpCLEVBQWlDYixJQUFqQyxDQUFiOztBQUNGLFdBQUssVUFBTDtBQUNFLGVBQU8sTUFBTSxLQUFLNkIsYUFBTCxDQUFtQnBELEdBQW5CLEVBQXdCb0MsTUFBeEIsRUFBZ0NiLElBQWhDLENBQWI7O0FBQ0YsV0FBSyxnQkFBTDtBQUNFLGVBQU8sTUFBTSxLQUFLeUMsbUJBQUwsQ0FBeUJoRSxHQUF6QixFQUE4Qm9DLE1BQTlCLEVBQXNDYixJQUF0QyxDQUFiOztBQUNGLFdBQUssZ0JBQUw7QUFDRSxlQUFPLE1BQU0sS0FBSzBDLG1CQUFMLENBQXlCakUsR0FBekIsRUFBOEJvQyxNQUE5QixFQUFzQ2IsSUFBdEMsQ0FBYjs7QUFDRixXQUFLLFVBQUw7QUFDRSxlQUFPLE1BQU0sS0FBS3FDLGFBQUwsQ0FBbUI1RCxHQUFuQixFQUF3Qm9DLE1BQXhCLEVBQWdDYixJQUFoQyxDQUFiOztBQUNGO0FBQ0U7QUFkSjs7QUFrQkEsU0FBSyxNQUFNO0FBQUN6QixNQUFBQSxZQUFEO0FBQWVDLE1BQUFBLGVBQWY7QUFBZ0NJLE1BQUFBO0FBQWhDLEtBQVgsSUFBNEROLHNCQUE1RCxFQUFvRjtBQUNsRixVQUFJLENBQUNDLFlBQVksQ0FBQ0ksUUFBYixDQUFzQmlFLFdBQXRCLENBQUwsRUFBeUM7QUFDdkM7QUFDRDs7QUFFRCxZQUFNQyxZQUFZLEdBQUcsS0FBS2hELGtCQUFMLEtBQTRCWixPQUE1QixHQUNqQlQsZUFBZSxDQUFDQyxHQUFELENBREUsR0FFakJHLFlBQVksQ0FBQ0gsR0FBRCxDQUZoQjs7QUFHQSxVQUFJb0UsWUFBWSxLQUFLcEUsR0FBckIsRUFBMEI7QUFDeEIsYUFBS2lCLEdBQUwsQ0FBU3VCLEtBQVQsQ0FBZ0IsaURBQWdEeEMsR0FBSSxJQUFyRCxHQUNaLE9BQU0sS0FBS29CLGtCQUFtQixXQURqQztBQUVBO0FBQ0Q7O0FBQ0QsV0FBS0gsR0FBTCxDQUFTb0QsSUFBVCxDQUFlLDZCQUE0QnJFLEdBQUksU0FBUW9FLFlBQWEsSUFBdEQsR0FDWCxPQUFNLEtBQUtoRCxrQkFBbUIsV0FEakM7QUFFQSxhQUFPLE1BQU0sS0FBS0osU0FBTCxDQUFlb0QsWUFBZixFQUE2QmhDLE1BQTdCLEVBQXFDYixJQUFyQyxDQUFiO0FBQ0Q7O0FBR0QsV0FBTyxNQUFNLEtBQUtQLFNBQUwsQ0FBZWhCLEdBQWYsRUFBb0JvQyxNQUFwQixFQUE0QmIsSUFBNUIsQ0FBYjtBQUNEOztBQXpNcUI7O2VBNE1UVCxpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBsb2dnZXIsIHV0aWwgfSBmcm9tICdAYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IHsgZHVwbGljYXRlS2V5cyB9IGZyb20gJy4uL2Jhc2Vkcml2ZXIvaGVscGVycyc7XG5pbXBvcnQge1xuICBNSlNPTldQX0VMRU1FTlRfS0VZLCBXM0NfRUxFTUVOVF9LRVksIFBST1RPQ09MU1xufSBmcm9tICcuLi9jb25zdGFudHMnO1xuXG5leHBvcnQgY29uc3QgQ09NTUFORF9VUkxTX0NPTkZMSUNUUyA9IFtcbiAge1xuICAgIGNvbW1hbmROYW1lczogWydleGVjdXRlJywgJ2V4ZWN1dGVBc3luYyddLFxuICAgIGpzb253cENvbnZlcnRlcjogKHVybCkgPT4gdXJsLnJlcGxhY2UoL1xcL2V4ZWN1dGUuKi8sXG4gICAgICB1cmwuaW5jbHVkZXMoJ2FzeW5jJykgPyAnL2V4ZWN1dGVfYXN5bmMnIDogJy9leGVjdXRlJyksXG4gICAgdzNjQ29udmVydGVyOiAodXJsKSA9PiB1cmwucmVwbGFjZSgvXFwvZXhlY3V0ZS4qLyxcbiAgICAgIHVybC5pbmNsdWRlcygnYXN5bmMnKSA/ICcvZXhlY3V0ZS9hc3luYycgOiAnL2V4ZWN1dGUvc3luYycpLFxuICB9LFxuICB7XG4gICAgY29tbWFuZE5hbWVzOiBbJ2dldEVsZW1lbnRTY3JlZW5zaG90J10sXG4gICAganNvbndwQ29udmVydGVyOiAodXJsKSA9PiB1cmwucmVwbGFjZSgvXFwvZWxlbWVudFxcLyhbXi9dKylcXC9zY3JlZW5zaG90JC8sXG4gICAgICAnL3NjcmVlbnNob3QvJDEnKSxcbiAgICB3M2NDb252ZXJ0ZXI6ICh1cmwpID0+IHVybC5yZXBsYWNlKC9cXC9zY3JlZW5zaG90XFwvKFteL10rKS8sXG4gICAgICAnL2VsZW1lbnQvJDEvc2NyZWVuc2hvdCcpLFxuICB9LFxuICB7XG4gICAgY29tbWFuZE5hbWVzOiBbJ2dldFdpbmRvd0hhbmRsZXMnLCAnZ2V0V2luZG93SGFuZGxlJ10sXG4gICAganNvbndwQ29udmVydGVyICh1cmwpIHtcbiAgICAgIHJldHVybiAvXFwvd2luZG93JC8udGVzdCh1cmwpXG4gICAgICAgID8gdXJsLnJlcGxhY2UoL1xcL3dpbmRvdyQvLCAnL3dpbmRvd19oYW5kbGUnKVxuICAgICAgICA6IHVybC5yZXBsYWNlKC9cXC93aW5kb3dcXC9oYW5kbGUocz8pJC8sICcvd2luZG93X2hhbmRsZSQxJyk7XG4gICAgfSxcbiAgICB3M2NDb252ZXJ0ZXIgKHVybCkge1xuICAgICAgcmV0dXJuIC9cXC93aW5kb3dfaGFuZGxlJC8udGVzdCh1cmwpXG4gICAgICAgID8gdXJsLnJlcGxhY2UoL1xcL3dpbmRvd19oYW5kbGUkLywgJy93aW5kb3cnKVxuICAgICAgICA6IHVybC5yZXBsYWNlKC9cXC93aW5kb3dfaGFuZGxlcyQvLCAnL3dpbmRvdy9oYW5kbGVzJyk7XG4gICAgfSxcbiAgfSxcbiAge1xuICAgIGNvbW1hbmROYW1lczogWydnZXRQcm9wZXJ0eSddLFxuICAgIGpzb253cENvbnZlcnRlcjogKHczY1VybCkgPT4ge1xuICAgICAgY29uc3QgdzNjUHJvcGVydHlSZWdleCA9IC9cXC9lbGVtZW50XFwvKFteL10rKVxcL3Byb3BlcnR5XFwvKFteL10rKS87XG4gICAgICBjb25zdCBqc29ud3BVcmwgPSB3M2NVcmwucmVwbGFjZSh3M2NQcm9wZXJ0eVJlZ2V4LCAnL2VsZW1lbnQvJDEvYXR0cmlidXRlLyQyJyk7XG4gICAgICByZXR1cm4ganNvbndwVXJsO1xuICAgIH0sXG4gICAgdzNjQ29udmVydGVyOiAoanNvbndwVXJsKSA9PiBqc29ud3BVcmwgLy8gRG9uJ3QgY29udmVydCBKU09OV1AgVVJMIHRvIFczQy4gVzNDIGFjY2VwdHMgL2F0dHJpYnV0ZSBhbmQgL3Byb3BlcnR5XG4gIH1cbl07XG5jb25zdCB7TUpTT05XUCwgVzNDfSA9IFBST1RPQ09MUztcbmNvbnN0IERFRkFVTFRfTE9HID0gbG9nZ2VyLmdldExvZ2dlcignUHJvdG9jb2wgQ29udmVydGVyJyk7XG5cblxuY2xhc3MgUHJvdG9jb2xDb252ZXJ0ZXIge1xuICBjb25zdHJ1Y3RvciAocHJveHlGdW5jLCBsb2cgPSBudWxsKSB7XG4gICAgdGhpcy5wcm94eUZ1bmMgPSBwcm94eUZ1bmM7XG4gICAgdGhpcy5fZG93bnN0cmVhbVByb3RvY29sID0gbnVsbDtcbiAgICB0aGlzLl9sb2cgPSBsb2c7XG4gIH1cblxuICBnZXQgbG9nICgpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9nID8/IERFRkFVTFRfTE9HO1xuICB9XG5cbiAgc2V0IGRvd25zdHJlYW1Qcm90b2NvbCAodmFsdWUpIHtcbiAgICB0aGlzLl9kb3duc3RyZWFtUHJvdG9jb2wgPSB2YWx1ZTtcbiAgfVxuXG4gIGdldCBkb3duc3RyZWFtUHJvdG9jb2wgKCkge1xuICAgIHJldHVybiB0aGlzLl9kb3duc3RyZWFtUHJvdG9jb2w7XG4gIH1cblxuICAvKipcbiAgICogVzNDIC90aW1lb3V0cyBjYW4gdGFrZSBhcyBtYW55IGFzIDMgdGltZW91dCB0eXBlcyBhdCBvbmNlLCBNSlNPTldQIC90aW1lb3V0cyBvbmx5IHRha2VzIG9uZVxuICAgKiBhdCBhIHRpbWUuIFNvIGlmIHdlJ3JlIHVzaW5nIFczQyBhbmQgcHJveHlpbmcgdG8gTUpTT05XUCBhbmQgdGhlcmUncyBtb3JlIHRoYW4gb25lIHRpbWVvdXQgdHlwZVxuICAgKiBwcm92aWRlZCBpbiB0aGUgcmVxdWVzdCwgd2UgbmVlZCB0byBkbyAzIHByb3hpZXMgYW5kIGNvbWJpbmUgdGhlIHJlc3VsdFxuICAgKlxuICAgKiBAcGFyYW0ge09iamVjdH0gYm9keSBSZXF1ZXN0IGJvZHlcbiAgICogQHJldHVybiB7QXJyYXl9IEFycmF5IG9mIFczQyArIE1KU09OV1AgY29tcGF0aWJsZSB0aW1lb3V0IG9iamVjdHNcbiAgICovXG4gIGdldFRpbWVvdXRSZXF1ZXN0T2JqZWN0cyAoYm9keSkge1xuICAgIGlmICh0aGlzLmRvd25zdHJlYW1Qcm90b2NvbCA9PT0gVzNDICYmIF8uaGFzKGJvZHksICdtcycpICYmIF8uaGFzKGJvZHksICd0eXBlJykpIHtcbiAgICAgIGNvbnN0IHR5cGVUb1czQyA9ICh4KSA9PiB4ID09PSAncGFnZSBsb2FkJyA/ICdwYWdlTG9hZCcgOiB4O1xuICAgICAgcmV0dXJuIFt7XG4gICAgICAgIFt0eXBlVG9XM0MoYm9keS50eXBlKV06IGJvZHkubXMsXG4gICAgICB9XTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kb3duc3RyZWFtUHJvdG9jb2wgPT09IE1KU09OV1AgJiYgKCFfLmhhcyhib2R5LCAnbXMnKSB8fCAhXy5oYXMoYm9keSwgJ3R5cGUnKSkpIHtcbiAgICAgIGNvbnN0IHR5cGVUb0pTT05XUCA9ICh4KSA9PiB4ID09PSAncGFnZUxvYWQnID8gJ3BhZ2UgbG9hZCcgOiB4O1xuICAgICAgcmV0dXJuIF8udG9QYWlycyhib2R5KVxuICAgICAgICAvLyBPbmx5IHRyYW5zZm9ybSB0aGUgZW50cnkgaWYgbXMgdmFsdWUgaXMgYSB2YWxpZCBwb3NpdGl2ZSBmbG9hdCBudW1iZXJcbiAgICAgICAgLmZpbHRlcigocGFpcikgPT4gL15cXGQrKD86Wy4sXVxcZCo/KT8kLy50ZXN0KGAke3BhaXJbMV19YCkpXG4gICAgICAgIC5tYXAoZnVuY3Rpb24gKHBhaXIpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdHlwZTogdHlwZVRvSlNPTldQKHBhaXJbMF0pLFxuICAgICAgICAgICAgbXM6IHBhaXJbMV0sXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtib2R5XTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcm94eSBhbiBhcnJheSBvZiB0aW1lb3V0IG9iamVjdHMgYW5kIG1lcmdlIHRoZSByZXN1bHRcbiAgICogQHBhcmFtIHtTdHJpbmd9IHVybCBFbmRwb2ludCB1cmxcbiAgICogQHBhcmFtIHtTdHJpbmd9IG1ldGhvZCBFbmRwb2ludCBtZXRob2RcbiAgICogQHBhcmFtIHtPYmplY3R9IGJvZHkgUmVxdWVzdCBib2R5XG4gICAqL1xuICBhc3luYyBwcm94eVNldFRpbWVvdXRzICh1cmwsIG1ldGhvZCwgYm9keSkge1xuICAgIGxldCByZXNwb25zZSwgcmVzQm9keTtcblxuICAgIGNvbnN0IHRpbWVvdXRSZXF1ZXN0T2JqZWN0cyA9IHRoaXMuZ2V0VGltZW91dFJlcXVlc3RPYmplY3RzKGJvZHkpO1xuICAgIHRoaXMubG9nLmRlYnVnKGBXaWxsIHNlbmQgdGhlIGZvbGxvd2luZyByZXF1ZXN0IGJvZGllcyB0byAvdGltZW91dHM6ICR7SlNPTi5zdHJpbmdpZnkodGltZW91dFJlcXVlc3RPYmplY3RzKX1gKTtcbiAgICBmb3IgKGNvbnN0IHRpbWVvdXRPYmogb2YgdGltZW91dFJlcXVlc3RPYmplY3RzKSB7XG4gICAgICBbcmVzcG9uc2UsIHJlc0JvZHldID0gYXdhaXQgdGhpcy5wcm94eUZ1bmModXJsLCBtZXRob2QsIHRpbWVvdXRPYmopO1xuXG4gICAgICAvLyBJZiB3ZSBnb3QgYSBub24tTUpTT05XUCByZXNwb25zZSwgcmV0dXJuIHRoZSByZXN1bHQsIG5vdGhpbmcgbGVmdCB0byBkb1xuICAgICAgaWYgKHRoaXMuZG93bnN0cmVhbVByb3RvY29sICE9PSBNSlNPTldQKSB7XG4gICAgICAgIHJldHVybiBbcmVzcG9uc2UsIHJlc0JvZHldO1xuICAgICAgfVxuXG4gICAgICAvLyBJZiB3ZSBnb3QgYW4gZXJyb3IsIHJldHVybiB0aGUgZXJyb3IgcmlnaHQgYXdheVxuICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1c0NvZGUgPj0gNDAwKSB7XG4gICAgICAgIHJldHVybiBbcmVzcG9uc2UsIHJlc0JvZHldO1xuICAgICAgfVxuXG4gICAgICAvLyAuLi5PdGhlcndpc2UsIGNvbnRpbnVlIHRvIHRoZSBuZXh0IHRpbWVvdXRzIGNhbGxcbiAgICB9XG4gICAgcmV0dXJuIFtyZXNwb25zZSwgcmVzQm9keV07XG4gIH1cblxuICBhc3luYyBwcm94eVNldFdpbmRvdyAodXJsLCBtZXRob2QsIGJvZHkpIHtcbiAgICBjb25zdCBib2R5T2JqID0gdXRpbC5zYWZlSnNvblBhcnNlKGJvZHkpO1xuICAgIGlmIChfLmlzUGxhaW5PYmplY3QoYm9keU9iaikpIHtcbiAgICAgIGlmICh0aGlzLmRvd25zdHJlYW1Qcm90b2NvbCA9PT0gVzNDICYmIF8uaGFzKGJvZHlPYmosICduYW1lJykgJiYgIV8uaGFzKGJvZHlPYmosICdoYW5kbGUnKSkge1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZyhgQ29waWVkICduYW1lJyB2YWx1ZSAnJHtib2R5T2JqLm5hbWV9JyB0byAnaGFuZGxlJyBhcyBwZXIgVzNDIHNwZWNgKTtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlGdW5jKHVybCwgbWV0aG9kLCB7XG4gICAgICAgICAgLi4uYm9keU9iaixcbiAgICAgICAgICBoYW5kbGU6IGJvZHlPYmoubmFtZSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5kb3duc3RyZWFtUHJvdG9jb2wgPT09IE1KU09OV1AgJiYgXy5oYXMoYm9keU9iaiwgJ2hhbmRsZScpICYmICFfLmhhcyhib2R5T2JqLCAnbmFtZScpKSB7XG4gICAgICAgIHRoaXMubG9nLmRlYnVnKGBDb3BpZWQgJ2hhbmRsZScgdmFsdWUgJyR7Ym9keU9iai5oYW5kbGV9JyB0byAnbmFtZScgYXMgcGVyIEpTT05XUCBzcGVjYCk7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwge1xuICAgICAgICAgIC4uLmJvZHlPYmosXG4gICAgICAgICAgbmFtZTogYm9keU9iai5oYW5kbGUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwgYm9keSk7XG4gIH1cblxuICBhc3luYyBwcm94eVNldFZhbHVlICh1cmwsIG1ldGhvZCwgYm9keSkge1xuICAgIGNvbnN0IGJvZHlPYmogPSB1dGlsLnNhZmVKc29uUGFyc2UoYm9keSk7XG4gICAgaWYgKF8uaXNQbGFpbk9iamVjdChib2R5T2JqKSAmJiAodXRpbC5oYXNWYWx1ZShib2R5T2JqLnRleHQpIHx8IHV0aWwuaGFzVmFsdWUoYm9keU9iai52YWx1ZSkpKSB7XG4gICAgICBsZXQge3RleHQsIHZhbHVlfSA9IGJvZHlPYmo7XG4gICAgICBpZiAodXRpbC5oYXNWYWx1ZSh0ZXh0KSAmJiAhdXRpbC5oYXNWYWx1ZSh2YWx1ZSkpIHtcbiAgICAgICAgdmFsdWUgPSBfLmlzU3RyaW5nKHRleHQpXG4gICAgICAgICAgPyBbLi4udGV4dF1cbiAgICAgICAgICA6IChfLmlzQXJyYXkodGV4dCkgPyB0ZXh0IDogW10pO1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZyhgQWRkZWQgJ3ZhbHVlJyBwcm9wZXJ0eSAke0pTT04uc3RyaW5naWZ5KHZhbHVlKX0gdG8gJ3NldFZhbHVlJyByZXF1ZXN0IGJvZHlgKTtcbiAgICAgIH0gZWxzZSBpZiAoIXV0aWwuaGFzVmFsdWUodGV4dCkgJiYgdXRpbC5oYXNWYWx1ZSh2YWx1ZSkpIHtcbiAgICAgICAgdGV4dCA9IF8uaXNBcnJheSh2YWx1ZSlcbiAgICAgICAgICA/IHZhbHVlLmpvaW4oJycpXG4gICAgICAgICAgOiAoXy5pc1N0cmluZyh2YWx1ZSkgPyB2YWx1ZSA6ICcnKTtcbiAgICAgICAgdGhpcy5sb2cuZGVidWcoYEFkZGVkICd0ZXh0JyBwcm9wZXJ0eSAke0pTT04uc3RyaW5naWZ5KHRleHQpfSB0byAnc2V0VmFsdWUnIHJlcXVlc3QgYm9keWApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlGdW5jKHVybCwgbWV0aG9kLCBPYmplY3QuYXNzaWduKHt9LCBib2R5T2JqLCB7XG4gICAgICAgIHRleHQsXG4gICAgICAgIHZhbHVlLFxuICAgICAgfSkpO1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwgYm9keSk7XG4gIH1cblxuICBhc3luYyBwcm94eVNldEZyYW1lICh1cmwsIG1ldGhvZCwgYm9keSkge1xuICAgIGNvbnN0IGJvZHlPYmogPSB1dGlsLnNhZmVKc29uUGFyc2UoYm9keSk7XG4gICAgcmV0dXJuIF8uaGFzKGJvZHlPYmosICdpZCcpICYmIF8uaXNQbGFpbk9iamVjdChib2R5T2JqLmlkKVxuICAgICAgPyBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwge1xuICAgICAgICAuLi5ib2R5T2JqLFxuICAgICAgICBpZDogZHVwbGljYXRlS2V5cyhib2R5T2JqLmlkLCBNSlNPTldQX0VMRU1FTlRfS0VZLCBXM0NfRUxFTUVOVF9LRVkpLFxuICAgICAgfSlcbiAgICAgIDogYXdhaXQgdGhpcy5wcm94eUZ1bmModXJsLCBtZXRob2QsIGJvZHkpO1xuICB9XG5cbiAgYXN5bmMgcHJveHlQZXJmb3JtQWN0aW9ucyAodXJsLCBtZXRob2QsIGJvZHkpIHtcbiAgICBjb25zdCBib2R5T2JqID0gdXRpbC5zYWZlSnNvblBhcnNlKGJvZHkpO1xuICAgIHJldHVybiBfLmlzUGxhaW5PYmplY3QoYm9keU9iailcbiAgICAgID8gYXdhaXQgdGhpcy5wcm94eUZ1bmModXJsLCBtZXRob2QsIGR1cGxpY2F0ZUtleXMoYm9keU9iaiwgTUpTT05XUF9FTEVNRU5UX0tFWSwgVzNDX0VMRU1FTlRfS0VZKSlcbiAgICAgIDogYXdhaXQgdGhpcy5wcm94eUZ1bmModXJsLCBtZXRob2QsIGJvZHkpO1xuICB9XG5cbiAgYXN5bmMgcHJveHlSZWxlYXNlQWN0aW9ucyAodXJsLCBtZXRob2QpIHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5wcm94eUZ1bmModXJsLCBtZXRob2QpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSBcImNyb3NzaW5nXCIgZW5kcG9pbnRzIGZvciB0aGUgY2FzZVxuICAgKiB3aGVuIHVwc3RyZWFtIGFuZCBkb3duc3RyZWFtIGRyaXZlcnMgb3BlcmF0ZSBkaWZmZXJlbnQgcHJvdG9jb2xzXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjb21tYW5kTmFtZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBtZXRob2RcbiAgICogQHBhcmFtIHs/c3RyaW5nfG9iamVjdH0gYm9keVxuICAgKiBAcmV0dXJucyBUaGUgcHJveHlmeWluZyByZXN1bHQgYXMgW3Jlc3BvbnNlLCByZXNwb25zZUJvZHldIHR1cGxlXG4gICAqL1xuICBhc3luYyBjb252ZXJ0QW5kUHJveHkgKGNvbW1hbmROYW1lLCB1cmwsIG1ldGhvZCwgYm9keSkge1xuICAgIGlmICghdGhpcy5kb3duc3RyZWFtUHJvdG9jb2wpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwgYm9keSk7XG4gICAgfVxuXG4gICAgLy8gU2FtZSB1cmwsIGJ1dCBkaWZmZXJlbnQgYXJndW1lbnRzXG4gICAgc3dpdGNoIChjb21tYW5kTmFtZSkge1xuICAgICAgY2FzZSAndGltZW91dHMnOlxuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5wcm94eVNldFRpbWVvdXRzKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgICAgIGNhc2UgJ3NldFdpbmRvdyc6XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5U2V0V2luZG93KHVybCwgbWV0aG9kLCBib2R5KTtcbiAgICAgIGNhc2UgJ3NldFZhbHVlJzpcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlTZXRWYWx1ZSh1cmwsIG1ldGhvZCwgYm9keSk7XG4gICAgICBjYXNlICdwZXJmb3JtQWN0aW9ucyc6XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5UGVyZm9ybUFjdGlvbnModXJsLCBtZXRob2QsIGJvZHkpO1xuICAgICAgY2FzZSAncmVsZWFzZUFjdGlvbnMnOlxuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5wcm94eVJlbGVhc2VBY3Rpb25zKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgICAgIGNhc2UgJ3NldEZyYW1lJzpcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlTZXRGcmFtZSh1cmwsIG1ldGhvZCwgYm9keSk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICAvLyBTYW1lIGFyZ3VtZW50cywgYnV0IGRpZmZlcmVudCBVUkxzXG4gICAgZm9yIChjb25zdCB7Y29tbWFuZE5hbWVzLCBqc29ud3BDb252ZXJ0ZXIsIHczY0NvbnZlcnRlcn0gb2YgQ09NTUFORF9VUkxTX0NPTkZMSUNUUykge1xuICAgICAgaWYgKCFjb21tYW5kTmFtZXMuaW5jbHVkZXMoY29tbWFuZE5hbWUpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCByZXdyaXR0ZW5VcmwgPSB0aGlzLmRvd25zdHJlYW1Qcm90b2NvbCA9PT0gTUpTT05XUFxuICAgICAgICA/IGpzb253cENvbnZlcnRlcih1cmwpXG4gICAgICAgIDogdzNjQ29udmVydGVyKHVybCk7XG4gICAgICBpZiAocmV3cml0dGVuVXJsID09PSB1cmwpIHtcbiAgICAgICAgdGhpcy5sb2cuZGVidWcoYERpZCBub3Qga25vdyBob3cgdG8gcmV3cml0ZSB0aGUgb3JpZ2luYWwgVVJMICcke3VybH0nIGAgK1xuICAgICAgICAgIGBmb3IgJHt0aGlzLmRvd25zdHJlYW1Qcm90b2NvbH0gcHJvdG9jb2xgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICB0aGlzLmxvZy5pbmZvKGBSZXdyb3RlIHRoZSBvcmlnaW5hbCBVUkwgJyR7dXJsfScgdG8gJyR7cmV3cml0dGVuVXJsfScgYCArXG4gICAgICAgIGBmb3IgJHt0aGlzLmRvd25zdHJlYW1Qcm90b2NvbH0gcHJvdG9jb2xgKTtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5RnVuYyhyZXdyaXR0ZW5VcmwsIG1ldGhvZCwgYm9keSk7XG4gICAgfVxuXG4gICAgLy8gTm8gbWF0Y2hlcyBmb3VuZC4gUHJvY2VlZCBub3JtYWxseVxuICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwgYm9keSk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgUHJvdG9jb2xDb252ZXJ0ZXI7XG4iXX0=
|
|
241
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDT01NQU5EX1VSTFNfQ09ORkxJQ1RTIiwiY29tbWFuZE5hbWVzIiwianNvbndwQ29udmVydGVyIiwidXJsIiwicmVwbGFjZSIsImluY2x1ZGVzIiwidzNjQ29udmVydGVyIiwidGVzdCIsInczY1VybCIsInczY1Byb3BlcnR5UmVnZXgiLCJqc29ud3BVcmwiLCJNSlNPTldQIiwiVzNDIiwiUFJPVE9DT0xTIiwiREVGQVVMVF9MT0ciLCJsb2dnZXIiLCJnZXRMb2dnZXIiLCJQcm90b2NvbENvbnZlcnRlciIsImNvbnN0cnVjdG9yIiwicHJveHlGdW5jIiwibG9nIiwiX2Rvd25zdHJlYW1Qcm90b2NvbCIsIl9sb2ciLCJkb3duc3RyZWFtUHJvdG9jb2wiLCJ2YWx1ZSIsImdldFRpbWVvdXRSZXF1ZXN0T2JqZWN0cyIsImJvZHkiLCJfIiwiaGFzIiwidHlwZVRvVzNDIiwieCIsInR5cGUiLCJtcyIsInR5cGVUb0pTT05XUCIsInRvUGFpcnMiLCJmaWx0ZXIiLCJwYWlyIiwibWFwIiwicHJveHlTZXRUaW1lb3V0cyIsIm1ldGhvZCIsInJlc3BvbnNlIiwicmVzQm9keSIsInRpbWVvdXRSZXF1ZXN0T2JqZWN0cyIsImRlYnVnIiwiSlNPTiIsInN0cmluZ2lmeSIsInRpbWVvdXRPYmoiLCJzdGF0dXNDb2RlIiwicHJveHlTZXRXaW5kb3ciLCJib2R5T2JqIiwidXRpbCIsInNhZmVKc29uUGFyc2UiLCJpc1BsYWluT2JqZWN0IiwibmFtZSIsImhhbmRsZSIsInByb3h5U2V0VmFsdWUiLCJoYXNWYWx1ZSIsInRleHQiLCJpc1N0cmluZyIsImlzQXJyYXkiLCJqb2luIiwiT2JqZWN0IiwiYXNzaWduIiwicHJveHlTZXRGcmFtZSIsImlkIiwiTUpTT05XUF9FTEVNRU5UX0tFWSIsIlczQ19FTEVNRU5UX0tFWSIsInByb3h5UGVyZm9ybUFjdGlvbnMiLCJwcm94eVJlbGVhc2VBY3Rpb25zIiwiY29udmVydEFuZFByb3h5IiwiY29tbWFuZE5hbWUiLCJyZXdyaXR0ZW5VcmwiLCJpbmZvIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL2pzb253cC1wcm94eS9wcm90b2NvbC1jb252ZXJ0ZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IGxvZ2dlciwgdXRpbCB9IGZyb20gJ0BhcHBpdW0vc3VwcG9ydCc7XG5pbXBvcnQgeyBkdXBsaWNhdGVLZXlzIH0gZnJvbSAnLi4vYmFzZWRyaXZlci9oZWxwZXJzJztcbmltcG9ydCB7XG4gIE1KU09OV1BfRUxFTUVOVF9LRVksIFczQ19FTEVNRU5UX0tFWSwgUFJPVE9DT0xTXG59IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjb25zdCBDT01NQU5EX1VSTFNfQ09ORkxJQ1RTID0gW1xuICB7XG4gICAgY29tbWFuZE5hbWVzOiBbJ2V4ZWN1dGUnLCAnZXhlY3V0ZUFzeW5jJ10sXG4gICAganNvbndwQ29udmVydGVyOiAodXJsKSA9PiB1cmwucmVwbGFjZSgvXFwvZXhlY3V0ZS4qLyxcbiAgICAgIHVybC5pbmNsdWRlcygnYXN5bmMnKSA/ICcvZXhlY3V0ZV9hc3luYycgOiAnL2V4ZWN1dGUnKSxcbiAgICB3M2NDb252ZXJ0ZXI6ICh1cmwpID0+IHVybC5yZXBsYWNlKC9cXC9leGVjdXRlLiovLFxuICAgICAgdXJsLmluY2x1ZGVzKCdhc3luYycpID8gJy9leGVjdXRlL2FzeW5jJyA6ICcvZXhlY3V0ZS9zeW5jJyksXG4gIH0sXG4gIHtcbiAgICBjb21tYW5kTmFtZXM6IFsnZ2V0RWxlbWVudFNjcmVlbnNob3QnXSxcbiAgICBqc29ud3BDb252ZXJ0ZXI6ICh1cmwpID0+IHVybC5yZXBsYWNlKC9cXC9lbGVtZW50XFwvKFteL10rKVxcL3NjcmVlbnNob3QkLyxcbiAgICAgICcvc2NyZWVuc2hvdC8kMScpLFxuICAgIHczY0NvbnZlcnRlcjogKHVybCkgPT4gdXJsLnJlcGxhY2UoL1xcL3NjcmVlbnNob3RcXC8oW14vXSspLyxcbiAgICAgICcvZWxlbWVudC8kMS9zY3JlZW5zaG90JyksXG4gIH0sXG4gIHtcbiAgICBjb21tYW5kTmFtZXM6IFsnZ2V0V2luZG93SGFuZGxlcycsICdnZXRXaW5kb3dIYW5kbGUnXSxcbiAgICBqc29ud3BDb252ZXJ0ZXIgKHVybCkge1xuICAgICAgcmV0dXJuIC9cXC93aW5kb3ckLy50ZXN0KHVybClcbiAgICAgICAgPyB1cmwucmVwbGFjZSgvXFwvd2luZG93JC8sICcvd2luZG93X2hhbmRsZScpXG4gICAgICAgIDogdXJsLnJlcGxhY2UoL1xcL3dpbmRvd1xcL2hhbmRsZShzPykkLywgJy93aW5kb3dfaGFuZGxlJDEnKTtcbiAgICB9LFxuICAgIHczY0NvbnZlcnRlciAodXJsKSB7XG4gICAgICByZXR1cm4gL1xcL3dpbmRvd19oYW5kbGUkLy50ZXN0KHVybClcbiAgICAgICAgPyB1cmwucmVwbGFjZSgvXFwvd2luZG93X2hhbmRsZSQvLCAnL3dpbmRvdycpXG4gICAgICAgIDogdXJsLnJlcGxhY2UoL1xcL3dpbmRvd19oYW5kbGVzJC8sICcvd2luZG93L2hhbmRsZXMnKTtcbiAgICB9LFxuICB9LFxuICB7XG4gICAgY29tbWFuZE5hbWVzOiBbJ2dldFByb3BlcnR5J10sXG4gICAganNvbndwQ29udmVydGVyOiAodzNjVXJsKSA9PiB7XG4gICAgICBjb25zdCB3M2NQcm9wZXJ0eVJlZ2V4ID0gL1xcL2VsZW1lbnRcXC8oW14vXSspXFwvcHJvcGVydHlcXC8oW14vXSspLztcbiAgICAgIGNvbnN0IGpzb253cFVybCA9IHczY1VybC5yZXBsYWNlKHczY1Byb3BlcnR5UmVnZXgsICcvZWxlbWVudC8kMS9hdHRyaWJ1dGUvJDInKTtcbiAgICAgIHJldHVybiBqc29ud3BVcmw7XG4gICAgfSxcbiAgICB3M2NDb252ZXJ0ZXI6IChqc29ud3BVcmwpID0+IGpzb253cFVybCAvLyBEb24ndCBjb252ZXJ0IEpTT05XUCBVUkwgdG8gVzNDLiBXM0MgYWNjZXB0cyAvYXR0cmlidXRlIGFuZCAvcHJvcGVydHlcbiAgfVxuXTtcbmNvbnN0IHtNSlNPTldQLCBXM0N9ID0gUFJPVE9DT0xTO1xuY29uc3QgREVGQVVMVF9MT0cgPSBsb2dnZXIuZ2V0TG9nZ2VyKCdQcm90b2NvbCBDb252ZXJ0ZXInKTtcblxuXG5jbGFzcyBQcm90b2NvbENvbnZlcnRlciB7XG4gIGNvbnN0cnVjdG9yIChwcm94eUZ1bmMsIGxvZyA9IG51bGwpIHtcbiAgICB0aGlzLnByb3h5RnVuYyA9IHByb3h5RnVuYztcbiAgICB0aGlzLl9kb3duc3RyZWFtUHJvdG9jb2wgPSBudWxsO1xuICAgIHRoaXMuX2xvZyA9IGxvZztcbiAgfVxuXG4gIGdldCBsb2cgKCkge1xuICAgIHJldHVybiB0aGlzLl9sb2cgPz8gREVGQVVMVF9MT0c7XG4gIH1cblxuICBzZXQgZG93bnN0cmVhbVByb3RvY29sICh2YWx1ZSkge1xuICAgIHRoaXMuX2Rvd25zdHJlYW1Qcm90b2NvbCA9IHZhbHVlO1xuICB9XG5cbiAgZ2V0IGRvd25zdHJlYW1Qcm90b2NvbCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rvd25zdHJlYW1Qcm90b2NvbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBXM0MgL3RpbWVvdXRzIGNhbiB0YWtlIGFzIG1hbnkgYXMgMyB0aW1lb3V0IHR5cGVzIGF0IG9uY2UsIE1KU09OV1AgL3RpbWVvdXRzIG9ubHkgdGFrZXMgb25lXG4gICAqIGF0IGEgdGltZS4gU28gaWYgd2UncmUgdXNpbmcgVzNDIGFuZCBwcm94eWluZyB0byBNSlNPTldQIGFuZCB0aGVyZSdzIG1vcmUgdGhhbiBvbmUgdGltZW91dCB0eXBlXG4gICAqIHByb3ZpZGVkIGluIHRoZSByZXF1ZXN0LCB3ZSBuZWVkIHRvIGRvIDMgcHJveGllcyBhbmQgY29tYmluZSB0aGUgcmVzdWx0XG4gICAqXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBib2R5IFJlcXVlc3QgYm9keVxuICAgKiBAcmV0dXJuIHtBcnJheX0gQXJyYXkgb2YgVzNDICsgTUpTT05XUCBjb21wYXRpYmxlIHRpbWVvdXQgb2JqZWN0c1xuICAgKi9cbiAgZ2V0VGltZW91dFJlcXVlc3RPYmplY3RzIChib2R5KSB7XG4gICAgaWYgKHRoaXMuZG93bnN0cmVhbVByb3RvY29sID09PSBXM0MgJiYgXy5oYXMoYm9keSwgJ21zJykgJiYgXy5oYXMoYm9keSwgJ3R5cGUnKSkge1xuICAgICAgY29uc3QgdHlwZVRvVzNDID0gKHgpID0+IHggPT09ICdwYWdlIGxvYWQnID8gJ3BhZ2VMb2FkJyA6IHg7XG4gICAgICByZXR1cm4gW3tcbiAgICAgICAgW3R5cGVUb1czQyhib2R5LnR5cGUpXTogYm9keS5tcyxcbiAgICAgIH1dO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRvd25zdHJlYW1Qcm90b2NvbCA9PT0gTUpTT05XUCAmJiAoIV8uaGFzKGJvZHksICdtcycpIHx8ICFfLmhhcyhib2R5LCAndHlwZScpKSkge1xuICAgICAgY29uc3QgdHlwZVRvSlNPTldQID0gKHgpID0+IHggPT09ICdwYWdlTG9hZCcgPyAncGFnZSBsb2FkJyA6IHg7XG4gICAgICByZXR1cm4gXy50b1BhaXJzKGJvZHkpXG4gICAgICAgIC8vIE9ubHkgdHJhbnNmb3JtIHRoZSBlbnRyeSBpZiBtcyB2YWx1ZSBpcyBhIHZhbGlkIHBvc2l0aXZlIGZsb2F0IG51bWJlclxuICAgICAgICAuZmlsdGVyKChwYWlyKSA9PiAvXlxcZCsoPzpbLixdXFxkKj8pPyQvLnRlc3QoYCR7cGFpclsxXX1gKSlcbiAgICAgICAgLm1hcChmdW5jdGlvbiAocGFpcikge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0eXBlOiB0eXBlVG9KU09OV1AocGFpclswXSksXG4gICAgICAgICAgICBtczogcGFpclsxXSxcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gW2JvZHldO1xuICB9XG5cbiAgLyoqXG4gICAqIFByb3h5IGFuIGFycmF5IG9mIHRpbWVvdXQgb2JqZWN0cyBhbmQgbWVyZ2UgdGhlIHJlc3VsdFxuICAgKiBAcGFyYW0ge1N0cmluZ30gdXJsIEVuZHBvaW50IHVybFxuICAgKiBAcGFyYW0ge1N0cmluZ30gbWV0aG9kIEVuZHBvaW50IG1ldGhvZFxuICAgKiBAcGFyYW0ge09iamVjdH0gYm9keSBSZXF1ZXN0IGJvZHlcbiAgICovXG4gIGFzeW5jIHByb3h5U2V0VGltZW91dHMgKHVybCwgbWV0aG9kLCBib2R5KSB7XG4gICAgbGV0IHJlc3BvbnNlLCByZXNCb2R5O1xuXG4gICAgY29uc3QgdGltZW91dFJlcXVlc3RPYmplY3RzID0gdGhpcy5nZXRUaW1lb3V0UmVxdWVzdE9iamVjdHMoYm9keSk7XG4gICAgdGhpcy5sb2cuZGVidWcoYFdpbGwgc2VuZCB0aGUgZm9sbG93aW5nIHJlcXVlc3QgYm9kaWVzIHRvIC90aW1lb3V0czogJHtKU09OLnN0cmluZ2lmeSh0aW1lb3V0UmVxdWVzdE9iamVjdHMpfWApO1xuICAgIGZvciAoY29uc3QgdGltZW91dE9iaiBvZiB0aW1lb3V0UmVxdWVzdE9iamVjdHMpIHtcbiAgICAgIFtyZXNwb25zZSwgcmVzQm9keV0gPSBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwgdGltZW91dE9iaik7XG5cbiAgICAgIC8vIElmIHdlIGdvdCBhIG5vbi1NSlNPTldQIHJlc3BvbnNlLCByZXR1cm4gdGhlIHJlc3VsdCwgbm90aGluZyBsZWZ0IHRvIGRvXG4gICAgICBpZiAodGhpcy5kb3duc3RyZWFtUHJvdG9jb2wgIT09IE1KU09OV1ApIHtcbiAgICAgICAgcmV0dXJuIFtyZXNwb25zZSwgcmVzQm9keV07XG4gICAgICB9XG5cbiAgICAgIC8vIElmIHdlIGdvdCBhbiBlcnJvciwgcmV0dXJuIHRoZSBlcnJvciByaWdodCBhd2F5XG4gICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzQ29kZSA+PSA0MDApIHtcbiAgICAgICAgcmV0dXJuIFtyZXNwb25zZSwgcmVzQm9keV07XG4gICAgICB9XG5cbiAgICAgIC8vIC4uLk90aGVyd2lzZSwgY29udGludWUgdG8gdGhlIG5leHQgdGltZW91dHMgY2FsbFxuICAgIH1cbiAgICByZXR1cm4gW3Jlc3BvbnNlLCByZXNCb2R5XTtcbiAgfVxuXG4gIGFzeW5jIHByb3h5U2V0V2luZG93ICh1cmwsIG1ldGhvZCwgYm9keSkge1xuICAgIGNvbnN0IGJvZHlPYmogPSB1dGlsLnNhZmVKc29uUGFyc2UoYm9keSk7XG4gICAgaWYgKF8uaXNQbGFpbk9iamVjdChib2R5T2JqKSkge1xuICAgICAgaWYgKHRoaXMuZG93bnN0cmVhbVByb3RvY29sID09PSBXM0MgJiYgXy5oYXMoYm9keU9iaiwgJ25hbWUnKSAmJiAhXy5oYXMoYm9keU9iaiwgJ2hhbmRsZScpKSB7XG4gICAgICAgIHRoaXMubG9nLmRlYnVnKGBDb3BpZWQgJ25hbWUnIHZhbHVlICcke2JvZHlPYmoubmFtZX0nIHRvICdoYW5kbGUnIGFzIHBlciBXM0Mgc3BlY2ApO1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5wcm94eUZ1bmModXJsLCBtZXRob2QsIHtcbiAgICAgICAgICAuLi5ib2R5T2JqLFxuICAgICAgICAgIGhhbmRsZTogYm9keU9iai5uYW1lLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmRvd25zdHJlYW1Qcm90b2NvbCA9PT0gTUpTT05XUCAmJiBfLmhhcyhib2R5T2JqLCAnaGFuZGxlJykgJiYgIV8uaGFzKGJvZHlPYmosICduYW1lJykpIHtcbiAgICAgICAgdGhpcy5sb2cuZGVidWcoYENvcGllZCAnaGFuZGxlJyB2YWx1ZSAnJHtib2R5T2JqLmhhbmRsZX0nIHRvICduYW1lJyBhcyBwZXIgSlNPTldQIHNwZWNgKTtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlGdW5jKHVybCwgbWV0aG9kLCB7XG4gICAgICAgICAgLi4uYm9keU9iaixcbiAgICAgICAgICBuYW1lOiBib2R5T2JqLmhhbmRsZSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlGdW5jKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgfVxuXG4gIGFzeW5jIHByb3h5U2V0VmFsdWUgKHVybCwgbWV0aG9kLCBib2R5KSB7XG4gICAgY29uc3QgYm9keU9iaiA9IHV0aWwuc2FmZUpzb25QYXJzZShib2R5KTtcbiAgICBpZiAoXy5pc1BsYWluT2JqZWN0KGJvZHlPYmopICYmICh1dGlsLmhhc1ZhbHVlKGJvZHlPYmoudGV4dCkgfHwgdXRpbC5oYXNWYWx1ZShib2R5T2JqLnZhbHVlKSkpIHtcbiAgICAgIGxldCB7dGV4dCwgdmFsdWV9ID0gYm9keU9iajtcbiAgICAgIGlmICh1dGlsLmhhc1ZhbHVlKHRleHQpICYmICF1dGlsLmhhc1ZhbHVlKHZhbHVlKSkge1xuICAgICAgICB2YWx1ZSA9IF8uaXNTdHJpbmcodGV4dClcbiAgICAgICAgICA/IFsuLi50ZXh0XVxuICAgICAgICAgIDogKF8uaXNBcnJheSh0ZXh0KSA/IHRleHQgOiBbXSk7XG4gICAgICAgIHRoaXMubG9nLmRlYnVnKGBBZGRlZCAndmFsdWUnIHByb3BlcnR5ICR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSB0byAnc2V0VmFsdWUnIHJlcXVlc3QgYm9keWApO1xuICAgICAgfSBlbHNlIGlmICghdXRpbC5oYXNWYWx1ZSh0ZXh0KSAmJiB1dGlsLmhhc1ZhbHVlKHZhbHVlKSkge1xuICAgICAgICB0ZXh0ID0gXy5pc0FycmF5KHZhbHVlKVxuICAgICAgICAgID8gdmFsdWUuam9pbignJylcbiAgICAgICAgICA6IChfLmlzU3RyaW5nKHZhbHVlKSA/IHZhbHVlIDogJycpO1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZyhgQWRkZWQgJ3RleHQnIHByb3BlcnR5ICR7SlNPTi5zdHJpbmdpZnkodGV4dCl9IHRvICdzZXRWYWx1ZScgcmVxdWVzdCBib2R5YCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5wcm94eUZ1bmModXJsLCBtZXRob2QsIE9iamVjdC5hc3NpZ24oe30sIGJvZHlPYmosIHtcbiAgICAgICAgdGV4dCxcbiAgICAgICAgdmFsdWUsXG4gICAgICB9KSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlGdW5jKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgfVxuXG4gIGFzeW5jIHByb3h5U2V0RnJhbWUgKHVybCwgbWV0aG9kLCBib2R5KSB7XG4gICAgY29uc3QgYm9keU9iaiA9IHV0aWwuc2FmZUpzb25QYXJzZShib2R5KTtcbiAgICByZXR1cm4gXy5oYXMoYm9keU9iaiwgJ2lkJykgJiYgXy5pc1BsYWluT2JqZWN0KGJvZHlPYmouaWQpXG4gICAgICA/IGF3YWl0IHRoaXMucHJveHlGdW5jKHVybCwgbWV0aG9kLCB7XG4gICAgICAgIC4uLmJvZHlPYmosXG4gICAgICAgIGlkOiBkdXBsaWNhdGVLZXlzKGJvZHlPYmouaWQsIE1KU09OV1BfRUxFTUVOVF9LRVksIFczQ19FTEVNRU5UX0tFWSksXG4gICAgICB9KVxuICAgICAgOiBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwgYm9keSk7XG4gIH1cblxuICBhc3luYyBwcm94eVBlcmZvcm1BY3Rpb25zICh1cmwsIG1ldGhvZCwgYm9keSkge1xuICAgIGNvbnN0IGJvZHlPYmogPSB1dGlsLnNhZmVKc29uUGFyc2UoYm9keSk7XG4gICAgcmV0dXJuIF8uaXNQbGFpbk9iamVjdChib2R5T2JqKVxuICAgICAgPyBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwgZHVwbGljYXRlS2V5cyhib2R5T2JqLCBNSlNPTldQX0VMRU1FTlRfS0VZLCBXM0NfRUxFTUVOVF9LRVkpKVxuICAgICAgOiBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCwgYm9keSk7XG4gIH1cblxuICBhc3luYyBwcm94eVJlbGVhc2VBY3Rpb25zICh1cmwsIG1ldGhvZCkge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5RnVuYyh1cmwsIG1ldGhvZCk7XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlIFwiY3Jvc3NpbmdcIiBlbmRwb2ludHMgZm9yIHRoZSBjYXNlXG4gICAqIHdoZW4gdXBzdHJlYW0gYW5kIGRvd25zdHJlYW0gZHJpdmVycyBvcGVyYXRlIGRpZmZlcmVudCBwcm90b2NvbHNcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGNvbW1hbmROYW1lXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1ldGhvZFxuICAgKiBAcGFyYW0gez9zdHJpbmd8b2JqZWN0fSBib2R5XG4gICAqIEByZXR1cm5zIFRoZSBwcm94eWZ5aW5nIHJlc3VsdCBhcyBbcmVzcG9uc2UsIHJlc3BvbnNlQm9keV0gdHVwbGVcbiAgICovXG4gIGFzeW5jIGNvbnZlcnRBbmRQcm94eSAoY29tbWFuZE5hbWUsIHVybCwgbWV0aG9kLCBib2R5KSB7XG4gICAgaWYgKCF0aGlzLmRvd25zdHJlYW1Qcm90b2NvbCkge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlGdW5jKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgICB9XG5cbiAgICAvLyBTYW1lIHVybCwgYnV0IGRpZmZlcmVudCBhcmd1bWVudHNcbiAgICBzd2l0Y2ggKGNvbW1hbmROYW1lKSB7XG4gICAgICBjYXNlICd0aW1lb3V0cyc6XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5U2V0VGltZW91dHModXJsLCBtZXRob2QsIGJvZHkpO1xuICAgICAgY2FzZSAnc2V0V2luZG93JzpcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlTZXRXaW5kb3codXJsLCBtZXRob2QsIGJvZHkpO1xuICAgICAgY2FzZSAnc2V0VmFsdWUnOlxuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5wcm94eVNldFZhbHVlKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgICAgIGNhc2UgJ3BlcmZvcm1BY3Rpb25zJzpcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlQZXJmb3JtQWN0aW9ucyh1cmwsIG1ldGhvZCwgYm9keSk7XG4gICAgICBjYXNlICdyZWxlYXNlQWN0aW9ucyc6XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5UmVsZWFzZUFjdGlvbnModXJsLCBtZXRob2QsIGJvZHkpO1xuICAgICAgY2FzZSAnc2V0RnJhbWUnOlxuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5wcm94eVNldEZyYW1lKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIC8vIFNhbWUgYXJndW1lbnRzLCBidXQgZGlmZmVyZW50IFVSTHNcbiAgICBmb3IgKGNvbnN0IHtjb21tYW5kTmFtZXMsIGpzb253cENvbnZlcnRlciwgdzNjQ29udmVydGVyfSBvZiBDT01NQU5EX1VSTFNfQ09ORkxJQ1RTKSB7XG4gICAgICBpZiAoIWNvbW1hbmROYW1lcy5pbmNsdWRlcyhjb21tYW5kTmFtZSkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJld3JpdHRlblVybCA9IHRoaXMuZG93bnN0cmVhbVByb3RvY29sID09PSBNSlNPTldQXG4gICAgICAgID8ganNvbndwQ29udmVydGVyKHVybClcbiAgICAgICAgOiB3M2NDb252ZXJ0ZXIodXJsKTtcbiAgICAgIGlmIChyZXdyaXR0ZW5VcmwgPT09IHVybCkge1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZyhgRGlkIG5vdCBrbm93IGhvdyB0byByZXdyaXRlIHRoZSBvcmlnaW5hbCBVUkwgJyR7dXJsfScgYCArXG4gICAgICAgICAgYGZvciAke3RoaXMuZG93bnN0cmVhbVByb3RvY29sfSBwcm90b2NvbGApO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIHRoaXMubG9nLmluZm8oYFJld3JvdGUgdGhlIG9yaWdpbmFsIFVSTCAnJHt1cmx9JyB0byAnJHtyZXdyaXR0ZW5Vcmx9JyBgICtcbiAgICAgICAgYGZvciAke3RoaXMuZG93bnN0cmVhbVByb3RvY29sfSBwcm90b2NvbGApO1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlGdW5jKHJld3JpdHRlblVybCwgbWV0aG9kLCBib2R5KTtcbiAgICB9XG5cbiAgICAvLyBObyBtYXRjaGVzIGZvdW5kLiBQcm9jZWVkIG5vcm1hbGx5XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucHJveHlGdW5jKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBQcm90b2NvbENvbnZlcnRlcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFJTyxNQUFNQSxzQkFBc0IsR0FBRyxDQUNwQztFQUNFQyxZQUFZLEVBQUUsQ0FBQyxTQUFELEVBQVksY0FBWixDQURoQjtFQUVFQyxlQUFlLEVBQUdDLEdBQUQsSUFBU0EsR0FBRyxDQUFDQyxPQUFKLENBQVksYUFBWixFQUN4QkQsR0FBRyxDQUFDRSxRQUFKLENBQWEsT0FBYixJQUF3QixnQkFBeEIsR0FBMkMsVUFEbkIsQ0FGNUI7RUFJRUMsWUFBWSxFQUFHSCxHQUFELElBQVNBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZLGFBQVosRUFDckJELEdBQUcsQ0FBQ0UsUUFBSixDQUFhLE9BQWIsSUFBd0IsZ0JBQXhCLEdBQTJDLGVBRHRCO0FBSnpCLENBRG9DLEVBUXBDO0VBQ0VKLFlBQVksRUFBRSxDQUFDLHNCQUFELENBRGhCO0VBRUVDLGVBQWUsRUFBR0MsR0FBRCxJQUFTQSxHQUFHLENBQUNDLE9BQUosQ0FBWSxpQ0FBWixFQUN4QixnQkFEd0IsQ0FGNUI7RUFJRUUsWUFBWSxFQUFHSCxHQUFELElBQVNBLEdBQUcsQ0FBQ0MsT0FBSixDQUFZLHVCQUFaLEVBQ3JCLHdCQURxQjtBQUp6QixDQVJvQyxFQWVwQztFQUNFSCxZQUFZLEVBQUUsQ0FBQyxrQkFBRCxFQUFxQixpQkFBckIsQ0FEaEI7O0VBRUVDLGVBQWUsQ0FBRUMsR0FBRixFQUFPO0lBQ3BCLE9BQU8sWUFBWUksSUFBWixDQUFpQkosR0FBakIsSUFDSEEsR0FBRyxDQUFDQyxPQUFKLENBQVksV0FBWixFQUF5QixnQkFBekIsQ0FERyxHQUVIRCxHQUFHLENBQUNDLE9BQUosQ0FBWSx1QkFBWixFQUFxQyxr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
|
|
@@ -401,4 +401,4 @@ class JWProxy {
|
|
|
401
401
|
exports.JWProxy = JWProxy;
|
|
402
402
|
var _default = JWProxy;
|
|
403
403
|
exports.default = _default;
|
|
404
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9qc29ud3AtcHJveHkvcHJveHkuanMiXSwibmFtZXMiOlsiREVGQVVMVF9MT0ciLCJsb2dnZXIiLCJnZXRMb2dnZXIiLCJERUZBVUxUX1JFUVVFU1RfVElNRU9VVCIsIkNPTVBBQ1RfRVJST1JfUEFUVEVSTlMiLCJNSlNPTldQIiwiVzNDIiwiUFJPVE9DT0xTIiwiSldQcm94eSIsImNvbnN0cnVjdG9yIiwib3B0cyIsIl8iLCJkZWZhdWx0cyIsInNjaGVtZSIsInNlcnZlciIsInBvcnQiLCJiYXNlIiwiREVGQVVMVF9CQVNFX1BBVEgiLCJyZXFCYXNlUGF0aCIsInNlc3Npb25JZCIsInRpbWVvdXQiLCJ0b0xvd2VyQ2FzZSIsIl9hY3RpdmVSZXF1ZXN0cyIsIl9kb3duc3RyZWFtUHJvdG9jb2wiLCJhZ2VudE9wdHMiLCJrZWVwQWxpdmUiLCJtYXhTb2NrZXRzIiwibWF4RnJlZVNvY2tldHMiLCJodHRwQWdlbnQiLCJodHRwIiwiQWdlbnQiLCJodHRwc0FnZW50IiwiaHR0cHMiLCJwcm90b2NvbENvbnZlcnRlciIsIlByb3RvY29sQ29udmVydGVyIiwicHJveHkiLCJiaW5kIiwibG9nIiwiX2xvZyIsInJlcXVlc3QiLCJyZXF1ZXN0Q29uZmlnIiwicmVxUHJvbWlzZSIsInB1c2giLCJwdWxsIiwiZ2V0QWN0aXZlUmVxdWVzdHNDb3VudCIsImxlbmd0aCIsImNhbmNlbEFjdGl2ZVJlcXVlc3RzIiwiZW5kcG9pbnRSZXF1aXJlc1Nlc3Npb25JZCIsImVuZHBvaW50IiwiaW5jbHVkZXMiLCJkb3duc3RyZWFtUHJvdG9jb2wiLCJ2YWx1ZSIsImdldFVybEZvclByb3h5IiwidXJsIiwicHJveHlCYXNlIiwiZW5kcG9pbnRSZSIsInJlbWFpbmluZ1VybCIsInRlc3QiLCJmaXJzdCIsIlJlZ0V4cCIsImV4ZWMiLCJFcnJvciIsInJlcGxhY2UiLCJzdHJpcFByZWZpeFJlIiwicmVxdWlyZXNTZXNzaW9uSWQiLCJzZXNzaW9uQmFzZVJlIiwibWF0Y2giLCJtZXRob2QiLCJib2R5IiwidG9VcHBlckNhc2UiLCJuZXdVcmwiLCJ0cnVuY2F0ZUJvZHkiLCJjb250ZW50IiwidHJ1bmNhdGUiLCJpc1N0cmluZyIsIkpTT04iLCJzdHJpbmdpZnkiLCJNQVhfTE9HX0JPRFlfTEVOR1RIIiwicmVxT3B0cyIsImhlYWRlcnMiLCJhY2NlcHQiLCJ1dGlsIiwiaGFzVmFsdWUiLCJkYXRhIiwicGFyc2UiLCJlIiwiZGVidWciLCJ0aHJvd1Byb3h5RXJyb3IiLCJlcnJvciIsImVyciIsInJlc3BvbnNlIiwic3RhdHVzIiwiaXNSZXNwb25zZUxvZ2dlZCIsImlzUGxhaW5PYmplY3QiLCJpc1Nlc3Npb25DcmVhdGlvblJlcXVlc3QiLCJnZXRQcm90b2NvbEZyb21SZXNCb2R5IiwiaW5mbyIsImhhcyIsInBhcnNlSW50IiwicmVzIiwic3RhdHVzQ29kZSIsInByb3h5RXJyb3JNc2ciLCJtZXNzYWdlIiwic29tZSIsInAiLCJzdGFjayIsImVycm9ycyIsIlByb3h5UmVxdWVzdEVycm9yIiwicmVzT2JqIiwiaXNJbnRlZ2VyIiwiaXNVbmRlZmluZWQiLCJyZXF1ZXN0VG9Db21tYW5kTmFtZSIsImV4dHJhY3RDb21tYW5kTmFtZSIsInBhdHRlcm4iLCJwYXRoTWF0Y2giLCJjb21tYW5kTmFtZSIsImVzY2FwZVJlZ0V4cCIsInByb3h5Q29tbWFuZCIsImNvbnZlcnRBbmRQcm94eSIsImNvbW1hbmQiLCJyZXNCb2R5T2JqIiwiZ2V0QWN0dWFsRXJyb3IiLCJVbmtub3duRXJyb3IiLCJwcm90b2NvbCIsImlzTmFOIiwiaXNFbXB0eSIsInN0YWNrdHJhY2UiLCJnZXRTZXNzaW9uSWRGcm9tVXJsIiwicHJveHlSZXFSZXMiLCJyZXEiLCJvcmlnaW5hbFVybCIsInNldCIsInJlcVNlc3Npb25JZCIsInNlbmQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEs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Qjs7QUFDQSxVQUFJRSxZQUFKLEVBQWtCO0FBQ2hCLGFBQUsvRixHQUFMLENBQVMyRCxJQUFULENBQWUsdUJBQXNCd0IsVUFBVSxDQUFDckcsU0FBVSxTQUFRaUgsWUFBYSxFQUEvRTtBQUNBWixRQUFBQSxVQUFVLENBQUNyRyxTQUFYLEdBQXVCaUgsWUFBdkI7QUFDRCxPQUhELE1BR08sSUFBSSxLQUFLakgsU0FBVCxFQUFvQjtBQUN6QixhQUFLa0IsR0FBTCxDQUFTMkQsSUFBVCxDQUFlLHVCQUFzQndCLFVBQVUsQ0FBQ3JHLFNBQVUsU0FBUSxLQUFLQSxTQUFVLEVBQWpGO0FBQ0FxRyxRQUFBQSxVQUFVLENBQUNyRyxTQUFYLEdBQXVCLEtBQUtBLFNBQTVCO0FBQ0Q7QUFDRjs7QUFDRHFHLElBQUFBLFVBQVUsQ0FBQ3JFLEtBQVgsR0FBbUIsa0NBQW9CcUUsVUFBVSxDQUFDckUsS0FBL0IsQ0FBbkI7QUFDQWdELElBQUFBLEdBQUcsQ0FBQ1IsTUFBSixDQUFXUyxVQUFYLEVBQXVCaUMsSUFBdkIsQ0FBNEIxRCxJQUFJLENBQUNDLFNBQUwsQ0FBZSwyQkFBYTRDLFVBQWIsQ0FBZixDQUE1QjtBQUNEOztBQXpVVzs7O2VBNlVDaEgsTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBsb2dnZXIsIHV0aWwgfSBmcm9tICdAYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IGdldFN1bW1hcnlCeUNvZGUgfSBmcm9tICcuLi9qc29ud3Atc3RhdHVzL3N0YXR1cyc7XG5pbXBvcnQge1xuICBlcnJvcnMsIGlzRXJyb3JUeXBlLCBlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZSwgZXJyb3JGcm9tVzNDSnNvbkNvZGUsXG4gIGdldFJlc3BvbnNlRm9yVzNDRXJyb3IsXG59IGZyb20gJy4uL3Byb3RvY29sL2Vycm9ycyc7XG5pbXBvcnQgeyByb3V0ZVRvQ29tbWFuZE5hbWUgfSBmcm9tICcuLi9wcm90b2NvbCc7XG5pbXBvcnQgeyBNQVhfTE9HX0JPRFlfTEVOR1RILCBERUZBVUxUX0JBU0VfUEFUSCwgUFJPVE9DT0xTIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCBQcm90b2NvbENvbnZlcnRlciBmcm9tICcuL3Byb3RvY29sLWNvbnZlcnRlcic7XG5pbXBvcnQgeyBmb3JtYXRSZXNwb25zZVZhbHVlLCBmb3JtYXRTdGF0dXMgfSBmcm9tICcuLi9wcm90b2NvbC9oZWxwZXJzJztcbmltcG9ydCBodHRwIGZyb20gJ2h0dHAnO1xuaW1wb3J0IGh0dHBzIGZyb20gJ2h0dHBzJztcblxuY29uc3QgREVGQVVMVF9MT0cgPSBsb2dnZXIuZ2V0TG9nZ2VyKCdXRCBQcm94eScpO1xuY29uc3QgREVGQVVMVF9SRVFVRVNUX1RJTUVPVVQgPSAyNDAwMDA7XG5jb25zdCBDT01QQUNUX0VSUk9SX1BBVFRFUk5TID0gW1xuICAvXFxiRUNPTk5SRUZVU0VEXFxiLyxcbiAgL3NvY2tldCBoYW5nIHVwLyxcbl07XG5cbmNvbnN0IHtNSlNPTldQLCBXM0N9ID0gUFJPVE9DT0xTO1xuXG5jbGFzcyBKV1Byb3h5IHtcbiAgY29uc3RydWN0b3IgKG9wdHMgPSB7fSkge1xuICAgIF8uZGVmYXVsdHModGhpcywgb3B0cywge1xuICAgICAgc2NoZW1lOiAnaHR0cCcsXG4gICAgICBzZXJ2ZXI6ICdsb2NhbGhvc3QnLFxuICAgICAgcG9ydDogNDQ0NCxcbiAgICAgIGJhc2U6IERFRkFVTFRfQkFTRV9QQVRILFxuICAgICAgcmVxQmFzZVBhdGg6IERFRkFVTFRfQkFTRV9QQVRILFxuICAgICAgc2Vzc2lvbklkOiBudWxsLFxuICAgICAgdGltZW91dDogREVGQVVMVF9SRVFVRVNUX1RJTUVPVVQsXG4gICAgfSk7XG4gICAgdGhpcy5zY2hlbWUgPSB0aGlzLnNjaGVtZS50b0xvd2VyQ2FzZSgpO1xuICAgIHRoaXMuX2FjdGl2ZVJlcXVlc3RzID0gW107XG4gICAgdGhpcy5fZG93bnN0cmVhbVByb3RvY29sID0gbnVsbDtcbiAgICBjb25zdCBhZ2VudE9wdHMgPSB7XG4gICAgICBrZWVwQWxpdmU6IG9wdHMua2VlcEFsaXZlID8/IHRydWUsXG4gICAgICBtYXhTb2NrZXRzOiAxMCxcbiAgICAgIG1heEZyZWVTb2NrZXRzOiA1LFxuICAgIH07XG4gICAgdGhpcy5odHRwQWdlbnQgPSBuZXcgaHR0cC5BZ2VudChhZ2VudE9wdHMpO1xuICAgIHRoaXMuaHR0cHNBZ2VudCA9IG5ldyBodHRwcy5BZ2VudChhZ2VudE9wdHMpO1xuICAgIHRoaXMucHJvdG9jb2xDb252ZXJ0ZXIgPSBuZXcgUHJvdG9jb2xDb252ZXJ0ZXIodGhpcy5wcm94eS5iaW5kKHRoaXMpLCBvcHRzLmxvZyk7XG4gICAgdGhpcy5fbG9nID0gb3B0cy5sb2c7XG4gIH1cblxuICBnZXQgbG9nICgpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9nID8/IERFRkFVTFRfTE9HO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcmZvcm1zIHJlcXVlc3RzIHRvIHRoZSBkb3duc3RyZWFtIHNlcnZlclxuICAgKlxuICAgKiBAcHJpdmF0ZSAtIERvIG5vdCBjYWxsIHRoaXMgbWV0aG9kIGRpcmVjdGx5LFxuICAgKiBpdCB1c2VzIGNsaWVudC1zcGVjaWZpYyBhcmd1bWVudHMgYW5kIHJlc3BvbnNlcyFcbiAgICpcbiAgICogQHBhcmFtIHtBeGlvc1JlcXVlc3RDb25maWd9IHJlcXVlc3RDb25maWdcbiAgICogQHJldHVybnMge0F4aW9zUmVzcG9uc2V9XG4gICAqL1xuICBhc3luYyByZXF1ZXN0IChyZXF1ZXN0Q29uZmlnKSB7XG4gICAgY29uc3QgcmVxUHJvbWlzZSA9IGF4aW9zKHJlcXVlc3RDb25maWcpO1xuICAgIHRoaXMuX2FjdGl2ZVJlcXVlc3RzLnB1c2gocmVxUHJvbWlzZSk7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCByZXFQcm9taXNlO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBfLnB1bGwodGhpcy5fYWN0aXZlUmVxdWVzdHMsIHJlcVByb21pc2UpO1xuICAgIH1cbiAgfVxuXG4gIGdldEFjdGl2ZVJlcXVlc3RzQ291bnQgKCkge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVSZXF1ZXN0cy5sZW5ndGg7XG4gIH1cblxuICBjYW5jZWxBY3RpdmVSZXF1ZXN0cyAoKSB7XG4gICAgdGhpcy5fYWN0aXZlUmVxdWVzdHMgPSBbXTtcbiAgfVxuXG4gIGVuZHBvaW50UmVxdWlyZXNTZXNzaW9uSWQgKGVuZHBvaW50KSB7XG4gICAgcmV0dXJuICFfLmluY2x1ZGVzKFsnL3Nlc3Npb24nLCAnL3Nlc3Npb25zJywgJy9zdGF0dXMnXSwgZW5kcG9pbnQpO1xuICB9XG5cbiAgc2V0IGRvd25zdHJlYW1Qcm90b2NvbCAodmFsdWUpIHtcbiAgICB0aGlzLl9kb3duc3RyZWFtUHJvdG9jb2wgPSB2YWx1ZTtcbiAgICB0aGlzLnByb3RvY29sQ29udmVydGVyLmRvd25zdHJlYW1Qcm90b2NvbCA9IHZhbHVlO1xuICB9XG5cbiAgZ2V0IGRvd25zdHJlYW1Qcm90b2NvbCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rvd25zdHJlYW1Qcm90b2NvbDtcbiAgfVxuXG4gIGdldFVybEZvclByb3h5ICh1cmwpIHtcbiAgICBpZiAodXJsID09PSAnJykge1xuICAgICAgdXJsID0gJy8nO1xuICAgIH1cbiAgICBjb25zdCBwcm94eUJhc2UgPSBgJHt0aGlzLnNjaGVtZX06Ly8ke3RoaXMuc2VydmVyfToke3RoaXMucG9ydH0ke3RoaXMuYmFzZX1gO1xuICAgIGNvbnN0IGVuZHBvaW50UmUgPSAnKC8oc2Vzc2lvbnxzdGF0dXMpKSc7XG4gICAgbGV0IHJlbWFpbmluZ1VybCA9ICcnO1xuICAgIGlmICgvXmh0dHAvLnRlc3QodXJsKSkge1xuICAgICAgY29uc3QgZmlyc3QgPSAobmV3IFJlZ0V4cChgKGh0dHBzPzovLy4rKSR7ZW5kcG9pbnRSZX1gKSkuZXhlYyh1cmwpO1xuICAgICAgaWYgKCFmaXJzdCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0dvdCBhIGNvbXBsZXRlIHVybCBidXQgY291bGQgbm90IGV4dHJhY3QgSldQIGVuZHBvaW50Jyk7XG4gICAgICB9XG4gICAgICByZW1haW5pbmdVcmwgPSB1cmwucmVwbGFjZShmaXJzdFsxXSwgJycpO1xuICAgIH0gZWxzZSBpZiAoKG5ldyBSZWdFeHAoJ14vJykpLnRlc3QodXJsKSkge1xuICAgICAgcmVtYWluaW5nVXJsID0gdXJsO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYERpZCBub3Qga25vdyB3aGF0IHRvIGRvIHdpdGggdXJsICcke3VybH0nYCk7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RyaXBQcmVmaXhSZSA9IG5ldyBSZWdFeHAoJ14uKj8oLyhzZXNzaW9ufHN0YXR1cykuKikkJyk7XG4gICAgaWYgKHN0cmlwUHJlZml4UmUudGVzdChyZW1haW5pbmdVcmwpKSB7XG4gICAgICByZW1haW5pbmdVcmwgPSBzdHJpcFByZWZpeFJlLmV4ZWMocmVtYWluaW5nVXJsKVsxXTtcbiAgICB9XG5cbiAgICBpZiAoIShuZXcgUmVnRXhwKGVuZHBvaW50UmUpKS50ZXN0KHJlbWFpbmluZ1VybCkpIHtcbiAgICAgIHJlbWFpbmluZ1VybCA9IGAvc2Vzc2lvbi8ke3RoaXMuc2Vzc2lvbklkfSR7cmVtYWluaW5nVXJsfWA7XG4gICAgfVxuXG4gICAgY29uc3QgcmVxdWlyZXNTZXNzaW9uSWQgPSB0aGlzLmVuZHBvaW50UmVxdWlyZXNTZXNzaW9uSWQocmVtYWluaW5nVXJsKTtcblxuICAgIGlmIChyZXF1aXJlc1Nlc3Npb25JZCAmJiB0aGlzLnNlc3Npb25JZCA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUcnlpbmcgdG8gcHJveHkgYSBzZXNzaW9uIGNvbW1hbmQgd2l0aG91dCBzZXNzaW9uIGlkJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2Vzc2lvbkJhc2VSZSA9IG5ldyBSZWdFeHAoJ14vc2Vzc2lvbi8oW14vXSspJyk7XG4gICAgaWYgKHNlc3Npb25CYXNlUmUudGVzdChyZW1haW5pbmdVcmwpKSB7XG4gICAgICAvLyB3ZSBoYXZlIHNvbWV0aGluZyBsaWtlIC9zZXNzaW9uLzppZC9mb29iYXIsIHNvIHdlIG5lZWQgdG8gcmVwbGFjZVxuICAgICAgLy8gdGhlIHNlc3Npb24gaWRcbiAgICAgIGNvbnN0IG1hdGNoID0gc2Vzc2lvbkJhc2VSZS5leGVjKHJlbWFpbmluZ1VybCk7XG4gICAgICByZW1haW5pbmdVcmwgPSByZW1haW5pbmdVcmwucmVwbGFjZShtYXRjaFsxXSwgdGhpcy5zZXNzaW9uSWQpO1xuICAgIH0gZWxzZSBpZiAocmVxdWlyZXNTZXNzaW9uSWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ291bGQgbm90IGZpbmQgOnNlc3Npb24gc2VjdGlvbiBmb3IgdXJsOiAke3JlbWFpbmluZ1VybH1gKTtcbiAgICB9XG4gICAgcmVtYWluaW5nVXJsID0gcmVtYWluaW5nVXJsLnJlcGxhY2UoL1xcLyQvLCAnJyk7IC8vIGNhbid0IGhhdmUgdHJhaWxpbmcgc2xhc2hlc1xuXG4gICAgcmV0dXJuIHByb3h5QmFzZSArIHJlbWFpbmluZ1VybDtcbiAgfVxuXG4gIGFzeW5jIHByb3h5ICh1cmwsIG1ldGhvZCwgYm9keSA9IG51bGwpIHtcbiAgICBtZXRob2QgPSBtZXRob2QudG9VcHBlckNhc2UoKTtcbiAgICBjb25zdCBuZXdVcmwgPSB0aGlzLmdldFVybEZvclByb3h5KHVybCk7XG4gICAgY29uc3QgdHJ1bmNhdGVCb2R5ID0gKGNvbnRlbnQpID0+IF8udHJ1bmNhdGUoXG4gICAgICBfLmlzU3RyaW5nKGNvbnRlbnQpID8gY29udGVudCA6IEpTT04uc3RyaW5naWZ5KGNvbnRlbnQpLFxuICAgICAgeyBsZW5ndGg6IE1BWF9MT0dfQk9EWV9MRU5HVEggfSk7XG4gICAgY29uc3QgcmVxT3B0cyA9IHtcbiAgICAgIHVybDogbmV3VXJsLFxuICAgICAgbWV0aG9kLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLTgnLFxuICAgICAgICAndXNlci1hZ2VudCc6ICdhcHBpdW0nLFxuICAgICAgICBhY2NlcHQ6ICdhcHBsaWNhdGlvbi9qc29uLCAqLyonLFxuICAgICAgfSxcbiAgICAgIHByb3h5OiBmYWxzZSxcbiAgICAgIHRpbWVvdXQ6IHRoaXMudGltZW91dCxcbiAgICAgIGh0dHBBZ2VudDogdGhpcy5odHRwQWdlbnQsXG4gICAgICBodHRwc0FnZW50OiB0aGlzLmh0dHBzQWdlbnQsXG4gICAgfTtcbiAgICAvLyBHRVQgbWV0aG9kcyBzaG91bGRuJ3QgaGF2ZSBhbnkgYm9keS4gTW9zdCBzZXJ2ZXJzIGFyZSBPSyB3aXRoIHRoaXMsIGJ1dCBXZWJEcml2ZXJBZ2VudCB0aHJvd3MgNDAwIGVycm9yc1xuICAgIGlmICh1dGlsLmhhc1ZhbHVlKGJvZHkpICYmIG1ldGhvZCAhPT0gJ0dFVCcpIHtcbiAgICAgIGlmICh0eXBlb2YgYm9keSAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICByZXFPcHRzLmRhdGEgPSBKU09OLnBhcnNlKGJvZHkpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgaW50ZXJwcmV0IHRoZSByZXF1ZXN0IGJvZHkgYXMgdmFsaWQgSlNPTjogJHt0cnVuY2F0ZUJvZHkoYm9keSl9YCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlcU9wdHMuZGF0YSA9IGJvZHk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5sb2cuZGVidWcoYFByb3h5aW5nIFske21ldGhvZH0gJHt1cmwgfHwgJy8nfV0gdG8gWyR7bWV0aG9kfSAke25ld1VybH1dIGAgK1xuICAgICAgKHJlcU9wdHMuZGF0YSA/IGB3aXRoIGJvZHk6ICR7dHJ1bmNhdGVCb2R5KHJlcU9wdHMuZGF0YSl9YCA6ICd3aXRoIG5vIGJvZHknKSk7XG5cbiAgICBjb25zdCB0aHJvd1Byb3h5RXJyb3IgPSAoZXJyb3IpID0+IHtcbiAgICAgIGNvbnN0IGVyciA9IG5ldyBFcnJvcihgVGhlIHJlcXVlc3QgdG8gJHt1cmx9IGhhcyBmYWlsZWRgKTtcbiAgICAgIGVyci5yZXNwb25zZSA9IHtcbiAgICAgICAgZGF0YTogZXJyb3IsXG4gICAgICAgIHN0YXR1czogNTAwXG4gICAgICB9O1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH07XG4gICAgbGV0IGlzUmVzcG9uc2VMb2dnZWQgPSBmYWxzZTtcbiAgICB0cnkge1xuICAgICAgY29uc3Qge2RhdGEsIHN0YXR1cywgaGVhZGVyc30gPSBhd2FpdCB0aGlzLnJlcXVlc3QocmVxT3B0cyk7XG4gICAgICAvLyBgZGF0YWAgbWlnaHQgYmUgcmVhbGx5IGJpZ1xuICAgICAgLy8gQmUgY2FyZWZ1bCB3aGlsZSBoYW5kbGluZyBpdCB0byBhdm9pZCBtZW1vcnkgbGVha3NcbiAgICAgIGlmICghXy5pc1BsYWluT2JqZWN0KGRhdGEpKSB7XG4gICAgICAgIC8vIFRoZSByZXNwb25zZSBzaG91bGQgYmUgYSB2YWxpZCBKU09OIG9iamVjdFxuICAgICAgICAvLyBJZiBpdCBjYW5ub3QgYmUgY29lcmNlZCB0byBhbiBvYmplY3QgdGhlbiB0aGUgcmVzcG9uc2UgaXMgd3JvbmdcbiAgICAgICAgdGhyb3dQcm94eUVycm9yKGRhdGEpO1xuICAgICAgfVxuICAgICAgdGhpcy5sb2cuZGVidWcoYEdvdCByZXNwb25zZSB3aXRoIHN0YXR1cyAke3N0YXR1c306ICR7dHJ1bmNhdGVCb2R5KGRhdGEpfWApO1xuICAgICAgaXNSZXNwb25zZUxvZ2dlZCA9IHRydWU7XG4gICAgICBjb25zdCBpc1Nlc3Npb25DcmVhdGlvblJlcXVlc3QgPSAvXFwvc2Vzc2lvbiQvLnRlc3QodXJsKSAmJiBtZXRob2QgPT09ICdQT1NUJztcbiAgICAgIGlmIChpc1Nlc3Npb25DcmVhdGlvblJlcXVlc3QpIHtcbiAgICAgICAgaWYgKHN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAgICAgdGhpcy5zZXNzaW9uSWQgPSBkYXRhLnNlc3Npb25JZCB8fCAoZGF0YS52YWx1ZSB8fCB7fSkuc2Vzc2lvbklkO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZG93bnN0cmVhbVByb3RvY29sID0gdGhpcy5nZXRQcm90b2NvbEZyb21SZXNCb2R5KGRhdGEpO1xuICAgICAgICB0aGlzLmxvZy5pbmZvKGBEZXRlcm1pbmVkIHRoZSBkb3duc3RyZWFtIHByb3RvY29sIGFzICcke3RoaXMuZG93bnN0cmVhbVByb3RvY29sfSdgKTtcbiAgICAgIH1cbiAgICAgIGlmIChfLmhhcyhkYXRhLCAnc3RhdHVzJykgJiYgcGFyc2VJbnQoZGF0YS5zdGF0dXMsIDEwKSAhPT0gMCkge1xuICAgICAgICAvLyBTb21lIHNlcnZlcnMsIGxpa2UgY2hyb21lZHJpdmVyIG1heSByZXR1cm4gcmVzcG9uc2UgY29kZSAyMDAgZm9yIG5vbi16ZXJvIEpTT05XUCBzdGF0dXNlc1xuICAgICAgICB0aHJvd1Byb3h5RXJyb3IoZGF0YSk7XG4gICAgICB9XG4gICAgICBjb25zdCByZXMgPSB7c3RhdHVzQ29kZTogc3RhdHVzLCBoZWFkZXJzLCBib2R5OiBkYXRhfTtcbiAgICAgIHJldHVybiBbcmVzLCBkYXRhXTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAvLyBXZSBvbmx5IGNvbnNpZGVyIGFuIGVycm9yIHVuZXhwZWN0ZWQgaWYgdGhpcyB3YXMgbm90XG4gICAgICAvLyBhbiBhc3luYyByZXF1ZXN0IG1vZHVsZSBlcnJvciBvciBpZiB0aGUgcmVzcG9uc2UgY2Fubm90IGJlIGNhc3QgdG9cbiAgICAgIC8vIGEgdmFsaWQgSlNPTlxuICAgICAgbGV0IHByb3h5RXJyb3JNc2cgPSBlLm1lc3NhZ2U7XG4gICAgICBpZiAodXRpbC5oYXNWYWx1ZShlLnJlc3BvbnNlKSkge1xuICAgICAgICBpZiAoIWlzUmVzcG9uc2VMb2dnZWQpIHtcbiAgICAgICAgICBjb25zdCBlcnJvciA9IHRydW5jYXRlQm9keShlLnJlc3BvbnNlLmRhdGEpO1xuICAgICAgICAgIHRoaXMubG9nLmluZm8odXRpbC5oYXNWYWx1ZShlLnJlc3BvbnNlLnN0YXR1cylcbiAgICAgICAgICAgID8gYEdvdCByZXNwb25zZSB3aXRoIHN0YXR1cyAke2UucmVzcG9uc2Uuc3RhdHVzfTogJHtlcnJvcn1gXG4gICAgICAgICAgICA6IGBHb3QgcmVzcG9uc2Ugd2l0aCB1bmtub3duIHN0YXR1czogJHtlcnJvcn1gKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcHJveHlFcnJvck1zZyA9IGBDb3VsZCBub3QgcHJveHkgY29tbWFuZCB0byB0aGUgcmVtb3RlIHNlcnZlci4gT3JpZ2luYWwgZXJyb3I6ICR7ZS5tZXNzYWdlfWA7XG4gICAgICAgIGlmIChDT01QQUNUX0VSUk9SX1BBVFRFUk5TLnNvbWUoKHApID0+IHAudGVzdChlLm1lc3NhZ2UpKSkge1xuICAgICAgICAgIHRoaXMubG9nLmluZm8oZS5tZXNzYWdlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmxvZy5pbmZvKGUuc3RhY2spO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKHByb3h5RXJyb3JNc2csIGUucmVzcG9uc2U/LmRhdGEsIGUucmVzcG9uc2U/LnN0YXR1cyk7XG4gICAgfVxuICB9XG5cbiAgZ2V0UHJvdG9jb2xGcm9tUmVzQm9keSAocmVzT2JqKSB7XG4gICAgaWYgKF8uaXNJbnRlZ2VyKHJlc09iai5zdGF0dXMpKSB7XG4gICAgICByZXR1cm4gTUpTT05XUDtcbiAgICB9XG4gICAgaWYgKCFfLmlzVW5kZWZpbmVkKHJlc09iai52YWx1ZSkpIHtcbiAgICAgIHJldHVybiBXM0M7XG4gICAgfVxuICB9XG5cbiAgcmVxdWVzdFRvQ29tbWFuZE5hbWUgKHVybCwgbWV0aG9kKSB7XG4gICAgY29uc3QgZXh0cmFjdENvbW1hbmROYW1lID0gKHBhdHRlcm4pID0+IHtcbiAgICAgIGNvbnN0IHBhdGhNYXRjaCA9IHBhdHRlcm4uZXhlYyh1cmwpO1xuICAgICAgcmV0dXJuIHBhdGhNYXRjaCA/IHJvdXRlVG9Db21tYW5kTmFtZShwYXRoTWF0Y2hbMV0sIG1ldGhvZCwgdGhpcy5yZXFCYXNlUGF0aCkgOiBudWxsO1xuICAgIH07XG4gICAgbGV0IGNvbW1hbmROYW1lID0gcm91dGVUb0NvbW1hbmROYW1lKHVybCwgbWV0aG9kLCB0aGlzLnJlcUJhc2VQYXRoKTtcbiAgICBpZiAoIWNvbW1hbmROYW1lICYmIF8uaW5jbHVkZXModXJsLCBgJHt0aGlzLnJlcUJhc2VQYXRofS9zZXNzaW9uL2ApKSB7XG4gICAgICBjb21tYW5kTmFtZSA9IGV4dHJhY3RDb21tYW5kTmFtZShuZXcgUmVnRXhwKGAke18uZXNjYXBlUmVnRXhwKHRoaXMucmVxQmFzZVBhdGgpfS9zZXNzaW9uL1teL10rKC4rKWApKTtcbiAgICB9XG4gICAgaWYgKCFjb21tYW5kTmFtZSAmJiBfLmluY2x1ZGVzKHVybCwgdGhpcy5yZXFCYXNlUGF0aCkpIHtcbiAgICAgIGNvbW1hbmROYW1lID0gZXh0cmFjdENvbW1hbmROYW1lKG5ldyBSZWdFeHAoYCR7Xy5lc2NhcGVSZWdFeHAodGhpcy5yZXFCYXNlUGF0aCl9KC8uKylgKSk7XG4gICAgfVxuICAgIHJldHVybiBjb21tYW5kTmFtZTtcbiAgfVxuXG4gIGFzeW5jIHByb3h5Q29tbWFuZCAodXJsLCBtZXRob2QsIGJvZHkgPSBudWxsKSB7XG4gICAgY29uc3QgY29tbWFuZE5hbWUgPSB0aGlzLnJlcXVlc3RUb0NvbW1hbmROYW1lKHVybCwgbWV0aG9kKTtcbiAgICBpZiAoIWNvbW1hbmROYW1lKSB7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5wcm94eSh1cmwsIG1ldGhvZCwgYm9keSk7XG4gICAgfVxuICAgIHRoaXMubG9nLmRlYnVnKGBNYXRjaGVkICcke3VybH0nIHRvIGNvbW1hbmQgbmFtZSAnJHtjb21tYW5kTmFtZX0nYCk7XG5cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5wcm90b2NvbENvbnZlcnRlci5jb252ZXJ0QW5kUHJveHkoY29tbWFuZE5hbWUsIHVybCwgbWV0aG9kLCBib2R5KTtcbiAgfVxuXG4gIGFzeW5jIGNvbW1hbmQgKHVybCwgbWV0aG9kLCBib2R5ID0gbnVsbCkge1xuICAgIGxldCByZXNwb25zZTtcbiAgICBsZXQgcmVzQm9keU9iajtcbiAgICB0cnkge1xuICAgICAgW3Jlc3BvbnNlLCByZXNCb2R5T2JqXSA9IGF3YWl0IHRoaXMucHJveHlDb21tYW5kKHVybCwgbWV0aG9kLCBib2R5KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChpc0Vycm9yVHlwZShlcnIsIGVycm9ycy5Qcm94eVJlcXVlc3RFcnJvcikpIHtcbiAgICAgICAgdGhyb3cgZXJyLmdldEFjdHVhbEVycm9yKCk7XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgZXJyb3JzLlVua25vd25FcnJvcihlcnIubWVzc2FnZSk7XG4gICAgfVxuICAgIGNvbnN0IHByb3RvY29sID0gdGhpcy5nZXRQcm90b2NvbEZyb21SZXNCb2R5KHJlc0JvZHlPYmopO1xuICAgIGlmIChwcm90b2NvbCA9PT0gTUpTT05XUCkge1xuICAgICAgLy8gR290IHJlc3BvbnNlIGluIE1KU09OV1AgZm9ybWF0XG4gICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzQ29kZSA9PT0gMjAwICYmIHJlc0JvZHlPYmouc3RhdHVzID09PSAwKSB7XG4gICAgICAgIHJldHVybiByZXNCb2R5T2JqLnZhbHVlO1xuICAgICAgfVxuICAgICAgY29uc3Qgc3RhdHVzID0gcGFyc2VJbnQocmVzQm9keU9iai5zdGF0dXMsIDEwKTtcbiAgICAgIGlmICghaXNOYU4oc3RhdHVzKSAmJiBzdGF0dXMgIT09IDApIHtcbiAgICAgICAgbGV0IG1lc3NhZ2UgPSByZXNCb2R5T2JqLnZhbHVlO1xuICAgICAgICBpZiAoXy5oYXMobWVzc2FnZSwgJ21lc3NhZ2UnKSkge1xuICAgICAgICAgIG1lc3NhZ2UgPSBtZXNzYWdlLm1lc3NhZ2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgZXJyb3JGcm9tTUpTT05XUFN0YXR1c0NvZGUoc3RhdHVzLCBfLmlzRW1wdHkobWVzc2FnZSkgPyBnZXRTdW1tYXJ5QnlDb2RlKHN0YXR1cykgOiBtZXNzYWdlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHByb3RvY29sID09PSBXM0MpIHtcbiAgICAgIC8vIEdvdCByZXNwb25zZSBpbiBXM0MgZm9ybWF0XG4gICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzQ29kZSA8IDMwMCkge1xuICAgICAgICByZXR1cm4gcmVzQm9keU9iai52YWx1ZTtcbiAgICAgIH1cbiAgICAgIGlmIChfLmlzUGxhaW5PYmplY3QocmVzQm9keU9iai52YWx1ZSkgJiYgcmVzQm9keU9iai52YWx1ZS5lcnJvcikge1xuICAgICAgICB0aHJvdyBlcnJvckZyb21XM0NKc29uQ29kZShyZXNCb2R5T2JqLnZhbHVlLmVycm9yLCByZXNCb2R5T2JqLnZhbHVlLm1lc3NhZ2UsIHJlc0JvZHlPYmoudmFsdWUuc3RhY2t0cmFjZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChyZXNwb25zZS5zdGF0dXNDb2RlID09PSAyMDApIHtcbiAgICAgIC8vIFVua25vd24gcHJvdG9jb2wuIEtlZXBpbmcgaXQgYmVjYXVzZSBvZiB0aGUgYmFja3dhcmQgY29tcGF0aWJpbGl0eVxuICAgICAgcmV0dXJuIHJlc0JvZHlPYmo7XG4gICAgfVxuICAgIHRocm93IG5ldyBlcnJvcnMuVW5rbm93bkVycm9yKGBEaWQgbm90IGtub3cgd2hhdCB0byBkbyB3aXRoIHJlc3BvbnNlIGNvZGUgJyR7cmVzcG9uc2Uuc3RhdHVzQ29kZX0nIGAgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBhbmQgcmVzcG9uc2UgYm9keSAnJHtfLnRydW5jYXRlKEpTT04uc3RyaW5naWZ5KHJlc0JvZHlPYmopLCB7bGVuZ3RoOiAzMDB9KX0nYCk7XG4gIH1cblxuICBnZXRTZXNzaW9uSWRGcm9tVXJsICh1cmwpIHtcbiAgICBjb25zdCBtYXRjaCA9IHVybC5tYXRjaCgvXFwvc2Vzc2lvblxcLyhbXi9dKykvKTtcbiAgICByZXR1cm4gbWF0Y2ggPyBtYXRjaFsxXSA6IG51bGw7XG4gIH1cblxuICBhc3luYyBwcm94eVJlcVJlcyAocmVxLCByZXMpIHtcbiAgICAvLyAhIHRoaXMgbWV0aG9kIG11c3Qgbm90IHRocm93IGFueSBleGNlcHRpb25zXG4gICAgLy8gISBtYWtlIHN1cmUgdG8gY2FsbCByZXMuc2VuZCBiZWZvcmUgcmV0dXJuXG4gICAgbGV0IHN0YXR1c0NvZGU7XG4gICAgbGV0IHJlc0JvZHlPYmo7XG4gICAgdHJ5IHtcbiAgICAgIGxldCByZXNwb25zZTtcbiAgICAgIFtyZXNwb25zZSwgcmVzQm9keU9ial0gPSBhd2FpdCB0aGlzLnByb3h5Q29tbWFuZChyZXEub3JpZ2luYWxVcmwsIHJlcS5tZXRob2QsIHJlcS5ib2R5KTtcbiAgICAgIHJlcy5oZWFkZXJzID0gcmVzcG9uc2UuaGVhZGVycztcbiAgICAgIHN0YXR1c0NvZGUgPSByZXNwb25zZS5zdGF0dXNDb2RlO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgW3N0YXR1c0NvZGUsIHJlc0JvZHlPYmpdID0gZ2V0UmVzcG9uc2VGb3JXM0NFcnJvcihcbiAgICAgICAgaXNFcnJvclR5cGUoZXJyLCBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IpID8gZXJyLmdldEFjdHVhbEVycm9yKCkgOiBlcnJcbiAgICAgICk7XG4gICAgfVxuICAgIHJlcy5zZXQoJ2NvbnRlbnQtdHlwZScsICdhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04Jyk7XG4gICAgaWYgKCFfLmlzUGxhaW5PYmplY3QocmVzQm9keU9iaikpIHtcbiAgICAgIGNvbnN0IGVycm9yID0gbmV3IGVycm9ycy5Vbmtub3duRXJyb3IoXG4gICAgICAgIGBUaGUgZG93bnN0cmVhbSBzZXJ2ZXIgcmVzcG9uc2Ugd2l0aCB0aGUgc3RhdHVzIGNvZGUgJHtzdGF0dXNDb2RlfSBpcyBub3QgYSB2YWxpZCBKU09OIG9iamVjdDogYCArXG4gICAgICAgIF8udHJ1bmNhdGUoYCR7cmVzQm9keU9ian1gLCB7bGVuZ3RoOiAzMDB9KVxuICAgICAgKTtcbiAgICAgIFtzdGF0dXNDb2RlLCByZXNCb2R5T2JqXSA9IGdldFJlc3BvbnNlRm9yVzNDRXJyb3IoZXJyb3IpO1xuICAgIH1cblxuICAgIC8vIGlmIHRoZSBwcm94aWVkIHJlc3BvbnNlIGNvbnRhaW5zIGEgc2Vzc2lvbklkIHRoYXQgdGhlIGRvd25zdHJlYW1cbiAgICAvLyBkcml2ZXIgaGFzIGdlbmVyYXRlZCwgd2UgZG9uJ3Qgd2FudCB0byByZXR1cm4gdGhhdCB0byB0aGUgY2xpZW50LlxuICAgIC8vIEluc3RlYWQsIHJldHVybiB0aGUgaWQgZnJvbSB0aGUgcmVxdWVzdCBvciBmcm9tIGN1cnJlbnQgc2Vzc2lvblxuICAgIGlmIChfLmhhcyhyZXNCb2R5T2JqLCAnc2Vzc2lvbklkJykpIHtcbiAgICAgIGNvbnN0IHJlcVNlc3Npb25JZCA9IHRoaXMuZ2V0U2Vzc2lvbklkRnJvbVVybChyZXEub3JpZ2luYWxVcmwpO1xuICAgICAgaWYgKHJlcVNlc3Npb25JZCkge1xuICAgICAgICB0aGlzLmxvZy5pbmZvKGBSZXBsYWNpbmcgc2Vzc2lvbklkICR7cmVzQm9keU9iai5zZXNzaW9uSWR9IHdpdGggJHtyZXFTZXNzaW9uSWR9YCk7XG4gICAgICAgIHJlc0JvZHlPYmouc2Vzc2lvbklkID0gcmVxU2Vzc2lvbklkO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnNlc3Npb25JZCkge1xuICAgICAgICB0aGlzLmxvZy5pbmZvKGBSZXBsYWNpbmcgc2Vzc2lvbklkICR7cmVzQm9keU9iai5zZXNzaW9uSWR9IHdpdGggJHt0aGlzLnNlc3Npb25JZH1gKTtcbiAgICAgICAgcmVzQm9keU9iai5zZXNzaW9uSWQgPSB0aGlzLnNlc3Npb25JZDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmVzQm9keU9iai52YWx1ZSA9IGZvcm1hdFJlc3BvbnNlVmFsdWUocmVzQm9keU9iai52YWx1ZSk7XG4gICAgcmVzLnN0YXR1cyhzdGF0dXNDb2RlKS5zZW5kKEpTT04uc3RyaW5naWZ5KGZvcm1hdFN0YXR1cyhyZXNCb2R5T2JqKSkpO1xuICB9XG59XG5cbmV4cG9ydCB7IEpXUHJveHkgfTtcbmV4cG9ydCBkZWZhdWx0IEpXUHJveHk7XG4iXX0=
|
|
404
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJERUZBVUxUX0xPRyIsImxvZ2dlciIsImdldExvZ2dlciIsIkRFRkFVTFRfUkVRVUVTVF9USU1FT1VUIiwiQ09NUEFDVF9FUlJPUl9QQVRURVJOUyIsIk1KU09OV1AiLCJXM0MiLCJQUk9UT0NPTFMiLCJKV1Byb3h5IiwiY29uc3RydWN0b3IiLCJvcHRzIiwiXyIsImRlZmF1bHRzIiwic2NoZW1lIiwic2VydmVyIiwicG9ydCIsImJhc2UiLCJERUZBVUxUX0JBU0VfUEFUSCIsInJlcUJhc2VQYXRoIiwic2Vzc2lvbklkIiwidGltZW91dCIsInRvTG93ZXJDYXNlIiwiX2FjdGl2ZVJlcXVlc3RzIiwiX2Rvd25zdHJlYW1Qcm90b2NvbCIsImFnZW50T3B0cyIsImtlZXBBbGl2ZSIsIm1heFNvY2tldHMiLCJtYXhGcmVlU29ja2V0cyIsImh0dHBBZ2VudCIsImh0dHAiLCJBZ2VudCIsImh0dHBzQWdlbnQiLCJodHRwcyIsInByb3RvY29sQ29udmVydGVyIiwiUHJvdG9jb2xDb252ZXJ0ZXIiLCJwcm94eSIsImJpbmQiLCJsb2ciLCJfbG9nIiwicmVxdWVzdCIsInJlcXVlc3RDb25maWciLCJyZXFQcm9taXNlIiwicHVzaCIsInB1bGwiLCJnZXRBY3RpdmVSZXF1ZXN0c0NvdW50IiwibGVuZ3RoIiwiY2FuY2VsQWN0aXZlUmVxdWVzdHMiLCJlbmRwb2ludFJlcXVpcmVzU2Vzc2lvbklkIiwiZW5kcG9pbnQiLCJpbmNsdWRlcyIsImRvd25zdHJlYW1Qcm90b2NvbCIsInZhbHVlIiwiZ2V0VXJsRm9yUHJveHkiLCJ1cmwiLCJwcm94eUJhc2UiLCJlbmRwb2ludFJlIiwicmVtYWluaW5nVXJsIiwidGVzdCIsImZpcnN0IiwiUmVnRXhwIiwiZXhlYyIsIkVycm9yIiwicmVwbGFjZSIsInN0cmlwUHJlZml4UmUiLCJyZXF1aXJlc1Nlc3Npb25JZCIsInNlc3Npb25CYXNlUmUiLCJtYXRjaCIsIm1ldGhvZCIsImJvZHkiLCJ0b1VwcGVyQ2FzZSIsIm5ld1VybCIsInRydW5jYXRlQm9keSIsImNvbnRlbnQiLCJ0cnVuY2F0ZSIsImlzU3RyaW5nIiwiSlNPTiIsInN0cmluZ2lmeSIsIk1BWF9MT0dfQk9EWV9MRU5HVEgiLCJyZXFPcHRzIiwiaGVhZGVycyIsImFjY2VwdCIsInV0aWwiLCJoYXNWYWx1ZSIsImRhdGEiLCJwYXJzZSIsImUiLCJkZWJ1ZyIsInRocm93UHJveHlFcnJvciIsImVycm9yIiwiZXJyIiwicmVzcG9uc2UiLCJzdGF0dXMiLCJpc1Jlc3BvbnNlTG9nZ2VkIiwiaXNQbGFpbk9iamVjdCIsImlzU2Vzc2lvbkNyZWF0aW9uUmVxdWVzdCIsImdldFByb3RvY29sRnJvbVJlc0JvZHkiLCJpbmZvIiwiaGFzIiwicGFyc2VJbnQiLCJyZXMiLCJzdGF0dXNDb2RlIiwicHJveHlFcnJvck1zZyIsIm1lc3NhZ2UiLCJzb21lIiwicCIsInN0YWNrIiwiZXJyb3JzIiwiUHJveHlSZXF1ZXN0RXJyb3IiLCJyZXNPYmoiLCJpc0ludGVnZXIiLCJpc1VuZGVmaW5lZCIsInJlcXVlc3RUb0NvbW1hbmROYW1lIiwiZXh0cmFjdENvbW1hbmROYW1lIiwicGF0dGVybiIsInBhdGhNYXRjaCIsImNvbW1hbmROYW1lIiwiZXNjYXBlUmVnRXhwIiwicHJveHlDb21tYW5kIiwiY29udmVydEFuZFByb3h5IiwiY29tbWFuZCIsInJlc0JvZHlPYmoiLCJnZXRBY3R1YWxFcnJvciIsIlVua25vd25FcnJvciIsInByb3RvY29sIiwiaXNOYU4iLCJpc0VtcHR5Iiwic3RhY2t0cmFjZSIsImdldFNlc3Npb25JZEZyb21VcmwiLCJwcm94eVJlcVJlcyIsInJlcSIsIm9yaWdpbmFsVXJsIiwic2V0IiwicmVxU2Vzc2lvbklkIiwic2VuZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9qc29ud3AtcHJveHkvcHJveHkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IGxvZ2dlciwgdXRpbCB9IGZyb20gJ0BhcHBpdW0vc3VwcG9ydCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHsgZ2V0U3VtbWFyeUJ5Q29kZSB9IGZyb20gJy4uL2pzb253cC1zdGF0dXMvc3RhdHVzJztcbmltcG9ydCB7XG4gIGVycm9ycywgaXNFcnJvclR5cGUsIGVycm9yRnJvbU1KU09OV1BTdGF0dXNDb2RlLCBlcnJvckZyb21XM0NKc29uQ29kZSxcbiAgZ2V0UmVzcG9uc2VGb3JXM0NFcnJvcixcbn0gZnJvbSAnLi4vcHJvdG9jb2wvZXJyb3JzJztcbmltcG9ydCB7IHJvdXRlVG9Db21tYW5kTmFtZSB9IGZyb20gJy4uL3Byb3RvY29sJztcbmltcG9ydCB7IE1BWF9MT0dfQk9EWV9MRU5HVEgsIERFRkFVTFRfQkFTRV9QQVRILCBQUk9UT0NPTFMgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IFByb3RvY29sQ29udmVydGVyIGZyb20gJy4vcHJvdG9jb2wtY29udmVydGVyJztcbmltcG9ydCB7IGZvcm1hdFJlc3BvbnNlVmFsdWUsIGZvcm1hdFN0YXR1cyB9IGZyb20gJy4uL3Byb3RvY29sL2hlbHBlcnMnO1xuaW1wb3J0IGh0dHAgZnJvbSAnaHR0cCc7XG5pbXBvcnQgaHR0cHMgZnJvbSAnaHR0cHMnO1xuXG5jb25zdCBERUZBVUxUX0xPRyA9IGxvZ2dlci5nZXRMb2dnZXIoJ1dEIFByb3h5Jyk7XG5jb25zdCBERUZBVUxUX1JFUVVFU1RfVElNRU9VVCA9IDI0MDAwMDtcbmNvbnN0IENPTVBBQ1RfRVJST1JfUEFUVEVSTlMgPSBbXG4gIC9cXGJFQ09OTlJFRlVTRURcXGIvLFxuICAvc29ja2V0IGhhbmcgdXAvLFxuXTtcblxuY29uc3Qge01KU09OV1AsIFczQ30gPSBQUk9UT0NPTFM7XG5cbmNsYXNzIEpXUHJveHkge1xuICBjb25zdHJ1Y3RvciAob3B0cyA9IHt9KSB7XG4gICAgXy5kZWZhdWx0cyh0aGlzLCBvcHRzLCB7XG4gICAgICBzY2hlbWU6ICdodHRwJyxcbiAgICAgIHNlcnZlcjogJ2xvY2FsaG9zdCcsXG4gICAgICBwb3J0OiA0NDQ0LFxuICAgICAgYmFzZTogREVGQVVMVF9CQVNFX1BBVEgsXG4gICAgICByZXFCYXNlUGF0aDogREVGQVVMVF9CQVNFX1BBVEgsXG4gICAgICBzZXNzaW9uSWQ6IG51bGwsXG4gICAgICB0aW1lb3V0OiBERUZBVUxUX1JFUVVFU1RfVElNRU9VVCxcbiAgICB9KTtcbiAgICB0aGlzLnNjaGVtZSA9IHRoaXMuc2NoZW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgdGhpcy5fYWN0aXZlUmVxdWVzdHMgPSBbXTtcbiAgICB0aGlzLl9kb3duc3RyZWFtUHJvdG9jb2wgPSBudWxsO1xuICAgIGNvbnN0IGFnZW50T3B0cyA9IHtcbiAgICAgIGtlZXBBbGl2ZTogb3B0cy5rZWVwQWxpdmUgPz8gdHJ1ZSxcbiAgICAgIG1heFNvY2tldHM6IDEwLFxuICAgICAgbWF4RnJlZVNvY2tldHM6IDUsXG4gICAgfTtcbiAgICB0aGlzLmh0dHBBZ2VudCA9IG5ldyBodHRwLkFnZW50KGFnZW50T3B0cyk7XG4gICAgdGhpcy5odHRwc0FnZW50ID0gbmV3IGh0dHBzLkFnZW50KGFnZW50T3B0cyk7XG4gICAgdGhpcy5wcm90b2NvbENvbnZlcnRlciA9IG5ldyBQcm90b2NvbENvbnZlcnRlcih0aGlzLnByb3h5LmJpbmQodGhpcyksIG9wdHMubG9nKTtcbiAgICB0aGlzLl9sb2cgPSBvcHRzLmxvZztcbiAgfVxuXG4gIGdldCBsb2cgKCkge1xuICAgIHJldHVybiB0aGlzLl9sb2cgPz8gREVGQVVMVF9MT0c7XG4gIH1cblxuICAvKipcbiAgICogUGVyZm9ybXMgcmVxdWVzdHMgdG8gdGhlIGRvd25zdHJlYW0gc2VydmVyXG4gICAqXG4gICAqIEBwcml2YXRlIC0gRG8gbm90IGNhbGwgdGhpcyBtZXRob2QgZGlyZWN0bHksXG4gICAqIGl0IHVzZXMgY2xpZW50LXNwZWNpZmljIGFyZ3VtZW50cyBhbmQgcmVzcG9uc2VzIVxuICAgKlxuICAgKiBAcGFyYW0ge0F4aW9zUmVxdWVzdENvbmZpZ30gcmVxdWVzdENvbmZpZ1xuICAgKiBAcmV0dXJucyB7QXhpb3NSZXNwb25zZX1cbiAgICovXG4gIGFzeW5jIHJlcXVlc3QgKHJlcXVlc3RDb25maWcpIHtcbiAgICBjb25zdCByZXFQcm9taXNlID0gYXhpb3MocmVxdWVzdENvbmZpZyk7XG4gICAgdGhpcy5fYWN0aXZlUmVxdWVzdHMucHVzaChyZXFQcm9taXNlKTtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IHJlcVByb21pc2U7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIF8ucHVsbCh0aGlzLl9hY3RpdmVSZXF1ZXN0cywgcmVxUHJvbWlzZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0QWN0aXZlUmVxdWVzdHNDb3VudCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVJlcXVlc3RzLmxlbmd0aDtcbiAgfVxuXG4gIGNhbmNlbEFjdGl2ZVJlcXVlc3RzICgpIHtcbiAgICB0aGlzLl9hY3RpdmVSZXF1ZXN0cyA9IFtdO1xuICB9XG5cbiAgZW5kcG9pbnRSZXF1aXJlc1Nlc3Npb25JZCAoZW5kcG9pbnQpIHtcbiAgICByZXR1cm4gIV8uaW5jbHVkZXMoWycvc2Vzc2lvbicsICcvc2Vzc2lvbnMnLCAnL3N0YXR1cyddLCBlbmRwb2ludCk7XG4gIH1cblxuICBzZXQgZG93bnN0cmVhbVByb3RvY29sICh2YWx1ZSkge1xuICAgIHRoaXMuX2Rvd25zdHJlYW1Qcm90b2NvbCA9IHZhbHVlO1xuICAgIHRoaXMucHJvdG9jb2xDb252ZXJ0ZXIuZG93bnN0cmVhbVByb3RvY29sID0gdmFsdWU7XG4gIH1cblxuICBnZXQgZG93bnN0cmVhbVByb3RvY29sICgpIHtcbiAgICByZXR1cm4gdGhpcy5fZG93bnN0cmVhbVByb3RvY29sO1xuICB9XG5cbiAgZ2V0VXJsRm9yUHJveHkgKHVybCkge1xuICAgIGlmICh1cmwgPT09ICcnKSB7XG4gICAgICB1cmwgPSAnLyc7XG4gICAgfVxuICAgIGNvbnN0IHByb3h5QmFzZSA9IGAke3RoaXMuc2NoZW1lfTovLyR7dGhpcy5zZXJ2ZXJ9OiR7dGhpcy5wb3J0fSR7dGhpcy5iYXNlfWA7XG4gICAgY29uc3QgZW5kcG9pbnRSZSA9ICcoLyhzZXNzaW9ufHN0YXR1cykpJztcbiAgICBsZXQgcmVtYWluaW5nVXJsID0gJyc7XG4gICAgaWYgKC9eaHR0cC8udGVzdCh1cmwpKSB7XG4gICAgICBjb25zdCBmaXJzdCA9IChuZXcgUmVnRXhwKGAoaHR0cHM/Oi8vLispJHtlbmRwb2ludFJlfWApKS5leGVjKHVybCk7XG4gICAgICBpZiAoIWZpcnN0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignR290IGEgY29tcGxldGUgdXJsIGJ1dCBjb3VsZCBub3QgZXh0cmFjdCBKV1AgZW5kcG9pbnQnKTtcbiAgICAgIH1cbiAgICAgIHJlbWFpbmluZ1VybCA9IHVybC5yZXBsYWNlKGZpcnN0WzFdLCAnJyk7XG4gICAgfSBlbHNlIGlmICgobmV3IFJlZ0V4cCgnXi8nKSkudGVzdCh1cmwpKSB7XG4gICAgICByZW1haW5pbmdVcmwgPSB1cmw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRGlkIG5vdCBrbm93IHdoYXQgdG8gZG8gd2l0aCB1cmwgJyR7dXJsfSdgKTtcbiAgICB9XG5cbiAgICBjb25zdCBzdHJpcFByZWZpeFJlID0gbmV3IFJlZ0V4cCgnXi4qPygvKHNlc3Npb258c3RhdHVzKS4qKSQnKTtcbiAgICBpZiAoc3RyaXBQcmVmaXhSZS50ZXN0KHJlbWFpbmluZ1VybCkpIHtcbiAgICAgIHJlbWFpbmluZ1VybCA9IHN0cmlwUHJlZml4UmUuZXhlYyhyZW1haW5pbmdVcmwpWzFdO1xuICAgIH1cblxuICAgIGlmICghKG5ldyBSZWdFeHAoZW5kcG9pbnRSZSkpLnRlc3QocmVtYWluaW5nVXJsKSkge1xuICAgICAgcmVtYWluaW5nVXJsID0gYC9zZXNzaW9uLyR7dGhpcy5zZXNzaW9uSWR9JHtyZW1haW5pbmdVcmx9YDtcbiAgICB9XG5cbiAgICBjb25zdCByZXF1aXJlc1Nlc3Npb25JZCA9IHRoaXMuZW5kcG9pbnRSZXF1aXJlc1Nlc3Npb25JZChyZW1haW5pbmdVcmwpO1xuXG4gICAgaWYgKHJlcXVpcmVzU2Vzc2lvbklkICYmIHRoaXMuc2Vzc2lvbklkID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RyeWluZyB0byBwcm94eSBhIHNlc3Npb24gY29tbWFuZCB3aXRob3V0IHNlc3Npb24gaWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCBzZXNzaW9uQmFzZVJlID0gbmV3IFJlZ0V4cCgnXi9zZXNzaW9uLyhbXi9dKyknKTtcbiAgICBpZiAoc2Vzc2lvbkJhc2VSZS50ZXN0KHJlbWFpbmluZ1VybCkpIHtcbiAgICAgIC8vIHdlIGhhdmUgc29tZXRoaW5nIGxpa2UgL3Nlc3Npb24vOmlkL2Zvb2Jhciwgc28gd2UgbmVlZCB0byByZXBsYWNlXG4gICAgICAvLyB0aGUgc2Vzc2lvbiBpZFxuICAgICAgY29uc3QgbWF0Y2ggPSBzZXNzaW9uQmFzZVJlLmV4ZWMocmVtYWluaW5nVXJsKTtcbiAgICAgIHJlbWFpbmluZ1VybCA9IHJlbWFpbmluZ1VybC5yZXBsYWNlKG1hdGNoWzFdLCB0aGlzLnNlc3Npb25JZCk7XG4gICAgfSBlbHNlIGlmIChyZXF1aXJlc1Nlc3Npb25JZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgZmluZCA6c2Vzc2lvbiBzZWN0aW9uIGZvciB1cmw6ICR7cmVtYWluaW5nVXJsfWApO1xuICAgIH1cbiAgICByZW1haW5pbmdVcmwgPSByZW1haW5pbmdVcmwucmVwbGFjZSgvXFwvJC8sICcnKTsgLy8gY2FuJ3QgaGF2ZSB0cmFpbGluZyBzbGFzaGVzXG5cbiAgICByZXR1cm4gcHJveHlCYXNlICsgcmVtYWluaW5nVXJsO1xuICB9XG5cbiAgYXN5bmMgcHJveHkgKHVybCwgbWV0aG9kLCBib2R5ID0gbnVsbCkge1xuICAgIG1ldGhvZCA9IG1ldGhvZC50b1VwcGVyQ2FzZSgpO1xuICAgIGNvbnN0IG5ld1VybCA9IHRoaXMuZ2V0VXJsRm9yUHJveHkodXJsKTtcbiAgICBjb25zdCB0cnVuY2F0ZUJvZHkgPSAoY29udGVudCkgPT4gXy50cnVuY2F0ZShcbiAgICAgIF8uaXNTdHJpbmcoY29udGVudCkgPyBjb250ZW50IDogSlNPTi5zdHJpbmdpZnkoY29udGVudCksXG4gICAgICB7IGxlbmd0aDogTUFYX0xPR19CT0RZX0xFTkdUSCB9KTtcbiAgICBjb25zdCByZXFPcHRzID0ge1xuICAgICAgdXJsOiBuZXdVcmwsXG4gICAgICBtZXRob2QsXG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgICdjb250ZW50LXR5cGUnOiAnYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCcsXG4gICAgICAgICd1c2VyLWFnZW50JzogJ2FwcGl1bScsXG4gICAgICAgIGFjY2VwdDogJ2FwcGxpY2F0aW9uL2pzb24sICovKicsXG4gICAgICB9LFxuICAgICAgcHJveHk6IGZhbHNlLFxuICAgICAgdGltZW91dDogdGhpcy50aW1lb3V0LFxuICAgICAgaHR0cEFnZW50OiB0aGlzLmh0dHBBZ2VudCxcbiAgICAgIGh0dHBzQWdlbnQ6IHRoaXMuaHR0cHNBZ2VudCxcbiAgICB9O1xuICAgIC8vIEdFVCBtZXRob2RzIHNob3VsZG4ndCBoYXZlIGFueSBib2R5LiBNb3N0IHNlcnZlcnMgYXJlIE9LIHdpdGggdGhpcywgYnV0IFdlYkRyaXZlckFnZW50IHRocm93cyA0MDAgZXJyb3JzXG4gICAgaWYgKHV0aWwuaGFzVmFsdWUoYm9keSkgJiYgbWV0aG9kICE9PSAnR0VUJykge1xuICAgICAgaWYgKHR5cGVvZiBib2R5ICE9PSAnb2JqZWN0Jykge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHJlcU9wdHMuZGF0YSA9IEpTT04ucGFyc2UoYm9keSk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBpbnRlcnByZXQgdGhlIHJlcXVlc3QgYm9keSBhcyB2YWxpZCBKU09OOiAke3RydW5jYXRlQm9keShib2R5KX1gKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVxT3B0cy5kYXRhID0gYm9keTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmxvZy5kZWJ1ZyhgUHJveHlpbmcgWyR7bWV0aG9kfSAke3VybCB8fCAnLyd9XSB0byBbJHttZXRob2R9ICR7bmV3VXJsfV0gYCArXG4gICAgICAocmVxT3B0cy5kYXRhID8gYHdpdGggYm9keTogJHt0cnVuY2F0ZUJvZHkocmVxT3B0cy5kYXRhKX1gIDogJ3dpdGggbm8gYm9keScpKTtcblxuICAgIGNvbnN0IHRocm93UHJveHlFcnJvciA9IChlcnJvcikgPT4ge1xuICAgICAgY29uc3QgZXJyID0gbmV3IEVycm9yKGBUaGUgcmVxdWVzdCB0byAke3VybH0gaGFzIGZhaWxlZGApO1xuICAgICAgZXJyLnJlc3BvbnNlID0ge1xuICAgICAgICBkYXRhOiBlcnJvcixcbiAgICAgICAgc3RhdHVzOiA1MDBcbiAgICAgIH07XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfTtcbiAgICBsZXQgaXNSZXNwb25zZUxvZ2dlZCA9IGZhbHNlO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCB7ZGF0YSwgc3RhdHVzLCBoZWFkZXJzfSA9IGF3YWl0IHRoaXMucmVxdWVzdChyZXFPcHRzKTtcbiAgICAgIC8vIGBkYXRhYCBtaWdodCBiZSByZWFsbHkgYmlnXG4gICAgICAvLyBCZSBjYXJlZnVsIHdoaWxlIGhhbmRsaW5nIGl0IHRvIGF2b2lkIG1lbW9yeSBsZWFrc1xuICAgICAgaWYgKCFfLmlzUGxhaW5PYmplY3QoZGF0YSkpIHtcbiAgICAgICAgLy8gVGhlIHJlc3BvbnNlIHNob3VsZCBiZSBhIHZhbGlkIEpTT04gb2JqZWN0XG4gICAgICAgIC8vIElmIGl0IGNhbm5vdCBiZSBjb2VyY2VkIHRvIGFuIG9iamVjdCB0aGVuIHRoZSByZXNwb25zZSBpcyB3cm9uZ1xuICAgICAgICB0aHJvd1Byb3h5RXJyb3IoZGF0YSk7XG4gICAgICB9XG4gICAgICB0aGlzLmxvZy5kZWJ1ZyhgR290IHJlc3BvbnNlIHdpdGggc3RhdHVzICR7c3RhdHVzfTogJHt0cnVuY2F0ZUJvZHkoZGF0YSl9YCk7XG4gICAgICBpc1Jlc3BvbnNlTG9nZ2VkID0gdHJ1ZTtcbiAgICAgIGNvbnN0IGlzU2Vzc2lvbkNyZWF0aW9uUmVxdWVzdCA9IC9cXC9zZXNzaW9uJC8udGVzdCh1cmwpICYmIG1ldGhvZCA9PT0gJ1BPU1QnO1xuICAgICAgaWYgKGlzU2Vzc2lvbkNyZWF0aW9uUmVxdWVzdCkge1xuICAgICAgICBpZiAoc3RhdHVzID09PSAyMDApIHtcbiAgICAgICAgICB0aGlzLnNlc3Npb25JZCA9IGRhdGEuc2Vzc2lvbklkIHx8IChkYXRhLnZhbHVlIHx8IHt9KS5zZXNzaW9uSWQ7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kb3duc3RyZWFtUHJvdG9jb2wgPSB0aGlzLmdldFByb3RvY29sRnJvbVJlc0JvZHkoZGF0YSk7XG4gICAgICAgIHRoaXMubG9nLmluZm8oYERldGVybWluZWQgdGhlIGRvd25zdHJlYW0gcHJvdG9jb2wgYXMgJyR7dGhpcy5kb3duc3RyZWFtUHJvdG9jb2x9J2ApO1xuICAgICAgfVxuICAgICAgaWYgKF8uaGFzKGRhdGEsICdzdGF0dXMnKSAmJiBwYXJzZUludChkYXRhLnN0YXR1cywgMTApICE9PSAwKSB7XG4gICAgICAgIC8vIFNvbWUgc2VydmVycywgbGlrZSBjaHJvbWVkcml2ZXIgbWF5IHJldHVybiByZXNwb25zZSBjb2RlIDIwMCBmb3Igbm9uLXplcm8gSlNPTldQIHN0YXR1c2VzXG4gICAgICAgIHRocm93UHJveHlFcnJvcihkYXRhKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlcyA9IHtzdGF0dXNDb2RlOiBzdGF0dXMsIGhlYWRlcnMsIGJvZHk6IGRhdGF9O1xuICAgICAgcmV0dXJuIFtyZXMsIGRhdGFdO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIC8vIFdlIG9ubHkgY29uc2lkZXIgYW4gZXJyb3IgdW5leHBlY3RlZCBpZiB0aGlzIHdhcyBub3RcbiAgICAgIC8vIGFuIGFzeW5jIHJlcXVlc3QgbW9kdWxlIGVycm9yIG9yIGlmIHRoZSByZXNwb25zZSBjYW5ub3QgYmUgY2FzdCB0b1xuICAgICAgLy8gYSB2YWxpZCBKU09OXG4gICAgICBsZXQgcHJveHlFcnJvck1zZyA9IGUubWVzc2FnZTtcbiAgICAgIGlmICh1dGlsLmhhc1ZhbHVlKGUucmVzcG9uc2UpKSB7XG4gICAgICAgIGlmICghaXNSZXNwb25zZUxvZ2dlZCkge1xuICAgICAgICAgIGNvbnN0IGVycm9yID0gdHJ1bmNhdGVCb2R5KGUucmVzcG9uc2UuZGF0YSk7XG4gICAgICAgICAgdGhpcy5sb2cuaW5mbyh1dGlsLmhhc1ZhbHVlKGUucmVzcG9uc2Uuc3RhdHVzKVxuICAgICAgICAgICAgPyBgR290IHJlc3BvbnNlIHdpdGggc3RhdHVzICR7ZS5yZXNwb25zZS5zdGF0dXN9OiAke2Vycm9yfWBcbiAgICAgICAgICAgIDogYEdvdCByZXNwb25zZSB3aXRoIHVua25vd24gc3RhdHVzOiAke2Vycm9yfWApO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwcm94eUVycm9yTXNnID0gYENvdWxkIG5vdCBwcm94eSBjb21tYW5kIHRvIHRoZSByZW1vdGUgc2VydmVyLiBPcmlnaW5hbCBlcnJvcjogJHtlLm1lc3NhZ2V9YDtcbiAgICAgICAgaWYgKENPTVBBQ1RfRVJST1JfUEFUVEVSTlMuc29tZSgocCkgPT4gcC50ZXN0KGUubWVzc2FnZSkpKSB7XG4gICAgICAgICAgdGhpcy5sb2cuaW5mbyhlLm1lc3NhZ2UpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubG9nLmluZm8oZS5zdGFjayk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBlcnJvcnMuUHJveHlSZXF1ZXN0RXJyb3IocHJveHlFcnJvck1zZywgZS5yZXNwb25zZT8uZGF0YSwgZS5yZXNwb25zZT8uc3RhdHVzKTtcbiAgICB9XG4gIH1cblxuICBnZXRQcm90b2NvbEZyb21SZXNCb2R5IChyZXNPYmopIHtcbiAgICBpZiAoXy5pc0ludGVnZXIocmVzT2JqLnN0YXR1cykpIHtcbiAgICAgIHJldHVybiBNSlNPTldQO1xuICAgIH1cbiAgICBpZiAoIV8uaXNVbmRlZmluZWQocmVzT2JqLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIFczQztcbiAgICB9XG4gIH1cblxuICByZXF1ZXN0VG9Db21tYW5kTmFtZSAodXJsLCBtZXRob2QpIHtcbiAgICBjb25zdCBleHRyYWN0Q29tbWFuZE5hbWUgPSAocGF0dGVybikgPT4ge1xuICAgICAgY29uc3QgcGF0aE1hdGNoID0gcGF0dGVybi5leGVjKHVybCk7XG4gICAgICByZXR1cm4gcGF0aE1hdGNoID8gcm91dGVUb0NvbW1hbmROYW1lKHBhdGhNYXRjaFsxXSwgbWV0aG9kLCB0aGlzLnJlcUJhc2VQYXRoKSA6IG51bGw7XG4gICAgfTtcbiAgICBsZXQgY29tbWFuZE5hbWUgPSByb3V0ZVRvQ29tbWFuZE5hbWUodXJsLCBtZXRob2QsIHRoaXMucmVxQmFzZVBhdGgpO1xuICAgIGlmICghY29tbWFuZE5hbWUgJiYgXy5pbmNsdWRlcyh1cmwsIGAke3RoaXMucmVxQmFzZVBhdGh9L3Nlc3Npb24vYCkpIHtcbiAgICAgIGNvbW1hbmROYW1lID0gZXh0cmFjdENvbW1hbmROYW1lKG5ldyBSZWdFeHAoYCR7Xy5lc2NhcGVSZWdFeHAodGhpcy5yZXFCYXNlUGF0aCl9L3Nlc3Npb24vW14vXSsoLispYCkpO1xuICAgIH1cbiAgICBpZiAoIWNvbW1hbmROYW1lICYmIF8uaW5jbHVkZXModXJsLCB0aGlzLnJlcUJhc2VQYXRoKSkge1xuICAgICAgY29tbWFuZE5hbWUgPSBleHRyYWN0Q29tbWFuZE5hbWUobmV3IFJlZ0V4cChgJHtfLmVzY2FwZVJlZ0V4cCh0aGlzLnJlcUJhc2VQYXRoKX0oLy4rKWApKTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbW1hbmROYW1lO1xuICB9XG5cbiAgYXN5bmMgcHJveHlDb21tYW5kICh1cmwsIG1ldGhvZCwgYm9keSA9IG51bGwpIHtcbiAgICBjb25zdCBjb21tYW5kTmFtZSA9IHRoaXMucmVxdWVzdFRvQ29tbWFuZE5hbWUodXJsLCBtZXRob2QpO1xuICAgIGlmICghY29tbWFuZE5hbWUpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3h5KHVybCwgbWV0aG9kLCBib2R5KTtcbiAgICB9XG4gICAgdGhpcy5sb2cuZGVidWcoYE1hdGNoZWQgJyR7dXJsfScgdG8gY29tbWFuZCBuYW1lICcke2NvbW1hbmROYW1lfSdgKTtcblxuICAgIHJldHVybiBhd2FpdCB0aGlzLnByb3RvY29sQ29udmVydGVyLmNvbnZlcnRBbmRQcm94eShjb21tYW5kTmFtZSwgdXJsLCBtZXRob2QsIGJvZHkpO1xuICB9XG5cbiAgYXN5bmMgY29tbWFuZCAodXJsLCBtZXRob2QsIGJvZHkgPSBudWxsKSB7XG4gICAgbGV0IHJlc3BvbnNlO1xuICAgIGxldCByZXNCb2R5T2JqO1xuICAgIHRyeSB7XG4gICAgICBbcmVzcG9uc2UsIHJlc0JvZHlPYmpdID0gYXdhaXQgdGhpcy5wcm94eUNvbW1hbmQodXJsLCBtZXRob2QsIGJvZHkpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGlzRXJyb3JUeXBlKGVyciwgZXJyb3JzLlByb3h5UmVxdWVzdEVycm9yKSkge1xuICAgICAgICB0aHJvdyBlcnIuZ2V0QWN0dWFsRXJyb3IoKTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBlcnJvcnMuVW5rbm93bkVycm9yKGVyci5tZXNzYWdlKTtcbiAgICB9XG4gICAgY29uc3QgcHJvdG9jb2wgPSB0aGlzLmdldFByb3RvY29sRnJvbVJlc0JvZHkocmVzQm9keU9iaik7XG4gICAgaWYgKHByb3RvY29sID09PSBNSlNPTldQKSB7XG4gICAgICAvLyBHb3QgcmVzcG9uc2UgaW4gTUpTT05XUCBmb3JtYXRcbiAgICAgIGlmIChyZXNwb25zZS5zdGF0dXNDb2RlID09PSAyMDAgJiYgcmVzQm9keU9iai5zdGF0dXMgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIHJlc0JvZHlPYmoudmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCBzdGF0dXMgPSBwYXJzZUludChyZXNCb2R5T2JqLnN0YXR1cywgMTApO1xuICAgICAgaWYgKCFpc05hTihzdGF0dXMpICYmIHN0YXR1cyAhPT0gMCkge1xuICAgICAgICBsZXQgbWVzc2FnZSA9IHJlc0JvZHlPYmoudmFsdWU7XG4gICAgICAgIGlmIChfLmhhcyhtZXNzYWdlLCAnbWVzc2FnZScpKSB7XG4gICAgICAgICAgbWVzc2FnZSA9IG1lc3NhZ2UubWVzc2FnZTtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBlcnJvckZyb21NSlNPTldQU3RhdHVzQ29kZShzdGF0dXMsIF8uaXNFbXB0eShtZXNzYWdlKSA/IGdldFN1bW1hcnlCeUNvZGUoc3RhdHVzKSA6IG1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAocHJvdG9jb2wgPT09IFczQykge1xuICAgICAgLy8gR290IHJlc3BvbnNlIGluIFczQyBmb3JtYXRcbiAgICAgIGlmIChyZXNwb25zZS5zdGF0dXNDb2RlIDwgMzAwKSB7XG4gICAgICAgIHJldHVybiByZXNCb2R5T2JqLnZhbHVlO1xuICAgICAgfVxuICAgICAgaWYgKF8uaXNQbGFpbk9iamVjdChyZXNCb2R5T2JqLnZhbHVlKSAmJiByZXNCb2R5T2JqLnZhbHVlLmVycm9yKSB7XG4gICAgICAgIHRocm93IGVycm9yRnJvbVczQ0pzb25Db2RlKHJlc0JvZHlPYmoudmFsdWUuZXJyb3IsIHJlc0JvZHlPYmoudmFsdWUubWVzc2FnZSwgcmVzQm9keU9iai52YWx1ZS5zdGFja3RyYWNlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHJlc3BvbnNlLnN0YXR1c0NvZGUgPT09IDIwMCkge1xuICAgICAgLy8gVW5rbm93biBwcm90b2NvbC4gS2VlcGluZyBpdCBiZWNhdXNlIG9mIHRoZSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5XG4gICAgICByZXR1cm4gcmVzQm9keU9iajtcbiAgICB9XG4gICAgdGhyb3cgbmV3IGVycm9ycy5Vbmtub3duRXJyb3IoYERpZCBub3Qga25vdyB3aGF0IHRvIGRvIHdpdGggcmVzcG9uc2UgY29kZSAnJHtyZXNwb25zZS5zdGF0dXNDb2RlfScgYCArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGFuZCByZXNwb25zZSBib2R5ICcke18udHJ1bmNhdGUoSlNPTi5zdHJpbmdpZnkocmVzQm9keU9iaiksIHtsZW5ndGg6IDMwMH0pfSdgKTtcbiAgfVxuXG4gIGdldFNlc3Npb25JZEZyb21VcmwgKHVybCkge1xuICAgIGNvbnN0IG1hdGNoID0gdXJsLm1hdGNoKC9cXC9zZXNzaW9uXFwvKFteL10rKS8pO1xuICAgIHJldHVybiBtYXRjaCA/IG1hdGNoWzFdIDogbnVsbDtcbiAgfVxuXG4gIGFzeW5jIHByb3h5UmVxUmVzIChyZXEsIHJlcykge1xuICAgIC8vICEgdGhpcyBtZXRob2QgbXVzdCBub3QgdGhyb3cgYW55IGV4Y2VwdGlvbnNcbiAgICAvLyAhIG1ha2Ugc3VyZSB0byBjYWxsIHJlcy5zZW5kIGJlZm9yZSByZXR1cm5cbiAgICBsZXQgc3RhdHVzQ29kZTtcbiAgICBsZXQgcmVzQm9keU9iajtcbiAgICB0cnkge1xuICAgICAgbGV0IHJlc3BvbnNlO1xuICAgICAgW3Jlc3BvbnNlLCByZXNCb2R5T2JqXSA9IGF3YWl0IHRoaXMucHJveHlDb21tYW5kKHJlcS5vcmlnaW5hbFVybCwgcmVxLm1ldGhvZCwgcmVxLmJvZHkpO1xuICAgICAgcmVzLmhlYWRlcnMgPSByZXNwb25zZS5oZWFkZXJzO1xuICAgICAgc3RhdHVzQ29kZSA9IHJlc3BvbnNlLnN0YXR1c0NvZGU7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBbc3RhdHVzQ29kZSwgcmVzQm9keU9ial0gPSBnZXRSZXNwb25zZUZvclczQ0Vycm9yKFxuICAgICAgICBpc0Vycm9yVHlwZShlcnIsIGVycm9ycy5Qcm94eVJlcXVlc3RFcnJvcikgPyBlcnIuZ2V0QWN0dWFsRXJyb3IoKSA6IGVyclxuICAgICAgKTtcbiAgICB9XG4gICAgcmVzLnNldCgnY29udGVudC10eXBlJywgJ2FwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLTgnKTtcbiAgICBpZiAoIV8uaXNQbGFpbk9iamVjdChyZXNCb2R5T2JqKSkge1xuICAgICAgY29uc3QgZXJyb3IgPSBuZXcgZXJyb3JzLlVua25vd25FcnJvcihcbiAgICAgICAgYFRoZSBkb3duc3RyZWFtIHNlcnZlciByZXNwb25zZSB3aXRoIHRoZSBzdGF0dXMgY29kZSAke3N0YXR1c0NvZGV9IGlzIG5vdCBhIHZhbGlkIEpTT04gb2JqZWN0OiBgICtcbiAgICAgICAgXy50cnVuY2F0ZShgJHtyZXNCb2R5T2JqfWAsIHtsZW5ndGg6IDMwMH0pXG4gICAgICApO1xuICAgICAgW3N0YXR1c0NvZGUsIHJlc0JvZHlPYmpdID0gZ2V0UmVzcG9uc2VGb3JXM0NFcnJvcihlcnJvcik7XG4gICAgfVxuXG4gICAgLy8gaWYgdGhlIHByb3hpZWQgcmVzcG9uc2UgY29udGFpbnMgYSBzZXNzaW9uSWQgdGhhdCB0aGUgZG93bnN0cmVhbVxuICAgIC8vIGRyaXZlciBoYXMgZ2VuZXJhdGVkLCB3ZSBkb24ndCB3YW50IHRvIHJldHVybiB0aGF0IHRvIHRoZSBjbGllbnQuXG4gICAgLy8gSW5zdGVhZCwgcmV0dXJuIHRoZSBpZCBmcm9tIHRoZSByZXF1ZXN0IG9yIGZyb20gY3VycmVudCBzZXNzaW9uXG4gICAgaWYgKF8uaGFzKHJlc0JvZHlPYmosICdzZXNzaW9uSWQnKSkge1xuICAgICAgY29uc3QgcmVxU2Vzc2lvbklkID0gdGhpcy5nZXRTZXNzaW9uSWRGcm9tVXJsKHJlcS5vcmlnaW5hbFVybCk7XG4gICAgICBpZiAocmVxU2Vzc2lvbklkKSB7XG4gICAgICAgIHRoaXMubG9nLmluZm8oYFJlcGxhY2luZyBzZXNzaW9uSWQgJHtyZXNCb2R5T2JqLnNlc3Npb25JZH0gd2l0aCAke3JlcVNlc3Npb25JZH1gKTtcbiAgICAgICAgcmVzQm9keU9iai5zZXNzaW9uSWQgPSByZXFTZXNzaW9uSWQ7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2Vzc2lvbklkKSB7XG4gICAgICAgIHRoaXMubG9nLmluZm8oYFJlcGxhY2luZyBzZXNzaW9uSWQgJHtyZXNCb2R5T2JqLnNlc3Npb25JZH0gd2l0aCAke3RoaXMuc2Vzc2lvbklkfWApO1xuICAgICAgICByZXNCb2R5T2JqLnNlc3Npb25JZCA9IHRoaXMuc2Vzc2lvbklkO1xuICAgICAgfVxuICAgIH1cbiAgICByZXNCb2R5T2JqLnZhbHVlID0gZm9ybWF0UmVzcG9uc2VWYWx1ZShyZXNCb2R5T2JqLnZhbHVlKTtcbiAgICByZXMuc3RhdHVzKHN0YXR1c0NvZGUpLnNlbmQoSlNPTi5zdHJpbmdpZnkoZm9ybWF0U3RhdHVzKHJlc0JvZHlPYmopKSk7XG4gIH1cbn1cblxuZXhwb3J0IHsgSldQcm94eSB9O1xuZXhwb3J0IGRlZmF1bHQgSldQcm94eTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFJQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQSxNQUFNQSxXQUFXLEdBQUdDLGdCQUFPQyxTQUFQLENBQWlCLFVBQWpCLENBQXBCOztBQUNBLE1BQU1DLHVCQUF1QixHQUFHLE1BQWhDO0FBQ0EsTUFBTUMsc0JBQXNCLEdBQUcsQ0FDN0Isa0JBRDZCLEVBRTdCLGdCQUY2QixDQUEvQjtBQUtBLE1BQU07RUFBQ0MsT0FBRDtFQUFVQztBQUFWLElBQWlCQyxvQkFBdkI7O0FBRUEsTUFBTUMsT0FBTixDQUFjO0VBQ1pDLFdBQVcsQ0FBRUMsSUFBSSxHQUFHLEVBQVQsRUFBYTtJQUFBOztJQUN0QkMsZ0JBQUVDLFFBQUYsQ0FBVyxJQUFYLEVBQWlCRixJQUFqQixFQUF1QjtNQUNyQkcsTUFBTSxFQUFFLE1BRGE7TUFFckJDLE1BQU0sRUFBRSxXQUZhO01BR3JCQyxJQUFJLEVBQUUsSUFIZTtNQUlyQkMsSUFBSSxFQUFFQyw0QkFKZTtNQUtyQkMsV0FBVyxFQUFFRCw0QkFMUTtNQU1yQkUsU0FBUyxFQUFF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
|
|
@@ -134,4 +134,4 @@ function getSummaryByCode(code) {
|
|
|
134
134
|
|
|
135
135
|
var _default = codes;
|
|
136
136
|
exports.default = _default;
|
|
137
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
137
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb2RlcyIsIlN1Y2Nlc3MiLCJjb2RlIiwic3VtbWFyeSIsIk5vU3VjaERyaXZlciIsIk5vU3VjaEVsZW1lbnQiLCJOb1N1Y2hGcmFtZSIsIlVua25vd25Db21tYW5kIiwiU3RhbGVFbGVtZW50UmVmZXJlbmNlIiwiRWxlbWVudE5vdFZpc2libGUiLCJJbnZhbGlkRWxlbWVudFN0YXRlIiwiVW5rbm93bkVycm9yIiwiRWxlbWVudElzTm90U2VsZWN0YWJsZSIsIkphdmFTY3JpcHRFcnJvciIsIlhQYXRoTG9va3VwRXJyb3IiLCJUaW1lb3V0IiwiTm9TdWNoV2luZG93IiwiSW52YWxpZENvb2tpZURvbWFpbiIsIlVuYWJsZVRvU2V0Q29va2llIiwiVW5leHBlY3RlZEFsZXJ0T3BlbiIsIk5vQWxlcnRPcGVuRXJyb3IiLCJTY3JpcHRUaW1lb3V0IiwiSW52YWxpZEVsZW1lbnRDb29yZGluYXRlcyIsIklNRU5vdEF2YWlsYWJsZSIsIklNRUVuZ2luZUFjdGl2YXRpb25GYWlsZWQiLCJJbnZhbGlkU2VsZWN0b3IiLCJTZXNzaW9uTm90Q3JlYXRlZEV4Y2VwdGlvbiIsIk1vdmVUYXJnZXRPdXRPZkJvdW5kcyIsIk5vU3VjaENvbnRleHQiLCJnZXRTdW1tYXJ5QnlDb2RlIiwicGFyc2VJbnQiLCJvYmoiLCJfIiwidmFsdWVzIiwiaXNVbmRlZmluZWQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvanNvbndwLXN0YXR1cy9zdGF0dXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuY29uc3QgY29kZXMgPSB7XG4gIFN1Y2Nlc3M6IHtcbiAgICBjb2RlOiAwLFxuICAgIHN1bW1hcnk6ICdUaGUgY29tbWFuZCBleGVjdXRlZCBzdWNjZXNzZnVsbHkuJ1xuICB9LFxuICBOb1N1Y2hEcml2ZXI6IHtcbiAgICBjb2RlOiA2LFxuICAgIHN1bW1hcnk6ICdBIHNlc3Npb24gaXMgZWl0aGVyIHRlcm1pbmF0ZWQgb3Igbm90IHN0YXJ0ZWQnXG4gIH0sXG4gIE5vU3VjaEVsZW1lbnQ6IHtcbiAgICBjb2RlOiA3LFxuICAgIHN1bW1hcnk6ICdBbiBlbGVtZW50IGNvdWxkIG5vdCBiZSBsb2NhdGVkIG9uIHRoZSBwYWdlIHVzaW5nIHRoZSBnaXZlbiBzZWFyY2ggcGFyYW1ldGVycy4nXG4gIH0sXG4gIE5vU3VjaEZyYW1lOiB7XG4gICAgY29kZTogOCxcbiAgICBzdW1tYXJ5OiAnQSByZXF1ZXN0IHRvIHN3aXRjaCB0byBhIGZyYW1lIGNvdWxkIG5vdCBiZSBzYXRpc2ZpZWQgYmVjYXVzZSB0aGUgZnJhbWUgY291bGQgbm90IGJlIGZvdW5kLidcbiAgfSxcbiAgVW5rbm93bkNvbW1hbmQ6IHtcbiAgICBjb2RlOiA5LFxuICAgIHN1bW1hcnk6ICdUaGUgcmVxdWVzdGVkIHJlc291cmNlIGNvdWxkIG5vdCBiZSBmb3VuZCwgb3IgYSByZXF1ZXN0IHdhcyByZWNlaXZlZCB1c2luZyBhbiBIVFRQIG1ldGhvZCB0aGF0IGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhlIG1hcHBlZCByZXNvdXJjZS4nXG4gIH0sXG4gIFN0YWxlRWxlbWVudFJlZmVyZW5jZToge1xuICAgIGNvZGU6IDEwLFxuICAgIHN1bW1hcnk6ICdBbiBlbGVtZW50IGNvbW1hbmQgZmFpbGVkIGJlY2F1c2UgdGhlIHJlZmVyZW5jZWQgZWxlbWVudCBpcyBubyBsb25nZXIgYXR0YWNoZWQgdG8gdGhlIERPTS4nXG4gIH0sXG4gIEVsZW1lbnROb3RWaXNpYmxlOiB7XG4gICAgY29kZTogMTEsXG4gICAgc3VtbWFyeTogJ0FuIGVsZW1lbnQgY29tbWFuZCBjb3VsZCBub3QgYmUgY29tcGxldGVkIGJlY2F1c2UgdGhlIGVsZW1lbnQgaXMgbm90IHZpc2libGUgb24gdGhlIHBhZ2UuJ1xuICB9LFxuICBJbnZhbGlkRWxlbWVudFN0YXRlOiB7XG4gICAgY29kZTogMTIsXG4gICAgc3VtbWFyeTogJ0FuIGVsZW1lbnQgY29tbWFuZCBjb3VsZCBub3QgYmUgY29tcGxldGVkIGJlY2F1c2UgdGhlIGVsZW1lbnQgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZSAoZS5nLiBhdHRlbXB0aW5nIHRvIGNsaWNrIGEgZGlzYWJsZWQgZWxlbWVudCkuJ1xuICB9LFxuICBVbmtub3duRXJyb3I6IHtcbiAgICBjb2RlOiAxMyxcbiAgICBzdW1tYXJ5OiAnQW4gdW5rbm93biBzZXJ2ZXItc2lkZSBlcnJvciBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBjb21tYW5kLidcbiAgfSxcbiAgRWxlbWVudElzTm90U2VsZWN0YWJsZToge1xuICAgIGNvZGU6IDE1LFxuICAgIHN1bW1hcnk6ICdBbiBhdHRlbXB0IHdhcyBtYWRlIHRvIHNlbGVjdCBhbiBlbGVtZW50IHRoYXQgY2Fubm90IGJlIHNlbGVjdGVkLidcbiAgfSxcbiAgSmF2YVNjcmlwdEVycm9yOiB7XG4gICAgY29kZTogMTcsXG4gICAgc3VtbWFyeTogJ0FuIGVycm9yIG9jY3VycmVkIHdoaWxlIGV4ZWN1dGluZyB1c2VyIHN1cHBsaWVkIEphdmFTY3JpcHQuJ1xuICB9LFxuICBYUGF0aExvb2t1cEVycm9yOiB7XG4gICAgY29kZTogMTksXG4gICAgc3VtbWFyeTogJ0FuIGVycm9yIG9jY3VycmVkIHdoaWxlIHNlYXJjaGluZyBmb3IgYW4gZWxlbWVudCBieSBYUGF0aC4nXG4gIH0sXG4gIFRpbWVvdXQ6IHtcbiAgICBjb2RlOiAyMSxcbiAgICBzdW1tYXJ5OiAnQW4gb3BlcmF0aW9uIGRpZCBub3QgY29tcGxldGUgYmVmb3JlIGl0cyB0aW1lb3V0IGV4cGlyZWQuJ1xuICB9LFxuICBOb1N1Y2hXaW5kb3c6IHtcbiAgICBjb2RlOiAyMyxcbiAgICBzdW1tYXJ5OiAnQSByZXF1ZXN0IHRvIHN3aXRjaCB0byBhIGRpZmZlcmVudCB3aW5kb3cgY291bGQgbm90IGJlIHNhdGlzZmllZCBiZWNhdXNlIHRoZSB3aW5kb3cgY291bGQgbm90IGJlIGZvdW5kLidcbiAgfSxcbiAgSW52YWxpZENvb2tpZURvbWFpbjoge1xuICAgIGNvZGU6IDI0LFxuICAgIHN1bW1hcnk6ICdBbiBpbGxlZ2FsIGF0dGVtcHQgd2FzIG1hZGUgdG8gc2V0IGEgY29va2llIHVuZGVyIGEgZGlmZmVyZW50IGRvbWFpbiB0aGFuIHRoZSBjdXJyZW50IHBhZ2UuJ1xuICB9LFxuICBVbmFibGVUb1NldENvb2tpZToge1xuICAgIGNvZGU6IDI1LFxuICAgIHN1bW1hcnk6ICdBIHJlcXVlc3QgdG8gc2V0IGEgY29va2llXFwncyB2YWx1ZSBjb3VsZCBub3QgYmUgc2F0aXNmaWVkLidcbiAgfSxcbiAgVW5leHBlY3RlZEFsZXJ0T3Blbjoge1xuICAgIGNvZGU6IDI2LFxuICAgIHN1bW1hcnk6ICdBIG1vZGFsIGRpYWxvZyB3YXMgb3BlbiwgYmxvY2tpbmcgdGhpcyBvcGVyYXRpb24nXG4gIH0sXG4gIE5vQWxlcnRPcGVuRXJyb3I6IHtcbiAgICBjb2RlOiAyNyxcbiAgICBzdW1tYXJ5OiAnQW4gYXR0ZW1wdCB3YXMgbWFkZSB0byBvcGVyYXRlIG9uIGEgbW9kYWwgZGlhbG9nIHdoZW4gb25lIHdhcyBub3Qgb3Blbi4nXG4gIH0sXG4gIFNjcmlwdFRpbWVvdXQ6IHtcbiAgICBjb2RlOiAyOCxcbiAgICBzdW1tYXJ5OiAnQSBzY3JpcHQgZGlkIG5vdCBjb21wbGV0ZSBiZWZvcmUgaXRzIHRpbWVvdXQgZXhwaXJlZC4nXG4gIH0sXG4gIEludmFsaWRFbGVtZW50Q29vcmRpbmF0ZXM6IHtcbiAgICBjb2RlOiAyOSxcbiAgICBzdW1tYXJ5OiAnVGhlIGNvb3JkaW5hdGVzIHByb3ZpZGVkIHRvIGFuIGludGVyYWN0aW9ucyBvcGVyYXRpb24gYXJlIGludmFsaWQuJ1xuICB9LFxuICBJTUVOb3RBdmFpbGFibGU6IHtcbiAgICBjb2RlOiAzMCxcbiAgICBzdW1tYXJ5OiAnSU1FIHdhcyBub3QgYXZhaWxhYmxlLidcbiAgfSxcbiAgSU1FRW5naW5lQWN0aXZhdGlvbkZhaWxlZDoge1xuICAgIGNvZGU6IDMxLFxuICAgIHN1bW1hcnk6ICdBbiBJTUUgZW5naW5lIGNvdWxkIG5vdCBiZSBzdGFydGVkLidcbiAgfSxcbiAgSW52YWxpZFNlbGVjdG9yOiB7XG4gICAgY29kZTogMzIsXG4gICAgc3VtbWFyeTogJ0FyZ3VtZW50IHdhcyBhbiBpbnZhbGlkIHNlbGVjdG9yIChlLmcuIFhQYXRoL0NTUykuJ1xuICB9LFxuICBTZXNzaW9uTm90Q3JlYXRlZEV4Y2VwdGlvbjoge1xuICAgIGNvZGU6IDMzLFxuICAgIHN1bW1hcnk6ICdBIG5ldyBzZXNzaW9uIGNvdWxkIG5vdCBiZSBjcmVhdGVkLidcbiAgfSxcbiAgTW92ZVRhcmdldE91dE9mQm91bmRzOiB7XG4gICAgY29kZTogMzQsXG4gICAgc3VtbWFyeTogJ1RhcmdldCBwcm92aWRlZCBmb3IgYSBtb3ZlIGFjdGlvbiBpcyBvdXQgb2YgYm91bmRzLidcbiAgfSxcbiAgTm9TdWNoQ29udGV4dDoge1xuICAgIGNvZGU6IDM1LFxuICAgIHN1bW1hcnk6ICdObyBzdWNoIGNvbnRleHQgZm91bmQuJ1xuICB9XG59O1xuXG5mdW5jdGlvbiBnZXRTdW1tYXJ5QnlDb2RlIChjb2RlKSB7XG4gIGNvZGUgPSBwYXJzZUludChjb2RlLCAxMCk7XG4gIGZvciAobGV0IG9iaiBvZiBfLnZhbHVlcyhjb2RlcykpIHtcbiAgICBpZiAoIV8uaXNVbmRlZmluZWQob2JqLmNvZGUpICYmIG9iai5jb2RlID09PSBjb2RlKSB7XG4gICAgICByZXR1cm4gb2JqLnN1bW1hcnk7XG4gICAgfVxuICB9XG4gIHJldHVybiAnQW4gZXJyb3Igb2NjdXJyZWQnO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjb2RlcztcbmV4cG9ydCB7IGNvZGVzLCBnZXRTdW1tYXJ5QnlDb2RlIH07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBOztBQUVBLE1BQU1BLEtBQUssR0FBRztFQUNaQyxPQUFPLEVBQUU7SUFDUEMsSUFBSSxFQUFFLENBREM7SUFFUEMsT0FBTyxFQUFFO0VBRkYsQ0FERztFQUtaQyxZQUFZLEVBQUU7SUFDWkYsSUFBSSxFQUFFLENBRE07SUFFWkMsT0FBTyxFQUFFO0VBRkcsQ0FMRjtF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
|