vc-layout 1.0.84 → 1.0.85
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/README.md +24 -24
- package/esm2022/lib/components/global-alert/global-alert/global-alert.component.mjs +83 -83
- package/esm2022/lib/components/global-alert/global-alert.module.mjs +1 -1
- package/esm2022/lib/components/header/business-cycle/business-cycle.component.mjs +3 -3
- package/esm2022/lib/components/header/create-workflow/create-workflow.component.mjs +3 -3
- package/esm2022/lib/components/header/header-container/header-container.component.mjs +3 -3
- package/esm2022/lib/components/header/header.module.mjs +1 -1
- package/esm2022/lib/components/header/queue/queue.component.mjs +35 -35
- package/esm2022/lib/components/header/search/search.component.mjs +73 -73
- package/esm2022/lib/components/header/support/support.component.mjs +13 -13
- package/esm2022/lib/components/header/user-details/user-details.component.mjs +3 -3
- package/esm2022/lib/components/product-list/module-list/module-list.component.mjs +77 -77
- package/esm2022/lib/components/product-list/preference-list/preference-list.component.mjs +57 -57
- package/esm2022/lib/components/product-list/product-list-container/product-list-container.component.mjs +17 -17
- package/esm2022/lib/components/product-list/product-list.module.mjs +1 -1
- package/esm2022/lib/components/sub-menu/sub-menu-container/sub-menu-container.component.mjs +71 -80
- package/esm2022/lib/components/sub-menu/sub-menu.module.mjs +1 -1
- package/esm2022/lib/configurations.mjs +1 -1
- package/esm2022/lib/constants/alerts.constant.mjs +1 -1
- package/esm2022/lib/constants/api.constant.mjs +1 -1
- package/esm2022/lib/constants/app-url.constant.mjs +3 -3
- package/esm2022/lib/constants/assets.constants.mjs +1 -1
- package/esm2022/lib/constants/business-cycle.constant.mjs +3 -3
- package/esm2022/lib/constants/product-list.constant.mjs +1 -1
- package/esm2022/lib/shared/pipe/check-create-permission.pipe.mjs +1 -1
- package/esm2022/lib/shared/pipe/date-format.pipe.mjs +1 -1
- package/esm2022/lib/shared/pipe/get-file-url.pipe.mjs +1 -1
- package/esm2022/lib/shared/pipe/get-module-icon.pipe.mjs +1 -1
- package/esm2022/lib/shared/pipe/pipes.module.mjs +1 -1
- package/esm2022/lib/shared/services/RBAC.service.mjs +1 -1
- package/esm2022/lib/shared/services/api.service.mjs +1 -1
- package/esm2022/lib/shared/services/business-cycle.service.mjs +1 -1
- package/esm2022/lib/shared/services/layout.service.mjs +1 -1
- package/esm2022/lib/shared/services/product-list.service.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/avatar/avatar/avatar.component.mjs +19 -19
- package/esm2022/lib/shared/ui-kit/avatar/avatar.module.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/formgroup/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/click-outside.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-radio/cs-radio.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-select/cs-select.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/cs-switch/cs-switch.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/formgroup/formgroup.module.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/formgroup/pipes/pascal.pipe.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/formgroup/pipes/searchMultiSelect.pipe.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/page-loader/page-loader.component.mjs +17 -17
- package/esm2022/lib/shared/ui-kit/popover/popover-event.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/popover/popover-longpress.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/popover/popover.component.mjs +3 -3
- package/esm2022/lib/shared/ui-kit/popover/popover.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/popover/popover.module.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/popover/popover.service.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/tooltip/tooltip.directive.mjs +1 -1
- package/esm2022/lib/shared/ui-kit/tooltip/tooltip.module.mjs +1 -1
- package/esm2022/lib/vc-layout.component.mjs +1 -1
- package/esm2022/lib/vc-layout.module.mjs +1 -1
- package/esm2022/lib/vc-layout.service.mjs +1 -1
- package/esm2022/public-api.mjs +1 -1
- package/fesm2022/vc-layout.mjs +480 -489
- package/fesm2022/vc-layout.mjs.map +1 -1
- package/lib/components/sub-menu/sub-menu-container/sub-menu-container.component.d.ts +1 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
# VcLayout
|
|
2
|
-
|
|
3
|
-
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.0.0.
|
|
4
|
-
|
|
5
|
-
## Code scaffolding
|
|
6
|
-
|
|
7
|
-
Run `ng generate component component-name --project vc-layout` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project vc-layout`.
|
|
8
|
-
> Note: Don't forget to add `--project vc-layout` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
-
|
|
10
|
-
## Build
|
|
11
|
-
|
|
12
|
-
Run `ng build vc-layout` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
-
|
|
14
|
-
## Publishing
|
|
15
|
-
|
|
16
|
-
After building your library with `ng build vc-layout`, go to the dist folder `cd dist/vc-layout` and run `npm publish`.
|
|
17
|
-
|
|
18
|
-
## Running unit tests
|
|
19
|
-
|
|
20
|
-
Run `ng test vc-layout` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
-
|
|
22
|
-
## Further help
|
|
23
|
-
|
|
24
|
-
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
1
|
+
# VcLayout
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.0.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project vc-layout` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project vc-layout`.
|
|
8
|
+
> Note: Don't forget to add `--project vc-layout` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build vc-layout` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build vc-layout`, go to the dist folder `cd dist/vc-layout` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test vc-layout` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
@@ -96,96 +96,96 @@ export class GlobalAlertComponent {
|
|
|
96
96
|
return `https://${window.location.host}${IN_APP_URL.PASSWORD_RESET}`;
|
|
97
97
|
}
|
|
98
98
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GlobalAlertComponent, deps: [{ token: i1.ApiService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
99
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GlobalAlertComponent, selector: "vc-global-alert", inputs: { feature: "feature" }, outputs: { subscriptionStatus: "subscriptionStatus" }, ngImport: i0, template: `
|
|
100
|
-
<div
|
|
101
|
-
*ngIf="messages.length > 0"
|
|
102
|
-
class="global-alert vx-d-flex vx-align-center vx-justify-center"
|
|
103
|
-
[class.expired]="messages[activeIndex]?.class === 'HIGH'"
|
|
104
|
-
>
|
|
105
|
-
<i class="icons vx-fs-12 vx-mr-2"></i>
|
|
106
|
-
<!-- <span class="vx-fs-13"
|
|
107
|
-
>Email notifications have been paused by the Key Admin. You will not be able
|
|
108
|
-
to edit your email notifications until the Key Admin turns it back on.</span
|
|
109
|
-
> -->
|
|
110
|
-
<span
|
|
111
|
-
class="vx-fs-13"
|
|
112
|
-
[innerHTML]="messages[activeIndex]?.message"
|
|
113
|
-
></span>
|
|
114
|
-
<div
|
|
115
|
-
*ngIf="messages.length > 1"
|
|
116
|
-
class="global-alert-action vx-d-flex vx-align-center vx-lh-6"
|
|
117
|
-
>
|
|
118
|
-
<button
|
|
119
|
-
[class.disabled]="activeIndex === 0"
|
|
120
|
-
(click)="activeIndex = activeIndex - 1"
|
|
121
|
-
class="vx-fs-12 vx-p-0 vx-m-0 vx-mr-4 vx-d-flex vx-align-center disabled"
|
|
122
|
-
>
|
|
123
|
-
<i class="icons"></i>
|
|
124
|
-
</button>
|
|
125
|
-
<span class="vx-fs-13 vx-txt-white">{{ activeIndex + 1 }}</span>
|
|
126
|
-
<span class="divider vx-fs-11 vx-txt-white">/</span>
|
|
127
|
-
<span class="vx-fs-13 vx-fw-600 vx-txt-white">{{
|
|
128
|
-
messages.length
|
|
129
|
-
}}</span>
|
|
130
|
-
|
|
131
|
-
<button
|
|
132
|
-
(click)="activeIndex = activeIndex + 1"
|
|
133
|
-
[class.disabled]="activeIndex === messages.length - 1"
|
|
134
|
-
class="vx-fs-12 vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center"
|
|
135
|
-
>
|
|
136
|
-
<i class="icons"></i>
|
|
137
|
-
</button>
|
|
138
|
-
</div>
|
|
139
|
-
</div>
|
|
99
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GlobalAlertComponent, selector: "vc-global-alert", inputs: { feature: "feature" }, outputs: { subscriptionStatus: "subscriptionStatus" }, ngImport: i0, template: `
|
|
100
|
+
<div
|
|
101
|
+
*ngIf="messages.length > 0"
|
|
102
|
+
class="global-alert vx-d-flex vx-align-center vx-justify-center"
|
|
103
|
+
[class.expired]="messages[activeIndex]?.class === 'HIGH'"
|
|
104
|
+
>
|
|
105
|
+
<i class="icons vx-fs-12 vx-mr-2"></i>
|
|
106
|
+
<!-- <span class="vx-fs-13"
|
|
107
|
+
>Email notifications have been paused by the Key Admin. You will not be able
|
|
108
|
+
to edit your email notifications until the Key Admin turns it back on.</span
|
|
109
|
+
> -->
|
|
110
|
+
<span
|
|
111
|
+
class="vx-fs-13"
|
|
112
|
+
[innerHTML]="messages[activeIndex]?.message"
|
|
113
|
+
></span>
|
|
114
|
+
<div
|
|
115
|
+
*ngIf="messages.length > 1"
|
|
116
|
+
class="global-alert-action vx-d-flex vx-align-center vx-lh-6"
|
|
117
|
+
>
|
|
118
|
+
<button
|
|
119
|
+
[class.disabled]="activeIndex === 0"
|
|
120
|
+
(click)="activeIndex = activeIndex - 1"
|
|
121
|
+
class="vx-fs-12 vx-p-0 vx-m-0 vx-mr-4 vx-d-flex vx-align-center disabled"
|
|
122
|
+
>
|
|
123
|
+
<i class="icons"></i>
|
|
124
|
+
</button>
|
|
125
|
+
<span class="vx-fs-13 vx-txt-white">{{ activeIndex + 1 }}</span>
|
|
126
|
+
<span class="divider vx-fs-11 vx-txt-white">/</span>
|
|
127
|
+
<span class="vx-fs-13 vx-fw-600 vx-txt-white">{{
|
|
128
|
+
messages.length
|
|
129
|
+
}}</span>
|
|
130
|
+
|
|
131
|
+
<button
|
|
132
|
+
(click)="activeIndex = activeIndex + 1"
|
|
133
|
+
[class.disabled]="activeIndex === messages.length - 1"
|
|
134
|
+
class="vx-fs-12 vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center"
|
|
135
|
+
>
|
|
136
|
+
<i class="icons"></i>
|
|
137
|
+
</button>
|
|
138
|
+
</div>
|
|
139
|
+
</div>
|
|
140
140
|
`, isInline: true, styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";::ng-deep .global-alert{background:#343952;height:2.25rem;color:#f7d873}::ng-deep .global-alert.expired{color:#e38b7a}::ng-deep .global-alert.expired a{color:#fac3b7;margin-left:.5rem}::ng-deep .global-alert a{color:#f7d873}::ng-deep .global-alert-action{position:absolute;right:.75rem;top:.375rem}::ng-deep .global-alert-action span{letter-spacing:2px}::ng-deep .global-alert-action button{background:transparent;border-radius:0;border:none;color:#fff}::ng-deep .global-alert-action button.disabled{pointer-events:none;opacity:.5;color:#fff}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
141
141
|
}
|
|
142
142
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GlobalAlertComponent, decorators: [{
|
|
143
143
|
type: Component,
|
|
144
|
-
args: [{ selector: 'vc-global-alert', template: `
|
|
145
|
-
<div
|
|
146
|
-
*ngIf="messages.length > 0"
|
|
147
|
-
class="global-alert vx-d-flex vx-align-center vx-justify-center"
|
|
148
|
-
[class.expired]="messages[activeIndex]?.class === 'HIGH'"
|
|
149
|
-
>
|
|
150
|
-
<i class="icons vx-fs-12 vx-mr-2"></i>
|
|
151
|
-
<!-- <span class="vx-fs-13"
|
|
152
|
-
>Email notifications have been paused by the Key Admin. You will not be able
|
|
153
|
-
to edit your email notifications until the Key Admin turns it back on.</span
|
|
154
|
-
> -->
|
|
155
|
-
<span
|
|
156
|
-
class="vx-fs-13"
|
|
157
|
-
[innerHTML]="messages[activeIndex]?.message"
|
|
158
|
-
></span>
|
|
159
|
-
<div
|
|
160
|
-
*ngIf="messages.length > 1"
|
|
161
|
-
class="global-alert-action vx-d-flex vx-align-center vx-lh-6"
|
|
162
|
-
>
|
|
163
|
-
<button
|
|
164
|
-
[class.disabled]="activeIndex === 0"
|
|
165
|
-
(click)="activeIndex = activeIndex - 1"
|
|
166
|
-
class="vx-fs-12 vx-p-0 vx-m-0 vx-mr-4 vx-d-flex vx-align-center disabled"
|
|
167
|
-
>
|
|
168
|
-
<i class="icons"></i>
|
|
169
|
-
</button>
|
|
170
|
-
<span class="vx-fs-13 vx-txt-white">{{ activeIndex + 1 }}</span>
|
|
171
|
-
<span class="divider vx-fs-11 vx-txt-white">/</span>
|
|
172
|
-
<span class="vx-fs-13 vx-fw-600 vx-txt-white">{{
|
|
173
|
-
messages.length
|
|
174
|
-
}}</span>
|
|
175
|
-
|
|
176
|
-
<button
|
|
177
|
-
(click)="activeIndex = activeIndex + 1"
|
|
178
|
-
[class.disabled]="activeIndex === messages.length - 1"
|
|
179
|
-
class="vx-fs-12 vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center"
|
|
180
|
-
>
|
|
181
|
-
<i class="icons"></i>
|
|
182
|
-
</button>
|
|
183
|
-
</div>
|
|
184
|
-
</div>
|
|
144
|
+
args: [{ selector: 'vc-global-alert', template: `
|
|
145
|
+
<div
|
|
146
|
+
*ngIf="messages.length > 0"
|
|
147
|
+
class="global-alert vx-d-flex vx-align-center vx-justify-center"
|
|
148
|
+
[class.expired]="messages[activeIndex]?.class === 'HIGH'"
|
|
149
|
+
>
|
|
150
|
+
<i class="icons vx-fs-12 vx-mr-2"></i>
|
|
151
|
+
<!-- <span class="vx-fs-13"
|
|
152
|
+
>Email notifications have been paused by the Key Admin. You will not be able
|
|
153
|
+
to edit your email notifications until the Key Admin turns it back on.</span
|
|
154
|
+
> -->
|
|
155
|
+
<span
|
|
156
|
+
class="vx-fs-13"
|
|
157
|
+
[innerHTML]="messages[activeIndex]?.message"
|
|
158
|
+
></span>
|
|
159
|
+
<div
|
|
160
|
+
*ngIf="messages.length > 1"
|
|
161
|
+
class="global-alert-action vx-d-flex vx-align-center vx-lh-6"
|
|
162
|
+
>
|
|
163
|
+
<button
|
|
164
|
+
[class.disabled]="activeIndex === 0"
|
|
165
|
+
(click)="activeIndex = activeIndex - 1"
|
|
166
|
+
class="vx-fs-12 vx-p-0 vx-m-0 vx-mr-4 vx-d-flex vx-align-center disabled"
|
|
167
|
+
>
|
|
168
|
+
<i class="icons"></i>
|
|
169
|
+
</button>
|
|
170
|
+
<span class="vx-fs-13 vx-txt-white">{{ activeIndex + 1 }}</span>
|
|
171
|
+
<span class="divider vx-fs-11 vx-txt-white">/</span>
|
|
172
|
+
<span class="vx-fs-13 vx-fw-600 vx-txt-white">{{
|
|
173
|
+
messages.length
|
|
174
|
+
}}</span>
|
|
175
|
+
|
|
176
|
+
<button
|
|
177
|
+
(click)="activeIndex = activeIndex + 1"
|
|
178
|
+
[class.disabled]="activeIndex === messages.length - 1"
|
|
179
|
+
class="vx-fs-12 vx-p-0 vx-m-0 vx-ml-4 vx-d-flex vx-align-center"
|
|
180
|
+
>
|
|
181
|
+
<i class="icons"></i>
|
|
182
|
+
</button>
|
|
183
|
+
</div>
|
|
184
|
+
</div>
|
|
185
185
|
`, styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";::ng-deep .global-alert{background:#343952;height:2.25rem;color:#f7d873}::ng-deep .global-alert.expired{color:#e38b7a}::ng-deep .global-alert.expired a{color:#fac3b7;margin-left:.5rem}::ng-deep .global-alert a{color:#f7d873}::ng-deep .global-alert-action{position:absolute;right:.75rem;top:.375rem}::ng-deep .global-alert-action span{letter-spacing:2px}::ng-deep .global-alert-action button{background:transparent;border-radius:0;border:none;color:#fff}::ng-deep .global-alert-action button.disabled{pointer-events:none;opacity:.5;color:#fff}\n"] }]
|
|
186
186
|
}], ctorParameters: function () { return [{ type: i1.ApiService }]; }, propDecorators: { feature: [{
|
|
187
187
|
type: Input
|
|
188
188
|
}], subscriptionStatus: [{
|
|
189
189
|
type: Output
|
|
190
190
|
}] } });
|
|
191
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWFsZXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZjLWxheW91dC9zcmMvbGliL2NvbXBvbmVudHMvZ2xvYmFsLWFsZXJ0L2dsb2JhbC1hbGVydC9nbG9iYWwtYWxlcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7OztBQWlEakUsTUFBTSxPQUFPLG9CQUFvQjtJQVMvQixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBUjFDLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLGFBQVEsR0FBZSxFQUFFLENBQUM7UUFFMUIsMEJBQXFCLEdBQVksS0FBSyxDQUFDO1FBRzdCLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHaEQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3BELElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUN0QjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3BELElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDeEI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsZ0JBQXFCO1FBQy9CLE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUVyQixJQUFJLGdCQUFnQixFQUFFO1lBQ3BCLE1BQU0sRUFDSixVQUFVLEVBQ1YsZUFBZSxFQUNmLHdCQUF3QixFQUN4Qiw4QkFBOEIsR0FDL0IsR0FBRyxnQkFBZ0IsQ0FBQztZQUVyQixJQUFJLFVBQVUsSUFBSSxlQUFlLElBQUksQ0FBQyxFQUFFO2dCQUN0QyxRQUFRLENBQUMsSUFBSSxDQUFDO29CQUNaLE9BQU8sRUFBRSxhQUFhLENBQUMsZ0JBQWdCLEdBQUcsYUFBYSxDQUFDLFNBQVM7b0JBQ2pFLEtBQUssRUFBRSxNQUFNO2lCQUNkLENBQUMsQ0FBQzthQUNKO2lCQUFNLElBQUksZUFBZSxHQUFHLENBQUMsSUFBSSxlQUFlLElBQUksRUFBRSxFQUFFO2dCQUN2RCxRQUFRLENBQUMsSUFBSSxDQUFDO29CQUNaLE9BQU8sRUFBRSxnQ0FBZ0MsZUFBZSxVQUFVLGFBQWEsQ0FBQyxTQUFTLEVBQUU7b0JBQzNGLEtBQUssRUFBRSxlQUFlLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVE7aUJBQ2pELENBQUMsQ0FBQzthQUNKO2lCQUFNLElBQUksZUFBZSxJQUFJLENBQUMsRUFBRTtnQkFDL0IsUUFBUSxDQUFDLElBQUksQ0FBQztvQkFDWixPQUFPLEVBQUUsNkVBQTZFLHdCQUF3QixVQUFVLGFBQWEsQ0FBQyxTQUFTLEVBQUU7b0JBQ2pKLEtBQUssRUFBRSxNQUFNO2lCQUNkLENBQUMsQ0FBQzthQUNKO1lBRUQsSUFBSSw4QkFBOEIsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RDLFFBQVEsQ0FBQyxJQUFJLENBQUM7b0JBQ1osT0FBTyxFQUFFLDhDQUE4QyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsMERBQTBEO29CQUMzSSxLQUFLLEVBQUUsTUFBTTtpQkFDZCxDQUFDLENBQUM7YUFDSjtpQkFBTSxJQUFJLDhCQUE4QixHQUFHLEVBQUUsRUFBRTtnQkFDOUMsUUFBUSxDQUFDLElBQUksQ0FBQztvQkFDWixPQUFPLEVBQUUsdUNBQXVDLDhCQUE4QixtQkFBbUIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLDBEQUEwRDtvQkFDckwsS0FBSyxFQUFFLFFBQVE7aUJBQ2hCLENBQUMsQ0FBQzthQUNKO1NBQ0Y7UUFFRCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsWUFBWSxDQUFDLEdBQVE7UUFDbkIsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUN2RCx1QkFBdUIsQ0FDeEI7WUFDQyxDQUFDLENBQUMsYUFBYSxDQUFDLG1CQUFtQjtZQUNuQyxDQUFDLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztRQUU5QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFLENBQ3JELE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLGtCQUFrQixDQUFDLENBQy9DLENBQUM7UUFFRixJQUFJLEdBQUcsRUFBRSxhQUFhLEtBQUssQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRTtZQUM1QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztnQkFDakIsT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsS0FBSyxFQUFFLFFBQVE7YUFDaEIsQ0FBQyxDQUFDO1NBQ0o7YUFBTSxJQUFJLEdBQUcsRUFBRSxhQUFhLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7WUFDakQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUN6QztRQUVELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sV0FBVyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDdkUsQ0FBQzsrR0E5R1Usb0JBQW9CO21HQUFwQixvQkFBb0IsOElBNUNyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Q1Q7OzRGQUdVLG9CQUFvQjtrQkE5Q2hDLFNBQVM7K0JBQ0UsaUJBQWlCLFlBQ2pCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlDVDtpR0FTUSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdMT0JBTF9BTEVSVFMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYWxlcnRzLmNvbnN0YW50JztcbmltcG9ydCB7IElOX0FQUF9VUkwgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYXBwLXVybC5jb25zdGFudCc7XG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmMtZ2xvYmFsLWFsZXJ0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIm1lc3NhZ2VzLmxlbmd0aCA+IDBcIlxuICAgICAgY2xhc3M9XCJnbG9iYWwtYWxlcnQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlclwiXG4gICAgICBbY2xhc3MuZXhwaXJlZF09XCJtZXNzYWdlc1thY3RpdmVJbmRleF0/LmNsYXNzID09PSAnSElHSCdcIlxuICAgID5cbiAgICAgIDxpIGNsYXNzPVwiaWNvbnMgdngtZnMtMTIgdngtbXItMlwiPiYjeGU5MzA7PC9pPlxuICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cInZ4LWZzLTEzXCJcbiAgICA+RW1haWwgbm90aWZpY2F0aW9ucyBoYXZlIGJlZW4gcGF1c2VkIGJ5IHRoZSBLZXkgQWRtaW4uIFlvdSB3aWxsIG5vdCBiZSBhYmxlXG4gICAgdG8gZWRpdCB5b3VyIGVtYWlsIG5vdGlmaWNhdGlvbnMgdW50aWwgdGhlIEtleSBBZG1pbiB0dXJucyBpdCBiYWNrIG9uLjwvc3BhblxuICA+IC0tPlxuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3M9XCJ2eC1mcy0xM1wiXG4gICAgICAgIFtpbm5lckhUTUxdPVwibWVzc2FnZXNbYWN0aXZlSW5kZXhdPy5tZXNzYWdlXCJcbiAgICAgID48L3NwYW4+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwibWVzc2FnZXMubGVuZ3RoID4gMVwiXG4gICAgICAgIGNsYXNzPVwiZ2xvYmFsLWFsZXJ0LWFjdGlvbiB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWxoLTZcIlxuICAgICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImFjdGl2ZUluZGV4ID09PSAwXCJcbiAgICAgICAgICAoY2xpY2spPVwiYWN0aXZlSW5kZXggPSBhY3RpdmVJbmRleCAtIDFcIlxuICAgICAgICAgIGNsYXNzPVwidngtZnMtMTIgdngtcC0wIHZ4LW0tMCB2eC1tci00IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgZGlzYWJsZWRcIlxuICAgICAgICA+XG4gICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5NmI7PC9pPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMyB2eC10eHQtd2hpdGVcIj57eyBhY3RpdmVJbmRleCArIDEgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZGl2aWRlciB2eC1mcy0xMSB2eC10eHQtd2hpdGVcIj4vPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInZ4LWZzLTEzIHZ4LWZ3LTYwMCB2eC10eHQtd2hpdGVcIj57e1xuICAgICAgICAgIG1lc3NhZ2VzLmxlbmd0aFxuICAgICAgICB9fTwvc3Bhbj5cblxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImFjdGl2ZUluZGV4ID0gYWN0aXZlSW5kZXggKyAxXCJcbiAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiYWN0aXZlSW5kZXggPT09IG1lc3NhZ2VzLmxlbmd0aCAtIDFcIlxuICAgICAgICAgIGNsYXNzPVwidngtZnMtMTIgdngtcC0wIHZ4LW0tMCB2eC1tbC00IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5NzA7PC9pPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9nbG9iYWwtYWxlcnQuY29tcG9uZW50Lmxlc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgR2xvYmFsQWxlcnRDb21wb25lbnQge1xuICBhY3RpdmVJbmRleCA9IDA7XG4gIG1lc3NhZ2VzOiBBcnJheTxhbnk+ID0gW107XG4gIG1haWxBbGVydDogYW55O1xuICBpc05vdGlmaWNhdGlvblZpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgc3Vic2NyaXB0aW9uRGF0YTogYW55O1xuICBASW5wdXQoKSBmZWF0dXJlOiBhbnk7XG4gIEBPdXRwdXQoKSBzdWJzY3JpcHRpb25TdGF0dXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlKSB7XG4gICAgdGhpcy5zZXRTdWJzY3JpcHRpb25JbmZvKCk7XG4gIH1cblxuICBzZXRTdWJzY3JpcHRpb25JbmZvKCkge1xuICAgIHRoaXMuYXBpU2VydmljZS5zdWJzY3JpcHRpb25EZXRhaWwkLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICBpZiAocmVzKSB7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uRGF0YSA9IHJlcztcbiAgICAgICAgdGhpcy5zZXRNZXNzYWdlcyh0aGlzLnN1YnNjcmlwdGlvbkRhdGEpO1xuICAgICAgICB0aGlzLmdldE9yZ0RldGFpbHMoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldE9yZ0RldGFpbHMoKSB7XG4gICAgdGhpcy5hcGlTZXJ2aWNlLm9yZ2FuaXphdGlvbkRldGFpbCQuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgdGhpcy5zZXRNYWlsQWxlcnQocmVzKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHNldE1lc3NhZ2VzKHN1YnNjcmlwdGlvbkRhdGE6IGFueSkge1xuICAgIGNvbnN0IG1lc3NhZ2VzID0gW107XG4gICAgdGhpcy5hY3RpdmVJbmRleCA9IDA7XG5cbiAgICBpZiAoc3Vic2NyaXB0aW9uRGF0YSkge1xuICAgICAgY29uc3Qge1xuICAgICAgICB0cmlhbF9mbGFnLFxuICAgICAgICBub19vZl9kYXlzX2xlZnQsXG4gICAgICAgIGFmdGVyX2V4cGlyZWRfZGF5c19hbGxvdyxcbiAgICAgICAgbm9fb2ZfZGF5c19mb3JfcGFzc3dvcmRfZXhwaXJlLFxuICAgICAgfSA9IHN1YnNjcmlwdGlvbkRhdGE7XG5cbiAgICAgIGlmICh0cmlhbF9mbGFnICYmIG5vX29mX2RheXNfbGVmdCA8PSAwKSB7XG4gICAgICAgIG1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIG1lc3NhZ2U6IEdMT0JBTF9BTEVSVFMudHJpYWxVc2VyRXhwaXJlZCArIEdMT0JBTF9BTEVSVFMuY29udGFjdFVzLFxuICAgICAgICAgIGNsYXNzOiAnSElHSCcsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChub19vZl9kYXlzX2xlZnQgPiAwICYmIG5vX29mX2RheXNfbGVmdCA8PSAzMCkge1xuICAgICAgICBtZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgICBtZXNzYWdlOiBgWU9VUiBTVUJTQ1JJUFRJT04gRVhQSVJFUyBJTiAke25vX29mX2RheXNfbGVmdH0gREFZUy4gJHtHTE9CQUxfQUxFUlRTLmNvbnRhY3RVc31gLFxuICAgICAgICAgIGNsYXNzOiBub19vZl9kYXlzX2xlZnQgPD0gMTAgPyAnSElHSCcgOiAnTUVESVVNJyxcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKG5vX29mX2RheXNfbGVmdCA8PSAwKSB7XG4gICAgICAgIG1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIG1lc3NhZ2U6IGBTVUJTQ1JJUFRJT04gRVhQSVJFRDogWU9VIFdJTEwgTk9UIEJFIEFCTEUgVE8gTE9HSU4gVE8gWU9VUiBBQ0NPVU5UIEFGVEVSICR7YWZ0ZXJfZXhwaXJlZF9kYXlzX2FsbG93fSBEQVlTLiAke0dMT0JBTF9BTEVSVFMuY29udGFjdFVzfWAsXG4gICAgICAgICAgY2xhc3M6ICdISUdIJyxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChub19vZl9kYXlzX2Zvcl9wYXNzd29yZF9leHBpcmUgPCAxKSB7XG4gICAgICAgIG1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIG1lc3NhZ2U6IGBZT1VSIFBBU1NXT1JEIEhBUyBFWFBJUkVELiBQTEVBU0UgPGEgaHJlZj1cIiR7dGhpcy5nZXRQYXNzd29yZFJlc2V0VXJsKCl9XCIgdGFyZ2V0PVwiX2JsYW5rXCI+Q0xJQ0sgSEVSRTwvYT4gVE8gUkVTRVQgWU9VUiBQQVNTV09SRC5gLFxuICAgICAgICAgIGNsYXNzOiAnSElHSCcsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChub19vZl9kYXlzX2Zvcl9wYXNzd29yZF9leHBpcmUgPCAzMCkge1xuICAgICAgICBtZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgICBtZXNzYWdlOiBgWU9VUiBQQVNTV09SRCBJUyBHT0lORyBUTyBFWFBJUkUgSU4gJHtub19vZl9kYXlzX2Zvcl9wYXNzd29yZF9leHBpcmV9IERBWVMuIDxhIGhyZWY9XCIke3RoaXMuZ2V0UGFzc3dvcmRSZXNldFVybCgpfVwiIHRhcmdldD1cIl9ibGFua1wiPkNMSUNLIEhFUkU8L2E+IFRPIFJFU0VUIFlPVVIgUEFTU1dPUkQuYCxcbiAgICAgICAgICBjbGFzczogJ01FRElVTScsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMubWVzc2FnZXMgPSBtZXNzYWdlcztcbiAgICB0aGlzLmlzTm90aWZpY2F0aW9uVmlzaWJsZSA9IHRoaXMubWVzc2FnZXMubGVuZ3RoID4gMDtcbiAgICB0aGlzLnN1YnNjcmlwdGlvblN0YXR1cy5lbWl0KHRoaXMuaXNOb3RpZmljYXRpb25WaXNpYmxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiB0aGUgcmVzcG9uc2UgaXMgdHJ1ZSwgdGhlbiBwdXNoIHRoZSBtZXNzYWdlIHRvIHRoZSBhcnJheS4gSWYgdGhlIHJlc3BvbnNlIGlzIGZhbHNlLCB0aGVuIHJlbW92ZVxuICAgKiB0aGUgbWVzc2FnZSBmcm9tIHRoZSBhcnJheS5cbiAgICogPC9jb2RlPlxuICAgKiBAcGFyYW0ge2FueX0gcmVzIC0gYW55ID0ge1xuICAgKi9cbiAgc2V0TWFpbEFsZXJ0KHJlczogYW55KSB7XG4gICAgY29uc3QgZW1haWxQYXVzZWRNZXNzYWdlID0gdGhpcy5mZWF0dXJlPy5pc0ZlYXR1cmVFbmFibGVkKFxuICAgICAgJ2ZmX2VtYWlsX2FsZXJ0X3VwZGF0ZSdcbiAgICApXG4gICAgICA/IEdMT0JBTF9BTEVSVFMuTk9USUZfUEFVU0VfTUVTU0FHRVxuICAgICAgOiBHTE9CQUxfQUxFUlRTLkVNQUlMX1BBVVNFO1xuXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLm1lc3NhZ2VzLmZpbmRJbmRleCgobWVzc2FnZTogYW55KSA9PlxuICAgICAgbWVzc2FnZT8ubWVzc2FnZT8uaW5jbHVkZXMoZW1haWxQYXVzZWRNZXNzYWdlKVxuICAgICk7XG5cbiAgICBpZiAocmVzPy5pc19tYWlsX2Jsb2NrID09PSAxICYmIGluZGV4ID09PSAtMSkge1xuICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgbWVzc2FnZTogZW1haWxQYXVzZWRNZXNzYWdlLFxuICAgICAgICBjbGFzczogJ01FRElVTScsXG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKHJlcz8uaXNfbWFpbF9ibG9jayA9PT0gMCAmJiBpbmRleCA+PSAwKSB7XG4gICAgICB0aGlzLnNldE1lc3NhZ2VzKHRoaXMuc3Vic2NyaXB0aW9uRGF0YSk7XG4gICAgfVxuXG4gICAgdGhpcy5pc05vdGlmaWNhdGlvblZpc2libGUgPSB0aGlzLm1lc3NhZ2VzLmxlbmd0aCA+IDA7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25TdGF0dXMuZW1pdCh0aGlzLmlzTm90aWZpY2F0aW9uVmlzaWJsZSk7XG4gIH1cblxuICBnZXRQYXNzd29yZFJlc2V0VXJsKCkge1xuICAgIHJldHVybiBgaHR0cHM6Ly8ke3dpbmRvdy5sb2NhdGlvbi5ob3N0fSR7SU5fQVBQX1VSTC5QQVNTV09SRF9SRVNFVH1gO1xuICB9XG59XG4iXX0=
|
|
191
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWFsZXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZjLWxheW91dC9zcmMvbGliL2NvbXBvbmVudHMvZ2xvYmFsLWFsZXJ0L2dsb2JhbC1hbGVydC9nbG9iYWwtYWxlcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7OztBQWlEakUsTUFBTSxPQUFPLG9CQUFvQjtJQVMvQixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBUjFDLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLGFBQVEsR0FBZSxFQUFFLENBQUM7UUFFMUIsMEJBQXFCLEdBQVksS0FBSyxDQUFDO1FBRzdCLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHaEQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3BELElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUN0QjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsVUFBVSxDQUFDLG1C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LGtCQUFrQjtnQkFDM0IsS0FBSyxFQUFFLFFBQVE7YUFDaEIsQ0FBQyxDQUFDO1NBQ0o7YUFBTSxJQUFJLEdBQUcsRUFBRSxhQUFhLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7WUFDakQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUN6QztRQUVELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sV0FBVyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDdkUsQ0FBQzsrR0E5R1Usb0JBQW9CO21HQUFwQixvQkFBb0IsOElBNUNyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Q1Q7OzRGQUdVLG9CQUFvQjtrQkE5Q2hDLFNBQVM7K0JBQ0UsaUJBQWlCLFlBQ2pCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlDVDtpR0FTUSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgR0xPQkFMX0FMRVJUUyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9hbGVydHMuY29uc3RhbnQnO1xyXG5pbXBvcnQgeyBJTl9BUFBfVVJMIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL2FwcC11cmwuY29uc3RhbnQnO1xyXG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndmMtZ2xvYmFsLWFsZXJ0JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdlxyXG4gICAgICAqbmdJZj1cIm1lc3NhZ2VzLmxlbmd0aCA+IDBcIlxyXG4gICAgICBjbGFzcz1cImdsb2JhbC1hbGVydCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktY2VudGVyXCJcclxuICAgICAgW2NsYXNzLmV4cGlyZWRdPVwibWVzc2FnZXNbYWN0aXZlSW5kZXhdPy5jbGFzcyA9PT0gJ0hJR0gnXCJcclxuICAgID5cclxuICAgICAgPGkgY2xhc3M9XCJpY29ucyB2eC1mcy0xMiB2eC1tci0yXCI+JiN4ZTkzMDs8L2k+XHJcbiAgICAgIDwhLS0gPHNwYW4gY2xhc3M9XCJ2eC1mcy0xM1wiXHJcbiAgICA+RW1haWwgbm90aWZpY2F0aW9ucyBoYXZlIGJlZW4gcGF1c2VkIGJ5IHRoZSBLZXkgQWRtaW4uIFlvdSB3aWxsIG5vdCBiZSBhYmxlXHJcbiAgICB0byBlZGl0IHlvdXIgZW1haWwgbm90aWZpY2F0aW9ucyB1bnRpbCB0aGUgS2V5IEFkbWluIHR1cm5zIGl0IGJhY2sgb24uPC9zcGFuXHJcbiAgPiAtLT5cclxuICAgICAgPHNwYW5cclxuICAgICAgICBjbGFzcz1cInZ4LWZzLTEzXCJcclxuICAgICAgICBbaW5uZXJIVE1MXT1cIm1lc3NhZ2VzW2FjdGl2ZUluZGV4XT8ubWVzc2FnZVwiXHJcbiAgICAgID48L3NwYW4+XHJcbiAgICAgIDxkaXZcclxuICAgICAgICAqbmdJZj1cIm1lc3NhZ2VzLmxlbmd0aCA+IDFcIlxyXG4gICAgICAgIGNsYXNzPVwiZ2xvYmFsLWFsZXJ0LWFjdGlvbiB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWxoLTZcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImFjdGl2ZUluZGV4ID09PSAwXCJcclxuICAgICAgICAgIChjbGljayk9XCJhY3RpdmVJbmRleCA9IGFjdGl2ZUluZGV4IC0gMVwiXHJcbiAgICAgICAgICBjbGFzcz1cInZ4LWZzLTEyIHZ4LXAtMCB2eC1tLTAgdngtbXItNCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIGRpc2FibGVkXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTk2Yjs8L2k+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMyB2eC10eHQtd2hpdGVcIj57eyBhY3RpdmVJbmRleCArIDEgfX08L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJkaXZpZGVyIHZ4LWZzLTExIHZ4LXR4dC13aGl0ZVwiPi88L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMyB2eC1mdy02MDAgdngtdHh0LXdoaXRlXCI+e3tcclxuICAgICAgICAgIG1lc3NhZ2VzLmxlbmd0aFxyXG4gICAgICAgIH19PC9zcGFuPlxyXG5cclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAoY2xpY2spPVwiYWN0aXZlSW5kZXggPSBhY3RpdmVJbmRleCArIDFcIlxyXG4gICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImFjdGl2ZUluZGV4ID09PSBtZXNzYWdlcy5sZW5ndGggLSAxXCJcclxuICAgICAgICAgIGNsYXNzPVwidngtZnMtMTIgdngtcC0wIHZ4LW0tMCB2eC1tbC00IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTcwOzwvaT5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIHN0eWxlVXJsczogWycuL2dsb2JhbC1hbGVydC5jb21wb25lbnQubGVzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgR2xvYmFsQWxlcnRDb21wb25lbnQge1xyXG4gIGFjdGl2ZUluZGV4ID0gMDtcclxuICBtZXNzYWdlczogQXJyYXk8YW55PiA9IFtdO1xyXG4gIG1haWxBbGVydDogYW55O1xyXG4gIGlzTm90aWZpY2F0aW9uVmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHN1YnNjcmlwdGlvbkRhdGE6IGFueTtcclxuICBASW5wdXQoKSBmZWF0dXJlOiBhbnk7XHJcbiAgQE91dHB1dCgpIHN1YnNjcmlwdGlvblN0YXR1cyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLnNldFN1YnNjcmlwdGlvbkluZm8oKTtcclxuICB9XHJcblxyXG4gIHNldFN1YnNjcmlwdGlvbkluZm8oKSB7XHJcbiAgICB0aGlzLmFwaVNlcnZpY2Uuc3Vic2NyaXB0aW9uRGV0YWlsJC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICBpZiAocmVzKSB7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25EYXRhID0gcmVzO1xyXG4gICAgICAgIHRoaXMuc2V0TWVzc2FnZXModGhpcy5zdWJzY3JpcHRpb25EYXRhKTtcclxuICAgICAgICB0aGlzLmdldE9yZ0RldGFpbHMoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRPcmdEZXRhaWxzKCkge1xyXG4gICAgdGhpcy5hcGlTZXJ2aWNlLm9yZ2FuaXphdGlvbkRldGFpbCQuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgaWYgKHJlcykge1xyXG4gICAgICAgIHRoaXMuc2V0TWFpbEFsZXJ0KHJlcyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0TWVzc2FnZXMoc3Vic2NyaXB0aW9uRGF0YTogYW55KSB7XHJcbiAgICBjb25zdCBtZXNzYWdlcyA9IFtdO1xyXG4gICAgdGhpcy5hY3RpdmVJbmRleCA9IDA7XHJcblxyXG4gICAgaWYgKHN1YnNjcmlwdGlvbkRhdGEpIHtcclxuICAgICAgY29uc3Qge1xyXG4gICAgICAgIHRyaWFsX2ZsYWcsXHJcbiAgICAgICAgbm9fb2ZfZGF5c19sZWZ0LFxyXG4gICAgICAgIGFmdGVyX2V4cGlyZWRfZGF5c19hbGxvdyxcclxuICAgICAgICBub19vZl9kYXlzX2Zvcl9wYXNzd29yZF9leHBpcmUsXHJcbiAgICAgIH0gPSBzdWJzY3JpcHRpb25EYXRhO1xyXG5cclxuICAgICAgaWYgKHRyaWFsX2ZsYWcgJiYgbm9fb2ZfZGF5c19sZWZ0IDw9IDApIHtcclxuICAgICAgICBtZXNzYWdlcy5wdXNoKHtcclxuICAgICAgICAgIG1lc3NhZ2U6IEdMT0JBTF9BTEVSVFMudHJpYWxVc2VyRXhwaXJlZCArIEdMT0JBTF9BTEVSVFMuY29udGFjdFVzLFxyXG4gICAgICAgICAgY2xhc3M6ICdISUdIJyxcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIGlmIChub19vZl9kYXlzX2xlZnQgPiAwICYmIG5vX29mX2RheXNfbGVmdCA8PSAzMCkge1xyXG4gICAgICAgIG1lc3NhZ2VzLnB1c2goe1xyXG4gICAgICAgICAgbWVzc2FnZTogYFlPVVIgU1VCU0NSSVBUSU9OIEVYUElSRVMgSU4gJHtub19vZl9kYXlzX2xlZnR9IERBWVMuICR7R0xPQkFMX0FMRVJUUy5jb250YWN0VXN9YCxcclxuICAgICAgICAgIGNsYXNzOiBub19vZl9kYXlzX2xlZnQgPD0gMTAgPyAnSElHSCcgOiAnTUVESVVNJyxcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIGlmIChub19vZl9kYXlzX2xlZnQgPD0gMCkge1xyXG4gICAgICAgIG1lc3NhZ2VzLnB1c2goe1xyXG4gICAgICAgICAgbWVzc2FnZTogYFNVQlNDUklQVElPTiBFWFBJUkVEOiBZT1UgV0lMTCBOT1QgQkUgQUJMRSBUTyBMT0dJTiBUTyBZT1VSIEFDQ09VTlQgQUZURVIgJHthZnRlcl9leHBpcmVkX2RheXNfYWxsb3d9IERBWVMuICR7R0xPQkFMX0FMRVJUUy5jb250YWN0VXN9YCxcclxuICAgICAgICAgIGNsYXNzOiAnSElHSCcsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChub19vZl9kYXlzX2Zvcl9wYXNzd29yZF9leHBpcmUgPCAxKSB7XHJcbiAgICAgICAgbWVzc2FnZXMucHVzaCh7XHJcbiAgICAgICAgICBtZXNzYWdlOiBgWU9VUiBQQVNTV09SRCBIQVMgRVhQSVJFRC4gUExFQVNFIDxhIGhyZWY9XCIke3RoaXMuZ2V0UGFzc3dvcmRSZXNldFVybCgpfVwiIHRhcmdldD1cIl9ibGFua1wiPkNMSUNLIEhFUkU8L2E+IFRPIFJFU0VUIFlPVVIgUEFTU1dPUkQuYCxcclxuICAgICAgICAgIGNsYXNzOiAnSElHSCcsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSBpZiAobm9fb2ZfZGF5c19mb3JfcGFzc3dvcmRfZXhwaXJlIDwgMzApIHtcclxuICAgICAgICBtZXNzYWdlcy5wdXNoKHtcclxuICAgICAgICAgIG1lc3NhZ2U6IGBZT1VSIFBBU1NXT1JEIElTIEdPSU5HIFRPIEVYUElSRSBJTiAke25vX29mX2RheXNfZm9yX3Bhc3N3b3JkX2V4cGlyZX0gREFZUy4gPGEgaHJlZj1cIiR7dGhpcy5nZXRQYXNzd29yZFJlc2V0VXJsKCl9XCIgdGFyZ2V0PVwiX2JsYW5rXCI+Q0xJQ0sgSEVSRTwvYT4gVE8gUkVTRVQgWU9VUiBQQVNTV09SRC5gLFxyXG4gICAgICAgICAgY2xhc3M6ICdNRURJVU0nLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5tZXNzYWdlcyA9IG1lc3NhZ2VzO1xyXG4gICAgdGhpcy5pc05vdGlmaWNhdGlvblZpc2libGUgPSB0aGlzLm1lc3NhZ2VzLmxlbmd0aCA+IDA7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvblN0YXR1cy5lbWl0KHRoaXMuaXNOb3RpZmljYXRpb25WaXNpYmxlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIElmIHRoZSByZXNwb25zZSBpcyB0cnVlLCB0aGVuIHB1c2ggdGhlIG1lc3NhZ2UgdG8gdGhlIGFycmF5LiBJZiB0aGUgcmVzcG9uc2UgaXMgZmFsc2UsIHRoZW4gcmVtb3ZlXHJcbiAgICogdGhlIG1lc3NhZ2UgZnJvbSB0aGUgYXJyYXkuXHJcbiAgICogPC9jb2RlPlxyXG4gICAqIEBwYXJhbSB7YW55fSByZXMgLSBhbnkgPSB7XHJcbiAgICovXHJcbiAgc2V0TWFpbEFsZXJ0KHJlczogYW55KSB7XHJcbiAgICBjb25zdCBlbWFpbFBhdXNlZE1lc3NhZ2UgPSB0aGlzLmZlYXR1cmU/LmlzRmVhdHVyZUVuYWJsZWQoXHJcbiAgICAgICdmZl9lbWFpbF9hbGVydF91cGRhdGUnXHJcbiAgICApXHJcbiAgICAgID8gR0xPQkFMX0FMRVJUUy5OT1RJRl9QQVVTRV9NRVNTQUdFXHJcbiAgICAgIDogR0xPQkFMX0FMRVJUUy5FTUFJTF9QQVVTRTtcclxuXHJcbiAgICBjb25zdCBpbmRleCA9IHRoaXMubWVzc2FnZXMuZmluZEluZGV4KChtZXNzYWdlOiBhbnkpID0+XHJcbiAgICAgIG1lc3NhZ2U/Lm1lc3NhZ2U/LmluY2x1ZGVzKGVtYWlsUGF1c2VkTWVzc2FnZSlcclxuICAgICk7XHJcblxyXG4gICAgaWYgKHJlcz8uaXNfbWFpbF9ibG9jayA9PT0gMSAmJiBpbmRleCA9PT0gLTEpIHtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHtcclxuICAgICAgICBtZXNzYWdlOiBlbWFpbFBhdXNlZE1lc3NhZ2UsXHJcbiAgICAgICAgY2xhc3M6ICdNRURJVU0nLFxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSBpZiAocmVzPy5pc19tYWlsX2Jsb2NrID09PSAwICYmIGluZGV4ID49IDApIHtcclxuICAgICAgdGhpcy5zZXRNZXNzYWdlcyh0aGlzLnN1YnNjcmlwdGlvbkRhdGEpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaXNOb3RpZmljYXRpb25WaXNpYmxlID0gdGhpcy5tZXNzYWdlcy5sZW5ndGggPiAwO1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25TdGF0dXMuZW1pdCh0aGlzLmlzTm90aWZpY2F0aW9uVmlzaWJsZSk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXNzd29yZFJlc2V0VXJsKCkge1xyXG4gICAgcmV0dXJuIGBodHRwczovLyR7d2luZG93LmxvY2F0aW9uLmhvc3R9JHtJTl9BUFBfVVJMLlBBU1NXT1JEX1JFU0VUfWA7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
15
15
|
exports: [GlobalAlertComponent],
|
|
16
16
|
}]
|
|
17
17
|
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWFsZXJ0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZjLWxheW91dC9zcmMvbGliL2NvbXBvbmVudHMvZ2xvYmFsLWFsZXJ0L2dsb2JhbC1hbGVydC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBTzdFLE1BQU0sT0FBTyxpQkFBaUI7K0dBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQUpiLG9CQUFvQixhQUN6QixZQUFZLGFBQ1osb0JBQW9CO2dIQUVuQixpQkFBaUIsWUFIbEIsWUFBWTs7NEZBR1gsaUJBQWlCO2tCQUw3QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO2lCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEdsb2JhbEFsZXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9nbG9iYWwtYWxlcnQvZ2xvYmFsLWFsZXJ0LmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0dsb2JhbEFsZXJ0Q29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICBleHBvcnRzOiBbR2xvYmFsQWxlcnRDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgR2xvYmFsQWxlcnRNb2R1bGUge31cclxuIl19
|
|
@@ -262,14 +262,14 @@ export class BusinessCycleComponent {
|
|
|
262
262
|
}
|
|
263
263
|
}
|
|
264
264
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BusinessCycleComponent, deps: [{ token: i1.AuthorizerService }, { token: i2.BusinessCycleService }, { token: i3.ApiService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
265
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: BusinessCycleComponent, selector: "vc-business-cycle", inputs: { orgDetails: "orgDetails" }, outputs: { businessCycleChange: "businessCycleChange" }, ngImport: i0, template: "<div\n class=\"vc-business-cycle vx-pt-2 vx-pb-2\"\n appPopover\n (click)=\"businessCyclePop.popover()\"\n position=\"left\"\n>\n <div class=\"heading vx-fs-9 vx-tt-uppercase vx-mb-1 vx-lh-3\">\n SHOWING DATA {{ cycleToShow === \"Show Future Due Dates\" ? \"For\" : \"From\" }}\n </div>\n <div class=\"vx-d-flex vx-align-center vx-justify-between vx-lh-4\">\n <div class=\"vx-d-flex vx-align-center\">\n <i class=\"icons calendar vx-fs-12 vx-mr-2\"></i>\n <span class=\"vx-fs-11 vx-txt-white vx-d-inline-block\">{{\n cycleToShow === \"Show Future Due Dates\"\n ? \"Future Due Dates\"\n : cycleToShow\n }}</span>\n </div>\n <i class=\"icons arrow vx-fs-10 vx-mr-2\"></i>\n </div>\n</div>\n\n<vui-popover #businessCyclePop [dontCloseonClick]=\"true\">\n <div class=\"vc-business-cycle-popover-container\">\n <div\n class=\"vc-business-cycle-popover-container-top vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\n >\n <p class=\"vx-fs-11 vx-fw-400 vx-label-txt vx-p-0 vx-m-0\">\n You can select upto a max of two consecutive years\n </p>\n </div>\n <div class=\"vc-business-cycle-popover-container-body\">\n <ul class=\"vx-p-0 vx-m-0\">\n <ng-container\n *ngFor=\"let eachCycle of businessCycleList; let i = index\"\n >\n <li\n *ngIf=\"\n eachCycle?.business_cycle?.toLowerCase() ===\n 'show future due dates'\n \"\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\n [class.future-cycle]=\"true\"\n >\n <app-cs-checkbox\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\n [disabled]=\"eachCycle?.isDisabled\"\n >Show Future Due Dates</app-cs-checkbox\n >\n <i\n class=\"icons info-icon vx-fs-12\"\n [arTooltip]=\"\n 'This option lets you view data that lies outside the current business cycle and are due in the future.'\n \"\n placement=\"bottom\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n ></i\n >\n </li>\n <li\n *ngIf=\"\n eachCycle?.business_cycle?.toLowerCase() !==\n 'show future due dates'\n \"\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\n >\n <app-cs-checkbox\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\n [disabled]=\"eachCycle?.isDisabled\"\n >{{ eachCycle?.start_date | dateFormat }} -\n <ng-container>\n {{ eachCycle?.end_date | dateFormat }}</ng-container\n >\n </app-cs-checkbox>\n </li>\n </ng-container>\n </ul>\n </div>\n <div\n class=\"vc-business-cycle-popover-container-footer vx-d-flex vx-justify-between vx-p-3\"\n >\n <button\n (click)=\"businessCyclePop.closePopover('top')\"\n class=\"white vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-blue\"\n >\n CANCEL\n </button>\n <button\n (click)=\"setBusinessCycle(); businessCyclePop.closePopover('top')\"\n [class.disabled]=\"false\"\n class=\"blue vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-white\"\n >\n APPLY\n </button>\n </div>\n </div>\n</vui-popover>\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";::ng-deep .vc-business-cycle{position:relative;width:12.5rem;height:3rem;cursor:pointer;z-index:1}::ng-deep .vc-business-cycle .heading{color:#e3e3e9}::ng-deep .vc-business-cycle i.calendar{color:#e3e3e9}::ng-deep .vc-business-cycle i.arrow{color:#f1f1f1}::ng-deep .vc-business-cycle-popover-container{width:15.625rem;background:#fff;box-shadow:0 4px 8px #1e5dd326;border:1px solid #e3e3e9;border-radius:.25rem;z-index:4}::ng-deep .vc-business-cycle-popover-container-top{background:#f8f8f8}::ng-deep .vc-business-cycle-popover-container-top p{line-height:.875rem}::ng-deep .vc-business-cycle-popover-container-body{background:#fff;max-height:200px;overflow-y:auto}::ng-deep .vc-business-cycle-popover-container-body ul li{list-style:none;margin:0;position:relative}::ng-deep .vc-business-cycle-popover-container-body ul li:before{background:#f1f1f1;content:\"\";position:absolute;left:.75rem;right:.75rem;bottom:0;height:.0625rem;width:calc(100% - 1.5rem)}::ng-deep .vc-business-cycle-popover-container-body ul li:last-of-type:before{display:none}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle{background:#fadd8a}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle:before{display:none}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle app-cs-checkbox label.checkbox-item span.checkbox{background:#fff}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle app-cs-checkbox label.checkbox-item span.value i{margin-left:.375rem}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle .info-icon{margin-left:.375rem;cursor:context-menu}::ng-deep .vc-business-cycle-popover-container-body ul li app-cs-checkbox{display:flex}::ng-deep .vc-business-cycle-popover-container-body ul li app-cs-checkbox label.checkbox-item span.value{font-size:12px!important;color:#161b2f!important;max-width:100%!important}::ng-deep .vc-business-cycle-popover-container-footer{background:#f8f8f8;border-radius:0 0 .25rem .25rem}::ng-deep .vc-business-cycle-popover-container-footer button{width:calc(50% - .125rem);height:1.5rem;border:1px solid transparent;text-transform:uppercase;border-radius:.125rem;line-height:1.375rem}::ng-deep .vc-business-cycle-popover-container-footer button.white{background:#fff;border-color:#dbdbdb}::ng-deep .vc-business-cycle-popover-container-footer button.blue{background:#1e5dd3;border-color:#1e5dd3}::ng-deep .vc-business-cycle-popover-container-footer button.disabled{background:#dbdbdb;color:#747576;border:none;pointer-events:none!important}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.ToolTipDirective, selector: "[arTooltip]", inputs: ["arTooltip", "placement", "type", "tooltipMandatory", "showTooltip", "animate"] }, { kind: "component", type: i6.PopoverComponent, selector: "vui-popover", inputs: ["dontCloseonClick"], outputs: ["closedOnOverlay"] }, { kind: "directive", type: i7.PopoverDirective, selector: "[appPopover]", inputs: ["refrence", "position"] }, { kind: "component", type: i8.CsCheckboxComponent, selector: "app-cs-checkbox", inputs: ["disabled", "ngValue", "value"], outputs: ["ngValueChange"] }, { kind: "pipe", type: i9.DateFormatPipe, name: "dateFormat" }] }); }
|
|
265
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: BusinessCycleComponent, selector: "vc-business-cycle", inputs: { orgDetails: "orgDetails" }, outputs: { businessCycleChange: "businessCycleChange" }, ngImport: i0, template: "<div\r\n class=\"vc-business-cycle vx-pt-2 vx-pb-2\"\r\n appPopover\r\n (click)=\"businessCyclePop.popover()\"\r\n position=\"left\"\r\n>\r\n <div class=\"heading vx-fs-9 vx-tt-uppercase vx-mb-1 vx-lh-3\">\r\n SHOWING DATA {{ cycleToShow === \"Show Future Due Dates\" ? \"For\" : \"From\" }}\r\n </div>\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between vx-lh-4\">\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <i class=\"icons calendar vx-fs-12 vx-mr-2\"></i>\r\n <span class=\"vx-fs-11 vx-txt-white vx-d-inline-block\">{{\r\n cycleToShow === \"Show Future Due Dates\"\r\n ? \"Future Due Dates\"\r\n : cycleToShow\r\n }}</span>\r\n </div>\r\n <i class=\"icons arrow vx-fs-10 vx-mr-2\"></i>\r\n </div>\r\n</div>\r\n\r\n<vui-popover #businessCyclePop [dontCloseonClick]=\"true\">\r\n <div class=\"vc-business-cycle-popover-container\">\r\n <div\r\n class=\"vc-business-cycle-popover-container-top vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\r\n >\r\n <p class=\"vx-fs-11 vx-fw-400 vx-label-txt vx-p-0 vx-m-0\">\r\n You can select upto a max of two consecutive years\r\n </p>\r\n </div>\r\n <div class=\"vc-business-cycle-popover-container-body\">\r\n <ul class=\"vx-p-0 vx-m-0\">\r\n <ng-container\r\n *ngFor=\"let eachCycle of businessCycleList; let i = index\"\r\n >\r\n <li\r\n *ngIf=\"\r\n eachCycle?.business_cycle?.toLowerCase() ===\r\n 'show future due dates'\r\n \"\r\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\r\n [class.future-cycle]=\"true\"\r\n >\r\n <app-cs-checkbox\r\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\r\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\r\n [disabled]=\"eachCycle?.isDisabled\"\r\n >Show Future Due Dates</app-cs-checkbox\r\n >\r\n <i\r\n class=\"icons info-icon vx-fs-12\"\r\n [arTooltip]=\"\r\n 'This option lets you view data that lies outside the current business cycle and are due in the future.'\r\n \"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n ></i\r\n >\r\n </li>\r\n <li\r\n *ngIf=\"\r\n eachCycle?.business_cycle?.toLowerCase() !==\r\n 'show future due dates'\r\n \"\r\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\r\n >\r\n <app-cs-checkbox\r\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\r\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\r\n [disabled]=\"eachCycle?.isDisabled\"\r\n >{{ eachCycle?.start_date | dateFormat }} -\r\n <ng-container>\r\n {{ eachCycle?.end_date | dateFormat }}</ng-container\r\n >\r\n </app-cs-checkbox>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n <div\r\n class=\"vc-business-cycle-popover-container-footer vx-d-flex vx-justify-between vx-p-3\"\r\n >\r\n <button\r\n (click)=\"businessCyclePop.closePopover('top')\"\r\n class=\"white vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-blue\"\r\n >\r\n CANCEL\r\n </button>\r\n <button\r\n (click)=\"setBusinessCycle(); businessCyclePop.closePopover('top')\"\r\n [class.disabled]=\"false\"\r\n class=\"blue vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-white\"\r\n >\r\n APPLY\r\n </button>\r\n </div>\r\n </div>\r\n</vui-popover>\r\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";::ng-deep .vc-business-cycle{position:relative;width:12.5rem;height:3rem;cursor:pointer;z-index:1}::ng-deep .vc-business-cycle .heading{color:#e3e3e9}::ng-deep .vc-business-cycle i.calendar{color:#e3e3e9}::ng-deep .vc-business-cycle i.arrow{color:#f1f1f1}::ng-deep .vc-business-cycle-popover-container{width:15.625rem;background:#fff;box-shadow:0 4px 8px #1e5dd326;border:1px solid #e3e3e9;border-radius:.25rem;z-index:4}::ng-deep .vc-business-cycle-popover-container-top{background:#f8f8f8}::ng-deep .vc-business-cycle-popover-container-top p{line-height:.875rem}::ng-deep .vc-business-cycle-popover-container-body{background:#fff;max-height:200px;overflow-y:auto}::ng-deep .vc-business-cycle-popover-container-body ul li{list-style:none;margin:0;position:relative}::ng-deep .vc-business-cycle-popover-container-body ul li:before{background:#f1f1f1;content:\"\";position:absolute;left:.75rem;right:.75rem;bottom:0;height:.0625rem;width:calc(100% - 1.5rem)}::ng-deep .vc-business-cycle-popover-container-body ul li:last-of-type:before{display:none}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle{background:#fadd8a}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle:before{display:none}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle app-cs-checkbox label.checkbox-item span.checkbox{background:#fff}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle app-cs-checkbox label.checkbox-item span.value i{margin-left:.375rem}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle .info-icon{margin-left:.375rem;cursor:context-menu}::ng-deep .vc-business-cycle-popover-container-body ul li app-cs-checkbox{display:flex}::ng-deep .vc-business-cycle-popover-container-body ul li app-cs-checkbox label.checkbox-item span.value{font-size:12px!important;color:#161b2f!important;max-width:100%!important}::ng-deep .vc-business-cycle-popover-container-footer{background:#f8f8f8;border-radius:0 0 .25rem .25rem}::ng-deep .vc-business-cycle-popover-container-footer button{width:calc(50% - .125rem);height:1.5rem;border:1px solid transparent;text-transform:uppercase;border-radius:.125rem;line-height:1.375rem}::ng-deep .vc-business-cycle-popover-container-footer button.white{background:#fff;border-color:#dbdbdb}::ng-deep .vc-business-cycle-popover-container-footer button.blue{background:#1e5dd3;border-color:#1e5dd3}::ng-deep .vc-business-cycle-popover-container-footer button.disabled{background:#dbdbdb;color:#747576;border:none;pointer-events:none!important}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.ToolTipDirective, selector: "[arTooltip]", inputs: ["arTooltip", "placement", "type", "tooltipMandatory", "showTooltip", "animate"] }, { kind: "component", type: i6.PopoverComponent, selector: "vui-popover", inputs: ["dontCloseonClick"], outputs: ["closedOnOverlay"] }, { kind: "directive", type: i7.PopoverDirective, selector: "[appPopover]", inputs: ["refrence", "position"] }, { kind: "component", type: i8.CsCheckboxComponent, selector: "app-cs-checkbox", inputs: ["disabled", "ngValue", "value"], outputs: ["ngValueChange"] }, { kind: "pipe", type: i9.DateFormatPipe, name: "dateFormat" }] }); }
|
|
266
266
|
}
|
|
267
267
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BusinessCycleComponent, decorators: [{
|
|
268
268
|
type: Component,
|
|
269
|
-
args: [{ selector: 'vc-business-cycle', template: "<div\n class=\"vc-business-cycle vx-pt-2 vx-pb-2\"\n appPopover\n (click)=\"businessCyclePop.popover()\"\n position=\"left\"\n>\n <div class=\"heading vx-fs-9 vx-tt-uppercase vx-mb-1 vx-lh-3\">\n SHOWING DATA {{ cycleToShow === \"Show Future Due Dates\" ? \"For\" : \"From\" }}\n </div>\n <div class=\"vx-d-flex vx-align-center vx-justify-between vx-lh-4\">\n <div class=\"vx-d-flex vx-align-center\">\n <i class=\"icons calendar vx-fs-12 vx-mr-2\"></i>\n <span class=\"vx-fs-11 vx-txt-white vx-d-inline-block\">{{\n cycleToShow === \"Show Future Due Dates\"\n ? \"Future Due Dates\"\n : cycleToShow\n }}</span>\n </div>\n <i class=\"icons arrow vx-fs-10 vx-mr-2\"></i>\n </div>\n</div>\n\n<vui-popover #businessCyclePop [dontCloseonClick]=\"true\">\n <div class=\"vc-business-cycle-popover-container\">\n <div\n class=\"vc-business-cycle-popover-container-top vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\n >\n <p class=\"vx-fs-11 vx-fw-400 vx-label-txt vx-p-0 vx-m-0\">\n You can select upto a max of two consecutive years\n </p>\n </div>\n <div class=\"vc-business-cycle-popover-container-body\">\n <ul class=\"vx-p-0 vx-m-0\">\n <ng-container\n *ngFor=\"let eachCycle of businessCycleList; let i = index\"\n >\n <li\n *ngIf=\"\n eachCycle?.business_cycle?.toLowerCase() ===\n 'show future due dates'\n \"\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\n [class.future-cycle]=\"true\"\n >\n <app-cs-checkbox\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\n [disabled]=\"eachCycle?.isDisabled\"\n >Show Future Due Dates</app-cs-checkbox\n >\n <i\n class=\"icons info-icon vx-fs-12\"\n [arTooltip]=\"\n 'This option lets you view data that lies outside the current business cycle and are due in the future.'\n \"\n placement=\"bottom\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n ></i\n >\n </li>\n <li\n *ngIf=\"\n eachCycle?.business_cycle?.toLowerCase() !==\n 'show future due dates'\n \"\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\n >\n <app-cs-checkbox\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\n [disabled]=\"eachCycle?.isDisabled\"\n >{{ eachCycle?.start_date | dateFormat }} -\n <ng-container>\n {{ eachCycle?.end_date | dateFormat }}</ng-container\n >\n </app-cs-checkbox>\n </li>\n </ng-container>\n </ul>\n </div>\n <div\n class=\"vc-business-cycle-popover-container-footer vx-d-flex vx-justify-between vx-p-3\"\n >\n <button\n (click)=\"businessCyclePop.closePopover('top')\"\n class=\"white vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-blue\"\n >\n CANCEL\n </button>\n <button\n (click)=\"setBusinessCycle(); businessCyclePop.closePopover('top')\"\n [class.disabled]=\"false\"\n class=\"blue vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-white\"\n >\n APPLY\n </button>\n </div>\n </div>\n</vui-popover>\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";::ng-deep .vc-business-cycle{position:relative;width:12.5rem;height:3rem;cursor:pointer;z-index:1}::ng-deep .vc-business-cycle .heading{color:#e3e3e9}::ng-deep .vc-business-cycle i.calendar{color:#e3e3e9}::ng-deep .vc-business-cycle i.arrow{color:#f1f1f1}::ng-deep .vc-business-cycle-popover-container{width:15.625rem;background:#fff;box-shadow:0 4px 8px #1e5dd326;border:1px solid #e3e3e9;border-radius:.25rem;z-index:4}::ng-deep .vc-business-cycle-popover-container-top{background:#f8f8f8}::ng-deep .vc-business-cycle-popover-container-top p{line-height:.875rem}::ng-deep .vc-business-cycle-popover-container-body{background:#fff;max-height:200px;overflow-y:auto}::ng-deep .vc-business-cycle-popover-container-body ul li{list-style:none;margin:0;position:relative}::ng-deep .vc-business-cycle-popover-container-body ul li:before{background:#f1f1f1;content:\"\";position:absolute;left:.75rem;right:.75rem;bottom:0;height:.0625rem;width:calc(100% - 1.5rem)}::ng-deep .vc-business-cycle-popover-container-body ul li:last-of-type:before{display:none}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle{background:#fadd8a}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle:before{display:none}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle app-cs-checkbox label.checkbox-item span.checkbox{background:#fff}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle app-cs-checkbox label.checkbox-item span.value i{margin-left:.375rem}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle .info-icon{margin-left:.375rem;cursor:context-menu}::ng-deep .vc-business-cycle-popover-container-body ul li app-cs-checkbox{display:flex}::ng-deep .vc-business-cycle-popover-container-body ul li app-cs-checkbox label.checkbox-item span.value{font-size:12px!important;color:#161b2f!important;max-width:100%!important}::ng-deep .vc-business-cycle-popover-container-footer{background:#f8f8f8;border-radius:0 0 .25rem .25rem}::ng-deep .vc-business-cycle-popover-container-footer button{width:calc(50% - .125rem);height:1.5rem;border:1px solid transparent;text-transform:uppercase;border-radius:.125rem;line-height:1.375rem}::ng-deep .vc-business-cycle-popover-container-footer button.white{background:#fff;border-color:#dbdbdb}::ng-deep .vc-business-cycle-popover-container-footer button.blue{background:#1e5dd3;border-color:#1e5dd3}::ng-deep .vc-business-cycle-popover-container-footer button.disabled{background:#dbdbdb;color:#747576;border:none;pointer-events:none!important}\n"] }]
|
|
269
|
+
args: [{ selector: 'vc-business-cycle', template: "<div\r\n class=\"vc-business-cycle vx-pt-2 vx-pb-2\"\r\n appPopover\r\n (click)=\"businessCyclePop.popover()\"\r\n position=\"left\"\r\n>\r\n <div class=\"heading vx-fs-9 vx-tt-uppercase vx-mb-1 vx-lh-3\">\r\n SHOWING DATA {{ cycleToShow === \"Show Future Due Dates\" ? \"For\" : \"From\" }}\r\n </div>\r\n <div class=\"vx-d-flex vx-align-center vx-justify-between vx-lh-4\">\r\n <div class=\"vx-d-flex vx-align-center\">\r\n <i class=\"icons calendar vx-fs-12 vx-mr-2\"></i>\r\n <span class=\"vx-fs-11 vx-txt-white vx-d-inline-block\">{{\r\n cycleToShow === \"Show Future Due Dates\"\r\n ? \"Future Due Dates\"\r\n : cycleToShow\r\n }}</span>\r\n </div>\r\n <i class=\"icons arrow vx-fs-10 vx-mr-2\"></i>\r\n </div>\r\n</div>\r\n\r\n<vui-popover #businessCyclePop [dontCloseonClick]=\"true\">\r\n <div class=\"vc-business-cycle-popover-container\">\r\n <div\r\n class=\"vc-business-cycle-popover-container-top vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\r\n >\r\n <p class=\"vx-fs-11 vx-fw-400 vx-label-txt vx-p-0 vx-m-0\">\r\n You can select upto a max of two consecutive years\r\n </p>\r\n </div>\r\n <div class=\"vc-business-cycle-popover-container-body\">\r\n <ul class=\"vx-p-0 vx-m-0\">\r\n <ng-container\r\n *ngFor=\"let eachCycle of businessCycleList; let i = index\"\r\n >\r\n <li\r\n *ngIf=\"\r\n eachCycle?.business_cycle?.toLowerCase() ===\r\n 'show future due dates'\r\n \"\r\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\r\n [class.future-cycle]=\"true\"\r\n >\r\n <app-cs-checkbox\r\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\r\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\r\n [disabled]=\"eachCycle?.isDisabled\"\r\n >Show Future Due Dates</app-cs-checkbox\r\n >\r\n <i\r\n class=\"icons info-icon vx-fs-12\"\r\n [arTooltip]=\"\r\n 'This option lets you view data that lies outside the current business cycle and are due in the future.'\r\n \"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n ></i\r\n >\r\n </li>\r\n <li\r\n *ngIf=\"\r\n eachCycle?.business_cycle?.toLowerCase() !==\r\n 'show future due dates'\r\n \"\r\n class=\"vx-d-flex vx-align-center vx-pt-2 vx-pb-2 vx-pl-3 vx-pr-3\"\r\n >\r\n <app-cs-checkbox\r\n [ngValue]=\"isSelectedCycle(tempSelectedCycle, eachCycle)\"\r\n (ngValueChange)=\"selectCycle(eachCycle, i)\"\r\n [disabled]=\"eachCycle?.isDisabled\"\r\n >{{ eachCycle?.start_date | dateFormat }} -\r\n <ng-container>\r\n {{ eachCycle?.end_date | dateFormat }}</ng-container\r\n >\r\n </app-cs-checkbox>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n <div\r\n class=\"vc-business-cycle-popover-container-footer vx-d-flex vx-justify-between vx-p-3\"\r\n >\r\n <button\r\n (click)=\"businessCyclePop.closePopover('top')\"\r\n class=\"white vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-blue\"\r\n >\r\n CANCEL\r\n </button>\r\n <button\r\n (click)=\"setBusinessCycle(); businessCyclePop.closePopover('top')\"\r\n [class.disabled]=\"false\"\r\n class=\"blue vx-fs-11 vx-fw-500 vx-d-flex vx-align-center vx-justify-center vx-tt-uppercase vx-p-0 vx-m-0 vx-txt-white\"\r\n >\r\n APPLY\r\n </button>\r\n </div>\r\n </div>\r\n</vui-popover>\r\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";@import\"https://cdn.v-comply.com/design-system/css/text/text.css\";@import\"https://cdn.v-comply.com/design-system/css/width/width.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\";@import\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\";::ng-deep .vc-business-cycle{position:relative;width:12.5rem;height:3rem;cursor:pointer;z-index:1}::ng-deep .vc-business-cycle .heading{color:#e3e3e9}::ng-deep .vc-business-cycle i.calendar{color:#e3e3e9}::ng-deep .vc-business-cycle i.arrow{color:#f1f1f1}::ng-deep .vc-business-cycle-popover-container{width:15.625rem;background:#fff;box-shadow:0 4px 8px #1e5dd326;border:1px solid #e3e3e9;border-radius:.25rem;z-index:4}::ng-deep .vc-business-cycle-popover-container-top{background:#f8f8f8}::ng-deep .vc-business-cycle-popover-container-top p{line-height:.875rem}::ng-deep .vc-business-cycle-popover-container-body{background:#fff;max-height:200px;overflow-y:auto}::ng-deep .vc-business-cycle-popover-container-body ul li{list-style:none;margin:0;position:relative}::ng-deep .vc-business-cycle-popover-container-body ul li:before{background:#f1f1f1;content:\"\";position:absolute;left:.75rem;right:.75rem;bottom:0;height:.0625rem;width:calc(100% - 1.5rem)}::ng-deep .vc-business-cycle-popover-container-body ul li:last-of-type:before{display:none}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle{background:#fadd8a}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle:before{display:none}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle app-cs-checkbox label.checkbox-item span.checkbox{background:#fff}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle app-cs-checkbox label.checkbox-item span.value i{margin-left:.375rem}::ng-deep .vc-business-cycle-popover-container-body ul li.future-cycle .info-icon{margin-left:.375rem;cursor:context-menu}::ng-deep .vc-business-cycle-popover-container-body ul li app-cs-checkbox{display:flex}::ng-deep .vc-business-cycle-popover-container-body ul li app-cs-checkbox label.checkbox-item span.value{font-size:12px!important;color:#161b2f!important;max-width:100%!important}::ng-deep .vc-business-cycle-popover-container-footer{background:#f8f8f8;border-radius:0 0 .25rem .25rem}::ng-deep .vc-business-cycle-popover-container-footer button{width:calc(50% - .125rem);height:1.5rem;border:1px solid transparent;text-transform:uppercase;border-radius:.125rem;line-height:1.375rem}::ng-deep .vc-business-cycle-popover-container-footer button.white{background:#fff;border-color:#dbdbdb}::ng-deep .vc-business-cycle-popover-container-footer button.blue{background:#1e5dd3;border-color:#1e5dd3}::ng-deep .vc-business-cycle-popover-container-footer button.disabled{background:#dbdbdb;color:#747576;border:none;pointer-events:none!important}\n"] }]
|
|
270
270
|
}], ctorParameters: function () { return [{ type: i1.AuthorizerService }, { type: i2.BusinessCycleService }, { type: i3.ApiService }]; }, propDecorators: { businessCycleChange: [{
|
|
271
271
|
type: Output
|
|
272
272
|
}], orgDetails: [{
|
|
273
273
|
type: Input
|
|
274
274
|
}] } });
|
|
275
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3MtY3ljbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmMtbGF5b3V0L3NyYy9saWIvY29tcG9uZW50cy9oZWFkZXIvYnVzaW5lc3MtY3ljbGUvYnVzaW5lc3MtY3ljbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmMtbGF5b3V0L3NyYy9saWIvY29tcG9uZW50cy9oZWFkZXIvYnVzaW5lc3MtY3ljbGUvYnVzaW5lc3MtY3ljbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNENBQTRDLENBQUM7Ozs7Ozs7Ozs7O0FBTzFFLE1BQU0sT0FBTyxzQkFBc0I7SUFjakMsWUFDVSxXQUE4QixFQUM5QixvQkFBMEMsRUFDMUMsVUFBc0I7UUFGdEIsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBQzlCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQWhCaEMsZ0JBQVcsR0FBVyxnQkFBZ0IsQ0FBQztRQUN2QyxxQkFBZ0IsR0FBa0IsRUFBRSxDQUFDO1FBQ3JDLGdCQUFXLEdBQWtCLEVBQUUsQ0FBQztRQUNoQyx5QkFBb0IsR0FBa0IsRUFBRSxDQUFDO1FBQ3pDLG9CQUFlLEdBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckMsdUJBQWtCLEdBQWUsRUFBRSxDQUFDO1FBRXBDLHNCQUFpQixHQUFVLEVBQUUsQ0FBQztRQUM5QixXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBRVQsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVFqRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ3JELElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsUUFBUSxLQUFVLENBQUM7SUFFbkIsYUFBYTtRQUNYLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDekQsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2dCQUNsRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7YUFDOUI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx3QkFBd0I7UUFDdEIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ3RFLElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxHQUFHLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNoQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsbUJBQW1CLENBQUMsYUFBa0I7UUFDcEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGFBQWEsQ0FBQztRQUN2QyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNO1lBQy9CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtnQkFDeEMsS0FBSyxDQUFDLFlBQVksQ0FBQyxHQUFHLEtBQUssQ0FBQztZQUM5QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxXQUFXLENBQUMsS0FBVSxFQUFFLEtBQWE7UUFDbkMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FDOUMsQ0FBQyxFQUFPLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FDL0MsQ0FBQztRQUNGLElBQUksT0FBTyxJQUFJLENBQUMsRUFBRTtZQUNoQixJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMzQzthQUFNLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDL0MsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNwQzthQUFNO1lBQ0wsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FDcEQsQ0FBQyxFQUFPLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FDcEUsQ0FBQztZQUNGLElBQUksYUFBYSxHQUFHLEtBQUssRUFBRTtnQkFDekIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUN2QztpQkFBTTtnQkFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3BDO1NBQ0Y7UUFDRCxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFFSCxlQUFlLENBQUMsYUFBa0IsRUFBRSxLQUFVO1FBQzVDLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN2QixhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBTyxFQUFPLEVBQUU7WUFDckMsSUFBSSxFQUFFLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUU7Z0JBQ3JDLFVBQVUsR0FBRyxJQUFJLENBQUM7YUFDbkI7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxvQkFBb0IsQ0FBQyxLQUFVO1FBQzdCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFDNUIsSUFBSSxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUMzQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0IsMkNBQTJDO1NBQzVDO2FBQU07WUFDTCxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBTyxFQUFFLENBQVMsRUFBRSxFQUFFO2dCQUN4RCxJQUFJLE9BQU8sR0FBRztvQkFDWixVQUFVLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO29CQUMvQixRQUFRLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsTUFBTSxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDO29CQUNsRCxRQUFRLEVBQUUsSUFBSTtvQkFDZCxjQUFjLEVBQUUsS0FBSyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7b0JBQ3hDLGNBQWMsRUFBRSxLQUFLLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQztvQkFDeEMsa0JBQWtCLEVBQUUsQ0FBQyxFQUFFLENBQUM7aUJBQ3pCLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN2QyxDQUFDLENBQUMsQ0FBQztZQUNILG1MQUFtTDtTQUNwTDtRQUNELDhCQUE4QjtRQUM5QixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxFQUFFO1lBQ25DLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLE1BQU07Z0JBQ2hDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtvQkFDeEMsS0FBSyxDQUFDLFlBQVksQ0FBQyxHQUFHLEtBQUssQ0FBQztnQkFDOUIsQ0FBQyxDQUFDLENBQUM7U0FDTjthQUFNLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDL0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFNBQVMsQ0FDN0MsQ0FBQyxFQUFPLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FDbkUsQ0FBQztZQUNGLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsQ0FBQyxLQUFVLEVBQUUsQ0FBUyxFQUFFLEVBQUU7Z0JBQ3hELElBQUksS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDckQsS0FBSyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7aUJBQzFCO3FCQUFNO29CQUNMLEtBQUssQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO2lCQUN6QjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtnQkFDN0MsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUN0QixJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBTyxFQUFFLEVBQUU7b0JBQ3pDLElBQUksS0FBSyxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsVUFBVSxFQUFFO3dCQUNyQyxVQUFVLEdBQUcsS0FBSyxDQUFDO3FCQUNwQjtnQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFDSCxLQUFLLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztZQUNoQyxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxnQkFBZ0I7UUFDZCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsbUJBQW1CLENBQ2pFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVO1lBQ25DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQ3RDLENBQUM7UUFDRixNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQ25DLEtBQUssRUFBRSxjQUFjLEtBQUssYUFBYTtZQUN2QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEVBQUUsY0FBYyxLQUFLLFlBQVksQ0FBQztRQUU3RCxJQUFJLG1CQUFtQixHQUFRO1lBQzdCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixhQUFhLEVBQUU7Z0JBQ2IsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsY0FBYyxFQUFFLEVBQUU7Z0JBQ2xCLGtCQUFrQixFQUFFLEVBQUU7YUFDdkI7U0FDRixDQUFDO1FBRUYsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN4QyxJQUFJLENBQUMsc0JBQXNCLENBQUMsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLENBQUM7U0FDakU7YUFBTTtZQUNMLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxtQkFBbUIsRUFBRSxhQUFhLENBQUMsQ0FBQztTQUNwRTtRQUVELElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDeEQsWUFBWSxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLHFCQUFxQixHQUFHLG1CQUFtQixFQUFFLGFBQWEsQ0FBQztRQUNoRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELHNCQUFzQixDQUNwQixtQkFBd0IsRUFDeEIsYUFBc0M7UUFFdEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLElBQUksYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3hCLEtBQUssQ0FBQyxjQUFjLEdBQUcsWUFBWSxDQUFDO1NBQ3JDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRSxhQUFhLEVBQUU7WUFDaEQsVUFBVSxFQUFFLEtBQUssRUFBRSxVQUFVO1lBQzdCLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUTtZQUN6QixjQUFjLEVBQUUsS0FBSyxFQUFFLGNBQWM7WUFDckMsY0FBYyxFQUFFLEdBQUcsS0FBSyxFQUFFLFVBQVUsSUFBSSxLQUFLLEVBQUUsUUFBUSxFQUFFO1lBQ3pELGtCQUFrQixFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsVUFBVSxJQUFJLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQztTQUNoRSxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQseUJBQXlCLENBQ3ZCLG1CQUF3QixFQUN4QixhQUFzQztRQUV0QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDN0MsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQ3JELGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsY0FBYyxDQUM1RCxDQUFDO1lBQ0YsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FDekQsR0FBRyxLQUFLLEVBQUUsVUFBVSxJQUFJLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FDMUMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsbUJBQW1CLENBQUMsYUFBYSxDQUFDLFVBQVU7WUFDMUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQztRQUN4QyxtQkFBbUIsQ0FBQyxhQUFhLENBQUMsUUFBUTtZQUN4QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDO1FBQ3RDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxjQUFjLEdBQUcsR0FBRyxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsVUFBVSxJQUFJLG1CQUFtQixFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsQ0FBQztJQUN6SixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG1CQUFtQjtRQUNqQixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxjQUFjLENBQUMsS0FBVTtRQUN2QixJQUFJLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzNDLElBQUksS0FBSyxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsSUFBSSx1QkFBdUIsRUFBRTtnQkFDbkUsSUFBSSxDQUFDLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQzthQUN2QztpQkFBTTtnQkFDTCxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUM7YUFDekM7U0FDRjthQUFNO1lBQ0wsSUFDRSxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sR0FBRyxDQUFDO2dCQUNqQyxLQUFLLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxJQUFJLHVCQUF1QixFQUNsRTtnQkFDQSxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUMvRDtpQkFBTSxJQUFJLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFO2dCQUN4QyxJQUFJLENBQUMsV0FBVztvQkFDZCxLQUFLLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO3dCQUMxQyxLQUFLO3dCQUNMLEtBQUssRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUNoQyxLQUFLLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sR0FBRyxFQUFFLEVBQ3JDLEtBQUssRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUNoQyxDQUFDO2FBQ0w7U0FDRjtJQUNILENBQUM7K0dBOVJVLHNCQUFzQjttR0FBdEIsc0JBQXNCLHdKQ1huQyw2c0hBcUdBOzs0RkQxRmEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLG1CQUFtQjtvS0FlbkIsbUJBQW1CO3NCQUE1QixNQUFNO2dCQUVFLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRob3JpemVyU2VydmljZSB9IGZyb20gJ0B2Y29tcGx5L2F1dGhvcml6ZXInO1xuaW1wb3J0IHsgQnVzaW5lc3NDeWNsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvc2VydmljZXMvYnVzaW5lc3MtY3ljbGUuc2VydmljZSc7XG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEZVVFVSRV9EQVRFUyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9idXNpbmVzcy1jeWNsZS5jb25zdGFudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZjLWJ1c2luZXNzLWN5Y2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1c2luZXNzLWN5Y2xlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYnVzaW5lc3MtY3ljbGUuY29tcG9uZW50Lmxlc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQnVzaW5lc3NDeWNsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGN5Y2xlVG9TaG93OiBzdHJpbmcgPSAnQnVzaW5lc3MgQ3ljbGUnO1xuICBidXNpbmVzc0N5Y2xlQXJyOiBBcnJheTxzdHJpbmc+ID0gW107XG4gIGhpZGRlbkN5Y2xlOiBBcnJheTxudW1iZXI+ID0gW107XG4gIHRlbXBCdXNpbmVzc0N5Y2xlQXJyOiBBcnJheTxzdHJpbmc+ID0gW107XG4gIHRlbXBIaWRkZW5DeWNsZTogQXJyYXk8bnVtYmVyPiA9IFswXTtcbiAgYnVzaW5lc3NDeWNsZXNMaXN0OiBBcnJheTxhbnk+ID0gW107XG4gIGJ1c2luZXNzQ3ljbGVMaXN0ITogQXJyYXk8YW55PjtcbiAgdGVtcFNlbGVjdGVkQ3ljbGU6IGFueVtdID0gW107XG4gIHVzZXJJZDogbnVtYmVyID0gMDtcbiAgc2VsZWN0ZWRCdXNpbmVzc0N5Y2xlITogYW55O1xuICBAT3V0cHV0KCkgYnVzaW5lc3NDeWNsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBASW5wdXQoKSBvcmdEZXRhaWxzOiBhbnk7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhvcml6ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgYnVzaW5lc3NDeWNsZVNlcnZpY2U6IEJ1c2luZXNzQ3ljbGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgYXBpU2VydmljZTogQXBpU2VydmljZVxuICApIHtcbiAgICB0aGlzLnVzZXJJZCA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0VXNlcklkKCkgPz8gMDtcbiAgICB0aGlzLmJ1c2luZXNzQ3ljbGVTZXJ2aWNlLmlzQnVzaW5lc3NDeWNsZUF2YWlsYWJsZSgpO1xuICAgIHRoaXMuc2V0U2VsZWN0ZWRCdXNpbmVzc0N5Y2xlKCk7XG4gICAgdGhpcy5nZXRPcmdEZXRhaWxzKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgZ2V0T3JnRGV0YWlscygpIHtcbiAgICB0aGlzLmFwaVNlcnZpY2Uub3JnYW5pemF0aW9uRGV0YWlsJC5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XG4gICAgICBpZiAocmVzKSB7XG4gICAgICAgIHRoaXMuc2V0QnVzaW5lc3NDeWNsZUtleShyZXMuYnVzaW5lc3NfY3ljbGVzX2Fycik7XG4gICAgICAgIHRoaXMuc2V0QnVzaW5lc3NDeWNsZSgpO1xuICAgICAgICB0aGlzLnNldEN5Y2xlRW5hYmxlRGlzYWJsZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgc2V0U2VsZWN0ZWRCdXNpbmVzc0N5Y2xlKCkge1xuICAgIHRoaXMuYnVzaW5lc3NDeWNsZVNlcnZpY2Uuc2VsZWN0ZWRCdXNpbmVzc0N5Y2xlJC5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XG4gICAgICBpZiAocmVzKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRCdXNpbmVzc0N5Y2xlID0gcmVzO1xuICAgICAgICB0aGlzLnNldFRlbXBTZWxlY3RlZEN5Y2xlKHJlcyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogIyMjIyBEZXNjcmlwdGlvblxuICAgKiBpdCB3aWxsIHNldCBhIG5ldyBrZXkgaW4gZXZlcnkgY3ljbGVcbiAgICoga2V5IHdpbGwgdXNlIGZvciBkaXNhYmxlZCBvciBlbmFibGUgdGhlIGN5Y2xlIGZyb20gYnVzaW5lc3MgY3ljbGUgbGlzdC5cbiAgICogQHBhcmFtIGJ1c2luZXNzQ3ljbGUgdGhpcyB0aGUgYnVzaW5lc3MgY3ljbGUgbGlzdFxuICAgKi9cbiAgc2V0QnVzaW5lc3NDeWNsZUtleShidXNpbmVzc0N5Y2xlOiBhbnkpIHtcbiAgICB0aGlzLmJ1c2luZXNzQ3ljbGVMaXN0ID0gYnVzaW5lc3NDeWNsZTtcbiAgICBpZiAodGhpcy5idXNpbmVzc0N5Y2xlTGlzdC5sZW5ndGgpXG4gICAgICB0aGlzLmJ1c2luZXNzQ3ljbGVMaXN0Lm1hcCgoY3ljbGU6IGFueSkgPT4ge1xuICAgICAgICBjeWNsZVsnaXNEaXNhYmxlZCddID0gZmFsc2U7XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiAjIyMjIERlc2NyaXB0aW9uXG4gICAqIGl0IHdpbGwgY2hlY2sgdGhlIGN5Y2xlIGlmIGl0IGlzIG5vdCBjaGVja2VkLlxuICAgKiBpZiBpdCBoYXMgY2hlY2tlZCB0aGVuIGl0IHdpbGwgdW5jaGVjayB0aGF0IGN5Y2xlLlxuICAgKiBAcGFyYW0gY3ljbGUgY2hlY2tlZCBvciB1bmNoZWNrZWQgY3ljbGUgZnJvbSBidXNpbmVzcyBjeWNsZSBsaXN0LlxuICAgKiBAcGFyYW0gaW5kZXggaXQgZ2l2ZSB0aGUgaW5kZXggdmFsdWUgb2YgYnVzaW5lc3MgY3ljbGUgbGlzdCB3aGljaCBpcyBzZWxlY3RlZC5cbiAgICovXG4gIHNlbGVjdEN5Y2xlKGN5Y2xlOiBhbnksIGluZGV4OiBudW1iZXIpIHtcbiAgICBjb25zdCBpc0V4aXN0ID0gdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZS5maW5kSW5kZXgoXG4gICAgICAoZWw6IGFueSkgPT4gZWwuc3RhcnRfZGF0ZSA9PSBjeWNsZS5zdGFydF9kYXRlXG4gICAgKTtcbiAgICBpZiAoaXNFeGlzdCA+PSAwKSB7XG4gICAgICB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlLnNwbGljZShpc0V4aXN0LCAxKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGVtcFNlbGVjdGVkQ3ljbGU/Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZS5wdXNoKGN5Y2xlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgc2VsZWN0ZWRJbmRleCA9IHRoaXMuYnVzaW5lc3NDeWNsZUxpc3QuZmluZEluZGV4KFxuICAgICAgICAoZWw6IGFueSkgPT4gZWwuc3RhcnRfZGF0ZSA9PSB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlWzBdPy5zdGFydF9kYXRlXG4gICAgICApO1xuICAgICAgaWYgKHNlbGVjdGVkSW5kZXggPCBpbmRleCkge1xuICAgICAgICB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlLnVuc2hpZnQoY3ljbGUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZS5wdXNoKGN5Y2xlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5zZXRDeWNsZUVuYWJsZURpc2FibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAjIyMjIERlc2NyaXB0aW9uXG4gICAqXG4gICAqIG5lZWQgdG8gY2hlY2sgY3ljbGUgaW5jbHVkZXMgaW4gc2VsZWN0ZWQgY3ljbGUgYXJyYXlcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHNlbGVjdGVkIGN5Y2xlIGlzXG4gICAqIEBwYXJhbSBzZWxlY3RlZEN5Y2xlIHNlbGVjdGVkIEN5Y2xlIHdoaWNoIHVzZXIgY2hlY2tlZCBvciBhdXRvIHNlbGVjdGVkIGN5Y2xlLlxuICAgKiBAcGFyYW0gY3ljbGUgYWxsIGluZGl2aXNpYmxlIGN5Y2xlIG9mIGJ1c2luZXNzIGN5Y2xlIG9mIHRoZSBvcmdhbml6YXRpb24uXG4gICAqIEByZXR1cm5zIGJvb2xlYW4gdmFsdWUgaXMgY3ljbGUgZXhpc3QgaW4gc2VsZWN0ZWQgY3ljbGUgb3Igbm90LlxuICAgKi9cblxuICBpc1NlbGVjdGVkQ3ljbGUoc2VsZWN0ZWRDeWNsZTogYW55LCBjeWNsZTogYW55KSB7XG4gICAgbGV0IGlzU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICBzZWxlY3RlZEN5Y2xlLmZvckVhY2goKGVsOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgaWYgKGVsLnN0YXJ0X2RhdGUgPT0gY3ljbGUuc3RhcnRfZGF0ZSkge1xuICAgICAgICBpc1NlbGVjdGVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gaXNTZWxlY3RlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiAjIyMjIERlc2NyaXB0aW9uXG4gICAqXG4gICAqIHNldCBzZWxlY3RlZCBidXNpbmVzc0N5Y2xlIHRvIHRlbXAgYnVzaW5lc3MgY3ljbGUgaW5kaXZpc2libGUgaWYgdGhlcmUgaXMgdHdvIHNlbGVjdGVkIGN5Y2xlXG4gICAqIFNldHMgdGVtcCBzZWxlY3RlZCBjeWNsZVxuICAgKiBAcGFyYW0gY3ljbGUgc2VsZWN0ZWQgYnVzaW5lc3MgY3ljbGUgZnJvbSBsb2NhbCBzdG9yYWdlXG4gICAqL1xuICBzZXRUZW1wU2VsZWN0ZWRDeWNsZShjeWNsZTogYW55KSB7XG4gICAgdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZSA9IFtdO1xuICAgIGlmIChjeWNsZT8uc2VsZWN0ZWRfY3ljbGVfYXJyPy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHRoaXMudGVtcFNlbGVjdGVkQ3ljbGUucHVzaChjeWNsZSk7XG4gICAgICB0aGlzLnNldEN5Y2xlVG9TaG93KGN5Y2xlKTtcbiAgICAgIC8vIHRoaXMuY3ljbGVUb1Nob3cgPSBjeWNsZS5idXNpbmVzc19jeWNsZTtcbiAgICB9IGVsc2Uge1xuICAgICAgY3ljbGU/LnNlbGVjdGVkX2N5Y2xlX2Fycj8uZm9yRWFjaCgoZWw6IGFueSwgaTogbnVtYmVyKSA9PiB7XG4gICAgICAgIGxldCBwYXlsb2FkID0ge1xuICAgICAgICAgIHN0YXJ0X2RhdGU6IGVsLnN1YnN0cmluZygwLCAxMCksXG4gICAgICAgICAgZW5kX2RhdGU6IGVsLnN1YnN0cmluZyhlbD8ubGVuZ3RoIC0gMTAsIGVsPy5sZW50aCksXG4gICAgICAgICAgc2VsZWN0ZWQ6IHRydWUsXG4gICAgICAgICAgYnVzaW5lc3NfY3ljbGU6IGN5Y2xlPy5idXNpbmVzc19jeWNsZVtpXSxcbiAgICAgICAgICBzZWxlY3RlZF9jeWNsZTogY3ljbGU/LnNlbGVjdGVkX2N5Y2xlW2ldLFxuICAgICAgICAgIHNlbGVjdGVkX2N5Y2xlX2FycjogW2VsXSxcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZS5wdXNoKHBheWxvYWQpO1xuICAgICAgfSk7XG4gICAgICAvLyB0aGlzLmN5Y2xlVG9TaG93ID0gY3ljbGU/LmJ1c2luZXNzX2N5Y2xlWzBdPy5zdWJzdHJpbmcoMCwxMSkgKyBcIiAtIFwiICsgY3ljbGU/LmJ1c2luZXNzX2N5Y2xlWzFdLnN1YnN0cmluZyhjeWNsZT8uYnVzaW5lc3NfY3ljbGVbMV0/Lmxlbmd0aC0xMSwgY3ljbGU/LmJ1c2luZXNzX2N5Y2xlWzFdPy5sZW50aCk7XG4gICAgfVxuICAgIC8vIHRoaXMuc2V0Q3ljbGVUb1Nob3coY3ljbGUpO1xuICAgIHRoaXMuc2V0Q3ljbGVFbmFibGVEaXNhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogIyMjIyBEZXNjcmlwdGlvblxuICAgKiAgd2hlbiB1c2VyIHNlbGVjdCBvbmUgY3ljbGUgdGhlbiB0aGVpciBiZXNpZGVzIGN5Y2xlcyBhcmUgZW5hYmxlIGFuZCBvdGhlciBhcmUgZGlzYWJsZWQuXG4gICAqICBpZiB1c2VyIHNlbGVjdCB0d28gY3ljbGVzIHRoZW4gYWxsIHRoZSBjeWNsZXMgZ2V0IGRpc2FibGVkIGV4Y2VwdCBzZWxlY3RlZCBjeWNsZXMuXG4gICAqXG4gICAqICBJbiBidXNpbmVzc0N5Y2xlTGlzdCBhcnJheSB3ZSBzZXQgYSBpc0Rpc2FibGVkIGtleSwgd2UgYXJlIHNldCBpdCB0cnVlIHdoZW4gbmVlZCB0byBkaXNhYmxlZCB0aGUgY3ljbGUuXG4gICAqL1xuICBzZXRDeWNsZUVuYWJsZURpc2FibGUoKSB7XG4gICAgaWYgKCF0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlPy5sZW5ndGgpIHtcbiAgICAgIGlmICh0aGlzLmJ1c2luZXNzQ3ljbGVMaXN0Py5sZW5ndGgpXG4gICAgICAgIHRoaXMuYnVzaW5lc3NDeWNsZUxpc3QubWFwKChjeWNsZTogYW55KSA9PiB7XG4gICAgICAgICAgY3ljbGVbJ2lzRGlzYWJsZWQnXSA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGVtcFNlbGVjdGVkQ3ljbGU/Lmxlbmd0aCA9PT0gMSkge1xuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmJ1c2luZXNzQ3ljbGVMaXN0Py5maW5kSW5kZXgoXG4gICAgICAgIChlbDogYW55KSA9PiBlbC5zdGFydF9kYXRlID09IHRoaXMudGVtcFNlbGVjdGVkQ3ljbGVbMF0uc3RhcnRfZGF0ZVxuICAgICAgKTtcbiAgICAgIHRoaXMuYnVzaW5lc3NDeWNsZUxpc3Q/LmZvckVhY2goKGN5Y2xlOiBhbnksIGk6IG51bWJlcikgPT4ge1xuICAgICAgICBpZiAoaW5kZXggLSAxID09PSBpIHx8IGluZGV4ID09PSBpIHx8IGluZGV4ICsgMSA9PT0gaSkge1xuICAgICAgICAgIGN5Y2xlLmlzRGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjeWNsZS5pc0Rpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYnVzaW5lc3NDeWNsZUxpc3Q/LmZvckVhY2goKGN5Y2xlOiBhbnkpID0+IHtcbiAgICAgICAgbGV0IGlzRGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlLmZvckVhY2goKGVsOiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAoY3ljbGUuc3RhcnRfZGF0ZSA9PSBlbC5zdGFydF9kYXRlKSB7XG4gICAgICAgICAgICBpc0Rpc2FibGVkID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgY3ljbGUuaXNEaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogIyMjIyBEZXNjcmlwdGlvblxuICAgKiAgV2hlbiB1c2VyIGNsaWNrIGFwcGx5IHRoZW4gc2VsZWN0ZWQgY3ljbGUgaXMgc2V0IGluIGxvY2FsIHN0b3JhZ2UuXG4gICAqXG4gICAqL1xuICBzZXRCdXNpbmVzc0N5Y2xlKCkge1xuICAgIGNvbnN0IGNvbWJpbmVkRGF0ZXMgPSB0aGlzLmJ1c2luZXNzQ3ljbGVTZXJ2aWNlLmNvbnZlcnROdW1lcmljQWxwaGEoXG4gICAgICB0aGlzLmJ1c2luZXNzQ3ljbGVMaXN0WzBdPy5zdGFydF9kYXRlICtcbiAgICAgICAgdGhpcy5idXNpbmVzc0N5Y2xlTGlzdFswXT8uZW5kX2RhdGVcbiAgICApO1xuICAgIGNvbnN0IGlzRnV0dXJlRGF0ZXMgPSAoY3ljbGU6IGFueSkgPT5cbiAgICAgIGN5Y2xlPy5idXNpbmVzc19jeWNsZSA9PT0gY29tYmluZWREYXRlcyAmJlxuICAgICAgdGhpcy5idXNpbmVzc0N5Y2xlTGlzdFswXT8uYnVzaW5lc3NfY3ljbGUgPT09IEZVVFVSRV9EQVRFUztcblxuICAgIGxldCBidXNpbmVzc0N5Y2xlT2JqZWN0OiBhbnkgPSB7XG4gICAgICB1c2VySWQ6IHRoaXMudXNlcklkLFxuICAgICAgc2VsZWN0ZWRDeWNsZToge1xuICAgICAgICBzZWxlY3RlZDogdHJ1ZSxcbiAgICAgICAgYnVzaW5lc3NfY3ljbGU6IFtdLFxuICAgICAgICBzZWxlY3RlZF9jeWNsZV9hcnI6IFtdLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgaWYgKHRoaXMudGVtcFNlbGVjdGVkQ3ljbGU/Lmxlbmd0aCA9PT0gMSkge1xuICAgICAgdGhpcy5zZXRTaW5nbGVTZWxlY3RlZEN5Y2xlKGJ1c2luZXNzQ3ljbGVPYmplY3QsIGlzRnV0dXJlRGF0ZXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNldE11bHRpcGxlU2VsZWN0ZWRDeWNsZXMoYnVzaW5lc3NDeWNsZU9iamVjdCwgaXNGdXR1cmVEYXRlcyk7XG4gICAgfVxuXG4gICAgdGhpcy5zZXRDeWNsZVRvU2hvdyhidXNpbmVzc0N5Y2xlT2JqZWN0Py5zZWxlY3RlZEN5Y2xlKTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYnVzaW5lc3NDeWNsZScsIEpTT04uc3RyaW5naWZ5KGJ1c2luZXNzQ3ljbGVPYmplY3QpKTtcbiAgICB0aGlzLnNlbGVjdGVkQnVzaW5lc3NDeWNsZSA9IGJ1c2luZXNzQ3ljbGVPYmplY3Q/LnNlbGVjdGVkQ3ljbGU7XG4gICAgdGhpcy5idXNpbmVzc0N5Y2xlQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZEJ1c2luZXNzQ3ljbGUpO1xuICAgIHRoaXMuYnVzaW5lc3NDeWNsZVNlcnZpY2UuY2hhbmdlQnVzaW5lc3NDeWNsZSQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHNldFNpbmdsZVNlbGVjdGVkQ3ljbGUoXG4gICAgYnVzaW5lc3NDeWNsZU9iamVjdDogYW55LFxuICAgIGlzRnV0dXJlRGF0ZXM6IChjeWNsZTogYW55KSA9PiBib29sZWFuXG4gICkge1xuICAgIGNvbnN0IGN5Y2xlID0gdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZVswXTtcbiAgICBpZiAoaXNGdXR1cmVEYXRlcyhjeWNsZSkpIHtcbiAgICAgIGN5Y2xlLmJ1c2luZXNzX2N5Y2xlID0gRlVUVVJFX0RBVEVTO1xuICAgIH1cbiAgICBPYmplY3QuYXNzaWduKGJ1c2luZXNzQ3ljbGVPYmplY3Q/LnNlbGVjdGVkQ3ljbGUsIHtcbiAgICAgIHN0YXJ0X2RhdGU6IGN5Y2xlPy5zdGFydF9kYXRlLFxuICAgICAgZW5kX2RhdGU6IGN5Y2xlPy5lbmRfZGF0ZSxcbiAgICAgIGJ1c2luZXNzX2N5Y2xlOiBjeWNsZT8uYnVzaW5lc3NfY3ljbGUsXG4gICAgICBzZWxlY3RlZF9jeWNsZTogYCR7Y3ljbGU/LnN0YXJ0X2RhdGV9LSR7Y3ljbGU/LmVuZF9kYXRlfWAsXG4gICAgICBzZWxlY3RlZF9jeWNsZV9hcnI6IFtgJHtjeWNsZT8uc3RhcnRfZGF0ZX0tJHtjeWNsZT8uZW5kX2RhdGV9YF0sXG4gICAgfSk7XG4gIH1cblxuICBzZXRNdWx0aXBsZVNlbGVjdGVkQ3ljbGVzKFxuICAgIGJ1c2luZXNzQ3ljbGVPYmplY3Q6IGFueSxcbiAgICBpc0Z1dHVyZURhdGVzOiAoY3ljbGU6IGFueSkgPT4gYm9vbGVhblxuICApIHtcbiAgICB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlPy5mb3JFYWNoKChjeWNsZTogYW55KSA9PiB7XG4gICAgICBidXNpbmVzc0N5Y2xlT2JqZWN0Py5zZWxlY3RlZEN5Y2xlLmJ1c2luZXNzX2N5Y2xlPy5wdXNoKFxuICAgICAgICBpc0Z1dHVyZURhdGVzKGN5Y2xlKSA/IEZVVFVSRV9EQVRFUyA6IGN5Y2xlPy5idXNpbmVzc19jeWNsZVxuICAgICAgKTtcbiAgICAgIGJ1c2luZXNzQ3ljbGVPYmplY3Q/LnNlbGVjdGVkQ3ljbGUuc2VsZWN0ZWRfY3ljbGVfYXJyPy5wdXNoKFxuICAgICAgICBgJHtjeWNsZT8uc3RhcnRfZGF0ZX0tJHtjeWNsZT8uZW5kX2RhdGV9YFxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGJ1c2luZXNzQ3ljbGVPYmplY3Quc2VsZWN0ZWRDeWNsZS5zdGFydF9kYXRlID1cbiAgICAgIHRoaXMudGVtcFNlbGVjdGVkQ3ljbGVbMF0/LnN0YXJ0X2RhdGU7XG4gICAgYnVzaW5lc3NDeWNsZU9iamVjdC5zZWxlY3RlZEN5Y2xlLmVuZF9kYXRlID1cbiAgICAgIHRoaXMudGVtcFNlbGVjdGVkQ3ljbGVbMV0/LmVuZF9kYXRlO1xuICAgIGJ1c2luZXNzQ3ljbGVPYmplY3Quc2VsZWN0ZWRDeWNsZS5zZWxlY3RlZF9jeWNsZSA9IGAke2J1c2luZXNzQ3ljbGVPYmplY3Q/LnNlbGVjdGVkQ3ljbGU/LnN0YXJ0X2RhdGV9LSR7YnVzaW5lc3NDeWNsZU9iamVjdD8uc2VsZWN0ZWRDeWNsZT8uZW5kX2RhdGV9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiAjIyMjIERlc2NyaXB0aW9uXG4gICAqIHdoZW4gdXNlciBjbGljayBjYW5jZWwgdGhlbiBpdCB3aWxsIGNsb3NlIHRoZSBwb3BvdmVyLlxuICAgKiByZW1vdmUgdGVtcCB2YWx1ZSBmcm9tIHRlcm0gc2VsZWN0ZWQgYXJyYXkgYW5kIHNldCB0aGUgcHJldmlvdXMgc2VsZWN0ZWQgY3ljbGUgaW4gaXQuXG4gICAqL1xuICBjYW5jZWxCdXNpbmVzc0N5Y2xlKCkge1xuICAgIHRoaXMuc2V0VGVtcFNlbGVjdGVkQ3ljbGUodGhpcy5zZWxlY3RlZEJ1c2luZXNzQ3ljbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqICMjIyMgRGVzY3JpcHRpb25cbiAgICogdGhpcyB3aWxsIHNldCB0aGUgc3RyaW5nIG9mIGJ1c2luZXNzIGN5Y2xlIHdoaWNoICB3aWxsIGRpc3BsYXkgaW4gdGhlIGhlYWRlci5cbiAgICogQHBhcmFtIGN5Y2xlIG9iamVjdCB3aGljaCBpcyBzZWxlY3RlZCBhbmQgYXBwbHkuIHRoZSBzYW1lIG9iamVjdCB3aWxsIHN0b3JlIGluIGxvY2FsIHN0b3JhZ2UuXG4gICAqL1xuICBzZXRDeWNsZVRvU2hvdyhjeWNsZTogYW55KSB7XG4gICAgaWYgKGN5Y2xlPy5zZWxlY3RlZF9jeWNsZV9hcnI/Lmxlbmd0aCA9PT0gMSkge1xuICAgICAgaWYgKGN5Y2xlPy5idXNpbmVzc19jeWNsZT8udG9Mb3dlckNhc2UoKSA9PSAnc2hvdyBmdXR1cmUgZHVlIGRhdGVzJykge1xuICAgICAgICB0aGlzLmN5Y2xlVG9TaG93ID0gJ0Z1dHVyZSBEdWUgRGF0ZXMnO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jeWNsZVRvU2hvdyA9IGN5Y2xlLmJ1c2luZXNzX2N5Y2xlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoXG4gICAgICAgIGN5Y2xlPy5idXNpbmVzc19jeWNsZT8ubGVuZ3RoID4gMCAmJlxuICAgICAgICBjeWNsZT8uYnVzaW5lc3NfY3ljbGVbMV0/LnRvTG93ZXJDYXNlKCkgPT0gJ3Nob3cgZnV0dXJlIGR1ZSBkYXRlcydcbiAgICAgICkge1xuICAgICAgICB0aGlzLmN5Y2xlVG9TaG93ID0gY3ljbGU/LmJ1c2luZXNzX2N5Y2xlWzBdPy5zdWJzdHJpbmcoMCwgMTEpO1xuICAgICAgfSBlbHNlIGlmIChjeWNsZT8uYnVzaW5lc3NfY3ljbGU/Lmxlbmd0aCkge1xuICAgICAgICB0aGlzLmN5Y2xlVG9TaG93ID1cbiAgICAgICAgICBjeWNsZT8uYnVzaW5lc3NfY3ljbGVbMF0/LnN1YnN0cmluZygwLCAxMSkgK1xuICAgICAgICAgICcgLSAnICtcbiAgICAgICAgICBjeWNsZT8uYnVzaW5lc3NfY3ljbGVbMV0uc3Vic3RyaW5nKFxuICAgICAgICAgICAgY3ljbGU/LmJ1c2luZXNzX2N5Y2xlWzFdPy5sZW5ndGggLSAxMSxcbiAgICAgICAgICAgIGN5Y2xlPy5idXNpbmVzc19jeWNsZVsxXT8ubGVudGhcbiAgICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInZjLWJ1c2luZXNzLWN5Y2xlIHZ4LXB0LTIgdngtcGItMlwiXG4gIGFwcFBvcG92ZXJcbiAgKGNsaWNrKT1cImJ1c2luZXNzQ3ljbGVQb3AucG9wb3ZlcigpXCJcbiAgcG9zaXRpb249XCJsZWZ0XCJcbj5cbiAgPGRpdiBjbGFzcz1cImhlYWRpbmcgdngtZnMtOSB2eC10dC11cHBlcmNhc2UgdngtbWItMSB2eC1saC0zXCI+XG4gICAgU0hPV0lORyBEQVRBIHt7IGN5Y2xlVG9TaG93ID09PSBcIlNob3cgRnV0dXJlIER1ZSBEYXRlc1wiID8gXCJGb3JcIiA6IFwiRnJvbVwiIH19XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwidngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtbGgtNFwiPlxuICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICA8aSBjbGFzcz1cImljb25zIGNhbGVuZGFyIHZ4LWZzLTEyIHZ4LW1yLTJcIj4mI3hlOTk2OzwvaT5cbiAgICAgIDxzcGFuIGNsYXNzPVwidngtZnMtMTEgdngtdHh0LXdoaXRlIHZ4LWQtaW5saW5lLWJsb2NrXCI+e3tcbiAgICAgICAgY3ljbGVUb1Nob3cgPT09IFwiU2hvdyBGdXR1cmUgRHVlIERhdGVzXCJcbiAgICAgICAgICA/IFwiRnV0dXJlIER1ZSBEYXRlc1wiXG4gICAgICAgICAgOiBjeWNsZVRvU2hvd1xuICAgICAgfX08L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGkgY2xhc3M9XCJpY29ucyBhcnJvdyB2eC1mcy0xMCB2eC1tci0yXCI+JiN4ZTllODs8L2k+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjx2dWktcG9wb3ZlciAjYnVzaW5lc3NDeWNsZVBvcCBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XG4gIDxkaXYgY2xhc3M9XCJ2Yy1idXNpbmVzcy1jeWNsZS1wb3BvdmVyLWNvbnRhaW5lclwiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwidmMtYnVzaW5lc3MtY3ljbGUtcG9wb3Zlci1jb250YWluZXItdG9wIHZ4LXB0LTIgdngtcGItMiB2eC1wbC0zIHZ4LXByLTNcIlxuICAgID5cbiAgICAgIDxwIGNsYXNzPVwidngtZnMtMTEgdngtZnctNDAwIHZ4LWxhYmVsLXR4dCB2eC1wLTAgdngtbS0wXCI+XG4gICAgICAgIFlvdSBjYW4gc2VsZWN0IHVwdG8gYSBtYXggb2YgdHdvIGNvbnNlY3V0aXZlIHllYXJzXG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInZjLWJ1c2luZXNzLWN5Y2xlLXBvcG92ZXItY29udGFpbmVyLWJvZHlcIj5cbiAgICAgIDx1bCBjbGFzcz1cInZ4LXAtMCB2eC1tLTBcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ0Zvcj1cImxldCBlYWNoQ3ljbGUgb2YgYnVzaW5lc3NDeWNsZUxpc3Q7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICA+XG4gICAgICAgICAgPGxpXG4gICAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgICBlYWNoQ3ljbGU/LmJ1c2luZXNzX2N5Y2xlPy50b0xvd2VyQ2FzZSgpID09PVxuICAgICAgICAgICAgICAnc2hvdyBmdXR1cmUgZHVlIGRhdGVzJ1xuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIGNsYXNzPVwidngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1wdC0yIHZ4LXBiLTIgdngtcGwtMyB2eC1wci0zXCJcbiAgICAgICAgICAgIFtjbGFzcy5mdXR1cmUtY3ljbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGFwcC1jcy1jaGVja2JveFxuICAgICAgICAgICAgICBbbmdWYWx1ZV09XCJpc1NlbGVjdGVkQ3ljbGUodGVtcFNlbGVjdGVkQ3ljbGUsIGVhY2hDeWNsZSlcIlxuICAgICAgICAgICAgICAobmdWYWx1ZUNoYW5nZSk9XCJzZWxlY3RDeWNsZShlYWNoQ3ljbGUsIGkpXCJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImVhY2hDeWNsZT8uaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAgID5TaG93IEZ1dHVyZSBEdWUgRGF0ZXM8L2FwcC1jcy1jaGVja2JveFxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgY2xhc3M9XCJpY29ucyBpbmZvLWljb24gdngtZnMtMTJcIlxuICAgICAgICAgICAgICBbYXJUb29sdGlwXT1cIlxuICAgICAgICAgICAgICAgICdUaGlzIG9wdGlvbiBsZXRzIHlvdSB2aWV3IGRhdGEgdGhhdCBsaWVzIG91dHNpZGUgdGhlIGN1cnJlbnQgYnVzaW5lc3MgY3ljbGUgYW5kIGFyZSBkdWUgaW4gdGhlIGZ1dHVyZS4nXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXG4gICAgICAgICAgICAgIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIlxuICAgICAgICAgICAgICA+JiN4ZTkxZjs8L2lcbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDxsaVxuICAgICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgICAgZWFjaEN5Y2xlPy5idXNpbmVzc19jeWNsZT8udG9Mb3dlckNhc2UoKSAhPT1cbiAgICAgICAgICAgICAgJ3Nob3cgZnV0dXJlIGR1ZSBkYXRlcydcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtcHQtMiB2eC1wYi0yIHZ4LXBsLTMgdngtcHItM1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGFwcC1jcy1jaGVja2JveFxuICAgICAgICAgICAgICBbbmdWYWx1ZV09XCJpc1NlbGVjdGVkQ3ljbGUodGVtcFNlbGVjdGVkQ3ljbGUsIGVhY2hDeWNsZSlcIlxuICAgICAgICAgICAgICAobmdWYWx1ZUNoYW5nZSk9XCJzZWxlY3RDeWNsZShlYWNoQ3ljbGUsIGkpXCJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImVhY2hDeWNsZT8uaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAgID57eyBlYWNoQ3ljbGU/LnN0YXJ0X2RhdGUgfCBkYXRlRm9ybWF0IH19IC1cbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICB7eyBlYWNoQ3ljbGU/LmVuZF9kYXRlIHwgZGF0ZUZvcm1hdCB9fTwvbmctY29udGFpbmVyXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvYXBwLWNzLWNoZWNrYm94PlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInZjLWJ1c2luZXNzLWN5Y2xlLXBvcG92ZXItY29udGFpbmVyLWZvb3RlciB2eC1kLWZsZXggdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXAtM1wiXG4gICAgPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAoY2xpY2spPVwiYnVzaW5lc3NDeWNsZVBvcC5jbG9zZVBvcG92ZXIoJ3RvcCcpXCJcbiAgICAgICAgY2xhc3M9XCJ3aGl0ZSB2eC1mcy0xMSB2eC1mdy01MDAgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC10dC11cHBlcmNhc2UgdngtcC0wIHZ4LW0tMCB2eC10eHQtYmx1ZVwiXG4gICAgICA+XG4gICAgICAgIENBTkNFTFxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIChjbGljayk9XCJzZXRCdXNpbmVzc0N5Y2xlKCk7IGJ1c2luZXNzQ3ljbGVQb3AuY2xvc2VQb3BvdmVyKCd0b3AnKVwiXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJmYWxzZVwiXG4gICAgICAgIGNsYXNzPVwiYmx1ZSB2eC1mcy0xMSB2eC1mdy01MDAgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC10dC11cHBlcmNhc2UgdngtcC0wIHZ4LW0tMCB2eC10eHQtd2hpdGVcIlxuICAgICAgPlxuICAgICAgICBBUFBMWVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC92dWktcG9wb3Zlcj5cbiJdfQ==
|
|
275
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3MtY3ljbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmMtbGF5b3V0L3NyYy9saWIvY29tcG9uZW50cy9oZWFkZXIvYnVzaW5lc3MtY3ljbGUvYnVzaW5lc3MtY3ljbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmMtbGF5b3V0L3NyYy9saWIvY29tcG9uZW50cy9oZWFkZXIvYnVzaW5lc3MtY3ljbGUvYnVzaW5lc3MtY3ljbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNENBQTRDLENBQUM7Ozs7Ozs7Ozs7O0FBTzFFLE1BQU0sT0FBTyxzQkFBc0I7SUFjakMsWUFDVSxXQUE4QixFQUM5QixvQkFBMEMsRUFDMUMsVUFBc0I7UUFGdEIsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBQzlCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQWhCaEMsZ0JBQVcsR0FBVyxnQkFBZ0IsQ0FBQztRQUN2QyxxQkFBZ0IsR0FBa0IsRUFBRSxDQUFDO1FBQ3JDLGdCQUFXLEdBQWtCLEVBQUUsQ0FBQztRQUNoQyx5QkFBb0IsR0FBa0IsRUFBRSxDQUFDO1FBQ3pDLG9CQUFlLEdBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckMsdUJBQWtCLEdBQWUsRUFBRSxDQUFDO1FBRXBDLHNCQUFpQixHQUFVLEVBQUUsQ0FBQztRQUM5QixXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBRVQsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVFqRCxJQUFJLENBQUMsTUFBTSxHQUFHLElB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QUFJLENBQUMsV0FBVyxHQUFHLEtBQUssRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUMvRDtpQkFBTSxJQUFJLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFO2dCQUN4QyxJQUFJLENBQUMsV0FBVztvQkFDZCxLQUFLLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO3dCQUMxQyxLQUFLO3dCQUNMLEtBQUssRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUNoQyxLQUFLLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sR0FBRyxFQUFFLEVBQ3JDLEtBQUssRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUNoQyxDQUFDO2FBQ0w7U0FDRjtJQUNILENBQUM7K0dBOVJVLHNCQUFzQjttR0FBdEIsc0JBQXNCLHdKQ1huQyx1NUhBcUdBOzs0RkQxRmEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLG1CQUFtQjtvS0FlbkIsbUJBQW1CO3NCQUE1QixNQUFNO2dCQUVFLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEF1dGhvcml6ZXJTZXJ2aWNlIH0gZnJvbSAnQHZjb21wbHkvYXV0aG9yaXplcic7XHJcbmltcG9ydCB7IEJ1c2luZXNzQ3ljbGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3NlcnZpY2VzL2J1c2luZXNzLWN5Y2xlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRlVUVVJFX0RBVEVTIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL2J1c2luZXNzLWN5Y2xlLmNvbnN0YW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndmMtYnVzaW5lc3MtY3ljbGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9idXNpbmVzcy1jeWNsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYnVzaW5lc3MtY3ljbGUuY29tcG9uZW50Lmxlc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1c2luZXNzQ3ljbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGN5Y2xlVG9TaG93OiBzdHJpbmcgPSAnQnVzaW5lc3MgQ3ljbGUnO1xyXG4gIGJ1c2luZXNzQ3ljbGVBcnI6IEFycmF5PHN0cmluZz4gPSBbXTtcclxuICBoaWRkZW5DeWNsZTogQXJyYXk8bnVtYmVyPiA9IFtdO1xyXG4gIHRlbXBCdXNpbmVzc0N5Y2xlQXJyOiBBcnJheTxzdHJpbmc+ID0gW107XHJcbiAgdGVtcEhpZGRlbkN5Y2xlOiBBcnJheTxudW1iZXI+ID0gWzBdO1xyXG4gIGJ1c2luZXNzQ3ljbGVzTGlzdDogQXJyYXk8YW55PiA9IFtdO1xyXG4gIGJ1c2luZXNzQ3ljbGVMaXN0ITogQXJyYXk8YW55PjtcclxuICB0ZW1wU2VsZWN0ZWRDeWNsZTogYW55W10gPSBbXTtcclxuICB1c2VySWQ6IG51bWJlciA9IDA7XHJcbiAgc2VsZWN0ZWRCdXNpbmVzc0N5Y2xlITogYW55O1xyXG4gIEBPdXRwdXQoKSBidXNpbmVzc0N5Y2xlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBASW5wdXQoKSBvcmdEZXRhaWxzOiBhbnk7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRob3JpemVyU2VydmljZSxcclxuICAgIHByaXZhdGUgYnVzaW5lc3NDeWNsZVNlcnZpY2U6IEJ1c2luZXNzQ3ljbGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLnVzZXJJZCA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0VXNlcklkKCkgPz8gMDtcclxuICAgIHRoaXMuYnVzaW5lc3NDeWNsZVNlcnZpY2UuaXNCdXNpbmVzc0N5Y2xlQXZhaWxhYmxlKCk7XHJcbiAgICB0aGlzLnNldFNlbGVjdGVkQnVzaW5lc3NDeWNsZSgpO1xyXG4gICAgdGhpcy5nZXRPcmdEZXRhaWxzKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XHJcblxyXG4gIGdldE9yZ0RldGFpbHMoKSB7XHJcbiAgICB0aGlzLmFwaVNlcnZpY2Uub3JnYW5pemF0aW9uRGV0YWlsJC5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICB0aGlzLnNldEJ1c2luZXNzQ3ljbGVLZXkocmVzLmJ1c2luZXNzX2N5Y2xlc19hcnIpO1xyXG4gICAgICAgIHRoaXMuc2V0QnVzaW5lc3NDeWNsZSgpO1xyXG4gICAgICAgIHRoaXMuc2V0Q3ljbGVFbmFibGVEaXNhYmxlKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0U2VsZWN0ZWRCdXNpbmVzc0N5Y2xlKCkge1xyXG4gICAgdGhpcy5idXNpbmVzc0N5Y2xlU2VydmljZS5zZWxlY3RlZEJ1c2luZXNzQ3ljbGUkLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcykge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRCdXNpbmVzc0N5Y2xlID0gcmVzO1xyXG4gICAgICAgIHRoaXMuc2V0VGVtcFNlbGVjdGVkQ3ljbGUocmVzKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiAjIyMjIERlc2NyaXB0aW9uXHJcbiAgICogaXQgd2lsbCBzZXQgYSBuZXcga2V5IGluIGV2ZXJ5IGN5Y2xlXHJcbiAgICoga2V5IHdpbGwgdXNlIGZvciBkaXNhYmxlZCBvciBlbmFibGUgdGhlIGN5Y2xlIGZyb20gYnVzaW5lc3MgY3ljbGUgbGlzdC5cclxuICAgKiBAcGFyYW0gYnVzaW5lc3NDeWNsZSB0aGlzIHRoZSBidXNpbmVzcyBjeWNsZSBsaXN0XHJcbiAgICovXHJcbiAgc2V0QnVzaW5lc3NDeWNsZUtleShidXNpbmVzc0N5Y2xlOiBhbnkpIHtcclxuICAgIHRoaXMuYnVzaW5lc3NDeWNsZUxpc3QgPSBidXNpbmVzc0N5Y2xlO1xyXG4gICAgaWYgKHRoaXMuYnVzaW5lc3NDeWNsZUxpc3QubGVuZ3RoKVxyXG4gICAgICB0aGlzLmJ1c2luZXNzQ3ljbGVMaXN0Lm1hcCgoY3ljbGU6IGFueSkgPT4ge1xyXG4gICAgICAgIGN5Y2xlWydpc0Rpc2FibGVkJ10gPSBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiAjIyMjIERlc2NyaXB0aW9uXHJcbiAgICogaXQgd2lsbCBjaGVjayB0aGUgY3ljbGUgaWYgaXQgaXMgbm90IGNoZWNrZWQuXHJcbiAgICogaWYgaXQgaGFzIGNoZWNrZWQgdGhlbiBpdCB3aWxsIHVuY2hlY2sgdGhhdCBjeWNsZS5cclxuICAgKiBAcGFyYW0gY3ljbGUgY2hlY2tlZCBvciB1bmNoZWNrZWQgY3ljbGUgZnJvbSBidXNpbmVzcyBjeWNsZSBsaXN0LlxyXG4gICAqIEBwYXJhbSBpbmRleCBpdCBnaXZlIHRoZSBpbmRleCB2YWx1ZSBvZiBidXNpbmVzcyBjeWNsZSBsaXN0IHdoaWNoIGlzIHNlbGVjdGVkLlxyXG4gICAqL1xyXG4gIHNlbGVjdEN5Y2xlKGN5Y2xlOiBhbnksIGluZGV4OiBudW1iZXIpIHtcclxuICAgIGNvbnN0IGlzRXhpc3QgPSB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlLmZpbmRJbmRleChcclxuICAgICAgKGVsOiBhbnkpID0+IGVsLnN0YXJ0X2RhdGUgPT0gY3ljbGUuc3RhcnRfZGF0ZVxyXG4gICAgKTtcclxuICAgIGlmIChpc0V4aXN0ID49IDApIHtcclxuICAgICAgdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZS5zcGxpY2UoaXNFeGlzdCwgMSk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMudGVtcFNlbGVjdGVkQ3ljbGU/Lmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlLnB1c2goY3ljbGUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3Qgc2VsZWN0ZWRJbmRleCA9IHRoaXMuYnVzaW5lc3NDeWNsZUxpc3QuZmluZEluZGV4KFxyXG4gICAgICAgIChlbDogYW55KSA9PiBlbC5zdGFydF9kYXRlID09IHRoaXMudGVtcFNlbGVjdGVkQ3ljbGVbMF0/LnN0YXJ0X2RhdGVcclxuICAgICAgKTtcclxuICAgICAgaWYgKHNlbGVjdGVkSW5kZXggPCBpbmRleCkge1xyXG4gICAgICAgIHRoaXMudGVtcFNlbGVjdGVkQ3ljbGUudW5zaGlmdChjeWNsZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZS5wdXNoKGN5Y2xlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRDeWNsZUVuYWJsZURpc2FibGUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqICMjIyMgRGVzY3JpcHRpb25cclxuICAgKlxyXG4gICAqIG5lZWQgdG8gY2hlY2sgY3ljbGUgaW5jbHVkZXMgaW4gc2VsZWN0ZWQgY3ljbGUgYXJyYXlcclxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgc2VsZWN0ZWQgY3ljbGUgaXNcclxuICAgKiBAcGFyYW0gc2VsZWN0ZWRDeWNsZSBzZWxlY3RlZCBDeWNsZSB3aGljaCB1c2VyIGNoZWNrZWQgb3IgYXV0byBzZWxlY3RlZCBjeWNsZS5cclxuICAgKiBAcGFyYW0gY3ljbGUgYWxsIGluZGl2aXNpYmxlIGN5Y2xlIG9mIGJ1c2luZXNzIGN5Y2xlIG9mIHRoZSBvcmdhbml6YXRpb24uXHJcbiAgICogQHJldHVybnMgYm9vbGVhbiB2YWx1ZSBpcyBjeWNsZSBleGlzdCBpbiBzZWxlY3RlZCBjeWNsZSBvciBub3QuXHJcbiAgICovXHJcblxyXG4gIGlzU2VsZWN0ZWRDeWNsZShzZWxlY3RlZEN5Y2xlOiBhbnksIGN5Y2xlOiBhbnkpIHtcclxuICAgIGxldCBpc1NlbGVjdGVkID0gZmFsc2U7XHJcbiAgICBzZWxlY3RlZEN5Y2xlLmZvckVhY2goKGVsOiBhbnkpOiBhbnkgPT4ge1xyXG4gICAgICBpZiAoZWwuc3RhcnRfZGF0ZSA9PSBjeWNsZS5zdGFydF9kYXRlKSB7XHJcbiAgICAgICAgaXNTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGlzU2VsZWN0ZWQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiAjIyMjIERlc2NyaXB0aW9uXHJcbiAgICpcclxuICAgKiBzZXQgc2VsZWN0ZWQgYnVzaW5lc3NDeWNsZSB0byB0ZW1wIGJ1c2luZXNzIGN5Y2xlIGluZGl2aXNpYmxlIGlmIHRoZXJlIGlzIHR3byBzZWxlY3RlZCBjeWNsZVxyXG4gICAqIFNldHMgdGVtcCBzZWxlY3RlZCBjeWNsZVxyXG4gICAqIEBwYXJhbSBjeWNsZSBzZWxlY3RlZCBidXNpbmVzcyBjeWNsZSBmcm9tIGxvY2FsIHN0b3JhZ2VcclxuICAgKi9cclxuICBzZXRUZW1wU2VsZWN0ZWRDeWNsZShjeWNsZTogYW55KSB7XHJcbiAgICB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlID0gW107XHJcbiAgICBpZiAoY3ljbGU/LnNlbGVjdGVkX2N5Y2xlX2Fycj8ubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIHRoaXMudGVtcFNlbGVjdGVkQ3ljbGUucHVzaChjeWNsZSk7XHJcbiAgICAgIHRoaXMuc2V0Q3ljbGVUb1Nob3coY3ljbGUpO1xyXG4gICAgICAvLyB0aGlzLmN5Y2xlVG9TaG93ID0gY3ljbGUuYnVzaW5lc3NfY3ljbGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjeWNsZT8uc2VsZWN0ZWRfY3ljbGVfYXJyPy5mb3JFYWNoKChlbDogYW55LCBpOiBudW1iZXIpID0+IHtcclxuICAgICAgICBsZXQgcGF5bG9hZCA9IHtcclxuICAgICAgICAgIHN0YXJ0X2RhdGU6IGVsLnN1YnN0cmluZygwLCAxMCksXHJcbiAgICAgICAgICBlbmRfZGF0ZTogZWwuc3Vic3RyaW5nKGVsPy5sZW5ndGggLSAxMCwgZWw/LmxlbnRoKSxcclxuICAgICAgICAgIHNlbGVjdGVkOiB0cnVlLFxyXG4gICAgICAgICAgYnVzaW5lc3NfY3ljbGU6IGN5Y2xlPy5idXNpbmVzc19jeWNsZVtpXSxcclxuICAgICAgICAgIHNlbGVjdGVkX2N5Y2xlOiBjeWNsZT8uc2VsZWN0ZWRfY3ljbGVbaV0sXHJcbiAgICAgICAgICBzZWxlY3RlZF9jeWNsZV9hcnI6IFtlbF0sXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlLnB1c2gocGF5bG9hZCk7XHJcbiAgICAgIH0pO1xyXG4gICAgICAvLyB0aGlzLmN5Y2xlVG9TaG93ID0gY3ljbGU/LmJ1c2luZXNzX2N5Y2xlWzBdPy5zdWJzdHJpbmcoMCwxMSkgKyBcIiAtIFwiICsgY3ljbGU/LmJ1c2luZXNzX2N5Y2xlWzFdLnN1YnN0cmluZyhjeWNsZT8uYnVzaW5lc3NfY3ljbGVbMV0/Lmxlbmd0aC0xMSwgY3ljbGU/LmJ1c2luZXNzX2N5Y2xlWzFdPy5sZW50aCk7XHJcbiAgICB9XHJcbiAgICAvLyB0aGlzLnNldEN5Y2xlVG9TaG93KGN5Y2xlKTtcclxuICAgIHRoaXMuc2V0Q3ljbGVFbmFibGVEaXNhYmxlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiAjIyMjIERlc2NyaXB0aW9uXHJcbiAgICogIHdoZW4gdXNlciBzZWxlY3Qgb25lIGN5Y2xlIHRoZW4gdGhlaXIgYmVzaWRlcyBjeWNsZXMgYXJlIGVuYWJsZSBhbmQgb3RoZXIgYXJlIGRpc2FibGVkLlxyXG4gICAqICBpZiB1c2VyIHNlbGVjdCB0d28gY3ljbGVzIHRoZW4gYWxsIHRoZSBjeWNsZXMgZ2V0IGRpc2FibGVkIGV4Y2VwdCBzZWxlY3RlZCBjeWNsZXMuXHJcbiAgICpcclxuICAgKiAgSW4gYnVzaW5lc3NDeWNsZUxpc3QgYXJyYXkgd2Ugc2V0IGEgaXNEaXNhYmxlZCBrZXksIHdlIGFyZSBzZXQgaXQgdHJ1ZSB3aGVuIG5lZWQgdG8gZGlzYWJsZWQgdGhlIGN5Y2xlLlxyXG4gICAqL1xyXG4gIHNldEN5Y2xlRW5hYmxlRGlzYWJsZSgpIHtcclxuICAgIGlmICghdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZT8ubGVuZ3RoKSB7XHJcbiAgICAgIGlmICh0aGlzLmJ1c2luZXNzQ3ljbGVMaXN0Py5sZW5ndGgpXHJcbiAgICAgICAgdGhpcy5idXNpbmVzc0N5Y2xlTGlzdC5tYXAoKGN5Y2xlOiBhbnkpID0+IHtcclxuICAgICAgICAgIGN5Y2xlWydpc0Rpc2FibGVkJ10gPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy50ZW1wU2VsZWN0ZWRDeWNsZT8ubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5idXNpbmVzc0N5Y2xlTGlzdD8uZmluZEluZGV4KFxyXG4gICAgICAgIChlbDogYW55KSA9PiBlbC5zdGFydF9kYXRlID09IHRoaXMudGVtcFNlbGVjdGVkQ3ljbGVbMF0uc3RhcnRfZGF0ZVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmJ1c2luZXNzQ3ljbGVMaXN0Py5mb3JFYWNoKChjeWNsZTogYW55LCBpOiBudW1iZXIpID0+IHtcclxuICAgICAgICBpZiAoaW5kZXggLSAxID09PSBpIHx8IGluZGV4ID09PSBpIHx8IGluZGV4ICsgMSA9PT0gaSkge1xyXG4gICAgICAgICAgY3ljbGUuaXNEaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjeWNsZS5pc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5idXNpbmVzc0N5Y2xlTGlzdD8uZm9yRWFjaCgoY3ljbGU6IGFueSkgPT4ge1xyXG4gICAgICAgIGxldCBpc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlLmZvckVhY2goKGVsOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChjeWNsZS5zdGFydF9kYXRlID09IGVsLnN0YXJ0X2RhdGUpIHtcclxuICAgICAgICAgICAgaXNEaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGN5Y2xlLmlzRGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqICMjIyMgRGVzY3JpcHRpb25cclxuICAgKiAgV2hlbiB1c2VyIGNsaWNrIGFwcGx5IHRoZW4gc2VsZWN0ZWQgY3ljbGUgaXMgc2V0IGluIGxvY2FsIHN0b3JhZ2UuXHJcbiAgICpcclxuICAgKi9cclxuICBzZXRCdXNpbmVzc0N5Y2xlKCkge1xyXG4gICAgY29uc3QgY29tYmluZWREYXRlcyA9IHRoaXMuYnVzaW5lc3NDeWNsZVNlcnZpY2UuY29udmVydE51bWVyaWNBbHBoYShcclxuICAgICAgdGhpcy5idXNpbmVzc0N5Y2xlTGlzdFswXT8uc3RhcnRfZGF0ZSArXHJcbiAgICAgICAgdGhpcy5idXNpbmVzc0N5Y2xlTGlzdFswXT8uZW5kX2RhdGVcclxuICAgICk7XHJcbiAgICBjb25zdCBpc0Z1dHVyZURhdGVzID0gKGN5Y2xlOiBhbnkpID0+XHJcbiAgICAgIGN5Y2xlPy5idXNpbmVzc19jeWNsZSA9PT0gY29tYmluZWREYXRlcyAmJlxyXG4gICAgICB0aGlzLmJ1c2luZXNzQ3ljbGVMaXN0WzBdPy5idXNpbmVzc19jeWNsZSA9PT0gRlVUVVJFX0RBVEVTO1xyXG5cclxuICAgIGxldCBidXNpbmVzc0N5Y2xlT2JqZWN0OiBhbnkgPSB7XHJcbiAgICAgIHVzZXJJZDogdGhpcy51c2VySWQsXHJcbiAgICAgIHNlbGVjdGVkQ3ljbGU6IHtcclxuICAgICAgICBzZWxlY3RlZDogdHJ1ZSxcclxuICAgICAgICBidXNpbmVzc19jeWNsZTogW10sXHJcbiAgICAgICAgc2VsZWN0ZWRfY3ljbGVfYXJyOiBbXSxcclxuICAgICAgfSxcclxuICAgIH07XHJcblxyXG4gICAgaWYgKHRoaXMudGVtcFNlbGVjdGVkQ3ljbGU/Lmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICB0aGlzLnNldFNpbmdsZVNlbGVjdGVkQ3ljbGUoYnVzaW5lc3NDeWNsZU9iamVjdCwgaXNGdXR1cmVEYXRlcyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldE11bHRpcGxlU2VsZWN0ZWRDeWNsZXMoYnVzaW5lc3NDeWNsZU9iamVjdCwgaXNGdXR1cmVEYXRlcyk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZXRDeWNsZVRvU2hvdyhidXNpbmVzc0N5Y2xlT2JqZWN0Py5zZWxlY3RlZEN5Y2xlKTtcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdidXNpbmVzc0N5Y2xlJywgSlNPTi5zdHJpbmdpZnkoYnVzaW5lc3NDeWNsZU9iamVjdCkpO1xyXG4gICAgdGhpcy5zZWxlY3RlZEJ1c2luZXNzQ3ljbGUgPSBidXNpbmVzc0N5Y2xlT2JqZWN0Py5zZWxlY3RlZEN5Y2xlO1xyXG4gICAgdGhpcy5idXNpbmVzc0N5Y2xlQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZEJ1c2luZXNzQ3ljbGUpO1xyXG4gICAgdGhpcy5idXNpbmVzc0N5Y2xlU2VydmljZS5jaGFuZ2VCdXNpbmVzc0N5Y2xlJC5uZXh0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgc2V0U2luZ2xlU2VsZWN0ZWRDeWNsZShcclxuICAgIGJ1c2luZXNzQ3ljbGVPYmplY3Q6IGFueSxcclxuICAgIGlzRnV0dXJlRGF0ZXM6IChjeWNsZTogYW55KSA9PiBib29sZWFuXHJcbiAgKSB7XHJcbiAgICBjb25zdCBjeWNsZSA9IHRoaXMudGVtcFNlbGVjdGVkQ3ljbGVbMF07XHJcbiAgICBpZiAoaXNGdXR1cmVEYXRlcyhjeWNsZSkpIHtcclxuICAgICAgY3ljbGUuYnVzaW5lc3NfY3ljbGUgPSBGVVRVUkVfREFURVM7XHJcbiAgICB9XHJcbiAgICBPYmplY3QuYXNzaWduKGJ1c2luZXNzQ3ljbGVPYmplY3Q/LnNlbGVjdGVkQ3ljbGUsIHtcclxuICAgICAgc3RhcnRfZGF0ZTogY3ljbGU/LnN0YXJ0X2RhdGUsXHJcbiAgICAgIGVuZF9kYXRlOiBjeWNsZT8uZW5kX2RhdGUsXHJcbiAgICAgIGJ1c2luZXNzX2N5Y2xlOiBjeWNsZT8uYnVzaW5lc3NfY3ljbGUsXHJcbiAgICAgIHNlbGVjdGVkX2N5Y2xlOiBgJHtjeWNsZT8uc3RhcnRfZGF0ZX0tJHtjeWNsZT8uZW5kX2RhdGV9YCxcclxuICAgICAgc2VsZWN0ZWRfY3ljbGVfYXJyOiBbYCR7Y3ljbGU/LnN0YXJ0X2RhdGV9LSR7Y3ljbGU/LmVuZF9kYXRlfWBdLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRNdWx0aXBsZVNlbGVjdGVkQ3ljbGVzKFxyXG4gICAgYnVzaW5lc3NDeWNsZU9iamVjdDogYW55LFxyXG4gICAgaXNGdXR1cmVEYXRlczogKGN5Y2xlOiBhbnkpID0+IGJvb2xlYW5cclxuICApIHtcclxuICAgIHRoaXMudGVtcFNlbGVjdGVkQ3ljbGU/LmZvckVhY2goKGN5Y2xlOiBhbnkpID0+IHtcclxuICAgICAgYnVzaW5lc3NDeWNsZU9iamVjdD8uc2VsZWN0ZWRDeWNsZS5idXNpbmVzc19jeWNsZT8ucHVzaChcclxuICAgICAgICBpc0Z1dHVyZURhdGVzKGN5Y2xlKSA/IEZVVFVSRV9EQVRFUyA6IGN5Y2xlPy5idXNpbmVzc19jeWNsZVxyXG4gICAgICApO1xyXG4gICAgICBidXNpbmVzc0N5Y2xlT2JqZWN0Py5zZWxlY3RlZEN5Y2xlLnNlbGVjdGVkX2N5Y2xlX2Fycj8ucHVzaChcclxuICAgICAgICBgJHtjeWNsZT8uc3RhcnRfZGF0ZX0tJHtjeWNsZT8uZW5kX2RhdGV9YFxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcblxyXG4gICAgYnVzaW5lc3NDeWNsZU9iamVjdC5zZWxlY3RlZEN5Y2xlLnN0YXJ0X2RhdGUgPVxyXG4gICAgICB0aGlzLnRlbXBTZWxlY3RlZEN5Y2xlWzBdPy5zdGFydF9kYXRlO1xyXG4gICAgYnVzaW5lc3NDeWNsZU9iamVjdC5zZWxlY3RlZEN5Y2xlLmVuZF9kYXRlID1cclxuICAgICAgdGhpcy50ZW1wU2VsZWN0ZWRDeWNsZVsxXT8uZW5kX2RhdGU7XHJcbiAgICBidXNpbmVzc0N5Y2xlT2JqZWN0LnNlbGVjdGVkQ3ljbGUuc2VsZWN0ZWRfY3ljbGUgPSBgJHtidXNpbmVzc0N5Y2xlT2JqZWN0Py5zZWxlY3RlZEN5Y2xlPy5zdGFydF9kYXRlfS0ke2J1c2luZXNzQ3ljbGVPYmplY3Q/LnNlbGVjdGVkQ3ljbGU/LmVuZF9kYXRlfWA7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiAjIyMjIERlc2NyaXB0aW9uXHJcbiAgICogd2hlbiB1c2VyIGNsaWNrIGNhbmNlbCB0aGVuIGl0IHdpbGwgY2xvc2UgdGhlIHBvcG92ZXIuXHJcbiAgICogcmVtb3ZlIHRlbXAgdmFsdWUgZnJvbSB0ZXJtIHNlbGVjdGVkIGFycmF5IGFuZCBzZXQgdGhlIHByZXZpb3VzIHNlbGVjdGVkIGN5Y2xlIGluIGl0LlxyXG4gICAqL1xyXG4gIGNhbmNlbEJ1c2luZXNzQ3ljbGUoKSB7XHJcbiAgICB0aGlzLnNldFRlbXBTZWxlY3RlZEN5Y2xlKHRoaXMuc2VsZWN0ZWRCdXNpbmVzc0N5Y2xlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqICMjIyMgRGVzY3JpcHRpb25cclxuICAgKiB0aGlzIHdpbGwgc2V0IHRoZSBzdHJpbmcgb2YgYnVzaW5lc3MgY3ljbGUgd2hpY2ggIHdpbGwgZGlzcGxheSBpbiB0aGUgaGVhZGVyLlxyXG4gICAqIEBwYXJhbSBjeWNsZSBvYmplY3Qgd2hpY2ggaXMgc2VsZWN0ZWQgYW5kIGFwcGx5LiB0aGUgc2FtZSBvYmplY3Qgd2lsbCBzdG9yZSBpbiBsb2NhbCBzdG9yYWdlLlxyXG4gICAqL1xyXG4gIHNldEN5Y2xlVG9TaG93KGN5Y2xlOiBhbnkpIHtcclxuICAgIGlmIChjeWNsZT8uc2VsZWN0ZWRfY3ljbGVfYXJyPy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgaWYgKGN5Y2xlPy5idXNpbmVzc19jeWNsZT8udG9Mb3dlckNhc2UoKSA9PSAnc2hvdyBmdXR1cmUgZHVlIGRhdGVzJykge1xyXG4gICAgICAgIHRoaXMuY3ljbGVUb1Nob3cgPSAnRnV0dXJlIER1ZSBEYXRlcyc7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jeWNsZVRvU2hvdyA9IGN5Y2xlLmJ1c2luZXNzX2N5Y2xlO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgY3ljbGU/LmJ1c2luZXNzX2N5Y2xlPy5sZW5ndGggPiAwICYmXHJcbiAgICAgICAgY3ljbGU/LmJ1c2luZXNzX2N5Y2xlWzFdPy50b0xvd2VyQ2FzZSgpID09ICdzaG93IGZ1dHVyZSBkdWUgZGF0ZXMnXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuY3ljbGVUb1Nob3cgPSBjeWNsZT8uYnVzaW5lc3NfY3ljbGVbMF0/LnN1YnN0cmluZygwLCAxMSk7XHJcbiAgICAgIH0gZWxzZSBpZiAoY3ljbGU/LmJ1c2luZXNzX2N5Y2xlPy5sZW5ndGgpIHtcclxuICAgICAgICB0aGlzLmN5Y2xlVG9TaG93ID1cclxuICAgICAgICAgIGN5Y2xlPy5idXNpbmVzc19jeWNsZVswXT8uc3Vic3RyaW5nKDAsIDExKSArXHJcbiAgICAgICAgICAnIC0gJyArXHJcbiAgICAgICAgICBjeWNsZT8uYnVzaW5lc3NfY3ljbGVbMV0uc3Vic3RyaW5nKFxyXG4gICAgICAgICAgICBjeWNsZT8uYnVzaW5lc3NfY3ljbGVbMV0/Lmxlbmd0aCAtIDExLFxyXG4gICAgICAgICAgICBjeWNsZT8uYnVzaW5lc3NfY3ljbGVbMV0/LmxlbnRoXHJcbiAgICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cInZjLWJ1c2luZXNzLWN5Y2xlIHZ4LXB0LTIgdngtcGItMlwiXHJcbiAgYXBwUG9wb3ZlclxyXG4gIChjbGljayk9XCJidXNpbmVzc0N5Y2xlUG9wLnBvcG92ZXIoKVwiXHJcbiAgcG9zaXRpb249XCJsZWZ0XCJcclxuPlxyXG4gIDxkaXYgY2xhc3M9XCJoZWFkaW5nIHZ4LWZzLTkgdngtdHQtdXBwZXJjYXNlIHZ4LW1iLTEgdngtbGgtM1wiPlxyXG4gICAgU0hPV0lORyBEQVRBIHt7IGN5Y2xlVG9TaG93ID09PSBcIlNob3cgRnV0dXJlIER1ZSBEYXRlc1wiID8gXCJGb3JcIiA6IFwiRnJvbVwiIH19XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LWxoLTRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiaWNvbnMgY2FsZW5kYXIgdngtZnMtMTIgdngtbXItMlwiPiYjeGU5OTY7PC9pPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInZ4LWZzLTExIHZ4LXR4dC13aGl0ZSB2eC1kLWlubGluZS1ibG9ja1wiPnt7XHJcbiAgICAgICAgY3ljbGVUb1Nob3cgPT09IFwiU2hvdyBGdXR1cmUgRHVlIERhdGVzXCJcclxuICAgICAgICAgID8gXCJGdXR1cmUgRHVlIERhdGVzXCJcclxuICAgICAgICAgIDogY3ljbGVUb1Nob3dcclxuICAgICAgfX08L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxpIGNsYXNzPVwiaWNvbnMgYXJyb3cgdngtZnMtMTAgdngtbXItMlwiPiYjeGU5ZTg7PC9pPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjx2dWktcG9wb3ZlciAjYnVzaW5lc3NDeWNsZVBvcCBbZG9udENsb3Nlb25DbGlja109XCJ0cnVlXCI+XHJcbiAgPGRpdiBjbGFzcz1cInZjLWJ1c2luZXNzLWN5Y2xlLXBvcG92ZXItY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwidmMtYnVzaW5lc3MtY3ljbGUtcG9wb3Zlci1jb250YWluZXItdG9wIHZ4LXB0LTIgdngtcGItMiB2eC1wbC0zIHZ4LXByLTNcIlxyXG4gICAgPlxyXG4gICAgICA8cCBjbGFzcz1cInZ4LWZzLTExIHZ4LWZ3LTQwMCB2eC1sYWJlbC10eHQgdngtcC0wIHZ4LW0tMFwiPlxyXG4gICAgICAgIFlvdSBjYW4gc2VsZWN0IHVwdG8gYSBtYXggb2YgdHdvIGNvbnNlY3V0aXZlIHllYXJzXHJcbiAgICAgIDwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInZjLWJ1c2luZXNzLWN5Y2xlLXBvcG92ZXItY29udGFpbmVyLWJvZHlcIj5cclxuICAgICAgPHVsIGNsYXNzPVwidngtcC0wIHZ4LW0tMFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICpuZ0Zvcj1cImxldCBlYWNoQ3ljbGUgb2YgYnVzaW5lc3NDeWNsZUxpc3Q7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxsaVxyXG4gICAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAgIGVhY2hDeWNsZT8uYnVzaW5lc3NfY3ljbGU/LnRvTG93ZXJDYXNlKCkgPT09XHJcbiAgICAgICAgICAgICAgJ3Nob3cgZnV0dXJlIGR1ZSBkYXRlcydcclxuICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJ2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LXB0LTIgdngtcGItMiB2eC1wbC0zIHZ4LXByLTNcIlxyXG4gICAgICAgICAgICBbY2xhc3MuZnV0dXJlLWN5Y2xlXT1cInRydWVcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8YXBwLWNzLWNoZWNrYm94XHJcbiAgICAgICAgICAgICAgW25nVmFsdWVdPVwiaXNTZWxlY3RlZEN5Y2xlKHRlbXBTZWxlY3RlZEN5Y2xlLCBlYWNoQ3ljbGUpXCJcclxuICAgICAgICAgICAgICAobmdWYWx1ZUNoYW5nZSk9XCJzZWxlY3RDeWNsZShlYWNoQ3ljbGUsIGkpXCJcclxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZWFjaEN5Y2xlPy5pc0Rpc2FibGVkXCJcclxuICAgICAgICAgICAgICA+U2hvdyBGdXR1cmUgRHVlIERhdGVzPC9hcHAtY3MtY2hlY2tib3hcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8aVxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnMgaW5mby1pY29uIHZ4LWZzLTEyXCJcclxuICAgICAgICAgICAgICBbYXJUb29sdGlwXT1cIlxyXG4gICAgICAgICAgICAgICAgJ1RoaXMgb3B0aW9uIGxldHMgeW91IHZpZXcgZGF0YSB0aGF0IGxpZXMgb3V0c2lkZSB0aGUgY3VycmVudCBidXNpbmVzcyBjeWNsZSBhbmQgYXJlIGR1ZSBpbiB0aGUgZnV0dXJlLidcclxuICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcclxuICAgICAgICAgICAgICBkZWxheT1cIjBcIlxyXG4gICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgID4mI3hlOTFmOzwvaVxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgPGxpXHJcbiAgICAgICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICAgICAgZWFjaEN5Y2xlPy5idXNpbmVzc19jeWNsZT8udG9Mb3dlckNhc2UoKSAhPT1cclxuICAgICAgICAgICAgICAnc2hvdyBmdXR1cmUgZHVlIGRhdGVzJ1xyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtcHQtMiB2eC1wYi0yIHZ4LXBsLTMgdngtcHItM1wiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxhcHAtY3MtY2hlY2tib3hcclxuICAgICAgICAgICAgICBbbmdWYWx1ZV09XCJpc1NlbGVjdGVkQ3ljbGUodGVtcFNlbGVjdGVkQ3ljbGUsIGVhY2hDeWNsZSlcIlxyXG4gICAgICAgICAgICAgIChuZ1ZhbHVlQ2hhbmdlKT1cInNlbGVjdEN5Y2xlKGVhY2hDeWNsZSwgaSlcIlxyXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJlYWNoQ3ljbGU/LmlzRGlzYWJsZWRcIlxyXG4gICAgICAgICAgICAgID57eyBlYWNoQ3ljbGU/LnN0YXJ0X2RhdGUgfCBkYXRlRm9ybWF0IH19IC1cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAge3sgZWFjaEN5Y2xlPy5lbmRfZGF0ZSB8IGRhdGVGb3JtYXQgfX08L25nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgPC9hcHAtY3MtY2hlY2tib3g+XHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L3VsPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwidmMtYnVzaW5lc3MtY3ljbGUtcG9wb3Zlci1jb250YWluZXItZm9vdGVyIHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcC0zXCJcclxuICAgID5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIChjbGljayk9XCJidXNpbmVzc0N5Y2xlUG9wLmNsb3NlUG9wb3ZlcigndG9wJylcIlxyXG4gICAgICAgIGNsYXNzPVwid2hpdGUgdngtZnMtMTEgdngtZnctNTAwIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1jZW50ZXIgdngtdHQtdXBwZXJjYXNlIHZ4LXAtMCB2eC1tLTAgdngtdHh0LWJsdWVcIlxyXG4gICAgICA+XHJcbiAgICAgICAgQ0FOQ0VMXHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgKGNsaWNrKT1cInNldEJ1c2luZXNzQ3ljbGUoKTsgYnVzaW5lc3NDeWNsZVBvcC5jbG9zZVBvcG92ZXIoJ3RvcCcpXCJcclxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZmFsc2VcIlxyXG4gICAgICAgIGNsYXNzPVwiYmx1ZSB2eC1mcy0xMSB2eC1mdy01MDAgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC10dC11cHBlcmNhc2UgdngtcC0wIHZ4LW0tMCB2eC10eHQtd2hpdGVcIlxyXG4gICAgICA+XHJcbiAgICAgICAgQVBQTFlcclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC92dWktcG9wb3Zlcj5cclxuIl19
|
|
@@ -8,14 +8,14 @@ export class CreateWorkflowComponent {
|
|
|
8
8
|
}
|
|
9
9
|
ngOnInit() { }
|
|
10
10
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateWorkflowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CreateWorkflowComponent, selector: "vc-create-workflow", inputs: { iframeLoading: "iframeLoading" }, outputs: { openWorkflow: "openWorkflow" }, ngImport: i0, template: "<div\n class=\"header-create-workflow vx-fs-16 vx-txt-white vx-d-flex vx-align-center vx-justify-center\"\n (click)=\"openWorkflow.emit()\"\n [class.disabled-workflow]=\"iframeLoading\"\n [arTooltip]=\"'Create'\"\n placement=\"bottom\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n>\n +\n</div>\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";.header-create-workflow{background:#1e5dd3;border-radius:3rem;cursor:pointer;width:1.5rem;height:1.5rem;margin-left:1.75rem;transition:all .3s ease-in-out}.header-create-workflow.disabled-workflow{filter:grayscale(100%);pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.ToolTipDirective, selector: "[arTooltip]", inputs: ["arTooltip", "placement", "type", "tooltipMandatory", "showTooltip", "animate"] }] }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CreateWorkflowComponent, selector: "vc-create-workflow", inputs: { iframeLoading: "iframeLoading" }, outputs: { openWorkflow: "openWorkflow" }, ngImport: i0, template: "<div\r\n class=\"header-create-workflow vx-fs-16 vx-txt-white vx-d-flex vx-align-center vx-justify-center\"\r\n (click)=\"openWorkflow.emit()\"\r\n [class.disabled-workflow]=\"iframeLoading\"\r\n [arTooltip]=\"'Create'\"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n>\r\n +\r\n</div>\r\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";.header-create-workflow{background:#1e5dd3;border-radius:3rem;cursor:pointer;width:1.5rem;height:1.5rem;margin-left:1.75rem;transition:all .3s ease-in-out}.header-create-workflow.disabled-workflow{filter:grayscale(100%);pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.ToolTipDirective, selector: "[arTooltip]", inputs: ["arTooltip", "placement", "type", "tooltipMandatory", "showTooltip", "animate"] }] }); }
|
|
12
12
|
}
|
|
13
13
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateWorkflowComponent, decorators: [{
|
|
14
14
|
type: Component,
|
|
15
|
-
args: [{ selector: 'vc-create-workflow', template: "<div\n class=\"header-create-workflow vx-fs-16 vx-txt-white vx-d-flex vx-align-center vx-justify-center\"\n (click)=\"openWorkflow.emit()\"\n [class.disabled-workflow]=\"iframeLoading\"\n [arTooltip]=\"'Create'\"\n placement=\"bottom\"\n type=\"black\"\n delay=\"0\"\n [tooltipMandatory]=\"true\"\n>\n +\n</div>\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";.header-create-workflow{background:#1e5dd3;border-radius:3rem;cursor:pointer;width:1.5rem;height:1.5rem;margin-left:1.75rem;transition:all .3s ease-in-out}.header-create-workflow.disabled-workflow{filter:grayscale(100%);pointer-events:none}\n"] }]
|
|
15
|
+
args: [{ selector: 'vc-create-workflow', template: "<div\r\n class=\"header-create-workflow vx-fs-16 vx-txt-white vx-d-flex vx-align-center vx-justify-center\"\r\n (click)=\"openWorkflow.emit()\"\r\n [class.disabled-workflow]=\"iframeLoading\"\r\n [arTooltip]=\"'Create'\"\r\n placement=\"bottom\"\r\n type=\"black\"\r\n delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n>\r\n +\r\n</div>\r\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\";@import\"https://cdn.v-comply.com/design-system/css/color/color.css\";@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";@import\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\";.header-create-workflow{background:#1e5dd3;border-radius:3rem;cursor:pointer;width:1.5rem;height:1.5rem;margin-left:1.75rem;transition:all .3s ease-in-out}.header-create-workflow.disabled-workflow{filter:grayscale(100%);pointer-events:none}\n"] }]
|
|
16
16
|
}], ctorParameters: function () { return []; }, propDecorators: { iframeLoading: [{
|
|
17
17
|
type: Input
|
|
18
18
|
}], openWorkflow: [{
|
|
19
19
|
type: Output
|
|
20
20
|
}] } });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXdvcmtmbG93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZjLWxheW91dC9zcmMvbGliL2NvbXBvbmVudHMvaGVhZGVyL2NyZWF0ZS13b3JrZmxvdy9jcmVhdGUtd29ya2Zsb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmMtbGF5b3V0L3NyYy9saWIvY29tcG9uZW50cy9oZWFkZXIvY3JlYXRlLXdvcmtmbG93L2NyZWF0ZS13b3JrZmxvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPL0UsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQztRQUpTLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBRTlCLGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7SUFFckQsQ0FBQztJQUVoQixRQUFRLEtBQVUsQ0FBQzsrR0FQUix1QkFBdUI7bUdBQXZCLHVCQUF1QixpSkNQcEMsNFZBWUE7OzRGRExhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxvQkFBb0I7MEVBS3JCLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndmMtY3JlYXRlLXdvcmtmbG93JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY3JlYXRlLXdvcmtmbG93LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jcmVhdGUtd29ya2Zsb3cuY29tcG9uZW50Lmxlc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWF0ZVdvcmtmbG93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBpZnJhbWVMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBPdXRwdXQoKSBvcGVuV29ya2Zsb3c6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7fVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cImhlYWRlci1jcmVhdGUtd29ya2Zsb3cgdngtZnMtMTYgdngtdHh0LXdoaXRlIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1jZW50ZXJcIlxyXG4gIChjbGljayk9XCJvcGVuV29ya2Zsb3cuZW1pdCgpXCJcclxuICBbY2xhc3MuZGlzYWJsZWQtd29ya2Zsb3ddPVwiaWZyYW1lTG9hZGluZ1wiXHJcbiAgW2FyVG9vbHRpcF09XCInQ3JlYXRlJ1wiXHJcbiAgcGxhY2VtZW50PVwiYm90dG9tXCJcclxuICB0eXBlPVwiYmxhY2tcIlxyXG4gIGRlbGF5PVwiMFwiXHJcbiAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiXHJcbj5cclxuICArXHJcbjwvZGl2PlxyXG4iXX0=
|