verdaccio 5.13.0 → 5.13.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/CHANGELOG.md +26 -0
- package/README.md +48 -12
- package/build/api/endpoint/api/ping.js +1 -5
- package/build/api/endpoint/api/stars.js +1 -5
- package/build/api/web/endpoint/search.js +1 -5
- package/build/api/web/endpoint/user.js +1 -4
- package/build/config/env.js +1 -4
- package/build/lib/bootstrap.js +1 -1
- package/build/lib/config-utils.js +1 -1
- package/build/lib/constants.js +1 -6
- package/build/lib/metadata-utils.js +1 -6
- package/build/lib/storage.js +1 -1
- package/eslintrc.js +3 -6
- package/package.json +39 -37
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,32 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [5.13.3](https://github.com/verdaccio/verdaccio/compare/v5.13.2...v5.13.3) (2022-07-13)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* **deps:** update dependency @verdaccio/readme to v10.4.0 ([#3265](https://github.com/verdaccio/verdaccio/issues/3265)) ([531f468](https://github.com/verdaccio/verdaccio/commit/531f4685abe37e5d7487f665c9d480e0d085df5f))
|
|
11
|
+
* **deps:** update dependency kleur to v4.1.5 ([#3263](https://github.com/verdaccio/verdaccio/issues/3263)) ([cc1c2a5](https://github.com/verdaccio/verdaccio/commit/cc1c2a5e50ca7e0e6bade2f8f18ec31c35b3fb53))
|
|
12
|
+
* **deps:** update dependency lru-cache to v7.13.0 ([#3266](https://github.com/verdaccio/verdaccio/issues/3266)) ([0a611c0](https://github.com/verdaccio/verdaccio/commit/0a611c0b7df404c6ea66e104eb9ec80ffd7c49f3))
|
|
13
|
+
* **deps:** update dependency marked to v4.0.18 ([#3264](https://github.com/verdaccio/verdaccio/issues/3264)) ([b3f964d](https://github.com/verdaccio/verdaccio/commit/b3f964d93aa15334b685c9b66fe44912c1aa5447))
|
|
14
|
+
|
|
15
|
+
### [5.13.2](https://github.com/verdaccio/verdaccio/compare/v5.13.1...v5.13.2) (2022-07-12)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Bug Fixes
|
|
19
|
+
|
|
20
|
+
* **deps:** update dependency @verdaccio/ui-theme to v6.0.0-6-next.25 ([#3258](https://github.com/verdaccio/verdaccio/issues/3258)) ([af9cc6d](https://github.com/verdaccio/verdaccio/commit/af9cc6d4f993d07e396a0391f3a964b0c7d36268))
|
|
21
|
+
* update nodejs to 14.20.0 to fix CVE-2022-32212 ([#3262](https://github.com/verdaccio/verdaccio/issues/3262)) ([5f83dc2](https://github.com/verdaccio/verdaccio/commit/5f83dc294e763d578b5d9f95cfee00e44fa6fd6e))
|
|
22
|
+
|
|
23
|
+
### [5.13.1](https://github.com/verdaccio/verdaccio/compare/v5.13.0...v5.13.1) (2022-06-23)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
### Bug Fixes
|
|
27
|
+
|
|
28
|
+
* **deps:** update dependency @verdaccio/local-storage to v10.3.1 ([#3245](https://github.com/verdaccio/verdaccio/issues/3245)) ([991cf10](https://github.com/verdaccio/verdaccio/commit/991cf1083de7c5a4fe0694a995e888ad47290c1e))
|
|
29
|
+
* **deps:** update dependency verdaccio-htpasswd to v10.5.0 ([#3242](https://github.com/verdaccio/verdaccio/issues/3242)) ([884e05b](https://github.com/verdaccio/verdaccio/commit/884e05b13ef4161ea0619ed4c78396c2f934c113))
|
|
30
|
+
|
|
5
31
|
## [5.13.0](https://github.com/verdaccio/verdaccio/compare/v5.12.0...v5.13.0) (2022-06-17)
|
|
6
32
|
|
|
7
33
|
|
package/README.md
CHANGED
|
@@ -24,6 +24,7 @@ Google Cloud Storage** or create your own plugin.
|
|
|
24
24
|
|
|
25
25
|
[](https://twitter.com/verdaccio_npm)
|
|
26
26
|
[](https://github.com/verdaccio/verdaccio/stargazers)
|
|
27
|
+
[](https://github.com/vshymanskyy/StandWithUkraine/blob/main/docs/README.md)
|
|
27
28
|
|
|
28
29
|
## Install
|
|
29
30
|
|
|
@@ -33,10 +34,41 @@ Install with npm:
|
|
|
33
34
|
npm install --global verdaccio
|
|
34
35
|
```
|
|
35
36
|
|
|
36
|
-
> Node.js v12 is required for Verdaccio 5
|
|
37
|
+
> Node.js v12 or higher is required for Verdaccio 5
|
|
38
|
+
|
|
39
|
+
or pull [Docker official image](https://verdaccio.org/docs/docker)
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
docker pull verdaccio/verdaccio
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
and run
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
or with _helm_ [official chart](https://github.com/verdaccio/charts).
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
helm repo add verdaccio https://charts.verdaccio.org
|
|
55
|
+
helm repo update
|
|
56
|
+
helm install verdaccio/verdaccio
|
|
57
|
+
```
|
|
37
58
|
|
|
38
59
|
Are you still using **Verdaccio 4**?. Check the [migration guide](https://verdaccio.org/blog/2021/04/14/verdaccio-5-migration-guide).
|
|
39
60
|
|
|
61
|
+
## Plugins
|
|
62
|
+
|
|
63
|
+
You can develop your own [plugins](https://verdaccio.org/docs/plugins) with the [verdaccio generator](https://github.com/verdaccio/generator-verdaccio-plugin). Installing [Yeoman](https://yeoman.io/) is required.
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
npm install -g yo
|
|
67
|
+
npm install -g generator-verdaccio-plugin
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Learn more [here](https://verdaccio.org/docs/dev-plugins) how to develop plugins. Share your plugins with the community.
|
|
71
|
+
|
|
40
72
|
## Donations
|
|
41
73
|
|
|
42
74
|
Verdaccio is run by **volunteers**; nobody is working full-time on it. If you find this project to be useful and would like to support its development and maintenance.
|
|
@@ -65,26 +97,29 @@ If you want to use a modified version of some 3rd-party package (for example, yo
|
|
|
65
97
|
### E2E Testing
|
|
66
98
|
|
|
67
99
|
Verdaccio has proved to be a lightweight registry that can be
|
|
68
|
-
booted in a couple of seconds, fast enough for any CI. Many open source projects use verdaccio for end to end testing, to mention some examples, **create-react-app**, **mozilla neutrino**, **pnpm**, **storybook**, **
|
|
100
|
+
booted in a couple of seconds, fast enough for any CI. Many open source projects use verdaccio for end to end testing, to mention some examples, **create-react-app**, **mozilla neutrino**, **pnpm**, **storybook**, **babel.js**, **angular-cli** or **docusaurus**. You can read more in [here](https://verdaccio.org/docs/e2e).
|
|
101
|
+
|
|
102
|
+
Furthermore, here few examples how to start:
|
|
69
103
|
|
|
70
|
-
|
|
104
|
+
- [e2e-ci-example-gh-actions](https://github.com/juanpicado/e2e-ci-example-gh-actions)
|
|
105
|
+
- [verdaccio-end-to-end-tests](https://github.com/juanpicado/verdaccio-end-to-end-tests)
|
|
106
|
+
- [verdaccio-fork](https://github.com/juanpicado/verdaccio-fork)
|
|
71
107
|
|
|
72
|
-
|
|
73
|
-
- [**How to improve your workflows with Verdaccio, your private Node.js registry - Global Summit for Node.js - May 18th 2022**](https://events.geekle.us/nodejs/)
|
|
108
|
+
## Watch our Videos
|
|
74
109
|
|
|
75
|
-
|
|
110
|
+
**Node Congress 2022, February 2022, Online Free**
|
|
76
111
|
|
|
77
112
|
<div>
|
|
78
113
|
<a href="https://portal.gitnation.org/contents/five-ways-of-taking-advantage-of-verdaccio-your-private-and-proxy-nodejs-registry">
|
|
79
|
-
<img src="https://cdn.verdaccio.dev/readme/nodejscongress2022.jpg" alt="nodejs" width="
|
|
114
|
+
<img src="https://cdn.verdaccio.dev/readme/nodejscongress2022.jpg" alt="nodejs" width="200"/>
|
|
80
115
|
</a>
|
|
81
116
|
</div>
|
|
82
117
|
|
|
83
118
|
You might want to check out as well our previous talks:
|
|
84
119
|
|
|
85
|
-
- [Using Docker and Verdaccio to make Integration Testing Easy - Docker All Hands #4 December - **
|
|
86
|
-
- [**Juan Picado** – Testing the integrity of React components by publishing in a private registry](https://www.youtube.com/watch?v=bRKZbrlQqLY&t=16s&ab_channel=ReactFinland)
|
|
87
|
-
- [BeerJS Cba Meetup No. 53 May 2021 - **Juan Picado**
|
|
120
|
+
- [Using Docker and Verdaccio to make Integration Testing Easy - **Docker All Hands #4 December - 2021**](https://www.youtube.com/watch?v=zRI0skF1f8I)
|
|
121
|
+
- [**Juan Picado** – Testing the integrity of React components by publishing in a private registry - React Finland - 2021](https://www.youtube.com/watch?v=bRKZbrlQqLY&t=16s&ab_channel=ReactFinland)
|
|
122
|
+
- [BeerJS Cba Meetup No. 53 May 2021 - **Juan Picado**](https://www.youtube.com/watch?v=6SyjqBmS49Y&ab_channel=BeerJSCba)
|
|
88
123
|
- [Node.js Dependency Confusion Attacks - April 2021 - **Juan Picado**](https://www.youtube.com/watch?v=qTRADSp3Hpo)
|
|
89
124
|
- [**OpenJS World 2020** about \*Cover your Projects with a Multi purpose Lightweight Node.js Registry - **Juan Picado**](https://www.youtube.com/watch?v=oVCjDWeehAQ)
|
|
90
125
|
- [ViennaJS Meetup - Introduction to Verdaccio by **Priscila Olivera** and **Juan Picado**](https://www.youtube.com/watch?v=hDIFKzmoCa)
|
|
@@ -216,6 +251,7 @@ You can find and chat with then over Discord, click [here](http://chat.verdaccio
|
|
|
216
251
|
- [create-react-app](https://github.com/facebook/create-react-app/blob/master/CONTRIBUTING.md#customizing-e2e-registry-configuration) _(+86.2k ⭐️)_
|
|
217
252
|
- [Gatsby](https://github.com/gatsbyjs/gatsby) _(+49.2k ⭐️)_
|
|
218
253
|
- [Babel.js](https://github.com/babel/babel) _(+38.5k ⭐️)_
|
|
254
|
+
- [Docusaurus](https://github.com/facebook/docusaurus) _(+34k ⭐️)_
|
|
219
255
|
- [Vue CLI](https://github.com/vuejs/vue-cli) _(+27.4k ⭐️)_
|
|
220
256
|
- [Angular CLI](https://github.com/angular/angular-cli) _(+24.3k ⭐️)_
|
|
221
257
|
- [Uppy](https://github.com/transloadit/uppy) _(+23.8k ⭐️)_
|
|
@@ -230,7 +266,7 @@ You can find and chat with then over Discord, click [here](http://chat.verdaccio
|
|
|
230
266
|
- [Amazon SDK v3](https://github.com/aws/aws-sdk-js-v3)
|
|
231
267
|
- [Amazon Encryption SDK for Javascript](https://github.com/aws/aws-encryption-sdk-javascript)
|
|
232
268
|
|
|
233
|
-
🤓 Don't be shy,
|
|
269
|
+
🤓 Don't be shy, add yourself to this readme.
|
|
234
270
|
|
|
235
271
|
## Open Collective Sponsors
|
|
236
272
|
|
|
@@ -277,7 +313,7 @@ If you have any issue you can try the following options, do no desist to ask or
|
|
|
277
313
|
- [Donations](https://github.com/sponsors/verdaccio)
|
|
278
314
|
- [Reporting an issue](https://github.com/verdaccio/verdaccio/issues/new/choose)
|
|
279
315
|
- [Running discussions](https://github.com/verdaccio/verdaccio/issues?q=is%3Aissue+is%3Aopen+label%3Adiscuss)
|
|
280
|
-
- [Chat](
|
|
316
|
+
- [Chat](https://discord.gg/7qWJxBf)
|
|
281
317
|
- [Logos](https://verdaccio.org/docs/en/logo)
|
|
282
318
|
- [Docker Examples](https://github.com/verdaccio/verdaccio/tree/master/docker-examples)
|
|
283
319
|
- [FAQ](https://github.com/verdaccio/verdaccio/discussions/categories/q-a)
|
|
@@ -5,13 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = _default;
|
|
7
7
|
|
|
8
|
-
/**
|
|
9
|
-
* @prettier
|
|
10
|
-
* @flow
|
|
11
|
-
*/
|
|
12
8
|
function _default(route) {
|
|
13
9
|
route.get('/-/ping', function (req, res, next) {
|
|
14
10
|
next({});
|
|
15
11
|
});
|
|
16
12
|
}
|
|
17
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyb3V0ZSIsImdldCIsInJlcSIsInJlcyIsIm5leHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBpL2VuZHBvaW50L2FwaS9waW5nLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvdXRlciB9IGZyb20gJ2V4cHJlc3MnO1xuXG5pbXBvcnQgeyAkTmV4dEZ1bmN0aW9uVmVyLCAkUmVxdWVzdEV4dGVuZCwgJFJlc3BvbnNlRXh0ZW5kIH0gZnJvbSAnLi4vLi4vLi4vLi4vdHlwZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAocm91dGU6IFJvdXRlcik6IHZvaWQge1xuICByb3V0ZS5nZXQoJy8tL3BpbmcnLCBmdW5jdGlvbiAocmVxOiAkUmVxdWVzdEV4dGVuZCwgcmVzOiAkUmVzcG9uc2VFeHRlbmQsIG5leHQ6ICROZXh0RnVuY3Rpb25WZXIpIHtcbiAgICBuZXh0KHt9KTtcbiAgfSk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJZSxrQkFBVUEsS0FBVixFQUErQjtFQUM1Q0EsS0FBSyxDQUFDQyxHQUFOLENBQVUsU0FBVixFQUFxQixVQUFVQyxHQUFWLEVBQStCQyxHQUEvQixFQUFxREMsSUFBckQsRUFBNkU7SUFDaEdBLElBQUksQ0FBQyxFQUFELENBQUo7RUFDRCxDQUZEO0FBR0QifQ==
|
|
@@ -11,10 +11,6 @@ var _constants = require("../../../lib/constants");
|
|
|
11
11
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
14
|
-
/**
|
|
15
|
-
* @prettier
|
|
16
|
-
|
|
17
|
-
*/
|
|
18
14
|
function _default(route, storage) {
|
|
19
15
|
route.get('/-/_view/starredByUser', (req, res, next) => {
|
|
20
16
|
const remoteUsername = req.remote_user.name;
|
|
@@ -33,4 +29,4 @@ function _default(route, storage) {
|
|
|
33
29
|
});
|
|
34
30
|
});
|
|
35
31
|
}
|
|
36
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyb3V0ZSIsInN0b3JhZ2UiLCJnZXQiLCJyZXEiLCJyZXMiLCJuZXh0IiwicmVtb3RlVXNlcm5hbWUiLCJyZW1vdGVfdXNlciIsIm5hbWUiLCJnZXRMb2NhbERhdGFiYXNlIiwiZXJyIiwibG9jYWxQYWNrYWdlcyIsImZpbHRlcmVkUGFja2FnZXMiLCJmaWx0ZXIiLCJsb2NhbFBhY2thZ2UiLCJfIiwia2V5cyIsIlVTRVJTIiwiaW5jbHVkZXMiLCJzdGF0dXMiLCJIVFRQX1NUQVRVUyIsIk9LIiwicm93cyIsIm1hcCIsImZpbHRlcmVkUGFja2FnZSIsInZhbHVlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwaS9lbmRwb2ludC9hcGkvc3RhcnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzcG9uc2UsIFJvdXRlciB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gJ0B2ZXJkYWNjaW8vdHlwZXMnO1xuXG5pbXBvcnQgeyAkTmV4dEZ1bmN0aW9uVmVyLCAkUmVxdWVzdEV4dGVuZCwgSVN0b3JhZ2VIYW5kbGVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgSFRUUF9TVEFUVVMsIFVTRVJTIH0gZnJvbSAnLi4vLi4vLi4vbGliL2NvbnN0YW50cyc7XG5cbnR5cGUgUGFja2FnZXMgPSBQYWNrYWdlW107XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIChyb3V0ZTogUm91dGVyLCBzdG9yYWdlOiBJU3RvcmFnZUhhbmRsZXIpOiB2b2lkIHtcbiAgcm91dGUuZ2V0KCcvLS9fdmlldy9zdGFycmVkQnlVc2VyJywgKHJlcTogJFJlcXVlc3RFeHRlbmQsIHJlczogUmVzcG9uc2UsIG5leHQ6ICROZXh0RnVuY3Rpb25WZXIpOiB2b2lkID0+IHtcbiAgICBjb25zdCByZW1vdGVVc2VybmFtZSA9IHJlcS5yZW1vdGVfdXNlci5uYW1lO1xuXG4gICAgc3RvcmFnZS5nZXRMb2NhbERhdGFiYXNlKChlcnIsIGxvY2FsUGFja2FnZXM6IFBhY2thZ2VzKSA9PiB7XG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHJldHVybiBuZXh0KGVycik7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpbHRlcmVkUGFja2FnZXM6IFBhY2thZ2VzID0gbG9jYWxQYWNrYWdlcy5maWx0ZXIoKGxvY2FsUGFja2FnZTogUGFja2FnZSkgPT4gXy5rZXlzKGxvY2FsUGFja2FnZVtVU0VSU10pLmluY2x1ZGVzKHJlbW90ZVVzZXJuYW1lKSk7XG5cbiAgICAgIHJlcy5zdGF0dXMoSFRUUF9TVEFUVVMuT0spO1xuICAgICAgbmV4dCh7XG4gICAgICAgIHJvd3M6IGZpbHRlcmVkUGFja2FnZXMubWFwKChmaWx0ZXJlZFBhY2thZ2U6IFBhY2thZ2UpID0+ICh7XG4gICAgICAgICAgdmFsdWU6IGZpbHRlcmVkUGFja2FnZS5uYW1lLFxuICAgICAgICB9KSksXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFDQTs7QUFLQTs7OztBQUllLGtCQUFVQSxLQUFWLEVBQXlCQyxPQUF6QixFQUF5RDtFQUN0RUQsS0FBSyxDQUFDRSxHQUFOLENBQVUsd0JBQVYsRUFBb0MsQ0FBQ0MsR0FBRCxFQUFzQkMsR0FBdEIsRUFBcUNDLElBQXJDLEtBQXNFO0lBQ3hHLE1BQU1DLGNBQWMsR0FBR0gsR0FBRyxDQUFDSSxXQUFKLENBQWdCQyxJQUF2QztJQUVBUCxPQUFPLENBQUNRLGdCQUFSLENBQXlCLENBQUNDLEdBQUQsRUFBTUMsYUFBTixLQUFrQztNQUN6RCxJQUFJRCxHQUFKLEVBQVM7UUFDUCxPQUFPTCxJQUFJLENBQUNLLEdBQUQsQ0FBWDtNQUNEOztNQUVELE1BQU1FLGdCQUEwQixHQUFHRCxhQUFhLENBQUNFLE1BQWQsQ0FBc0JDLFlBQUQsSUFBMkJDLGVBQUEsQ0FBRUMsSUFBRixDQUFPRixZQUFZLENBQUNHLGdCQUFELENBQW5CLEVBQTRCQyxRQUE1QixDQUFxQ1osY0FBckMsQ0FBaEQsQ0FBbkM7TUFFQUYsR0FBRyxDQUFDZSxNQUFKLENBQVdDLHNCQUFBLENBQVlDLEVBQXZCO01BQ0FoQixJQUFJLENBQUM7UUFDSGlCLElBQUksRUFBRVYsZ0JBQWdCLENBQUNXLEdBQWpCLENBQXNCQyxlQUFELEtBQStCO1VBQ3hEQyxLQUFLLEVBQUVELGVBQWUsQ0FBQ2hCO1FBRGlDLENBQS9CLENBQXJCO01BREgsQ0FBRCxDQUFKO0lBS0QsQ0FiRDtFQWNELENBakJEO0FBa0JEIn0=
|
|
@@ -13,10 +13,6 @@ var _search = _interopRequireDefault(require("../../../lib/search"));
|
|
|
13
13
|
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
15
|
|
|
16
|
-
/**
|
|
17
|
-
* @prettier
|
|
18
|
-
* @flow
|
|
19
|
-
*/
|
|
20
16
|
function addSearchWebApi(storage, auth) {
|
|
21
17
|
const route = (0, _express.Router)();
|
|
22
18
|
/* eslint new-cap: 0 */
|
|
@@ -65,4 +61,4 @@ function addSearchWebApi(storage, auth) {
|
|
|
65
61
|
|
|
66
62
|
var _default = addSearchWebApi;
|
|
67
63
|
exports.default = _default;
|
|
68
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhZGRTZWFyY2hXZWJBcGkiLCJzdG9yYWdlIiwiYXV0aCIsInJvdXRlIiwiUm91dGVyIiwiZ2V0IiwicmVxIiwicmVzIiwibmV4dCIsInJlc3VsdHMiLCJTZWFyY2giLCJxdWVyeSIsInBhcmFtcyIsImFueXRoaW5nIiwicGFja2FnZXMiLCJnZXRQYWNrYWdlSW5mbyIsImkiLCJnZXRQYWNrYWdlIiwibmFtZSIsInJlZiIsInVwbGlua3NMb29rIiwiY2FsbGJhY2siLCJlcnIiLCJlbnRyeSIsImFsbG93X2FjY2VzcyIsInBhY2thZ2VOYW1lIiwicmVtb3RlX3VzZXIiLCJhbGxvd2VkIiwicHVzaCIsInZlcnNpb25zIiwiRElTVF9UQUdTIiwibGF0ZXN0IiwibGVuZ3RoIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwaS93ZWIvZW5kcG9pbnQvc2VhcmNoLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvdXRlciB9IGZyb20gJ2V4cHJlc3MnO1xuXG5pbXBvcnQgeyBQYWNrYWdlIH0gZnJvbSAnQHZlcmRhY2Npby90eXBlcyc7XG5cbmltcG9ydCB7ICROZXh0RnVuY3Rpb25WZXIsICRSZXF1ZXN0RXh0ZW5kLCAkUmVzcG9uc2VFeHRlbmQsIElBdXRoLCBJU3RvcmFnZUhhbmRsZXIgfSBmcm9tICcuLi8uLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBESVNUX1RBR1MgfSBmcm9tICcuLi8uLi8uLi9saWIvY29uc3RhbnRzJztcbmltcG9ydCBTZWFyY2ggZnJvbSAnLi4vLi4vLi4vbGliL3NlYXJjaCc7XG5cbmZ1bmN0aW9uIGFkZFNlYXJjaFdlYkFwaShzdG9yYWdlOiBJU3RvcmFnZUhhbmRsZXIsIGF1dGg6IElBdXRoKTogUm91dGVyIHtcbiAgY29uc3Qgcm91dGUgPSBSb3V0ZXIoKTsgLyogZXNsaW50IG5ldy1jYXA6IDAgKi9cbiAgLy8gU2VhcmNoIHBhY2thZ2VcbiAgcm91dGUuZ2V0KCcvc2VhcmNoLzphbnl0aGluZycsIGZ1bmN0aW9uIChyZXE6ICRSZXF1ZXN0RXh0ZW5kLCByZXM6ICRSZXNwb25zZUV4dGVuZCwgbmV4dDogJE5leHRGdW5jdGlvblZlcik6IHZvaWQge1xuICAgIGNvbnN0IHJlc3VsdHM6IGFueSA9IFNlYXJjaC5xdWVyeShyZXEucGFyYW1zLmFueXRoaW5nKTtcbiAgICAvLyBGVVRVUkU6IGZpZ3VyZSBvdXQgaGVyZSB0aGUgY29ycmVjdCB0eXBlXG4gICAgY29uc3QgcGFja2FnZXM6IGFueVtdID0gW107XG5cbiAgICBjb25zdCBnZXRQYWNrYWdlSW5mbyA9IGZ1bmN0aW9uIChpKTogdm9pZCB7XG4gICAgICBzdG9yYWdlLmdldFBhY2thZ2Uoe1xuICAgICAgICBuYW1lOiByZXN1bHRzW2ldLnJlZixcbiAgICAgICAgdXBsaW5rc0xvb2s6IGZhbHNlLFxuICAgICAgICBjYWxsYmFjazogKGVyciwgZW50cnk6IFBhY2thZ2UpOiB2b2lkID0+IHtcbiAgICAgICAgICBpZiAoIWVyciAmJiBlbnRyeSkge1xuICAgICAgICAgICAgYXV0aC5hbGxvd19hY2Nlc3MoeyBwYWNrYWdlTmFtZTogZW50cnkubmFtZSB9LCByZXEucmVtb3RlX3VzZXIsIGZ1bmN0aW9uIChlcnIsIGFsbG93ZWQpOiB2b2lkIHtcbiAgICAgICAgICAgICAgaWYgKGVyciB8fCAhYWxsb3dlZCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHBhY2thZ2VzLnB1c2goZW50cnkudmVyc2lvbnNbZW50cnlbRElTVF9UQUdTXS5sYXRlc3RdKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChpID49IHJlc3VsdHMubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgbmV4dChwYWNrYWdlcyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGdldFBhY2thZ2VJbmZvKGkgKyAxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgaWYgKHJlc3VsdHMubGVuZ3RoKSB7XG4gICAgICBnZXRQYWNrYWdlSW5mbygwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbmV4dChbXSk7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gcm91dGU7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGFkZFNlYXJjaFdlYkFwaTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUtBOztBQUNBOzs7O0FBRUEsU0FBU0EsZUFBVCxDQUF5QkMsT0FBekIsRUFBbURDLElBQW5ELEVBQXdFO0VBQ3RFLE1BQU1DLEtBQUssR0FBRyxJQUFBQyxlQUFBLEdBQWQ7RUFBd0I7RUFDeEI7O0VBQ0FELEtBQUssQ0FBQ0UsR0FBTixDQUFVLG1CQUFWLEVBQStCLFVBQVVDLEdBQVYsRUFBK0JDLEdBQS9CLEVBQXFEQyxJQUFyRCxFQUFtRjtJQUNoSCxNQUFNQyxPQUFZLEdBQUdDLGVBQUEsQ0FBT0MsS0FBUCxDQUFhTCxHQUFHLENBQUNNLE1BQUosQ0FBV0MsUUFBeEIsQ0FBckIsQ0FEZ0gsQ0FFaEg7OztJQUNBLE1BQU1DLFFBQWUsR0FBRyxFQUF4Qjs7SUFFQSxNQUFNQyxjQUFjLEdBQUcsVUFBVUMsQ0FBVixFQUFtQjtNQUN4Q2YsT0FBTyxDQUFDZ0IsVUFBUixDQUFtQjtRQUNqQkMsSUFBSSxFQUFFVCxPQUFPLENBQUNPLENBQUQsQ0FBUCxDQUFXRyxHQURBO1FBRWpCQyxXQUFXLEVBQUUsS0FGSTtRQUdqQkMsUUFBUSxFQUFFLENBQUNDLEdBQUQsRUFBTUMsS0FBTixLQUErQjtVQUN2QyxJQUFJLENBQUNELEdBQUQsSUFBUUMsS0FBWixFQUFtQjtZQUNqQnJCLElBQUksQ0FBQ3NCLFlBQUwsQ0FBa0I7Y0FBRUMsV0FBVyxFQUFFRixLQUFLLENBQUNMO1lBQXJCLENBQWxCLEVBQStDWixHQUFHLENBQUNvQixXQUFuRCxFQUFnRSxVQUFVSixHQUFWLEVBQWVLLE9BQWYsRUFBOEI7Y0FDNUYsSUFBSUwsR0FBRyxJQUFJLENBQUNLLE9BQVosRUFBcUI7Z0JBQ25CO2NBQ0Q7O2NBRURiLFFBQVEsQ0FBQ2MsSUFBVCxDQUFjTCxLQUFLLENBQUNNLFFBQU4sQ0FBZU4sS0FBSyxDQUFDTyxvQkFBRCxDQUFMLENBQWlCQyxNQUFoQyxDQUFkO1lBQ0QsQ0FORDtVQU9EOztVQUVELElBQUlmLENBQUMsSUFBSVAsT0FBTyxDQUFDdUIsTUFBUixHQUFpQixDQUExQixFQUE2QjtZQUMzQnhCLElBQUksQ0FBQ00sUUFBRCxDQUFKO1VBQ0QsQ0FGRCxNQUVPO1lBQ0xDLGNBQWMsQ0FBQ0MsQ0FBQyxHQUFHLENBQUwsQ0FBZDtVQUNEO1FBQ0Y7TUFuQmdCLENBQW5CO0lBcUJELENBdEJEOztJQXdCQSxJQUFJUCxPQUFPLENBQUN1QixNQUFaLEVBQW9CO01BQ2xCakIsY0FBYyxDQUFDLENBQUQsQ0FBZDtJQUNELENBRkQsTUFFTztNQUNMUCxJQUFJLENBQUMsRUFBRCxDQUFKO0lBQ0Q7RUFDRixDQWxDRDtFQW9DQSxPQUFPTCxLQUFQO0FBQ0Q7O2VBRWNILGUifQ==
|
|
@@ -17,9 +17,6 @@ var _utils = require("../../../lib/utils");
|
|
|
17
17
|
|
|
18
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
19
|
|
|
20
|
-
/**
|
|
21
|
-
* @prettier
|
|
22
|
-
*/
|
|
23
20
|
function addUserAuthApi(auth, config) {
|
|
24
21
|
const route = (0, _express.Router)();
|
|
25
22
|
/* eslint new-cap: 0 */
|
|
@@ -79,4 +76,4 @@ function addUserAuthApi(auth, config) {
|
|
|
79
76
|
|
|
80
77
|
var _default = addUserAuthApi;
|
|
81
78
|
exports.default = _default;
|
|
82
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhZGRVc2VyQXV0aEFwaSIsImF1dGgiLCJjb25maWciLCJyb3V0ZSIsIlJvdXRlciIsInBvc3QiLCJyZXEiLCJyZXMiLCJuZXh0IiwidXNlcm5hbWUiLCJwYXNzd29yZCIsImJvZHkiLCJhdXRoZW50aWNhdGUiLCJlcnIiLCJ1c2VyIiwiZXJyb3JDb2RlIiwibWVzc2FnZSIsIkhUVFBfU1RBVFVTIiwiVU5BVVRIT1JJWkVEIiwiSU5URVJOQUxfRVJST1IiLCJFcnJvckNvZGUiLCJnZXRDb2RlIiwicmVtb3RlX3VzZXIiLCJqV1RTaWduT3B0aW9ucyIsImdldFNlY3VyaXR5Iiwid2ViIiwic2lnbiIsInNldCIsIkhFQURFUlMiLCJDQUNIRV9DT05UUk9MIiwidG9rZW4iLCJqd3RFbmNyeXB0IiwibmFtZSIsInB1dCIsIl8iLCJpc05pbCIsInN0YXR1cyIsIkFQSV9FUlJPUiIsIk1VU1RfQkVfTE9HR0VEIiwidmFsaWRhdGVQYXNzd29yZCIsIm5ldyIsImNoYW5nZVBhc3N3b3JkIiwib2xkIiwiaXNVcGRhdGVkIiwib2siLCJnZXRJbnRlcm5hbEVycm9yIiwiSU5URVJOQUxfU0VSVkVSX0VSUk9SIiwiQkFEX1JFUVVFU1QiLCJBUFBfRVJST1IiLCJQQVNTV09SRF9WQUxJREFUSU9OIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwaS93ZWIvZW5kcG9pbnQvdXNlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXF1ZXN0LCBSZXNwb25zZSwgUm91dGVyIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuXG5pbXBvcnQgeyBDb25maWcsIEpXVFNpZ25PcHRpb25zLCBSZW1vdGVVc2VyIH0gZnJvbSAnQHZlcmRhY2Npby90eXBlcyc7XG5cbmltcG9ydCB7ICROZXh0RnVuY3Rpb25WZXIsIElBdXRoIH0gZnJvbSAnLi4vLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgZ2V0U2VjdXJpdHksIHZhbGlkYXRlUGFzc3dvcmQgfSBmcm9tICcuLi8uLi8uLi9saWIvYXV0aC11dGlscyc7XG5pbXBvcnQgeyBBUElfRVJST1IsIEFQUF9FUlJPUiwgSEVBREVSUywgSFRUUF9TVEFUVVMgfSBmcm9tICcuLi8uLi8uLi9saWIvY29uc3RhbnRzJztcbmltcG9ydCB7IEVycm9yQ29kZSB9IGZyb20gJy4uLy4uLy4uL2xpYi91dGlscyc7XG5cbmZ1bmN0aW9uIGFkZFVzZXJBdXRoQXBpKGF1dGg6IElBdXRoLCBjb25maWc6IENvbmZpZyk6IFJvdXRlciB7XG4gIGNvbnN0IHJvdXRlID0gUm91dGVyKCk7IC8qIGVzbGludCBuZXctY2FwOiAwICovXG4gIHJvdXRlLnBvc3QoJy9sb2dpbicsIGZ1bmN0aW9uIChyZXE6IFJlcXVlc3QsIHJlczogUmVzcG9uc2UsIG5leHQ6ICROZXh0RnVuY3Rpb25WZXIpOiB2b2lkIHtcbiAgICBjb25zdCB7IHVzZXJuYW1lLCBwYXNzd29yZCB9ID0gcmVxLmJvZHk7XG5cbiAgICBhdXRoLmF1dGhlbnRpY2F0ZSh1c2VybmFtZSwgcGFzc3dvcmQsIGFzeW5jIChlcnIsIHVzZXI6IFJlbW90ZVVzZXIpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgY29uc3QgZXJyb3JDb2RlID0gZXJyLm1lc3NhZ2UgPyBIVFRQX1NUQVRVUy5VTkFVVEhPUklaRUQgOiBIVFRQX1NUQVRVUy5JTlRFUk5BTF9FUlJPUjtcbiAgICAgICAgbmV4dChFcnJvckNvZGUuZ2V0Q29kZShlcnJvckNvZGUsIGVyci5tZXNzYWdlKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXEucmVtb3RlX3VzZXIgPSB1c2VyO1xuICAgICAgICBjb25zdCBqV1RTaWduT3B0aW9uczogSldUU2lnbk9wdGlvbnMgPSBnZXRTZWN1cml0eShjb25maWcpLndlYi5zaWduO1xuICAgICAgICByZXMuc2V0KEhFQURFUlMuQ0FDSEVfQ09OVFJPTCwgJ25vLWNhY2hlLCBuby1zdG9yZScpO1xuICAgICAgICBuZXh0KHtcbiAgICAgICAgICB0b2tlbjogYXdhaXQgYXV0aC5qd3RFbmNyeXB0KHVzZXIsIGpXVFNpZ25PcHRpb25zKSxcbiAgICAgICAgICB1c2VybmFtZTogcmVxLnJlbW90ZV91c2VyLm5hbWUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcblxuICByb3V0ZS5wdXQoJy9yZXNldF9wYXNzd29yZCcsIGZ1bmN0aW9uIChyZXE6IFJlcXVlc3QsIHJlczogUmVzcG9uc2UsIG5leHQ6ICROZXh0RnVuY3Rpb25WZXIpOiB2b2lkIHtcbiAgICBpZiAoXy5pc05pbChyZXEucmVtb3RlX3VzZXIubmFtZSkpIHtcbiAgICAgIHJlcy5zdGF0dXMoSFRUUF9TVEFUVVMuVU5BVVRIT1JJWkVEKTtcbiAgICAgIHJldHVybiBuZXh0KHtcbiAgICAgICAgLy8gRlVUVVJFOiB1cGRhdGUgdG8gYSBtb3JlIG1lYW5pbmdmdWwgbWVzc2FnZVxuICAgICAgICBtZXNzYWdlOiBBUElfRVJST1IuTVVTVF9CRV9MT0dHRUQsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCB7IHBhc3N3b3JkIH0gPSByZXEuYm9keTtcbiAgICBjb25zdCB7IG5hbWUgfSA9IHJlcS5yZW1vdGVfdXNlcjtcblxuICAgIGlmICh2YWxpZGF0ZVBhc3N3b3JkKHBhc3N3b3JkLm5ldykgPT09IGZhbHNlKSB7XG4gICAgICBhdXRoLmNoYW5nZVBhc3N3b3JkKG5hbWUgYXMgc3RyaW5nLCBwYXNzd29yZC5vbGQsIHBhc3N3b3JkLm5ldywgKGVyciwgaXNVcGRhdGVkKTogdm9pZCA9PiB7XG4gICAgICAgIGlmIChfLmlzTmlsKGVycikgJiYgaXNVcGRhdGVkKSB7XG4gICAgICAgICAgbmV4dCh7XG4gICAgICAgICAgICBvazogdHJ1ZSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gbmV4dChFcnJvckNvZGUuZ2V0SW50ZXJuYWxFcnJvcihBUElfRVJST1IuSU5URVJOQUxfU0VSVkVSX0VSUk9SKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbmV4dChFcnJvckNvZGUuZ2V0Q29kZShIVFRQX1NUQVRVUy5CQURfUkVRVUVTVCwgQVBQX0VSUk9SLlBBU1NXT1JEX1ZBTElEQVRJT04pKTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiByb3V0ZTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgYWRkVXNlckF1dGhBcGk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFLQTs7QUFDQTs7QUFDQTs7OztBQUVBLFNBQVNBLGNBQVQsQ0FBd0JDLElBQXhCLEVBQXFDQyxNQUFyQyxFQUE2RDtFQUMzRCxNQUFNQyxLQUFLLEdBQUcsSUFBQUMsZUFBQSxHQUFkO0VBQXdCOztFQUN4QkQsS0FBSyxDQUFDRSxJQUFOLENBQVcsUUFBWCxFQUFxQixVQUFVQyxHQUFWLEVBQXdCQyxHQUF4QixFQUF1Q0MsSUFBdkMsRUFBcUU7SUFDeEYsTUFBTTtNQUFFQyxRQUFGO01BQVlDO0lBQVosSUFBeUJKLEdBQUcsQ0FBQ0ssSUFBbkM7SUFFQVYsSUFBSSxDQUFDVyxZQUFMLENBQWtCSCxRQUFsQixFQUE0QkMsUUFBNUIsRUFBc0MsT0FBT0csR0FBUCxFQUFZQyxJQUFaLEtBQWdEO01BQ3BGLElBQUlELEdBQUosRUFBUztRQUNQLE1BQU1FLFNBQVMsR0FBR0YsR0FBRyxDQUFDRyxPQUFKLEdBQWNDLHNCQUFBLENBQVlDLFlBQTFCLEdBQXlDRCxzQkFBQSxDQUFZRSxjQUF2RTtRQUNBWCxJQUFJLENBQUNZLGdCQUFBLENBQVVDLE9BQVYsQ0FBa0JOLFNBQWxCLEVBQTZCRixHQUFHLENBQUNHLE9BQWpDLENBQUQsQ0FBSjtNQUNELENBSEQsTUFHTztRQUNMVixHQUFHLENBQUNnQixXQUFKLEdBQWtCUixJQUFsQjtRQUNBLE1BQU1TLGNBQThCLEdBQUcsSUFBQUMsc0JBQUEsRUFBWXRCLE1BQVosRUFBb0J1QixHQUFwQixDQUF3QkMsSUFBL0Q7UUFDQW5CLEdBQUcsQ0FBQ29CLEdBQUosQ0FBUUMsa0JBQUEsQ0FBUUMsYUFBaEIsRUFBK0Isb0JBQS9CO1FBQ0FyQixJQUFJLENBQUM7VUFDSHNCLEtBQUssRUFBRSxNQUFNN0IsSUFBSSxDQUFDOEIsVUFBTCxDQUFnQmpCLElBQWhCLEVBQXNCUyxjQUF0QixDQURWO1VBRUhkLFFBQVEsRUFBRUgsR0FBRyxDQUFDZ0IsV0FBSixDQUFnQlU7UUFGdkIsQ0FBRCxDQUFKO01BSUQ7SUFDRixDQWJEO0VBY0QsQ0FqQkQ7RUFtQkE3QixLQUFLLENBQUM4QixHQUFOLENBQVUsaUJBQVYsRUFBNkIsVUFBVTNCLEdBQVYsRUFBd0JDLEdBQXhCLEVBQXVDQyxJQUF2QyxFQUFxRTtJQUNoRyxJQUFJMEIsZUFBQSxDQUFFQyxLQUFGLENBQVE3QixHQUFHLENBQUNnQixXQUFKLENBQWdCVSxJQUF4QixDQUFKLEVBQW1DO01BQ2pDekIsR0FBRyxDQUFDNkIsTUFBSixDQUFXbkIsc0JBQUEsQ0FBWUMsWUFBdkI7TUFDQSxPQUFPVixJQUFJLENBQUM7UUFDVjtRQUNBUSxPQUFPLEVBQUVxQixvQkFBQSxDQUFVQztNQUZULENBQUQsQ0FBWDtJQUlEOztJQUVELE1BQU07TUFBRTVCO0lBQUYsSUFBZUosR0FBRyxDQUFDSyxJQUF6QjtJQUNBLE1BQU07TUFBRXFCO0lBQUYsSUFBVzFCLEdBQUcsQ0FBQ2dCLFdBQXJCOztJQUVBLElBQUksSUFBQWlCLDJCQUFBLEVBQWlCN0IsUUFBUSxDQUFDOEIsR0FBMUIsTUFBbUMsS0FBdkMsRUFBOEM7TUFDNUN2QyxJQUFJLENBQUN3QyxjQUFMLENBQW9CVCxJQUFwQixFQUFvQ3RCLFFBQVEsQ0FBQ2dDLEdBQTdDLEVBQWtEaEMsUUFBUSxDQUFDOEIsR0FBM0QsRUFBZ0UsQ0FBQzNCLEdBQUQsRUFBTThCLFNBQU4sS0FBMEI7UUFDeEYsSUFBSVQsZUFBQSxDQUFFQyxLQUFGLENBQVF0QixHQUFSLEtBQWdCOEIsU0FBcEIsRUFBK0I7VUFDN0JuQyxJQUFJLENBQUM7WUFDSG9DLEVBQUUsRUFBRTtVQURELENBQUQsQ0FBSjtRQUdELENBSkQsTUFJTztVQUNMLE9BQU9wQyxJQUFJLENBQUNZLGdCQUFBLENBQVV5QixnQkFBVixDQUEyQlIsb0JBQUEsQ0FBVVMscUJBQXJDLENBQUQsQ0FBWDtRQUNEO01BQ0YsQ0FSRDtJQVNELENBVkQsTUFVTztNQUNMLE9BQU90QyxJQUFJLENBQUNZLGdCQUFBLENBQVVDLE9BQVYsQ0FBa0JKLHNCQUFBLENBQVk4QixXQUE5QixFQUEyQ0Msb0JBQUEsQ0FBVUMsbUJBQXJELENBQUQsQ0FBWDtJQUNEO0VBQ0YsQ0F6QkQ7RUEyQkEsT0FBTzlDLEtBQVA7QUFDRDs7ZUFFY0gsYyJ9
|
package/build/config/env.js
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
/**
|
|
4
|
-
* @prettier
|
|
5
|
-
*/
|
|
6
3
|
const path = require('path');
|
|
7
4
|
|
|
8
5
|
const APP_ROOT = path.resolve(__dirname, '../../');
|
|
@@ -11,4 +8,4 @@ module.exports = {
|
|
|
11
8
|
SRC_ROOT: path.resolve(APP_ROOT, 'src/'),
|
|
12
9
|
DIST_PATH: path.resolve(APP_ROOT, 'static/')
|
|
13
10
|
};
|
|
14
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXRoIiwicmVxdWlyZSIsIkFQUF9ST09UIiwicmVzb2x2ZSIsIl9fZGlybmFtZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJTUkNfUk9PVCIsIkRJU1RfUEFUSCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvZW52LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHBhdGggPSByZXF1aXJlKCdwYXRoJyk7XG5cbmNvbnN0IEFQUF9ST09UID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4uLy4uLycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgQVBQX1JPT1QsXG4gIFNSQ19ST09UOiBwYXRoLnJlc29sdmUoQVBQX1JPT1QsICdzcmMvJyksXG4gIERJU1RfUEFUSDogcGF0aC5yZXNvbHZlKEFQUF9ST09ULCAnc3RhdGljLycpLFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxNQUFNQSxJQUFJLEdBQUdDLE9BQU8sQ0FBQyxNQUFELENBQXBCOztBQUVBLE1BQU1DLFFBQVEsR0FBR0YsSUFBSSxDQUFDRyxPQUFMLENBQWFDLFNBQWIsRUFBd0IsUUFBeEIsQ0FBakI7QUFFQUMsTUFBTSxDQUFDQyxPQUFQLEdBQWlCO0VBQ2ZKLFFBRGU7RUFFZkssUUFBUSxFQUFFUCxJQUFJLENBQUNHLE9BQUwsQ0FBYUQsUUFBYixFQUF1QixNQUF2QixDQUZLO0VBR2ZNLFNBQVMsRUFBRVIsSUFBSSxDQUFDRyxPQUFMLENBQWFELFFBQWIsRUFBdUIsU0FBdkI7QUFISSxDQUFqQiJ9
|
package/build/lib/bootstrap.js
CHANGED
|
@@ -202,4 +202,4 @@ function listenDefaultCallback(webServer, addr, pkgName, pkgVersion) {
|
|
|
202
202
|
version: pkgName + '/' + pkgVersion
|
|
203
203
|
}, 'http address - @{addr} - @{version}');
|
|
204
204
|
}
|
|
205
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJsb2dnZXIiLCJyZXF1aXJlIiwiZGlzcGxheUV4cGVyaW1lbnRzSW5mb0JveCIsImV4cGVyaW1lbnRzIiwiZXhwZXJpbWVudExpc3QiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwid2FybiIsImZvckVhY2giLCJleHBlcmltZW50Iiwic3RhcnRWZXJkYWNjaW8iLCJjb25maWciLCJjbGlMaXN0ZW4iLCJjb25maWdQYXRoIiwicGtnVmVyc2lvbiIsInBrZ05hbWUiLCJjYWxsYmFjayIsImlzT2JqZWN0IiwiRXJyb3IiLCJBUElfRVJST1IiLCJDT05GSUdfQkFEX0ZPUk1BVCIsImVuZFBvaW50QVBJIiwidGhlbiIsImFwcCIsImFkZHJlc3NlcyIsImdldExpc3RMaXN0ZW5BZGRyZXNzZXMiLCJsaXN0ZW4iLCJwcm9jZXNzIiwiZW1pdFdhcm5pbmciLCJhZGRyIiwid2ViU2VydmVyIiwicHJvdG8iLCJoYW5kbGVIVFRQUyIsImh0dHAiLCJjcmVhdGVTZXJ2ZXIiLCJzZXJ2ZXIiLCJrZWVwQWxpdmVUaW1lb3V0IiwidW5saW5rQWRkcmVzc1BhdGgiLCJwYXRoIiwiZnMiLCJleGlzdHNTeW5jIiwidW5saW5rU3luYyIsImxvZ0hUVFBTV2FybmluZyIsInN0b3JhZ2VMb2NhdGlvbiIsImZhdGFsIiwicmVzb2x2ZUNvbmZpZ1BhdGgiLCJrZXlQZW0iLCJjc3JQZW0iLCJjZXJ0UGVtIiwiam9pbiIsImV4aXQiLCJodHRwc09wdGlvbnMiLCJzZWN1cmVPcHRpb25zIiwiY29uc3RhbnRzIiwiU1NMX09QX05PX1NTTHYyIiwiU1NMX09QX05PX1NTTHYzIiwia2V5Q2VydENvbmZpZyIsImh0dHBzIiwicGZ4Q29uZmlnIiwia2V5IiwiY2VydCIsInBmeCIsInBhc3NwaHJhc2UiLCJhc3NpZ24iLCJyZWFkRmlsZVN5bmMiLCJjYSIsImVyciIsImxpc3RlbkRlZmF1bHRDYWxsYmFjayIsInBvcnQiLCJob3N0IiwiaXNGdW5jdGlvbiIsInNlbmQiLCJ2ZXJkYWNjaW9fc3RhcnRlZCIsIm9uIiwiaGFuZGxlU2h1dGRvd25HcmFjZWZ1bGx5IiwiY2xvc2UiLCJpbmZvIiwiZW52IiwiVkVSREFDQ0lPX0hBTkRMRV9LSUxMX1NJR05BTFMiLCJVUkwiLCJmb3JtYXQiLCJwcm90b2NvbCIsInBhdGhuYW1lIiwiaG9zdG5hbWUiLCJ2ZXJzaW9uIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9ib290c3RyYXAudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbnN0YW50cyBmcm9tICdjb25zdGFudHMnO1xuaW1wb3J0IHsgQXBwbGljYXRpb24gfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBleHByZXNzIGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IGZzIGZyb20gJ2ZzJztcbmltcG9ydCBodHRwIGZyb20gJ2h0dHAnO1xuaW1wb3J0IGh0dHBzIGZyb20gJ2h0dHBzJztcbmltcG9ydCB7IGFzc2lnbiwgaXNGdW5jdGlvbiwgaXNPYmplY3QgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IFVSTCBmcm9tICd1cmwnO1xuXG5pbXBvcnQgeyBDYWxsYmFjaywgQ29uZmlnV2l0aEh0dHBzLCBIdHRwc0NvbmZLZXlDZXJ0LCBIdHRwc0NvbmZQZnggfSBmcm9tICdAdmVyZGFjY2lvL3R5cGVzJztcblxuaW1wb3J0IGVuZFBvaW50QVBJIGZyb20gJy4uL2FwaS9pbmRleCc7XG5pbXBvcnQgeyBnZXRMaXN0TGlzdGVuQWRkcmVzc2VzLCByZXNvbHZlQ29uZmlnUGF0aCB9IGZyb20gJy4vY2xpL3V0aWxzJztcbmltcG9ydCB7IEFQSV9FUlJPUiwgY2VydFBlbSwgY3NyUGVtLCBrZXlQZW0gfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmNvbnN0IGxvZ2dlciA9IHJlcXVpcmUoJy4vbG9nZ2VyJyk7XG5cbmZ1bmN0aW9uIGRpc3BsYXlFeHBlcmltZW50c0luZm9Cb3goZXhwZXJpbWVudHMpIHtcbiAgY29uc3QgZXhwZXJpbWVudExpc3QgPSBPYmplY3Qua2V5cyhleHBlcmltZW50cyk7XG4gIGlmIChleHBlcmltZW50TGlzdC5sZW5ndGggPj0gMSkge1xuICAgIGxvZ2dlci5sb2dnZXIud2Fybign4pqg77iPICBleHBlcmltZW50cyBhcmUgZW5hYmxlZCwgd2UgcmVjb21tZW5kIGRvIG5vdCB1c2UgZXhwZXJpbWVudHMgaW4gcHJvZHVjdGlvbiwgY29tbWVudCBvdXQgdGhpcyBzZWN0aW9uIHRvIGRpc2FibGUgaXQnKTtcbiAgICBleHBlcmltZW50TGlzdC5mb3JFYWNoKChleHBlcmltZW50KSA9PiB7XG4gICAgICBsb2dnZXIubG9nZ2VyLndhcm4oYCAtIHN1cHBvcnQgZm9yICR7ZXhwZXJpbWVudH0gJHtleHBlcmltZW50c1tleHBlcmltZW50XSA/ICdpcyBlbmFibGVkJyA6ICcgaXMgZGlzYWJsZWQnfWApO1xuICAgIH0pO1xuICB9XG59XG5cbi8qKlxuICogVHJpZ2dlciB0aGUgc2VydmVyIGFmdGVyIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gbG9hZGVkLlxuICogQHBhcmFtIHtPYmplY3R9IGNvbmZpZ1xuICogQHBhcmFtIHtPYmplY3R9IGNsaUFyZ3VtZW50c1xuICogQHBhcmFtIHtTdHJpbmd9IGNvbmZpZ1BhdGhcbiAqIEBwYXJhbSB7U3RyaW5nfSBwa2dWZXJzaW9uXG4gKiBAcGFyYW0ge1N0cmluZ30gcGtnTmFtZVxuICogQGRlcHJlY2F0ZWQgdXNlIHJ1blNlcnZlciBpbnN0ZWFkXG4gKi9cbmZ1bmN0aW9uIHN0YXJ0VmVyZGFjY2lvKGNvbmZpZzogYW55LCBjbGlMaXN0ZW46IHN0cmluZywgY29uZmlnUGF0aDogc3RyaW5nLCBwa2dWZXJzaW9uOiBzdHJpbmcsIHBrZ05hbWU6IHN0cmluZywgY2FsbGJhY2s6IENhbGxiYWNrKTogdm9pZCB7XG4gIGlmIChpc09iamVjdChjb25maWcpID09PSBmYWxzZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihBUElfRVJST1IuQ09ORklHX0JBRF9GT1JNQVQpO1xuICB9XG5cbiAgaWYgKCdleHBlcmltZW50cycgaW4gY29uZmlnKSB7XG4gICAgZGlzcGxheUV4cGVyaW1lbnRzSW5mb0JveChjb25maWcuZXhwZXJpbWVudHMpO1xuICB9XG5cbiAgZW5kUG9pbnRBUEkoY29uZmlnKS50aGVuKChhcHApOiB2b2lkID0+IHtcbiAgICBjb25zdCBhZGRyZXNzZXMgPSBnZXRMaXN0TGlzdGVuQWRkcmVzc2VzKGNsaUxpc3RlbiwgY29uZmlnLmxpc3Rlbik7XG5cbiAgICBpZiAoYWRkcmVzc2VzLmxlbmd0aCA+IDEpIHtcbiAgICAgIHByb2Nlc3MuZW1pdFdhcm5pbmcoJ211bHRpcGxlIGxpc3RlbiBhZGRyZXNzZXMgYXJlIGRlcHJlY2F0ZWQsIHBsZWFzZSB1c2Ugb25seSBvbmUnKTtcbiAgICB9XG5cbiAgICBhZGRyZXNzZXMuZm9yRWFjaChmdW5jdGlvbiAoYWRkcik6IHZvaWQge1xuICAgICAgbGV0IHdlYlNlcnZlcjtcbiAgICAgIGlmIChhZGRyLnByb3RvID09PSAnaHR0cHMnKSB7XG4gICAgICAgIHdlYlNlcnZlciA9IGhhbmRsZUhUVFBTKGFwcCwgY29uZmlnUGF0aCwgY29uZmlnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIGh0dHBcbiAgICAgICAgd2ViU2VydmVyID0gaHR0cC5jcmVhdGVTZXJ2ZXIoYXBwKTtcbiAgICAgIH1cbiAgICAgIGlmIChjb25maWcuc2VydmVyICYmIHR5cGVvZiBjb25maWcuc2VydmVyLmtlZXBBbGl2ZVRpbWVvdXQgIT09ICd1bmRlZmluZWQnICYmIGNvbmZpZy5zZXJ2ZXIua2VlcEFsaXZlVGltZW91dCAhPT0gJ251bGwnKSB7XG4gICAgICAgIC8vIGxpYnJhcnkgZGVmaW5pdGlvbiBmb3Igbm9kZSBpcyBub3QgdXAgdG8gZGF0ZSAoZG9lc24ndCBjb250YWluIHJlY2VudCA4LjAgY2hhbmdlcylcbiAgICAgICAgd2ViU2VydmVyLmtlZXBBbGl2ZVRpbWVvdXQgPSBjb25maWcuc2VydmVyLmtlZXBBbGl2ZVRpbWVvdXQgKiAxMDAwO1xuICAgICAgfVxuICAgICAgdW5saW5rQWRkcmVzc1BhdGgoYWRkcik7XG5cbiAgICAgIGNhbGxiYWNrKHdlYlNlcnZlciwgYWRkciwgcGtnTmFtZSwgcGtnVmVyc2lvbik7XG4gICAgfSk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiB1bmxpbmtBZGRyZXNzUGF0aChhZGRyKSB7XG4gIGlmIChhZGRyLnBhdGggJiYgZnMuZXhpc3RzU3luYyhhZGRyLnBhdGgpKSB7XG4gICAgZnMudW5saW5rU3luYyhhZGRyLnBhdGgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGxvZ0hUVFBTV2FybmluZyhzdG9yYWdlTG9jYXRpb24pIHtcbiAgbG9nZ2VyLmxvZ2dlci5mYXRhbChcbiAgICBbXG4gICAgICAnWW91IGhhdmUgZW5hYmxlZCBIVFRQUyBhbmQgbmVlZCB0byBzcGVjaWZ5IGVpdGhlciAnLFxuICAgICAgJyAgICBcImh0dHBzLmtleVwiIGFuZCBcImh0dHBzLmNlcnRcIiBvciAnLFxuICAgICAgJyAgICBcImh0dHBzLnBmeFwiIGFuZCBvcHRpb25hbGx5IFwiaHR0cHMucGFzc3BocmFzZVwiICcsXG4gICAgICAndG8gcnVuIGh0dHBzIHNlcnZlcicsXG4gICAgICAnJyxcbiAgICAgIC8vIGNvbW1hbmRzIGFyZSBib3Jyb3dlZCBmcm9tIG5vZGUuanMgZG9jc1xuICAgICAgJ1RvIHF1aWNrbHkgY3JlYXRlIHNlbGYtc2lnbmVkIGNlcnRpZmljYXRlLCB1c2U6JyxcbiAgICAgICcgJCBvcGVuc3NsIGdlbnJzYSAtb3V0ICcgKyByZXNvbHZlQ29uZmlnUGF0aChzdG9yYWdlTG9jYXRpb24sIGtleVBlbSkgKyAnIDIwNDgnLFxuICAgICAgJyAkIG9wZW5zc2wgcmVxIC1uZXcgLXNoYTI1NiAta2V5ICcgKyByZXNvbHZlQ29uZmlnUGF0aChzdG9yYWdlTG9jYXRpb24sIGtleVBlbSkgKyAnIC1vdXQgJyArIHJlc29sdmVDb25maWdQYXRoKHN0b3JhZ2VMb2NhdGlvbiwgY3NyUGVtKSxcbiAgICAgICcgJCBvcGVuc3NsIHg1MDkgLXJlcSAtaW4gJyArXG4gICAgICAgIHJlc29sdmVDb25maWdQYXRoKHN0b3JhZ2VMb2NhdGlvbiwgY3NyUGVtKSArXG4gICAgICAgICcgLXNpZ25rZXkgJyArXG4gICAgICAgIHJlc29sdmVDb25maWdQYXRoKHN0b3JhZ2VMb2NhdGlvbiwga2V5UGVtKSArXG4gICAgICAgICcgLW91dCAnICtcbiAgICAgICAgcmVzb2x2ZUNvbmZpZ1BhdGgoc3RvcmFnZUxvY2F0aW9uLCBjZXJ0UGVtKSxcbiAgICAgICcnLFxuICAgICAgJ0FuZCB0aGVuIGFkZCB0byBjb25maWcgZmlsZSAoJyArIHN0b3JhZ2VMb2NhdGlvbiArICcpOicsXG4gICAgICAnICBodHRwczonLFxuICAgICAgYCAgICBrZXk6ICR7cmVzb2x2ZUNvbmZpZ1BhdGgoc3RvcmFnZUxvY2F0aW9uLCBrZXlQZW0pfWAsXG4gICAgICBgICAgIGNlcnQ6ICR7cmVzb2x2ZUNvbmZpZ1BhdGgoc3RvcmFnZUxvY2F0aW9uLCBjZXJ0UGVtKX1gLFxuICAgIF0uam9pbignXFxuJylcbiAgKTtcbiAgcHJvY2Vzcy5leGl0KDIpO1xufVxuXG5mdW5jdGlvbiBoYW5kbGVIVFRQUyhhcHA6IGV4cHJlc3MuQXBwbGljYXRpb24sIGNvbmZpZ1BhdGg6IHN0cmluZywgY29uZmlnOiBDb25maWdXaXRoSHR0cHMpOiBodHRwcy5TZXJ2ZXIge1xuICB0cnkge1xuICAgIGxldCBodHRwc09wdGlvbnMgPSB7XG4gICAgICBzZWN1cmVPcHRpb25zOiBjb25zdGFudHMuU1NMX09QX05PX1NTTHYyIHwgY29uc3RhbnRzLlNTTF9PUF9OT19TU0x2MywgLy8gZGlzYWJsZSBpbnNlY3VyZSBTU0x2MiBhbmQgU1NMdjNcbiAgICB9O1xuXG4gICAgY29uc3Qga2V5Q2VydENvbmZpZyA9IGNvbmZpZy5odHRwcyBhcyBIdHRwc0NvbmZLZXlDZXJ0O1xuICAgIGNvbnN0IHBmeENvbmZpZyA9IGNvbmZpZy5odHRwcyBhcyBIdHRwc0NvbmZQZng7XG5cbiAgICAvLyBodHRwcyBtdXN0IGVpdGhlciBoYXZlIGtleSBhbmQgY2VydCBvciBhIHBmeCBhbmQgKG9wdGlvbmFsbHkpIGEgcGFzc3BocmFzZVxuICAgIGlmICghKChrZXlDZXJ0Q29uZmlnLmtleSAmJiBrZXlDZXJ0Q29uZmlnLmNlcnQpIHx8IHBmeENvbmZpZy5wZngpKSB7XG4gICAgICBsb2dIVFRQU1dhcm5pbmcoY29uZmlnUGF0aCk7XG4gICAgfVxuXG4gICAgaWYgKHBmeENvbmZpZy5wZngpIHtcbiAgICAgIGNvbnN0IHsgcGZ4LCBwYXNzcGhyYXNlIH0gPSBwZnhDb25maWc7XG4gICAgICBodHRwc09wdGlvbnMgPSBhc3NpZ24oaHR0cHNPcHRpb25zLCB7XG4gICAgICAgIHBmeDogZnMucmVhZEZpbGVTeW5jKHBmeCksXG4gICAgICAgIHBhc3NwaHJhc2U6IHBhc3NwaHJhc2UgfHwgJycsXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgeyBrZXksIGNlcnQsIGNhIH0gPSBrZXlDZXJ0Q29uZmlnO1xuICAgICAgaHR0cHNPcHRpb25zID0gYXNzaWduKGh0dHBzT3B0aW9ucywge1xuICAgICAgICBrZXk6IGZzLnJlYWRGaWxlU3luYyhrZXkpLFxuICAgICAgICBjZXJ0OiBmcy5yZWFkRmlsZVN5bmMoY2VydCksXG4gICAgICAgIC4uLihjYSAmJiB7XG4gICAgICAgICAgY2E6IGZzLnJlYWRGaWxlU3luYyhjYSksXG4gICAgICAgIH0pLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBodHRwcy5jcmVhdGVTZXJ2ZXIoaHR0cHNPcHRpb25zLCBhcHApO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICAvLyBjYXRjaCBlcnJvcnMgcmVsYXRlZCB0byBjZXJ0aWZpY2F0ZSBsb2FkaW5nXG4gICAgbG9nZ2VyLmxvZ2dlci5mYXRhbCh7IGVycjogZXJyIH0sICdjYW5ub3QgY3JlYXRlIHNlcnZlcjogQHtlcnIubWVzc2FnZX0nKTtcbiAgICBwcm9jZXNzLmV4aXQoMik7XG4gIH1cbn1cbi8qKlxuICpcbiAqIEBwYXJhbSB3ZWJTZXJ2ZXJcbiAqIEBwYXJhbSBhZGRyXG4gKiBAcGFyYW0gcGtnTmFtZVxuICogQHBhcmFtIHBrZ1ZlcnNpb25cbiAqIEBkZXByZWNhdGVkIHVzZSBpbml0U2VydmVyIGluc3RlYWRcbiAqL1xuZnVuY3Rpb24gbGlzdGVuRGVmYXVsdENhbGxiYWNrKHdlYlNlcnZlcjogQXBwbGljYXRpb24sIGFkZHI6IGFueSwgcGtnTmFtZTogc3RyaW5nLCBwa2dWZXJzaW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgY29uc3Qgc2VydmVyID0gd2ViU2VydmVyXG4gICAgLmxpc3RlbihhZGRyLnBvcnQgfHwgYWRkci5wYXRoLCBhZGRyLmhvc3QsICgpOiB2b2lkID0+IHtcbiAgICAgIC8vIHNlbmQgYSBtZXNzYWdlIGZvciB0ZXN0c1xuICAgICAgaWYgKGlzRnVuY3Rpb24ocHJvY2Vzcy5zZW5kKSkge1xuICAgICAgICBwcm9jZXNzLnNlbmQoe1xuICAgICAgICAgIHZlcmRhY2Npb19zdGFydGVkOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KVxuICAgIC5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyKTogdm9pZCB7XG4gICAgICBsb2dnZXIubG9nZ2VyLmZhdGFsKHsgZXJyOiBlcnIgfSwgJ2Nhbm5vdCBjcmVhdGUgc2VydmVyOiBAe2Vyci5tZXNzYWdlfScpO1xuICAgICAgcHJvY2Vzcy5leGl0KDIpO1xuICAgIH0pO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNodXRkb3duR3JhY2VmdWxseSgpIHtcbiAgICBsb2dnZXIubG9nZ2VyLmZhdGFsKCdyZWNlaXZlZCBzaHV0ZG93biBzaWduYWwgLSBjbG9zaW5nIHNlcnZlciBncmFjZWZ1bGx5Li4uJyk7XG4gICAgc2VydmVyLmNsb3NlKCgpID0+IHtcbiAgICAgIGxvZ2dlci5sb2dnZXIuaW5mbygnc2VydmVyIGNsb3NlZC4nKTtcbiAgICAgIHByb2Nlc3MuZXhpdCgwKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIGhhbmRsZSBzaHV0ZG93biBzaWduYWxzIG5pY2VseSB3aGVuIGVudmlyb25tZW50IHNheXMgc29cbiAgaWYgKHByb2Nlc3MuZW52LlZFUkRBQ0NJT19IQU5ETEVfS0lMTF9TSUdOQUxTID09PSAndHJ1ZScpIHtcbiAgICBwcm9jZXNzLm9uKCdTSUdJTlQnLCBoYW5kbGVTaHV0ZG93bkdyYWNlZnVsbHkpO1xuICAgIHByb2Nlc3Mub24oJ1NJR1RFUk0nLCBoYW5kbGVTaHV0ZG93bkdyYWNlZnVsbHkpO1xuICAgIHByb2Nlc3Mub24oJ1NJR0hVUCcsIGhhbmRsZVNodXRkb3duR3JhY2VmdWxseSk7XG4gIH1cblxuICBsb2dnZXIubG9nZ2VyLndhcm4oXG4gICAge1xuICAgICAgYWRkcjogYWRkci5wYXRoXG4gICAgICAgID8gVVJMLmZvcm1hdCh7XG4gICAgICAgICAgICBwcm90b2NvbDogJ3VuaXgnLFxuICAgICAgICAgICAgcGF0aG5hbWU6IGFkZHIucGF0aCxcbiAgICAgICAgICB9KVxuICAgICAgICA6IFVSTC5mb3JtYXQoe1xuICAgICAgICAgICAgcHJvdG9jb2w6IGFkZHIucHJvdG8sXG4gICAgICAgICAgICBob3N0bmFtZTogYWRkci5ob3N0LFxuICAgICAgICAgICAgcG9ydDogYWRkci5wb3J0LFxuICAgICAgICAgICAgcGF0aG5hbWU6ICcvJyxcbiAgICAgICAgICB9KSxcbiAgICAgIHZlcnNpb246IHBrZ05hbWUgKyAnLycgKyBwa2dWZXJzaW9uLFxuICAgIH0sXG4gICAgJ2h0dHAgYWRkcmVzcyAtIEB7YWRkcn0gLSBAe3ZlcnNpb259J1xuICApO1xufVxuXG5leHBvcnQgeyBzdGFydFZlcmRhY2NpbywgbGlzdGVuRGVmYXVsdENhbGxiYWNrIH07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSUE7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7QUFFQSxNQUFNQSxNQUFNLEdBQUdDLE9BQU8sQ0FBQyxVQUFELENBQXRCOztBQUVBLFNBQVNDLHlCQUFULENBQW1DQyxXQUFuQyxFQUFnRDtFQUM5QyxNQUFNQyxjQUFjLEdB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
|
|
205
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJsb2dnZXIiLCJyZXF1aXJlIiwiZGlzcGxheUV4cGVyaW1lbnRzSW5mb0JveCIsImV4cGVyaW1lbnRzIiwiZXhwZXJpbWVudExpc3QiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwid2FybiIsImZvckVhY2giLCJleHBlcmltZW50Iiwic3RhcnRWZXJkYWNjaW8iLCJjb25maWciLCJjbGlMaXN0ZW4iLCJjb25maWdQYXRoIiwicGtnVmVyc2lvbiIsInBrZ05hbWUiLCJjYWxsYmFjayIsImlzT2JqZWN0IiwiRXJyb3IiLCJBUElfRVJST1IiLCJDT05GSUdfQkFEX0ZPUk1BVCIsImVuZFBvaW50QVBJIiwidGhlbiIsImFwcCIsImFkZHJlc3NlcyIsImdldExpc3RMaXN0ZW5BZGRyZXNzZXMiLCJsaXN0ZW4iLCJwcm9jZXNzIiwiZW1pdFdhcm5pbmciLCJhZGRyIiwid2ViU2VydmVyIiwicHJvdG8iLCJoYW5kbGVIVFRQUyIsImh0dHAiLCJjcmVhdGVTZXJ2ZXIiLCJzZXJ2ZXIiLCJrZWVwQWxpdmVUaW1lb3V0IiwidW5saW5rQWRkcmVzc1BhdGgiLCJwYXRoIiwiZnMiLCJleGlzdHNTeW5jIiwidW5saW5rU3luYyIsImxvZ0hUVFBTV2FybmluZyIsInN0b3JhZ2VMb2NhdGlvbiIsImZhdGFsIiwicmVzb2x2ZUNvbmZpZ1BhdGgiLCJrZXlQZW0iLCJjc3JQZW0iLCJjZXJ0UGVtIiwiam9pbiIsImV4aXQiLCJodHRwc09wdGlvbnMiLCJzZWN1cmVPcHRpb25zIiwiY29uc3RhbnRzIiwiU1NMX09QX05PX1NTTHYyIiwiU1NMX09QX05PX1NTTHYzIiwia2V5Q2VydENvbmZpZyIsImh0dHBzIiwicGZ4Q29uZmlnIiwia2V5IiwiY2VydCIsInBmeCIsInBhc3NwaHJhc2UiLCJhc3NpZ24iLCJyZWFkRmlsZVN5bmMiLCJjYSIsImVyciIsImxpc3RlbkRlZmF1bHRDYWxsYmFjayIsInBvcnQiLCJob3N0IiwiaXNGdW5jdGlvbiIsInNlbmQiLCJ2ZXJkYWNjaW9fc3RhcnRlZCIsIm9uIiwiaGFuZGxlU2h1dGRvd25HcmFjZWZ1bGx5IiwiY2xvc2UiLCJpbmZvIiwiZW52IiwiVkVSREFDQ0lPX0hBTkRMRV9LSUxMX1NJR05BTFMiLCJVUkwiLCJmb3JtYXQiLCJwcm90b2NvbCIsInBhdGhuYW1lIiwiaG9zdG5hbWUiLCJ2ZXJzaW9uIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9ib290c3RyYXAudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbnN0YW50cyBmcm9tICdjb25zdGFudHMnO1xuaW1wb3J0IGV4cHJlc3MgZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbiB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IGZzIGZyb20gJ2ZzJztcbmltcG9ydCBodHRwIGZyb20gJ2h0dHAnO1xuaW1wb3J0IGh0dHBzIGZyb20gJ2h0dHBzJztcbmltcG9ydCB7IGFzc2lnbiwgaXNGdW5jdGlvbiwgaXNPYmplY3QgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IFVSTCBmcm9tICd1cmwnO1xuXG5pbXBvcnQgeyBDYWxsYmFjaywgQ29uZmlnV2l0aEh0dHBzLCBIdHRwc0NvbmZLZXlDZXJ0LCBIdHRwc0NvbmZQZnggfSBmcm9tICdAdmVyZGFjY2lvL3R5cGVzJztcblxuaW1wb3J0IGVuZFBvaW50QVBJIGZyb20gJy4uL2FwaS9pbmRleCc7XG5pbXBvcnQgeyBnZXRMaXN0TGlzdGVuQWRkcmVzc2VzLCByZXNvbHZlQ29uZmlnUGF0aCB9IGZyb20gJy4vY2xpL3V0aWxzJztcbmltcG9ydCB7IEFQSV9FUlJPUiwgY2VydFBlbSwgY3NyUGVtLCBrZXlQZW0gfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmNvbnN0IGxvZ2dlciA9IHJlcXVpcmUoJy4vbG9nZ2VyJyk7XG5cbmZ1bmN0aW9uIGRpc3BsYXlFeHBlcmltZW50c0luZm9Cb3goZXhwZXJpbWVudHMpIHtcbiAgY29uc3QgZXhwZXJpbWVudExpc3QgPSBPYmplY3Qua2V5cyhleHBlcmltZW50cyk7XG4gIGlmIChleHBlcmltZW50TGlzdC5sZW5ndGggPj0gMSkge1xuICAgIGxvZ2dlci5sb2dnZXIud2Fybign4pqg77iPICBleHBlcmltZW50cyBhcmUgZW5hYmxlZCwgd2UgcmVjb21tZW5kIGRvIG5vdCB1c2UgZXhwZXJpbWVudHMgaW4gcHJvZHVjdGlvbiwgY29tbWVudCBvdXQgdGhpcyBzZWN0aW9uIHRvIGRpc2FibGUgaXQnKTtcbiAgICBleHBlcmltZW50TGlzdC5mb3JFYWNoKChleHBlcmltZW50KSA9PiB7XG4gICAgICBsb2dnZXIubG9nZ2VyLndhcm4oYCAtIHN1cHBvcnQgZm9yICR7ZXhwZXJpbWVudH0gJHtleHBlcmltZW50c1tleHBlcmltZW50XSA/ICdpcyBlbmFibGVkJyA6ICcgaXMgZGlzYWJsZWQnfWApO1xuICAgIH0pO1xuICB9XG59XG5cbi8qKlxuICogVHJpZ2dlciB0aGUgc2VydmVyIGFmdGVyIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gbG9hZGVkLlxuICogQHBhcmFtIHtPYmplY3R9IGNvbmZpZ1xuICogQHBhcmFtIHtPYmplY3R9IGNsaUFyZ3VtZW50c1xuICogQHBhcmFtIHtTdHJpbmd9IGNvbmZpZ1BhdGhcbiAqIEBwYXJhbSB7U3RyaW5nfSBwa2dWZXJzaW9uXG4gKiBAcGFyYW0ge1N0cmluZ30gcGtnTmFtZVxuICogQGRlcHJlY2F0ZWQgdXNlIHJ1blNlcnZlciBpbnN0ZWFkXG4gKi9cbmZ1bmN0aW9uIHN0YXJ0VmVyZGFjY2lvKGNvbmZpZzogYW55LCBjbGlMaXN0ZW46IHN0cmluZywgY29uZmlnUGF0aDogc3RyaW5nLCBwa2dWZXJzaW9uOiBzdHJpbmcsIHBrZ05hbWU6IHN0cmluZywgY2FsbGJhY2s6IENhbGxiYWNrKTogdm9pZCB7XG4gIGlmIChpc09iamVjdChjb25maWcpID09PSBmYWxzZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihBUElfRVJST1IuQ09ORklHX0JBRF9GT1JNQVQpO1xuICB9XG5cbiAgaWYgKCdleHBlcmltZW50cycgaW4gY29uZmlnKSB7XG4gICAgZGlzcGxheUV4cGVyaW1lbnRzSW5mb0JveChjb25maWcuZXhwZXJpbWVudHMpO1xuICB9XG5cbiAgZW5kUG9pbnRBUEkoY29uZmlnKS50aGVuKChhcHApOiB2b2lkID0+IHtcbiAgICBjb25zdCBhZGRyZXNzZXMgPSBnZXRMaXN0TGlzdGVuQWRkcmVzc2VzKGNsaUxpc3RlbiwgY29uZmlnLmxpc3Rlbik7XG5cbiAgICBpZiAoYWRkcmVzc2VzLmxlbmd0aCA+IDEpIHtcbiAgICAgIHByb2Nlc3MuZW1pdFdhcm5pbmcoJ211bHRpcGxlIGxpc3RlbiBhZGRyZXNzZXMgYXJlIGRlcHJlY2F0ZWQsIHBsZWFzZSB1c2Ugb25seSBvbmUnKTtcbiAgICB9XG5cbiAgICBhZGRyZXNzZXMuZm9yRWFjaChmdW5jdGlvbiAoYWRkcik6IHZvaWQge1xuICAgICAgbGV0IHdlYlNlcnZlcjtcbiAgICAgIGlmIChhZGRyLnByb3RvID09PSAnaHR0cHMnKSB7XG4gICAgICAgIHdlYlNlcnZlciA9IGhhbmRsZUhUVFBTKGFwcCwgY29uZmlnUGF0aCwgY29uZmlnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIGh0dHBcbiAgICAgICAgd2ViU2VydmVyID0gaHR0cC5jcmVhdGVTZXJ2ZXIoYXBwKTtcbiAgICAgIH1cbiAgICAgIGlmIChjb25maWcuc2VydmVyICYmIHR5cGVvZiBjb25maWcuc2VydmVyLmtlZXBBbGl2ZVRpbWVvdXQgIT09ICd1bmRlZmluZWQnICYmIGNvbmZpZy5zZXJ2ZXIua2VlcEFsaXZlVGltZW91dCAhPT0gJ251bGwnKSB7XG4gICAgICAgIC8vIGxpYnJhcnkgZGVmaW5pdGlvbiBmb3Igbm9kZSBpcyBub3QgdXAgdG8gZGF0ZSAoZG9lc24ndCBjb250YWluIHJlY2VudCA4LjAgY2hhbmdlcylcbiAgICAgICAgd2ViU2VydmVyLmtlZXBBbGl2ZVRpbWVvdXQgPSBjb25maWcuc2VydmVyLmtlZXBBbGl2ZVRpbWVvdXQgKiAxMDAwO1xuICAgICAgfVxuICAgICAgdW5saW5rQWRkcmVzc1BhdGgoYWRkcik7XG5cbiAgICAgIGNhbGxiYWNrKHdlYlNlcnZlciwgYWRkciwgcGtnTmFtZSwgcGtnVmVyc2lvbik7XG4gICAgfSk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiB1bmxpbmtBZGRyZXNzUGF0aChhZGRyKSB7XG4gIGlmIChhZGRyLnBhdGggJiYgZnMuZXhpc3RzU3luYyhhZGRyLnBhdGgpKSB7XG4gICAgZnMudW5saW5rU3luYyhhZGRyLnBhdGgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGxvZ0hUVFBTV2FybmluZyhzdG9yYWdlTG9jYXRpb24pIHtcbiAgbG9nZ2VyLmxvZ2dlci5mYXRhbChcbiAgICBbXG4gICAgICAnWW91IGhhdmUgZW5hYmxlZCBIVFRQUyBhbmQgbmVlZCB0byBzcGVjaWZ5IGVpdGhlciAnLFxuICAgICAgJyAgICBcImh0dHBzLmtleVwiIGFuZCBcImh0dHBzLmNlcnRcIiBvciAnLFxuICAgICAgJyAgICBcImh0dHBzLnBmeFwiIGFuZCBvcHRpb25hbGx5IFwiaHR0cHMucGFzc3BocmFzZVwiICcsXG4gICAgICAndG8gcnVuIGh0dHBzIHNlcnZlcicsXG4gICAgICAnJyxcbiAgICAgIC8vIGNvbW1hbmRzIGFyZSBib3Jyb3dlZCBmcm9tIG5vZGUuanMgZG9jc1xuICAgICAgJ1RvIHF1aWNrbHkgY3JlYXRlIHNlbGYtc2lnbmVkIGNlcnRpZmljYXRlLCB1c2U6JyxcbiAgICAgICcgJCBvcGVuc3NsIGdlbnJzYSAtb3V0ICcgKyByZXNvbHZlQ29uZmlnUGF0aChzdG9yYWdlTG9jYXRpb24sIGtleVBlbSkgKyAnIDIwNDgnLFxuICAgICAgJyAkIG9wZW5zc2wgcmVxIC1uZXcgLXNoYTI1NiAta2V5ICcgKyByZXNvbHZlQ29uZmlnUGF0aChzdG9yYWdlTG9jYXRpb24sIGtleVBlbSkgKyAnIC1vdXQgJyArIHJlc29sdmVDb25maWdQYXRoKHN0b3JhZ2VMb2NhdGlvbiwgY3NyUGVtKSxcbiAgICAgICcgJCBvcGVuc3NsIHg1MDkgLXJlcSAtaW4gJyArXG4gICAgICAgIHJlc29sdmVDb25maWdQYXRoKHN0b3JhZ2VMb2NhdGlvbiwgY3NyUGVtKSArXG4gICAgICAgICcgLXNpZ25rZXkgJyArXG4gICAgICAgIHJlc29sdmVDb25maWdQYXRoKHN0b3JhZ2VMb2NhdGlvbiwga2V5UGVtKSArXG4gICAgICAgICcgLW91dCAnICtcbiAgICAgICAgcmVzb2x2ZUNvbmZpZ1BhdGgoc3RvcmFnZUxvY2F0aW9uLCBjZXJ0UGVtKSxcbiAgICAgICcnLFxuICAgICAgJ0FuZCB0aGVuIGFkZCB0byBjb25maWcgZmlsZSAoJyArIHN0b3JhZ2VMb2NhdGlvbiArICcpOicsXG4gICAgICAnICBodHRwczonLFxuICAgICAgYCAgICBrZXk6ICR7cmVzb2x2ZUNvbmZpZ1BhdGgoc3RvcmFnZUxvY2F0aW9uLCBrZXlQZW0pfWAsXG4gICAgICBgICAgIGNlcnQ6ICR7cmVzb2x2ZUNvbmZpZ1BhdGgoc3RvcmFnZUxvY2F0aW9uLCBjZXJ0UGVtKX1gLFxuICAgIF0uam9pbignXFxuJylcbiAgKTtcbiAgcHJvY2Vzcy5leGl0KDIpO1xufVxuXG5mdW5jdGlvbiBoYW5kbGVIVFRQUyhhcHA6IGV4cHJlc3MuQXBwbGljYXRpb24sIGNvbmZpZ1BhdGg6IHN0cmluZywgY29uZmlnOiBDb25maWdXaXRoSHR0cHMpOiBodHRwcy5TZXJ2ZXIge1xuICB0cnkge1xuICAgIGxldCBodHRwc09wdGlvbnMgPSB7XG4gICAgICBzZWN1cmVPcHRpb25zOiBjb25zdGFudHMuU1NMX09QX05PX1NTTHYyIHwgY29uc3RhbnRzLlNTTF9PUF9OT19TU0x2MywgLy8gZGlzYWJsZSBpbnNlY3VyZSBTU0x2MiBhbmQgU1NMdjNcbiAgICB9O1xuXG4gICAgY29uc3Qga2V5Q2VydENvbmZpZyA9IGNvbmZpZy5odHRwcyBhcyBIdHRwc0NvbmZLZXlDZXJ0O1xuICAgIGNvbnN0IHBmeENvbmZpZyA9IGNvbmZpZy5odHRwcyBhcyBIdHRwc0NvbmZQZng7XG5cbiAgICAvLyBodHRwcyBtdXN0IGVpdGhlciBoYXZlIGtleSBhbmQgY2VydCBvciBhIHBmeCBhbmQgKG9wdGlvbmFsbHkpIGEgcGFzc3BocmFzZVxuICAgIGlmICghKChrZXlDZXJ0Q29uZmlnLmtleSAmJiBrZXlDZXJ0Q29uZmlnLmNlcnQpIHx8IHBmeENvbmZpZy5wZngpKSB7XG4gICAgICBsb2dIVFRQU1dhcm5pbmcoY29uZmlnUGF0aCk7XG4gICAgfVxuXG4gICAgaWYgKHBmeENvbmZpZy5wZngpIHtcbiAgICAgIGNvbnN0IHsgcGZ4LCBwYXNzcGhyYXNlIH0gPSBwZnhDb25maWc7XG4gICAgICBodHRwc09wdGlvbnMgPSBhc3NpZ24oaHR0cHNPcHRpb25zLCB7XG4gICAgICAgIHBmeDogZnMucmVhZEZpbGVTeW5jKHBmeCksXG4gICAgICAgIHBhc3NwaHJhc2U6IHBhc3NwaHJhc2UgfHwgJycsXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgeyBrZXksIGNlcnQsIGNhIH0gPSBrZXlDZXJ0Q29uZmlnO1xuICAgICAgaHR0cHNPcHRpb25zID0gYXNzaWduKGh0dHBzT3B0aW9ucywge1xuICAgICAgICBrZXk6IGZzLnJlYWRGaWxlU3luYyhrZXkpLFxuICAgICAgICBjZXJ0OiBmcy5yZWFkRmlsZVN5bmMoY2VydCksXG4gICAgICAgIC4uLihjYSAmJiB7XG4gICAgICAgICAgY2E6IGZzLnJlYWRGaWxlU3luYyhjYSksXG4gICAgICAgIH0pLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBodHRwcy5jcmVhdGVTZXJ2ZXIoaHR0cHNPcHRpb25zLCBhcHApO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICAvLyBjYXRjaCBlcnJvcnMgcmVsYXRlZCB0byBjZXJ0aWZpY2F0ZSBsb2FkaW5nXG4gICAgbG9nZ2VyLmxvZ2dlci5mYXRhbCh7IGVycjogZXJyIH0sICdjYW5ub3QgY3JlYXRlIHNlcnZlcjogQHtlcnIubWVzc2FnZX0nKTtcbiAgICBwcm9jZXNzLmV4aXQoMik7XG4gIH1cbn1cbi8qKlxuICpcbiAqIEBwYXJhbSB3ZWJTZXJ2ZXJcbiAqIEBwYXJhbSBhZGRyXG4gKiBAcGFyYW0gcGtnTmFtZVxuICogQHBhcmFtIHBrZ1ZlcnNpb25cbiAqIEBkZXByZWNhdGVkIHVzZSBpbml0U2VydmVyIGluc3RlYWRcbiAqL1xuZnVuY3Rpb24gbGlzdGVuRGVmYXVsdENhbGxiYWNrKHdlYlNlcnZlcjogQXBwbGljYXRpb24sIGFkZHI6IGFueSwgcGtnTmFtZTogc3RyaW5nLCBwa2dWZXJzaW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgY29uc3Qgc2VydmVyID0gd2ViU2VydmVyXG4gICAgLmxpc3RlbihhZGRyLnBvcnQgfHwgYWRkci5wYXRoLCBhZGRyLmhvc3QsICgpOiB2b2lkID0+IHtcbiAgICAgIC8vIHNlbmQgYSBtZXNzYWdlIGZvciB0ZXN0c1xuICAgICAgaWYgKGlzRnVuY3Rpb24ocHJvY2Vzcy5zZW5kKSkge1xuICAgICAgICBwcm9jZXNzLnNlbmQoe1xuICAgICAgICAgIHZlcmRhY2Npb19zdGFydGVkOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KVxuICAgIC5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyKTogdm9pZCB7XG4gICAgICBsb2dnZXIubG9nZ2VyLmZhdGFsKHsgZXJyOiBlcnIgfSwgJ2Nhbm5vdCBjcmVhdGUgc2VydmVyOiBAe2Vyci5tZXNzYWdlfScpO1xuICAgICAgcHJvY2Vzcy5leGl0KDIpO1xuICAgIH0pO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNodXRkb3duR3JhY2VmdWxseSgpIHtcbiAgICBsb2dnZXIubG9nZ2VyLmZhdGFsKCdyZWNlaXZlZCBzaHV0ZG93biBzaWduYWwgLSBjbG9zaW5nIHNlcnZlciBncmFjZWZ1bGx5Li4uJyk7XG4gICAgc2VydmVyLmNsb3NlKCgpID0+IHtcbiAgICAgIGxvZ2dlci5sb2dnZXIuaW5mbygnc2VydmVyIGNsb3NlZC4nKTtcbiAgICAgIHByb2Nlc3MuZXhpdCgwKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIGhhbmRsZSBzaHV0ZG93biBzaWduYWxzIG5pY2VseSB3aGVuIGVudmlyb25tZW50IHNheXMgc29cbiAgaWYgKHByb2Nlc3MuZW52LlZFUkRBQ0NJT19IQU5ETEVfS0lMTF9TSUdOQUxTID09PSAndHJ1ZScpIHtcbiAgICBwcm9jZXNzLm9uKCdTSUdJTlQnLCBoYW5kbGVTaHV0ZG93bkdyYWNlZnVsbHkpO1xuICAgIHByb2Nlc3Mub24oJ1NJR1RFUk0nLCBoYW5kbGVTaHV0ZG93bkdyYWNlZnVsbHkpO1xuICAgIHByb2Nlc3Mub24oJ1NJR0hVUCcsIGhhbmRsZVNodXRkb3duR3JhY2VmdWxseSk7XG4gIH1cblxuICBsb2dnZXIubG9nZ2VyLndhcm4oXG4gICAge1xuICAgICAgYWRkcjogYWRkci5wYXRoXG4gICAgICAgID8gVVJMLmZvcm1hdCh7XG4gICAgICAgICAgICBwcm90b2NvbDogJ3VuaXgnLFxuICAgICAgICAgICAgcGF0aG5hbWU6IGFkZHIucGF0aCxcbiAgICAgICAgICB9KVxuICAgICAgICA6IFVSTC5mb3JtYXQoe1xuICAgICAgICAgICAgcHJvdG9jb2w6IGFkZHIucHJvdG8sXG4gICAgICAgICAgICBob3N0bmFtZTogYWRkci5ob3N0LFxuICAgICAgICAgICAgcG9ydDogYWRkci5wb3J0LFxuICAgICAgICAgICAgcGF0aG5hbWU6ICcvJyxcbiAgICAgICAgICB9KSxcbiAgICAgIHZlcnNpb246IHBrZ05hbWUgKyAnLycgKyBwa2dWZXJzaW9uLFxuICAgIH0sXG4gICAgJ2h0dHAgYWRkcmVzcyAtIEB7YWRkcn0gLSBAe3ZlcnNpb259J1xuICApO1xufVxuXG5leHBvcnQgeyBzdGFydFZlcmRhY2NpbywgbGlzdGVuRGVmYXVsdENhbGxiYWNrIH07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSUE7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7QUFFQSxNQUFNQSxNQUFNLEdBQUdDLE9BQU8sQ0FBQyxVQUFELENBQXRCOztBQUVBLFNBQVNDLHlCQUFULENBQW1DQyxXQUFuQyxFQUFnRDtFQUM5QyxNQUFNQyxjQUFjLEdB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
|
|
@@ -154,4 +154,4 @@ function normalisePackageAccess(packages) {
|
|
|
154
154
|
|
|
155
155
|
return normalizedPkgs;
|
|
156
156
|
}
|
|
157
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCTEFDS0xJU1QiLCJhbGwiLCJhbm9ueW1vdXMiLCJ1bmRlZmluZWQiLCJvd25lciIsIm5vbmUiLCJub3JtYWxpemVVc2VyTGlzdCIsIm9sZEZvcm1hdCIsIm5ld0Zvcm1hdCIsInJlc3VsdCIsImkiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJfIiwiaXNTdHJpbmciLCJwdXNoIiwic3BsaXQiLCJBcnJheSIsImlzQXJyYXkiLCJFcnJvckNvZGUiLCJnZXRJbnRlcm5hbEVycm9yIiwiSlNPTiIsInN0cmluZ2lmeSIsImZsYXR0ZW4iLCJ1cGxpbmtTYW5pdHlDaGVjayIsInVwbGlua3MiLCJ1c2VycyIsIm5ld1VwbGlua3MiLCJjbG9uZSIsIm5ld1VzZXJzIiwidXBsaW5rIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaXNOaWwiLCJjYWNoZSIsInNhbml0eUNoZWNrTmFtZXMiLCJpdGVtIiwiYXNzZXJ0IiwibWF0Y2giLCJzYW5pdHlDaGVja1VwbGlua3NQcm9wcyIsImNvbmZpZ1VwTGlua3MiLCJ1cmwiLCJyZXBsYWNlIiwiaGFzUHJveHlUbyIsInBrZyIsInVwTGluayIsInBhY2thZ2VzIiwibWF0Y2hlZFBrZyIsImdldE1hdGNoZWRQYWNrYWdlc1NwZWMiLCJwcm94eUxpc3QiLCJwcm94eSIsInNvbWUiLCJjdXJyIiwicGtnTmFtZSIsIm1pbmltYXRjaCIsIm1ha2VSZSIsImV4ZWMiLCJub3JtYWxpc2VQYWNrYWdlQWNjZXNzIiwibm9ybWFsaXplZFBrZ3MiLCJhY2Nlc3MiLCJwdWJsaXNoIiwiaXNPYmplY3QiLCJhbGxvd19hY2Nlc3MiLCJhbGxvd19wdWJsaXNoIiwicHJveHlfYWNjZXNzIiwidW5wdWJsaXNoIiwiaXNVbmRlZmluZWQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2NvbmZpZy11dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICogQGZsb3dcbiAqL1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBtaW5pbWF0Y2ggZnJvbSAnbWluaW1hdGNoJztcblxuaW1wb3J0IHsgUGFja2FnZUxpc3QsIFVwTGlua3NDb25mTGlzdCB9IGZyb20gJ0B2ZXJkYWNjaW8vdHlwZXMnO1xuXG5pbXBvcnQgeyBMZWdhY3lQYWNrYWdlTGlzdCwgTWF0Y2hlZFBhY2thZ2UgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBFcnJvckNvZGUgfSBmcm9tICcuL3V0aWxzJztcblxuY29uc3QgQkxBQ0tMSVNUID0ge1xuICBhbGw6IHRydWUsXG4gIGFub255bW91czogdHJ1ZSxcbiAgdW5kZWZpbmVkOiB0cnVlLFxuICBvd25lcjogdHJ1ZSxcbiAgbm9uZTogdHJ1ZSxcbn07XG5cbi8qKlxuICogTm9ybWFsaXplIHVzZXIgbGlzdC5cbiAqIEByZXR1cm4ge0FycmF5fVxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplVXNlckxpc3Qob2xkRm9ybWF0OiBhbnksIG5ld0Zvcm1hdDogYW55KTogYW55IHtcbiAgY29uc3QgcmVzdWx0OiBhbnlbXVtdID0gW107XG4gIC8qIGVzbGludCBwcmVmZXItcmVzdC1wYXJhbXM6IFwib2ZmXCIgKi9cblxuICBmb3IgKGxldCBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykge1xuICAgIGlmIChhcmd1bWVudHNbaV0gPT0gbnVsbCkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgLy8gaWYgaXQncyBhIHN0cmluZywgc3BsaXQgaXQgdG8gYXJyYXlcbiAgICBpZiAoXy5pc1N0cmluZyhhcmd1bWVudHNbaV0pKSB7XG4gICAgICByZXN1bHQucHVzaChhcmd1bWVudHNbaV0uc3BsaXQoL1xccysvKSk7XG4gICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KGFyZ3VtZW50c1tpXSkpIHtcbiAgICAgIHJlc3VsdC5wdXNoKGFyZ3VtZW50c1tpXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IEVycm9yQ29kZS5nZXRJbnRlcm5hbEVycm9yKCdDT05GSUc6IGJhZCBwYWNrYWdlIGFjbCAoYXJyYXkgb3Igc3RyaW5nIGV4cGVjdGVkKTogJyArIEpTT04uc3RyaW5naWZ5KGFyZ3VtZW50c1tpXSkpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gXy5mbGF0dGVuKHJlc3VsdCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1cGxpbmtTYW5pdHlDaGVjayh1cGxpbmtzOiBVcExpbmtzQ29uZkxpc3QsIHVzZXJzOiBhbnkgPSBCTEFDS0xJU1QpOiBVcExpbmtzQ29uZkxpc3Qge1xuICBjb25zdCBuZXdVcGxpbmtzID0gXy5jbG9uZSh1cGxpbmtzKTtcbiAgbGV0IG5ld1VzZXJzID0gXy5jbG9uZSh1c2Vycyk7XG5cbiAgZm9yIChjb25zdCB1cGxpbmsgaW4gbmV3VXBsaW5rcykge1xuICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobmV3VXBsaW5rcywgdXBsaW5rKSkge1xuICAgICAgaWYgKF8uaXNOaWwobmV3VXBsaW5rc1t1cGxpbmtdLmNhY2hlKSkge1xuICAgICAgICBuZXdVcGxpbmtzW3VwbGlua10uY2FjaGUgPSB0cnVlO1xuICAgICAgfVxuICAgICAgbmV3VXNlcnMgPSBzYW5pdHlDaGVja05hbWVzKHVwbGluaywgbmV3VXNlcnMpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBuZXdVcGxpbmtzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2FuaXR5Q2hlY2tOYW1lcyhpdGVtOiBzdHJpbmcsIHVzZXJzOiBhbnkpOiBhbnkge1xuICBhc3NlcnQoaXRlbSAhPT0gJ2FsbCcgJiYgaXRlbSAhPT0gJ293bmVyJyAmJiBpdGVtICE9PSAnYW5vbnltb3VzJyAmJiBpdGVtICE9PSAndW5kZWZpbmVkJyAmJiBpdGVtICE9PSAnbm9uZScsICdDT05GSUc6IHJlc2VydmVkIHVwbGluayBuYW1lOiAnICsgaXRlbSk7XG4gIGFzc2VydCghaXRlbS5tYXRjaCgvXFxzLyksICdDT05GSUc6IGludmFsaWQgdXBsaW5rIG5hbWU6ICcgKyBpdGVtKTtcbiAgYXNzZXJ0KF8uaXNOaWwodXNlcnNbaXRlbV0pLCAnQ09ORklHOiBkdXBsaWNhdGUgdXBsaW5rIG5hbWU6ICcgKyBpdGVtKTtcbiAgdXNlcnNbaXRlbV0gPSB0cnVlO1xuXG4gIHJldHVybiB1c2Vycztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNhbml0eUNoZWNrVXBsaW5rc1Byb3BzKGNvbmZpZ1VwTGlua3M6IFVwTGlua3NDb25mTGlzdCk6IFVwTGlua3NDb25mTGlzdCB7XG4gIGNvbnN0IHVwbGlua3MgPSBfLmNsb25lKGNvbmZpZ1VwTGlua3MpO1xuXG4gIGZvciAoY29uc3QgdXBsaW5rIGluIHVwbGlua3MpIHtcbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHVwbGlua3MsIHVwbGluaykpIHtcbiAgICAgIGFzc2VydCh1cGxpbmtzW3VwbGlua10udXJsLCAnQ09ORklHOiBubyB1cmwgZm9yIHVwbGluazogJyArIHVwbGluayk7XG4gICAgICBhc3NlcnQoXy5pc1N0cmluZyh1cGxpbmtzW3VwbGlua10udXJsKSwgJ0NPTkZJRzogd3JvbmcgdXJsIGZvcm1hdCBmb3IgdXBsaW5rOiAnICsgdXBsaW5rKTtcbiAgICAgIHVwbGlua3NbdXBsaW5rXS51cmwgPSB1cGxpbmtzW3VwbGlua10udXJsLnJlcGxhY2UoL1xcLyQvLCAnJyk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHVwbGlua3M7XG59XG5cbi8qKlxuICogQ2hlY2sgd2hldGhlciBhbiB1cGxpbmsgY2FuIHByb3h5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXNQcm94eVRvKHBrZzogc3RyaW5nLCB1cExpbms6IHN0cmluZywgcGFja2FnZXM6IFBhY2thZ2VMaXN0KTogYm9vbGVhbiB7XG4gIGNvbnN0IG1hdGNoZWRQa2c6IE1hdGNoZWRQYWNrYWdlID0gZ2V0TWF0Y2hlZFBhY2thZ2VzU3BlYyhwa2csIHBhY2thZ2VzKTtcbiAgY29uc3QgcHJveHlMaXN0ID0gdHlwZW9mIG1hdGNoZWRQa2cgIT09ICd1bmRlZmluZWQnID8gbWF0Y2hlZFBrZy5wcm94eSA6IFtdO1xuICBpZiAocHJveHlMaXN0KSB7XG4gICAgcmV0dXJuIHByb3h5TGlzdC5zb21lKChjdXJyKSA9PiB1cExpbmsgPT09IGN1cnIpO1xuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWF0Y2hlZFBhY2thZ2VzU3BlYyhwa2dOYW1lOiBzdHJpbmcsIHBhY2thZ2VzOiBQYWNrYWdlTGlzdCk6IE1hdGNoZWRQYWNrYWdlIHtcbiAgZm9yIChjb25zdCBpIGluIHBhY2thZ2VzKSB7XG4gICAgaWYgKG1pbmltYXRjaC5tYWtlUmUoaSkuZXhlYyhwa2dOYW1lKSkge1xuICAgICAgcmV0dXJuIHBhY2thZ2VzW2ldO1xuICAgIH1cbiAgfVxuICByZXR1cm47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpc2VQYWNrYWdlQWNjZXNzKHBhY2thZ2VzOiBMZWdhY3lQYWNrYWdlTGlzdCk6IExlZ2FjeVBhY2thZ2VMaXN0IHtcbiAgY29uc3Qgbm9ybWFsaXplZFBrZ3M6IExlZ2FjeVBhY2thZ2VMaXN0ID0geyAuLi5wYWNrYWdlcyB9O1xuICAvLyBhZGQgYSBkZWZhdWx0IHJ1bGUgZm9yIGFsbCBwYWNrYWdlcyB0byBtYWtlIHdyaXRpbmcgcGx1Z2lucyBlYXNpZXJcbiAgaWYgKF8uaXNOaWwobm9ybWFsaXplZFBrZ3NbJyoqJ10pKSB7XG4gICAgbm9ybWFsaXplZFBrZ3NbJyoqJ10gPSB7IGFjY2VzczogW10sIHB1Ymxpc2g6IFtdLCBwcm94eTogW10gfTtcbiAgfVxuXG4gIGZvciAoY29uc3QgcGtnIGluIHBhY2thZ2VzKSB7XG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwYWNrYWdlcywgcGtnKSkge1xuICAgICAgYXNzZXJ0KF8uaXNPYmplY3QocGFja2FnZXNbcGtnXSkgJiYgXy5pc0FycmF5KHBhY2thZ2VzW3BrZ10pID09PSBmYWxzZSwgYENPTkZJRzogYmFkIFwiJyR7cGtnfSdcIiBwYWNrYWdlIGRlc2NyaXB0aW9uIChvYmplY3QgZXhwZWN0ZWQpYCk7XG4gICAgICBub3JtYWxpemVkUGtnc1twa2ddLmFjY2VzcyA9IG5vcm1hbGl6ZVVzZXJMaXN0KHBhY2thZ2VzW3BrZ10uYWxsb3dfYWNjZXNzLCBwYWNrYWdlc1twa2ddLmFjY2Vzcyk7XG4gICAgICBkZWxldGUgbm9ybWFsaXplZFBrZ3NbcGtnXS5hbGxvd19hY2Nlc3M7XG4gICAgICBub3JtYWxpemVkUGtnc1twa2ddLnB1Ymxpc2ggPSBub3JtYWxpemVVc2VyTGlzdChwYWNrYWdlc1twa2ddLmFsbG93X3B1Ymxpc2gsIHBhY2thZ2VzW3BrZ10ucHVibGlzaCk7XG4gICAgICBkZWxldGUgbm9ybWFsaXplZFBrZ3NbcGtnXS5hbGxvd19wdWJsaXNoO1xuICAgICAgbm9ybWFsaXplZFBrZ3NbcGtnXS5wcm94eSA9IG5vcm1hbGl6ZVVzZXJMaXN0KHBhY2thZ2VzW3BrZ10ucHJveHlfYWNjZXNzLCBwYWNrYWdlc1twa2ddLnByb3h5KTtcbiAgICAgIGRlbGV0ZSBub3JtYWxpemVkUGtnc1twa2ddLnByb3h5X2FjY2VzcztcbiAgICAgIC8vIGlmIHVucHVibGlzaCBpcyBub3QgZGVmaW5lZCwgd2Ugc2V0IHRvIGZhbHNlIHRvIGZhbGxiYWNrIGluIHB1Ymxpc2ggYWNjZXNzXG4gICAgICBub3JtYWxpemVkUGtnc1twa2ddLnVucHVibGlzaCA9IF8uaXNVbmRlZmluZWQocGFja2FnZXNbcGtnXS51bnB1Ymxpc2gpID8gZmFsc2UgOiBub3JtYWxpemVVc2VyTGlzdChbXSwgcGFja2FnZXNbcGtnXS51bnB1Ymxpc2gpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBub3JtYWxpemVkUGtncztcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUlBOztBQUNBOztBQUNBOztBQUtBOzs7Ozs7Ozs7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
|
|
157
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCTEFDS0xJU1QiLCJhbGwiLCJhbm9ueW1vdXMiLCJ1bmRlZmluZWQiLCJvd25lciIsIm5vbmUiLCJub3JtYWxpemVVc2VyTGlzdCIsIm9sZEZvcm1hdCIsIm5ld0Zvcm1hdCIsInJlc3VsdCIsImkiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJfIiwiaXNTdHJpbmciLCJwdXNoIiwic3BsaXQiLCJBcnJheSIsImlzQXJyYXkiLCJFcnJvckNvZGUiLCJnZXRJbnRlcm5hbEVycm9yIiwiSlNPTiIsInN0cmluZ2lmeSIsImZsYXR0ZW4iLCJ1cGxpbmtTYW5pdHlDaGVjayIsInVwbGlua3MiLCJ1c2VycyIsIm5ld1VwbGlua3MiLCJjbG9uZSIsIm5ld1VzZXJzIiwidXBsaW5rIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaXNOaWwiLCJjYWNoZSIsInNhbml0eUNoZWNrTmFtZXMiLCJpdGVtIiwiYXNzZXJ0IiwibWF0Y2giLCJzYW5pdHlDaGVja1VwbGlua3NQcm9wcyIsImNvbmZpZ1VwTGlua3MiLCJ1cmwiLCJyZXBsYWNlIiwiaGFzUHJveHlUbyIsInBrZyIsInVwTGluayIsInBhY2thZ2VzIiwibWF0Y2hlZFBrZyIsImdldE1hdGNoZWRQYWNrYWdlc1NwZWMiLCJwcm94eUxpc3QiLCJwcm94eSIsInNvbWUiLCJjdXJyIiwicGtnTmFtZSIsIm1pbmltYXRjaCIsIm1ha2VSZSIsImV4ZWMiLCJub3JtYWxpc2VQYWNrYWdlQWNjZXNzIiwibm9ybWFsaXplZFBrZ3MiLCJhY2Nlc3MiLCJwdWJsaXNoIiwiaXNPYmplY3QiLCJhbGxvd19hY2Nlc3MiLCJhbGxvd19wdWJsaXNoIiwicHJveHlfYWNjZXNzIiwidW5wdWJsaXNoIiwiaXNVbmRlZmluZWQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2NvbmZpZy11dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IG1pbmltYXRjaCBmcm9tICdtaW5pbWF0Y2gnO1xuXG5pbXBvcnQgeyBQYWNrYWdlTGlzdCwgVXBMaW5rc0NvbmZMaXN0IH0gZnJvbSAnQHZlcmRhY2Npby90eXBlcyc7XG5cbmltcG9ydCB7IExlZ2FjeVBhY2thZ2VMaXN0LCBNYXRjaGVkUGFja2FnZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEVycm9yQ29kZSB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBCTEFDS0xJU1QgPSB7XG4gIGFsbDogdHJ1ZSxcbiAgYW5vbnltb3VzOiB0cnVlLFxuICB1bmRlZmluZWQ6IHRydWUsXG4gIG93bmVyOiB0cnVlLFxuICBub25lOiB0cnVlLFxufTtcblxuLyoqXG4gKiBOb3JtYWxpemUgdXNlciBsaXN0LlxuICogQHJldHVybiB7QXJyYXl9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVVc2VyTGlzdChvbGRGb3JtYXQ6IGFueSwgbmV3Rm9ybWF0OiBhbnkpOiBhbnkge1xuICBjb25zdCByZXN1bHQ6IGFueVtdW10gPSBbXTtcbiAgLyogZXNsaW50IHByZWZlci1yZXN0LXBhcmFtczogXCJvZmZcIiAqL1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgaWYgKGFyZ3VtZW50c1tpXSA9PSBudWxsKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICAvLyBpZiBpdCdzIGEgc3RyaW5nLCBzcGxpdCBpdCB0byBhcnJheVxuICAgIGlmIChfLmlzU3RyaW5nKGFyZ3VtZW50c1tpXSkpIHtcbiAgICAgIHJlc3VsdC5wdXNoKGFyZ3VtZW50c1tpXS5zcGxpdCgvXFxzKy8pKTtcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoYXJndW1lbnRzW2ldKSkge1xuICAgICAgcmVzdWx0LnB1c2goYXJndW1lbnRzW2ldKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgRXJyb3JDb2RlLmdldEludGVybmFsRXJyb3IoJ0NPTkZJRzogYmFkIHBhY2thZ2UgYWNsIChhcnJheSBvciBzdHJpbmcgZXhwZWN0ZWQpOiAnICsgSlNPTi5zdHJpbmdpZnkoYXJndW1lbnRzW2ldKSk7XG4gICAgfVxuICB9XG4gIHJldHVybiBfLmZsYXR0ZW4ocmVzdWx0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVwbGlua1Nhbml0eUNoZWNrKHVwbGlua3M6IFVwTGlua3NDb25mTGlzdCwgdXNlcnM6IGFueSA9IEJMQUNLTElTVCk6IFVwTGlua3NDb25mTGlzdCB7XG4gIGNvbnN0IG5ld1VwbGlua3MgPSBfLmNsb25lKHVwbGlua3MpO1xuICBsZXQgbmV3VXNlcnMgPSBfLmNsb25lKHVzZXJzKTtcblxuICBmb3IgKGNvbnN0IHVwbGluayBpbiBuZXdVcGxpbmtzKSB7XG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuZXdVcGxpbmtzLCB1cGxpbmspKSB7XG4gICAgICBpZiAoXy5pc05pbChuZXdVcGxpbmtzW3VwbGlua10uY2FjaGUpKSB7XG4gICAgICAgIG5ld1VwbGlua3NbdXBsaW5rXS5jYWNoZSA9IHRydWU7XG4gICAgICB9XG4gICAgICBuZXdVc2VycyA9IHNhbml0eUNoZWNrTmFtZXModXBsaW5rLCBuZXdVc2Vycyk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG5ld1VwbGlua3M7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzYW5pdHlDaGVja05hbWVzKGl0ZW06IHN0cmluZywgdXNlcnM6IGFueSk6IGFueSB7XG4gIGFzc2VydChpdGVtICE9PSAnYWxsJyAmJiBpdGVtICE9PSAnb3duZXInICYmIGl0ZW0gIT09ICdhbm9ueW1vdXMnICYmIGl0ZW0gIT09ICd1bmRlZmluZWQnICYmIGl0ZW0gIT09ICdub25lJywgJ0NPTkZJRzogcmVzZXJ2ZWQgdXBsaW5rIG5hbWU6ICcgKyBpdGVtKTtcbiAgYXNzZXJ0KCFpdGVtLm1hdGNoKC9cXHMvKSwgJ0NPTkZJRzogaW52YWxpZCB1cGxpbmsgbmFtZTogJyArIGl0ZW0pO1xuICBhc3NlcnQoXy5pc05pbCh1c2Vyc1tpdGVtXSksICdDT05GSUc6IGR1cGxpY2F0ZSB1cGxpbmsgbmFtZTogJyArIGl0ZW0pO1xuICB1c2Vyc1tpdGVtXSA9IHRydWU7XG5cbiAgcmV0dXJuIHVzZXJzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2FuaXR5Q2hlY2tVcGxpbmtzUHJvcHMoY29uZmlnVXBMaW5rczogVXBMaW5rc0NvbmZMaXN0KTogVXBMaW5rc0NvbmZMaXN0IHtcbiAgY29uc3QgdXBsaW5rcyA9IF8uY2xvbmUoY29uZmlnVXBMaW5rcyk7XG5cbiAgZm9yIChjb25zdCB1cGxpbmsgaW4gdXBsaW5rcykge1xuICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodXBsaW5rcywgdXBsaW5rKSkge1xuICAgICAgYXNzZXJ0KHVwbGlua3NbdXBsaW5rXS51cmwsICdDT05GSUc6IG5vIHVybCBmb3IgdXBsaW5rOiAnICsgdXBsaW5rKTtcbiAgICAgIGFzc2VydChfLmlzU3RyaW5nKHVwbGlua3NbdXBsaW5rXS51cmwpLCAnQ09ORklHOiB3cm9uZyB1cmwgZm9ybWF0IGZvciB1cGxpbms6ICcgKyB1cGxpbmspO1xuICAgICAgdXBsaW5rc1t1cGxpbmtdLnVybCA9IHVwbGlua3NbdXBsaW5rXS51cmwucmVwbGFjZSgvXFwvJC8sICcnKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdXBsaW5rcztcbn1cblxuLyoqXG4gKiBDaGVjayB3aGV0aGVyIGFuIHVwbGluayBjYW4gcHJveHlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc1Byb3h5VG8ocGtnOiBzdHJpbmcsIHVwTGluazogc3RyaW5nLCBwYWNrYWdlczogUGFja2FnZUxpc3QpOiBib29sZWFuIHtcbiAgY29uc3QgbWF0Y2hlZFBrZzogTWF0Y2hlZFBhY2thZ2UgPSBnZXRNYXRjaGVkUGFja2FnZXNTcGVjKHBrZywgcGFja2FnZXMpO1xuICBjb25zdCBwcm94eUxpc3QgPSB0eXBlb2YgbWF0Y2hlZFBrZyAhPT0gJ3VuZGVmaW5lZCcgPyBtYXRjaGVkUGtnLnByb3h5IDogW107XG4gIGlmIChwcm94eUxpc3QpIHtcbiAgICByZXR1cm4gcHJveHlMaXN0LnNvbWUoKGN1cnIpID0+IHVwTGluayA9PT0gY3Vycik7XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNYXRjaGVkUGFja2FnZXNTcGVjKHBrZ05hbWU6IHN0cmluZywgcGFja2FnZXM6IFBhY2thZ2VMaXN0KTogTWF0Y2hlZFBhY2thZ2Uge1xuICBmb3IgKGNvbnN0IGkgaW4gcGFja2FnZXMpIHtcbiAgICBpZiAobWluaW1hdGNoLm1ha2VSZShpKS5leGVjKHBrZ05hbWUpKSB7XG4gICAgICByZXR1cm4gcGFja2FnZXNbaV07XG4gICAgfVxuICB9XG4gIHJldHVybjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGlzZVBhY2thZ2VBY2Nlc3MocGFja2FnZXM6IExlZ2FjeVBhY2thZ2VMaXN0KTogTGVnYWN5UGFja2FnZUxpc3Qge1xuICBjb25zdCBub3JtYWxpemVkUGtnczogTGVnYWN5UGFja2FnZUxpc3QgPSB7IC4uLnBhY2thZ2VzIH07XG4gIC8vIGFkZCBhIGRlZmF1bHQgcnVsZSBmb3IgYWxsIHBhY2thZ2VzIHRvIG1ha2Ugd3JpdGluZyBwbHVnaW5zIGVhc2llclxuICBpZiAoXy5pc05pbChub3JtYWxpemVkUGtnc1snKionXSkpIHtcbiAgICBub3JtYWxpemVkUGtnc1snKionXSA9IHsgYWNjZXNzOiBbXSwgcHVibGlzaDogW10sIHByb3h5OiBbXSB9O1xuICB9XG5cbiAgZm9yIChjb25zdCBwa2cgaW4gcGFja2FnZXMpIHtcbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHBhY2thZ2VzLCBwa2cpKSB7XG4gICAgICBhc3NlcnQoXy5pc09iamVjdChwYWNrYWdlc1twa2ddKSAmJiBfLmlzQXJyYXkocGFja2FnZXNbcGtnXSkgPT09IGZhbHNlLCBgQ09ORklHOiBiYWQgXCInJHtwa2d9J1wiIHBhY2thZ2UgZGVzY3JpcHRpb24gKG9iamVjdCBleHBlY3RlZClgKTtcbiAgICAgIG5vcm1hbGl6ZWRQa2dzW3BrZ10uYWNjZXNzID0gbm9ybWFsaXplVXNlckxpc3QocGFja2FnZXNbcGtnXS5hbGxvd19hY2Nlc3MsIHBhY2thZ2VzW3BrZ10uYWNjZXNzKTtcbiAgICAgIGRlbGV0ZSBub3JtYWxpemVkUGtnc1twa2ddLmFsbG93X2FjY2VzcztcbiAgICAgIG5vcm1hbGl6ZWRQa2dzW3BrZ10ucHVibGlzaCA9IG5vcm1hbGl6ZVVzZXJMaXN0KHBhY2thZ2VzW3BrZ10uYWxsb3dfcHVibGlzaCwgcGFja2FnZXNbcGtnXS5wdWJsaXNoKTtcbiAgICAgIGRlbGV0ZSBub3JtYWxpemVkUGtnc1twa2ddLmFsbG93X3B1Ymxpc2g7XG4gICAgICBub3JtYWxpemVkUGtnc1twa2ddLnByb3h5ID0gbm9ybWFsaXplVXNlckxpc3QocGFja2FnZXNbcGtnXS5wcm94eV9hY2Nlc3MsIHBhY2thZ2VzW3BrZ10ucHJveHkpO1xuICAgICAgZGVsZXRlIG5vcm1hbGl6ZWRQa2dzW3BrZ10ucHJveHlfYWNjZXNzO1xuICAgICAgLy8gaWYgdW5wdWJsaXNoIGlzIG5vdCBkZWZpbmVkLCB3ZSBzZXQgdG8gZmFsc2UgdG8gZmFsbGJhY2sgaW4gcHVibGlzaCBhY2Nlc3NcbiAgICAgIG5vcm1hbGl6ZWRQa2dzW3BrZ10udW5wdWJsaXNoID0gXy5pc1VuZGVmaW5lZChwYWNrYWdlc1twa2ddLnVucHVibGlzaCkgPyBmYWxzZSA6IG5vcm1hbGl6ZVVzZXJMaXN0KFtdLCBwYWNrYWdlc1twa2ddLnVucHVibGlzaCk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG5vcm1hbGl6ZWRQa2dzO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBS0E7Ozs7Ozs7Ozs7QUFFQSxNQUFNQSxTQUFTLEdBQUc7RUFDaEJDLEdBQUcs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
|
package/build/lib/constants.js
CHANGED
|
@@ -4,11 +4,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.keyPem = exports.csrPem = exports.certPem = exports.WEB_TITLE = exports.USERS = exports.TOKEN_BEARER = exports.TOKEN_BASIC = exports.TIME_EXPIRATION_24H = exports.TIME_EXPIRATION_1H = exports.SUPPORT_ERRORS = exports.STORAGE = exports.ROLES = exports.PACKAGE_ACCESS = exports.MODULE_NOT_FOUND = exports.LATEST = exports.HTTP_STATUS = exports.HEADER_TYPE = exports.HEADERS = exports.ERROR_CODE = exports.DIST_TAGS = exports.DEFAULT_USER = exports.DEFAULT_UPLINK = exports.DEFAULT_REGISTRY = exports.DEFAULT_PROTOCOL = exports.DEFAULT_PORT = exports.DEFAULT_NO_README = exports.DEFAULT_MIN_LIMIT_PASSWORD = exports.DEFAULT_DOMAIN = exports.CHARACTER_ENCODING = exports.APP_ERROR = exports.API_MESSAGE = exports.API_ERROR = void 0;
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @prettier
|
|
10
|
-
*/
|
|
11
|
-
// @flow
|
|
12
7
|
const DEFAULT_PORT = '4873';
|
|
13
8
|
exports.DEFAULT_PORT = DEFAULT_PORT;
|
|
14
9
|
const DEFAULT_PROTOCOL = 'http';
|
|
@@ -189,4 +184,4 @@ const STORAGE = {
|
|
|
189
184
|
DEFAULT_REVISION: '0-0000000000000000'
|
|
190
185
|
};
|
|
191
186
|
exports.STORAGE = STORAGE;
|
|
192
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJERUZBVUxUX1BPUlQiLCJERUZBVUxUX1BST1RPQ09MIiwiREVGQVVMVF9ET01BSU4iLCJUSU1FX0VYUElSQVRJT05fMjRIIiwiVElNRV9FWFBJUkFUSU9OXzFIIiwiRElTVF9UQUdTIiwiTEFURVNUIiwiVVNFUlMiLCJERUZBVUxUX01JTl9MSU1JVF9QQVNTV09SRCIsIkRFRkFVTFRfVVNFUiIsImtleVBlbSIsImNlcnRQZW0iLCJjc3JQZW0iLCJIRUFERVJTIiwiQUNDRVBUIiwiQUNDRVBUX0VOQ09ESU5HIiwiVVNFUl9BR0VOVCIsIkpTT04iLCJDT05URU5UX1RZUEUiLCJDT05URU5UX0xFTkdUSCIsIkNBQ0hFX0NPTlRST0wiLCJURVhUX1BMQUlOIiwiVEVYVF9IVE1MIiwiQVVUSE9SSVpBVElPTiIsIkZPUldBUkRFRF9QUk9UTyIsIkZSQU1FU19PUFRJT05TIiwiQ1NQIiwiQ1RPIiwiWFNTIiwiRVRBRyIsIkpTT05fQ0hBUlNFVCIsIk9DVEVUX1NUUkVBTSIsIlRFWFRfQ0hBUlNFVCIsIldXV19BVVRIIiwiR1pJUCIsIkNIQVJBQ1RFUl9FTkNPRElORyIsIlVURjgiLCJIRUFERVJfVFlQRSIsIkNPTlRFTlRfRU5DT0RJTkciLCJFUlJPUl9DT0RFIiwidG9rZW5fcmVxdWlyZWQiLCJUT0tFTl9CQVNJQyIsIlRPS0VOX0JFQVJFUiIsIkRFRkFVTFRfUkVHSVNUUlkiLCJERUZBVUxUX1VQTElOSyIsIlJPTEVTIiwiJEFMTCIsIkFMTCIsIiRBVVRIIiwiJEFOT05ZTU9VUyIsIkRFUFJFQ0FURURfQUxMIiwiREVQUkVDQVRFRF9BVVRIIiwiREVQUkVDQVRFRF9BTk9OWU1PVVMiLCJIVFRQX1NUQVRVUyIsIk9LIiwiQ1JFQVRFRCIsIk1VTFRJUExFX0NIT0lDRVMiLCJSRURJUkVDVCIsIk5PVF9NT0RJRklFRCIsIkJBRF9SRVFVRVNUIiwiVU5BVVRIT1JJWkVEIiwiRk9SQklEREVOIiwiTk9UX0ZPVU5EIiwiQ09ORkxJQ1QiLCJVTlNVUFBPUlRFRF9NRURJQSIsIkJBRF9EQVRBIiwiSU5URVJOQUxfRVJST1IiLCJOT1RfSU1QTEVNRU5URUQiLCJTRVJWSUNFX1VOQVZBSUxBQkxFIiwiTE9PUF9ERVRFQ1RFRCIsIkFQSV9NRVNTQUdFIiwiUEtHX0NSRUFURUQiLCJQS0dfQ0hBTkdFRCIsIlBLR19SRU1PVkVEIiwiUEtHX1BVQkxJU0hFRCIsIlRBUkJBTExfVVBMT0FERUQiLCJUQVJCQUxMX1JFTU9WRUQiLCJUQUdfVVBEQVRFRCIsIlRBR19SRU1PVkVEIiwiVEFHX0FEREVEIiwiTE9HR0VEX09VVCIsIlNVUFBPUlRfRVJST1JTIiwiUExVR0lOX01JU1NJTkdfSU5URVJGQUNFIiwiVEZBX0RJU0FCTEVEIiwiU1RPUkFHRV9OT1RfSU1QTEVNRU5UIiwiUEFSQU1FVEVSU19OT1RfVkFMSUQiLCJBUElfRVJST1IiLCJQQVNTV09SRF9TSE9SVCIsInBhc3NMZW5ndGgiLCJNVVNUX0JFX0xPR0dFRCIsIlBMVUdJTl9FUlJPUiIsIkNPTkZJR19CQURfRk9STUFUIiwiQkFEX1VTRVJOQU1FX1BBU1NXT1JEIiwiTk9fUEFDS0FHRSIsIlBBQ0tBR0VfQ0FOTk9UX0JFX0FEREVEIiwiTk9UX0FMTE9XRUQiLCJOT1RfQUxMT1dFRF9QVUJMSVNIIiwiSU5URVJOQUxfU0VSVkVSX0VSUk9SIiwiVU5LTk9XTl9FUlJPUiIsIk5PVF9QQUNLQUdFX1VQTElOSyIsIlVQTElOS19PRkZMSU5FX1BVQkxJU0giLCJVUExJTktfT0ZGTElORSIsIkNPTlRFTlRfTUlTTUFUQ0giLCJOT1RfRklMRV9VUExJTksiLCJNQVhfVVNFUlNfUkVBQ0hFRCIsIlZFUlNJT05fTk9UX0VYSVNUIiwiRklMRV9OT1RfRk9VTkQiLCJVTlNVUE9SVEVEX1JFR0lTVFJZX0NBTEwiLCJCQURfU1RBVFVTX0NPREUiLCJQQUNLQUdFX0VYSVNUIiwiQkFEX0FVVEhfSEVBREVSIiwiV0VCX0RJU0FCTEVEIiwiREVQUkVDQVRFRF9CQVNJQ19IRUFERVIiLCJCQURfRk9STUFUX1VTRVJfR1JPVVAiLCJSRVNPVVJDRV9VTkFWQUlMQUJMRSIsIkJBRF9QQUNLQUdFX0RBVEEiLCJVU0VSTkFNRV9QQVNTV09SRF9SRVFVSVJFRCIsIlVTRVJOQU1FX0FMUkVBRFlfUkVHSVNURVJFRCIsIkFQUF9FUlJPUiIsIkNPTkZJR19OT1RfVkFMSUQiLCJQUk9GSUxFX0VSUk9SIiwiUEFTU1dPUkRfVkFMSURBVElPTiIsIkRFRkFVTFRfTk9fUkVBRE1FIiwiTU9EVUxFX05PVF9GT1VORCIsIldFQl9USVRMRSIsIlBBQ0tBR0VfQUNDRVNTIiwiU0NPUEUiLCJTVE9SQUdFIiwiUEFDS0FHRV9GSUxFX05BTUUiLCJGSUxFX0VYSVNUX0VSUk9SIiwiTk9fU1VDSF9GSUxFX0VSUk9SIiwiREVGQVVMVF9SRVZJU0lPTiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY29uc3RhbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHByZXR0aWVyXG4gKi9cblxuLy8gQGZsb3dcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfUE9SVCA9ICc0ODczJztcbmV4cG9ydCBjb25zdCBERUZBVUxUX1BST1RPQ09MID0gJ2h0dHAnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfRE9NQUlOID0gJ2xvY2FsaG9zdCc7XG5leHBvcnQgY29uc3QgVElNRV9FWFBJUkFUSU9OXzI0SCA9ICcyNGgnO1xuZXhwb3J0IGNvbnN0IFRJTUVfRVhQSVJBVElPTl8xSCA9ICcxaCc7XG5leHBvcnQgY29uc3QgRElTVF9UQUdTID0gJ2Rpc3QtdGFncyc7XG5leHBvcnQgY29uc3QgTEFURVNUID0gJ2xhdGVzdCc7XG5leHBvcnQgY29uc3QgVVNFUlMgPSAndXNlcnMnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfTUlOX0xJTUlUX1BBU1NXT1JEID0gMztcbmV4cG9ydCBjb25zdCBERUZBVUxUX1VTRVIgPSAnQW5vbnltb3VzJztcblxuZXhwb3J0IGNvbnN0IGtleVBlbSA9ICd2ZXJkYWNjaW8ta2V5LnBlbSc7XG5leHBvcnQgY29uc3QgY2VydFBlbSA9ICd2ZXJkYWNjaW8tY2VydC5wZW0nO1xuZXhwb3J0IGNvbnN0IGNzclBlbSA9ICd2ZXJkYWNjaW8tY3NyLnBlbSc7XG5cbmV4cG9ydCBjb25zdCBIRUFERVJTID0ge1xuICBBQ0NFUFQ6ICdBY2NlcHQnLFxuICBBQ0NFUFRfRU5DT0RJTkc6ICdBY2NlcHQtRW5jb2RpbmcnLFxuICBVU0VSX0FHRU5UOiAnVXNlci1BZ2VudCcsXG4gIEpTT046ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgQ09OVEVOVF9UWVBFOiAnQ29udGVudC10eXBlJyxcbiAgQ09OVEVOVF9MRU5HVEg6ICdjb250ZW50LWxlbmd0aCcsXG4gIENBQ0hFX0NPTlRST0w6ICdDYWNoZS1Db250cm9sJyxcbiAgVEVYVF9QTEFJTjogJ3RleHQvcGxhaW4nLFxuICBURVhUX0hUTUw6ICd0ZXh0L2h0bWwnLFxuICBBVVRIT1JJWkFUSU9OOiAnYXV0aG9yaXphdGlvbicsXG4gIEZPUldBUkRFRF9QUk9UTzogJ1gtRm9yd2FyZGVkLVByb3RvJyxcbiAgRlJBTUVTX09QVElPTlM6ICdYLUZyYW1lLU9wdGlvbnMnLFxuICBDU1A6ICdDb250ZW50LVNlY3VyaXR5LVBvbGljeScsXG4gIENUTzogJ1gtQ29udGVudC1UeXBlLU9wdGlvbnMnLFxuICBYU1M6ICdYLVhTUy1Qcm90ZWN0aW9uJyxcbiAgRVRBRzogJ0VUYWcnLFxuICBKU09OX0NIQVJTRVQ6ICdhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04JyxcbiAgT0NURVRfU1RSRUFNOiAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtOyBjaGFyc2V0PXV0Zi04JyxcbiAgVEVYVF9DSEFSU0VUOiAndGV4dC9wbGFpbjsgY2hhcnNldD11dGYtOCcsXG4gIFdXV19BVVRIOiAnV1dXLUF1dGhlbnRpY2F0ZScsXG4gIEdaSVA6ICdnemlwJyxcbn07XG5cbmV4cG9ydCBjb25zdCBDSEFSQUNURVJfRU5DT0RJTkcgPSB7XG4gIFVURjg6ICd1dGY4Jyxcbn07XG5cbmV4cG9ydCBjb25zdCBIRUFERVJfVFlQRSA9IHtcbiAgQ09OVEVOVF9FTkNPRElORzogJ2NvbnRlbnQtZW5jb2RpbmcnLFxuICBDT05URU5UX1RZUEU6ICdjb250ZW50LXR5cGUnLFxuICBDT05URU5UX0xFTkdUSDogJ2NvbnRlbnQtbGVuZ3RoJyxcbiAgQUNDRVBUX0VOQ09ESU5HOiAnYWNjZXB0LWVuY29kaW5nJyxcbn07XG5cbmV4cG9ydCBjb25zdCBFUlJPUl9DT0RFID0ge1xuICB0b2tlbl9yZXF1aXJlZDogJ3Rva2VuIGlzIHJlcXVpcmVkJyxcbn07XG5cbmV4cG9ydCBjb25zdCBUT0tFTl9CQVNJQyA9ICdCYXNpYyc7XG5leHBvcnQgY29uc3QgVE9LRU5fQkVBUkVSID0gJ0JlYXJlcic7XG5leHBvcnQgY29uc3QgREVGQVVMVF9SRUdJU1RSWSA9ICdodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZyc7XG5leHBvcnQgY29uc3QgREVGQVVMVF9VUExJTksgPSAnbnBtanMnO1xuXG5leHBvcnQgY29uc3QgUk9MRVMgPSB7XG4gICRBTEw6ICckYWxsJyxcbiAgQUxMOiAnYWxsJyxcbiAgJEFVVEg6ICckYXV0aGVudGljYXRlZCcsXG4gICRBTk9OWU1PVVM6ICckYW5vbnltb3VzJyxcbiAgREVQUkVDQVRFRF9BTEw6ICdAYWxsJyxcbiAgREVQUkVDQVRFRF9BVVRIOiAnQGF1dGhlbnRpY2F0ZWQnLFxuICBERVBSRUNBVEVEX0FOT05ZTU9VUzogJ0Bhbm9ueW1vdXMnLFxufTtcblxuZXhwb3J0IGNvbnN0IEhUVFBfU1RBVFVTID0ge1xuICBPSzogMjAwLFxuICBDUkVBVEVEOiAyMDEsXG4gIE1VTFRJUExFX0NIT0lDRVM6IDMwMCxcbiAgUkVESVJFQ1Q6IDMwMixcbiAgTk9UX01PRElGSUVEOiAzMDQsXG4gIEJBRF9SRVFVRVNUOiA0MDAsXG4gIFVOQVVUSE9SSVpFRDogNDAxLFxuICBGT1JCSURERU46IDQwMyxcbiAgTk9UX0ZPVU5EOiA0MDQsXG4gIENPTkZMSUNUOiA0MDksXG4gIFVOU1VQUE9SVEVEX01FRElBOiA0MTUsXG4gIEJBRF9EQVRBOiA0MjIsXG4gIElOVEVSTkFMX0VSUk9SOiA1MDAsXG4gIE5PVF9JTVBMRU1FTlRFRDogNTAxLFxuICBTRVJWSUNFX1VOQVZBSUxBQkxFOiA1MDMsXG4gIExPT1BfREVURUNURUQ6IDUwOCxcbn07XG5cbmV4cG9ydCBjb25zdCBBUElfTUVTU0FHRSA9IHtcbiAgUEtHX0NSRUFURUQ6ICdjcmVhdGVkIG5ldyBwYWNrYWdlJyxcbiAgUEtHX0NIQU5HRUQ6ICdwYWNrYWdlIGNoYW5nZWQnLFxuICBQS0dfUkVNT1ZFRDogJ3BhY2thZ2UgcmVtb3ZlZCcsXG4gIFBLR19QVUJMSVNIRUQ6ICdwYWNrYWdlIHB1Ymxpc2hlZCcsXG4gIFRBUkJBTExfVVBMT0FERUQ6ICd0YXJiYWxsIHVwbG9hZGVkIHN1Y2Nlc3NmdWxseScsXG4gIFRBUkJBTExfUkVNT1ZFRDogJ3RhcmJhbGwgcmVtb3ZlZCcsXG4gIFRBR19VUERBVEVEOiAndGFncyB1cGRhdGVkJyxcbiAgVEFHX1JFTU9WRUQ6ICd0YWcgcmVtb3ZlZCcsXG4gIFRBR19BRERFRDogJ3BhY2thZ2UgdGFnZ2VkJyxcbiAgTE9HR0VEX09VVDogJ0xvZ2dlZCBvdXQnLFxufTtcblxuZXhwb3J0IGNvbnN0IFNVUFBPUlRfRVJST1JTID0ge1xuICBQTFVHSU5fTUlTU0lOR19JTlRFUkZBQ0U6ICd0aGUgcGx1Z2luIGRvZXMgbm90IHByb3ZpZGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIHJlcXVlc3RlZCBmZWF0dXJlJyxcbiAgVEZBX0RJU0FCTEVEOiAndGhlIHR3by1mYWN0b3IgYXV0aGVudGljYXRpb24gaXMgbm90IHlldCBzdXBwb3J0ZWQnLFxuICBTVE9SQUdFX05PVF9JTVBMRU1FTlQ6ICd0aGUgc3RvcmFnZSBkb2VzIG5vdCBzdXBwb3J0IHRva2VuIHNhdmluZycsXG4gIFBBUkFNRVRFUlNfTk9UX1ZBTElEOiAndGhlIHBhcmFtZXRlcnMgYXJlIG5vdCB2YWxpZCcsXG59O1xuXG5leHBvcnQgY29uc3QgQVBJX0VSUk9SID0ge1xuICBQQVNTV09SRF9TSE9SVDogKHBhc3NMZW5ndGg6IG51bWJlciA9IERFRkFVTFRfTUlOX0xJTUlUX1BBU1NXT1JEKSA9PiBgVGhlIHByb3ZpZGVkIHBhc3N3b3JkIGlzIHRvbyBzaG9ydC4gUGxlYXNlIHBpY2sgYSBwYXNzd29yZCBsb25nZXIgdGhhbiAke3Bhc3NMZW5ndGh9IGNoYXJhY3RlcnMuYCxcbiAgTVVTVF9CRV9MT0dHRUQ6ICdZb3UgbXVzdCBiZSBsb2dnZWQgaW4gdG8gcHVibGlzaCBwYWNrYWdlcy4nLFxuICBQTFVHSU5fRVJST1I6ICdidWcgaW4gdGhlIGF1dGggcGx1Z2luIHN5c3RlbScsXG4gIENPTkZJR19CQURfRk9STUFUOiAnY29uZmlnIGZpbGUgbXVzdCBiZSBhbiBvYmplY3QnLFxuICBCQURfVVNFUk5BTUVfUEFTU1dPUkQ6ICdiYWQgdXNlcm5hbWUvcGFzc3dvcmQsIGFjY2VzcyBkZW5pZWQnLFxuICBOT19QQUNLQUdFOiAnbm8gc3VjaCBwYWNrYWdlIGF2YWlsYWJsZScsXG4gIFBBQ0tBR0VfQ0FOTk9UX0JFX0FEREVEOiAndGhpcyBwYWNrYWdlIGNhbm5vdCBiZSBhZGRlZCcsXG4gIEJBRF9EQVRBOiAnYmFkIGRhdGEnLFxuICBOT1RfQUxMT1dFRDogJ25vdCBhbGxvd2VkIHRvIGFjY2VzcyBwYWNrYWdlJyxcbiAgTk9UX0FMTE9XRURfUFVCTElTSDogJ25vdCBhbGxvd2VkIHRvIHB1Ymxpc2ggcGFja2FnZScsXG4gIElOVEVSTkFMX1NFUlZFUl9FUlJPUjogJ2ludGVybmFsIHNlcnZlciBlcnJvcicsXG4gIFVOS05PV05fRVJST1I6ICd1bmtub3duIGVycm9yJyxcbiAgTk9UX1BBQ0tBR0VfVVBMSU5LOiAncGFja2FnZSBkb2VzIG5vdCBleGlzdCBvbiB1cGxpbmsnLFxuICBVUExJTktfT0ZGTElORV9QVUJMSVNIOiAnb25lIG9mIHRoZSB1cGxpbmtzIGlzIGRvd24sIHJlZnVzZSB0byBwdWJsaXNoJyxcbiAgVVBMSU5LX09GRkxJTkU6ICd1cGxpbmsgaXMgb2ZmbGluZScsXG4gIENPTlRFTlRfTUlTTUFUQ0g6ICdjb250ZW50IGxlbmd0aCBtaXNtYXRjaCcsXG4gIE5PVF9GSUxFX1VQTElOSzogXCJmaWxlIGRvZXNuJ3QgZXhpc3Qgb24gdXBsaW5rXCIsXG4gIE1BWF9VU0VSU19SRUFDSEVEOiAnbWF4aW11bSBhbW91bnQgb2YgdXNlcnMgcmVhY2hlZCcsXG4gIFZFUlNJT05fTk9UX0VYSVNUOiBcInRoaXMgdmVyc2lvbiBkb2Vzbid0IGV4aXN0XCIsXG4gIEZJTEVfTk9UX0ZPVU5EOiAnRmlsZSBub3QgZm91bmQnLFxuICBVTlNVUE9SVEVEX1JFR0lTVFJZX0NBTEw6ICd1bnN1cHBvcnRlZCByZWdpc3RyeSBjYWxsJyxcbiAgQkFEX1NUQVRVU19DT0RFOiAnYmFkIHN0YXR1cyBjb2RlJyxcbiAgUEFDS0FHRV9FWElTVDogJ3RoaXMgcGFja2FnZSBpcyBhbHJlYWR5IHByZXNlbnQnLFxuICBCQURfQVVUSF9IRUFERVI6ICdiYWQgYXV0aG9yaXphdGlvbiBoZWFkZXInLFxuICBXRUJfRElTQUJMRUQ6ICdXZWIgaW50ZXJmYWNlIGlzIGRpc2FibGVkIGluIHRoZSBjb25maWcgZmlsZScsXG4gIERFUFJFQ0FURURfQkFTSUNfSEVBREVSOiAnYmFzaWMgYXV0aGVudGljYXRpb24gaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSBKV1QgaW5zdGVhZCcsXG4gIEJBRF9GT1JNQVRfVVNFUl9HUk9VUDogJ3VzZXIgZ3JvdXBzIGlzIGRpZmZlcmVudCB0aGFuIGFuIGFycmF5JyxcbiAgUkVTT1VSQ0VfVU5BVkFJTEFCTEU6ICdyZXNvdXJjZSB1bmF2YWlsYWJsZScsXG4gIEJBRF9QQUNLQUdFX0RBVEE6ICdiYWQgaW5jb21pbmcgcGFja2FnZSBkYXRhJyxcbiAgVVNFUk5BTUVfUEFTU1dPUkRfUkVRVUlSRUQ6ICd1c2VybmFtZSBhbmQgcGFzc3dvcmQgaXMgcmVxdWlyZWQnLFxuICBVU0VSTkFNRV9BTFJFQURZX1JFR0lTVEVSRUQ6ICd1c2VybmFtZSBpcyBhbHJlYWR5IHJlZ2lzdGVyZWQnLFxufTtcblxuZXhwb3J0IGNvbnN0IEFQUF9FUlJPUiA9IHtcbiAgQ09ORklHX05PVF9WQUxJRDogJ0NPTkZJRzogaXQgZG9lcyBub3QgbG9vayBsaWtlIGEgdmFsaWQgY29uZmlnIGZpbGUnLFxuICBQUk9GSUxFX0VSUk9SOiAncHJvZmlsZSB1bmV4cGVjdGVkIGVycm9yJyxcbiAgUEFTU1dPUkRfVkFMSURBVElPTjogJ25vdCB2YWxpZCBwYXNzd29yZCcsXG59O1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9OT19SRUFETUUgPSAnRVJST1I6IE5vIFJFQURNRSBkYXRhIGZvdW5kISc7XG5leHBvcnQgY29uc3QgTU9EVUxFX05PVF9GT1VORCA9ICdNT0RVTEVfTk9UX0ZPVU5EJztcblxuZXhwb3J0IGNvbnN0IFdFQl9USVRMRSA9ICdWZXJkYWNjaW8nO1xuXG5leHBvcnQgY29uc3QgUEFDS0FHRV9BQ0NFU1MgPSB7XG4gIFNDT1BFOiAnQCovKicsXG4gIEFMTDogJyoqJyxcbn07XG5cbmV4cG9ydCBjb25zdCBTVE9SQUdFID0ge1xuICBQQUNLQUdFX0ZJTEVfTkFNRTogJ3BhY2thZ2UuanNvbicsXG4gIEZJTEVfRVhJU1RfRVJST1I6ICdFRVhJU1RTJyxcbiAgTk9fU1VDSF9GSUxFX0VSUk9SOiAnRU5PRU5UJyxcbiAgREVGQVVMVF9SRVZJU0lPTjogJzAtMDAwMDAwMDAwMDAwMDAwMCcsXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBRUE7QUFFTyxNQUFNQSxZQUFZLEdBQUcsTUFBckI7O0FBQ0EsTUFBTUMsZ0JBQWdCLEdBQUcsTUFBekI7O0FBQ0EsTUFBTUMsY0FBYyxHQUFHLFdBQXZCOztBQUNBLE1BQU1DLG1CQUFtQixHQUFHLEtBQTVCOztBQUNBLE1BQU1DLGtCQUFrQixHQUFHLElBQTNCOztBQUNBLE1BQU1DLFNBQVMsR0FBRyxXQUFsQjs7QUFDQSxNQUFNQyxNQUFNLEdBQUcsUUFBZjs7QUFDQSxNQUFNQyxLQUFLLEdBQUcsT0FBZDs7QUFDQSxNQUFNQywwQkFBMEIsR0FBRyxDQUFuQzs7QUFDQSxN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
|
|
187
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJERUZBVUxUX1BPUlQiLCJERUZBVUxUX1BST1RPQ09MIiwiREVGQVVMVF9ET01BSU4iLCJUSU1FX0VYUElSQVRJT05fMjRIIiwiVElNRV9FWFBJUkFUSU9OXzFIIiwiRElTVF9UQUdTIiwiTEFURVNUIiwiVVNFUlMiLCJERUZBVUxUX01JTl9MSU1JVF9QQVNTV09SRCIsIkRFRkFVTFRfVVNFUiIsImtleVBlbSIsImNlcnRQZW0iLCJjc3JQZW0iLCJIRUFERVJTIiwiQUNDRVBUIiwiQUNDRVBUX0VOQ09ESU5HIiwiVVNFUl9BR0VOVCIsIkpTT04iLCJDT05URU5UX1RZUEUiLCJDT05URU5UX0xFTkdUSCIsIkNBQ0hFX0NPTlRST0wiLCJURVhUX1BMQUlOIiwiVEVYVF9IVE1MIiwiQVVUSE9SSVpBVElPTiIsIkZPUldBUkRFRF9QUk9UTyIsIkZSQU1FU19PUFRJT05TIiwiQ1NQIiwiQ1RPIiwiWFNTIiwiRVRBRyIsIkpTT05fQ0hBUlNFVCIsIk9DVEVUX1NUUkVBTSIsIlRFWFRfQ0hBUlNFVCIsIldXV19BVVRIIiwiR1pJUCIsIkNIQVJBQ1RFUl9FTkNPRElORyIsIlVURjgiLCJIRUFERVJfVFlQRSIsIkNPTlRFTlRfRU5DT0RJTkciLCJFUlJPUl9DT0RFIiwidG9rZW5fcmVxdWlyZWQiLCJUT0tFTl9CQVNJQyIsIlRPS0VOX0JFQVJFUiIsIkRFRkFVTFRfUkVHSVNUUlkiLCJERUZBVUxUX1VQTElOSyIsIlJPTEVTIiwiJEFMTCIsIkFMTCIsIiRBVVRIIiwiJEFOT05ZTU9VUyIsIkRFUFJFQ0FURURfQUxMIiwiREVQUkVDQVRFRF9BVVRIIiwiREVQUkVDQVRFRF9BTk9OWU1PVVMiLCJIVFRQX1NUQVRVUyIsIk9LIiwiQ1JFQVRFRCIsIk1VTFRJUExFX0NIT0lDRVMiLCJSRURJUkVDVCIsIk5PVF9NT0RJRklFRCIsIkJBRF9SRVFVRVNUIiwiVU5BVVRIT1JJWkVEIiwiRk9SQklEREVOIiwiTk9UX0ZPVU5EIiwiQ09ORkxJQ1QiLCJVTlNVUFBPUlRFRF9NRURJQSIsIkJBRF9EQVRBIiwiSU5URVJOQUxfRVJST1IiLCJOT1RfSU1QTEVNRU5URUQiLCJTRVJWSUNFX1VOQVZBSUxBQkxFIiwiTE9PUF9ERVRFQ1RFRCIsIkFQSV9NRVNTQUdFIiwiUEtHX0NSRUFURUQiLCJQS0dfQ0hBTkdFRCIsIlBLR19SRU1PVkVEIiwiUEtHX1BVQkxJU0hFRCIsIlRBUkJBTExfVVBMT0FERUQiLCJUQVJCQUxMX1JFTU9WRUQiLCJUQUdfVVBEQVRFRCIsIlRBR19SRU1PVkVEIiwiVEFHX0FEREVEIiwiTE9HR0VEX09VVCIsIlNVUFBPUlRfRVJST1JTIiwiUExVR0lOX01JU1NJTkdfSU5URVJGQUNFIiwiVEZBX0RJU0FCTEVEIiwiU1RPUkFHRV9OT1RfSU1QTEVNRU5UIiwiUEFSQU1FVEVSU19OT1RfVkFMSUQiLCJBUElfRVJST1IiLCJQQVNTV09SRF9TSE9SVCIsInBhc3NMZW5ndGgiLCJNVVNUX0JFX0xPR0dFRCIsIlBMVUdJTl9FUlJPUiIsIkNPTkZJR19CQURfRk9STUFUIiwiQkFEX1VTRVJOQU1FX1BBU1NXT1JEIiwiTk9fUEFDS0FHRSIsIlBBQ0tBR0VfQ0FOTk9UX0JFX0FEREVEIiwiTk9UX0FMTE9XRUQiLCJOT1RfQUxMT1dFRF9QVUJMSVNIIiwiSU5URVJOQUxfU0VSVkVSX0VSUk9SIiwiVU5LTk9XTl9FUlJPUiIsIk5PVF9QQUNLQUdFX1VQTElOSyIsIlVQTElOS19PRkZMSU5FX1BVQkxJU0giLCJVUExJTktfT0ZGTElORSIsIkNPTlRFTlRfTUlTTUFUQ0giLCJOT1RfRklMRV9VUExJTksiLCJNQVhfVVNFUlNfUkVBQ0hFRCIsIlZFUlNJT05fTk9UX0VYSVNUIiwiRklMRV9OT1RfRk9VTkQiLCJVTlNVUE9SVEVEX1JFR0lTVFJZX0NBTEwiLCJCQURfU1RBVFVTX0NPREUiLCJQQUNLQUdFX0VYSVNUIiwiQkFEX0FVVEhfSEVBREVSIiwiV0VCX0RJU0FCTEVEIiwiREVQUkVDQVRFRF9CQVNJQ19IRUFERVIiLCJCQURfRk9STUFUX1VTRVJfR1JPVVAiLCJSRVNPVVJDRV9VTkFWQUlMQUJMRSIsIkJBRF9QQUNLQUdFX0RBVEEiLCJVU0VSTkFNRV9QQVNTV09SRF9SRVFVSVJFRCIsIlVTRVJOQU1FX0FMUkVBRFlfUkVHSVNURVJFRCIsIkFQUF9FUlJPUiIsIkNPTkZJR19OT1RfVkFMSUQiLCJQUk9GSUxFX0VSUk9SIiwiUEFTU1dPUkRfVkFMSURBVElPTiIsIkRFRkFVTFRfTk9fUkVBRE1FIiwiTU9EVUxFX05PVF9GT1VORCIsIldFQl9USVRMRSIsIlBBQ0tBR0VfQUNDRVNTIiwiU0NPUEUiLCJTVE9SQUdFIiwiUEFDS0FHRV9GSUxFX05BTUUiLCJGSUxFX0VYSVNUX0VSUk9SIiwiTk9fU1VDSF9GSUxFX0VSUk9SIiwiREVGQVVMVF9SRVZJU0lPTiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY29uc3RhbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBERUZBVUxUX1BPUlQgPSAnNDg3Myc7XG5leHBvcnQgY29uc3QgREVGQVVMVF9QUk9UT0NPTCA9ICdodHRwJztcbmV4cG9ydCBjb25zdCBERUZBVUxUX0RPTUFJTiA9ICdsb2NhbGhvc3QnO1xuZXhwb3J0IGNvbnN0IFRJTUVfRVhQSVJBVElPTl8yNEggPSAnMjRoJztcbmV4cG9ydCBjb25zdCBUSU1FX0VYUElSQVRJT05fMUggPSAnMWgnO1xuZXhwb3J0IGNvbnN0IERJU1RfVEFHUyA9ICdkaXN0LXRhZ3MnO1xuZXhwb3J0IGNvbnN0IExBVEVTVCA9ICdsYXRlc3QnO1xuZXhwb3J0IGNvbnN0IFVTRVJTID0gJ3VzZXJzJztcbmV4cG9ydCBjb25zdCBERUZBVUxUX01JTl9MSU1JVF9QQVNTV09SRCA9IDM7XG5leHBvcnQgY29uc3QgREVGQVVMVF9VU0VSID0gJ0Fub255bW91cyc7XG5cbmV4cG9ydCBjb25zdCBrZXlQZW0gPSAndmVyZGFjY2lvLWtleS5wZW0nO1xuZXhwb3J0IGNvbnN0IGNlcnRQZW0gPSAndmVyZGFjY2lvLWNlcnQucGVtJztcbmV4cG9ydCBjb25zdCBjc3JQZW0gPSAndmVyZGFjY2lvLWNzci5wZW0nO1xuXG5leHBvcnQgY29uc3QgSEVBREVSUyA9IHtcbiAgQUNDRVBUOiAnQWNjZXB0JyxcbiAgQUNDRVBUX0VOQ09ESU5HOiAnQWNjZXB0LUVuY29kaW5nJyxcbiAgVVNFUl9BR0VOVDogJ1VzZXItQWdlbnQnLFxuICBKU09OOiAnYXBwbGljYXRpb24vanNvbicsXG4gIENPTlRFTlRfVFlQRTogJ0NvbnRlbnQtdHlwZScsXG4gIENPTlRFTlRfTEVOR1RIOiAnY29udGVudC1sZW5ndGgnLFxuICBDQUNIRV9DT05UUk9MOiAnQ2FjaGUtQ29udHJvbCcsXG4gIFRFWFRfUExBSU46ICd0ZXh0L3BsYWluJyxcbiAgVEVYVF9IVE1MOiAndGV4dC9odG1sJyxcbiAgQVVUSE9SSVpBVElPTjogJ2F1dGhvcml6YXRpb24nLFxuICBGT1JXQVJERURfUFJPVE86ICdYLUZvcndhcmRlZC1Qcm90bycsXG4gIEZSQU1FU19PUFRJT05TOiAnWC1GcmFtZS1PcHRpb25zJyxcbiAgQ1NQOiAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3knLFxuICBDVE86ICdYLUNvbnRlbnQtVHlwZS1PcHRpb25zJyxcbiAgWFNTOiAnWC1YU1MtUHJvdGVjdGlvbicsXG4gIEVUQUc6ICdFVGFnJyxcbiAgSlNPTl9DSEFSU0VUOiAnYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCcsXG4gIE9DVEVUX1NUUkVBTTogJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTsgY2hhcnNldD11dGYtOCcsXG4gIFRFWFRfQ0hBUlNFVDogJ3RleHQvcGxhaW47IGNoYXJzZXQ9dXRmLTgnLFxuICBXV1dfQVVUSDogJ1dXVy1BdXRoZW50aWNhdGUnLFxuICBHWklQOiAnZ3ppcCcsXG59O1xuXG5leHBvcnQgY29uc3QgQ0hBUkFDVEVSX0VOQ09ESU5HID0ge1xuICBVVEY4OiAndXRmOCcsXG59O1xuXG5leHBvcnQgY29uc3QgSEVBREVSX1RZUEUgPSB7XG4gIENPTlRFTlRfRU5DT0RJTkc6ICdjb250ZW50LWVuY29kaW5nJyxcbiAgQ09OVEVOVF9UWVBFOiAnY29udGVudC10eXBlJyxcbiAgQ09OVEVOVF9MRU5HVEg6ICdjb250ZW50LWxlbmd0aCcsXG4gIEFDQ0VQVF9FTkNPRElORzogJ2FjY2VwdC1lbmNvZGluZycsXG59O1xuXG5leHBvcnQgY29uc3QgRVJST1JfQ09ERSA9IHtcbiAgdG9rZW5fcmVxdWlyZWQ6ICd0b2tlbiBpcyByZXF1aXJlZCcsXG59O1xuXG5leHBvcnQgY29uc3QgVE9LRU5fQkFTSUMgPSAnQmFzaWMnO1xuZXhwb3J0IGNvbnN0IFRPS0VOX0JFQVJFUiA9ICdCZWFyZXInO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUkVHSVNUUlkgPSAnaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfVVBMSU5LID0gJ25wbWpzJztcblxuZXhwb3J0IGNvbnN0IFJPTEVTID0ge1xuICAkQUxMOiAnJGFsbCcsXG4gIEFMTDogJ2FsbCcsXG4gICRBVVRIOiAnJGF1dGhlbnRpY2F0ZWQnLFxuICAkQU5PTllNT1VTOiAnJGFub255bW91cycsXG4gIERFUFJFQ0FURURfQUxMOiAnQGFsbCcsXG4gIERFUFJFQ0FURURfQVVUSDogJ0BhdXRoZW50aWNhdGVkJyxcbiAgREVQUkVDQVRFRF9BTk9OWU1PVVM6ICdAYW5vbnltb3VzJyxcbn07XG5cbmV4cG9ydCBjb25zdCBIVFRQX1NUQVRVUyA9IHtcbiAgT0s6IDIwMCxcbiAgQ1JFQVRFRDogMjAxLFxuICBNVUxUSVBMRV9DSE9JQ0VTOiAzMDAsXG4gIFJFRElSRUNUOiAzMDIsXG4gIE5PVF9NT0RJRklFRDogMzA0LFxuICBCQURfUkVRVUVTVDogNDAwLFxuICBVTkFVVEhPUklaRUQ6IDQwMSxcbiAgRk9SQklEREVOOiA0MDMsXG4gIE5PVF9GT1VORDogNDA0LFxuICBDT05GTElDVDogNDA5LFxuICBVTlNVUFBPUlRFRF9NRURJQTogNDE1LFxuICBCQURfREFUQTogNDIyLFxuICBJTlRFUk5BTF9FUlJPUjogNTAwLFxuICBOT1RfSU1QTEVNRU5URUQ6IDUwMSxcbiAgU0VSVklDRV9VTkFWQUlMQUJMRTogNTAzLFxuICBMT09QX0RFVEVDVEVEOiA1MDgsXG59O1xuXG5leHBvcnQgY29uc3QgQVBJX01FU1NBR0UgPSB7XG4gIFBLR19DUkVBVEVEOiAnY3JlYXRlZCBuZXcgcGFja2FnZScsXG4gIFBLR19DSEFOR0VEOiAncGFja2FnZSBjaGFuZ2VkJyxcbiAgUEtHX1JFTU9WRUQ6ICdwYWNrYWdlIHJlbW92ZWQnLFxuICBQS0dfUFVCTElTSEVEOiAncGFja2FnZSBwdWJsaXNoZWQnLFxuICBUQVJCQUxMX1VQTE9BREVEOiAndGFyYmFsbCB1cGxvYWRlZCBzdWNjZXNzZnVsbHknLFxuICBUQVJCQUxMX1JFTU9WRUQ6ICd0YXJiYWxsIHJlbW92ZWQnLFxuICBUQUdfVVBEQVRFRDogJ3RhZ3MgdXBkYXRlZCcsXG4gIFRBR19SRU1PVkVEOiAndGFnIHJlbW92ZWQnLFxuICBUQUdfQURERUQ6ICdwYWNrYWdlIHRhZ2dlZCcsXG4gIExPR0dFRF9PVVQ6ICdMb2dnZWQgb3V0Jyxcbn07XG5cbmV4cG9ydCBjb25zdCBTVVBQT1JUX0VSUk9SUyA9IHtcbiAgUExVR0lOX01JU1NJTkdfSU5URVJGQUNFOiAndGhlIHBsdWdpbiBkb2VzIG5vdCBwcm92aWRlIGltcGxlbWVudGF0aW9uIG9mIHRoZSByZXF1ZXN0ZWQgZmVhdHVyZScsXG4gIFRGQV9ESVNBQkxFRDogJ3RoZSB0d28tZmFjdG9yIGF1dGhlbnRpY2F0aW9uIGlzIG5vdCB5ZXQgc3VwcG9ydGVkJyxcbiAgU1RPUkFHRV9OT1RfSU1QTEVNRU5UOiAndGhlIHN0b3JhZ2UgZG9lcyBub3Qgc3VwcG9ydCB0b2tlbiBzYXZpbmcnLFxuICBQQVJBTUVURVJTX05PVF9WQUxJRDogJ3RoZSBwYXJhbWV0ZXJzIGFyZSBub3QgdmFsaWQnLFxufTtcblxuZXhwb3J0IGNvbnN0IEFQSV9FUlJPUiA9IHtcbiAgUEFTU1dPUkRfU0hPUlQ6IChwYXNzTGVuZ3RoOiBudW1iZXIgPSBERUZBVUxUX01JTl9MSU1JVF9QQVNTV09SRCkgPT4gYFRoZSBwcm92aWRlZCBwYXNzd29yZCBpcyB0b28gc2hvcnQuIFBsZWFzZSBwaWNrIGEgcGFzc3dvcmQgbG9uZ2VyIHRoYW4gJHtwYXNzTGVuZ3RofSBjaGFyYWN0ZXJzLmAsXG4gIE1VU1RfQkVfTE9HR0VEOiAnWW91IG11c3QgYmUgbG9nZ2VkIGluIHRvIHB1Ymxpc2ggcGFja2FnZXMuJyxcbiAgUExVR0lOX0VSUk9SOiAnYnVnIGluIHRoZSBhdXRoIHBsdWdpbiBzeXN0ZW0nLFxuICBDT05GSUdfQkFEX0ZPUk1BVDogJ2NvbmZpZyBmaWxlIG11c3QgYmUgYW4gb2JqZWN0JyxcbiAgQkFEX1VTRVJOQU1FX1BBU1NXT1JEOiAnYmFkIHVzZXJuYW1lL3Bhc3N3b3JkLCBhY2Nlc3MgZGVuaWVkJyxcbiAgTk9fUEFDS0FHRTogJ25vIHN1Y2ggcGFja2FnZSBhdmFpbGFibGUnLFxuICBQQUNLQUdFX0NBTk5PVF9CRV9BRERFRDogJ3RoaXMgcGFja2FnZSBjYW5ub3QgYmUgYWRkZWQnLFxuICBCQURfREFUQTogJ2JhZCBkYXRhJyxcbiAgTk9UX0FMTE9XRUQ6ICdub3QgYWxsb3dlZCB0byBhY2Nlc3MgcGFja2FnZScsXG4gIE5PVF9BTExPV0VEX1BVQkxJU0g6ICdub3QgYWxsb3dlZCB0byBwdWJsaXNoIHBhY2thZ2UnLFxuICBJTlRFUk5BTF9TRVJWRVJfRVJST1I6ICdpbnRlcm5hbCBzZXJ2ZXIgZXJyb3InLFxuICBVTktOT1dOX0VSUk9SOiAndW5rbm93biBlcnJvcicsXG4gIE5PVF9QQUNLQUdFX1VQTElOSzogJ3BhY2thZ2UgZG9lcyBub3QgZXhpc3Qgb24gdXBsaW5rJyxcbiAgVVBMSU5LX09GRkxJTkVfUFVCTElTSDogJ29uZSBvZiB0aGUgdXBsaW5rcyBpcyBkb3duLCByZWZ1c2UgdG8gcHVibGlzaCcsXG4gIFVQTElOS19PRkZMSU5FOiAndXBsaW5rIGlzIG9mZmxpbmUnLFxuICBDT05URU5UX01JU01BVENIOiAnY29udGVudCBsZW5ndGggbWlzbWF0Y2gnLFxuICBOT1RfRklMRV9VUExJTks6IFwiZmlsZSBkb2Vzbid0IGV4aXN0IG9uIHVwbGlua1wiLFxuICBNQVhfVVNFUlNfUkVBQ0hFRDogJ21heGltdW0gYW1vdW50IG9mIHVzZXJzIHJlYWNoZWQnLFxuICBWRVJTSU9OX05PVF9FWElTVDogXCJ0aGlzIHZlcnNpb24gZG9lc24ndCBleGlzdFwiLFxuICBGSUxFX05PVF9GT1VORDogJ0ZpbGUgbm90IGZvdW5kJyxcbiAgVU5TVVBPUlRFRF9SRUdJU1RSWV9DQUxMOiAndW5zdXBwb3J0ZWQgcmVnaXN0cnkgY2FsbCcsXG4gIEJBRF9TVEFUVVNfQ09ERTogJ2JhZCBzdGF0dXMgY29kZScsXG4gIFBBQ0tBR0VfRVhJU1Q6ICd0aGlzIHBhY2thZ2UgaXMgYWxyZWFkeSBwcmVzZW50JyxcbiAgQkFEX0FVVEhfSEVBREVSOiAnYmFkIGF1dGhvcml6YXRpb24gaGVhZGVyJyxcbiAgV0VCX0RJU0FCTEVEOiAnV2ViIGludGVyZmFjZSBpcyBkaXNhYmxlZCBpbiB0aGUgY29uZmlnIGZpbGUnLFxuICBERVBSRUNBVEVEX0JBU0lDX0hFQURFUjogJ2Jhc2ljIGF1dGhlbnRpY2F0aW9uIGlzIGRlcHJlY2F0ZWQsIHBsZWFzZSB1c2UgSldUIGluc3RlYWQnLFxuICBCQURfRk9STUFUX1VTRVJfR1JPVVA6ICd1c2VyIGdyb3VwcyBpcyBkaWZmZXJlbnQgdGhhbiBhbiBhcnJheScsXG4gIFJFU09VUkNFX1VOQVZBSUxBQkxFOiAncmVzb3VyY2UgdW5hdmFpbGFibGUnLFxuICBCQURfUEFDS0FHRV9EQVRBOiAnYmFkIGluY29taW5nIHBhY2thZ2UgZGF0YScsXG4gIFVTRVJOQU1FX1BBU1NXT1JEX1JFUVVJUkVEOiAndXNlcm5hbWUgYW5kIHBhc3N3b3JkIGlzIHJlcXVpcmVkJyxcbiAgVVNFUk5BTUVfQUxSRUFEWV9SRUdJU1RFUkVEOiAndXNlcm5hbWUgaXMgYWxyZWFkeSByZWdpc3RlcmVkJyxcbn07XG5cbmV4cG9ydCBjb25zdCBBUFBfRVJST1IgPSB7XG4gIENPTkZJR19OT1RfVkFMSUQ6ICdDT05GSUc6IGl0IGRvZXMgbm90IGxvb2sgbGlrZSBhIHZhbGlkIGNvbmZpZyBmaWxlJyxcbiAgUFJPRklMRV9FUlJPUjogJ3Byb2ZpbGUgdW5leHBlY3RlZCBlcnJvcicsXG4gIFBBU1NXT1JEX1ZBTElEQVRJT046ICdub3QgdmFsaWQgcGFzc3dvcmQnLFxufTtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfTk9fUkVBRE1FID0gJ0VSUk9SOiBObyBSRUFETUUgZGF0YSBmb3VuZCEnO1xuZXhwb3J0IGNvbnN0IE1PRFVMRV9OT1RfRk9VTkQgPSAnTU9EVUxFX05PVF9GT1VORCc7XG5cbmV4cG9ydCBjb25zdCBXRUJfVElUTEUgPSAnVmVyZGFjY2lvJztcblxuZXhwb3J0IGNvbnN0IFBBQ0tBR0VfQUNDRVNTID0ge1xuICBTQ09QRTogJ0AqLyonLFxuICBBTEw6ICcqKicsXG59O1xuXG5leHBvcnQgY29uc3QgU1RPUkFHRSA9IHtcbiAgUEFDS0FHRV9GSUxFX05BTUU6ICdwYWNrYWdlLmpzb24nLFxuICBGSUxFX0VYSVNUX0VSUk9SOiAnRUVYSVNUUycsXG4gIE5PX1NVQ0hfRklMRV9FUlJPUjogJ0VOT0VOVCcsXG4gIERFRkFVTFRfUkVWSVNJT046ICcwLTAwMDAwMDAwMDAwMDAwMDAnLFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQU8sTUFBTUEsWUFBWSxHQUFHLE1BQXJCOztBQUNBLE1BQU1DLGdCQUFnQixHQUFHLE1BQXpCOztBQUNBLE1BQU1DLGNBQWMsR0FBRyxXQUF2Qjs7QUFDQSxNQUFNQyxtQkFBbUIsR0FBRyxLQUE1Qjs7QUFDQSxNQUFNQyxrQkFBa0IsR0FBRyxJQUEzQjs7QUFDQSxNQUFNQyxTQUFTLEdBQUcsV0FBbEI7O0FBQ0EsTUFBTUMsTUFBTSxHQUFHLFFBQWY7O0FBQ0EsTUFBTUMsS0FBSyxHQUFHLE9BQWQ7O0FBQ0EsTUFBTUMsMEJBQTBCLEdBQUcsQ0FBbkM7O0FBQ0EsTUFBTUMsWUFBWSxHQUFHLFdBQXJCOztBQUVBLE1BQU1DLE1BQU0sR0FBRyxtQkFBZjs7QUFDQSxNQUFN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
|
|
@@ -13,11 +13,6 @@ var _constants = require("./constants");
|
|
|
13
13
|
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
15
|
|
|
16
|
-
/**
|
|
17
|
-
* @prettier
|
|
18
|
-
* @flow
|
|
19
|
-
*/
|
|
20
|
-
|
|
21
16
|
/**
|
|
22
17
|
* Function gets a local info and an info from uplinks and tries to merge it
|
|
23
18
|
exported for unit tests only.
|
|
@@ -48,4 +43,4 @@ function mergeVersions(local, up) {
|
|
|
48
43
|
}
|
|
49
44
|
}
|
|
50
45
|
}
|
|
51
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtZXJnZVZlcnNpb25zIiwibG9jYWwiLCJ1cCIsImkiLCJ2ZXJzaW9ucyIsIl8iLCJpc05pbCIsIkRJU1RfVEFHUyIsInNlbXZlciIsImx0ZSIsInJlYWRtZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvbWV0YWRhdGEtdXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBzZW12ZXIgZnJvbSAnc2VtdmVyJztcblxuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gJ0B2ZXJkYWNjaW8vdHlwZXMnO1xuXG5pbXBvcnQgeyBESVNUX1RBR1MgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbi8qKlxuICogRnVuY3Rpb24gZ2V0cyBhIGxvY2FsIGluZm8gYW5kIGFuIGluZm8gZnJvbSB1cGxpbmtzIGFuZCB0cmllcyB0byBtZXJnZSBpdFxuIGV4cG9ydGVkIGZvciB1bml0IHRlc3RzIG9ubHkuXG4gICogQHBhcmFtIHsqfSBsb2NhbFxuICAqIEBwYXJhbSB7Kn0gdXBcbiAgKiBAcGFyYW0geyp9IGNvbmZpZ1xuICAqIEBzdGF0aWNcbiAgKi9cbmV4cG9ydCBmdW5jdGlvbiBtZXJnZVZlcnNpb25zKGxvY2FsOiBQYWNrYWdlLCB1cDogUGFja2FnZSkge1xuICAvLyBjb3B5IG5ldyB2ZXJzaW9ucyB0byBhIGNhY2hlXG4gIC8vIE5PVEU6IGlmIGEgY2VydGFpbiB2ZXJzaW9uIHdhcyB1cGRhdGVkLCB3ZSBjYW4ndCByZWZyZXNoIGl0IHJlbGlhYmx5XG4gIGZvciAoY29uc3QgaSBpbiB1cC52ZXJzaW9ucykge1xuICAgIGlmIChfLmlzTmlsKGxvY2FsLnZlcnNpb25zW2ldKSkge1xuICAgICAgbG9jYWwudmVyc2lvbnNbaV0gPSB1cC52ZXJzaW9uc1tpXTtcbiAgICB9XG4gIH1cblxuICBmb3IgKGNvbnN0IGkgaW4gdXBbRElTVF9UQUdTXSkge1xuICAgIGlmIChsb2NhbFtESVNUX1RBR1NdW2ldICE9PSB1cFtESVNUX1RBR1NdW2ldKSB7XG4gICAgICBpZiAoIWxvY2FsW0RJU1RfVEFHU11baV0gfHwgc2VtdmVyLmx0ZShsb2NhbFtESVNUX1RBR1NdW2ldLCB1cFtESVNUX1RBR1NdW2ldKSkge1xuICAgICAgICBsb2NhbFtESVNUX1RBR1NdW2ldID0gdXBbRElTVF9UQUdTXVtpXTtcbiAgICAgIH1cbiAgICAgIGlmIChpID09PSAnbGF0ZXN0JyAmJiBsb2NhbFtESVNUX1RBR1NdW2ldID09PSB1cFtESVNUX1RBR1NdW2ldKSB7XG4gICAgICAgIC8vIGlmIHJlbW90ZSBoYXMgbW9yZSBmcmVzaCBwYWNrYWdlLCB3ZSBzaG91bGQgYm9ycm93IGl0cyByZWFkbWVcbiAgICAgICAgbG9jYWwucmVhZG1lID0gdXAucmVhZG1lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7O0FBSUE7Ozs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sU0FBU0EsYUFBVCxDQUF1QkMsS0FBdkIsRUFBdUNDLEVBQXZDLEVBQW9EO0VBQ3pEO0VBQ0E7RUFDQSxLQUFLLE1BQU1DLENBQVgsSUFBZ0JELEVBQUUsQ0FBQ0UsUUFBbkIsRUFBNkI7SUFDM0IsSUFBSUMsZUFBQSxDQUFFQyxLQUFGLENBQVFMLEtBQUssQ0FBQ0csUUFBTixDQUFlRCxDQUFmLENBQVIsQ0FBSixFQUFnQztNQUM5QkYsS0FBSyxDQUFDRyxRQUFOLENBQWVELENBQWYsSUFBb0JELEVBQUUsQ0FBQ0UsUUFBSCxDQUFZRCxDQUFaLENBQXBCO0lBQ0Q7RUFDRjs7RUFFRCxLQUFLLE1BQU1BLENBQVgsSUFBZ0JELEVBQUUsQ0FBQ0ssb0JBQUQsQ0FBbEIsRUFBK0I7SUFDN0IsSUFBSU4sS0FBSyxDQUFDTSxvQkFBRCxDQUFMLENBQWlCSixDQUFqQixNQUF3QkQsRUFBRSxDQUFDSyxvQkFBRCxDQUFGLENBQWNKLENBQWQsQ0FBNUIsRUFBOEM7TUFDNUMsSUFBSSxDQUFDRixLQUFLLENBQUNNLG9CQUFELENBQUwsQ0FBaUJKLENBQWpCLENBQUQsSUFBd0JLLGVBQUEsQ0FBT0MsR0FBUCxDQUFXUixLQUFLLENBQUNNLG9CQUFELENBQUwsQ0FBaUJKLENBQWpCLENBQVgsRUFBZ0NELEVBQUUsQ0FBQ0ssb0JBQUQsQ0FBRixDQUFjSixDQUFkLENBQWhDLENBQTVCLEVBQStFO1FBQzdFRixLQUFLLENBQUNNLG9CQUFELENBQUwsQ0FBaUJKLENBQWpCLElBQXNCRCxFQUFFLENBQUNLLG9CQUFELENBQUYsQ0FBY0osQ0FBZCxDQUF0QjtNQUNEOztNQUNELElBQUlBLENBQUMsS0FBSyxRQUFOLElBQWtCRixLQUFLLENBQUNNLG9CQUFELENBQUwsQ0FBaUJKLENBQWpCLE1BQXdCRCxFQUFFLENBQUNLLG9CQUFELENBQUYsQ0FBY0osQ0FBZCxDQUE5QyxFQUFnRTtRQUM5RDtRQUNBRixLQUFLLENBQUNTLE1BQU4sR0FBZVIsRUFBRSxDQUFDUSxNQUFsQjtNQUNEO0lBQ0Y7RUFDRjtBQUNGIn0=
|
package/build/lib/storage.js
CHANGED
|
@@ -657,4 +657,4 @@ class Storage {
|
|
|
657
657
|
|
|
658
658
|
var _default = Storage;
|
|
659
659
|
exports.default = _default;
|
|
660
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTdG9yYWdlIiwiY29uc3RydWN0b3IiLCJjb25maWciLCJ1cGxpbmtzIiwic2V0dXBVcExpbmtzIiwibG9nZ2VyIiwiZmlsdGVycyIsImxvY2FsU3RvcmFnZSIsImluaXQiLCJMb2NhbFN0b3JhZ2UiLCJnZXRTZWNyZXQiLCJhZGRQYWNrYWdlIiwibmFtZSIsIm1ldGFkYXRhIiwiY2FsbGJhY2siLCJjaGVja1BhY2thZ2VMb2NhbCIsImNoZWNrUGFja2FnZVJlbW90ZSIsIl9pc0FsbG93UHVibGlzaE9mZmxpbmUiLCJfc3luY1VwbGlua3NNZXRhZGF0YSIsImJpbmQiLCJwdWJsaXNoUGFja2FnZSIsImVyciIsInB1Ymxpc2giLCJfIiwiaXNCb29sZWFuIiwiYWxsb3dfb2ZmbGluZSIsInJlYWRUb2tlbnMiLCJmaWx0ZXIiLCJzYXZlVG9rZW4iLCJ0b2tlbiIsImRlbGV0ZVRva2VuIiwidXNlciIsInRva2VuS2V5IiwiYWRkVmVyc2lvbiIsInZlcnNpb24iLCJ0YWciLCJtZXJnZVRhZ3MiLCJ0YWdIYXNoIiwiY2hhbmdlUGFja2FnZSIsInJldmlzaW9uIiwicmVtb3ZlUGFja2FnZSIsIlNlYXJjaCIsInJlbW92ZSIsInJlbW92ZVRhcmJhbGwiLCJmaWxlbmFtZSIsImFkZFRhcmJhbGwiLCJoYXNMb2NhbFRhcmJhbGwiLCJzZWxmIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJsb2NhbFN0cmVhbSIsImdldFRhcmJhbGwiLCJpc09wZW4iLCJvbiIsInN0YXR1cyIsIkhUVFBfU1RBVFVTIiwiTk9UX0ZPVU5EIiwiYWJvcnQiLCJyZWFkU3RyZWFtIiwiUmVhZFRhcmJhbGwiLCJlbWl0IiwiZXJyNDA0IiwiZ2V0UGFja2FnZU1ldGFkYXRhIiwiaW5mbyIsImlzTmlsIiwiX2Rpc3RmaWxlcyIsInNlcnZlRmlsZSIsInYiLCJwaXBlIiwiZmlsZSIsInVwbGluayIsInVwbGlua0lkIiwiaGFzUHJveHlUbyIsInBhY2thZ2VzIiwiUHJveHlTdG9yYWdlIiwidXJsIiwiY2FjaGUiLCJfYXV0b2dlbmVyYXRlZCIsInNhdmVzdHJlYW0iLCJvbl9vcGVuIiwicnN0cmVhbTIiLCJmZXRjaFRhcmJhbGwiLCJkb25lIiwid2FybiIsImZpbGVOYW1lIiwiZ2V0UGFja2FnZSIsIm9wdGlvbnMiLCJkYXRhIiwiSU5URVJOQUxfRVJST1IiLCJyZXEiLCJ1cGxpbmtzTG9vayIsImdldFBhY2thZ2VTeW5VcExpbmtzQ2FsbGJhY2siLCJyZXN1bHQiLCJ1cGxpbmtFcnJvcnMiLCJub3JtYWxpemVEaXN0VGFncyIsImNsZWFuVXBMaW5rc1JlZiIsImtlZXBVcExpbmtEYXRhIiwiX2F0dGFjaG1lbnRzIiwic2VhcmNoIiwic3RhcnRrZXkiLCJzZWFyY2hTdHJlYW0iLCJTdHJlYW0iLCJQYXNzVGhyb3VnaCIsIm9iamVjdE1vZGUiLCJhc3luYyIsImVhY2hTZXJpZXMiLCJPYmplY3QiLCJrZXlzIiwidXBfbmFtZSIsImNiIiwicXVlcnkiLCJsb2NhbCIsInVuZGVmaW5lZCIsInVwbGlua1N0cmVhbSIsImVuZCIsImVycm9yIiwibG9jYWxTZWFyY2hTdHJlYW0iLCJnZXRMb2NhbERhdGFiYXNlIiwic3RvcmFnZVBsdWdpbiIsImdldCIsImxvY2FscyIsIml0ZW1Qa2ciLCJwa2dNZXRhZGF0YSIsImxhdGVzdCIsIkRJU1RfVEFHUyIsInZlcnNpb25zIiwidGltZUxpc3QiLCJ0aW1lIiwidXNlcnMiLCJwdXNoIiwicGFja2FnZSIsImxlbmd0aCIsInBhY2thZ2VJbmZvIiwiZm91bmQiLCJ1cExpbmtzIiwiaGFzVG9Mb29rSW50b1VwbGlua3MiLCJnZW5lcmF0ZVBhY2thZ2VUZW1wbGF0ZSIsIm1hcCIsInVwTGluayIsIl9vcHRpb25zIiwiYXNzaWduIiwidXBMaW5rTWV0YSIsIl91cGxpbmtzIiwidXBuYW1lIiwiaXNPYmplY3QiLCJmZXRjaGVkIiwiRGF0ZSIsIm5vdyIsIm1heGFnZSIsImV0YWciLCJnZXRSZW1vdGVNZXRhZGF0YSIsInVwTGlua1Jlc3BvbnNlIiwiZVRhZyIsInJlbW90ZVN0YXR1cyIsIkVycm9yQ29kZSIsImdldEludGVybmFsRXJyb3IiLCJ2YWxpZGF0ZU1ldGFkYXRhIiwic3ViIiwibWVyZ2VVcGxpbmtUaW1lSW50b0xvY2FsIiwidXBkYXRlVmVyc2lvbnNIaWRkZW5VcExpbmsiLCJtZXJnZVZlcnNpb25zIiwidXBMaW5rc0Vycm9ycyIsImFzc2VydCIsIkFycmF5IiwiaXNBcnJheSIsInVwbGlua1RpbWVvdXRFcnJvciIsImkiLCJqIiwiY29kZSIsImdldFNlcnZpY2VVbmF2YWlsYWJsZSIsImdldE5vdEZvdW5kIiwiQVBJX0VSUk9SIiwiTk9fUEFDS0FHRSIsInVwZGF0ZVZlcnNpb25zIiwicGFja2FnZUpzb25Mb2NhbCIsImZpbHRlckVycm9ycyIsImZpbHRlcl9tZXRhZGF0YSIsImNvbmNhdCIsIl91cGRhdGVWZXJzaW9uc0hpZGRlblVwTGluayIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIlN5bWJvbCIsImZvciJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvc3RvcmFnZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgYXN5bmMsIHsgQXN5bmNSZXN1bHRBcnJheUNhbGxiYWNrIH0gZnJvbSAnYXN5bmMnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBTdHJlYW0gZnJvbSAnc3RyZWFtJztcblxuaW1wb3J0IHsgVmVyZGFjY2lvRXJyb3IgfSBmcm9tICdAdmVyZGFjY2lvL2NvbW1vbnMtYXBpJztcbmltcG9ydCB7IFJlYWRUYXJiYWxsIH0gZnJvbSAnQHZlcmRhY2Npby9zdHJlYW1zJztcbmltcG9ydCB7IEdlbmVyaWNCb2R5LCBUb2tlbiwgVG9rZW5GaWx0ZXIgfSBmcm9tICdAdmVyZGFjY2lvL3R5cGVzJztcbmltcG9ydCB7IENhbGxiYWNrLCBDb25maWcsIERpc3RGaWxlLCBJUmVhZFRhcmJhbGwsIElVcGxvYWRUYXJiYWxsLCBMb2dnZXIsIE1lcmdlVGFncywgUGFja2FnZSwgVmVyc2lvbiwgVmVyc2lvbnMgfSBmcm9tICdAdmVyZGFjY2lvL3R5cGVzJztcblxuaW1wb3J0IHsgSUdldFBhY2thZ2VPcHRpb25zLCBJUGx1Z2luRmlsdGVycywgSVByb3h5LCBJU3RvcmFnZSwgSVN0b3JhZ2VIYW5kbGVyLCBJU3luY1VwbGlua3MsIFByb3h5TGlzdCwgU3RyaW5nVmFsdWUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICcuLi9saWIvbG9nZ2VyJztcbmltcG9ydCB7IGhhc1Byb3h5VG8gfSBmcm9tICcuL2NvbmZpZy11dGlscyc7XG5pbXBvcnQgeyBBUElfRVJST1IsIERJU1RfVEFHUywgSFRUUF9TVEFUVVMgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgTG9jYWxTdG9yYWdlIGZyb20gJy4vbG9jYWwtc3RvcmFnZSc7XG5pbXBvcnQgeyBtZXJnZVZlcnNpb25zIH0gZnJvbSAnLi9tZXRhZGF0YS11dGlscyc7XG5pbXBvcnQgU2VhcmNoIGZyb20gJy4vc2VhcmNoJztcbmltcG9ydCB7IGNoZWNrUGFja2FnZUxvY2FsLCBjaGVja1BhY2thZ2VSZW1vdGUsIGNsZWFuVXBMaW5rc1JlZiwgZ2VuZXJhdGVQYWNrYWdlVGVtcGxhdGUsIG1lcmdlVXBsaW5rVGltZUludG9Mb2NhbCwgcHVibGlzaFBhY2thZ2UgfSBmcm9tICcuL3N0b3JhZ2UtdXRpbHMnO1xuaW1wb3J0IFByb3h5U3RvcmFnZSBmcm9tICcuL3VwLXN0b3JhZ2UnO1xuaW1wb3J0IHsgc2V0dXBVcExpbmtzLCB1cGRhdGVWZXJzaW9uc0hpZGRlblVwTGluayB9IGZyb20gJy4vdXBsaW5rLXV0aWwnO1xuaW1wb3J0IHsgRXJyb3JDb2RlLCBpc09iamVjdCwgbm9ybWFsaXplRGlzdFRhZ3MsIHZhbGlkYXRlTWV0YWRhdGEgfSBmcm9tICcuL3V0aWxzJztcblxuY2xhc3MgU3RvcmFnZSBpbXBsZW1lbnRzIElTdG9yYWdlSGFuZGxlciB7XG4gIHB1YmxpYyBsb2NhbFN0b3JhZ2U6IElTdG9yYWdlO1xuICBwdWJsaWMgY29uZmlnOiBDb25maWc7XG4gIHB1YmxpYyBsb2dnZXI6IExvZ2dlcjtcbiAgcHVibGljIHVwbGlua3M6IFByb3h5TGlzdDtcbiAgcHVibGljIGZpbHRlcnM6IElQbHVnaW5GaWx0ZXJzO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb25maWc6IENvbmZpZykge1xuICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuICAgIHRoaXMudXBsaW5rcyA9IHNldHVwVXBMaW5rcyhjb25maWcpO1xuICAgIHRoaXMubG9nZ2VyID0gbG9nZ2VyO1xuICAgIHRoaXMuZmlsdGVycyA9IFtdO1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICB0aGlzLmxvY2FsU3RvcmFnZSA9IG51bGw7XG4gIH1cblxuICBwdWJsaWMgaW5pdChjb25maWc6IENvbmZpZywgZmlsdGVyczogSVBsdWdpbkZpbHRlcnMgPSBbXSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgdGhpcy5maWx0ZXJzID0gZmlsdGVycztcbiAgICB0aGlzLmxvY2FsU3RvcmFnZSA9IG5ldyBMb2NhbFN0b3JhZ2UodGhpcy5jb25maWcsIGxvZ2dlcik7XG5cbiAgICByZXR1cm4gdGhpcy5sb2NhbFN0b3JhZ2UuZ2V0U2VjcmV0KGNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogIEFkZCBhIHtuYW1lfSBwYWNrYWdlIHRvIGEgc3lzdGVtXG4gICBGdW5jdGlvbiBjaGVja3MgaWYgcGFja2FnZSB3aXRoIHRoZSBzYW1lIG5hbWUgaXMgYXZhaWxhYmxlIGZyb20gdXBsaW5rcy5cbiAgIElmIGl0IGlzbid0LCB3ZSBjcmVhdGUgcGFja2FnZSBsb2NhbGx5XG4gICBVc2VkIHN0b3JhZ2VzOiBsb2NhbCAod3JpdGUpICYmIHVwbGlua3NcbiAgICovXG4gIHB1YmxpYyBhc3luYyBhZGRQYWNrYWdlKG5hbWU6IHN0cmluZywgbWV0YWRhdGE6IGFueSwgY2FsbGJhY2s6IEZ1bmN0aW9uKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGNoZWNrUGFja2FnZUxvY2FsKG5hbWUsIHRoaXMubG9jYWxTdG9yYWdlKTtcbiAgICAgIGF3YWl0IGNoZWNrUGFja2FnZVJlbW90ZShuYW1lLCB0aGlzLl9pc0FsbG93UHVibGlzaE9mZmxpbmUoKSwgdGhpcy5fc3luY1VwbGlua3NNZXRhZGF0YS5iaW5kKHRoaXMpKTtcbiAgICAgIGF3YWl0IHB1Ymxpc2hQYWNrYWdlKG5hbWUsIG1ldGFkYXRhLCB0aGlzLmxvY2FsU3RvcmFnZSBhcyBJU3RvcmFnZSk7XG4gICAgICBjYWxsYmFjaygpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY2FsbGJhY2soZXJyKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc0FsbG93UHVibGlzaE9mZmxpbmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiB0aGlzLmNvbmZpZy5wdWJsaXNoICE9PSAndW5kZWZpbmVkJyAmJiBfLmlzQm9vbGVhbih0aGlzLmNvbmZpZy5wdWJsaXNoLmFsbG93X29mZmxpbmUpICYmIHRoaXMuY29uZmlnLnB1Ymxpc2guYWxsb3dfb2ZmbGluZTtcbiAgfVxuXG4gIHB1YmxpYyByZWFkVG9rZW5zKGZpbHRlcjogVG9rZW5GaWx0ZXIpOiBQcm9taXNlPFRva2VuW10+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbFN0b3JhZ2UucmVhZFRva2VucyhmaWx0ZXIpO1xuICB9XG5cbiAgcHVibGljIHNhdmVUb2tlbih0b2tlbjogVG9rZW4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbFN0b3JhZ2Uuc2F2ZVRva2VuKHRva2VuKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGVUb2tlbih1c2VyOiBzdHJpbmcsIHRva2VuS2V5OiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmxvY2FsU3RvcmFnZS5kZWxldGVUb2tlbih1c2VyLCB0b2tlbktleSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgbmV3IHZlcnNpb24gb2YgcGFja2FnZSB7bmFtZX0gdG8gYSBzeXN0ZW1cbiAgIFVzZWQgc3RvcmFnZXM6IGxvY2FsICh3cml0ZSlcbiAgICovXG4gIHB1YmxpYyBhZGRWZXJzaW9uKG5hbWU6IHN0cmluZywgdmVyc2lvbjogc3RyaW5nLCBtZXRhZGF0YTogVmVyc2lvbiwgdGFnOiBTdHJpbmdWYWx1ZSwgY2FsbGJhY2s6IENhbGxiYWNrKTogdm9pZCB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2UuYWRkVmVyc2lvbihuYW1lLCB2ZXJzaW9uLCBtZXRhZGF0YSwgdGFnLCBjYWxsYmFjayk7XG4gIH1cblxuICAvKipcbiAgICogVGFncyBhIHBhY2thZ2UgdmVyc2lvbiB3aXRoIGEgcHJvdmlkZWQgdGFnXG4gICBVc2VkIHN0b3JhZ2VzOiBsb2NhbCAod3JpdGUpXG4gICAqL1xuICBwdWJsaWMgbWVyZ2VUYWdzKG5hbWU6IHN0cmluZywgdGFnSGFzaDogTWVyZ2VUYWdzLCBjYWxsYmFjazogQ2FsbGJhY2spOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5tZXJnZVRhZ3MobmFtZSwgdGFnSGFzaCwgY2FsbGJhY2spO1xuICB9XG5cbiAgLyoqXG4gICAqIENoYW5nZSBhbiBleGlzdGluZyBwYWNrYWdlIChpLmUuIHVucHVibGlzaCBvbmUgdmVyc2lvbilcbiAgIEZ1bmN0aW9uIGNoYW5nZXMgYSBwYWNrYWdlIGluZm8gZnJvbSBsb2NhbCBzdG9yYWdlIGFuZCBhbGwgdXBsaW5rcyB3aXRoIHdyaXRlIGFjY2Vzcy4vXG4gICBVc2VkIHN0b3JhZ2VzOiBsb2NhbCAod3JpdGUpXG4gICAqL1xuICBwdWJsaWMgY2hhbmdlUGFja2FnZShuYW1lOiBzdHJpbmcsIG1ldGFkYXRhOiBQYWNrYWdlLCByZXZpc2lvbjogc3RyaW5nLCBjYWxsYmFjazogQ2FsbGJhY2spOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5jaGFuZ2VQYWNrYWdlKG5hbWUsIG1ldGFkYXRhLCByZXZpc2lvbiwgY2FsbGJhY2spO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhIHBhY2thZ2UgZnJvbSBhIHN5c3RlbVxuICAgRnVuY3Rpb24gcmVtb3ZlcyBhIHBhY2thZ2UgZnJvbSBsb2NhbCBzdG9yYWdlXG4gICBVc2VkIHN0b3JhZ2VzOiBsb2NhbCAod3JpdGUpXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlUGFja2FnZShuYW1lOiBzdHJpbmcsIGNhbGxiYWNrOiBDYWxsYmFjayk6IHZvaWQge1xuICAgIHRoaXMubG9jYWxTdG9yYWdlLnJlbW92ZVBhY2thZ2UobmFtZSwgY2FsbGJhY2spO1xuICAgIC8vIHVwZGF0ZSB0aGUgaW5kZXhlclxuICAgIFNlYXJjaC5yZW1vdmUobmFtZSk7XG4gIH1cblxuICAvKipcbiAgIFJlbW92ZSBhIHRhcmJhbGwgZnJvbSBhIHN5c3RlbVxuICAgRnVuY3Rpb24gcmVtb3ZlcyBhIHRhcmJhbGwgZnJvbSBsb2NhbCBzdG9yYWdlLlxuICAgVGFyYmFsbCBpbiBxdWVzdGlvbiBzaG91bGQgbm90IGJlIGxpbmtlZCB0byBpbiBhbnkgZXhpc3RpbmdcbiAgIHZlcnNpb25zLCBpLmUuIHBhY2thZ2UgdmVyc2lvbiBzaG91bGQgYmUgdW5wdWJsaXNoZWQgZmlyc3QuXG4gICBVc2VkIHN0b3JhZ2U6IGxvY2FsICh3cml0ZSlcbiAgICovXG4gIHB1YmxpYyByZW1vdmVUYXJiYWxsKG5hbWU6IHN0cmluZywgZmlsZW5hbWU6IHN0cmluZywgcmV2aXNpb246IHN0cmluZywgY2FsbGJhY2s6IENhbGxiYWNrKTogdm9pZCB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlVGFyYmFsbChuYW1lLCBmaWxlbmFtZSwgcmV2aXNpb24sIGNhbGxiYWNrKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGxvYWQgYSB0YXJiYWxsIGZvciB7bmFtZX0gcGFja2FnZVxuICAgRnVuY3Rpb24gaXMgc3luY2hyb25vdXMgYW5kIHJldHVybnMgYSBXcml0YWJsZVN0cmVhbVxuICAgVXNlZCBzdG9yYWdlczogbG9jYWwgKHdyaXRlKVxuICAgKi9cbiAgcHVibGljIGFkZFRhcmJhbGwobmFtZTogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nKTogSVVwbG9hZFRhcmJhbGwge1xuICAgIHJldHVybiB0aGlzLmxvY2FsU3RvcmFnZS5hZGRUYXJiYWxsKG5hbWUsIGZpbGVuYW1lKTtcbiAgfVxuXG4gIHB1YmxpYyBoYXNMb2NhbFRhcmJhbGwobmFtZTogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPGJvb2xlYW4+KChyZXNvbHZlLCByZWplY3QpOiB2b2lkID0+IHtcbiAgICAgIGxldCBsb2NhbFN0cmVhbTogYW55ID0gc2VsZi5sb2NhbFN0b3JhZ2UuZ2V0VGFyYmFsbChuYW1lLCBmaWxlbmFtZSk7XG4gICAgICBsZXQgaXNPcGVuID0gZmFsc2U7XG4gICAgICBsb2NhbFN0cmVhbS5vbignZXJyb3InLCAoZXJyKTogYW55ID0+IHtcbiAgICAgICAgaWYgKGlzT3BlbiB8fCBlcnIuc3RhdHVzICE9PSBIVFRQX1NUQVRVUy5OT1RfRk9VTkQpIHtcbiAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBsb2NhbCByZXBvcnRlZCA0MDQgb3IgcmVxdWVzdCB3YXMgYWJvcnRlZCBhbHJlYWR5XG4gICAgICAgIGlmIChsb2NhbFN0cmVhbSkge1xuICAgICAgICAgIGxvY2FsU3RyZWFtLmFib3J0KCk7XG4gICAgICAgICAgbG9jYWxTdHJlYW0gPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUoZmFsc2UpO1xuICAgICAgfSk7XG4gICAgICBsb2NhbFN0cmVhbS5vbignb3BlbicsIGZ1bmN0aW9uICgpOiB2b2lkIHtcbiAgICAgICAgaXNPcGVuID0gdHJ1ZTtcbiAgICAgICAgbG9jYWxTdHJlYW0uYWJvcnQoKTtcbiAgICAgICAgbG9jYWxTdHJlYW0gPSBudWxsO1xuICAgICAgICByZXNvbHZlKHRydWUpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgIEdldCBhIHRhcmJhbGwgZnJvbSBhIHN0b3JhZ2UgZm9yIHtuYW1lfSBwYWNrYWdlXG4gICBGdW5jdGlvbiBpcyBzeW5jaHJvbm91cyBhbmQgcmV0dXJucyBhIFJlYWRhYmxlU3RyZWFtXG4gICBGdW5jdGlvbiB0cmllcyB0byByZWFkIHRhcmJhbGwgbG9jYWxseSwgaWYgaXQgZmFpbHMgdGhlbiBpdCByZWFkcyBwYWNrYWdlXG4gICBpbmZvcm1hdGlvbiBpbiBvcmRlciB0byBmaWd1cmUgb3V0IHdoZXJlIHdlIGNhbiBnZXQgdGhpcyB0YXJiYWxsIGZyb21cbiAgIFVzZWQgc3RvcmFnZXM6IGxvY2FsIHx8IHVwbGluayAoanVzdCBvbmUpXG4gICAqL1xuICBwdWJsaWMgZ2V0VGFyYmFsbChuYW1lOiBzdHJpbmcsIGZpbGVuYW1lOiBzdHJpbmcpOiBJUmVhZFRhcmJhbGwge1xuICAgIGNvbnN0IHJlYWRTdHJlYW0gPSBuZXcgUmVhZFRhcmJhbGwoe30pO1xuICAgIHJlYWRTdHJlYW0uYWJvcnQgPSBmdW5jdGlvbiAoKSB7fTtcblxuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuXG4gICAgLy8gaWYgc29tZW9uZSByZXF1ZXN0aW5nIHRhcmJhbGwsIGl0IG1lYW5zIHRoYXQgd2Ugc2hvdWxkIGFscmVhZHkgaGF2ZSBzb21lXG4gICAgLy8gaW5mb3JtYXRpb24gYWJvdXQgaXQsIHNvIGZldGNoaW5nIHBhY2thZ2UgaW5mbyBpcyB1bm5lY2Vzc2FyeVxuXG4gICAgLy8gdHJ5aW5nIGxvY2FsIGZpcnN0XG4gICAgLy8gZmxvdzogc2hvdWxkIGJlIElSZWFkVGFyYmFsbFxuICAgIGxldCBsb2NhbFN0cmVhbTogYW55ID0gc2VsZi5sb2NhbFN0b3JhZ2UuZ2V0VGFyYmFsbChuYW1lLCBmaWxlbmFtZSk7XG4gICAgbGV0IGlzT3BlbiA9IGZhbHNlO1xuICAgIGxvY2FsU3RyZWFtLm9uKCdlcnJvcicsIChlcnIpOiBhbnkgPT4ge1xuICAgICAgaWYgKGlzT3BlbiB8fCBlcnIuc3RhdHVzICE9PSBIVFRQX1NUQVRVUy5OT1RfRk9VTkQpIHtcbiAgICAgICAgcmV0dXJuIHJlYWRTdHJlYW0uZW1pdCgnZXJyb3InLCBlcnIpO1xuICAgICAgfVxuXG4gICAgICAvLyBsb2NhbCByZXBvcnRlZCA0MDRcbiAgICAgIGNvbnN0IGVycjQwNCA9IGVycjtcbiAgICAgIGxvY2FsU3RyZWFtLmFib3J0KCk7XG4gICAgICBsb2NhbFN0cmVhbSA9IG51bGw7IC8vIHdlIGZvcmNlIGZvciBnYXJiYWdlIGNvbGxlY3RvclxuICAgICAgc2VsZi5sb2NhbFN0b3JhZ2UuZ2V0UGFja2FnZU1ldGFkYXRhKG5hbWUsIChlcnIsIGluZm86IFBhY2thZ2UpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKF8uaXNOaWwoZXJyKSAmJiBpbmZvLl9kaXN0ZmlsZXMgJiYgXy5pc05pbChpbmZvLl9kaXN0ZmlsZXNbZmlsZW5hbWVdKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAvLyBpbmZvcm1hdGlvbiBhYm91dCB0aGlzIGZpbGUgZXhpc3RzIGxvY2FsbHlcbiAgICAgICAgICBzZXJ2ZUZpbGUoaW5mby5fZGlzdGZpbGVzW2ZpbGVuYW1lXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gd2Uga25vdyBub3RoaW5nIGFib3V0IHRoaXMgZmlsZSwgdHJ5aW5nIHRvIGdldCBpbmZvcm1hdGlvbiBlbHNld2hlcmVcbiAgICAgICAgICBzZWxmLl9zeW5jVXBsaW5rc01ldGFkYXRhKG5hbWUsIGluZm8sIHt9LCAoZXJyLCBpbmZvOiBQYWNrYWdlKTogYW55ID0+IHtcbiAgICAgICAgICAgIGlmIChfLmlzTmlsKGVycikgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgIHJldHVybiByZWFkU3RyZWFtLmVtaXQoJ2Vycm9yJywgZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChfLmlzTmlsKGluZm8uX2Rpc3RmaWxlcykgfHwgXy5pc05pbChpbmZvLl9kaXN0ZmlsZXNbZmlsZW5hbWVdKSkge1xuICAgICAgICAgICAgICByZXR1cm4gcmVhZFN0cmVhbS5lbWl0KCdlcnJvcicsIGVycjQwNCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzZXJ2ZUZpbGUoaW5mby5fZGlzdGZpbGVzW2ZpbGVuYW1lXSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGxvY2FsU3RyZWFtLm9uKCdjb250ZW50LWxlbmd0aCcsIGZ1bmN0aW9uICh2KTogdm9pZCB7XG4gICAgICByZWFkU3RyZWFtLmVtaXQoJ2NvbnRlbnQtbGVuZ3RoJywgdik7XG4gICAgfSk7XG4gICAgbG9jYWxTdHJlYW0ub24oJ29wZW4nLCBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICBpc09wZW4gPSB0cnVlO1xuICAgICAgbG9jYWxTdHJlYW0ucGlwZShyZWFkU3RyZWFtKTtcbiAgICB9KTtcbiAgICByZXR1cm4gcmVhZFN0cmVhbTtcblxuICAgIC8qKlxuICAgICAqIEZldGNoIGFuZCBjYWNoZSBsb2NhbC9yZW1vdGUgcGFja2FnZXMuXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGZpbGUgZGVmaW5lIHRoZSBwYWNrYWdlIHNoYXBlXG4gICAgICovXG4gICAgZnVuY3Rpb24gc2VydmVGaWxlKGZpbGU6IERpc3RGaWxlKTogdm9pZCB7XG4gICAgICBsZXQgdXBsaW5rOiBhbnkgPSBudWxsO1xuXG4gICAgICBmb3IgKGNvbnN0IHVwbGlua0lkIGluIHNlbGYudXBsaW5rcykge1xuICAgICAgICBpZiAoaGFzUHJveHlUbyhuYW1lLCB1cGxpbmtJZCwgc2VsZi5jb25maWcucGFja2FnZXMpKSB7XG4gICAgICAgICAgdXBsaW5rID0gc2VsZi51cGxpbmtzW3VwbGlua0lkXTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodXBsaW5rID09IG51bGwpIHtcbiAgICAgICAgdXBsaW5rID0gbmV3IFByb3h5U3RvcmFnZShcbiAgICAgICAgICB7XG4gICAgICAgICAgICB1cmw6IGZpbGUudXJsLFxuICAgICAgICAgICAgY2FjaGU6IHRydWUsXG4gICAgICAgICAgICBfYXV0b2dlbmVyYXRlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNlbGYuY29uZmlnXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGxldCBzYXZlc3RyZWFtOiBJVXBsb2FkVGFyYmFsbCB8IG51bGwgPSBudWxsO1xuICAgICAgaWYgKHVwbGluay5jb25maWcuY2FjaGUpIHtcbiAgICAgICAgc2F2ZXN0cmVhbSA9IHNlbGYubG9jYWxTdG9yYWdlLmFkZFRhcmJhbGwobmFtZSwgZmlsZW5hbWUpO1xuICAgICAgfVxuXG4gICAgICBsZXQgb25fb3BlbiA9IGZ1bmN0aW9uICgpOiB2b2lkIHtcbiAgICAgICAgLy8gcHJldmVudCBpdCBmcm9tIGJlaW5nIGNhbGxlZCB0d2ljZVxuICAgICAgICBvbl9vcGVuID0gZnVuY3Rpb24gKCkge307XG4gICAgICAgIGNvbnN0IHJzdHJlYW0yID0gdXBsaW5rLmZldGNoVGFyYmFsbChmaWxlLnVybCk7XG4gICAgICAgIHJzdHJlYW0yLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIpOiB2b2lkIHtcbiAgICAgICAgICBpZiAoc2F2ZXN0cmVhbSkge1xuICAgICAgICAgICAgc2F2ZXN0cmVhbS5hYm9ydCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzYXZlc3RyZWFtID0gbnVsbDtcbiAgICAgICAgICByZWFkU3RyZWFtLmVtaXQoJ2Vycm9yJywgZXJyKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJzdHJlYW0yLm9uKCdlbmQnLCBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICAgICAgaWYgKHNhdmVzdHJlYW0pIHtcbiAgICAgICAgICAgIHNhdmVzdHJlYW0uZG9uZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcnN0cmVhbTIub24oJ2NvbnRlbnQtbGVuZ3RoJywgZnVuY3Rpb24gKHYpOiB2b2lkIHtcbiAgICAgICAgICByZWFkU3RyZWFtLmVtaXQoJ2NvbnRlbnQtbGVuZ3RoJywgdik7XG4gICAgICAgICAgaWYgKHNhdmVzdHJlYW0pIHtcbiAgICAgICAgICAgIHNhdmVzdHJlYW0uZW1pdCgnY29udGVudC1sZW5ndGgnLCB2KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByc3RyZWFtMi5waXBlKHJlYWRTdHJlYW0pO1xuICAgICAgICBpZiAoc2F2ZXN0cmVhbSkge1xuICAgICAgICAgIHJzdHJlYW0yLnBpcGUoc2F2ZXN0cmVhbSk7XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGlmIChzYXZlc3RyZWFtKSB7XG4gICAgICAgIHNhdmVzdHJlYW0ub24oJ29wZW4nLCBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICAgICAgb25fb3BlbigpO1xuICAgICAgICB9KTtcblxuICAgICAgICBzYXZlc3RyZWFtLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIpOiB2b2lkIHtcbiAgICAgICAgICBzZWxmLmxvZ2dlci53YXJuKHsgZXJyOiBlcnIsIGZpbGVOYW1lOiBmaWxlIH0sICdlcnJvciBzYXZpbmcgZmlsZSBAe2ZpbGVOYW1lfTogQHtlcnIubWVzc2FnZX1cXG5Ae2Vyci5zdGFja30nKTtcbiAgICAgICAgICBpZiAoc2F2ZXN0cmVhbSkge1xuICAgICAgICAgICAgc2F2ZXN0cmVhbS5hYm9ydCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzYXZlc3RyZWFtID0gbnVsbDtcbiAgICAgICAgICBvbl9vcGVuKCk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb25fb3BlbigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgUmV0cmlldmUgYSBwYWNrYWdlIG1ldGFkYXRhIGZvciB7bmFtZX0gcGFja2FnZVxuICAgRnVuY3Rpb24gaW52b2tlcyBsb2NhbFN0b3JhZ2UuZ2V0UGFja2FnZSBhbmQgdXBsaW5rLmdldF9wYWNrYWdlIGZvciBldmVyeVxuICAgdXBsaW5rIHdpdGggcHJveHlfYWNjZXNzIHJpZ2h0cyBhZ2FpbnN0IHtuYW1lfSBhbmQgY29tYmluZXMgcmVzdWx0c1xuICAgaW50byBvbmUganNvbiBvYmplY3RcbiAgIFVzZWQgc3RvcmFnZXM6IGxvY2FsICYmIHVwbGluayAocHJveHlfYWNjZXNzKVxuXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBvcHRpb25zXG4gICAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBvcHRpb25zLm5hbWUgUGFja2FnZSBOYW1lXG4gICAqIEBwcm9wZXJ0eSB7b2JqZWN0fSAgb3B0aW9ucy5yZXEgRXhwcmVzcyBgcmVxYCBvYmplY3RcbiAgICogQHByb3BlcnR5IHtib29sZWFufSBvcHRpb25zLmtlZXBVcExpbmtEYXRhIGtlZXAgdXAgbGluayBpbmZvIGluIHBhY2thZ2UgbWV0YSwgbGFzdCB1cGRhdGUsIGV0Yy5cbiAgICogQHByb3BlcnR5IHtmdW5jdGlvbn0gb3B0aW9ucy5jYWxsYmFjayBDYWxsYmFjayBmb3IgcmVjZWl2ZSBkYXRhXG4gICAqL1xuICBwdWJsaWMgZ2V0UGFja2FnZShvcHRpb25zOiBJR2V0UGFja2FnZU9wdGlvbnMpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5nZXRQYWNrYWdlTWV0YWRhdGEob3B0aW9ucy5uYW1lLCAoZXJyLCBkYXRhKTogdm9pZCA9PiB7XG4gICAgICBpZiAoZXJyICYmICghZXJyLnN0YXR1cyB8fCBlcnIuc3RhdHVzID49IEhUVFBfU1RBVFVTLklOVEVSTkFMX0VSUk9SKSkge1xuICAgICAgICAvLyByZXBvcnQgaW50ZXJuYWwgZXJyb3JzIHJpZ2h0IGF3YXlcbiAgICAgICAgcmV0dXJuIG9wdGlvbnMuY2FsbGJhY2soZXJyKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fc3luY1VwbGlua3NNZXRhZGF0YShcbiAgICAgICAgb3B0aW9ucy5uYW1lLFxuICAgICAgICBkYXRhLFxuICAgICAgICB7IHJlcTogb3B0aW9ucy5yZXEsIHVwbGlua3NMb29rOiBvcHRpb25zLnVwbGlua3NMb29rIH0sXG4gICAgICAgIGZ1bmN0aW9uIGdldFBhY2thZ2VTeW5VcExpbmtzQ2FsbGJhY2soZXJyLCByZXN1bHQ6IFBhY2thZ2UsIHVwbGlua0Vycm9ycyk6IHZvaWQge1xuICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgIHJldHVybiBvcHRpb25zLmNhbGxiYWNrKGVycik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbm9ybWFsaXplRGlzdFRhZ3MoY2xlYW5VcExpbmtzUmVmKG9wdGlvbnMua2VlcFVwTGlua0RhdGEsIHJlc3VsdCkpO1xuXG4gICAgICAgICAgLy8gbnBtIGNhbiB0aHJvdyBpZiB0aGlzIGZpZWxkIGRvZXNuJ3QgZXhpc3RcbiAgICAgICAgICByZXN1bHQuX2F0dGFjaG1lbnRzID0ge307XG5cbiAgICAgICAgICBvcHRpb25zLmNhbGxiYWNrKG51bGwsIHJlc3VsdCwgdXBsaW5rRXJyb3JzKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgUmV0cmlldmUgcmVtb3RlIGFuZCBsb2NhbCBwYWNrYWdlcyBtb3JlIHJlY2VudCB0aGFuIHtzdGFydGtleX1cbiAgIEZ1bmN0aW9uIHN0cmVhbXMgYWxsIHBhY2thZ2VzIGZyb20gYWxsIHVwbGlua3MgZmlyc3QsIGFuZCB0aGVuXG4gICBsb2NhbCBwYWNrYWdlcy5cbiAgIE5vdGUgdGhhdCBsb2NhbCBwYWNrYWdlcyBjb3VsZCBvdmVycmlkZSByZWdpc3RyeSBvbmVzIGp1c3QgYmVjYXVzZVxuICAgdGhleSBhcHBlYXIgaW4gSlNPTiBsYXN0LiBUaGF0J3MgYSB0cmFkZS1vZmYgd2UgbWFrZSB0byBhdm9pZFxuICAgbWVtb3J5IGlzc3Vlcy5cbiAgIFVzZWQgc3RvcmFnZXM6IGxvY2FsICYmIHVwbGluayAocHJveHlfYWNjZXNzKVxuICAgKiBAcGFyYW0geyp9IHN0YXJ0a2V5XG4gICAqIEBwYXJhbSB7Kn0gb3B0aW9uc1xuICAgKiBAcmV0dXJuIHtTdHJlYW19XG4gICAqL1xuICBwdWJsaWMgc2VhcmNoKHN0YXJ0a2V5OiBzdHJpbmcsIG9wdGlvbnM6IGFueSk6IElSZWFkVGFyYmFsbCB7XG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgY29uc3Qgc2VhcmNoU3RyZWFtOiBhbnkgPSBuZXcgU3RyZWFtLlBhc3NUaHJvdWdoKHsgb2JqZWN0TW9kZTogdHJ1ZSB9KTtcbiAgICBhc3luYy5lYWNoU2VyaWVzKFxuICAgICAgT2JqZWN0LmtleXModGhpcy51cGxpbmtzKSxcbiAgICAgIGZ1bmN0aW9uICh1cF9uYW1lLCBjYik6IHZvaWQge1xuICAgICAgICAvLyBzaG9ydGN1dDogaWYgYGxvY2FsPTFgIGlzIHN1cHBsaWVkLCBkb24ndCBjYWxsIHVwbGlua3NcbiAgICAgICAgaWYgKG9wdGlvbnMucmVxPy5xdWVyeT8ubG9jYWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiBjYigpO1xuICAgICAgICB9XG4gICAgICAgIGxvZ2dlci5pbmZvKGBzZWFyY2ggZm9yIHVwbGluayAke3VwX25hbWV9YCk7XG4gICAgICAgIC8vIHNlYXJjaCBieSBrZXl3b3JkIGZvciBlYWNoIHVwbGlua1xuICAgICAgICBjb25zdCB1cGxpbmtTdHJlYW06IElVcGxvYWRUYXJiYWxsID0gc2VsZi51cGxpbmtzW3VwX25hbWVdLnNlYXJjaChvcHRpb25zKTtcbiAgICAgICAgLy8gam9pbiB1cGxpbmsgc3RyZWFtIHdpdGggc3RyZWFtcyBQYXNzVGhyb3VnaFxuICAgICAgICB1cGxpbmtTdHJlYW0ucGlwZShzZWFyY2hTdHJlYW0sIHsgZW5kOiBmYWxzZSB9KTtcbiAgICAgICAgdXBsaW5rU3RyZWFtLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIpOiB2b2lkIHtcbiAgICAgICAgICBzZWxmLmxvZ2dlci5lcnJvcih7IGVycjogZXJyIH0sICd1cGxpbmsgZXJyb3I6IEB7ZXJyLm1lc3NhZ2V9Jyk7XG4gICAgICAgICAgY2IoKTtcbiAgICAgICAgICAvLyB0byBhdm9pZCBjYWxsIGNhbGxiYWNrIG1vcmUgdGhhbiBvbmNlXG4gICAgICAgICAgY2IgPSBmdW5jdGlvbiAoKTogdm9pZCB7fTtcbiAgICAgICAgfSk7XG4gICAgICAgIHVwbGlua1N0cmVhbS5vbignZW5kJywgZnVuY3Rpb24gKCk6IHZvaWQge1xuICAgICAgICAgIGNiKCk7XG4gICAgICAgICAgLy8gdG8gYXZvaWQgY2FsbCBjYWxsYmFjayBtb3JlIHRoYW4gb25jZVxuICAgICAgICAgIGNiID0gZnVuY3Rpb24gKCk6IHZvaWQge307XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHNlYXJjaFN0cmVhbS5hYm9ydCA9IGZ1bmN0aW9uICgpOiB2b2lkIHtcbiAgICAgICAgICBpZiAodXBsaW5rU3RyZWFtLmFib3J0KSB7XG4gICAgICAgICAgICB1cGxpbmtTdHJlYW0uYWJvcnQoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY2IoKTtcbiAgICAgICAgICAvLyB0byBhdm9pZCBjYWxsIGNhbGxiYWNrIG1vcmUgdGhhbiBvbmNlXG4gICAgICAgICAgY2IgPSBmdW5jdGlvbiAoKTogdm9pZCB7fTtcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgICAvLyBleGVjdXRlZCBhZnRlciBhbGwgc2VyaWVzXG4gICAgICBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICAgIC8vIGF0dGFjaCBhIGxvY2FsIHNlYXJjaCByZXN1bHRzXG4gICAgICAgIGNvbnN0IGxvY2FsU2VhcmNoU3RyZWFtOiBJUmVhZFRhcmJhbGwgPSBzZWxmLmxvY2FsU3RvcmFnZS5zZWFyY2goc3RhcnRrZXksIG9wdGlvbnMpO1xuICAgICAgICBzZWFyY2hTdHJlYW0uYWJvcnQgPSBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICAgICAgbG9jYWxTZWFyY2hTdHJlYW0uYWJvcnQoKTtcbiAgICAgICAgfTtcbiAgICAgICAgbG9jYWxTZWFyY2hTdHJlYW0ucGlwZShzZWFyY2hTdHJlYW0sIHsgZW5kOiB0cnVlIH0pO1xuICAgICAgICBsb2NhbFNlYXJjaFN0cmVhbS5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyOiBWZXJkYWNjaW9FcnJvcik6IHZvaWQge1xuICAgICAgICAgIHNlbGYubG9nZ2VyLmVycm9yKHsgZXJyOiBlcnIgfSwgJ3NlYXJjaCBlcnJvcjogQHtlcnIubWVzc2FnZX0nKTtcbiAgICAgICAgICBzZWFyY2hTdHJlYW0uZW5kKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICk7XG5cbiAgICByZXR1cm4gc2VhcmNoU3RyZWFtO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIG9ubHkgcHJpdmF0ZSBsb2NhbCBwYWNrYWdlc1xuICAgKiBAcGFyYW0geyp9IGNhbGxiYWNrXG4gICAqL1xuICBwdWJsaWMgZ2V0TG9jYWxEYXRhYmFzZShjYWxsYmFjazogQ2FsbGJhY2spOiB2b2lkIHtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5zdG9yYWdlUGx1Z2luLmdldCgoZXJyLCBsb2NhbHMpOiB2b2lkID0+IHtcbiAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgY2FsbGJhY2soZXJyKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcGFja2FnZXM6IFZlcnNpb25bXSA9IFtdO1xuICAgICAgY29uc3QgZ2V0UGFja2FnZSA9IGZ1bmN0aW9uIChpdGVtUGtnKTogdm9pZCB7XG4gICAgICAgIHNlbGYubG9jYWxTdG9yYWdlLmdldFBhY2thZ2VNZXRhZGF0YShsb2NhbHNbaXRlbVBrZ10sIGZ1bmN0aW9uIChlcnIsIHBrZ01ldGFkYXRhOiBQYWNrYWdlKTogdm9pZCB7XG4gICAgICAgICAgaWYgKF8uaXNOaWwoZXJyKSkge1xuICAgICAgICAgICAgY29uc3QgbGF0ZXN0ID0gcGtnTWV0YWRhdGFbRElTVF9UQUdTXS5sYXRlc3Q7XG4gICAgICAgICAgICBpZiAobGF0ZXN0ICYmIHBrZ01ldGFkYXRhLnZlcnNpb25zW2xhdGVzdF0pIHtcbiAgICAgICAgICAgICAgY29uc3QgdmVyc2lvbjogVmVyc2lvbiA9IHBrZ01ldGFkYXRhLnZlcnNpb25zW2xhdGVzdF07XG4gICAgICAgICAgICAgIGNvbnN0IHRpbWVMaXN0ID0gcGtnTWV0YWRhdGEudGltZSBhcyBHZW5lcmljQm9keTtcbiAgICAgICAgICAgICAgY29uc3QgdGltZSA9IHRpbWVMaXN0W2xhdGVzdF07XG4gICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgdmVyc2lvbi50aW1lID0gdGltZTtcblxuICAgICAgICAgICAgICAvLyBBZGQgZm9yIHN0YXJzIGFwaVxuICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgIHZlcnNpb24udXNlcnMgPSBwa2dNZXRhZGF0YS51c2VycztcblxuICAgICAgICAgICAgICBwYWNrYWdlcy5wdXNoKHZlcnNpb24pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgc2VsZi5sb2dnZXIud2Fybih7IHBhY2thZ2U6IGxvY2Fsc1tpdGVtUGtnXSB9LCAncGFja2FnZSBAe3BhY2thZ2V9IGRvZXMgbm90IGhhdmUgYSBcImxhdGVzdFwiIHRhZz8nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoaXRlbVBrZyA+PSBsb2NhbHMubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgcGFja2FnZXMpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBnZXRQYWNrYWdlKGl0ZW1Qa2cgKyAxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfTtcblxuICAgICAgaWYgKGxvY2Fscy5sZW5ndGgpIHtcbiAgICAgICAgZ2V0UGFja2FnZSgwKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNhbGxiYWNrKG51bGwsIFtdKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGdW5jdGlvbiBmZXRjaGVzIHBhY2thZ2UgbWV0YWRhdGEgZnJvbSB1cGxpbmtzIGFuZCBzeW5jaHJvbml6ZXMgaXQgd2l0aCBsb2NhbCBkYXRhXG4gICBpZiBwYWNrYWdlIGlzIGF2YWlsYWJsZSBsb2NhbGx5LCBpdCBNVVNUIGJlIHByb3ZpZGVkIGluIHBrZ2luZm9cbiAgIHJldHVybnMgY2FsbGJhY2soZXJyLCByZXN1bHQsIHVwbGlua19lcnJvcnMpXG4gICAqL1xuICBwdWJsaWMgX3N5bmNVcGxpbmtzTWV0YWRhdGEobmFtZTogc3RyaW5nLCBwYWNrYWdlSW5mbzogUGFja2FnZSwgb3B0aW9uczogSVN5bmNVcGxpbmtzLCBjYWxsYmFjazogQ2FsbGJhY2spOiB2b2lkIHtcbiAgICBsZXQgZm91bmQgPSB0cnVlO1xuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgIGNvbnN0IHVwTGlua3M6IElQcm94eVtdID0gW107XG4gICAgY29uc3QgaGFzVG9Mb29rSW50b1VwbGlua3MgPSBfLmlzTmlsKG9wdGlvbnMudXBsaW5rc0xvb2spIHx8IG9wdGlvbnMudXBsaW5rc0xvb2s7XG5cbiAgICBpZiAoIXBhY2thZ2VJbmZvKSB7XG4gICAgICBmb3VuZCA9IGZhbHNlO1xuICAgICAgcGFja2FnZUluZm8gPSBnZW5lcmF0ZVBhY2thZ2VUZW1wbGF0ZShuYW1lKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IHVwbGluayBpbiB0aGlzLnVwbGlua3MpIHtcbiAgICAgIGlmIChoYXNQcm94eVRvKG5hbWUsIHVwbGluaywgdGhpcy5jb25maWcucGFja2FnZXMpICYmIGhhc1RvTG9va0ludG9VcGxpbmtzKSB7XG4gICAgICAgIHVwTGlua3MucHVzaCh0aGlzLnVwbGlua3NbdXBsaW5rXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMubWFwKFxuICAgICAgdXBMaW5rcyxcbiAgICAgICh1cExpbmssIGNiKTogdm9pZCA9PiB7XG4gICAgICAgIGNvbnN0IF9vcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucyk7XG4gICAgICAgIGNvbnN0IHVwTGlua01ldGEgPSBwYWNrYWdlSW5mby5fdXBsaW5rc1t1cExpbmsudXBuYW1lXTtcblxuICAgICAgICBpZiAoaXNPYmplY3QodXBMaW5rTWV0YSkpIHtcbiAgICAgICAgICBjb25zdCBmZXRjaGVkID0gdXBMaW5rTWV0YS5mZXRjaGVkO1xuXG4gICAgICAgICAgaWYgKGZldGNoZWQgJiYgRGF0ZS5ub3coKSAtIGZldGNoZWQgPCB1cExpbmsubWF4YWdlKSB7XG4gICAgICAgICAgICByZXR1cm4gY2IoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBfb3B0aW9ucy5ldGFnID0gdXBMaW5rTWV0YS5ldGFnO1xuICAgICAgICB9XG5cbiAgICAgICAgdXBMaW5rLmdldFJlbW90ZU1ldGFkYXRhKG5hbWUsIF9vcHRpb25zLCAoZXJyLCB1cExpbmtSZXNwb25zZSwgZVRhZyk6IHZvaWQgPT4ge1xuICAgICAgICAgIGlmIChlcnIgJiYgZXJyLnJlbW90ZVN0YXR1cyA9PT0gMzA0KSB7XG4gICAgICAgICAgICB1cExpbmtNZXRhLmZldGNoZWQgPSBEYXRlLm5vdygpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChlcnIgfHwgIXVwTGlua1Jlc3BvbnNlKSB7XG4gICAgICAgICAgICByZXR1cm4gY2IobnVsbCwgW2VyciB8fCBFcnJvckNvZGUuZ2V0SW50ZXJuYWxFcnJvcignbm8gZGF0YScpXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHZhbGlkYXRlTWV0YWRhdGEodXBMaW5rUmVzcG9uc2UsIG5hbWUpO1xuICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgc2VsZi5sb2dnZXIuZXJyb3IoXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzdWI6ICdvdXQnLFxuICAgICAgICAgICAgICAgIGVycjogZXJyLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAncGFja2FnZS5qc29uIHZhbGlkYXRpbmcgZXJyb3IgQHshZXJyLm1lc3NhZ2V9XFxuQHtlcnIuc3RhY2t9J1xuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHJldHVybiBjYihudWxsLCBbZXJyXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcGFja2FnZUluZm8uX3VwbGlua3NbdXBMaW5rLnVwbmFtZV0gPSB7XG4gICAgICAgICAgICBldGFnOiBlVGFnLFxuICAgICAgICAgICAgZmV0Y2hlZDogRGF0ZS5ub3coKSxcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgcGFja2FnZUluZm8udGltZSA9IG1lcmdlVXBsaW5rVGltZUludG9Mb2NhbChwYWNrYWdlSW5mbywgdXBMaW5rUmVzcG9uc2UpO1xuXG4gICAgICAgICAgdXBkYXRlVmVyc2lvbnNIaWRkZW5VcExpbmsodXBMaW5rUmVzcG9uc2UudmVyc2lvbnMsIHVwTGluayk7XG5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgbWVyZ2VWZXJzaW9ucyhwYWNrYWdlSW5mbywgdXBMaW5rUmVzcG9uc2UpO1xuICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgc2VsZi5sb2dnZXIuZXJyb3IoXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzdWI6ICdvdXQnLFxuICAgICAgICAgICAgICAgIGVycjogZXJyLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAncGFja2FnZS5qc29uIHBhcnNpbmcgZXJyb3IgQHshZXJyLm1lc3NhZ2V9XFxuQHtlcnIuc3RhY2t9J1xuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHJldHVybiBjYihudWxsLCBbZXJyXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gaWYgd2UgZ290IHRvIHRoaXMgcG9pbnQsIGFzc3VtZSB0aGF0IHRoZSBjb3JyZWN0IHBhY2thZ2UgZXhpc3RzXG4gICAgICAgICAgLy8gb24gdGhlIHVwbGlua1xuICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICBjYigpO1xuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAoZXJyOiBFcnJvciwgdXBMaW5rc0Vycm9yczogYW55KTogQXN5bmNSZXN1bHRBcnJheUNhbGxiYWNrPHVua25vd24sIEVycm9yPiA9PiB7XG4gICAgICAgIGFzc2VydCghZXJyICYmIEFycmF5LmlzQXJyYXkodXBMaW5rc0Vycm9ycykpO1xuXG4gICAgICAgIC8vIENoZWNrIGZvciBjb25uZWN0aW9uIHRpbWVvdXQgb3IgcmVzZXQgZXJyb3JzIHdpdGggdXBsaW5rKHMpXG4gICAgICAgIC8vICh0aGVzZSBzaG91bGQgYmUgaGFuZGxlZCBkaWZmZXJlbnRseSBmcm9tIHRoZSBwYWNrYWdlIG5vdCBiZWluZyBmb3VuZClcbiAgICAgICAgaWYgKCFmb3VuZCkge1xuICAgICAgICAgIGxldCB1cGxpbmtUaW1lb3V0RXJyb3I7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB1cExpbmtzRXJyb3JzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAodXBMaW5rc0Vycm9yc1tpXSkge1xuICAgICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHVwTGlua3NFcnJvcnNbaV0ubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICBpZiAodXBMaW5rc0Vycm9yc1tpXVtqXSkge1xuICAgICAgICAgICAgICAgICAgY29uc3QgY29kZSA9IHVwTGlua3NFcnJvcnNbaV1bal0uY29kZTtcbiAgICAgICAgICAgICAgICAgIGlmIChjb2RlID09PSAnRVRJTUVET1VUJyB8fCBjb2RlID09PSAnRVNPQ0tFVFRJTUVET1VUJyB8fCBjb2RlID09PSAnRUNPTk5SRVNFVCcpIHtcbiAgICAgICAgICAgICAgICAgICAgdXBsaW5rVGltZW91dEVycm9yID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHVwbGlua1RpbWVvdXRFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKEVycm9yQ29kZS5nZXRTZXJ2aWNlVW5hdmFpbGFibGUoKSwgbnVsbCwgdXBMaW5rc0Vycm9ycyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBjYWxsYmFjayhFcnJvckNvZGUuZ2V0Tm90Rm91bmQoQVBJX0VSUk9SLk5PX1BBQ0tBR0UpLCBudWxsLCB1cExpbmtzRXJyb3JzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh1cExpbmtzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIHJldHVybiBjYWxsYmFjayhudWxsLCBwYWNrYWdlSW5mbyk7XG4gICAgICAgIH1cblxuICAgICAgICBzZWxmLmxvY2FsU3RvcmFnZS51cGRhdGVWZXJzaW9ucyhuYW1lLCBwYWNrYWdlSW5mbywgYXN5bmMgKGVyciwgcGFja2FnZUpzb25Mb2NhbDogUGFja2FnZSk6IFByb21pc2U8YW55PiA9PiB7XG4gICAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIEFueSBlcnJvciBoZXJlIHdpbGwgY2F1c2UgYSA0MDQsIGxpa2UgYW4gdXBsaW5rIGVycm9yLiBUaGlzIGlzIGxpa2VseSB0aGUgcmlnaHQgdGhpbmcgdG8gZG9cbiAgICAgICAgICAvLyBhcyBhIGJyb2tlbiBmaWx0ZXIgaXMgYSBzZWN1cml0eSByaXNrLlxuICAgICAgICAgIGNvbnN0IGZpbHRlckVycm9yczogRXJyb3JbXSA9IFtdO1xuICAgICAgICAgIC8vIFRoaXMgTVVTVCBiZSBkb25lIHNlcmlhbGx5IGFuZCBub3QgaW4gcGFyYWxsZWwgYXMgdGhleSBtb2RpZnkgcGFja2FnZUpzb25Mb2NhbFxuICAgICAgICAgIGZvciAoY29uc3QgZmlsdGVyIG9mIHNlbGYuZmlsdGVycykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgLy8gVGhlc2UgZmlsdGVycyBjYW4gYXNzdW1lIGl0J3Mgc2F2ZSB0byBtb2RpZnkgcGFja2FnZUpzb25Mb2NhbCBhbmQgcmV0dXJuIGl0IGRpcmVjdGx5IGZvclxuICAgICAgICAgICAgICAvLyBwZXJmb3JtYW5jZSAoaS5lLiBuZWVkIG5vdCBiZSBwdXJlKVxuICAgICAgICAgICAgICBwYWNrYWdlSnNvbkxvY2FsID0gYXdhaXQgZmlsdGVyLmZpbHRlcl9tZXRhZGF0YShwYWNrYWdlSnNvbkxvY2FsKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICBmaWx0ZXJFcnJvcnMucHVzaChlcnIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjYWxsYmFjayhudWxsLCBwYWNrYWdlSnNvbkxvY2FsLCBfLmNvbmNhdCh1cExpbmtzRXJyb3JzLCBmaWx0ZXJFcnJvcnMpKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgYSBoaWRkZW4gdmFsdWUgZm9yIGVhY2ggdmVyc2lvbi5cbiAgICogQHBhcmFtIHtBcnJheX0gdmVyc2lvbnMgbGlzdCBvZiB2ZXJzaW9uXG4gICAqIEBwYXJhbSB7U3RyaW5nfSB1cExpbmsgdXBsaW5rIG5hbWVcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHB1YmxpYyBfdXBkYXRlVmVyc2lvbnNIaWRkZW5VcExpbmsodmVyc2lvbnM6IFZlcnNpb25zLCB1cExpbms6IElQcm94eSk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgaSBpbiB2ZXJzaW9ucykge1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2ZXJzaW9ucywgaSkpIHtcbiAgICAgICAgY29uc3QgdmVyc2lvbiA9IHZlcnNpb25zW2ldO1xuXG4gICAgICAgIC8vIGhvbGRzIGEgXCJoaWRkZW5cIiB2YWx1ZSB0byBiZSB1c2VkIGJ5IHRoZSBwYWNrYWdlIHN0b3JhZ2UuXG4gICAgICAgIC8vICRGbG93Rml4TWVcbiAgICAgICAgdmVyc2lvbltTeW1ib2wuZm9yKCdfX3ZlcmRhY2Npb191cGxpbmsnKV0gPSB1cExpbmsudXBuYW1lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBTdG9yYWdlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBR0E7O0FBS0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBLE1BQU1BLE9BQU4sQ0FBeUM7RUFPaENDLFdBQVcsQ0FBQ0MsTUFBRCxFQUFpQjtJQUFBOztJQUFBOztJQUFBOztJQUFBOztJQUFBOztJQUNqQyxLQUFLQSxNQUFMLEdBQWNBLE1BQWQ7SUFDQSxLQUFLQyxPQUFMLEdBQWUsSUFBQUMsd0JBQUEsRUFBYUYsTUFBYixDQUFmO0lBQ0EsS0FBS0csTUFBTCxHQUFjQSxjQUFkO0lBQ0EsS0FBS0MsT0FBTCxHQUFlLEVBQWYsQ0FKaUMsQ0FLakM7O0lBQ0EsS0FBS0MsWUFBTCxHQUFvQixJQUFwQjtFQUNEOztFQUVNQyxJQUFJLENBQUNOLE1BQUQsRUFBaUJJLE9BQXVCLEdBQUcsRUFBM0MsRUFBZ0U7SUFDekUsS0FBS0EsT0FBTCxHQUFlQSxPQUFmO0lBQ0EsS0FBS0MsWUFBTCxHQUFvQixJQUFJRSxxQkFBSixDQUFpQixLQUFLUCxNQUF0QixFQUE4QkcsY0FBOUIsQ0FBcEI7SUFFQSxPQUFPLEtBQUtFLFlBQUwsQ0FBa0JHLFNBQWxCLENBQTRCUixNQUE1QixDQUFQO0VBQ0Q7RUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztFQUN5QixNQUFWUyxVQUFVLENBQUNDLElBQUQsRUFBZUMsUUFBZixFQUE4QkMsUUFBOUIsRUFBaUU7SUFDdEYsSUFBSTtNQUNGLE1BQU0sSUFBQUMsK0JBQUEsRUFBa0JILElBQWxCLEVBQXdCLEtBQUtMLFlBQTdCLENBQU47TUFDQSxNQUFNLElBQUFTLGdDQUFBLEVBQW1CSixJQUFuQixFQUF5QixLQUFLSyxzQkFBTCxFQUF6QixFQUF3RCxLQUFLQyxvQkFBTCxDQUEwQkMsSUFBMUIsQ0FBK0IsSUFBL0IsQ0FBeEQsQ0FBTjtNQUNBLE1BQU0sSUFBQUMsNEJBQUEsRUFBZVIsSUFBZixFQUFxQkMsUUFBckIsRUFBK0IsS0FBS04sWUFBcEMsQ0FBTjtNQUNBTyxRQUFRO0lBQ1QsQ0FMRCxDQUtFLE9BQU9PLEdBQVAsRUFBWTtNQUNaUCxRQUFRLENBQUNPLEdBQUQsQ0FBUjtJQUNEO0VBQ0Y7O0VBRU9KLHNCQUFzQixHQUFZO0lBQ3hDLE9BQU8sT0FBTyxLQUFLZixNQUFMLENBQVlvQixPQUFuQixLQUErQixXQUEvQixJQUE4Q0MsZUFBQSxDQUFFQyxTQUFGLENBQVksS0FBS3RCLE1BQUwsQ0FBWW9CLE9BQVosQ0FBb0JHLGFBQWhDLENBQTlDLElBQWdHLEtBQUt2QixNQUFMLENBQVlvQixPQUFaLENBQW9CRyxhQUEzSDtFQUNEOztFQUVNQyxVQUFVLENBQUNDLE1BQUQsRUFBd0M7SUFDdkQsT0FBTyxLQUFLcEIsWUFBTCxDQUFrQm1CLFVBQWxCLENBQTZCQyxNQUE3QixDQUFQO0VBQ0Q7O0VBRU1DLFNBQVMsQ0FBQ0MsS0FBRCxFQUE4QjtJQUM1QyxPQUFPLEtBQUt0QixZQUFMLENBQWtCcUIsU0FBbEIsQ0FBNEJDLEtBQTVCLENBQVA7RUFDRDs7RUFFTUMsV0FBVyxDQUFDQyxJQUFELEVBQWVDLFFBQWYsRUFBK0M7SUFDL0QsT0FBTyxLQUFLekIsWUFBTCxDQUFrQnVCLFdBQWxCLENBQThCQyxJQUE5QixFQUFvQ0MsUUFBcEMsQ0FBUDtFQUNEO0VBRUQ7QUFDRjtBQUNBO0FBQ0E7OztFQUNTQyxVQUFVLENBQUNyQixJQUFELEVBQWVzQixPQUFmLEVBQWdDckIsUUFBaEMsRUFBbURzQixHQUFuRCxFQUFxRXJCLFFBQXJFLEVBQStGO0lBQzlHLEtBQUtQLFlBQUwsQ0FBa0IwQixVQUFsQixDQUE2QnJCLElBQTdCLEVBQW1Dc0IsT0FBbkMsRUFBNENyQixRQUE1QyxFQUFzRHNCLEdBQXRELEVBQTJEckIsUUFBM0Q7RUFDRDtFQUVEO0FBQ0Y7QUFDQTtBQUNBOzs7RUFDU3NCLFNBQVMsQ0FBQ3hCLElBQUQsRUFBZXlCLE9BQWYsRUFBbUN2QixRQUFuQyxFQUE2RDtJQUMzRSxLQUFLUCxZQUFMLENBQWtCNkIsU0FBbEIsQ0FBNEJ4QixJQUE1QixFQUFrQ3lCLE9BQWxDLEVBQTJDdkIsUUFBM0M7RUFDRDtFQUVEO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7OztFQUNTd0IsYUFBYSxDQUFDMUIsSUFBRCxFQUFlQyxRQUFmLEVBQWtDMEIsUUFBbEMsRUFBb0R6QixRQUFwRCxFQUE4RTtJQUNoRyxLQUFLUCxZQUFMLENBQWtCK0IsYUFBbEIsQ0FBZ0MxQixJQUFoQyxFQUFzQ0MsUUFBdEMsRUFBZ0QwQixRQUFoRCxFQUEwRHpCLFFBQTFEO0VBQ0Q7RUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBOzs7RUFDUzBCLGFBQWEsQ0FBQzVCLElBQUQsRUFBZUUsUUFBZixFQUF5QztJQUMzRCxLQUFLUCxZQUFMLENBQWtCaUMsYUFBbEIsQ0FBZ0M1QixJQUFoQyxFQUFzQ0UsUUFBdEMsRUFEMkQsQ0FFM0Q7O0lBQ0EyQixlQUFBLENBQU9DLE1BQVAsQ0FBYzlCLElBQWQ7RUFDRDtFQUVEO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7RUFDUytCLGFBQWEsQ0FBQy9CLElBQUQsRUFBZWdDLFFBQWYsRUFBaUNMLFFBQWpDLEVBQW1EekIsUUFBbkQsRUFBNkU7SUFDL0YsS0FBS1AsWUFBTCxDQUFrQm9DLGFBQWxCLENBQWdDL0IsSUFBaEMsRUFBc0NnQyxRQUF0QyxFQUFnREwsUUFBaEQsRUFBMER6QixRQUExRDtFQUNEO0VBRUQ7QUFDRjtBQUNBO0FBQ0E7QUFDQTs7O0VBQ1MrQixVQUFVLENBQUNqQyxJQUFELEVBQWVnQyxRQUFmLEVBQWlEO0lBQ2hFLE9BQU8sS0FBS3JDLFlBQUwsQ0FBa0JzQyxVQUFsQixDQUE2QmpDLElBQTdCLEVBQW1DZ0MsUUFBbkMsQ0FBUDtFQUNEOztFQUVNRSxlQUFlLENBQUNsQyxJQUFELEVBQWVnQyxRQUFmLEVBQW1EO0lBQ3ZFLE1BQU1HLElBQUksR0FBRyxJQUFiO0lBQ0EsT0FBTyxJQUFJQyxPQUFKLENBQXFCLENBQUNDLE9BQUQsRUFBVUMsTUFBVixLQUEyQjtNQUNyRCxJQUFJQyxXQUFnQixHQUFHSixJQUFJLENBQUN4QyxZQUFMLENBQWtCNkMsVUFBbEIsQ0FBNkJ4QyxJQUE3QixFQUFtQ2dDLFFBQW5DLENBQXZCO01BQ0EsSUFBSVMsTUFBTSxHQUFHLEtBQWI7TUFDQUYsV0FBVyxDQUFDRyxFQUFaLENBQWUsT0FBZixFQUF5QmpDLEdBQUQsSUFBYztRQUNwQyxJQUFJZ0MsTUFBTSxJQUFJaEMsR0FBRyxDQUFDa0MsTUFBSixLQUFlQyxzQkFBQSxDQUFZQyxTQUF6QyxFQUFvRDtVQUNsRFAsTUFBTSxDQUFDN0IsR0FBRCxDQUFOO1FBQ0QsQ0FIbUMsQ0FJcEM7OztRQUNBLElBQUk4QixXQUFKLEVBQWlCO1VBQ2ZBLFdBQVcsQ0FBQ08sS0FBWjtVQUNBUCxXQUFXLEdBQUcsSUFBZDtRQUNEOztRQUNERixPQUFPLENBQUMsS0FBRCxDQUFQO01BQ0QsQ0FWRDtNQVdBRSxXQUFXLENBQUNHLEVBQVosQ0FBZSxNQUFmLEVBQXVCLFlBQWtCO1FBQ3ZDRCxNQUFNLEdBQUcsSUFBVDtRQUNBRixXQUFXLENBQUNPLEtBQVo7UUFDQVAsV0FBVyxHQUFHLElBQWQ7UUFDQUYsT0FBTyxDQUFDLElBQUQsQ0FBUDtNQUNELENBTEQ7SUFNRCxDQXBCTSxDQUFQO0VBcUJEO0VBRUQ7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztFQUNTRyxVQUFVLENBQUN4QyxJQUFELEVBQWVnQyxRQUFmLEVBQStDO0lBQzlELE1BQU1lLFVBQVUsR0FBRyxJQUFJQyxvQkFBSixDQUFnQixFQUFoQixDQUFuQjs7SUFDQUQsVUFBVSxDQUFDRCxLQUFYLEdBQW1CLFlBQVksQ0FBRSxDQUFqQzs7SUFFQSxNQUFNWCxJQUFJLEdBQUcsSUFBYixDQUo4RCxDQU05RDtJQUNBO0lBRUE7SUFDQTs7SUFDQSxJQUFJSSxXQUFnQixHQUFHSixJQUFJLENBQUN4QyxZQUFMLENBQWtCNkMsVUFBbEIsQ0FBNkJ4QyxJQUE3QixFQUFtQ2dDLFFBQW5DLENBQXZCO0lBQ0EsSUFBSVMsTUFBTSxHQUFHLEtBQWI7SUFDQUYsV0FBVyxDQUFDRyxFQUFaLENBQWUsT0FBZixFQUF5QmpDLEdBQUQsSUFBYztNQUNwQyxJQUFJZ0MsTUFBTSxJQUFJaEMsR0FBRyxDQUFDa0MsTUFBSixLQUFlQyxzQkFBQSxDQUFZQyxTQUF6QyxFQUFvRDtRQUNsRCxPQUFPRSxVQUFVLENBQUNFLElBQVgsQ0FBZ0IsT0FBaEIsRUFBeUJ4QyxHQUF6QixDQUFQO01BQ0QsQ0FIbUMsQ0FLcEM7OztNQUNBLE1BQU15QyxNQUFNLEdBQUd6QyxHQUFmO01BQ0E4QixXQUFXLENBQUNPLEtBQVo7TUFDQVAsV0FBVyxHQUFHLElBQWQsQ0FSb0MsQ0FRaEI7O01BQ3BCSixJQUFJLENBQUN4QyxZQUFMLENBQWtCd0Qsa0JBQWxCLENBQXFDbkQsSUFBckMsRUFBMkMsQ0FBQ1MsR0FBRCxFQUFNMkMsSUFBTixLQUE4QjtRQUN2RSxJQUFJekMsZUFBQSxDQUFFMEMsS0FBRixDQUFRNUMsR0FBUixLQUFnQjJDLElBQUksQ0FBQ0UsVUFBckIsSUFBbUMzQyxlQUFBLENBQUUwQyxLQUFGLENBQVFELElBQUksQ0FBQ0UsVUFBTCxDQUFnQnRCLFFBQWhCLENBQVIsTUFBdUMsS0FBOUUsRUFBcUY7VUFDbkY7VUFDQXVCLFNBQVMsQ0FBQ0gsSUFBSSxDQUFDRSxVQUFMLENBQWdCdEIsUUFBaEIsQ0FBRCxDQUFUO1FBQ0QsQ0FIRCxNQUdPO1VBQ0w7VUFDQUcsSUFBSSxDQUFDN0Isb0JBQUwsQ0FBMEJOLElBQTFCLEVBQWdDb0QsSUFBaEMsRUFBc0MsRUFBdEMsRUFBMEMsQ0FBQzNDLEdBQUQsRUFBTTJDLElBQU4sS0FBNkI7WUFDckUsSUFBSXpDLGVBQUEsQ0FBRTBDLEtBQUYsQ0FBUTVDLEdBQVIsTUFBaUIsS0FBckIsRUFBNEI7Y0FDMUIsT0FBT3NDLFVBQVUsQ0FBQ0UsSUFBWCxDQUFnQixPQUFoQixFQUF5QnhDLEdBQXpCLENBQVA7WUFDRDs7WUFDRCxJQUFJRSxlQUFBLENBQUUwQyxLQUFGLENBQVFELElBQUksQ0FBQ0UsVUFBYixLQUE0QjNDLGVBQUEsQ0FBRTBDLEtBQUYsQ0FBUUQsSUFBSSxDQUFDRSxVQUFMLENBQWdCdEIsUUFBaEIsQ0FBUixDQUFoQyxFQUFvRTtjQUNsRSxPQUFPZSxVQUFVLENBQUNFLElBQVgsQ0FBZ0IsT0FBaEIsRUFBeUJDLE1BQXpCLENBQVA7WUFDRDs7WUFDREssU0FBUyxDQUFDSCxJQUFJLENBQUNFLFVBQUwsQ0FBZ0J0QixRQUFoQixDQUFELENBQVQ7VUFDRCxDQVJEO1FBU0Q7TUFDRixDQWhCRDtJQWlCRCxDQTFCRDtJQTJCQU8sV0FBVyxDQUFDRyxFQUFaLENBQWUsZ0JBQWYsRUFBaUMsVUFBVWMsQ0FBVixFQUFtQjtNQUNsRFQsVUFBVSxDQUFDRSxJQUFYLENBQWdCLGdCQUFoQixFQUFrQ08sQ0FBbEM7SUFDRCxDQUZEO0lBR0FqQixXQUFXLENBQUNHLEVBQVosQ0FBZSxNQUFmLEVBQXVCLFlBQWtCO01BQ3ZDRCxNQUFNLEdBQUcsSUFBVDtNQUNBRixXQUFXLENBQUNrQixJQUFaLENBQWlCVixVQUFqQjtJQUNELENBSEQ7SUFJQSxPQUFPQSxVQUFQO0lBRUE7QUFDSjtBQUNBO0FBQ0E7O0lBQ0ksU0FBU1EsU0FBVCxDQUFtQkcsSUFBbkIsRUFBeUM7TUFDdkMsSUFBSUMsTUFBVyxHQUFHLElBQWxCOztNQUVBLEtBQUssTUFBTUMsUUFBWCxJQUF1QnpCLElBQUksQ0FBQzVDLE9BQTVCLEVBQXFDO1FBQ25DLElBQUksSUFBQXNFLHVCQUFBLEVBQVc3RCxJQUFYLEVBQWlCNEQsUUFBakIsRUFBMkJ6QixJQUFJLENBQUM3QyxNQUFMLENBQVl3RSxRQUF2QyxDQUFKLEVBQXNEO1VBQ3BESCxNQUFNLEdBQUd4QixJQUFJLENBQUM1QyxPQUFMLENBQWFxRSxRQUFiLENBQVQ7UUFDRDtNQUNGOztNQUVELElBQUlELE1BQU0sSUFBSSxJQUFkLEVBQW9CO1FBQ2xCQSxNQUFNLEdBQUcsSUFBSUksa0JBQUosQ0FDUDtVQUNFQyxHQUFHLEVBQUVOLElBQUksQ0FBQ00sR0FEWjtVQUVFQyxLQUFLLEVBQUUsSUFGVDtVQUdFQyxjQUFjLEVBQUU7UUFIbEIsQ0FETyxFQU1QL0IsSUFBSSxDQUFDN0MsTUFORSxDQUFUO01BUUQ7O01BRUQsSUFBSTZFLFVBQWlDLEdBQUcsSUFBeEM7O01BQ0EsSUFBSVIsTUFBTSxDQUFDckUsTUFBUCxDQUFjMkUsS0FBbEIsRUFBeUI7UUFDdkJFLFVBQVUsR0FBR2hDLElBQUksQ0FBQ3hDLFlBQUwsQ0FBa0JzQyxVQUFsQixDQUE2QmpDLElBQTdCLEVBQW1DZ0MsUUFBbkMsQ0FBYjtNQUNEOztNQUVELElBQUlvQyxPQUFPLEdBQUcsWUFBa0I7UUFDOUI7UUFDQUEsT0FBTyxHQUFHLFlBQVksQ0FBRSxDQUF4Qjs7UUFDQSxNQUFNQyxRQUFRLEdBQUdWLE1BQU0sQ0FBQ1csWUFBUCxDQUFvQlosSUFBSSxDQUFDTSxHQUF6QixDQUFqQjtRQUNBSyxRQUFRLENBQUMzQixFQUFULENBQVksT0FBWixFQUFxQixVQUFVakMsR0FBVixFQUFxQjtVQUN4QyxJQUFJMEQsVUFBSixFQUFnQjtZQUNkQSxVQUFVLENBQUNyQixLQUFYO1VBQ0Q7O1VBQ0RxQixVQUFVLEdBQUcsSUFBYjtVQUNBcEIsVUFBVSxDQUFDRSxJQUFYLENBQWdCLE9BQWhCLEVBQXlCeEMsR0FBekI7UUFDRCxDQU5EO1FBT0E0RCxRQUFRLENBQUMzQixFQUFULENBQVksS0FBWixFQUFtQixZQUFrQjtVQUNuQyxJQUFJeUIsVUFBSixFQUFnQjtZQUNkQSxVQUFVLENBQUNJLElBQVg7VUFDRDtRQUNGLENBSkQ7UUFNQUYsUUFBUSxDQUFDM0IsRUFBVCxDQUFZLGdCQUFaLEVBQThCLFVBQVVjLENBQVYsRUFBbUI7VUFDL0NULFVBQVUsQ0FBQ0UsSUFBWCxDQUFnQixnQkFBaEIsRUFBa0NPLENBQWxDOztVQUNBLElBQUlXLFVBQUosRUFBZ0I7WUFDZEEsVUFBVSxDQUFDbEIsSUFBWCxDQUFnQixnQkFBaEIsRUFBa0NPLENBQWxDO1VBQ0Q7UUFDRixDQUxEO1FBTUFhLFFBQVEsQ0FBQ1osSUFBVCxDQUFjVixVQUFkOztRQUNBLElBQUlvQixVQUFKLEVBQWdCO1VBQ2RFLFFBQVEsQ0FBQ1osSUFBVCxDQUFjVSxVQUFkO1FBQ0Q7TUFDRixDQTNCRDs7TUE2QkEsSUFBSUEsVUFBSixFQUFnQjtRQUNkQSxVQUFVLENBQUN6QixFQUFYLENBQWMsTUFBZCxFQUFzQixZQUFrQjtVQUN0QzBCLE9BQU87UUFDUixDQUZEO1FBSUFELFVBQVUsQ0FBQ3pCLEVBQVgsQ0FBYyxPQUFkLEVBQXVCLFVBQVVqQyxHQUFWLEVBQXFCO1VBQzFDMEIsSUFBSSxDQUFDMUMsTUFBTCxDQUFZK0UsSUFBWixDQUFpQjtZQUFFL0QsR0FBRyxFQUFFQSxHQUFQO1lBQVlnRSxRQUFRLEVBQUVmO1VBQXRCLENBQWpCLEVBQStDLDZEQUEvQzs7VUFDQSxJQUFJUyxVQUFKLEVBQWdCO1lBQ2RBLFVBQVUsQ0FBQ3JCLEtBQVg7VUFDRDs7VUFDRHFCLFVBQVUsR0FBRyxJQUFiO1VBQ0FDLE9BQU87UUFDUixDQVBEO01BUUQsQ0FiRCxNQWFPO1FBQ0xBLE9BQU87TUFDUjtJQUNGO0VBQ0Y7RUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztFQUVTTSxVQUFVLENBQUNDLE9BQUQsRUFBb0M7SUFDbkQsS0FBS2hGLFlBQUwsQ0FBa0J3RCxrQkFBbEIsQ0FBcUN3QixPQUFPLENBQUMzRSxJQUE3QyxFQUFtRCxDQUFDUyxHQUFELEVBQU1tRSxJQUFOLEtBQXFCO01BQ3RFLElBQUluRSxHQUFHLEtBQUssQ0FBQ0EsR0FBRyxDQUFDa0MsTUFBTCxJQUFlbEMsR0FBRyxDQUFDa0MsTUFBSixJQUFjQyxzQkFBQSxDQUFZaUMsY0FBOUMsQ0FBUCxFQUFzRTtRQUNwRTtRQUNBLE9BQU9GLE9BQU8sQ0FBQ3pFLFFBQVIsQ0FBaUJPLEdBQWpCLENBQVA7TUFDRDs7TUFFRCxLQUFLSCxvQkFBTCxDQUNFcUUsT0FBTyxDQUFDM0UsSUFEVixFQUVFNEUsSUFGRixFQUdFO1FBQUVFLEdBQUcsRUFBRUgsT0FBTyxDQUFDRyxHQUFmO1FBQW9CQyxXQUFXLEVBQUVKLE9BQU8sQ0FBQ0k7TUFBekMsQ0FIRixFQUlFLFNBQVNDLDRCQUFULENBQXNDdkUsR0FBdEMsRUFBMkN3RSxNQUEzQyxFQUE0REMsWUFBNUQsRUFBZ0Y7UUFDOUUsSUFBSXpFLEdBQUosRUFBUztVQUNQLE9BQU9rRSxPQUFPLENBQUN6RSxRQUFSLENBQWlCTyxHQUFqQixDQUFQO1FBQ0Q7O1FBRUQsSUFBQTBFLHdCQUFBLEVBQWtCLElBQUFDLDZCQUFBLEVBQWdCVCxPQUFPLENBQUNVLGNBQXhCLEVBQXdDSixNQUF4QyxDQUFsQixFQUw4RSxDQU85RTs7UUFDQUEsTUFBTSxDQUFDSyxZQUFQLEdBQXNCLEVBQXRCO1FBRUFYLE9BQU8sQ0FBQ3pFLFFBQVIsQ0FBaUIsSUFBakIsRUFBdUIrRSxNQUF2QixFQUErQkMsWUFBL0I7TUFDRCxDQWZIO0lBaUJELENBdkJEO0VBd0JEO0VBRUQ7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7RUFDU0ssTUFBTSxDQUFDQyxRQUFELEVBQW1CYixPQUFuQixFQUErQztJQUMxRCxNQUFNeEMsSUFBSSxHQUFHLElBQWI7SUFDQSxNQUFNc0QsWUFBaUIsR0FBRyxJQUFJQyxlQUFBLENBQU9DLFdBQVgsQ0FBdUI7TUFBRUMsVUFBVSxFQUFFO0lBQWQsQ0FBdkIsQ0FBMUI7O0lBQ0FDLGNBQUEsQ0FBTUMsVUFBTixDQUNFQyxNQUFNLENBQUNDLElBQVAsQ0FBWSxLQUFLekcsT0FBakIsQ0FERixFQUVFLFVBQVUwRyxPQUFWLEVBQW1CQyxFQUFuQixFQUE2QjtNQUFBOztNQUMzQjtNQUNBLElBQUksaUJBQUF2QixPQUFPLENBQUNHLEdBQVIsb0ZBQWFxQixLQUFiLDBFQUFvQkMsS0FBcEIsTUFBOEJDLFNBQWxDLEVBQTZDO1FBQzNDLE9BQU9ILEVBQUUsRUFBVDtNQUNEOztNQUNEekcsY0FBQSxDQUFPMkQsSUFBUCxDQUFhLHFCQUFvQjZDLE9BQVEsRUFBekMsRUFMMkIsQ0FNM0I7OztNQUNBLE1BQU1LLFlBQTRCLEdBQUduRSxJQUFJLENBQUM1QyxPQUFMLENBQWEwRyxPQUFiLEVBQXNCVixNQUF0QixDQUE2QlosT0FBN0IsQ0FBckMsQ0FQMkIsQ0FRM0I7O01BQ0EyQixZQUFZLENBQUM3QyxJQUFiLENBQWtCZ0MsWUFBbEIsRUFBZ0M7UUFBRWMsR0FBRyxFQUFFO01BQVAsQ0FBaEM7TUFDQUQsWUFBWSxDQUFDNUQsRUFBYixDQUFnQixPQUFoQixFQUF5QixVQUFVakMsR0FBVixFQUFxQjtRQUM1QzBCLElBQUksQ0FBQzFDLE1BQUwsQ0FBWStHLEtBQVosQ0FBa0I7VUFBRS9GLEdBQUcsRUFBRUE7UUFBUCxDQUFsQixFQUFnQyw4QkFBaEM7UUFDQXlGLEVBQUUsR0FGMEMsQ0FHNUM7O1FBQ0FBLEVBQUUsR0FBRyxZQUFrQixDQUFFLENBQXpCO01BQ0QsQ0FMRDtNQU1BSSxZQUFZLENBQUM1RCxFQUFiLENBQWdCLEtBQWhCLEVBQXVCLFlBQWtCO1FBQ3ZDd0QsRUFBRSxHQURxQyxDQUV2Qzs7UUFDQUEsRUFBRSxHQUFHLFlBQWtCLENBQUUsQ0FBekI7TUFDRCxDQUpEOztNQU1BVCxZQUFZLENBQUMzQyxLQUFiLEdBQXFCLFlBQWtCO1FBQ3JDLElBQUl3RCxZQUFZLENBQUN4RCxLQUFqQixFQUF3QjtVQUN0QndELFlBQVksQ0FBQ3hELEtBQWI7UUFDRDs7UUFDRG9ELEVBQUUsR0FKbUMsQ0FLckM7O1FBQ0FBLEVBQUUsR0FBRyxZQUFrQixDQUFFLENBQXpCO01BQ0QsQ0FQRDtJQVFELENBaENILEVBaUNFO0lBQ0EsWUFBa0I7TUFDaEI7TUFDQSxNQUFNTyxpQkFBK0IsR0FBR3RFLElBQUksQ0FBQ3hDLFlBQUwsQ0FBa0I0RixNQUFsQixDQUF5QkMsUUFBekIsRUFBbUNiLE9BQW5DLENBQXhDOztNQUNBYyxZQUFZLENBQUMzQyxLQUFiLEdBQXFCLFlBQWtCO1FBQ3JDMkQsaUJBQWlCLENBQUMzRCxLQUFsQjtNQUNELENBRkQ7O01BR0EyRCxpQkFBaUIsQ0FBQ2hELElBQWxCLENBQXVCZ0MsWUFBdkIsRUFBcUM7UUFBRWMsR0FBRyxFQUFFO01BQVAsQ0FBckM7TUFDQUUsaUJBQWlCLENBQUMvRCxFQUFsQixDQUFxQixPQUFyQixFQUE4QixVQUFVakMsR0FBVixFQUFxQztRQUNqRTBCLElBQUksQ0FBQzFDLE1BQUwsQ0FBWStHLEtBQVosQ0FBa0I7VUFBRS9GLEdBQUcsRUFBRUE7UUFBUCxDQUFsQixFQUFnQyw4QkFBaEM7UUFDQWdGLFlBQVksQ0FBQ2MsR0FBYjtNQUNELENBSEQ7SUFJRCxDQTdDSDs7SUFnREEsT0FBT2QsWUFBUDtFQUNEO0VBRUQ7QUFDRjtBQUNBO0FBQ0E7OztFQUNTaUIsZ0JBQWdCLENBQUN4RyxRQUFELEVBQTJCO0lBQ2hELE1BQU1pQyxJQUFJLEdBQUcsSUFBYjtJQUNBLEtBQUt4QyxZQUFMLENBQWtCZ0gsYUFBbEIsQ0FBZ0NDLEdBQWhDLENBQW9DLENBQUNuRyxHQUFELEVBQU1vRyxNQUFOLEtBQXVCO01BQ3pELElBQUlwRyxHQUFKLEVBQVM7UUFDUFAsUUFBUSxDQUFDTyxHQUFELENBQVI7TUFDRDs7TUFFRCxNQUFNcUQsUUFBbUIsR0FBRyxFQUE1Qjs7TUFDQSxNQUFNWSxVQUFVLEdBQUcsVUFBVW9DLE9BQVYsRUFBeUI7UUFDMUMzRSxJQUFJLENBQUN4QyxZQUFMLENBQWtCd0Qsa0JBQWxCLENBQXFDMEQsTUFBTSxDQUFDQyxPQUFELENBQTNDLEVBQXNELFVBQVVyRyxHQUFWLEVBQWVzRyxXQUFmLEVBQTJDO1VBQy9GLElBQUlwRyxlQUFBLENBQUUwQyxLQUFGLENBQVE1QyxHQUFSLENBQUosRUFBa0I7WUFDaEIsTUFBTXVHLE1BQU0sR0FBR0QsV0FBVyxDQUFDRSxvQkFBRCxDQUFYLENBQXVCRCxNQUF0Qzs7WUFDQSxJQUFJQSxNQUFNLElBQUlELFdBQVcsQ0FBQ0csUUFBWixDQUFxQkYsTUFBckIsQ0FBZCxFQUE0QztjQUMxQyxNQUFNMUYsT0FBZ0IsR0FBR3lGLFdBQVcsQ0FBQ0csUUFBWixDQUFxQkYsTUFBckIsQ0FBekI7Y0FDQSxNQUFNRyxRQUFRLEdBQUdKLFdBQVcsQ0FBQ0ssSUFBN0I7Y0FDQSxNQUFNQSxJQUFJLEdBQUdELFFBQVEsQ0FBQ0gsTUFBRCxDQUFyQixDQUgwQyxDQUkxQzs7Y0FDQTFGLE9BQU8sQ0FBQzhGLElBQVIsR0FBZUEsSUFBZixDQUwwQyxDQU8xQztjQUNBOztjQUNBOUYsT0FBTyxDQUFDK0YsS0FBUixHQUFnQk4sV0FBVyxDQUFDTSxLQUE1QjtjQUVBdkQsUUFBUSxDQUFDd0QsSUFBVCxDQUFjaEcsT0FBZDtZQUNELENBWkQsTUFZTztjQUNMYSxJQUFJLENBQUMxQyxNQUFMLENBQVkrRSxJQUFaLENBQWlCO2dCQUFFK0MsT0FBTyxFQUFFVixNQUFNLENBQUNDLE9BQUQ7Y0FBakIsQ0FBakIsRUFBK0Msa0RBQS9DO1lBQ0Q7VUFDRjs7VUFFRCxJQUFJQSxPQUFPLElBQUlELE1BQU0sQ0FBQ1csTUFBUCxHQUFnQixDQUEvQixFQUFrQztZQUNoQ3RILFFBQVEsQ0FBQyxJQUFELEVBQU80RCxRQUFQLENBQVI7VUFDRCxDQUZELE1BRU87WUFDTFksVUFBVSxDQUFDb0MsT0FBTyxHQUFHLENBQVgsQ0FBVjtVQUNEO1FBQ0YsQ0F6QkQ7TUEwQkQsQ0EzQkQ7O01BNkJBLElBQUlELE1BQU0sQ0FBQ1csTUFBWCxFQUFtQjtRQUNqQjlDLFVBQVUsQ0FBQyxDQUFELENBQVY7TUFDRCxDQUZELE1BRU87UUFDTHhFLFFBQVEsQ0FBQyxJQUFELEVBQU8sRUFBUCxDQUFSO01BQ0Q7SUFDRixDQXhDRDtFQXlDRDtFQUVEO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7OztFQUNTSSxvQkFBb0IsQ0FBQ04sSUFBRCxFQUFleUgsV0FBZixFQUFxQzlDLE9BQXJDLEVBQTREekUsUUFBNUQsRUFBc0Y7SUFDL0csSUFBSXdILEtBQUssR0FBRyxJQUFaO0lBQ0EsTUFBTXZGLElBQUksR0FBRyxJQUFiO0lBQ0EsTUFBTXdGLE9BQWlCLEdBQUcsRUFBMUI7SUFDQSxNQUFNQyxvQkFBb0IsR0FBR2pILGVBQUEsQ0FBRTBDLEtBQUYsQ0FBUXNCLE9BQU8sQ0FBQ0ksV0FBaEIsS0FBZ0NKLE9BQU8sQ0FBQ0ksV0FBckU7O0lBRUEsSUFBSSxDQUFDMEMsV0FBTCxFQUFrQjtNQUNoQkMsS0FBSyxHQUFHLEtBQVI7TUFDQUQsV0FBVyxHQUFHLElBQUFJLHFDQUFBLEVBQXdCN0gsSUFBeEIsQ0FBZDtJQUNEOztJQUVELEtBQUssTUFBTTJELE1BQVgsSUFBcUIsS0FBS3BFLE9BQTFCLEVBQW1DO01BQ2pDLElBQUksSUFBQXNFLHVCQUFBLEVBQVc3RCxJQUFYLEVBQWlCMkQsTUFBakIsRUFBeUIsS0FBS3JFLE1BQUwsQ0FBWXdFLFFBQXJDLEtBQWtEOEQsb0JBQXRELEVBQTRFO1FBQzFFRCxPQUFPLENBQUNMLElBQVIsQ0FBYSxLQUFLL0gsT0FBTCxDQUFhb0UsTUFBYixDQUFiO01BQ0Q7SUFDRjs7SUFFRGtDLGNBQUEsQ0FBTWlDLEdBQU4sQ0FDRUgsT0FERixFQUVFLENBQUNJLE1BQUQsRUFBUzdCLEVBQVQsS0FBc0I7TUFDcEIsTUFBTThCLFFBQVEsR0FBR2pDLE1BQU0sQ0FBQ2tDLE1BQVAsQ0FBYyxFQUFkLEVBQWtCdEQsT0FBbEIsQ0FBakI7O01BQ0EsTUFBTXVELFVBQVUsR0FBR1QsV0FBVyxDQUFDVSxRQUFaLENBQXFCSixNQUFNLENBQUNLLE1BQTVCLENBQW5COztNQUVBLElBQUksSUFBQUMsZUFBQSxFQUFTSCxVQUFULENBQUosRUFBMEI7UUFDeEIsTUFBTUksT0FBTyxHQUFHSixVQUFVLENBQUNJLE9BQTNCOztRQUVBLElBQUlBLE9BQU8sSUFBSUMsSUFBSSxDQUFDQyxHQUFMLEtBQWFGLE9BQWIsR0FBdUJQLE1BQU0sQ0FBQ1UsTUFBN0MsRUFBcUQ7VUFDbkQsT0FBT3ZDLEVBQUUsRUFBVDtRQUNEOztRQUVEOEIsUUFBUSxDQUFDVSxJQUFULEdBQWdCUixVQUFVLENBQUNRLElBQTNCO01BQ0Q7O01BRURYLE1BQU0sQ0FBQ1ksaUJBQVAsQ0FBeUIzSSxJQUF6QixFQUErQmdJLFFBQS9CLEVBQXlDLENBQUN2SCxHQUFELEVBQU1tSSxjQUFOLEVBQXNCQyxJQUF0QixLQUFxQztRQUM1RSxJQUFJcEksR0FBRyxJQUFJQSxHQUFHLENBQUNxSSxZQUFKLEtBQXFCLEdBQWhDLEVBQXFDO1VBQ25DWixVQUFVLENBQUNJLE9BQVgsR0FBcUJDLElBQUksQ0FBQ0MsR0FBTCxFQUFyQjtRQUNEOztRQUVELElBQUkvSCxHQUFHLElBQUksQ0FBQ21JLGNBQVosRUFBNEI7VUFDMUIsT0FBTzFDLEVBQUUsQ0FBQyxJQUFELEVBQU8sQ0FBQ3pGLEdBQUcsSUFBSXNJLGdCQUFBLENBQVVDLGdCQUFWLENBQTJCLFNBQTNCLENBQVIsQ0FBUCxDQUFUO1FBQ0Q7O1FBRUQsSUFBSTtVQUNGLElBQUFDLHVCQUFBLEVBQWlCTCxjQUFqQixFQUFpQzVJLElBQWpDO1FBQ0QsQ0FGRCxDQUVFLE9BQU9TLEdBQVAsRUFBWTtVQUNaMEIsSUFBSSxDQUFDMUMsTUFBTCxDQUFZK0csS0FBWixDQUNFO1lBQ0UwQyxHQUFHLEVBQUUsS0FEUDtZQUVFekksR0FBRyxFQUFFQTtVQUZQLENBREYsRUFLRSw2REFMRjtVQU9BLE9BQU95RixFQUFFLENBQUMsSUFBRCxFQUFPLENBQUN6RixHQUFELENBQVAsQ0FBVDtRQUNEOztRQUVEZ0gsV0FBVyxDQUFDVSxRQUFaLENBQXFCSixNQUFNLENBQUNLLE1BQTVCLElBQXNDO1VBQ3BDTSxJQUFJLEVBQUVHLElBRDhCO1VBRXBDUCxPQUFPLEVBQUVDLElBQUksQ0FBQ0MsR0FBTDtRQUYyQixDQUF0QztRQUtBZixXQUFXLENBQUNMLElBQVosR0FBbUIsSUFBQStCLHNDQUFBLEVBQXlCMUIsV0FBekIsRUFBc0NtQixjQUF0QyxDQUFuQjtRQUVBLElBQUFRLHNDQUFBLEVBQTJCUixjQUFjLENBQUMxQixRQUExQyxFQUFvRGEsTUFBcEQ7O1FBRUEsSUFBSTtVQUNGLElBQUFzQiw0QkFBQSxFQUFjNUIsV0FBZCxFQUEyQm1CLGNBQTNCO1FBQ0QsQ0FGRCxDQUVFLE9BQU9uSSxHQUFQLEVBQVk7VUFDWjBCLElBQUksQ0FBQzFDLE1BQUwsQ0FBWStHLEtBQVosQ0FDRTtZQUNFMEMsR0FBRyxFQUFFLEtBRFA7WUFFRXpJLEdBQUcsRUFBRUE7VUFGUCxDQURGLEVBS0UsMERBTEY7VUFPQSxPQUFPeUYsRUFBRSxDQUFDLElBQUQsRUFBTyxDQUFDekYsR0FBRCxDQUFQLENBQVQ7UUFDRCxDQTFDMkUsQ0E0QzVFO1FBQ0E7OztRQUNBaUgsS0FBSyxHQUFHLElBQVI7UUFDQXhCLEVBQUU7TUFDSCxDQWhERDtJQWlERCxDQWpFSCxFQWtFRTtJQUNBLENBQUN6RixHQUFELEVBQWE2SSxhQUFiLEtBQThFO01BQzVFLElBQUFDLGVBQUEsRUFBTyxDQUFDOUksR0FBRCxJQUFRK0ksS0FBSyxDQUFDQyxPQUFOLENBQWNILGFBQWQsQ0FBZixFQUQ0RSxDQUc1RTtNQUNBOztNQUNBLElBQUksQ0FBQzVCLEtBQUwsRUFBWTtRQUNWLElBQUlnQyxrQkFBSjs7UUFDQSxLQUFLLElBQUlDLENBQUMsR0FBRyxDQUFiLEVBQWdCQSxDQUFDLEdBQUdMLGFBQWEsQ0FBQzlCLE1BQWxDLEVBQTBDbUMsQ0FBQyxFQUEzQyxFQUErQztVQUM3QyxJQUFJTCxhQUFhLENBQUNLLENBQUQsQ0FBakIsRUFBc0I7WUFDcEIsS0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHTixhQUFhLENBQUNLLENBQUQsQ0FBYixDQUFpQm5DLE1BQXJDLEVBQTZDb0MsQ0FBQyxFQUE5QyxFQUFrRDtjQUNoRCxJQUFJTixhQUFhLENBQUNLLENBQUQsQ0FBYixDQUFpQkMsQ0FBakIsQ0FBSixFQUF5QjtnQkFDdkIsTUFBTUMsSUFBSSxHQUFHUCxhQUFhLENBQUNLLENBQUQsQ0FBYixDQUFpQkMsQ0FBakIsRUFBb0JDLElBQWpDOztnQkFDQSxJQUFJQSxJQUFJLEtBQUssV0FBVCxJQUF3QkEsSUFBSSxLQUFLLGlCQUFqQyxJQUFzREEsSUFBSSxLQUFLLFlBQW5FLEVBQWlGO2tCQUMvRUgsa0JBQWtCLEdBQUcsSUFBckI7a0JBQ0E7Z0JBQ0Q7Y0FDRjtZQUNGO1VBQ0Y7UUFDRjs7UUFFRCxJQUFJQSxrQkFBSixFQUF3QjtVQUN0QixPQUFPeEosUUFBUSxDQUFDNkksZ0JBQUEsQ0FBVWUscUJBQVYsRUFBRCxFQUFvQyxJQUFwQyxFQUEwQ1IsYUFBMUMsQ0FBZjtRQUNEOztRQUNELE9BQU9wSixRQUFRLENBQUM2SSxnQkFBQSxDQUFVZ0IsV0FBVixDQUFzQkMsb0JBQUEsQ0FBVUMsVUFBaEMsQ0FBRCxFQUE4QyxJQUE5QyxFQUFvRFgsYUFBcEQsQ0FBZjtNQUNEOztNQUVELElBQUkzQixPQUFPLENBQUNILE1BQVIsS0FBbUIsQ0FBdkIsRUFBMEI7UUFDeEIsT0FBT3RILFFBQVEsQ0FBQyxJQUFELEVBQU91SCxXQUFQLENBQWY7TUFDRDs7TUFFRHRGLElBQUksQ0FBQ3hDLFlBQUwsQ0FBa0J1SyxjQUFsQixDQUFpQ2xLLElBQWpDLEVBQXVDeUgsV0FBdkMsRUFBb0QsT0FBT2hILEdBQVAsRUFBWTBKLGdCQUFaLEtBQXdEO1FBQzFHLElBQUkxSixHQUFKLEVBQVM7VUFDUCxPQUFPUCxRQUFRLENBQUNPLEdBQUQsQ0FBZjtRQUNELENBSHlHLENBSTFHO1FBQ0E7OztRQUNBLE1BQU0ySixZQUFxQixHQUFHLEVBQTlCLENBTjBHLENBTzFHOztRQUNBLEtBQUssTUFBTXJKLE1BQVgsSUFBcUJvQixJQUFJLENBQUN6QyxPQUExQixFQUFtQztVQUNqQyxJQUFJO1lBQ0Y7WUFDQTtZQUNBeUssZ0JBQWdCLEdBQUcsTUFBTXBKLE1BQU0sQ0FBQ3NKLGVBQVAsQ0FBdUJGLGdCQUF2QixDQUF6QjtVQUNELENBSkQsQ0FJRSxPQUFPMUosR0FBUCxFQUFZO1lBQ1oySixZQUFZLENBQUM5QyxJQUFiLENBQWtCN0csR0FBbEI7VUFDRDtRQUNGOztRQUNEUCxRQUFRLENBQUMsSUFBRCxFQUFPaUssZ0JBQVAsRUFBeUJ4SixlQUFBLENBQUUySixNQUFGLENBQVNoQixhQUFULEVBQXdCYyxZQUF4QixDQUF6QixDQUFSO01BQ0QsQ0FsQkQ7SUFtQkQsQ0FySEg7RUF1SEQ7RUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztFQUNTRywyQkFBMkIsQ0FBQ3JELFFBQUQsRUFBcUJhLE1BQXJCLEVBQTJDO0lBQzNFLEtBQUssTUFBTTRCLENBQVgsSUFBZ0J6QyxRQUFoQixFQUEwQjtNQUN4QixJQUFJbkIsTUFBTSxDQUFDeUUsU0FBUCxDQUFpQkMsY0FBakIsQ0FBZ0NDLElBQWhDLENBQXFDeEQsUUFBckMsRUFBK0N5QyxDQUEvQyxDQUFKLEVBQXVEO1FBQ3JELE1BQU1ySSxPQUFPLEdBQUc0RixRQUFRLENBQUN5QyxDQUFELENBQXhCLENBRHFELENBR3JEO1FBQ0E7O1FBQ0FySSxPQUFPLENBQUNxSixNQUFNLENBQUNDLEdBQVAsQ0FBVyxvQkFBWCxDQUFELENBQVAsR0FBNEM3QyxNQUFNLENBQUNLLE1BQW5EO01BQ0Q7SUFDRjtFQUNGOztBQXhrQnNDOztlQTJrQjFCaEosTyJ9
|
|
660
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTdG9yYWdlIiwiY29uc3RydWN0b3IiLCJjb25maWciLCJ1cGxpbmtzIiwic2V0dXBVcExpbmtzIiwibG9nZ2VyIiwiZmlsdGVycyIsImxvY2FsU3RvcmFnZSIsImluaXQiLCJMb2NhbFN0b3JhZ2UiLCJnZXRTZWNyZXQiLCJhZGRQYWNrYWdlIiwibmFtZSIsIm1ldGFkYXRhIiwiY2FsbGJhY2siLCJjaGVja1BhY2thZ2VMb2NhbCIsImNoZWNrUGFja2FnZVJlbW90ZSIsIl9pc0FsbG93UHVibGlzaE9mZmxpbmUiLCJfc3luY1VwbGlua3NNZXRhZGF0YSIsImJpbmQiLCJwdWJsaXNoUGFja2FnZSIsImVyciIsInB1Ymxpc2giLCJfIiwiaXNCb29sZWFuIiwiYWxsb3dfb2ZmbGluZSIsInJlYWRUb2tlbnMiLCJmaWx0ZXIiLCJzYXZlVG9rZW4iLCJ0b2tlbiIsImRlbGV0ZVRva2VuIiwidXNlciIsInRva2VuS2V5IiwiYWRkVmVyc2lvbiIsInZlcnNpb24iLCJ0YWciLCJtZXJnZVRhZ3MiLCJ0YWdIYXNoIiwiY2hhbmdlUGFja2FnZSIsInJldmlzaW9uIiwicmVtb3ZlUGFja2FnZSIsIlNlYXJjaCIsInJlbW92ZSIsInJlbW92ZVRhcmJhbGwiLCJmaWxlbmFtZSIsImFkZFRhcmJhbGwiLCJoYXNMb2NhbFRhcmJhbGwiLCJzZWxmIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJsb2NhbFN0cmVhbSIsImdldFRhcmJhbGwiLCJpc09wZW4iLCJvbiIsInN0YXR1cyIsIkhUVFBfU1RBVFVTIiwiTk9UX0ZPVU5EIiwiYWJvcnQiLCJyZWFkU3RyZWFtIiwiUmVhZFRhcmJhbGwiLCJlbWl0IiwiZXJyNDA0IiwiZ2V0UGFja2FnZU1ldGFkYXRhIiwiaW5mbyIsImlzTmlsIiwiX2Rpc3RmaWxlcyIsInNlcnZlRmlsZSIsInYiLCJwaXBlIiwiZmlsZSIsInVwbGluayIsInVwbGlua0lkIiwiaGFzUHJveHlUbyIsInBhY2thZ2VzIiwiUHJveHlTdG9yYWdlIiwidXJsIiwiY2FjaGUiLCJfYXV0b2dlbmVyYXRlZCIsInNhdmVzdHJlYW0iLCJvbl9vcGVuIiwicnN0cmVhbTIiLCJmZXRjaFRhcmJhbGwiLCJkb25lIiwid2FybiIsImZpbGVOYW1lIiwiZ2V0UGFja2FnZSIsIm9wdGlvbnMiLCJkYXRhIiwiSU5URVJOQUxfRVJST1IiLCJyZXEiLCJ1cGxpbmtzTG9vayIsImdldFBhY2thZ2VTeW5VcExpbmtzQ2FsbGJhY2siLCJyZXN1bHQiLCJ1cGxpbmtFcnJvcnMiLCJub3JtYWxpemVEaXN0VGFncyIsImNsZWFuVXBMaW5rc1JlZiIsImtlZXBVcExpbmtEYXRhIiwiX2F0dGFjaG1lbnRzIiwic2VhcmNoIiwic3RhcnRrZXkiLCJzZWFyY2hTdHJlYW0iLCJTdHJlYW0iLCJQYXNzVGhyb3VnaCIsIm9iamVjdE1vZGUiLCJhc3luYyIsImVhY2hTZXJpZXMiLCJPYmplY3QiLCJrZXlzIiwidXBfbmFtZSIsImNiIiwicXVlcnkiLCJsb2NhbCIsInVuZGVmaW5lZCIsInVwbGlua1N0cmVhbSIsImVuZCIsImVycm9yIiwibG9jYWxTZWFyY2hTdHJlYW0iLCJnZXRMb2NhbERhdGFiYXNlIiwic3RvcmFnZVBsdWdpbiIsImdldCIsImxvY2FscyIsIml0ZW1Qa2ciLCJwa2dNZXRhZGF0YSIsImxhdGVzdCIsIkRJU1RfVEFHUyIsInZlcnNpb25zIiwidGltZUxpc3QiLCJ0aW1lIiwidXNlcnMiLCJwdXNoIiwicGFja2FnZSIsImxlbmd0aCIsInBhY2thZ2VJbmZvIiwiZm91bmQiLCJ1cExpbmtzIiwiaGFzVG9Mb29rSW50b1VwbGlua3MiLCJnZW5lcmF0ZVBhY2thZ2VUZW1wbGF0ZSIsIm1hcCIsInVwTGluayIsIl9vcHRpb25zIiwiYXNzaWduIiwidXBMaW5rTWV0YSIsIl91cGxpbmtzIiwidXBuYW1lIiwiaXNPYmplY3QiLCJmZXRjaGVkIiwiRGF0ZSIsIm5vdyIsIm1heGFnZSIsImV0YWciLCJnZXRSZW1vdGVNZXRhZGF0YSIsInVwTGlua1Jlc3BvbnNlIiwiZVRhZyIsInJlbW90ZVN0YXR1cyIsIkVycm9yQ29kZSIsImdldEludGVybmFsRXJyb3IiLCJ2YWxpZGF0ZU1ldGFkYXRhIiwic3ViIiwibWVyZ2VVcGxpbmtUaW1lSW50b0xvY2FsIiwidXBkYXRlVmVyc2lvbnNIaWRkZW5VcExpbmsiLCJtZXJnZVZlcnNpb25zIiwidXBMaW5rc0Vycm9ycyIsImFzc2VydCIsIkFycmF5IiwiaXNBcnJheSIsInVwbGlua1RpbWVvdXRFcnJvciIsImkiLCJqIiwiY29kZSIsImdldFNlcnZpY2VVbmF2YWlsYWJsZSIsImdldE5vdEZvdW5kIiwiQVBJX0VSUk9SIiwiTk9fUEFDS0FHRSIsInVwZGF0ZVZlcnNpb25zIiwicGFja2FnZUpzb25Mb2NhbCIsImZpbHRlckVycm9ycyIsImZpbHRlcl9tZXRhZGF0YSIsImNvbmNhdCIsIl91cGRhdGVWZXJzaW9uc0hpZGRlblVwTGluayIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIlN5bWJvbCIsImZvciJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvc3RvcmFnZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgYXN5bmMsIHsgQXN5bmNSZXN1bHRBcnJheUNhbGxiYWNrIH0gZnJvbSAnYXN5bmMnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBTdHJlYW0gZnJvbSAnc3RyZWFtJztcblxuaW1wb3J0IHsgVmVyZGFjY2lvRXJyb3IgfSBmcm9tICdAdmVyZGFjY2lvL2NvbW1vbnMtYXBpJztcbmltcG9ydCB7IFJlYWRUYXJiYWxsIH0gZnJvbSAnQHZlcmRhY2Npby9zdHJlYW1zJztcbmltcG9ydCB7IENhbGxiYWNrLCBDb25maWcsIERpc3RGaWxlLCBJUmVhZFRhcmJhbGwsIElVcGxvYWRUYXJiYWxsLCBMb2dnZXIsIE1lcmdlVGFncywgUGFja2FnZSwgVmVyc2lvbiwgVmVyc2lvbnMgfSBmcm9tICdAdmVyZGFjY2lvL3R5cGVzJztcbmltcG9ydCB7IEdlbmVyaWNCb2R5LCBUb2tlbiwgVG9rZW5GaWx0ZXIgfSBmcm9tICdAdmVyZGFjY2lvL3R5cGVzJztcblxuaW1wb3J0IHsgSUdldFBhY2thZ2VPcHRpb25zLCBJUGx1Z2luRmlsdGVycywgSVByb3h5LCBJU3RvcmFnZSwgSVN0b3JhZ2VIYW5kbGVyLCBJU3luY1VwbGlua3MsIFByb3h5TGlzdCwgU3RyaW5nVmFsdWUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICcuLi9saWIvbG9nZ2VyJztcbmltcG9ydCB7IGhhc1Byb3h5VG8gfSBmcm9tICcuL2NvbmZpZy11dGlscyc7XG5pbXBvcnQgeyBBUElfRVJST1IsIERJU1RfVEFHUywgSFRUUF9TVEFUVVMgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgTG9jYWxTdG9yYWdlIGZyb20gJy4vbG9jYWwtc3RvcmFnZSc7XG5pbXBvcnQgeyBtZXJnZVZlcnNpb25zIH0gZnJvbSAnLi9tZXRhZGF0YS11dGlscyc7XG5pbXBvcnQgU2VhcmNoIGZyb20gJy4vc2VhcmNoJztcbmltcG9ydCB7IGNoZWNrUGFja2FnZUxvY2FsLCBjaGVja1BhY2thZ2VSZW1vdGUsIGNsZWFuVXBMaW5rc1JlZiwgZ2VuZXJhdGVQYWNrYWdlVGVtcGxhdGUsIG1lcmdlVXBsaW5rVGltZUludG9Mb2NhbCwgcHVibGlzaFBhY2thZ2UgfSBmcm9tICcuL3N0b3JhZ2UtdXRpbHMnO1xuaW1wb3J0IFByb3h5U3RvcmFnZSBmcm9tICcuL3VwLXN0b3JhZ2UnO1xuaW1wb3J0IHsgc2V0dXBVcExpbmtzLCB1cGRhdGVWZXJzaW9uc0hpZGRlblVwTGluayB9IGZyb20gJy4vdXBsaW5rLXV0aWwnO1xuaW1wb3J0IHsgRXJyb3JDb2RlLCBpc09iamVjdCwgbm9ybWFsaXplRGlzdFRhZ3MsIHZhbGlkYXRlTWV0YWRhdGEgfSBmcm9tICcuL3V0aWxzJztcblxuY2xhc3MgU3RvcmFnZSBpbXBsZW1lbnRzIElTdG9yYWdlSGFuZGxlciB7XG4gIHB1YmxpYyBsb2NhbFN0b3JhZ2U6IElTdG9yYWdlO1xuICBwdWJsaWMgY29uZmlnOiBDb25maWc7XG4gIHB1YmxpYyBsb2dnZXI6IExvZ2dlcjtcbiAgcHVibGljIHVwbGlua3M6IFByb3h5TGlzdDtcbiAgcHVibGljIGZpbHRlcnM6IElQbHVnaW5GaWx0ZXJzO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb25maWc6IENvbmZpZykge1xuICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuICAgIHRoaXMudXBsaW5rcyA9IHNldHVwVXBMaW5rcyhjb25maWcpO1xuICAgIHRoaXMubG9nZ2VyID0gbG9nZ2VyO1xuICAgIHRoaXMuZmlsdGVycyA9IFtdO1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICB0aGlzLmxvY2FsU3RvcmFnZSA9IG51bGw7XG4gIH1cblxuICBwdWJsaWMgaW5pdChjb25maWc6IENvbmZpZywgZmlsdGVyczogSVBsdWdpbkZpbHRlcnMgPSBbXSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgdGhpcy5maWx0ZXJzID0gZmlsdGVycztcbiAgICB0aGlzLmxvY2FsU3RvcmFnZSA9IG5ldyBMb2NhbFN0b3JhZ2UodGhpcy5jb25maWcsIGxvZ2dlcik7XG5cbiAgICByZXR1cm4gdGhpcy5sb2NhbFN0b3JhZ2UuZ2V0U2VjcmV0KGNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogIEFkZCBhIHtuYW1lfSBwYWNrYWdlIHRvIGEgc3lzdGVtXG4gICBGdW5jdGlvbiBjaGVja3MgaWYgcGFja2FnZSB3aXRoIHRoZSBzYW1lIG5hbWUgaXMgYXZhaWxhYmxlIGZyb20gdXBsaW5rcy5cbiAgIElmIGl0IGlzbid0LCB3ZSBjcmVhdGUgcGFja2FnZSBsb2NhbGx5XG4gICBVc2VkIHN0b3JhZ2VzOiBsb2NhbCAod3JpdGUpICYmIHVwbGlua3NcbiAgICovXG4gIHB1YmxpYyBhc3luYyBhZGRQYWNrYWdlKG5hbWU6IHN0cmluZywgbWV0YWRhdGE6IGFueSwgY2FsbGJhY2s6IEZ1bmN0aW9uKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGNoZWNrUGFja2FnZUxvY2FsKG5hbWUsIHRoaXMubG9jYWxTdG9yYWdlKTtcbiAgICAgIGF3YWl0IGNoZWNrUGFja2FnZVJlbW90ZShuYW1lLCB0aGlzLl9pc0FsbG93UHVibGlzaE9mZmxpbmUoKSwgdGhpcy5fc3luY1VwbGlua3NNZXRhZGF0YS5iaW5kKHRoaXMpKTtcbiAgICAgIGF3YWl0IHB1Ymxpc2hQYWNrYWdlKG5hbWUsIG1ldGFkYXRhLCB0aGlzLmxvY2FsU3RvcmFnZSBhcyBJU3RvcmFnZSk7XG4gICAgICBjYWxsYmFjaygpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY2FsbGJhY2soZXJyKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc0FsbG93UHVibGlzaE9mZmxpbmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiB0aGlzLmNvbmZpZy5wdWJsaXNoICE9PSAndW5kZWZpbmVkJyAmJiBfLmlzQm9vbGVhbih0aGlzLmNvbmZpZy5wdWJsaXNoLmFsbG93X29mZmxpbmUpICYmIHRoaXMuY29uZmlnLnB1Ymxpc2guYWxsb3dfb2ZmbGluZTtcbiAgfVxuXG4gIHB1YmxpYyByZWFkVG9rZW5zKGZpbHRlcjogVG9rZW5GaWx0ZXIpOiBQcm9taXNlPFRva2VuW10+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbFN0b3JhZ2UucmVhZFRva2VucyhmaWx0ZXIpO1xuICB9XG5cbiAgcHVibGljIHNhdmVUb2tlbih0b2tlbjogVG9rZW4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbFN0b3JhZ2Uuc2F2ZVRva2VuKHRva2VuKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGVUb2tlbih1c2VyOiBzdHJpbmcsIHRva2VuS2V5OiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmxvY2FsU3RvcmFnZS5kZWxldGVUb2tlbih1c2VyLCB0b2tlbktleSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgbmV3IHZlcnNpb24gb2YgcGFja2FnZSB7bmFtZX0gdG8gYSBzeXN0ZW1cbiAgIFVzZWQgc3RvcmFnZXM6IGxvY2FsICh3cml0ZSlcbiAgICovXG4gIHB1YmxpYyBhZGRWZXJzaW9uKG5hbWU6IHN0cmluZywgdmVyc2lvbjogc3RyaW5nLCBtZXRhZGF0YTogVmVyc2lvbiwgdGFnOiBTdHJpbmdWYWx1ZSwgY2FsbGJhY2s6IENhbGxiYWNrKTogdm9pZCB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2UuYWRkVmVyc2lvbihuYW1lLCB2ZXJzaW9uLCBtZXRhZGF0YSwgdGFnLCBjYWxsYmFjayk7XG4gIH1cblxuICAvKipcbiAgICogVGFncyBhIHBhY2thZ2UgdmVyc2lvbiB3aXRoIGEgcHJvdmlkZWQgdGFnXG4gICBVc2VkIHN0b3JhZ2VzOiBsb2NhbCAod3JpdGUpXG4gICAqL1xuICBwdWJsaWMgbWVyZ2VUYWdzKG5hbWU6IHN0cmluZywgdGFnSGFzaDogTWVyZ2VUYWdzLCBjYWxsYmFjazogQ2FsbGJhY2spOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5tZXJnZVRhZ3MobmFtZSwgdGFnSGFzaCwgY2FsbGJhY2spO1xuICB9XG5cbiAgLyoqXG4gICAqIENoYW5nZSBhbiBleGlzdGluZyBwYWNrYWdlIChpLmUuIHVucHVibGlzaCBvbmUgdmVyc2lvbilcbiAgIEZ1bmN0aW9uIGNoYW5nZXMgYSBwYWNrYWdlIGluZm8gZnJvbSBsb2NhbCBzdG9yYWdlIGFuZCBhbGwgdXBsaW5rcyB3aXRoIHdyaXRlIGFjY2Vzcy4vXG4gICBVc2VkIHN0b3JhZ2VzOiBsb2NhbCAod3JpdGUpXG4gICAqL1xuICBwdWJsaWMgY2hhbmdlUGFja2FnZShuYW1lOiBzdHJpbmcsIG1ldGFkYXRhOiBQYWNrYWdlLCByZXZpc2lvbjogc3RyaW5nLCBjYWxsYmFjazogQ2FsbGJhY2spOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5jaGFuZ2VQYWNrYWdlKG5hbWUsIG1ldGFkYXRhLCByZXZpc2lvbiwgY2FsbGJhY2spO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhIHBhY2thZ2UgZnJvbSBhIHN5c3RlbVxuICAgRnVuY3Rpb24gcmVtb3ZlcyBhIHBhY2thZ2UgZnJvbSBsb2NhbCBzdG9yYWdlXG4gICBVc2VkIHN0b3JhZ2VzOiBsb2NhbCAod3JpdGUpXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlUGFja2FnZShuYW1lOiBzdHJpbmcsIGNhbGxiYWNrOiBDYWxsYmFjayk6IHZvaWQge1xuICAgIHRoaXMubG9jYWxTdG9yYWdlLnJlbW92ZVBhY2thZ2UobmFtZSwgY2FsbGJhY2spO1xuICAgIC8vIHVwZGF0ZSB0aGUgaW5kZXhlclxuICAgIFNlYXJjaC5yZW1vdmUobmFtZSk7XG4gIH1cblxuICAvKipcbiAgIFJlbW92ZSBhIHRhcmJhbGwgZnJvbSBhIHN5c3RlbVxuICAgRnVuY3Rpb24gcmVtb3ZlcyBhIHRhcmJhbGwgZnJvbSBsb2NhbCBzdG9yYWdlLlxuICAgVGFyYmFsbCBpbiBxdWVzdGlvbiBzaG91bGQgbm90IGJlIGxpbmtlZCB0byBpbiBhbnkgZXhpc3RpbmdcbiAgIHZlcnNpb25zLCBpLmUuIHBhY2thZ2UgdmVyc2lvbiBzaG91bGQgYmUgdW5wdWJsaXNoZWQgZmlyc3QuXG4gICBVc2VkIHN0b3JhZ2U6IGxvY2FsICh3cml0ZSlcbiAgICovXG4gIHB1YmxpYyByZW1vdmVUYXJiYWxsKG5hbWU6IHN0cmluZywgZmlsZW5hbWU6IHN0cmluZywgcmV2aXNpb246IHN0cmluZywgY2FsbGJhY2s6IENhbGxiYWNrKTogdm9pZCB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlVGFyYmFsbChuYW1lLCBmaWxlbmFtZSwgcmV2aXNpb24sIGNhbGxiYWNrKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGxvYWQgYSB0YXJiYWxsIGZvciB7bmFtZX0gcGFja2FnZVxuICAgRnVuY3Rpb24gaXMgc3luY2hyb25vdXMgYW5kIHJldHVybnMgYSBXcml0YWJsZVN0cmVhbVxuICAgVXNlZCBzdG9yYWdlczogbG9jYWwgKHdyaXRlKVxuICAgKi9cbiAgcHVibGljIGFkZFRhcmJhbGwobmFtZTogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nKTogSVVwbG9hZFRhcmJhbGwge1xuICAgIHJldHVybiB0aGlzLmxvY2FsU3RvcmFnZS5hZGRUYXJiYWxsKG5hbWUsIGZpbGVuYW1lKTtcbiAgfVxuXG4gIHB1YmxpYyBoYXNMb2NhbFRhcmJhbGwobmFtZTogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPGJvb2xlYW4+KChyZXNvbHZlLCByZWplY3QpOiB2b2lkID0+IHtcbiAgICAgIGxldCBsb2NhbFN0cmVhbTogYW55ID0gc2VsZi5sb2NhbFN0b3JhZ2UuZ2V0VGFyYmFsbChuYW1lLCBmaWxlbmFtZSk7XG4gICAgICBsZXQgaXNPcGVuID0gZmFsc2U7XG4gICAgICBsb2NhbFN0cmVhbS5vbignZXJyb3InLCAoZXJyKTogYW55ID0+IHtcbiAgICAgICAgaWYgKGlzT3BlbiB8fCBlcnIuc3RhdHVzICE9PSBIVFRQX1NUQVRVUy5OT1RfRk9VTkQpIHtcbiAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBsb2NhbCByZXBvcnRlZCA0MDQgb3IgcmVxdWVzdCB3YXMgYWJvcnRlZCBhbHJlYWR5XG4gICAgICAgIGlmIChsb2NhbFN0cmVhbSkge1xuICAgICAgICAgIGxvY2FsU3RyZWFtLmFib3J0KCk7XG4gICAgICAgICAgbG9jYWxTdHJlYW0gPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUoZmFsc2UpO1xuICAgICAgfSk7XG4gICAgICBsb2NhbFN0cmVhbS5vbignb3BlbicsIGZ1bmN0aW9uICgpOiB2b2lkIHtcbiAgICAgICAgaXNPcGVuID0gdHJ1ZTtcbiAgICAgICAgbG9jYWxTdHJlYW0uYWJvcnQoKTtcbiAgICAgICAgbG9jYWxTdHJlYW0gPSBudWxsO1xuICAgICAgICByZXNvbHZlKHRydWUpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgIEdldCBhIHRhcmJhbGwgZnJvbSBhIHN0b3JhZ2UgZm9yIHtuYW1lfSBwYWNrYWdlXG4gICBGdW5jdGlvbiBpcyBzeW5jaHJvbm91cyBhbmQgcmV0dXJucyBhIFJlYWRhYmxlU3RyZWFtXG4gICBGdW5jdGlvbiB0cmllcyB0byByZWFkIHRhcmJhbGwgbG9jYWxseSwgaWYgaXQgZmFpbHMgdGhlbiBpdCByZWFkcyBwYWNrYWdlXG4gICBpbmZvcm1hdGlvbiBpbiBvcmRlciB0byBmaWd1cmUgb3V0IHdoZXJlIHdlIGNhbiBnZXQgdGhpcyB0YXJiYWxsIGZyb21cbiAgIFVzZWQgc3RvcmFnZXM6IGxvY2FsIHx8IHVwbGluayAoanVzdCBvbmUpXG4gICAqL1xuICBwdWJsaWMgZ2V0VGFyYmFsbChuYW1lOiBzdHJpbmcsIGZpbGVuYW1lOiBzdHJpbmcpOiBJUmVhZFRhcmJhbGwge1xuICAgIGNvbnN0IHJlYWRTdHJlYW0gPSBuZXcgUmVhZFRhcmJhbGwoe30pO1xuICAgIHJlYWRTdHJlYW0uYWJvcnQgPSBmdW5jdGlvbiAoKSB7fTtcblxuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuXG4gICAgLy8gaWYgc29tZW9uZSByZXF1ZXN0aW5nIHRhcmJhbGwsIGl0IG1lYW5zIHRoYXQgd2Ugc2hvdWxkIGFscmVhZHkgaGF2ZSBzb21lXG4gICAgLy8gaW5mb3JtYXRpb24gYWJvdXQgaXQsIHNvIGZldGNoaW5nIHBhY2thZ2UgaW5mbyBpcyB1bm5lY2Vzc2FyeVxuXG4gICAgLy8gdHJ5aW5nIGxvY2FsIGZpcnN0XG4gICAgLy8gZmxvdzogc2hvdWxkIGJlIElSZWFkVGFyYmFsbFxuICAgIGxldCBsb2NhbFN0cmVhbTogYW55ID0gc2VsZi5sb2NhbFN0b3JhZ2UuZ2V0VGFyYmFsbChuYW1lLCBmaWxlbmFtZSk7XG4gICAgbGV0IGlzT3BlbiA9IGZhbHNlO1xuICAgIGxvY2FsU3RyZWFtLm9uKCdlcnJvcicsIChlcnIpOiBhbnkgPT4ge1xuICAgICAgaWYgKGlzT3BlbiB8fCBlcnIuc3RhdHVzICE9PSBIVFRQX1NUQVRVUy5OT1RfRk9VTkQpIHtcbiAgICAgICAgcmV0dXJuIHJlYWRTdHJlYW0uZW1pdCgnZXJyb3InLCBlcnIpO1xuICAgICAgfVxuXG4gICAgICAvLyBsb2NhbCByZXBvcnRlZCA0MDRcbiAgICAgIGNvbnN0IGVycjQwNCA9IGVycjtcbiAgICAgIGxvY2FsU3RyZWFtLmFib3J0KCk7XG4gICAgICBsb2NhbFN0cmVhbSA9IG51bGw7IC8vIHdlIGZvcmNlIGZvciBnYXJiYWdlIGNvbGxlY3RvclxuICAgICAgc2VsZi5sb2NhbFN0b3JhZ2UuZ2V0UGFja2FnZU1ldGFkYXRhKG5hbWUsIChlcnIsIGluZm86IFBhY2thZ2UpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKF8uaXNOaWwoZXJyKSAmJiBpbmZvLl9kaXN0ZmlsZXMgJiYgXy5pc05pbChpbmZvLl9kaXN0ZmlsZXNbZmlsZW5hbWVdKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAvLyBpbmZvcm1hdGlvbiBhYm91dCB0aGlzIGZpbGUgZXhpc3RzIGxvY2FsbHlcbiAgICAgICAgICBzZXJ2ZUZpbGUoaW5mby5fZGlzdGZpbGVzW2ZpbGVuYW1lXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gd2Uga25vdyBub3RoaW5nIGFib3V0IHRoaXMgZmlsZSwgdHJ5aW5nIHRvIGdldCBpbmZvcm1hdGlvbiBlbHNld2hlcmVcbiAgICAgICAgICBzZWxmLl9zeW5jVXBsaW5rc01ldGFkYXRhKG5hbWUsIGluZm8sIHt9LCAoZXJyLCBpbmZvOiBQYWNrYWdlKTogYW55ID0+IHtcbiAgICAgICAgICAgIGlmIChfLmlzTmlsKGVycikgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgIHJldHVybiByZWFkU3RyZWFtLmVtaXQoJ2Vycm9yJywgZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChfLmlzTmlsKGluZm8uX2Rpc3RmaWxlcykgfHwgXy5pc05pbChpbmZvLl9kaXN0ZmlsZXNbZmlsZW5hbWVdKSkge1xuICAgICAgICAgICAgICByZXR1cm4gcmVhZFN0cmVhbS5lbWl0KCdlcnJvcicsIGVycjQwNCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzZXJ2ZUZpbGUoaW5mby5fZGlzdGZpbGVzW2ZpbGVuYW1lXSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGxvY2FsU3RyZWFtLm9uKCdjb250ZW50LWxlbmd0aCcsIGZ1bmN0aW9uICh2KTogdm9pZCB7XG4gICAgICByZWFkU3RyZWFtLmVtaXQoJ2NvbnRlbnQtbGVuZ3RoJywgdik7XG4gICAgfSk7XG4gICAgbG9jYWxTdHJlYW0ub24oJ29wZW4nLCBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICBpc09wZW4gPSB0cnVlO1xuICAgICAgbG9jYWxTdHJlYW0ucGlwZShyZWFkU3RyZWFtKTtcbiAgICB9KTtcbiAgICByZXR1cm4gcmVhZFN0cmVhbTtcblxuICAgIC8qKlxuICAgICAqIEZldGNoIGFuZCBjYWNoZSBsb2NhbC9yZW1vdGUgcGFja2FnZXMuXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGZpbGUgZGVmaW5lIHRoZSBwYWNrYWdlIHNoYXBlXG4gICAgICovXG4gICAgZnVuY3Rpb24gc2VydmVGaWxlKGZpbGU6IERpc3RGaWxlKTogdm9pZCB7XG4gICAgICBsZXQgdXBsaW5rOiBhbnkgPSBudWxsO1xuXG4gICAgICBmb3IgKGNvbnN0IHVwbGlua0lkIGluIHNlbGYudXBsaW5rcykge1xuICAgICAgICBpZiAoaGFzUHJveHlUbyhuYW1lLCB1cGxpbmtJZCwgc2VsZi5jb25maWcucGFja2FnZXMpKSB7XG4gICAgICAgICAgdXBsaW5rID0gc2VsZi51cGxpbmtzW3VwbGlua0lkXTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodXBsaW5rID09IG51bGwpIHtcbiAgICAgICAgdXBsaW5rID0gbmV3IFByb3h5U3RvcmFnZShcbiAgICAgICAgICB7XG4gICAgICAgICAgICB1cmw6IGZpbGUudXJsLFxuICAgICAgICAgICAgY2FjaGU6IHRydWUsXG4gICAgICAgICAgICBfYXV0b2dlbmVyYXRlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNlbGYuY29uZmlnXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGxldCBzYXZlc3RyZWFtOiBJVXBsb2FkVGFyYmFsbCB8IG51bGwgPSBudWxsO1xuICAgICAgaWYgKHVwbGluay5jb25maWcuY2FjaGUpIHtcbiAgICAgICAgc2F2ZXN0cmVhbSA9IHNlbGYubG9jYWxTdG9yYWdlLmFkZFRhcmJhbGwobmFtZSwgZmlsZW5hbWUpO1xuICAgICAgfVxuXG4gICAgICBsZXQgb25fb3BlbiA9IGZ1bmN0aW9uICgpOiB2b2lkIHtcbiAgICAgICAgLy8gcHJldmVudCBpdCBmcm9tIGJlaW5nIGNhbGxlZCB0d2ljZVxuICAgICAgICBvbl9vcGVuID0gZnVuY3Rpb24gKCkge307XG4gICAgICAgIGNvbnN0IHJzdHJlYW0yID0gdXBsaW5rLmZldGNoVGFyYmFsbChmaWxlLnVybCk7XG4gICAgICAgIHJzdHJlYW0yLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIpOiB2b2lkIHtcbiAgICAgICAgICBpZiAoc2F2ZXN0cmVhbSkge1xuICAgICAgICAgICAgc2F2ZXN0cmVhbS5hYm9ydCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzYXZlc3RyZWFtID0gbnVsbDtcbiAgICAgICAgICByZWFkU3RyZWFtLmVtaXQoJ2Vycm9yJywgZXJyKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJzdHJlYW0yLm9uKCdlbmQnLCBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICAgICAgaWYgKHNhdmVzdHJlYW0pIHtcbiAgICAgICAgICAgIHNhdmVzdHJlYW0uZG9uZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcnN0cmVhbTIub24oJ2NvbnRlbnQtbGVuZ3RoJywgZnVuY3Rpb24gKHYpOiB2b2lkIHtcbiAgICAgICAgICByZWFkU3RyZWFtLmVtaXQoJ2NvbnRlbnQtbGVuZ3RoJywgdik7XG4gICAgICAgICAgaWYgKHNhdmVzdHJlYW0pIHtcbiAgICAgICAgICAgIHNhdmVzdHJlYW0uZW1pdCgnY29udGVudC1sZW5ndGgnLCB2KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByc3RyZWFtMi5waXBlKHJlYWRTdHJlYW0pO1xuICAgICAgICBpZiAoc2F2ZXN0cmVhbSkge1xuICAgICAgICAgIHJzdHJlYW0yLnBpcGUoc2F2ZXN0cmVhbSk7XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGlmIChzYXZlc3RyZWFtKSB7XG4gICAgICAgIHNhdmVzdHJlYW0ub24oJ29wZW4nLCBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICAgICAgb25fb3BlbigpO1xuICAgICAgICB9KTtcblxuICAgICAgICBzYXZlc3RyZWFtLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIpOiB2b2lkIHtcbiAgICAgICAgICBzZWxmLmxvZ2dlci53YXJuKHsgZXJyOiBlcnIsIGZpbGVOYW1lOiBmaWxlIH0sICdlcnJvciBzYXZpbmcgZmlsZSBAe2ZpbGVOYW1lfTogQHtlcnIubWVzc2FnZX1cXG5Ae2Vyci5zdGFja30nKTtcbiAgICAgICAgICBpZiAoc2F2ZXN0cmVhbSkge1xuICAgICAgICAgICAgc2F2ZXN0cmVhbS5hYm9ydCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzYXZlc3RyZWFtID0gbnVsbDtcbiAgICAgICAgICBvbl9vcGVuKCk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb25fb3BlbigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgUmV0cmlldmUgYSBwYWNrYWdlIG1ldGFkYXRhIGZvciB7bmFtZX0gcGFja2FnZVxuICAgRnVuY3Rpb24gaW52b2tlcyBsb2NhbFN0b3JhZ2UuZ2V0UGFja2FnZSBhbmQgdXBsaW5rLmdldF9wYWNrYWdlIGZvciBldmVyeVxuICAgdXBsaW5rIHdpdGggcHJveHlfYWNjZXNzIHJpZ2h0cyBhZ2FpbnN0IHtuYW1lfSBhbmQgY29tYmluZXMgcmVzdWx0c1xuICAgaW50byBvbmUganNvbiBvYmplY3RcbiAgIFVzZWQgc3RvcmFnZXM6IGxvY2FsICYmIHVwbGluayAocHJveHlfYWNjZXNzKVxuXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBvcHRpb25zXG4gICAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBvcHRpb25zLm5hbWUgUGFja2FnZSBOYW1lXG4gICAqIEBwcm9wZXJ0eSB7b2JqZWN0fSAgb3B0aW9ucy5yZXEgRXhwcmVzcyBgcmVxYCBvYmplY3RcbiAgICogQHByb3BlcnR5IHtib29sZWFufSBvcHRpb25zLmtlZXBVcExpbmtEYXRhIGtlZXAgdXAgbGluayBpbmZvIGluIHBhY2thZ2UgbWV0YSwgbGFzdCB1cGRhdGUsIGV0Yy5cbiAgICogQHByb3BlcnR5IHtmdW5jdGlvbn0gb3B0aW9ucy5jYWxsYmFjayBDYWxsYmFjayBmb3IgcmVjZWl2ZSBkYXRhXG4gICAqL1xuICBwdWJsaWMgZ2V0UGFja2FnZShvcHRpb25zOiBJR2V0UGFja2FnZU9wdGlvbnMpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5nZXRQYWNrYWdlTWV0YWRhdGEob3B0aW9ucy5uYW1lLCAoZXJyLCBkYXRhKTogdm9pZCA9PiB7XG4gICAgICBpZiAoZXJyICYmICghZXJyLnN0YXR1cyB8fCBlcnIuc3RhdHVzID49IEhUVFBfU1RBVFVTLklOVEVSTkFMX0VSUk9SKSkge1xuICAgICAgICAvLyByZXBvcnQgaW50ZXJuYWwgZXJyb3JzIHJpZ2h0IGF3YXlcbiAgICAgICAgcmV0dXJuIG9wdGlvbnMuY2FsbGJhY2soZXJyKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fc3luY1VwbGlua3NNZXRhZGF0YShcbiAgICAgICAgb3B0aW9ucy5uYW1lLFxuICAgICAgICBkYXRhLFxuICAgICAgICB7IHJlcTogb3B0aW9ucy5yZXEsIHVwbGlua3NMb29rOiBvcHRpb25zLnVwbGlua3NMb29rIH0sXG4gICAgICAgIGZ1bmN0aW9uIGdldFBhY2thZ2VTeW5VcExpbmtzQ2FsbGJhY2soZXJyLCByZXN1bHQ6IFBhY2thZ2UsIHVwbGlua0Vycm9ycyk6IHZvaWQge1xuICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgIHJldHVybiBvcHRpb25zLmNhbGxiYWNrKGVycik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbm9ybWFsaXplRGlzdFRhZ3MoY2xlYW5VcExpbmtzUmVmKG9wdGlvbnMua2VlcFVwTGlua0RhdGEsIHJlc3VsdCkpO1xuXG4gICAgICAgICAgLy8gbnBtIGNhbiB0aHJvdyBpZiB0aGlzIGZpZWxkIGRvZXNuJ3QgZXhpc3RcbiAgICAgICAgICByZXN1bHQuX2F0dGFjaG1lbnRzID0ge307XG5cbiAgICAgICAgICBvcHRpb25zLmNhbGxiYWNrKG51bGwsIHJlc3VsdCwgdXBsaW5rRXJyb3JzKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgUmV0cmlldmUgcmVtb3RlIGFuZCBsb2NhbCBwYWNrYWdlcyBtb3JlIHJlY2VudCB0aGFuIHtzdGFydGtleX1cbiAgIEZ1bmN0aW9uIHN0cmVhbXMgYWxsIHBhY2thZ2VzIGZyb20gYWxsIHVwbGlua3MgZmlyc3QsIGFuZCB0aGVuXG4gICBsb2NhbCBwYWNrYWdlcy5cbiAgIE5vdGUgdGhhdCBsb2NhbCBwYWNrYWdlcyBjb3VsZCBvdmVycmlkZSByZWdpc3RyeSBvbmVzIGp1c3QgYmVjYXVzZVxuICAgdGhleSBhcHBlYXIgaW4gSlNPTiBsYXN0LiBUaGF0J3MgYSB0cmFkZS1vZmYgd2UgbWFrZSB0byBhdm9pZFxuICAgbWVtb3J5IGlzc3Vlcy5cbiAgIFVzZWQgc3RvcmFnZXM6IGxvY2FsICYmIHVwbGluayAocHJveHlfYWNjZXNzKVxuICAgKiBAcGFyYW0geyp9IHN0YXJ0a2V5XG4gICAqIEBwYXJhbSB7Kn0gb3B0aW9uc1xuICAgKiBAcmV0dXJuIHtTdHJlYW19XG4gICAqL1xuICBwdWJsaWMgc2VhcmNoKHN0YXJ0a2V5OiBzdHJpbmcsIG9wdGlvbnM6IGFueSk6IElSZWFkVGFyYmFsbCB7XG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgY29uc3Qgc2VhcmNoU3RyZWFtOiBhbnkgPSBuZXcgU3RyZWFtLlBhc3NUaHJvdWdoKHsgb2JqZWN0TW9kZTogdHJ1ZSB9KTtcbiAgICBhc3luYy5lYWNoU2VyaWVzKFxuICAgICAgT2JqZWN0LmtleXModGhpcy51cGxpbmtzKSxcbiAgICAgIGZ1bmN0aW9uICh1cF9uYW1lLCBjYik6IHZvaWQge1xuICAgICAgICAvLyBzaG9ydGN1dDogaWYgYGxvY2FsPTFgIGlzIHN1cHBsaWVkLCBkb24ndCBjYWxsIHVwbGlua3NcbiAgICAgICAgaWYgKG9wdGlvbnMucmVxPy5xdWVyeT8ubG9jYWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiBjYigpO1xuICAgICAgICB9XG4gICAgICAgIGxvZ2dlci5pbmZvKGBzZWFyY2ggZm9yIHVwbGluayAke3VwX25hbWV9YCk7XG4gICAgICAgIC8vIHNlYXJjaCBieSBrZXl3b3JkIGZvciBlYWNoIHVwbGlua1xuICAgICAgICBjb25zdCB1cGxpbmtTdHJlYW06IElVcGxvYWRUYXJiYWxsID0gc2VsZi51cGxpbmtzW3VwX25hbWVdLnNlYXJjaChvcHRpb25zKTtcbiAgICAgICAgLy8gam9pbiB1cGxpbmsgc3RyZWFtIHdpdGggc3RyZWFtcyBQYXNzVGhyb3VnaFxuICAgICAgICB1cGxpbmtTdHJlYW0ucGlwZShzZWFyY2hTdHJlYW0sIHsgZW5kOiBmYWxzZSB9KTtcbiAgICAgICAgdXBsaW5rU3RyZWFtLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIpOiB2b2lkIHtcbiAgICAgICAgICBzZWxmLmxvZ2dlci5lcnJvcih7IGVycjogZXJyIH0sICd1cGxpbmsgZXJyb3I6IEB7ZXJyLm1lc3NhZ2V9Jyk7XG4gICAgICAgICAgY2IoKTtcbiAgICAgICAgICAvLyB0byBhdm9pZCBjYWxsIGNhbGxiYWNrIG1vcmUgdGhhbiBvbmNlXG4gICAgICAgICAgY2IgPSBmdW5jdGlvbiAoKTogdm9pZCB7fTtcbiAgICAgICAgfSk7XG4gICAgICAgIHVwbGlua1N0cmVhbS5vbignZW5kJywgZnVuY3Rpb24gKCk6IHZvaWQge1xuICAgICAgICAgIGNiKCk7XG4gICAgICAgICAgLy8gdG8gYXZvaWQgY2FsbCBjYWxsYmFjayBtb3JlIHRoYW4gb25jZVxuICAgICAgICAgIGNiID0gZnVuY3Rpb24gKCk6IHZvaWQge307XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHNlYXJjaFN0cmVhbS5hYm9ydCA9IGZ1bmN0aW9uICgpOiB2b2lkIHtcbiAgICAgICAgICBpZiAodXBsaW5rU3RyZWFtLmFib3J0KSB7XG4gICAgICAgICAgICB1cGxpbmtTdHJlYW0uYWJvcnQoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY2IoKTtcbiAgICAgICAgICAvLyB0byBhdm9pZCBjYWxsIGNhbGxiYWNrIG1vcmUgdGhhbiBvbmNlXG4gICAgICAgICAgY2IgPSBmdW5jdGlvbiAoKTogdm9pZCB7fTtcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgICAvLyBleGVjdXRlZCBhZnRlciBhbGwgc2VyaWVzXG4gICAgICBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICAgIC8vIGF0dGFjaCBhIGxvY2FsIHNlYXJjaCByZXN1bHRzXG4gICAgICAgIGNvbnN0IGxvY2FsU2VhcmNoU3RyZWFtOiBJUmVhZFRhcmJhbGwgPSBzZWxmLmxvY2FsU3RvcmFnZS5zZWFyY2goc3RhcnRrZXksIG9wdGlvbnMpO1xuICAgICAgICBzZWFyY2hTdHJlYW0uYWJvcnQgPSBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICAgICAgbG9jYWxTZWFyY2hTdHJlYW0uYWJvcnQoKTtcbiAgICAgICAgfTtcbiAgICAgICAgbG9jYWxTZWFyY2hTdHJlYW0ucGlwZShzZWFyY2hTdHJlYW0sIHsgZW5kOiB0cnVlIH0pO1xuICAgICAgICBsb2NhbFNlYXJjaFN0cmVhbS5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyOiBWZXJkYWNjaW9FcnJvcik6IHZvaWQge1xuICAgICAgICAgIHNlbGYubG9nZ2VyLmVycm9yKHsgZXJyOiBlcnIgfSwgJ3NlYXJjaCBlcnJvcjogQHtlcnIubWVzc2FnZX0nKTtcbiAgICAgICAgICBzZWFyY2hTdHJlYW0uZW5kKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICk7XG5cbiAgICByZXR1cm4gc2VhcmNoU3RyZWFtO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIG9ubHkgcHJpdmF0ZSBsb2NhbCBwYWNrYWdlc1xuICAgKiBAcGFyYW0geyp9IGNhbGxiYWNrXG4gICAqL1xuICBwdWJsaWMgZ2V0TG9jYWxEYXRhYmFzZShjYWxsYmFjazogQ2FsbGJhY2spOiB2b2lkIHtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5zdG9yYWdlUGx1Z2luLmdldCgoZXJyLCBsb2NhbHMpOiB2b2lkID0+IHtcbiAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgY2FsbGJhY2soZXJyKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcGFja2FnZXM6IFZlcnNpb25bXSA9IFtdO1xuICAgICAgY29uc3QgZ2V0UGFja2FnZSA9IGZ1bmN0aW9uIChpdGVtUGtnKTogdm9pZCB7XG4gICAgICAgIHNlbGYubG9jYWxTdG9yYWdlLmdldFBhY2thZ2VNZXRhZGF0YShsb2NhbHNbaXRlbVBrZ10sIGZ1bmN0aW9uIChlcnIsIHBrZ01ldGFkYXRhOiBQYWNrYWdlKTogdm9pZCB7XG4gICAgICAgICAgaWYgKF8uaXNOaWwoZXJyKSkge1xuICAgICAgICAgICAgY29uc3QgbGF0ZXN0ID0gcGtnTWV0YWRhdGFbRElTVF9UQUdTXS5sYXRlc3Q7XG4gICAgICAgICAgICBpZiAobGF0ZXN0ICYmIHBrZ01ldGFkYXRhLnZlcnNpb25zW2xhdGVzdF0pIHtcbiAgICAgICAgICAgICAgY29uc3QgdmVyc2lvbjogVmVyc2lvbiA9IHBrZ01ldGFkYXRhLnZlcnNpb25zW2xhdGVzdF07XG4gICAgICAgICAgICAgIGNvbnN0IHRpbWVMaXN0ID0gcGtnTWV0YWRhdGEudGltZSBhcyBHZW5lcmljQm9keTtcbiAgICAgICAgICAgICAgY29uc3QgdGltZSA9IHRpbWVMaXN0W2xhdGVzdF07XG4gICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgdmVyc2lvbi50aW1lID0gdGltZTtcblxuICAgICAgICAgICAgICAvLyBBZGQgZm9yIHN0YXJzIGFwaVxuICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgIHZlcnNpb24udXNlcnMgPSBwa2dNZXRhZGF0YS51c2VycztcblxuICAgICAgICAgICAgICBwYWNrYWdlcy5wdXNoKHZlcnNpb24pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgc2VsZi5sb2dnZXIud2Fybih7IHBhY2thZ2U6IGxvY2Fsc1tpdGVtUGtnXSB9LCAncGFja2FnZSBAe3BhY2thZ2V9IGRvZXMgbm90IGhhdmUgYSBcImxhdGVzdFwiIHRhZz8nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoaXRlbVBrZyA+PSBsb2NhbHMubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgcGFja2FnZXMpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBnZXRQYWNrYWdlKGl0ZW1Qa2cgKyAxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfTtcblxuICAgICAgaWYgKGxvY2Fscy5sZW5ndGgpIHtcbiAgICAgICAgZ2V0UGFja2FnZSgwKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNhbGxiYWNrKG51bGwsIFtdKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGdW5jdGlvbiBmZXRjaGVzIHBhY2thZ2UgbWV0YWRhdGEgZnJvbSB1cGxpbmtzIGFuZCBzeW5jaHJvbml6ZXMgaXQgd2l0aCBsb2NhbCBkYXRhXG4gICBpZiBwYWNrYWdlIGlzIGF2YWlsYWJsZSBsb2NhbGx5LCBpdCBNVVNUIGJlIHByb3ZpZGVkIGluIHBrZ2luZm9cbiAgIHJldHVybnMgY2FsbGJhY2soZXJyLCByZXN1bHQsIHVwbGlua19lcnJvcnMpXG4gICAqL1xuICBwdWJsaWMgX3N5bmNVcGxpbmtzTWV0YWRhdGEobmFtZTogc3RyaW5nLCBwYWNrYWdlSW5mbzogUGFja2FnZSwgb3B0aW9uczogSVN5bmNVcGxpbmtzLCBjYWxsYmFjazogQ2FsbGJhY2spOiB2b2lkIHtcbiAgICBsZXQgZm91bmQgPSB0cnVlO1xuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgIGNvbnN0IHVwTGlua3M6IElQcm94eVtdID0gW107XG4gICAgY29uc3QgaGFzVG9Mb29rSW50b1VwbGlua3MgPSBfLmlzTmlsKG9wdGlvbnMudXBsaW5rc0xvb2spIHx8IG9wdGlvbnMudXBsaW5rc0xvb2s7XG5cbiAgICBpZiAoIXBhY2thZ2VJbmZvKSB7XG4gICAgICBmb3VuZCA9IGZhbHNlO1xuICAgICAgcGFja2FnZUluZm8gPSBnZW5lcmF0ZVBhY2thZ2VUZW1wbGF0ZShuYW1lKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IHVwbGluayBpbiB0aGlzLnVwbGlua3MpIHtcbiAgICAgIGlmIChoYXNQcm94eVRvKG5hbWUsIHVwbGluaywgdGhpcy5jb25maWcucGFja2FnZXMpICYmIGhhc1RvTG9va0ludG9VcGxpbmtzKSB7XG4gICAgICAgIHVwTGlua3MucHVzaCh0aGlzLnVwbGlua3NbdXBsaW5rXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMubWFwKFxuICAgICAgdXBMaW5rcyxcbiAgICAgICh1cExpbmssIGNiKTogdm9pZCA9PiB7XG4gICAgICAgIGNvbnN0IF9vcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucyk7XG4gICAgICAgIGNvbnN0IHVwTGlua01ldGEgPSBwYWNrYWdlSW5mby5fdXBsaW5rc1t1cExpbmsudXBuYW1lXTtcblxuICAgICAgICBpZiAoaXNPYmplY3QodXBMaW5rTWV0YSkpIHtcbiAgICAgICAgICBjb25zdCBmZXRjaGVkID0gdXBMaW5rTWV0YS5mZXRjaGVkO1xuXG4gICAgICAgICAgaWYgKGZldGNoZWQgJiYgRGF0ZS5ub3coKSAtIGZldGNoZWQgPCB1cExpbmsubWF4YWdlKSB7XG4gICAgICAgICAgICByZXR1cm4gY2IoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBfb3B0aW9ucy5ldGFnID0gdXBMaW5rTWV0YS5ldGFnO1xuICAgICAgICB9XG5cbiAgICAgICAgdXBMaW5rLmdldFJlbW90ZU1ldGFkYXRhKG5hbWUsIF9vcHRpb25zLCAoZXJyLCB1cExpbmtSZXNwb25zZSwgZVRhZyk6IHZvaWQgPT4ge1xuICAgICAgICAgIGlmIChlcnIgJiYgZXJyLnJlbW90ZVN0YXR1cyA9PT0gMzA0KSB7XG4gICAgICAgICAgICB1cExpbmtNZXRhLmZldGNoZWQgPSBEYXRlLm5vdygpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChlcnIgfHwgIXVwTGlua1Jlc3BvbnNlKSB7XG4gICAgICAgICAgICByZXR1cm4gY2IobnVsbCwgW2VyciB8fCBFcnJvckNvZGUuZ2V0SW50ZXJuYWxFcnJvcignbm8gZGF0YScpXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHZhbGlkYXRlTWV0YWRhdGEodXBMaW5rUmVzcG9uc2UsIG5hbWUpO1xuICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgc2VsZi5sb2dnZXIuZXJyb3IoXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzdWI6ICdvdXQnLFxuICAgICAgICAgICAgICAgIGVycjogZXJyLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAncGFja2FnZS5qc29uIHZhbGlkYXRpbmcgZXJyb3IgQHshZXJyLm1lc3NhZ2V9XFxuQHtlcnIuc3RhY2t9J1xuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHJldHVybiBjYihudWxsLCBbZXJyXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcGFja2FnZUluZm8uX3VwbGlua3NbdXBMaW5rLnVwbmFtZV0gPSB7XG4gICAgICAgICAgICBldGFnOiBlVGFnLFxuICAgICAgICAgICAgZmV0Y2hlZDogRGF0ZS5ub3coKSxcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgcGFja2FnZUluZm8udGltZSA9IG1lcmdlVXBsaW5rVGltZUludG9Mb2NhbChwYWNrYWdlSW5mbywgdXBMaW5rUmVzcG9uc2UpO1xuXG4gICAgICAgICAgdXBkYXRlVmVyc2lvbnNIaWRkZW5VcExpbmsodXBMaW5rUmVzcG9uc2UudmVyc2lvbnMsIHVwTGluayk7XG5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgbWVyZ2VWZXJzaW9ucyhwYWNrYWdlSW5mbywgdXBMaW5rUmVzcG9uc2UpO1xuICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgc2VsZi5sb2dnZXIuZXJyb3IoXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzdWI6ICdvdXQnLFxuICAgICAgICAgICAgICAgIGVycjogZXJyLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAncGFja2FnZS5qc29uIHBhcnNpbmcgZXJyb3IgQHshZXJyLm1lc3NhZ2V9XFxuQHtlcnIuc3RhY2t9J1xuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHJldHVybiBjYihudWxsLCBbZXJyXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gaWYgd2UgZ290IHRvIHRoaXMgcG9pbnQsIGFzc3VtZSB0aGF0IHRoZSBjb3JyZWN0IHBhY2thZ2UgZXhpc3RzXG4gICAgICAgICAgLy8gb24gdGhlIHVwbGlua1xuICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICBjYigpO1xuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAoZXJyOiBFcnJvciwgdXBMaW5rc0Vycm9yczogYW55KTogQXN5bmNSZXN1bHRBcnJheUNhbGxiYWNrPHVua25vd24sIEVycm9yPiA9PiB7XG4gICAgICAgIGFzc2VydCghZXJyICYmIEFycmF5LmlzQXJyYXkodXBMaW5rc0Vycm9ycykpO1xuXG4gICAgICAgIC8vIENoZWNrIGZvciBjb25uZWN0aW9uIHRpbWVvdXQgb3IgcmVzZXQgZXJyb3JzIHdpdGggdXBsaW5rKHMpXG4gICAgICAgIC8vICh0aGVzZSBzaG91bGQgYmUgaGFuZGxlZCBkaWZmZXJlbnRseSBmcm9tIHRoZSBwYWNrYWdlIG5vdCBiZWluZyBmb3VuZClcbiAgICAgICAgaWYgKCFmb3VuZCkge1xuICAgICAgICAgIGxldCB1cGxpbmtUaW1lb3V0RXJyb3I7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB1cExpbmtzRXJyb3JzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAodXBMaW5rc0Vycm9yc1tpXSkge1xuICAgICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHVwTGlua3NFcnJvcnNbaV0ubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICBpZiAodXBMaW5rc0Vycm9yc1tpXVtqXSkge1xuICAgICAgICAgICAgICAgICAgY29uc3QgY29kZSA9IHVwTGlua3NFcnJvcnNbaV1bal0uY29kZTtcbiAgICAgICAgICAgICAgICAgIGlmIChjb2RlID09PSAnRVRJTUVET1VUJyB8fCBjb2RlID09PSAnRVNPQ0tFVFRJTUVET1VUJyB8fCBjb2RlID09PSAnRUNPTk5SRVNFVCcpIHtcbiAgICAgICAgICAgICAgICAgICAgdXBsaW5rVGltZW91dEVycm9yID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHVwbGlua1RpbWVvdXRFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKEVycm9yQ29kZS5nZXRTZXJ2aWNlVW5hdmFpbGFibGUoKSwgbnVsbCwgdXBMaW5rc0Vycm9ycyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBjYWxsYmFjayhFcnJvckNvZGUuZ2V0Tm90Rm91bmQoQVBJX0VSUk9SLk5PX1BBQ0tBR0UpLCBudWxsLCB1cExpbmtzRXJyb3JzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh1cExpbmtzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIHJldHVybiBjYWxsYmFjayhudWxsLCBwYWNrYWdlSW5mbyk7XG4gICAgICAgIH1cblxuICAgICAgICBzZWxmLmxvY2FsU3RvcmFnZS51cGRhdGVWZXJzaW9ucyhuYW1lLCBwYWNrYWdlSW5mbywgYXN5bmMgKGVyciwgcGFja2FnZUpzb25Mb2NhbDogUGFja2FnZSk6IFByb21pc2U8YW55PiA9PiB7XG4gICAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIEFueSBlcnJvciBoZXJlIHdpbGwgY2F1c2UgYSA0MDQsIGxpa2UgYW4gdXBsaW5rIGVycm9yLiBUaGlzIGlzIGxpa2VseSB0aGUgcmlnaHQgdGhpbmcgdG8gZG9cbiAgICAgICAgICAvLyBhcyBhIGJyb2tlbiBmaWx0ZXIgaXMgYSBzZWN1cml0eSByaXNrLlxuICAgICAgICAgIGNvbnN0IGZpbHRlckVycm9yczogRXJyb3JbXSA9IFtdO1xuICAgICAgICAgIC8vIFRoaXMgTVVTVCBiZSBkb25lIHNlcmlhbGx5IGFuZCBub3QgaW4gcGFyYWxsZWwgYXMgdGhleSBtb2RpZnkgcGFja2FnZUpzb25Mb2NhbFxuICAgICAgICAgIGZvciAoY29uc3QgZmlsdGVyIG9mIHNlbGYuZmlsdGVycykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgLy8gVGhlc2UgZmlsdGVycyBjYW4gYXNzdW1lIGl0J3Mgc2F2ZSB0byBtb2RpZnkgcGFja2FnZUpzb25Mb2NhbCBhbmQgcmV0dXJuIGl0IGRpcmVjdGx5IGZvclxuICAgICAgICAgICAgICAvLyBwZXJmb3JtYW5jZSAoaS5lLiBuZWVkIG5vdCBiZSBwdXJlKVxuICAgICAgICAgICAgICBwYWNrYWdlSnNvbkxvY2FsID0gYXdhaXQgZmlsdGVyLmZpbHRlcl9tZXRhZGF0YShwYWNrYWdlSnNvbkxvY2FsKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICBmaWx0ZXJFcnJvcnMucHVzaChlcnIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjYWxsYmFjayhudWxsLCBwYWNrYWdlSnNvbkxvY2FsLCBfLmNvbmNhdCh1cExpbmtzRXJyb3JzLCBmaWx0ZXJFcnJvcnMpKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgYSBoaWRkZW4gdmFsdWUgZm9yIGVhY2ggdmVyc2lvbi5cbiAgICogQHBhcmFtIHtBcnJheX0gdmVyc2lvbnMgbGlzdCBvZiB2ZXJzaW9uXG4gICAqIEBwYXJhbSB7U3RyaW5nfSB1cExpbmsgdXBsaW5rIG5hbWVcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHB1YmxpYyBfdXBkYXRlVmVyc2lvbnNIaWRkZW5VcExpbmsodmVyc2lvbnM6IFZlcnNpb25zLCB1cExpbms6IElQcm94eSk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgaSBpbiB2ZXJzaW9ucykge1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2ZXJzaW9ucywgaSkpIHtcbiAgICAgICAgY29uc3QgdmVyc2lvbiA9IHZlcnNpb25zW2ldO1xuXG4gICAgICAgIC8vIGhvbGRzIGEgXCJoaWRkZW5cIiB2YWx1ZSB0byBiZSB1c2VkIGJ5IHRoZSBwYWNrYWdlIHN0b3JhZ2UuXG4gICAgICAgIC8vICRGbG93Rml4TWVcbiAgICAgICAgdmVyc2lvbltTeW1ib2wuZm9yKCdfX3ZlcmRhY2Npb191cGxpbmsnKV0gPSB1cExpbmsudXBuYW1lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBTdG9yYWdlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBR0E7O0FBS0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBLE1BQU1BLE9BQU4sQ0FBeUM7RUFPaENDLFdBQVcsQ0FBQ0MsTUFBRCxFQUFpQjtJQUFBOztJQUFBOztJQUFBOztJQUFBOztJQUFBOztJQUNqQyxLQUFLQSxNQUFMLEdBQWNBLE1BQWQ7SUFDQSxLQUFLQyxPQUFMLEdBQWUsSUFBQUMsd0JBQUEsRUFBYUYsTUFBYixDQUFmO0lBQ0EsS0FBS0csTUFBTCxHQUFjQSxjQUFkO0lBQ0EsS0FBS0MsT0FBTCxHQUFlLEVBQWYsQ0FKaUMsQ0FLakM7O0lBQ0EsS0FBS0MsWUFBTCxHQUFvQixJQUFwQjtFQUNEOztFQUVNQyxJQUFJLENBQUNOLE1BQUQsRUFBaUJJLE9BQXVCLEdBQUcsRUFBM0MsRUFBZ0U7SUFDekUsS0FBS0EsT0FBTCxHQUFlQSxPQUFmO0lBQ0EsS0FBS0MsWUFBTCxHQUFvQixJQUFJRSxxQkFBSixDQUFpQixLQUFLUCxNQUF0QixFQUE4QkcsY0FBOUIsQ0FBcEI7SUFFQSxPQUFPLEtBQUtFLFlBQUwsQ0FBa0JHLFNBQWxCLENBQTRCUixNQUE1QixDQUFQO0VBQ0Q7RUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztFQUN5QixNQUFWUyxVQUFVLENBQUNDLElBQUQsRUFBZUMsUUFBZixFQUE4QkMsUUFBOUIsRUFBaUU7SUFDdEYsSUFBSTtNQUNGLE1BQU0sSUFBQUMsK0JBQUEsRUFBa0JILElBQWxC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
|
package/eslintrc.js
CHANGED
|
@@ -6,9 +6,9 @@ module.exports = {
|
|
|
6
6
|
'plugin:@typescript-eslint/eslint-recommended',
|
|
7
7
|
'plugin:@typescript-eslint/recommended',
|
|
8
8
|
'plugin:import/typescript',
|
|
9
|
-
'prettier',
|
|
9
|
+
'plugin:prettier/recommended',
|
|
10
10
|
],
|
|
11
|
-
plugins: ['import', 'jest'],
|
|
11
|
+
plugins: ['import', 'jest', 'prettier'],
|
|
12
12
|
env: {
|
|
13
13
|
es6: true,
|
|
14
14
|
node: true,
|
|
@@ -23,20 +23,18 @@ module.exports = {
|
|
|
23
23
|
ecmaVersion: 11,
|
|
24
24
|
ecmaFeatures: {
|
|
25
25
|
impliedStrict: true,
|
|
26
|
-
jsx: true,
|
|
27
26
|
},
|
|
28
27
|
},
|
|
29
28
|
settings: {
|
|
30
29
|
'import/resolver': {
|
|
31
30
|
node: {
|
|
32
|
-
extensions: ['.js', '.ts'
|
|
31
|
+
extensions: ['.js', '.ts'],
|
|
33
32
|
},
|
|
34
33
|
},
|
|
35
34
|
},
|
|
36
35
|
parser: '@typescript-eslint/parser',
|
|
37
36
|
rules: {
|
|
38
37
|
curly: ['error', 'all'],
|
|
39
|
-
'react/prop-types': 0,
|
|
40
38
|
'jest/no-export': 0,
|
|
41
39
|
'jest/no-test-callback': 0,
|
|
42
40
|
'jest/expect-expect': 0,
|
|
@@ -49,7 +47,6 @@ module.exports = {
|
|
|
49
47
|
'padded-blocks': 'off',
|
|
50
48
|
'require-jsdoc': 'off',
|
|
51
49
|
'valid-jsdoc': 'off',
|
|
52
|
-
'import/order': ['warn'],
|
|
53
50
|
'eol-last': 'error',
|
|
54
51
|
'no-irregular-whitespace': 'error',
|
|
55
52
|
'no-mixed-spaces-and-tabs': ['error', 'smart-tabs'],
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "verdaccio",
|
|
3
|
-
"version": "5.13.
|
|
3
|
+
"version": "5.13.3",
|
|
4
4
|
"description": "A lightweight private npm proxy registry",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Verdaccio Maintainers",
|
|
@@ -19,10 +19,10 @@
|
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"@verdaccio/commons-api": "10.2.0",
|
|
22
|
-
"@verdaccio/local-storage": "10.3.
|
|
23
|
-
"@verdaccio/readme": "10.
|
|
22
|
+
"@verdaccio/local-storage": "10.3.1",
|
|
23
|
+
"@verdaccio/readme": "10.4.0",
|
|
24
24
|
"@verdaccio/streams": "10.2.0",
|
|
25
|
-
"@verdaccio/ui-theme": "6.0.0-6-next.
|
|
25
|
+
"@verdaccio/ui-theme": "6.0.0-6-next.25",
|
|
26
26
|
"JSONStream": "1.3.5",
|
|
27
27
|
"async": "3.2.4",
|
|
28
28
|
"body-parser": "1.20.0",
|
|
@@ -41,11 +41,11 @@
|
|
|
41
41
|
"http-errors": "2.0.0",
|
|
42
42
|
"js-yaml": "4.1.0",
|
|
43
43
|
"jsonwebtoken": "8.5.1",
|
|
44
|
-
"kleur": "4.1.
|
|
44
|
+
"kleur": "4.1.5",
|
|
45
45
|
"lodash": "4.17.21",
|
|
46
|
-
"lru-cache": "7.
|
|
46
|
+
"lru-cache": "7.13.0",
|
|
47
47
|
"lunr-mutable-indexes": "2.3.2",
|
|
48
|
-
"marked": "4.0.
|
|
48
|
+
"marked": "4.0.18",
|
|
49
49
|
"memoizee": "0.4.15",
|
|
50
50
|
"mime": "3.0.0",
|
|
51
51
|
"minimatch": "5.1.0",
|
|
@@ -59,36 +59,36 @@
|
|
|
59
59
|
"semver": "7.3.7",
|
|
60
60
|
"validator": "13.7.0",
|
|
61
61
|
"verdaccio-audit": "10.2.2",
|
|
62
|
-
"verdaccio-htpasswd": "10.
|
|
62
|
+
"verdaccio-htpasswd": "10.5.0"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
|
-
"@babel/cli": "7.
|
|
66
|
-
"@babel/core": "7.
|
|
67
|
-
"@babel/node": "7.
|
|
68
|
-
"@babel/plugin-proposal-class-properties": "7.
|
|
69
|
-
"@babel/plugin-proposal-decorators": "7.
|
|
70
|
-
"@babel/plugin-proposal-export-namespace-from": "7.
|
|
71
|
-
"@babel/plugin-proposal-function-sent": "7.
|
|
72
|
-
"@babel/plugin-proposal-json-strings": "7.
|
|
73
|
-
"@babel/plugin-proposal-nullish-coalescing-operator": "7.
|
|
74
|
-
"@babel/plugin-proposal-numeric-separator": "7.
|
|
75
|
-
"@babel/plugin-proposal-object-rest-spread": "7.
|
|
76
|
-
"@babel/plugin-proposal-optional-chaining": "7.
|
|
77
|
-
"@babel/plugin-proposal-throw-expressions": "7.
|
|
65
|
+
"@babel/cli": "7.18.6",
|
|
66
|
+
"@babel/core": "7.18.6",
|
|
67
|
+
"@babel/node": "7.18.6",
|
|
68
|
+
"@babel/plugin-proposal-class-properties": "7.18.6",
|
|
69
|
+
"@babel/plugin-proposal-decorators": "7.18.6",
|
|
70
|
+
"@babel/plugin-proposal-export-namespace-from": "7.18.6",
|
|
71
|
+
"@babel/plugin-proposal-function-sent": "7.18.6",
|
|
72
|
+
"@babel/plugin-proposal-json-strings": "7.18.6",
|
|
73
|
+
"@babel/plugin-proposal-nullish-coalescing-operator": "7.18.6",
|
|
74
|
+
"@babel/plugin-proposal-numeric-separator": "7.18.6",
|
|
75
|
+
"@babel/plugin-proposal-object-rest-spread": "7.18.6",
|
|
76
|
+
"@babel/plugin-proposal-optional-chaining": "7.18.6",
|
|
77
|
+
"@babel/plugin-proposal-throw-expressions": "7.18.6",
|
|
78
78
|
"@babel/plugin-syntax-dynamic-import": "7.8.3",
|
|
79
79
|
"@babel/plugin-syntax-import-meta": "7.10.4",
|
|
80
|
-
"@babel/plugin-transform-async-to-generator": "7.
|
|
81
|
-
"@babel/plugin-transform-classes": "7.
|
|
82
|
-
"@babel/plugin-transform-runtime": "7.
|
|
80
|
+
"@babel/plugin-transform-async-to-generator": "7.18.6",
|
|
81
|
+
"@babel/plugin-transform-classes": "7.18.8",
|
|
82
|
+
"@babel/plugin-transform-runtime": "7.18.6",
|
|
83
83
|
"@babel/polyfill": "^7.12.1",
|
|
84
|
-
"@babel/preset-env": "7.
|
|
85
|
-
"@babel/preset-typescript": "7.
|
|
86
|
-
"@babel/register": "7.
|
|
87
|
-
"@babel/runtime": "7.
|
|
84
|
+
"@babel/preset-env": "7.18.6",
|
|
85
|
+
"@babel/preset-typescript": "7.18.6",
|
|
86
|
+
"@babel/register": "7.18.6",
|
|
87
|
+
"@babel/runtime": "7.18.6",
|
|
88
88
|
"@commitlint/cli": "12.1.4",
|
|
89
89
|
"@commitlint/config-conventional": "12.1.4",
|
|
90
90
|
"@octokit/rest": "18.12.0",
|
|
91
|
-
"@trivago/prettier-plugin-sort-imports": "3.
|
|
91
|
+
"@trivago/prettier-plugin-sort-imports": "3.2.0",
|
|
92
92
|
"@types/async": "3.2.13",
|
|
93
93
|
"@types/express": "4.17.13",
|
|
94
94
|
"@types/express-rate-limit": "5.1.3",
|
|
@@ -102,8 +102,8 @@
|
|
|
102
102
|
"@types/pino": "6.3.12",
|
|
103
103
|
"@types/request": "2.48.8",
|
|
104
104
|
"@types/semver": "7.3.9",
|
|
105
|
-
"@typescript-eslint/eslint-plugin": "
|
|
106
|
-
"@typescript-eslint/parser": "
|
|
105
|
+
"@typescript-eslint/eslint-plugin": "5.22.0",
|
|
106
|
+
"@typescript-eslint/parser": "5.22.0",
|
|
107
107
|
"@verdaccio-scope/verdaccio-auth-foo": "0.0.2",
|
|
108
108
|
"@verdaccio/eslint-config": "^10.0.0",
|
|
109
109
|
"@verdaccio/types": "10.5.1",
|
|
@@ -116,12 +116,14 @@
|
|
|
116
116
|
"detect-secrets": "1.0.6",
|
|
117
117
|
"eslint": "7.32.0",
|
|
118
118
|
"eslint-config-google": "0.14.0",
|
|
119
|
-
"eslint-config-prettier": "
|
|
119
|
+
"eslint-config-prettier": "8.5.0",
|
|
120
120
|
"eslint-plugin-babel": "5.3.1",
|
|
121
|
-
"eslint-plugin-import": "2.
|
|
122
|
-
"eslint-plugin-jest": "
|
|
121
|
+
"eslint-plugin-import": "2.26.0",
|
|
122
|
+
"eslint-plugin-jest": "26.1.5",
|
|
123
|
+
"eslint-plugin-jsx-a11y": "6.5.1",
|
|
124
|
+
"eslint-plugin-prettier": "4.0.0",
|
|
123
125
|
"eslint-plugin-simple-import-sort": "7.0.0",
|
|
124
|
-
"eslint-plugin-verdaccio": "
|
|
126
|
+
"eslint-plugin-verdaccio": "10.0.0",
|
|
125
127
|
"fs-extra": "10.1.0",
|
|
126
128
|
"husky": "6.0.0",
|
|
127
129
|
"jest": "26.6.3",
|
|
@@ -133,7 +135,7 @@
|
|
|
133
135
|
"nock": "12.0.3",
|
|
134
136
|
"node-mocks-http": "^1.10.1",
|
|
135
137
|
"pinst": "2.1.6",
|
|
136
|
-
"prettier": "2.
|
|
138
|
+
"prettier": "2.7.1",
|
|
137
139
|
"puppeteer": "5.5.0",
|
|
138
140
|
"rimraf": "3.0.2",
|
|
139
141
|
"selfsigned": "1.10.14",
|
|
@@ -170,7 +172,7 @@
|
|
|
170
172
|
"test:all": "yarn run test && yarn run test:functional && yarn run test:e2e & yarn run test:e2e:pkg",
|
|
171
173
|
"pre:ci": "yarn run lint",
|
|
172
174
|
"lint": "yarn run type-check && yarn run lint:ts",
|
|
173
|
-
"lint:ts": "eslint \"**/*.{js,jsx,ts
|
|
175
|
+
"lint:ts": "eslint \"**/*.{js,jsx,ts}\" --max-warnings 145 -c ./eslintrc.js",
|
|
174
176
|
"lint:lockfile": "lockfile-lint --path yarn.lock --type yarn --validate-https --allowed-hosts verdaccio npm yarn",
|
|
175
177
|
"start": "yarn babel-node --extensions \".ts,.tsx\" src/lib/cli --inspect",
|
|
176
178
|
"start:brk": "yarn babel-node --extensions \".ts,.tsx\" src/lib/cli --inspect-brk",
|