ngx-histaff-alpha 3.1.9 → 3.2.0
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/esm2022/lib/app/libraries/core-common-param-kit/core-common-param-kit/core-common-param-kit.component.mjs +53 -49
- package/esm2022/lib/app/libraries/core-page-list/core-page-list.component.mjs +2 -2
- package/fesm2022/ngx-histaff-alpha.mjs +53 -49
- package/fesm2022/ngx-histaff-alpha.mjs.map +1 -1
- package/lib/app/libraries/core-common-param-kit/core-common-param-kit/core-common-param-kit.component.d.ts +2 -2
- package/package.json +1 -1
|
@@ -15,8 +15,8 @@ export class CoreCommonParamKitComponent extends BaseComponent {
|
|
|
15
15
|
super(mls);
|
|
16
16
|
this.mls = mls;
|
|
17
17
|
this.appService = appService;
|
|
18
|
-
this.onChange = new EventEmitter();
|
|
19
18
|
this.statusOptions$ = new BehaviorSubject([]);
|
|
19
|
+
this.onChange = new EventEmitter();
|
|
20
20
|
this.isEmployeeStatusCase = false;
|
|
21
21
|
this.onNgModelChange = (ngModel, value) => {
|
|
22
22
|
this.onChange.emit({
|
|
@@ -128,61 +128,63 @@ export class CoreCommonParamKitComponent extends BaseComponent {
|
|
|
128
128
|
}
|
|
129
129
|
ngAfterViewInit() {
|
|
130
130
|
setTimeout(() => {
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
}
|
|
144
|
-
const newOptions = [
|
|
145
|
-
{
|
|
146
|
-
value: null,
|
|
147
|
-
text: this.mls.trans(EnumTranslateKey.UI_CORE_PARAMS_COMMON_NULL_STATUS, this.lang),
|
|
148
|
-
checked: this.isEmployeeStatusCase ? false : true
|
|
149
|
-
}
|
|
150
|
-
];
|
|
151
|
-
const newStatusIds = !!this.isEmployeeStatusCase ? [] : [null];
|
|
152
|
-
body.innerBody.map((m) => {
|
|
153
|
-
newOptions.push({
|
|
154
|
-
value: m.id,
|
|
155
|
-
text: m.name,
|
|
156
|
-
checked: !!this.isEmployeeStatusCase ? (m.code === "ESW") : true
|
|
157
|
-
});
|
|
158
|
-
if (!!this.isEmployeeStatusCase) {
|
|
159
|
-
if (m.code === "ESW") {
|
|
160
|
-
newStatusIds.push(m.id);
|
|
131
|
+
if (!!this.statusOptionsApi) {
|
|
132
|
+
this.subscriptions.push(this.appService.get(this.statusOptionsApi).subscribe((x) => {
|
|
133
|
+
if (x.ok && x.status === 200) {
|
|
134
|
+
const body = x.body;
|
|
135
|
+
if (body.statusCode === 200) {
|
|
136
|
+
// Nếu là trạng thái nhân viên, chỉ check mặc định "Đang làm việc"
|
|
137
|
+
// Trái lại thì check tất
|
|
138
|
+
for (let index = 0; index < body.innerBody.length; index++) {
|
|
139
|
+
const i = body.innerBody[index];
|
|
140
|
+
if (i.typeCode === "EMP_STATUS") {
|
|
141
|
+
this.isEmployeeStatusCase = true;
|
|
142
|
+
break;
|
|
161
143
|
}
|
|
162
144
|
}
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
this.paramRows.map(row => {
|
|
169
|
-
row.map(column => {
|
|
170
|
-
if (column.name === 'statusIds') {
|
|
171
|
-
column.ngModel = newStatusIds;
|
|
145
|
+
const newOptions = [
|
|
146
|
+
{
|
|
147
|
+
value: null,
|
|
148
|
+
text: this.mls.trans(EnumTranslateKey.UI_CORE_PARAMS_COMMON_NULL_STATUS, this.lang),
|
|
149
|
+
checked: this.isEmployeeStatusCase ? false : true
|
|
172
150
|
}
|
|
151
|
+
];
|
|
152
|
+
const newStatusIds = !!this.isEmployeeStatusCase ? [] : [null];
|
|
153
|
+
body.innerBody.map((m) => {
|
|
154
|
+
newOptions.push({
|
|
155
|
+
value: m.id,
|
|
156
|
+
text: m.name,
|
|
157
|
+
checked: !!this.isEmployeeStatusCase ? (m.code === "ESW") : true
|
|
158
|
+
});
|
|
159
|
+
if (!!this.isEmployeeStatusCase) {
|
|
160
|
+
if (m.code === "ESW") {
|
|
161
|
+
newStatusIds.push(m.id);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
newStatusIds.push(m.id);
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
this.statusOptions$.next(newOptions);
|
|
169
|
+
this.paramRows.map(row => {
|
|
170
|
+
row.map(column => {
|
|
171
|
+
if (column.name === 'statusIds') {
|
|
172
|
+
column.ngModel = newStatusIds;
|
|
173
|
+
}
|
|
174
|
+
});
|
|
173
175
|
});
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
}
|
|
176
|
+
this.onChange.emit({
|
|
177
|
+
field: "statusIds",
|
|
178
|
+
value: newStatusIds
|
|
179
|
+
});
|
|
180
|
+
}
|
|
179
181
|
}
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
+
}));
|
|
183
|
+
}
|
|
182
184
|
});
|
|
183
185
|
}
|
|
184
186
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CoreCommonParamKitComponent, deps: [{ token: i1.MultiLanguageService }, { token: i2.AppService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
185
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: CoreCommonParamKitComponent, isStandalone: true, selector: "core-common-param-kit", inputs: { enableTimeZoneConverterForDateTimePeriodParameters: "enableTimeZoneConverterForDateTimePeriodParameters", datePeriodComparisonFor: "datePeriodComparisonFor", datePeriodComparisonForLabelKey: "datePeriodComparisonForLabelKey", statusInclusionFor: "statusInclusionFor", statusInclusionForLabelKey: "statusInclusionForLabelKey", statusOptionsApi: "statusOptionsApi", showOrgParam: "showOrgParam", hideDatePeriodComparison: "hideDatePeriodComparison", hideStatusInclusion: "hideStatusInclusion", hideGeneralSearch: "hideGeneralSearch" }, outputs: { onChange: "onChange" }, usesInheritance: true, ngImport: i0, template: "<div class=\"ml5\">\r\n <core-header-params [rows]=\"paramRows\"></core-header-params>\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: CoreHeaderParamsComponent, selector: "core-header-params", inputs: ["enableTimeZoneConverterForDateTimePeriodParameters", "rows", "toggleAllValue"] }] }); }
|
|
187
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: CoreCommonParamKitComponent, isStandalone: true, selector: "core-common-param-kit", inputs: { enableTimeZoneConverterForDateTimePeriodParameters: "enableTimeZoneConverterForDateTimePeriodParameters", datePeriodComparisonFor: "datePeriodComparisonFor", datePeriodComparisonForLabelKey: "datePeriodComparisonForLabelKey", statusInclusionFor: "statusInclusionFor", statusInclusionForLabelKey: "statusInclusionForLabelKey", statusOptionsApi: "statusOptionsApi", showOrgParam: "showOrgParam", hideDatePeriodComparison: "hideDatePeriodComparison", hideStatusInclusion: "hideStatusInclusion", hideGeneralSearch: "hideGeneralSearch", statusOptions$: "statusOptions$" }, outputs: { onChange: "onChange" }, usesInheritance: true, ngImport: i0, template: "<div class=\"ml5\">\r\n <core-header-params [rows]=\"paramRows\"></core-header-params>\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: CoreHeaderParamsComponent, selector: "core-header-params", inputs: ["enableTimeZoneConverterForDateTimePeriodParameters", "rows", "toggleAllValue"] }] }); }
|
|
186
188
|
}
|
|
187
189
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CoreCommonParamKitComponent, decorators: [{
|
|
188
190
|
type: Component,
|
|
@@ -211,7 +213,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
211
213
|
type: Input
|
|
212
214
|
}], hideGeneralSearch: [{
|
|
213
215
|
type: Input
|
|
216
|
+
}], statusOptions$: [{
|
|
217
|
+
type: Input
|
|
214
218
|
}], onChange: [{
|
|
215
219
|
type: Output
|
|
216
220
|
}] } });
|
|
217
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jb21tb24tcGFyYW0ta2l0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLWNvbW1vbi1wYXJhbS1raXQvY29yZS1jb21tb24tcGFyYW0ta2l0L2NvcmUtY29tbW9uLXBhcmFtLWtpdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1jb21tb24tcGFyYW0ta2l0L2NvcmUtY29tbW9uLXBhcmFtLWtpdC9jb3JlLWNvbW1vbi1wYXJhbS1raXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEdBQUcsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFLMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwRUFBMEUsQ0FBQztBQUNySCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQzs7OztBQW1CekgsTUFBTSxPQUFPLDJCQUNYLFNBQVEsYUFBYTtJQTJCckIsWUFDa0IsR0FBeUIsRUFDakMs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SztnQkFDRyx1QkFBdUI7c0JBQS9CLEtBQUs7Z0JBQ0csK0JBQStCO3NCQUF2QyxLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRywwQkFBMEI7c0JBQWxDLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csd0JBQXdCO3NCQUFoQyxLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJQ29yZUNoZWNrbGlzdE9wdGlvbiB9IGZyb20gJy4uLy4uL2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IElDb3JlUGFyYW1Db250cm9sIH0gZnJvbSAnLi4vLi4vY29yZS1oZWFkZXItcGFyYW1zL2VudW0tYW5kLWludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBFbnVtRm9ybUJhc2VDb250b2xUeXBlIH0gZnJvbSAnLi4vLi4vLi4vZW51bS9FbnVtRm9ybUJhc2VDb250b2xUeXBlJztcclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UtY29tcG9uZW50L2Jhc2UvYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgYXBpIH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBwU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2FwcC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUZvcm1hdGVkUmVzcG9uc2UgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL0lGb3JtYXRlZFJlc3BvbnNlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvcmVIZWFkZXJQYXJhbXNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWhlYWRlci1wYXJhbXMvY29yZS1oZWFkZXItcGFyYW1zL2NvcmUtaGVhZGVyLXBhcmFtcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnVtQ29yZUZvcm1Db250cm9sU2Vla2VyU291cmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUtZm9ybS1jb250cm9sLXNlZWtlci9FbnVtQ29yZUZvcm1Db250cm9sU2Vla2VyU291cmNlVHlwZSc7XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ29yZUNvbW1vblBhcmFtS2l0RXZlbnRFbWl0dGVyRGF0YSB7XHJcbiAgZmllbGQ6IHN0cmluZztcclxuICB2YWx1ZTogYW55O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtY29tbW9uLXBhcmFtLWtpdCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIENvcmVIZWFkZXJQYXJhbXNDb21wb25lbnQsXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS1jb21tb24tcGFyYW0ta2l0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3JlLWNvbW1vbi1wYXJhbS1raXQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVDb21tb25QYXJhbUtpdENvbXBvbmVudFxyXG4gIGV4dGVuZHMgQmFzZUNvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoKSBlbmFibGVUaW1lWm9uZUNvbnZlcnRlckZvckRhdGVUaW1lUGVyaW9kUGFyYW1ldGVycyE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3IhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleSE6IEVudW1UcmFuc2xhdGVLZXk7XHJcbiAgQElucHV0KCkgc3RhdHVzSW5jbHVzaW9uRm9yITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHN0YXR1c0luY2x1c2lvbkZvckxhYmVsS2V5ITogRW51bVRyYW5zbGF0ZUtleTtcclxuICBASW5wdXQoKSBzdGF0dXNPcHRpb25zQXBpITogYXBpO1xyXG4gIEBJbnB1dCgpIHNob3dPcmdQYXJhbSE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaGlkZURhdGVQZXJpb2RDb21wYXJpc29uITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBoaWRlU3RhdHVzSW5jbHVzaW9uITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBoaWRlR2VuZXJhbFNlYXJjaCE6IGJvb2xlYW47XHJcbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxJQ29yZUNvbW1vblBhcmFtS2l0RXZlbnRFbWl0dGVyRGF0YT4oKTtcclxuXHJcbiAgc3RhdHVzT3B0aW9ucyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElDb3JlQ2hlY2tsaXN0T3B0aW9uW10+KFtdKTtcclxuXHJcbiAgaXNFbXBsb3llZVN0YXR1c0Nhc2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgb25OZ01vZGVsQ2hhbmdlID0gKG5nTW9kZWw6IHN0cmluZywgdmFsdWU6IGFueSkgPT4ge1xyXG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KHtcclxuICAgICAgZmllbGQ6IG5nTW9kZWwsXHJcbiAgICAgIHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfTtcclxuXHJcbiAgcGFyYW1Sb3dzITogSUNvcmVQYXJhbUNvbnRyb2xbXVtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBvdmVycmlkZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihtbHMpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaCh0aGlzLm1scy5sYW5nJC5zdWJzY3JpYmUoKHgpID0+ICh0aGlzLmxhbmcgPSB4KSkpO1xyXG5cclxuICAgIGlmICghIXRoaXMuaGlkZURhdGVQZXJpb2RDb21wYXJpc29uKSB7XHJcbiAgICAgIHRoaXMucGFyYW1Sb3dzID0gW1xyXG4gICAgICAgIFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdvcmdJZHMnLFxyXG4gICAgICAgICAgICBuZ01vZGVsOiBbXSxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiAnJyxcclxuICAgICAgICAgICAgbGFiZWw6IEVudW1UcmFuc2xhdGVLZXkuVUlfRU5USVRZX0ZJRUxEX0NBUFRJT05fSFVfT1JHQU5JWkFUSU9OX0lEUyxcclxuICAgICAgICAgICAgY29udHJvbFR5cGU6IEVudW1Gb3JtQmFzZUNvbnRvbFR5cGUuU0VFS0VSLFxyXG4gICAgICAgICAgICBzZWVrZXJTb3VyY2VUeXBlOiBFbnVtQ29yZUZvcm1Db250cm9sU2Vla2VyU291cmNlVHlwZS5PUkdBTklaQVRJT05fVU5JVF9TRUVLLFxyXG4gICAgICAgICAgICBoaWRkZW46ICF0aGlzLnNob3dPcmdQYXJhbSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBcclxuICAgICAgICAgIC8vIHtcclxuICAgICAgICAgIC8vICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAvLyAgIG5hbWU6ICdnZW5lcmFsU2VhcmNoJyxcclxuICAgICAgICAgIC8vICAgbmdNb2RlbDogJycsXHJcbiAgICAgICAgICAvLyAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgLy8gICB2YWx1ZTogJycsXHJcbiAgICAgICAgICAvLyAgIGxhYmVsOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfUEFSQU1TX0dFTkVSQUxfU0VBUkNILFxyXG4gICAgICAgICAgLy8gICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5URVhUQk9YLFxyXG4gICAgICAgICAgLy8gICBoaWRkZW46IHRoaXMuaGlkZUdlbmVyYWxTZWFyY2hcclxuICAgICAgICAgIC8vIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGZsZXhTaXplOiAhdGhpcy5oaWRlR2VuZXJhbFNlYXJjaCA/IDMgOiAxMCxcclxuICAgICAgICAgICAgbmFtZTogJ3N0YXR1c0lkcycsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6IFtdLFxyXG4gICAgICAgICAgICBuZ01vZGVsQ2hhbmdlOiB0aGlzLm9uTmdNb2RlbENoYW5nZSxcclxuICAgICAgICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICAgICAgICAgIGhpZGRlbjogdGhpcy5oaWRlU3RhdHVzSW5jbHVzaW9uLFxyXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5zdGF0dXNJbmNsdXNpb25Gb3JMYWJlbEtleSxcclxuICAgICAgICAgICAgY29udHJvbFR5cGU6IEVudW1Gb3JtQmFzZUNvbnRvbFR5cGUuQ0hFQ0tMSVNULFxyXG4gICAgICAgICAgICBjaGVja2xpc3RPcHRpb25zJDogdGhpcy5zdGF0dXNPcHRpb25zJCxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgXVxyXG4gICAgICBdXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnBhcmFtUm93cyA9IFtcclxuICAgICAgICBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGZsZXhTaXplOiAzLFxyXG4gICAgICAgICAgICBuYW1lOiAnb3JnSWRzJyxcclxuICAgICAgICAgICAgbmdNb2RlbDogJycsXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICAgIGxhYmVsOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0VOVElUWV9GSUVMRF9DQVBUSU9OX0hVX09SR0FOSVpBVElPTl9JRFMsXHJcbiAgICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLlNFRUtFUixcclxuICAgICAgICAgICAgc2Vla2VyU291cmNlVHlwZTogRW51bUNvcmVGb3JtQ29udHJvbFNlZWtlclNvdXJjZVR5cGUuT1JHQU5JWkFUSU9OX1VOSVRfU0VFSyxcclxuICAgICAgICAgICAgaGlkZGVuOiAhdGhpcy5zaG93T3JnUGFyYW0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICAvKlxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBmbGV4U2l6ZTogMyxcclxuICAgICAgICAgICAgbmFtZTogJ2dlbmVyYWxTZWFyY2gnLFxyXG4gICAgICAgICAgICBuZ01vZGVsOiAnJyxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiAnJyxcclxuICAgICAgICAgICAgbGFiZWw6IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9QQVJBTVNfR0VORVJBTF9TRUFSQ0gsXHJcbiAgICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLlRFWFRCT1gsXHJcbiAgICAgICAgICAgIGhpZGRlbjogdGhpcy5oaWRlR2VuZXJhbFNlYXJjaFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgICovXHJcblxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBmbGV4U2l6ZTogMyxcclxuICAgICAgICAgICAgbmFtZTogJ2RhdGVGcm9tJyxcclxuICAgICAgICAgICAgbmdNb2RlbDogbnVsbCxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZURhdGVQZXJpb2RDb21wYXJpc29uLFxyXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5kYXRlUGVyaW9kQ29tcGFyaXNvbkZvckxhYmVsS2V5LFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5EQVRFUElDS0VSLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdkYXRlVG8nLFxyXG4gICAgICAgICAgICBuZ01vZGVsOiBudWxsLFxyXG4gICAgICAgICAgICBuZ01vZGVsQ2hhbmdlOiB0aGlzLm9uTmdNb2RlbENoYW5nZSxcclxuICAgICAgICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICAgICAgICAgIGhpZGRlbjogdGhpcy5oaWRlRGF0ZVBlcmlvZENvbXBhcmlzb24sXHJcbiAgICAgICAgICAgIGxhYmVsOiB0aGlzLmRhdGVQZXJpb2RDb21wYXJpc29uRm9yTGFiZWxLZXksXHJcbiAgICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLkRBVEVQSUNLRVIsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBmbGV4U2l6ZTogMyxcclxuICAgICAgICAgICAgbmFtZTogJ3N0YXR1c0lkcycsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6IFtdLFxyXG4gICAgICAgICAgICBuZ01vZGVsQ2hhbmdlOiB0aGlzLm9uTmdNb2RlbENoYW5nZSxcclxuICAgICAgICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICAgICAgICAgIGhpZGRlbjogdGhpcy5oaWRlU3RhdHVzSW5jbHVzaW9uLFxyXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5zdGF0dXNJbmNsdXNpb25Gb3JMYWJlbEtleSxcclxuICAgICAgICAgICAgY29udHJvbFR5cGU6IEVudW1Gb3JtQmFzZUNvbnRvbFR5cGUuQ0hFQ0tMSVNULFxyXG4gICAgICAgICAgICBjaGVja2xpc3RPcHRpb25zJDogdGhpcy5zdGF0dXNPcHRpb25zJCxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgXSxcclxuICAgICAgXTtcclxuXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICAgIHRoaXMuYXBwU2VydmljZS5nZXQodGhpcy5zdGF0dXNPcHRpb25zQXBpKS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICAgIGlmICh4Lm9rICYmIHguc3RhdHVzID09PSAyMDApIHtcclxuICAgICAgICAgICAgY29uc3QgYm9keTogSUZvcm1hdGVkUmVzcG9uc2UgPSB4LmJvZHk7XHJcbiAgICAgICAgICAgIGlmIChib2R5LnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG5cclxuICAgICAgICAgICAgICAvLyBO4bq/dSBsw6AgdHLhuqFuZyB0aMOhaSBuaMOibiB2acOqbiwgY2jhu4kgY2hlY2sgbeG6t2MgxJHhu4tuaCBcIsSQYW5nIGzDoG0gdmnhu4djXCJcclxuICAgICAgICAgICAgICAvLyBUcsOhaSBs4bqhaSB0aMOsIGNoZWNrIHThuqV0XHJcblxyXG4gICAgICAgICAgICAgIFxyXG5cclxuICAgICAgICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYm9keS5pbm5lckJvZHkubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpID0gYm9keS5pbm5lckJvZHlbaW5kZXhdO1xyXG4gICAgICAgICAgICAgICAgaWYgKGkudHlwZUNvZGUgPT09IFwiRU1QX1NUQVRVU1wiKSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuaXNFbXBsb3llZVN0YXR1c0Nhc2UgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIGNvbnN0IG5ld09wdGlvbnM6IElDb3JlQ2hlY2tsaXN0T3B0aW9uW10gPSBbXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICB0ZXh0OiB0aGlzLm1scy50cmFucyhFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfUEFSQU1TX0NPTU1PTl9OVUxMX1NUQVRVUywgdGhpcy5sYW5nKSxcclxuICAgICAgICAgICAgICAgICAgY2hlY2tlZDogdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSA/IGZhbHNlIDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgfV07XHJcblxyXG4gICAgICAgICAgICAgIGNvbnN0IG5ld1N0YXR1c0lkczogKG51bWJlciB8IG51bGwpW10gPSAhIXRoaXMuaXNFbXBsb3llZVN0YXR1c0Nhc2UgPyBbXSA6IFtudWxsXTtcclxuXHJcbiAgICAgICAgICAgICAgYm9keS5pbm5lckJvZHkubWFwKChtOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIG5ld09wdGlvbnMucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBtLmlkLFxyXG4gICAgICAgICAgICAgICAgICB0ZXh0OiBtLm5hbWUsXHJcbiAgICAgICAgICAgICAgICAgIGNoZWNrZWQ6ICEhdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSA/IChtLmNvZGUgPT09IFwiRVNXXCIpIDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBpZiAoISF0aGlzLmlzRW1wbG95ZWVTdGF0dXNDYXNlKSB7XHJcbiAgICAgICAgICAgICAgICAgIGlmIChtLmNvZGUgPT09IFwiRVNXXCIpIHtcclxuICAgICAgICAgICAgICAgICAgICBuZXdTdGF0dXNJZHMucHVzaChtLmlkKTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgbmV3U3RhdHVzSWRzLnB1c2gobS5pZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgIHRoaXMuc3RhdHVzT3B0aW9ucyQubmV4dChuZXdPcHRpb25zKTtcclxuXHJcbiAgICAgICAgICAgICAgdGhpcy5wYXJhbVJvd3MubWFwKHJvdyA9PiB7XHJcbiAgICAgICAgICAgICAgICByb3cubWFwKGNvbHVtbiA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIGlmIChjb2x1bW4ubmFtZSA9PT0gJ3N0YXR1c0lkcycpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2x1bW4ubmdNb2RlbCA9IG5ld1N0YXR1c0lkcztcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICB9KVxyXG5cclxuICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoe1xyXG4gICAgICAgICAgICAgICAgZmllbGQ6IFwic3RhdHVzSWRzXCIsXHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogbmV3U3RhdHVzSWRzXHJcbiAgICAgICAgICAgICAgfSlcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtbDVcIj5cclxuICAgIDxjb3JlLWhlYWRlci1wYXJhbXMgW3Jvd3NdPVwicGFyYW1Sb3dzXCI+PC9jb3JlLWhlYWRlci1wYXJhbXM+XHJcbjwvZGl2PiJdfQ==
|
|
221
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jb21tb24tcGFyYW0ta2l0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLWNvbW1vbi1wYXJhbS1raXQvY29yZS1jb21tb24tcGFyYW0ta2l0L2NvcmUtY29tbW9uLXBhcmFtLWtpdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1jb21tb24tcGFyYW0ta2l0L2NvcmUtY29tbW9uLXBhcmFtLWtpdC9jb3JlLWNvbW1vbi1wYXJhbS1raXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEdBQUcsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFLMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwRUFBMEUsQ0FBQztBQUNySCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQzs7OztBQW1CekgsTUFBTSxPQUFPLDJCQUNYLFNBQVEsYUFBYTtJQTJCckIsWUFDa0IsR0FBeUIsRUFDakMsVUFBc0I7UUFFOUIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBSEssUUFBRyxHQUFILEdBQUcsQ0FBc0I7UUFDakMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQWpCdkIsbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBeUIsRUFBRSxDQUFDLENBQUM7UUFDaEUsYUFBUSxHQUFHLElBQUksWUFBWSxFQUF1QyxDQUFDO1FBRzdFLHlCQUFvQixHQUFZLEtBQUssQ0FBQztRQUV0QyxvQkFBZSxHQUFHLENBQUMsT0FBZSxFQUFFLEtBQVUsRUFBRSxFQUFFO1lBQ2hELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO2dCQUNqQixLQUFLLEVBQUUsT0FBTztnQkFDZCxLQUFLO2FBQ04sQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO0lBU0YsQ0FBQztJQUVRLFFBQVE7UUFDZixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFMUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLHdCQUF3QixFQUFFO1lBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUc7Z0JBQ2Y7b0JBQ0U7d0JBQ0UsUUFBUSxFQUFFLENBQUM7d0JBQ1gsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsT0FBTyxFQUFFLEVBQUU7d0JBQ1gsYUFBYSxFQUFFLElBQUksQ0FBQyxlQUFlO3dCQUNuQyxLQUFLLEVBQUUsRUFBRTt3QkFDVCxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsMkNBQTJDO3dCQUNuRSxXQUFXLEVBQUUsc0JBQXNCLENBQUMsTUFBTTt3QkFDMUMsZ0JBQWdCLEVBQUUsbUNBQW1DLENBQUMsc0JBQXNCO3dCQUM1RSxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWTtxQkFDM0I7b0JBRUQsSUFBSTtvQkFDSixpQkFBaUI7b0JBQ2pCLDJCQUEyQjtvQkFDM0IsaUJBQWlCO29CQUNqQix5Q0FBeUM7b0JBQ3pDLGVBQWU7b0JBQ2YsMkRBQTJEO29CQUMzRCxpREFBaUQ7b0JBQ2pELG1DQUFtQztvQkFDbkMsS0FBSztvQkFDTDt3QkFDRSxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTt3QkFDMUMsSUFBSSxFQUFFLFdBQVc7d0JBQ2pCLE9BQU8sRUFBRSxFQUFFO3dCQUNYLGFBQWEsRUFBRSxJQUFJLENBQUMsZUFBZTt3QkFDbkMsS0FBSyxFQUFFLElBQUk7d0JBQ1gsTUFBTSxFQUFFLElBQUksQ0FBQyxtQkFBbUI7d0JBQ2hDLEtBQUssRUFBRSxJQUFJLENBQUMsMEJBQTBCO3dCQUN0QyxXQUFXLEVBQUUsc0JBQXNCLENBQUMsU0FBUzt3QkFDN0MsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGNBQWM7cUJBQ3ZDO2lCQUNGO2FBQ0YsQ0FBQTtTQUNGO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxHQUFHO2dCQUNmO29CQUNFO3dCQUNFLFFBQVEsRUFBRSxDQUFDO3dCQUNYLElBQUksRUFBRSxRQUFRO3dCQUNkLE9BQU8sRUFBRSxFQUFFO3dCQUNYLGFBQWEsRUFBRSxJQUFJLENBQUMsZUFBZTt3QkFDbkMsS0FBSyxFQUFFLEVBQUU7d0JBQ1QsS0FBSyxFQUFFLGdCQUFnQixDQUFDLDJDQUEyQzt3QkFDbkUsV0FBVyxFQUFFLHNCQUFzQixDQUFDLE1BQU07d0JBQzFDLGdCQUFnQixFQUFFLG1DQUFtQyxDQUFDLHNCQUFzQjt3QkFDNUUsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVk7cUJBQzNCO29CQUVEOzs7Ozs7Ozs7OztzQkFXRTtvQkFFRjt3QkFDRSxRQUFRLEVBQUUsQ0FBQzt3QkFDWCxJQUFJLEVBQUUsVUFBVTt3QkFDaEIsT0FBTyxFQUFFLElBQUk7d0JBQ2IsYUFBYSxFQUFFLElBQUksQ0FBQyxlQUFlO3dCQUNuQyxLQUFLLEVBQUUsSUFBSTt3QkFDWCxNQUFNLEVBQUUsSUFBSSxDQUFDLHdCQUF3Qjt3QkFDckMsS0FBSyxFQUFFLElBQUksQ0FBQywrQkFBK0I7d0JBQzNDLFdBQVcsRUFBRSxzQkFBc0IsQ0FBQyxVQUFVO3FCQUMvQztvQkFDRDt3QkFDRSxRQUFRLEVBQUUsQ0FBQzt3QkFDWCxJQUFJLEVBQUUsUUFBUTt3QkFDZCxPQUFPLEVBQUUsSUFBSTt3QkFDYixhQUFhLEVBQUUsSUFBSSxDQUFDLGVBQWU7d0JBQ25DLEtBQUssRUFBRSxJQUFJO3dCQUNYLE1BQU0sRUFBRSxJQUFJLENBQUMsd0JBQXdCO3dCQUNyQyxLQUFLLEVBQUUsSUFBSSxDQUFDLCtCQUErQjt3QkFDM0MsV0FBVyxFQUFFLHNCQUFzQixDQUFDLFVBQVU7cUJBQy9DO29CQUNEO3dCQUNFLFFBQVEsRUFBRSxDQUFDO3dCQUNYLElBQUksRUFBRSxXQUFXO3dCQUNqQixPQUFPLEVBQUUsRUFBRTt3QkFDWCxhQUFhLEVBQUUsSUFBSSxDQUFDLGVBQWU7d0JBQ25DLEtBQUssRUFBRSxJQUFJO3dCQUNYLE1BQU0sRUFBRSxJQUFJLENBQUMsbUJBQW1CO3dCQUNoQyxLQUFLLEVBQUUsSUFBSSxDQUFDLDBCQUEwQjt3QkFDdEMsV0FBVyxFQUFFLHNCQUFzQixDQUFDLFNBQVM7d0JBQzdDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxjQUFjO3FCQUN2QztpQkFDRjthQUNGLENBQUM7U0FFSDtJQUVILENBQUM7SUFFRCxlQUFlO1FBQ2IsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUN6RCxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7d0JBQzVCLE1BQU0sSUFBSSxHQUFzQixDQUFDLENBQUMsSUFBSSxDQUFDO3dCQUN2QyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssR0FBRyxFQUFFOzRCQUUzQixrRUFBa0U7NEJBQ2xFLHlCQUF5Qjs0QkFJekIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO2dDQUMxRCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dDQUNoQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEtBQUssWUFBWSxFQUFFO29DQUMvQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDO29DQUNqQyxNQUFNO2lDQUNQOzZCQUNGOzRCQUVELE1BQU0sVUFBVSxHQUEyQjtnQ0FDekM7b0NBQ0UsS0FBSyxFQUFFLElBQUk7b0NBQ1gsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLGlDQUFpQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUM7b0NBQ25GLE9BQU8sRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSTtpQ0FDbEQ7NkJBQUMsQ0FBQzs0QkFFTCxNQUFNLFlBQVksR0FBc0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDOzRCQUVsRixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFO2dDQUM1QixVQUFVLENBQUMsSUFBSSxDQUFDO29DQUNkLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRTtvQ0FDWCxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUk7b0NBQ1osT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSTtpQ0FDakUsQ0FBQyxDQUFDO2dDQUNILElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtvQ0FDL0IsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRTt3Q0FDcEIsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7cUNBQ3pCO2lDQUNGO3FDQUFNO29DQUNMLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lDQUN6Qjs0QkFDSCxDQUFDLENBQUMsQ0FBQzs0QkFFSCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQzs0QkFFckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0NBQ3ZCLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7b0NBQ2YsSUFBSSxNQUFNLENBQUMsSUFBSSxLQUFLLFdBQVcsRUFBRTt3Q0FDL0IsTUFBTSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUM7cUNBQy9CO2dDQUNILENBQUMsQ0FBQyxDQUFBOzRCQUNKLENBQUMsQ0FBQyxDQUFBOzRCQUVGLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO2dDQUNqQixLQUFLLEVBQUUsV0FBVztnQ0FDbEIsS0FBSyxFQUFFLFlBQVk7NkJBQ3BCLENBQUMsQ0FBQTt5QkFFSDtxQkFDRjtnQkFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO2FBQ0g7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBak5VLDJCQUEyQjtrR0FBM0IsMkJBQTJCLDZzQkNqQ3hDLHFHQUVNLHlERHdCRixZQUFZLDhCQUNaLFdBQVcsK0JBQ1gseUJBQXlCOzsyRkFLaEIsMkJBQTJCO2tCQVh2QyxTQUFTOytCQUNFLHVCQUF1QixjQUNyQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLHlCQUF5QjtxQkFDMUI7a0hBT1Esa0RBQWtEO3NCQUExRCxLQUFLO2dCQUNHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFDRywrQkFBK0I7c0JBQXZDLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLDBCQUEwQjtzQkFBbEMsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyx3QkFBd0I7c0JBQWhDLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgSUNvcmVDaGVja2xpc3RPcHRpb24gfSBmcm9tICcuLi8uLi9jb3JlLWNoZWNrbGlzdC9jb3JlLWNoZWNrbGlzdC9jb3JlLWNoZWNrbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJQ29yZVBhcmFtQ29udHJvbCB9IGZyb20gJy4uLy4uL2NvcmUtaGVhZGVyLXBhcmFtcy9lbnVtLWFuZC1pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgRW51bUZvcm1CYXNlQ29udG9sVHlwZSB9IGZyb20gJy4uLy4uLy4uL2VudW0vRW51bUZvcm1CYXNlQ29udG9sVHlwZSc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9iYXNlLWNvbXBvbmVudC9iYXNlL2Jhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRW51bVRyYW5zbGF0ZUtleSB9IGZyb20gXCJhbHBoYS1nbG9iYWwtY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IGFwaSB9IGZyb20gXCJhbHBoYS1nbG9iYWwtY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbXVsdGktbGFuZ3VhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hcHAuc2VydmljZSc7XHJcbmltcG9ydCB7IElGb3JtYXRlZFJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9JRm9ybWF0ZWRSZXNwb25zZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDb3JlSGVhZGVyUGFyYW1zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZS1oZWFkZXItcGFyYW1zL2NvcmUtaGVhZGVyLXBhcmFtcy9jb3JlLWhlYWRlci1wYXJhbXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRW51bUNvcmVGb3JtQ29udHJvbFNlZWtlclNvdXJjZVR5cGUgfSBmcm9tICcuLi8uLi9jb3JlLWZvcm0tY29udHJvbC1zZWVrZXIvRW51bUNvcmVGb3JtQ29udHJvbFNlZWtlclNvdXJjZVR5cGUnO1xyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUNvcmVDb21tb25QYXJhbUtpdEV2ZW50RW1pdHRlckRhdGEge1xyXG4gIGZpZWxkOiBzdHJpbmc7XHJcbiAgdmFsdWU6IGFueTtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjb3JlLWNvbW1vbi1wYXJhbS1raXQnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBDb3JlSGVhZGVyUGFyYW1zQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUtY29tbW9uLXBhcmFtLWtpdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29yZS1jb21tb24tcGFyYW0ta2l0LmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3JlQ29tbW9uUGFyYW1LaXRDb21wb25lbnRcclxuICBleHRlbmRzIEJhc2VDb21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQElucHV0KCkgZW5hYmxlVGltZVpvbmVDb252ZXJ0ZXJGb3JEYXRlVGltZVBlcmlvZFBhcmFtZXRlcnMhOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGRhdGVQZXJpb2RDb21wYXJpc29uRm9yITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRhdGVQZXJpb2RDb21wYXJpc29uRm9yTGFiZWxLZXkhOiBFbnVtVHJhbnNsYXRlS2V5O1xyXG4gIEBJbnB1dCgpIHN0YXR1c0luY2x1c2lvbkZvciE6IHN0cmluZztcclxuICBASW5wdXQoKSBzdGF0dXNJbmNsdXNpb25Gb3JMYWJlbEtleSE6IEVudW1UcmFuc2xhdGVLZXk7XHJcbiAgQElucHV0KCkgc3RhdHVzT3B0aW9uc0FwaSE6IGFwaTtcclxuICBASW5wdXQoKSBzaG93T3JnUGFyYW0hOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGhpZGVEYXRlUGVyaW9kQ29tcGFyaXNvbiE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaGlkZVN0YXR1c0luY2x1c2lvbiE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaGlkZUdlbmVyYWxTZWFyY2ghOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHN0YXR1c09wdGlvbnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJQ29yZUNoZWNrbGlzdE9wdGlvbltdPihbXSk7XHJcbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxJQ29yZUNvbW1vblBhcmFtS2l0RXZlbnRFbWl0dGVyRGF0YT4oKTtcclxuXHJcblxyXG4gIGlzRW1wbG95ZWVTdGF0dXNDYXNlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIG9uTmdNb2RlbENoYW5nZSA9IChuZ01vZGVsOiBzdHJpbmcsIHZhbHVlOiBhbnkpID0+IHtcclxuICAgIHRoaXMub25DaGFuZ2UuZW1pdCh7XHJcbiAgICAgIGZpZWxkOiBuZ01vZGVsLFxyXG4gICAgICB2YWx1ZSxcclxuICAgIH0pO1xyXG4gIH07XHJcblxyXG4gIHBhcmFtUm93cyE6IElDb3JlUGFyYW1Db250cm9sW11bXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbWxzOiBNdWx0aUxhbmd1YWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBwU2VydmljZTogQXBwU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIobWxzKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2godGhpcy5tbHMubGFuZyQuc3Vic2NyaWJlKCh4KSA9PiAodGhpcy5sYW5nID0geCkpKTtcclxuXHJcbiAgICBpZiAoISF0aGlzLmhpZGVEYXRlUGVyaW9kQ29tcGFyaXNvbikge1xyXG4gICAgICB0aGlzLnBhcmFtUm93cyA9IFtcclxuICAgICAgICBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGZsZXhTaXplOiAzLFxyXG4gICAgICAgICAgICBuYW1lOiAnb3JnSWRzJyxcclxuICAgICAgICAgICAgbmdNb2RlbDogW10sXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICAgIGxhYmVsOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0VOVElUWV9GSUVMRF9DQVBUSU9OX0hVX09SR0FOSVpBVElPTl9JRFMsXHJcbiAgICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLlNFRUtFUixcclxuICAgICAgICAgICAgc2Vla2VyU291cmNlVHlwZTogRW51bUNvcmVGb3JtQ29udHJvbFNlZWtlclNvdXJjZVR5cGUuT1JHQU5JWkFUSU9OX1VOSVRfU0VFSyxcclxuICAgICAgICAgICAgaGlkZGVuOiAhdGhpcy5zaG93T3JnUGFyYW0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICAvLyB7XHJcbiAgICAgICAgICAvLyAgIGZsZXhTaXplOiAzLFxyXG4gICAgICAgICAgLy8gICBuYW1lOiAnZ2VuZXJhbFNlYXJjaCcsXHJcbiAgICAgICAgICAvLyAgIG5nTW9kZWw6ICcnLFxyXG4gICAgICAgICAgLy8gICBuZ01vZGVsQ2hhbmdlOiB0aGlzLm9uTmdNb2RlbENoYW5nZSxcclxuICAgICAgICAgIC8vICAgdmFsdWU6ICcnLFxyXG4gICAgICAgICAgLy8gICBsYWJlbDogRW51bVRyYW5zbGF0ZUtleS5VSV9DT1JFX1BBUkFNU19HRU5FUkFMX1NFQVJDSCxcclxuICAgICAgICAgIC8vICAgY29udHJvbFR5cGU6IEVudW1Gb3JtQmFzZUNvbnRvbFR5cGUuVEVYVEJPWCxcclxuICAgICAgICAgIC8vICAgaGlkZGVuOiB0aGlzLmhpZGVHZW5lcmFsU2VhcmNoXHJcbiAgICAgICAgICAvLyB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBmbGV4U2l6ZTogIXRoaXMuaGlkZUdlbmVyYWxTZWFyY2ggPyAzIDogMTAsXHJcbiAgICAgICAgICAgIG5hbWU6ICdzdGF0dXNJZHMnLFxyXG4gICAgICAgICAgICBuZ01vZGVsOiBbXSxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZVN0YXR1c0luY2x1c2lvbixcclxuICAgICAgICAgICAgbGFiZWw6IHRoaXMuc3RhdHVzSW5jbHVzaW9uRm9yTGFiZWxLZXksXHJcbiAgICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLkNIRUNLTElTVCxcclxuICAgICAgICAgICAgY2hlY2tsaXN0T3B0aW9ucyQ6IHRoaXMuc3RhdHVzT3B0aW9ucyQsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF1cclxuICAgICAgXVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5wYXJhbVJvd3MgPSBbXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBmbGV4U2l6ZTogMyxcclxuICAgICAgICAgICAgbmFtZTogJ29yZ0lkcycsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6ICcnLFxyXG4gICAgICAgICAgICBuZ01vZGVsQ2hhbmdlOiB0aGlzLm9uTmdNb2RlbENoYW5nZSxcclxuICAgICAgICAgICAgdmFsdWU6ICcnLFxyXG4gICAgICAgICAgICBsYWJlbDogRW51bVRyYW5zbGF0ZUtleS5VSV9FTlRJVFlfRklFTERfQ0FQVElPTl9IVV9PUkdBTklaQVRJT05fSURTLFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5TRUVLRVIsXHJcbiAgICAgICAgICAgIHNlZWtlclNvdXJjZVR5cGU6IEVudW1Db3JlRm9ybUNvbnRyb2xTZWVrZXJTb3VyY2VUeXBlLk9SR0FOSVpBVElPTl9VTklUX1NFRUssXHJcbiAgICAgICAgICAgIGhpZGRlbjogIXRoaXMuc2hvd09yZ1BhcmFtLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgLypcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdnZW5lcmFsU2VhcmNoJyxcclxuICAgICAgICAgICAgbmdNb2RlbDogJycsXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICAgIGxhYmVsOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfUEFSQU1TX0dFTkVSQUxfU0VBUkNILFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5URVhUQk9YLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZUdlbmVyYWxTZWFyY2hcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAqL1xyXG5cclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdkYXRlRnJvbScsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6IG51bGwsXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogbnVsbCxcclxuICAgICAgICAgICAgaGlkZGVuOiB0aGlzLmhpZGVEYXRlUGVyaW9kQ29tcGFyaXNvbixcclxuICAgICAgICAgICAgbGFiZWw6IHRoaXMuZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleSxcclxuICAgICAgICAgICAgY29udHJvbFR5cGU6IEVudW1Gb3JtQmFzZUNvbnRvbFR5cGUuREFURVBJQ0tFUixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGZsZXhTaXplOiAzLFxyXG4gICAgICAgICAgICBuYW1lOiAnZGF0ZVRvJyxcclxuICAgICAgICAgICAgbmdNb2RlbDogbnVsbCxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZURhdGVQZXJpb2RDb21wYXJpc29uLFxyXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5kYXRlUGVyaW9kQ29tcGFyaXNvbkZvckxhYmVsS2V5LFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5EQVRFUElDS0VSLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdzdGF0dXNJZHMnLFxyXG4gICAgICAgICAgICBuZ01vZGVsOiBbXSxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZVN0YXR1c0luY2x1c2lvbixcclxuICAgICAgICAgICAgbGFiZWw6IHRoaXMuc3RhdHVzSW5jbHVzaW9uRm9yTGFiZWxLZXksXHJcbiAgICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLkNIRUNLTElTVCxcclxuICAgICAgICAgICAgY2hlY2tsaXN0T3B0aW9ucyQ6IHRoaXMuc3RhdHVzT3B0aW9ucyQsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgIF07XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBpZiAoISF0aGlzLnN0YXR1c09wdGlvbnNBcGkpIHtcclxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgICAgIHRoaXMuYXBwU2VydmljZS5nZXQodGhpcy5zdGF0dXNPcHRpb25zQXBpKS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICAgICAgaWYgKHgub2sgJiYgeC5zdGF0dXMgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIGNvbnN0IGJvZHk6IElGb3JtYXRlZFJlc3BvbnNlID0geC5ib2R5O1xyXG4gICAgICAgICAgICAgIGlmIChib2R5LnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG4gIFxyXG4gICAgICAgICAgICAgICAgLy8gTuG6v3UgbMOgIHRy4bqhbmcgdGjDoWkgbmjDom4gdmnDqm4sIGNo4buJIGNoZWNrIG3hurdjIMSR4buLbmggXCLEkGFuZyBsw6BtIHZp4buHY1wiXHJcbiAgICAgICAgICAgICAgICAvLyBUcsOhaSBs4bqhaSB0aMOsIGNoZWNrIHThuqV0XHJcbiAgXHJcbiAgICAgICAgICAgICAgICBcclxuICBcclxuICAgICAgICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBib2R5LmlubmVyQm9keS5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgICAgICAgICAgICAgY29uc3QgaSA9IGJvZHkuaW5uZXJCb2R5W2luZGV4XTtcclxuICAgICAgICAgICAgICAgICAgaWYgKGkudHlwZUNvZGUgPT09IFwiRU1QX1NUQVRVU1wiKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICBcclxuICAgICAgICAgICAgICAgIGNvbnN0IG5ld09wdGlvbnM6IElDb3JlQ2hlY2tsaXN0T3B0aW9uW10gPSBbXHJcbiAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0OiB0aGlzLm1scy50cmFucyhFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfUEFSQU1TX0NPTU1PTl9OVUxMX1NUQVRVUywgdGhpcy5sYW5nKSxcclxuICAgICAgICAgICAgICAgICAgICBjaGVja2VkOiB0aGlzLmlzRW1wbG95ZWVTdGF0dXNDYXNlID8gZmFsc2UgOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgIH1dO1xyXG4gIFxyXG4gICAgICAgICAgICAgICAgY29uc3QgbmV3U3RhdHVzSWRzOiAobnVtYmVyIHwgbnVsbClbXSA9ICEhdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSA/IFtdIDogW251bGxdO1xyXG4gIFxyXG4gICAgICAgICAgICAgICAgYm9keS5pbm5lckJvZHkubWFwKChtOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgbmV3T3B0aW9ucy5wdXNoKHtcclxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogbS5pZCxcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0OiBtLm5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgY2hlY2tlZDogISF0aGlzLmlzRW1wbG95ZWVTdGF0dXNDYXNlID8gKG0uY29kZSA9PT0gXCJFU1dcIikgOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICBpZiAoISF0aGlzLmlzRW1wbG95ZWVTdGF0dXNDYXNlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKG0uY29kZSA9PT0gXCJFU1dcIikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdHVzSWRzLnB1c2gobS5pZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIG5ld1N0YXR1c0lkcy5wdXNoKG0uaWQpO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICBcclxuICAgICAgICAgICAgICAgIHRoaXMuc3RhdHVzT3B0aW9ucyQubmV4dChuZXdPcHRpb25zKTtcclxuICBcclxuICAgICAgICAgICAgICAgIHRoaXMucGFyYW1Sb3dzLm1hcChyb3cgPT4ge1xyXG4gICAgICAgICAgICAgICAgICByb3cubWFwKGNvbHVtbiA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbHVtbi5uYW1lID09PSAnc3RhdHVzSWRzJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29sdW1uLm5nTW9kZWwgPSBuZXdTdGF0dXNJZHM7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICBcclxuICAgICAgICAgICAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh7XHJcbiAgICAgICAgICAgICAgICAgIGZpZWxkOiBcInN0YXR1c0lkc1wiLFxyXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogbmV3U3RhdHVzSWRzXHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gIFxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm1sNVwiPlxyXG4gICAgPGNvcmUtaGVhZGVyLXBhcmFtcyBbcm93c109XCJwYXJhbVJvd3NcIj48L2NvcmUtaGVhZGVyLXBhcmFtcz5cclxuPC9kaXY+Il19
|