@bizdoc/core 2.3.20 → 2.3.21
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/assets/themes/brown.min.css +4 -4
- package/assets/themes/dark.min.css +4 -4
- package/assets/themes/deep-purple-light-blue.min.css +4 -4
- package/assets/themes/deep-purple-teal.min.css +4 -4
- package/assets/themes/default.min.css +4 -4
- package/assets/themes/green.min.css +4 -4
- package/assets/themes/indigo.min.css +4 -4
- package/esm2022/lib/browse/browse-items.component.mjs +4 -4
- package/esm2022/lib/browse/filter/filter.component.mjs +3 -3
- package/esm2022/lib/compose/compose.pane.component.mjs +18 -11
- package/esm2022/lib/core/translations.mjs +3 -1
- package/esm2022/lib/cube/sum/sum.component.mjs +8 -6
- package/esm2022/lib/dashboard/recents/recents.widget.mjs +4 -2
- package/esm2022/lib/modules/gantt.module.mjs +3 -3
- package/esm2022/lib/system.module.mjs +2 -2
- package/esm2022/lib/views/cube/cube-base.mjs +11 -6
- package/esm2022/lib/views/cube/matrix.component.mjs +3 -1
- package/esm2022/lib/views/timeline/timeline.component.exp.mjs +39 -39
- package/esm2022/lib/views/views.pane.component.mjs +2 -2
- package/fesm2022/bizdoc-core.mjs +89 -69
- package/fesm2022/bizdoc-core.mjs.map +1 -1
- package/lib/browse/browse-items.component.d.ts +1 -1
- package/lib/compose/compose.pane.component.d.ts +4 -2
- package/lib/core/translations.d.ts +2 -0
- package/lib/views/cube/cube-base.d.ts +1 -1
- package/lib/views/timeline/timeline.component.exp.d.ts +10 -2
- package/package.json +1 -1
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
|
|
2
2
|
import { Component, Inject, HostBinding } from '@angular/core';
|
3
3
|
import dayjs from 'dayjs';
|
4
4
|
import { tap } from 'rxjs/operators';
|
5
|
-
import { forkJoin
|
5
|
+
import { forkJoin } from 'rxjs';
|
6
6
|
import { DayMarkersService, Gantt, SelectionService } from '@syncfusion/ej2-angular-gantt';
|
7
7
|
import { BIZDOC_CONFIG } from '../../core/configuration';
|
8
8
|
import { BizDoc } from '../../core/decorators';
|
@@ -107,6 +107,7 @@ let TimelineViewComponent = class TimelineViewComponent {
|
|
107
107
|
// durationUnit: 'Hour',
|
108
108
|
taskbarHeight: 30,
|
109
109
|
rowHeight: 40,
|
110
|
+
height: '420px',
|
110
111
|
width: '100%', //this.width
|
111
112
|
// dayWorkingTime: this.dayWorkingTime
|
112
113
|
}, this._element.nativeElement);
|
@@ -116,7 +117,7 @@ let TimelineViewComponent = class TimelineViewComponent {
|
|
116
117
|
evt.taskbarBgColor = this._session.getAccent();
|
117
118
|
}
|
118
119
|
_prepare() {
|
119
|
-
const
|
120
|
+
const observables = [], tasks = [];
|
120
121
|
let i = 0;
|
121
122
|
//const observable = this._mailbox.timeline(model.documentId).pipe(tap(t => {
|
122
123
|
//}))
|
@@ -145,7 +146,7 @@ let TimelineViewComponent = class TimelineViewComponent {
|
|
145
146
|
}
|
146
147
|
else
|
147
148
|
task.ending = this.model.completed ? new Date(l.time) : new Date();
|
148
|
-
|
149
|
+
tasks.push(task);
|
149
150
|
break;
|
150
151
|
}
|
151
152
|
case 'ModelChange':
|
@@ -163,14 +164,14 @@ let TimelineViewComponent = class TimelineViewComponent {
|
|
163
164
|
}
|
164
165
|
else
|
165
166
|
task.ending = new Date();
|
166
|
-
const state =
|
167
|
+
const state = tasks.find(t => t.type === 'StateChange' && t.time <= task.time && (!t.ending || t.ending >= task.ending));
|
167
168
|
if (state) {
|
168
169
|
if (!state.subtasks)
|
169
170
|
state.subtasks = [];
|
170
171
|
state.subtasks.push(task);
|
171
172
|
}
|
172
173
|
else
|
173
|
-
|
174
|
+
tasks.push(task);
|
174
175
|
break;
|
175
176
|
}
|
176
177
|
case 'ActionTaken':
|
@@ -190,19 +191,19 @@ let TimelineViewComponent = class TimelineViewComponent {
|
|
190
191
|
};
|
191
192
|
if (l.nodeId) {
|
192
193
|
this.model.workflow.connectors.filter(c => c.targetId === l.nodeId).forEach(c => {
|
193
|
-
const dependencies =
|
194
|
+
const dependencies = tasks.filter(l => l.nodeId === c.sourceId).map(l => `FS${l.id}`);
|
194
195
|
if (dependencies.length)
|
195
196
|
task.dependencies = dependencies.join(',');
|
196
197
|
});
|
197
198
|
}
|
198
|
-
const state =
|
199
|
+
const state = tasks.find(t => t.type === 'StateChange' && t.time <= task.time && (!t.ending || t.ending >= task.ending));
|
199
200
|
if (state) {
|
200
201
|
if (!state.subtasks)
|
201
202
|
state.subtasks = [];
|
202
203
|
state.subtasks.push(task);
|
203
204
|
}
|
204
205
|
else
|
205
|
-
|
206
|
+
tasks.push(task);
|
206
207
|
break;
|
207
208
|
}
|
208
209
|
default:
|
@@ -210,31 +211,25 @@ let TimelineViewComponent = class TimelineViewComponent {
|
|
210
211
|
}
|
211
212
|
if (l.byId) {
|
212
213
|
const who = this._users.get(l.userId), by = this._users.get(l.byId);
|
213
|
-
const
|
214
|
+
const observe = forkJoin([who, by]).pipe(tap(ns => {
|
214
215
|
const [who, by] = ns;
|
215
216
|
task.name = this._translate.get('By', who.name, by.name);
|
216
217
|
// if (l.role) {
|
217
218
|
// const role = this.session.profile.roles.find(o => o.name === l.role);
|
218
219
|
// if (role) task.name += `, ${role.name}`;
|
219
220
|
// }
|
220
|
-
}), catchError(() => {
|
221
|
-
this._ps.error();
|
222
|
-
throw new Error();
|
223
221
|
}));
|
224
|
-
|
222
|
+
observables.push(observe);
|
225
223
|
}
|
226
224
|
else if (l.userId) {
|
227
|
-
const
|
225
|
+
const observe = this._users.get(l.userId).pipe(tap(u => {
|
228
226
|
task.name = u.name;
|
229
227
|
// if (l.role) {
|
230
228
|
// const role = this.session.profile.roles.find(o => o.name === l.role);
|
231
229
|
// if (role) task.name += `, ${role.name}`;
|
232
230
|
// }
|
233
|
-
}), catchError(() => {
|
234
|
-
this._ps.error();
|
235
|
-
throw new Error();
|
236
231
|
}));
|
237
|
-
|
232
|
+
observables.push(observe);
|
238
233
|
}
|
239
234
|
});
|
240
235
|
this.model.events.forEach(e => {
|
@@ -255,7 +250,7 @@ let TimelineViewComponent = class TimelineViewComponent {
|
|
255
250
|
if (r.substituteId) {
|
256
251
|
const by = this._users.get(r.substituteId);
|
257
252
|
const who = this._users.get(r.userId);
|
258
|
-
const
|
253
|
+
const observe = forkJoin([who, by]).pipe(tap(u => {
|
259
254
|
task.name = this._translate.get('WhoSubstituting', u[0].name, u[1].name);
|
260
255
|
if (u[0].role)
|
261
256
|
task.name += `, ${u[0].role}`;
|
@@ -264,14 +259,11 @@ let TimelineViewComponent = class TimelineViewComponent {
|
|
264
259
|
if (role)
|
265
260
|
task.name += `, ${role.name}`;
|
266
261
|
}
|
267
|
-
}), catchError(() => {
|
268
|
-
this._ps.error();
|
269
|
-
throw new Error();
|
270
262
|
}));
|
271
|
-
|
263
|
+
observables.push(observe);
|
272
264
|
}
|
273
265
|
else {
|
274
|
-
const
|
266
|
+
const observe = this._users.get(r.userId).pipe(tap(u => {
|
275
267
|
task.name = u.name;
|
276
268
|
if (u.role)
|
277
269
|
task.name += `, ${u.role}`;
|
@@ -280,40 +272,45 @@ let TimelineViewComponent = class TimelineViewComponent {
|
|
280
272
|
if (role)
|
281
273
|
task.name += `, ${role.name}`;
|
282
274
|
}
|
283
|
-
}), catchError(() => {
|
284
|
-
this._ps.error();
|
285
|
-
throw new Error();
|
286
275
|
}));
|
287
|
-
|
276
|
+
observables.push(observe);
|
288
277
|
}
|
289
278
|
if (r.nodeId) {
|
290
279
|
this.model.workflow.connectors.filter(c => c.targetId === r.nodeId).forEach(c => {
|
291
|
-
const predecessors =
|
280
|
+
const predecessors = tasks.filter(l => l.nodeId === c.sourceId).map(l => l.id);
|
292
281
|
if (predecessors.length)
|
293
282
|
task.dependencies = predecessors.join(',');
|
294
283
|
});
|
295
284
|
}
|
296
|
-
const state =
|
285
|
+
const state = tasks.find(t => t.type === 'StateChange' && t.time <= task.time && (!t.ending || t.ending >= task.time));
|
297
286
|
if (state) {
|
298
287
|
if (!state.subtasks)
|
299
288
|
state.subtasks = [];
|
300
289
|
state.subtasks.push(task);
|
301
290
|
}
|
302
291
|
else
|
303
|
-
|
292
|
+
tasks.push(task);
|
304
293
|
});
|
305
|
-
return forkJoin(
|
306
|
-
pipe(tap(() => this.tasks =
|
294
|
+
return forkJoin(observables).
|
295
|
+
pipe(tap(() => this.tasks = tasks.sort((t0, t1) => t0.time > t1.time ? 1 : -1)));
|
307
296
|
}
|
308
|
-
|
309
|
-
|
310
|
-
|
297
|
+
/**
|
298
|
+
*
|
299
|
+
* @param row
|
300
|
+
*/
|
301
|
+
rowSelecting(row) {
|
302
|
+
if (row.data.taskData.type === 'ModelChange')
|
303
|
+
this._compare(row.data);
|
311
304
|
}
|
305
|
+
/**
|
306
|
+
*
|
307
|
+
* @param task
|
308
|
+
*/
|
312
309
|
_compare(task) {
|
313
310
|
this._router.navigate(['mailbox/d', this.model.documentId.encodeId(), 'version', task.time.valueOf().encodeId()], { state: { item: this.model } });
|
314
311
|
}
|
315
312
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: TimelineViewComponent, deps: [{ token: i1.PromptService }, { token: i2.DocumentViewRef }, { token: BIZDOC_CONFIG }, { token: i3.AccountService }, { token: i4.SessionService }, { token: i5.TranslateService }, { token: i6.RouterImpl }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
316
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.1", type: TimelineViewComponent, selector: "bizdoc-timeline", host: { properties: { "dir": "this.dir" }, classAttribute: "view" }, providers: [SelectionService, DayMarkersService], ngImport: i0, template: '', isInline: true, styles: [":host{padding:8px}:host ::ng-deep .e-split-bar{display:none!important}\n"] }); }
|
313
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.1", type: TimelineViewComponent, selector: "bizdoc-timeline", host: { attributes: { "id": "doc-timeline" }, properties: { "dir": "this.dir" }, classAttribute: "view" }, providers: [SelectionService, DayMarkersService], ngImport: i0, template: '', isInline: true, styles: [":host{padding:8px}:host ::ng-deep .e-split-bar{display:none!important}\n"] }); }
|
317
314
|
};
|
318
315
|
TimelineViewComponent = __decorate([
|
319
316
|
BizDoc({ selector: 'bizdoc-timeline-view' })
|
@@ -322,11 +319,14 @@ TimelineViewComponent = __decorate([
|
|
322
319
|
export { TimelineViewComponent };
|
323
320
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: TimelineViewComponent, decorators: [{
|
324
321
|
type: Component,
|
325
|
-
args: [{ selector: 'bizdoc-timeline', template: '', host: {
|
322
|
+
args: [{ selector: 'bizdoc-timeline', template: '', host: {
|
323
|
+
class: 'view',
|
324
|
+
id: 'doc-timeline'
|
325
|
+
}, providers: [SelectionService, DayMarkersService], styles: [":host{padding:8px}:host ::ng-deep .e-split-bar{display:none!important}\n"] }]
|
326
326
|
}], ctorParameters: () => [{ type: i1.PromptService }, { type: i2.DocumentViewRef }, { type: undefined, decorators: [{
|
327
327
|
type: Inject,
|
328
328
|
args: [BIZDOC_CONFIG]
|
329
329
|
}] }, { type: i3.AccountService }, { type: i4.SessionService }, { type: i5.TranslateService }, { type: i6.RouterImpl }, { type: i0.ElementRef }], propDecorators: { dir: [{
|
330
330
|
type: HostBinding
|
331
331
|
}] } });
|
332
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUuY29tcG9uZW50LmV4cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvdmlld3MvdGltZWxpbmUvdGltZWxpbmUuY29tcG9uZW50LmV4cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsR0FBRyxFQUFPLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFjLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEQsT0FBTyxFQUFlLGlCQUFpQixFQUF5QyxLQUFLLEVBQWdFLGdCQUFnQixFQUF5RixNQUFNLCtCQUErQixDQUFDO0FBT3BTLE9BQU8sRUFBZ0IsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7OztBQWF4QyxJQUFNLHFCQUFxQixHQUEzQixNQUFNLHFCQUFxQjtJQVdoQyx5QkFBeUI7SUFDekIsWUFDVSxHQUFrQixFQUMxQixPQUFpQyxFQUNWLE1BQW9CLEVBQ25DLE1BQXNCLEVBQ3RCLFFBQXdCLEVBQ3hCLFVBQTRCLEVBQzVCLE9BQW1CLEVBQ25CLFFBQW9CO1FBUHBCLFFBQUcsR0FBSCxHQUFHLENBQWU7UUFHbEIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsZUFBVSxHQUFWLFVBQVUsQ0FBa0I7UUFDNUIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBbEJyQixRQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUM7UUFDOUIsV0FBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1FBS3pDLFVBQUssR0FBVyxDQUFDLENBQUM7UUFDVCxzQkFBaUIsR0FBRyxFQUE0QixDQUFDO1FBeVFqRCxlQUFVLEdBQW9CO1lBQ3JDLEVBQUUsRUFBRSxJQUFJO1lBQ1IsSUFBSSxFQUFFLE9BQU87WUFDYixTQUFTLEVBQUUsTUFBTTtZQUNqQixPQUFPLEVBQUUsUUFBUTtZQUNqQixRQUFRLEVBQUUsVUFBVTtZQUNwQixVQUFVLEVBQUUsY0FBYztZQUMxQixLQUFLLEVBQUUsVUFBVTtTQUNsQixDQUFDO1FBRU8sb0JBQWUsR0FBRyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUN6QyxxQkFBZ0IsR0FBMEI7WUFDakQsZ0JBQWdCLEVBQUUsRUFBRTtZQUNwQixPQUFPLEVBQUU7Z0JBQ1AsTUFBTSxFQUFFLGNBQWM7Z0JBQ3RCLElBQUksRUFBRSxLQUFLO2FBQ1o7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsSUFBSSxFQUFFLE1BQU07Z0JBQ1osTUFBTSxFQUFFLFFBQVE7YUFDakI7U0FDRixDQUFDO1FBQ08saUJBQVksR0FBdUIsRUFDM0MsQ0FBQztRQUNLLGtCQUFhLEdBQXVCO1lBQ3pDLFVBQVUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU87U0FDdkMsQ0FBQztRQUNLLHFCQUFnQixHQUEwQjtZQUMvQyxXQUFXLEVBQUUsQ0FBQztZQUNkLElBQUksRUFBRSxPQUFPO1lBQ2IsUUFBUSxFQUFFLEdBQUc7WUFDYixhQUFhLEVBQUUsQ0FBQztTQUNqQixDQUFDO1FBQ0ssbUJBQWMsR0FBMEIsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUE5Um5FLElBQUksQ0FBQyxPQUFPLEdBQUc7WUFDYixFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdEQsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BELEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtTQUN0RCxDQUFDO1FBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxvQkFBb0IsQ0FBQztRQUM5RixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUTtZQUN2QyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDN0YsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUMxQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDZixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUM1QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQXlCO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzdCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNiLGlEQUFpRDtRQUNuRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDTyxLQUFLO1FBQ1gsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUM7WUFDckIsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ3RCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2xELFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsMEJBQTBCO1lBQzFCLHlCQUF5QjtZQUN6QixTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPO1lBQ2hDLDRDQUE0QztZQUM1QyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLFFBQVEsRUFBRSxJQUFJO1lBQ2QsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUN6QyxjQUFjLEVBQUUsSUFBSTtZQUNwQixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLHVCQUF1QjtZQUN2QixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2Qix5QkFBeUI7WUFDekIsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjtZQUN2Qyx5QkFBeUI7WUFDekIsYUFBYSxFQUFFLEVBQUU7WUFDakIsU0FBUyxFQUFFLEVBQUU7WUFDYixLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVk7WUFDM0IsdUNBQXVDO1NBQ3hDLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUMvQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQy9CLENBQUE7SUFDSCxDQUFDO0lBQ0QsZ0JBQWdCLENBQUMsR0FBK0I7UUFDOUMsR0FBRyxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFDTyxRQUFRO1FBQ2QsTUFBTSxTQUFTLEdBQXNCLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFViw2RUFBNkU7UUFDN0UsS0FBSztRQUVMLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN6QixJQUFJLElBQVUsQ0FBQztZQUNmLFFBQVEsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNmLEtBQUssUUFBUTtvQkFDWCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQzt3QkFDckIsR0FBRyxFQUFFLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7d0JBQ3JCLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7cUJBQ3hDLENBQUMsQ0FBQztvQkFDSCxPQUFPO2dCQUNULEtBQUssYUFBYTtvQkFDaEIsQ0FBQzt3QkFDQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ3pFLElBQUksR0FBRzs0QkFDTCxFQUFFLEVBQUUsQ0FBQyxFQUFFOzRCQUNQLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTs0QkFDWixNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU07NEJBQ2hCLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDOzRCQUN0QixLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO3lCQUNuRCxDQUFDO3dCQUNGLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDOzRCQUNmLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDOzRCQUNoRSxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO3dCQUNwQyxDQUFDOzs0QkFFQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7d0JBQ3JFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUN0QixNQUFNO29CQUNSLENBQUM7Z0JBQ0gsS0FBSyxhQUFhO29CQUNoQixDQUFDO3dCQUNDLElBQUksR0FBRzs0QkFDTCxFQUFFLEVBQUUsQ0FBQyxFQUFFOzRCQUNQLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTs0QkFDWixNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU07NEJBQ2hCLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDOzRCQUN0QixLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO3lCQUNyQyxDQUFDO3dCQUNGLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDOzRCQUNmLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDOzRCQUNoRSxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO3dCQUNwQyxDQUFDOzs0QkFDSSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7d0JBRTlCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxhQUFhLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7d0JBQzlILElBQUksS0FBSyxFQUFFLENBQUM7NEJBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRO2dDQUFFLEtBQUssQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDOzRCQUN6QyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDNUIsQ0FBQzs7NEJBRUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7d0JBQ3hCLE1BQU07b0JBQ1IsQ0FBQztnQkFDSCxLQUFLLGFBQWE7b0JBQ2hCLENBQUM7d0JBQ0MsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3dCQUM1RSxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssUUFBUTs0QkFBRSxPQUFPO3dCQUNsQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUMzQixJQUFJLEdBQUc7NEJBQ0wsRUFBRSxFQUFFLENBQUMsRUFBRTs0QkFDUCxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUk7NEJBQ1osTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNOzRCQUNoQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRTs0QkFDckIsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBRSxDQUFDLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRTs0QkFDMUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRLEdBQUcsSUFBSTs0QkFDM0IsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTTt5QkFDdkQsQ0FBQzt3QkFDRixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQzs0QkFDYixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dDQUM5RSxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0NBQzNGLElBQUksWUFBWSxDQUFDLE1BQU07b0NBQUUsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDOzRCQUN0RSxDQUFDLENBQUMsQ0FBQzt3QkFDTCxDQUFDO3dCQUNELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxhQUFhLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7d0JBQzlILElBQUksS0FBSyxFQUFFLENBQUM7NEJBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRO2dDQUFFLEtBQUssQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDOzRCQUN6QyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDNUIsQ0FBQzs7NEJBRUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7d0JBQ3hCLE1BQU07b0JBQ1IsQ0FBQztnQkFDSDtvQkFDRSxPQUFPO1lBQ1gsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNYLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFDbkMsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDL0IsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFDaEQsTUFBTSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUN6RCxtQkFBbUI7b0JBQ25CLCtFQUErRTtvQkFDL0Usa0RBQWtEO29CQUNsRCxPQUFPO2dCQUNULENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2xCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBQ2pCLE1BQU0sSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDcEIsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFFSixTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzFCLENBQUM7aUJBQ0ksSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ2xCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUNyRCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7b0JBQ25CLG1CQUFtQjtvQkFDbkIsK0VBQStFO29CQUMvRSxrREFBa0Q7b0JBQ2xELE9BQU87Z0JBQ1QsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDakIsTUFBTSxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUNwQixDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNKLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDMUIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO2dCQUNyQixHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztnQkFDekIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO2FBQ2YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDaEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPO2dCQUNaLE9BQU87WUFDVCxNQUFNLElBQUksR0FBUztnQkFDakIsRUFBRSxFQUFFLENBQUMsRUFBRTtnQkFDUCxJQUFJLEVBQUUsU0FBUztnQkFDZixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztnQkFDMUIsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQzthQUN4QyxDQUFDO1lBQ0YsSUFBSSxDQUFDLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ25CLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDM0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN0QyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUMvQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUN6RSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJO3dCQUNYLElBQUksQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ2hDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO3dCQUNYLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDdEUsSUFBSSxJQUFJOzRCQUFFLElBQUksQ0FBQyxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQzFDLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDakIsTUFBTSxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUNwQixDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUVKLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDMUIsQ0FBQztpQkFDSSxDQUFDO2dCQUNKLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUNyRCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7b0JBQ25CLElBQUksQ0FBQyxDQUFDLElBQUk7d0JBQ1IsSUFBSSxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQzt5QkFDeEIsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7d0JBQ2hCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDdEUsSUFBSSxJQUFJOzRCQUFFLElBQUksQ0FBQyxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQzFDLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDakIsTUFBTSxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUNwQixDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNKLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDMUIsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQzlFLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNwRixJQUFJLFlBQVksQ0FBQyxNQUFNO3dCQUFFLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDdEUsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1lBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLGFBQWEsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUM1SCxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUTtvQkFBRSxLQUFLLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztnQkFDekMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsQ0FBQzs7Z0JBRUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFFBQVEsQ0FBQyxTQUFTLENBQUM7WUFDeEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFDRCxZQUFZLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLGFBQWE7WUFDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUNNLFFBQVEsQ0FBQyxJQUFVO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQTtJQUNwSixDQUFDOzhHQWpSVSxxQkFBcUIsOEVBZXRCLGFBQWE7a0dBZloscUJBQXFCLCtHQUpyQixDQUFDLGdCQUFnQixFQUFFLGlCQUFpQixDQUFDLDBCQUh0QyxFQUFFOztBQU9ELHFCQUFxQjtJQUZqQyxNQUFNLENBQUMsRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztJQUM3Qyw2QkFBNkI7R0FDaEIscUJBQXFCLENBb1RqQzs7MkZBcFRZLHFCQUFxQjtrQkFUakMsU0FBUzsrQkFDRSxpQkFBaUIsWUFDakIsRUFBRSxRQUVOLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxhQUNaLENBQUMsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUM7OzBCQW1CN0MsTUFBTTsyQkFBQyxhQUFhO29MQWJkLEdBQUc7c0JBRFgsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBIb3N0QmluZGluZywgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xyXG5pbXBvcnQgeyB0YXAsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZm9ya0pvaW4sIGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29sdW1uTW9kZWwsIERheU1hcmtlcnNTZXJ2aWNlLCBEYXlXb3JraW5nVGltZU1vZGVsLCBFdmVudE1hcmtlck1vZGVsLCBHYW50dCwgSG9saWRheU1vZGVsLCBJUXVlcnlUYXNrYmFySW5mb0V2ZW50QXJncywgTGFiZWxTZXR0aW5nc01vZGVsLCBTZWxlY3Rpb25TZXJ2aWNlLCBTZWxlY3Rpb25TZXR0aW5nc01vZGVsLCBTcGxpdHRlclNldHRpbmdzTW9kZWwsIFRhc2tGaWVsZHNNb2RlbCwgVGltZWxpbmVTZXR0aW5nc01vZGVsIH0gZnJvbSAnQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItZ2FudHQnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvdHJhbnNsYXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9hY2NvdW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEb2N1bWVudFZpZXdDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UnO1xyXG5pbXBvcnQgeyBDaGFpbiwgRG9jdW1lbnRNb2RlbCB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgQml6RG9jQ29uZmlnLCBCSVpET0NfQ09ORklHIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgQml6RG9jIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzJztcclxuaW1wb3J0IHsgUm91dGVySW1wbCB9IGZyb20gJy4uLy4uL2NvcmUvcm91dGVyJztcclxuaW1wb3J0IHsgRG9jdW1lbnRWaWV3UmVmIH0gZnJvbSAnLi4vZG9jdW1lbnQtdmlldy1yZWYnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtdGltZWxpbmUnLFxyXG4gIHRlbXBsYXRlOiAnJyxcclxuICBzdHlsZVVybHM6IFsndGltZWxpbmUuY29tcG9uZW50LnNjc3MnXSxcclxuICBob3N0OiB7IGNsYXNzOiAndmlldycgfSxcclxuICBwcm92aWRlcnM6IFtTZWxlY3Rpb25TZXJ2aWNlLCBEYXlNYXJrZXJzU2VydmljZV1cclxufSlcclxuQEJpekRvYyh7IHNlbGVjdG9yOiAnYml6ZG9jLXRpbWVsaW5lLXZpZXcnIH0pXHJcbi8qKiB0aW1lbGluZS12aWV3IGNvbXBvbmVudCovXHJcbmV4cG9ydCBjbGFzcyBUaW1lbGluZVZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBEb2N1bWVudFZpZXdDb21wb25lbnQge1xyXG4gIEBIb3N0QmluZGluZygpXHJcbiAgcmVhZG9ubHkgZGlyID0gdGhpcy5fc2Vzc2lvbi5kaXJlY3Rpb247XHJcbiAgcmVhZG9ubHkgbG9jYWxlID0gdGhpcy5fc2Vzc2lvbi5sYW5ndWFnZTtcclxuICBtb2RlbDogRG9jdW1lbnRNb2RlbDxhbnk+O1xyXG4gIGdhbnR0OiBHYW50dDtcclxuICBkYXRlRm9ybWF0OiBzdHJpbmc7XHJcbiAgaG9saWRheXM6IEhvbGlkYXlNb2RlbFtdO1xyXG4gIHdpZHRoOiBudW1iZXIgPSAwO1xyXG4gIHJlYWRvbmx5IHNlbGVjdGlvblNldHRpbmdzID0ge30gYXMgU2VsZWN0aW9uU2V0dGluZ3NNb2RlbDtcclxuICB0YXNrczogVGFza1tdO1xyXG4gIC8qKiB0aW1lbGluZS12aWV3IGN0b3IgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3BzOiBQcm9tcHRTZXJ2aWNlLFxyXG4gICAgdmlld1JlZjogRG9jdW1lbnRWaWV3UmVmPE9wdGlvbnM+LFxyXG4gICAgQEluamVjdChCSVpET0NfQ09ORklHKSBjb25maWc6IEJpekRvY0NvbmZpZyxcclxuICAgIHByaXZhdGUgX3VzZXJzOiBBY2NvdW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXJJbXBsLFxyXG4gICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZikge1xyXG4gICAgdGhpcy5jb2x1bW5zID0gW1xyXG4gICAgICB7IGZpZWxkOiAndGl0bGUnLCBoZWFkZXJUZXh0OiBfdHJhbnNsYXRlLmdldCgnVGFzaycpIH0sXHJcbiAgICAgIHsgZmllbGQ6ICduYW1lJywgaGVhZGVyVGV4dDogX3RyYW5zbGF0ZS5nZXQoJ1dobycpIH0sXHJcbiAgICAgIHsgZmllbGQ6ICd0aW1lJywgaGVhZGVyVGV4dDogX3RyYW5zbGF0ZS5nZXQoJ1doZW4nKSB9XHJcbiAgICBdO1xyXG4gICAgdGhpcy5kYXRlRm9ybWF0ID0gY29uZmlnICYmIGNvbmZpZy5mb3JtYXRzICYmIGNvbmZpZy5mb3JtYXRzLmRhdGVUaW1lIHx8ICdNTU1NIGQsIHl5eXkgaGg6bW0nO1xyXG4gICAgdGhpcy5ob2xpZGF5cyA9IF9zZXNzaW9uLnByb2ZpbGUuaG9saWRheXMgJiZcclxuICAgICAgX3Nlc3Npb24ucHJvZmlsZS5ob2xpZGF5cy5tYXAoaCA9PiAoeyBmcm9tOiBoLnN0YXJ0RGF0ZSwgdG86IGguZnJvbURhdGUsIGxhYmVsOiBoLnRpdGxlIH0pKVxyXG4gICAgdmlld1JlZi5yZXNpemUuc3Vic2NyaWJlKGQgPT4ge1xyXG4gICAgICB0aGlzLndpZHRoID0gZC53aWR0aCAtIDE2O1xyXG4gICAgICBpZiAodGhpcy5nYW50dCkge1xyXG4gICAgICAgIHRoaXMuZ2FudHQud2lkdGggPSBkLndpZHRoIC0gMTY7XHJcbiAgICAgICAgdGhpcy5nYW50dC53aW5kb3dSZXNpemUoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIG9uQmluZChtb2RlbDogRG9jdW1lbnRNb2RlbDxhbnk+KSB7XHJcbiAgICB0aGlzLm1vZGVsID0gbW9kZWw7XHJcbiAgICB0aGlzLl9wcmVwYXJlKCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5fZHJhdygpO1xyXG4gICAgICAvL3RoaXMuZ2FudHQuc2Nyb2xsVG9EYXRlKG5ldyBEYXRlKCkudG9TdHJpbmcoKSk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfZHJhdygpIHtcclxuICAgIHRoaXMuZ2FudHQgJiYgdGhpcy5nYW50dC5kZXN0cm95KCk7XHJcbiAgICB0aGlzLmdhbnR0ID0gbmV3IEdhbnR0KHtcclxuICAgICAgZGF0YVNvdXJjZTogdGhpcy50YXNrcyxcclxuICAgICAgcXVlcnlUYXNrYmFySW5mbzogdGhpcy5xdWVyeVRhc2tiYXJJbmZvLmJpbmQodGhpcyksXHJcbiAgICAgIHRhc2tGaWVsZHM6IHRoaXMudGFza0ZpZWxkcyxcclxuICAgICAgY29sdW1uczogdGhpcy5jb2x1bW5zLFxyXG4gICAgICAvL3ZpZXdUeXBlOiAnUHJvamVjdFZpZXcnLFxyXG4gICAgICAvL2FsbG93RXhjZWxFeHBvcnQ6IHRydWUsXHJcbiAgICAgIGVuYWJsZVJ0bDogdGhpcy5fc2Vzc2lvbi5pbnZlcnNlLFxyXG4gICAgICAvLyAgdGltZWxpbmVTZXR0aW5nczogdGhpcy50aW1lbGluZVNldHRpbmdzLFxyXG4gICAgICBsYWJlbFNldHRpbmdzOiB0aGlzLmxhYmVsU2V0dGluZ3MsXHJcbiAgICAgIGV2ZW50TWFya2VyczogdGhpcy5ldmVudE1hcmtlcnMsXHJcbiAgICAgIHJlYWRPbmx5OiB0cnVlLFxyXG4gICAgICBzZWxlY3Rpb25TZXR0aW5nczogdGhpcy5zZWxlY3Rpb25TZXR0aW5ncyxcclxuICAgICAgYWxsb3dTZWxlY3Rpb246IHRydWUsXHJcbiAgICAgIGRhdGVGb3JtYXQ6IHRoaXMuZGF0ZUZvcm1hdCxcclxuICAgICAgdG9vbHRpcFNldHRpbmdzOiB0aGlzLnRvb2x0aXBTZXR0aW5ncyxcclxuICAgICAgLy90aW1lbGluZVNldHRpbmdzOiB7fSxcclxuICAgICAgcm93U2VsZWN0aW5nOiB0aGlzLnJvd1NlbGVjdGluZy5iaW5kKHRoaXMpLFxyXG4gICAgICBob2xpZGF5czogdGhpcy5ob2xpZGF5cyxcclxuICAgICAgLy8gIGluY2x1ZGVXZWVrZW5kOiB0cnVlLFxyXG4gICAgICBzcGxpdHRlclNldHRpbmdzOiB0aGlzLnNwbGl0dGVyU2V0dGluZ3MsXHJcbiAgICAgIC8vICBkdXJhdGlvblVuaXQ6ICdIb3VyJyxcclxuICAgICAgdGFza2JhckhlaWdodDogMzAsXHJcbiAgICAgIHJvd0hlaWdodDogNDAsXHJcbiAgICAgIHdpZHRoOiAnMTAwJScsIC8vdGhpcy53aWR0aFxyXG4gICAgICAvLyAgZGF5V29ya2luZ1RpbWU6IHRoaXMuZGF5V29ya2luZ1RpbWVcclxuICAgIH0sIHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudClcclxuICAgIHRoaXMuY29sdW1ucy5mb3JFYWNoKGMgPT5cclxuICAgICAgdGhpcy5nYW50dC5oaWRlQ29sdW1uKGMuZmllbGQpXHJcbiAgICApXHJcbiAgfVxyXG4gIHF1ZXJ5VGFza2JhckluZm8oZXZ0OiBJUXVlcnlUYXNrYmFySW5mb0V2ZW50QXJncykge1xyXG4gICAgZXZ0LnRhc2tiYXJCZ0NvbG9yID0gdGhpcy5fc2Vzc2lvbi5nZXRBY2NlbnQoKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfcHJlcGFyZSgpOiBPYnNlcnZhYmxlPFRhc2tbXT4ge1xyXG4gICAgY29uc3QgcHJvbWlzc2VzOiBPYnNlcnZhYmxlPGFueT5bXSA9IFtdO1xyXG4gICAgbGV0IGkgPSAwO1xyXG5cclxuICAgIC8vY29uc3Qgb2JzZXJ2YWJsZSA9IHRoaXMuX21haWxib3gudGltZWxpbmUobW9kZWwuZG9jdW1lbnRJZCkucGlwZSh0YXAodCA9PiB7XHJcbiAgICAvL30pKVxyXG5cclxuICAgIHRoaXMubW9kZWwubG9nLmZvckVhY2gobCA9PiB7XHJcbiAgICAgIGxldCB0YXNrOiBUYXNrO1xyXG4gICAgICBzd2l0Y2ggKGwudHlwZSkge1xyXG4gICAgICAgIGNhc2UgJ1N1Ym1pdCc6XHJcbiAgICAgICAgICB0aGlzLmV2ZW50TWFya2Vycy5wdXNoKHtcclxuICAgICAgICAgICAgZGF5OiBuZXcgRGF0ZShsLnRpbWUpLFxyXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5fdHJhbnNsYXRlLmdldCgnU3VibWl0aW9uJylcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIGNhc2UgJ1N0YXRlQ2hhbmdlJzpcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLl9zZXNzaW9uLnByb2ZpbGUuc3RhdGVzLmZpbmQocyA9PiBzLm5hbWUgPT09IGwuc3RhdGUpO1xyXG4gICAgICAgICAgICB0YXNrID0ge1xyXG4gICAgICAgICAgICAgIGlkOiBpKyssXHJcbiAgICAgICAgICAgICAgdHlwZTogbC50eXBlLFxyXG4gICAgICAgICAgICAgIG5vZGVJZDogbC5ub2RlSWQsXHJcbiAgICAgICAgICAgICAgdGltZTogbmV3IERhdGUobC50aW1lKSxcclxuICAgICAgICAgICAgICB0aXRsZTogc3RhdGUgPyBzdGF0ZS5wYXN0IHx8IHN0YXRlLnRpdGxlIDogbC5zdGF0ZVxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBpZiAobC5kdXJhdGlvbikge1xyXG4gICAgICAgICAgICAgIHRhc2suZW5kaW5nID0gbmV3IERhdGUodGFzay50aW1lLnZhbHVlT2YoKSArIGwuZHVyYXRpb24gKiAxMDAwKTtcclxuICAgICAgICAgICAgICB0YXNrLmR1cmF0aW9uID0gbC5kdXJhdGlvbiAqIDEwMDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgIHRhc2suZW5kaW5nID0gdGhpcy5tb2RlbC5jb21wbGV0ZWQgPyBuZXcgRGF0ZShsLnRpbWUpIDogbmV3IERhdGUoKTtcclxuICAgICAgICAgICAgdGhpcy50YXNrcy5wdXNoKHRhc2spO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICBjYXNlICdNb2RlbENoYW5nZSc6XHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHRhc2sgPSB7XHJcbiAgICAgICAgICAgICAgaWQ6IGkrKyxcclxuICAgICAgICAgICAgICB0eXBlOiBsLnR5cGUsXHJcbiAgICAgICAgICAgICAgbm9kZUlkOiBsLm5vZGVJZCxcclxuICAgICAgICAgICAgICB0aW1lOiBuZXcgRGF0ZShsLnRpbWUpLFxyXG4gICAgICAgICAgICAgIHRpdGxlOiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdFZGl0ZWQnKVxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBpZiAobC5kdXJhdGlvbikge1xyXG4gICAgICAgICAgICAgIHRhc2suZW5kaW5nID0gbmV3IERhdGUodGFzay50aW1lLnZhbHVlT2YoKSArIGwuZHVyYXRpb24gKiAxMDAwKTtcclxuICAgICAgICAgICAgICB0YXNrLmR1cmF0aW9uID0gbC5kdXJhdGlvbiAqIDEwMDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSB0YXNrLmVuZGluZyA9IG5ldyBEYXRlKCk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBzdGF0ZSA9IHRoaXMudGFza3MuZmluZCh0ID0+IHQudHlwZSA9PT0gJ1N0YXRlQ2hhbmdlJyAmJiB0LnRpbWUgPD0gdGFzay50aW1lICYmICghdC5lbmRpbmcgfHwgdC5lbmRpbmcgPj0gdGFzay5lbmRpbmcpKTtcclxuICAgICAgICAgICAgaWYgKHN0YXRlKSB7XHJcbiAgICAgICAgICAgICAgaWYgKCFzdGF0ZS5zdWJ0YXNrcykgc3RhdGUuc3VidGFza3MgPSBbXTtcclxuICAgICAgICAgICAgICBzdGF0ZS5zdWJ0YXNrcy5wdXNoKHRhc2spO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICB0aGlzLnRhc2tzLnB1c2godGFzayk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIGNhc2UgJ0FjdGlvblRha2VuJzpcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgY29uc3QgYWN0aW9uID0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmFjdGlvbnMuZmluZChhID0+IGEubmFtZSA9PT0gbC5hY3Rpb24pO1xyXG4gICAgICAgICAgICBpZiAobC5hY3Rpb24gPT09ICdkZWxldGUnKSByZXR1cm47XHJcbiAgICAgICAgICAgIGNvbnN0IHRpbWUgPSBkYXlqcyhsLnRpbWUpO1xyXG4gICAgICAgICAgICB0YXNrID0ge1xyXG4gICAgICAgICAgICAgIGlkOiBpKyssXHJcbiAgICAgICAgICAgICAgdHlwZTogbC50eXBlLFxyXG4gICAgICAgICAgICAgIG5vZGVJZDogbC5ub2RlSWQsXHJcbiAgICAgICAgICAgICAgZW5kaW5nOiB0aW1lLnRvRGF0ZSgpLFxyXG4gICAgICAgICAgICAgIHRpbWU6IHRpbWUuYWRkKC0gbC5kdXJhdGlvbiwgJ3MnKS50b0RhdGUoKSxcclxuICAgICAgICAgICAgICBkdXJhdGlvbjogbC5kdXJhdGlvbiAqIDEwMDAsXHJcbiAgICAgICAgICAgICAgdGl0bGU6IGFjdGlvbiA/IGFjdGlvbi5wYXN0IHx8IGFjdGlvbi50aXRsZSA6IGwuYWN0aW9uXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIGlmIChsLm5vZGVJZCkge1xyXG4gICAgICAgICAgICAgIHRoaXMubW9kZWwud29ya2Zsb3cuY29ubmVjdG9ycy5maWx0ZXIoYyA9PiBjLnRhcmdldElkID09PSBsLm5vZGVJZCkuZm9yRWFjaChjID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IHRoaXMudGFza3MuZmlsdGVyKGwgPT4gbC5ub2RlSWQgPT09IGMuc291cmNlSWQpLm1hcChsID0+IGBGUyR7bC5pZH1gKTtcclxuICAgICAgICAgICAgICAgIGlmIChkZXBlbmRlbmNpZXMubGVuZ3RoKSB0YXNrLmRlcGVuZGVuY2llcyA9IGRlcGVuZGVuY2llcy5qb2luKCcsJyk7XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLnRhc2tzLmZpbmQodCA9PiB0LnR5cGUgPT09ICdTdGF0ZUNoYW5nZScgJiYgdC50aW1lIDw9IHRhc2sudGltZSAmJiAoIXQuZW5kaW5nIHx8IHQuZW5kaW5nID49IHRhc2suZW5kaW5nKSk7XHJcbiAgICAgICAgICAgIGlmIChzdGF0ZSkge1xyXG4gICAgICAgICAgICAgIGlmICghc3RhdGUuc3VidGFza3MpIHN0YXRlLnN1YnRhc2tzID0gW107XHJcbiAgICAgICAgICAgICAgc3RhdGUuc3VidGFza3MucHVzaCh0YXNrKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgdGhpcy50YXNrcy5wdXNoKHRhc2spO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChsLmJ5SWQpIHtcclxuICAgICAgICBjb25zdCB3aG8gPSB0aGlzLl91c2Vycy5nZXQobC51c2VySWQpLFxyXG4gICAgICAgICAgYnkgPSB0aGlzLl91c2Vycy5nZXQobC5ieUlkKTtcclxuICAgICAgICBjb25zdCBwcm9taXNlID0gZm9ya0pvaW4oW3dobywgYnldKS5waXBlKHRhcChucyA9PiB7XHJcbiAgICAgICAgICBjb25zdCBbd2hvLCBieV0gPSBucztcclxuICAgICAgICAgIHRhc2submFtZSA9IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ0J5Jywgd2hvLm5hbWUsIGJ5Lm5hbWUpO1xyXG4gICAgICAgICAgLy8gICAgaWYgKGwucm9sZSkge1xyXG4gICAgICAgICAgLy8gICAgICAgIGNvbnN0IHJvbGUgPSB0aGlzLnNlc3Npb24ucHJvZmlsZS5yb2xlcy5maW5kKG8gPT4gby5uYW1lID09PSBsLnJvbGUpO1xyXG4gICAgICAgICAgLy8gICAgICAgIGlmIChyb2xlKSB0YXNrLm5hbWUgKz0gYCwgJHtyb2xlLm5hbWV9YDtcclxuICAgICAgICAgIC8vICAgIH1cclxuICAgICAgICB9KSwgY2F0Y2hFcnJvcigoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9wcy5lcnJvcigpO1xyXG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCk7XHJcbiAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICBwcm9taXNzZXMucHVzaChwcm9taXNlKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChsLnVzZXJJZCkge1xyXG4gICAgICAgIGNvbnN0IHByb21pc2UgPSB0aGlzLl91c2Vycy5nZXQobC51c2VySWQpLnBpcGUodGFwKHUgPT4ge1xyXG4gICAgICAgICAgdGFzay5uYW1lID0gdS5uYW1lO1xyXG4gICAgICAgICAgLy8gICAgaWYgKGwucm9sZSkge1xyXG4gICAgICAgICAgLy8gICAgICAgIGNvbnN0IHJvbGUgPSB0aGlzLnNlc3Npb24ucHJvZmlsZS5yb2xlcy5maW5kKG8gPT4gby5uYW1lID09PSBsLnJvbGUpO1xyXG4gICAgICAgICAgLy8gICAgICAgIGlmIChyb2xlKSB0YXNrLm5hbWUgKz0gYCwgJHtyb2xlLm5hbWV9YDtcclxuICAgICAgICAgIC8vICAgIH1cclxuICAgICAgICB9KSwgY2F0Y2hFcnJvcigoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9wcy5lcnJvcigpO1xyXG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCk7XHJcbiAgICAgICAgfSkpO1xyXG4gICAgICAgIHByb21pc3Nlcy5wdXNoKHByb21pc2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMubW9kZWwuZXZlbnRzLmZvckVhY2goZSA9PiB7XHJcbiAgICAgIHRoaXMuZXZlbnRNYXJrZXJzLnB1c2goe1xyXG4gICAgICAgIGRheTogbmV3IERhdGUoZS5zdGFydGluZyksXHJcbiAgICAgICAgbGFiZWw6IGUudGl0bGVcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMubW9kZWwucmVjaXBpZW50cy5mb3JFYWNoKHIgPT4ge1xyXG4gICAgICBpZiAoIXIucGVuZGluZylcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIGNvbnN0IHRhc2s6IFRhc2sgPSB7XHJcbiAgICAgICAgaWQ6IGkrKyxcclxuICAgICAgICB0eXBlOiAncGVuZGluZycsXHJcbiAgICAgICAgdGltZTogbmV3IERhdGUoci5yZWNlaXZlZCksXHJcbiAgICAgICAgdGl0bGU6IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ0lzUGVuZGluZycpXHJcbiAgICAgIH07XHJcbiAgICAgIGlmIChyLnN1YnN0aXR1dGVJZCkge1xyXG4gICAgICAgIGNvbnN0IGJ5ID0gdGhpcy5fdXNlcnMuZ2V0KHIuc3Vic3RpdHV0ZUlkKTtcclxuICAgICAgICBjb25zdCB3aG8gPSB0aGlzLl91c2Vycy5nZXQoci51c2VySWQpO1xyXG4gICAgICAgIGNvbnN0IHByb21pc2UgPSBmb3JrSm9pbihbd2hvLCBieV0pLnBpcGUodGFwKHUgPT4ge1xyXG4gICAgICAgICAgdGFzay5uYW1lID0gdGhpcy5fdHJhbnNsYXRlLmdldCgnV2hvU3Vic3RpdHV0aW5nJywgdVswXS5uYW1lLCB1WzFdLm5hbWUpO1xyXG4gICAgICAgICAgaWYgKHVbMF0ucm9sZSlcclxuICAgICAgICAgICAgdGFzay5uYW1lICs9IGAsICR7dVswXS5yb2xlfWA7XHJcbiAgICAgICAgICBpZiAoci5yb2xlKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHJvbGUgPSB0aGlzLl9zZXNzaW9uLnByb2ZpbGUucm9sZXMuZmluZChvID0+IG8ubmFtZSA9PT0gci5yb2xlKTtcclxuICAgICAgICAgICAgaWYgKHJvbGUpIHRhc2submFtZSArPSBgLCAke3JvbGUubmFtZX1gO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pLCBjYXRjaEVycm9yKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuX3BzLmVycm9yKCk7XHJcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoKTtcclxuICAgICAgICB9KSk7XHJcblxyXG4gICAgICAgIHByb21pc3Nlcy5wdXNoKHByb21pc2UpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IHByb21pc2UgPSB0aGlzLl91c2Vycy5nZXQoci51c2VySWQpLnBpcGUodGFwKHUgPT4ge1xyXG4gICAgICAgICAgdGFzay5uYW1lID0gdS5uYW1lO1xyXG4gICAgICAgICAgaWYgKHUucm9sZSlcclxuICAgICAgICAgICAgdGFzay5uYW1lICs9IGAsICR7dS5yb2xlfWA7XHJcbiAgICAgICAgICBlbHNlIGlmIChyLnJvbGUpIHtcclxuICAgICAgICAgICAgY29uc3Qgcm9sZSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5yb2xlcy5maW5kKG8gPT4gby5uYW1lID09PSByLnJvbGUpO1xyXG4gICAgICAgICAgICBpZiAocm9sZSkgdGFzay5uYW1lICs9IGAsICR7cm9sZS5uYW1lfWA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSksIGNhdGNoRXJyb3IoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5fcHMuZXJyb3IoKTtcclxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcigpO1xyXG4gICAgICAgIH0pKTtcclxuICAgICAgICBwcm9taXNzZXMucHVzaChwcm9taXNlKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoci5ub2RlSWQpIHtcclxuICAgICAgICB0aGlzLm1vZGVsLndvcmtmbG93LmNvbm5lY3RvcnMuZmlsdGVyKGMgPT4gYy50YXJnZXRJZCA9PT0gci5ub2RlSWQpLmZvckVhY2goYyA9PiB7XHJcbiAgICAgICAgICBjb25zdCBwcmVkZWNlc3NvcnMgPSB0aGlzLnRhc2tzLmZpbHRlcihsID0+IGwubm9kZUlkID09PSBjLnNvdXJjZUlkKS5tYXAobCA9PiBsLmlkKTtcclxuICAgICAgICAgIGlmIChwcmVkZWNlc3NvcnMubGVuZ3RoKSB0YXNrLmRlcGVuZGVuY2llcyA9IHByZWRlY2Vzc29ycy5qb2luKCcsJyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLnRhc2tzLmZpbmQodCA9PiB0LnR5cGUgPT09ICdTdGF0ZUNoYW5nZScgJiYgdC50aW1lIDw9IHRhc2sudGltZSAmJiAoIXQuZW5kaW5nIHx8IHQuZW5kaW5nID49IHRhc2sudGltZSkpO1xyXG4gICAgICBpZiAoc3RhdGUpIHtcclxuICAgICAgICBpZiAoIXN0YXRlLnN1YnRhc2tzKSBzdGF0ZS5zdWJ0YXNrcyA9IFtdO1xyXG4gICAgICAgIHN0YXRlLnN1YnRhc2tzLnB1c2godGFzayk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZVxyXG4gICAgICAgIHRoaXMudGFza3MucHVzaCh0YXNrKTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGZvcmtKb2luKHByb21pc3NlcykuXHJcbiAgICAgIHBpcGUodGFwKCgpID0+IHRoaXMudGFza3MgPSB0aGlzLnRhc2tzLnNvcnQoKHQwLCB0MSkgPT4gdDAudGltZSA+IHQxLnRpbWUgPyAxIDogLTEpKSk7XHJcbiAgfVxyXG4gIHJvd1NlbGVjdGluZyhyKSB7XHJcbiAgICBpZiAoci5kYXRhLnRhc2tEYXRhLnR5cGUgPT09ICdNb2RlbENoYW5nZScpXHJcbiAgICAgIHRoaXMuX2NvbXBhcmUoci5kYXRhKTtcclxuICB9XHJcbiAgcHVibGljIF9jb21wYXJlKHRhc2s6IFRhc2spIHtcclxuICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJ21haWxib3gvZCcsIHRoaXMubW9kZWwuZG9jdW1lbnRJZC5lbmNvZGVJZCgpLCAndmVyc2lvbicsIHRhc2sudGltZS52YWx1ZU9mKCkuZW5jb2RlSWQoKV0sIHsgc3RhdGU6IHsgaXRlbTogdGhpcy5tb2RlbCB9IH0pXHJcbiAgfVxyXG4gIHJlYWRvbmx5IHRhc2tGaWVsZHM6IFRhc2tGaWVsZHNNb2RlbCA9IHtcclxuICAgIGlkOiAnaWQnLFxyXG4gICAgbmFtZTogJ3RpdGxlJyxcclxuICAgIHN0YXJ0RGF0ZTogJ3RpbWUnLFxyXG4gICAgZW5kRGF0ZTogJ2VuZGluZycsXHJcbiAgICBkdXJhdGlvbjogJ2R1cmF0aW9uJyxcclxuICAgIGRlcGVuZGVuY3k6ICdkZXBlbmRlbmNpZXMnLFxyXG4gICAgY2hpbGQ6ICdzdWJ0YXNrcydcclxuICB9O1xyXG4gIGNvbHVtbnM6IENvbHVtbk1vZGVsW107XHJcbiAgcmVhZG9ubHkgdG9vbHRpcFNldHRpbmdzID0geyBzaG93VG9vbHRpcDogZmFsc2UgfTtcclxuICByZWFkb25seSB0aW1lbGluZVNldHRpbmdzOiBUaW1lbGluZVNldHRpbmdzTW9kZWwgPSB7XHJcbiAgICB0aW1lbGluZVVuaXRTaXplOiA2MCxcclxuICAgIHRvcFRpZXI6IHtcclxuICAgICAgZm9ybWF0OiAnTU1NIGRkLCB5eXl5JyxcclxuICAgICAgdW5pdDogJ0RheScsXHJcbiAgICB9LFxyXG4gICAgYm90dG9tVGllcjoge1xyXG4gICAgICB1bml0OiAnSG91cicsXHJcbiAgICAgIGZvcm1hdDogJ2gubW0gYSdcclxuICAgIH1cclxuICB9O1xyXG4gIHJlYWRvbmx5IGV2ZW50TWFya2VyczogRXZlbnRNYXJrZXJNb2RlbFtdID0gW1xyXG4gIF07XHJcbiAgcHVibGljIGxhYmVsU2V0dGluZ3M6IExhYmVsU2V0dGluZ3NNb2RlbCA9IHtcclxuICAgIHJpZ2h0TGFiZWw6ICduYW1lJywgbGVmdExhYmVsOiAndGl0bGUnXHJcbiAgfTtcclxuICBwdWJsaWMgc3BsaXR0ZXJTZXR0aW5nczogU3BsaXR0ZXJTZXR0aW5nc01vZGVsID0ge1xyXG4gICAgY29sdW1uSW5kZXg6IDMsXHJcbiAgICB2aWV3OiAnQ2hhcnQnLFxyXG4gICAgcG9zaXRpb246ICcwJyxcclxuICAgIHNlcGFyYXRvclNpemU6IDBcclxuICB9O1xyXG4gIHB1YmxpYyBkYXlXb3JraW5nVGltZTogRGF5V29ya2luZ1RpbWVNb2RlbFtdID0gW3sgZnJvbTogMCwgdG86IDI0IH1dO1xyXG59XHJcbmludGVyZmFjZSBUYXNrIHtcclxuICBpZDogbnVtYmVyO1xyXG4gIHR5cGU6IHN0cmluZztcclxuICBub2RlSWQ/OiBzdHJpbmc7XHJcbiAgbmFtZT86IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZztcclxuICB0aW1lOiBEYXRlO1xyXG4gIGVuZGluZz86IERhdGU7XHJcbiAgZHVyYXRpb24/OiBudW1iZXI7XHJcbiAgc3VidGFza3M/OiBUYXNrW107XHJcbiAgZGVwZW5kZW5jaWVzPzogc3RyaW5nO1xyXG4gIGluZGljYXRvcnM/OiBhbnlbXSxcclxufVxyXG5pbnRlcmZhY2UgT3B0aW9ucyB7XHJcblxyXG59XHJcbiJdfQ==
|
332
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUuY29tcG9uZW50LmV4cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvdmlld3MvdGltZWxpbmUvdGltZWxpbmUuY29tcG9uZW50LmV4cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsR0FBRyxFQUFPLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFjLFFBQVEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4RCxPQUFPLEVBQWUsaUJBQWlCLEVBQXlDLEtBQUssRUFBZ0UsZ0JBQWdCLEVBQXlGLE1BQU0sK0JBQStCLENBQUM7QUFPcFMsT0FBTyxFQUFnQixhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7O0FBZ0J4QyxJQUFNLHFCQUFxQixHQUEzQixNQUFNLHFCQUFxQjtJQVVoQyx5QkFBeUI7SUFDekIsWUFDVSxHQUFrQixFQUMxQixPQUFpQyxFQUNWLE1BQW9CLEVBQ25DLE1BQXNCLEVBQ3RCLFFBQXdCLEVBQ3hCLFVBQTRCLEVBQzVCLE9BQW1CLEVBQ25CLFFBQW9CO1FBUHBCLFFBQUcsR0FBSCxHQUFHLENBQWU7UUFHbEIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsZUFBVSxHQUFWLFVBQVUsQ0FBa0I7UUFDNUIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBakJyQixRQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUM7UUFDOUIsV0FBTSxHQUFHLElBQUks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QUc7UUFDZCxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxhQUFhO1lBQzFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFDRDs7O09BR0c7SUFDSSxRQUFRLENBQUMsSUFBVTtRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDcEosQ0FBQzs4R0E3UVUscUJBQXFCLDhFQWN0QixhQUFhO2tHQWRaLHFCQUFxQixxSkFKckIsQ0FBQyxnQkFBZ0IsRUFBRSxpQkFBaUIsQ0FBQywwQkFOdEMsRUFBRTs7QUFVRCxxQkFBcUI7SUFGakMsTUFBTSxDQUFDLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLENBQUM7SUFDN0MsNkJBQTZCO0dBQ2hCLHFCQUFxQixDQWlUakM7OzJGQWpUWSxxQkFBcUI7a0JBWmpDLFNBQVM7K0JBQ0UsaUJBQWlCLFlBQ2pCLEVBQUUsUUFFTjt3QkFDSixLQUFLLEVBQUUsTUFBTTt3QkFDYixFQUFFLEVBQUUsY0FBYztxQkFDbkIsYUFDVSxDQUFDLGdCQUFnQixFQUFFLGlCQUFpQixDQUFDOzswQkFrQjdDLE1BQU07MkJBQUMsYUFBYTtvTEFaZCxHQUFHO3NCQURYLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSG9zdEJpbmRpbmcsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcclxuaW1wb3J0IHsgdGFwLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIGZvcmtKb2luLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IENvbHVtbk1vZGVsLCBEYXlNYXJrZXJzU2VydmljZSwgRGF5V29ya2luZ1RpbWVNb2RlbCwgRXZlbnRNYXJrZXJNb2RlbCwgR2FudHQsIEhvbGlkYXlNb2RlbCwgSVF1ZXJ5VGFza2JhckluZm9FdmVudEFyZ3MsIExhYmVsU2V0dGluZ3NNb2RlbCwgU2VsZWN0aW9uU2VydmljZSwgU2VsZWN0aW9uU2V0dGluZ3NNb2RlbCwgU3BsaXR0ZXJTZXR0aW5nc01vZGVsLCBUYXNrRmllbGRzTW9kZWwsIFRpbWVsaW5lU2V0dGluZ3NNb2RlbCB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLWdhbnR0JztcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3Nlc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3RyYW5zbGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUHJvbXB0U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvcHJvbXB0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY2NvdW50U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvYWNjb3VudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRG9jdW1lbnRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlJztcclxuaW1wb3J0IHsgQ2hhaW4sIERvY3VtZW50TW9kZWwgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IEJpekRvY0NvbmZpZywgQklaRE9DX0NPTkZJRyB9IGZyb20gJy4uLy4uL2NvcmUvY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycyc7XHJcbmltcG9ydCB7IFJvdXRlckltcGwgfSBmcm9tICcuLi8uLi9jb3JlL3JvdXRlcic7XHJcbmltcG9ydCB7IERvY3VtZW50Vmlld1JlZiB9IGZyb20gJy4uL2RvY3VtZW50LXZpZXctcmVmJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLXRpbWVsaW5lJyxcclxuICB0ZW1wbGF0ZTogJycsXHJcbiAgc3R5bGVVcmxzOiBbJ3RpbWVsaW5lLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaG9zdDoge1xyXG4gICAgY2xhc3M6ICd2aWV3JyxcclxuICAgIGlkOiAnZG9jLXRpbWVsaW5lJ1xyXG4gIH0sXHJcbiAgcHJvdmlkZXJzOiBbU2VsZWN0aW9uU2VydmljZSwgRGF5TWFya2Vyc1NlcnZpY2VdXHJcbn0pXHJcbkBCaXpEb2MoeyBzZWxlY3RvcjogJ2JpemRvYy10aW1lbGluZS12aWV3JyB9KVxyXG4vKiogdGltZWxpbmUtdmlldyBjb21wb25lbnQqL1xyXG5leHBvcnQgY2xhc3MgVGltZWxpbmVWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgRG9jdW1lbnRWaWV3Q29tcG9uZW50IHtcclxuICBASG9zdEJpbmRpbmcoKVxyXG4gIHJlYWRvbmx5IGRpciA9IHRoaXMuX3Nlc3Npb24uZGlyZWN0aW9uO1xyXG4gIHJlYWRvbmx5IGxvY2FsZSA9IHRoaXMuX3Nlc3Npb24ubGFuZ3VhZ2U7XHJcbiAgbW9kZWw6IERvY3VtZW50TW9kZWw8YW55PjtcclxuICBnYW50dDogR2FudHQ7XHJcbiAgZGF0ZUZvcm1hdDogc3RyaW5nO1xyXG4gIGhvbGlkYXlzOiBIb2xpZGF5TW9kZWxbXTtcclxuICB3aWR0aDogbnVtYmVyID0gMDtcclxuICB0YXNrczogVGFza1tdO1xyXG4gIC8qKiB0aW1lbGluZS12aWV3IGN0b3IgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3BzOiBQcm9tcHRTZXJ2aWNlLFxyXG4gICAgdmlld1JlZjogRG9jdW1lbnRWaWV3UmVmPE9wdGlvbnM+LFxyXG4gICAgQEluamVjdChCSVpET0NfQ09ORklHKSBjb25maWc6IEJpekRvY0NvbmZpZyxcclxuICAgIHByaXZhdGUgX3VzZXJzOiBBY2NvdW50U2VydmljZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXJJbXBsLFxyXG4gICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZikge1xyXG4gICAgdGhpcy5jb2x1bW5zID0gW1xyXG4gICAgICB7IGZpZWxkOiAndGl0bGUnLCBoZWFkZXJUZXh0OiBfdHJhbnNsYXRlLmdldCgnVGFzaycpIH0sXHJcbiAgICAgIHsgZmllbGQ6ICduYW1lJywgaGVhZGVyVGV4dDogX3RyYW5zbGF0ZS5nZXQoJ1dobycpIH0sXHJcbiAgICAgIHsgZmllbGQ6ICd0aW1lJywgaGVhZGVyVGV4dDogX3RyYW5zbGF0ZS5nZXQoJ1doZW4nKSB9XHJcbiAgICBdO1xyXG4gICAgdGhpcy5kYXRlRm9ybWF0ID0gY29uZmlnICYmIGNvbmZpZy5mb3JtYXRzICYmIGNvbmZpZy5mb3JtYXRzLmRhdGVUaW1lIHx8ICdNTU1NIGQsIHl5eXkgaGg6bW0nO1xyXG4gICAgdGhpcy5ob2xpZGF5cyA9IF9zZXNzaW9uLnByb2ZpbGUuaG9saWRheXMgJiZcclxuICAgICAgX3Nlc3Npb24ucHJvZmlsZS5ob2xpZGF5cy5tYXAoaCA9PiAoeyBmcm9tOiBoLnN0YXJ0RGF0ZSwgdG86IGguZnJvbURhdGUsIGxhYmVsOiBoLnRpdGxlIH0pKVxyXG4gICAgdmlld1JlZi5yZXNpemUuc3Vic2NyaWJlKGQgPT4ge1xyXG4gICAgICB0aGlzLndpZHRoID0gZC53aWR0aCAtIDE2O1xyXG4gICAgICBpZiAodGhpcy5nYW50dCkge1xyXG4gICAgICAgIHRoaXMuZ2FudHQud2lkdGggPSBkLndpZHRoIC0gMTY7XHJcbiAgICAgICAgdGhpcy5nYW50dC53aW5kb3dSZXNpemUoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIG9uQmluZChtb2RlbDogRG9jdW1lbnRNb2RlbDxhbnk+KSB7XHJcbiAgICB0aGlzLm1vZGVsID0gbW9kZWw7XHJcbiAgICB0aGlzLl9wcmVwYXJlKCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5fZHJhdygpO1xyXG4gICAgICAvL3RoaXMuZ2FudHQuc2Nyb2xsVG9EYXRlKG5ldyBEYXRlKCkudG9TdHJpbmcoKSk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfZHJhdygpIHtcclxuICAgIHRoaXMuZ2FudHQgJiYgdGhpcy5nYW50dC5kZXN0cm95KCk7XHJcbiAgICB0aGlzLmdhbnR0ID0gbmV3IEdhbnR0KHtcclxuICAgICAgZGF0YVNvdXJjZTogdGhpcy50YXNrcyxcclxuICAgICAgcXVlcnlUYXNrYmFySW5mbzogdGhpcy5xdWVyeVRhc2tiYXJJbmZvLmJpbmQodGhpcyksXHJcbiAgICAgIHRhc2tGaWVsZHM6IHRoaXMudGFza0ZpZWxkcyxcclxuICAgICAgY29sdW1uczogdGhpcy5jb2x1bW5zLFxyXG4gICAgICAvL3ZpZXdUeXBlOiAnUHJvamVjdFZpZXcnLFxyXG4gICAgICAvL2FsbG93RXhjZWxFeHBvcnQ6IHRydWUsXHJcbiAgICAgIGVuYWJsZVJ0bDogdGhpcy5fc2Vzc2lvbi5pbnZlcnNlLFxyXG4gICAgICAvLyAgdGltZWxpbmVTZXR0aW5nczogdGhpcy50aW1lbGluZVNldHRpbmdzLFxyXG4gICAgICBsYWJlbFNldHRpbmdzOiB0aGlzLmxhYmVsU2V0dGluZ3MsXHJcbiAgICAgIGV2ZW50TWFya2VyczogdGhpcy5ldmVudE1hcmtlcnMsXHJcbiAgICAgIHJlYWRPbmx5OiB0cnVlLFxyXG4gICAgICBzZWxlY3Rpb25TZXR0aW5nczogdGhpcy5zZWxlY3Rpb25TZXR0aW5ncyxcclxuICAgICAgYWxsb3dTZWxlY3Rpb246IHRydWUsXHJcbiAgICAgIGRhdGVGb3JtYXQ6IHRoaXMuZGF0ZUZvcm1hdCxcclxuICAgICAgdG9vbHRpcFNldHRpbmdzOiB0aGlzLnRvb2x0aXBTZXR0aW5ncyxcclxuICAgICAgLy90aW1lbGluZVNldHRpbmdzOiB7fSxcclxuICAgICAgcm93U2VsZWN0aW5nOiB0aGlzLnJvd1NlbGVjdGluZy5iaW5kKHRoaXMpLFxyXG4gICAgICBob2xpZGF5czogdGhpcy5ob2xpZGF5cyxcclxuICAgICAgLy8gIGluY2x1ZGVXZWVrZW5kOiB0cnVlLFxyXG4gICAgICBzcGxpdHRlclNldHRpbmdzOiB0aGlzLnNwbGl0dGVyU2V0dGluZ3MsXHJcbiAgICAgIC8vICBkdXJhdGlvblVuaXQ6ICdIb3VyJyxcclxuICAgICAgdGFza2JhckhlaWdodDogMzAsXHJcbiAgICAgIHJvd0hlaWdodDogNDAsXHJcbiAgICAgIGhlaWdodDogJzQyMHB4JyxcclxuICAgICAgd2lkdGg6ICcxMDAlJywgLy90aGlzLndpZHRoXHJcbiAgICAgIC8vICBkYXlXb3JraW5nVGltZTogdGhpcy5kYXlXb3JraW5nVGltZVxyXG4gICAgfSwgdGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50KVxyXG4gICAgdGhpcy5jb2x1bW5zLmZvckVhY2goYyA9PlxyXG4gICAgICB0aGlzLmdhbnR0LmhpZGVDb2x1bW4oYy5maWVsZClcclxuICAgIClcclxuICB9XHJcbiAgcXVlcnlUYXNrYmFySW5mbyhldnQ6IElRdWVyeVRhc2tiYXJJbmZvRXZlbnRBcmdzKSB7XHJcbiAgICBldnQudGFza2JhckJnQ29sb3IgPSB0aGlzLl9zZXNzaW9uLmdldEFjY2VudCgpO1xyXG4gIH1cclxuICBwcml2YXRlIF9wcmVwYXJlKCk6IE9ic2VydmFibGU8VGFza1tdPiB7XHJcbiAgICBjb25zdCBvYnNlcnZhYmxlczogT2JzZXJ2YWJsZTxhbnk+W10gPSBbXSwgdGFza3MgOiBUYXNrW10gPSBbXTtcclxuICAgIGxldCBpID0gMDtcclxuXHJcbiAgICAvL2NvbnN0IG9ic2VydmFibGUgPSB0aGlzLl9tYWlsYm94LnRpbWVsaW5lKG1vZGVsLmRvY3VtZW50SWQpLnBpcGUodGFwKHQgPT4ge1xyXG4gICAgLy99KSlcclxuXHJcbiAgICB0aGlzLm1vZGVsLmxvZy5mb3JFYWNoKGwgPT4ge1xyXG4gICAgICBsZXQgdGFzazogVGFzaztcclxuICAgICAgc3dpdGNoIChsLnR5cGUpIHtcclxuICAgICAgICBjYXNlICdTdWJtaXQnOlxyXG4gICAgICAgICAgdGhpcy5ldmVudE1hcmtlcnMucHVzaCh7XHJcbiAgICAgICAgICAgIGRheTogbmV3IERhdGUobC50aW1lKSxcclxuICAgICAgICAgICAgbGFiZWw6IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ1N1Ym1pdGlvbicpXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICBjYXNlICdTdGF0ZUNoYW5nZSc6XHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGNvbnN0IHN0YXRlID0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLnN0YXRlcy5maW5kKHMgPT4gcy5uYW1lID09PSBsLnN0YXRlKTtcclxuICAgICAgICAgICAgdGFzayA9IHtcclxuICAgICAgICAgICAgICBpZDogaSsrLFxyXG4gICAgICAgICAgICAgIHR5cGU6IGwudHlwZSxcclxuICAgICAgICAgICAgICBub2RlSWQ6IGwubm9kZUlkLFxyXG4gICAgICAgICAgICAgIHRpbWU6IG5ldyBEYXRlKGwudGltZSksXHJcbiAgICAgICAgICAgICAgdGl0bGU6IHN0YXRlID8gc3RhdGUucGFzdCB8fCBzdGF0ZS50aXRsZSA6IGwuc3RhdGVcclxuICAgICAgICAgICAgfSBhcyBUYXNrO1xyXG4gICAgICAgICAgICBpZiAobC5kdXJhdGlvbikge1xyXG4gICAgICAgICAgICAgIHRhc2suZW5kaW5nID0gbmV3IERhdGUodGFzay50aW1lLnZhbHVlT2YoKSArIGwuZHVyYXRpb24gKiAxMDAwKTtcclxuICAgICAgICAgICAgICB0YXNrLmR1cmF0aW9uID0gbC5kdXJhdGlvbiAqIDEwMDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgIHRhc2suZW5kaW5nID0gdGhpcy5tb2RlbC5jb21wbGV0ZWQgPyBuZXcgRGF0ZShsLnRpbWUpIDogbmV3IERhdGUoKTtcclxuICAgICAgICAgICAgdGFza3MucHVzaCh0YXNrKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgY2FzZSAnTW9kZWxDaGFuZ2UnOlxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB0YXNrID0ge1xyXG4gICAgICAgICAgICAgIGlkOiBpKyssXHJcbiAgICAgICAgICAgICAgdHlwZTogbC50eXBlLFxyXG4gICAgICAgICAgICAgIG5vZGVJZDogbC5ub2RlSWQsXHJcbiAgICAgICAgICAgICAgdGltZTogbmV3IERhdGUobC50aW1lKSxcclxuICAgICAgICAgICAgICB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnRWRpdGVkJylcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgaWYgKGwuZHVyYXRpb24pIHtcclxuICAgICAgICAgICAgICB0YXNrLmVuZGluZyA9IG5ldyBEYXRlKHRhc2sudGltZS52YWx1ZU9mKCkgKyBsLmR1cmF0aW9uICogMTAwMCk7XHJcbiAgICAgICAgICAgICAgdGFzay5kdXJhdGlvbiA9IGwuZHVyYXRpb24gKiAxMDAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgdGFzay5lbmRpbmcgPSBuZXcgRGF0ZSgpO1xyXG5cclxuICAgICAgICAgICAgY29uc3Qgc3RhdGUgPSB0YXNrcy5maW5kKHQgPT4gdC50eXBlID09PSAnU3RhdGVDaGFuZ2UnICYmIHQudGltZSA8PSB0YXNrLnRpbWUgJiYgKCF0LmVuZGluZyB8fCB0LmVuZGluZyA+PSB0YXNrLmVuZGluZykpO1xyXG4gICAgICAgICAgICBpZiAoc3RhdGUpIHtcclxuICAgICAgICAgICAgICBpZiAoIXN0YXRlLnN1YnRhc2tzKSBzdGF0ZS5zdWJ0YXNrcyA9IFtdO1xyXG4gICAgICAgICAgICAgIHN0YXRlLnN1YnRhc2tzLnB1c2godGFzayk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgIHRhc2tzLnB1c2godGFzayk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIGNhc2UgJ0FjdGlvblRha2VuJzpcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgY29uc3QgYWN0aW9uID0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmFjdGlvbnMuZmluZChhID0+IGEubmFtZSA9PT0gbC5hY3Rpb24pO1xyXG4gICAgICAgICAgICBpZiAobC5hY3Rpb24gPT09ICdkZWxldGUnKSByZXR1cm47XHJcbiAgICAgICAgICAgIGNvbnN0IHRpbWUgPSBkYXlqcyhsLnRpbWUpO1xyXG4gICAgICAgICAgICB0YXNrID0ge1xyXG4gICAgICAgICAgICAgIGlkOiBpKyssXHJcbiAgICAgICAgICAgICAgdHlwZTogbC50eXBlLFxyXG4gICAgICAgICAgICAgIG5vZGVJZDogbC5ub2RlSWQsXHJcbiAgICAgICAgICAgICAgZW5kaW5nOiB0aW1lLnRvRGF0ZSgpLFxyXG4gICAgICAgICAgICAgIHRpbWU6IHRpbWUuYWRkKC0gbC5kdXJhdGlvbiwgJ3MnKS50b0RhdGUoKSxcclxuICAgICAgICAgICAgICBkdXJhdGlvbjogbC5kdXJhdGlvbiAqIDEwMDAsXHJcbiAgICAgICAgICAgICAgdGl0bGU6IGFjdGlvbiA/IGFjdGlvbi5wYXN0IHx8IGFjdGlvbi50aXRsZSA6IGwuYWN0aW9uXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIGlmIChsLm5vZGVJZCkge1xyXG4gICAgICAgICAgICAgIHRoaXMubW9kZWwud29ya2Zsb3cuY29ubmVjdG9ycy5maWx0ZXIoYyA9PiBjLnRhcmdldElkID09PSBsLm5vZGVJZCkuZm9yRWFjaChjID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IHRhc2tzLmZpbHRlcihsID0+IGwubm9kZUlkID09PSBjLnNvdXJjZUlkKS5tYXAobCA9PiBgRlMke2wuaWR9YCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoZGVwZW5kZW5jaWVzLmxlbmd0aCkgdGFzay5kZXBlbmRlbmNpZXMgPSBkZXBlbmRlbmNpZXMuam9pbignLCcpO1xyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbnN0IHN0YXRlID0gdGFza3MuZmluZCh0ID0+IHQudHlwZSA9PT0gJ1N0YXRlQ2hhbmdlJyAmJiB0LnRpbWUgPD0gdGFzay50aW1lICYmICghdC5lbmRpbmcgfHwgdC5lbmRpbmcgPj0gdGFzay5lbmRpbmcpKTtcclxuICAgICAgICAgICAgaWYgKHN0YXRlKSB7XHJcbiAgICAgICAgICAgICAgaWYgKCFzdGF0ZS5zdWJ0YXNrcykgc3RhdGUuc3VidGFza3MgPSBbXTtcclxuICAgICAgICAgICAgICBzdGF0ZS5zdWJ0YXNrcy5wdXNoKHRhc2spO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICB0YXNrcy5wdXNoKHRhc2spO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChsLmJ5SWQpIHtcclxuICAgICAgICBjb25zdCB3aG8gPSB0aGlzLl91c2Vycy5nZXQobC51c2VySWQpLFxyXG4gICAgICAgICAgYnkgPSB0aGlzLl91c2Vycy5nZXQobC5ieUlkKTtcclxuICAgICAgICBjb25zdCBvYnNlcnZlID0gZm9ya0pvaW4oW3dobywgYnldKS5waXBlKHRhcChucyA9PiB7XHJcbiAgICAgICAgICBjb25zdCBbd2hvLCBieV0gPSBucztcclxuICAgICAgICAgIHRhc2submFtZSA9IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ0J5Jywgd2hvLm5hbWUsIGJ5Lm5hbWUpO1xyXG4gICAgICAgICAgLy8gICAgaWYgKGwucm9sZSkge1xyXG4gICAgICAgICAgLy8gICAgICAgIGNvbnN0IHJvbGUgPSB0aGlzLnNlc3Npb24ucHJvZmlsZS5yb2xlcy5maW5kKG8gPT4gby5uYW1lID09PSBsLnJvbGUpO1xyXG4gICAgICAgICAgLy8gICAgICAgIGlmIChyb2xlKSB0YXNrLm5hbWUgKz0gYCwgJHtyb2xlLm5hbWV9YDtcclxuICAgICAgICAgIC8vICAgIH1cclxuICAgICAgICB9KSk7XHJcblxyXG4gICAgICAgIG9ic2VydmFibGVzLnB1c2gob2JzZXJ2ZSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAobC51c2VySWQpIHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlID0gdGhpcy5fdXNlcnMuZ2V0KGwudXNlcklkKS5waXBlKHRhcCh1ID0+IHtcclxuICAgICAgICAgIHRhc2submFtZSA9IHUubmFtZTtcclxuICAgICAgICAgIC8vICAgIGlmIChsLnJvbGUpIHtcclxuICAgICAgICAgIC8vICAgICAgICBjb25zdCByb2xlID0gdGhpcy5zZXNzaW9uLnByb2ZpbGUucm9sZXMuZmluZChvID0+IG8ubmFtZSA9PT0gbC5yb2xlKTtcclxuICAgICAgICAgIC8vICAgICAgICBpZiAocm9sZSkgdGFzay5uYW1lICs9IGAsICR7cm9sZS5uYW1lfWA7XHJcbiAgICAgICAgICAvLyAgICB9XHJcbiAgICAgICAgfSkpO1xyXG4gICAgICAgIG9ic2VydmFibGVzLnB1c2gob2JzZXJ2ZSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5tb2RlbC5ldmVudHMuZm9yRWFjaChlID0+IHtcclxuICAgICAgdGhpcy5ldmVudE1hcmtlcnMucHVzaCh7XHJcbiAgICAgICAgZGF5OiBuZXcgRGF0ZShlLnN0YXJ0aW5nKSxcclxuICAgICAgICBsYWJlbDogZS50aXRsZVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5tb2RlbC5yZWNpcGllbnRzLmZvckVhY2gociA9PiB7XHJcbiAgICAgIGlmICghci5wZW5kaW5nKVxyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgY29uc3QgdGFzazogVGFzayA9IHtcclxuICAgICAgICBpZDogaSsrLFxyXG4gICAgICAgIHR5cGU6ICdwZW5kaW5nJyxcclxuICAgICAgICB0aW1lOiBuZXcgRGF0ZShyLnJlY2VpdmVkKSxcclxuICAgICAgICB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnSXNQZW5kaW5nJylcclxuICAgICAgfTtcclxuICAgICAgaWYgKHIuc3Vic3RpdHV0ZUlkKSB7XHJcbiAgICAgICAgY29uc3QgYnkgPSB0aGlzLl91c2Vycy5nZXQoci5zdWJzdGl0dXRlSWQpO1xyXG4gICAgICAgIGNvbnN0IHdobyA9IHRoaXMuX3VzZXJzLmdldChyLnVzZXJJZCk7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZSA9IGZvcmtKb2luKFt3aG8sIGJ5XSkucGlwZSh0YXAodSA9PiB7XHJcbiAgICAgICAgICB0YXNrLm5hbWUgPSB0aGlzLl90cmFuc2xhdGUuZ2V0KCdXaG9TdWJzdGl0dXRpbmcnLCB1WzBdLm5hbWUsIHVbMV0ubmFtZSk7XHJcbiAgICAgICAgICBpZiAodVswXS5yb2xlKVxyXG4gICAgICAgICAgICB0YXNrLm5hbWUgKz0gYCwgJHt1WzBdLnJvbGV9YDtcclxuICAgICAgICAgIGlmIChyLnJvbGUpIHtcclxuICAgICAgICAgICAgY29uc3Qgcm9sZSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5yb2xlcy5maW5kKG8gPT4gby5uYW1lID09PSByLnJvbGUpO1xyXG4gICAgICAgICAgICBpZiAocm9sZSkgdGFzay5uYW1lICs9IGAsICR7cm9sZS5uYW1lfWA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICBvYnNlcnZhYmxlcy5wdXNoKG9ic2VydmUpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmUgPSB0aGlzLl91c2Vycy5nZXQoci51c2VySWQpLnBpcGUodGFwKHUgPT4ge1xyXG4gICAgICAgICAgdGFzay5uYW1lID0gdS5uYW1lO1xyXG4gICAgICAgICAgaWYgKHUucm9sZSlcclxuICAgICAgICAgICAgdGFzay5uYW1lICs9IGAsICR7dS5yb2xlfWA7XHJcbiAgICAgICAgICBlbHNlIGlmIChyLnJvbGUpIHtcclxuICAgICAgICAgICAgY29uc3Qgcm9sZSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5yb2xlcy5maW5kKG8gPT4gby5uYW1lID09PSByLnJvbGUpO1xyXG4gICAgICAgICAgICBpZiAocm9sZSkgdGFzay5uYW1lICs9IGAsICR7cm9sZS5uYW1lfWA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSkpO1xyXG4gICAgICAgIG9ic2VydmFibGVzLnB1c2gob2JzZXJ2ZSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHIubm9kZUlkKSB7XHJcbiAgICAgICAgdGhpcy5tb2RlbC53b3JrZmxvdy5jb25uZWN0b3JzLmZpbHRlcihjID0+IGMudGFyZ2V0SWQgPT09IHIubm9kZUlkKS5mb3JFYWNoKGMgPT4ge1xyXG4gICAgICAgICAgY29uc3QgcHJlZGVjZXNzb3JzID0gdGFza3MuZmlsdGVyKGwgPT4gbC5ub2RlSWQgPT09IGMuc291cmNlSWQpLm1hcChsID0+IGwuaWQpO1xyXG4gICAgICAgICAgaWYgKHByZWRlY2Vzc29ycy5sZW5ndGgpIHRhc2suZGVwZW5kZW5jaWVzID0gcHJlZGVjZXNzb3JzLmpvaW4oJywnKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBzdGF0ZSA9IHRhc2tzLmZpbmQodCA9PiB0LnR5cGUgPT09ICdTdGF0ZUNoYW5nZScgJiYgdC50aW1lIDw9IHRhc2sudGltZSAmJiAoIXQuZW5kaW5nIHx8IHQuZW5kaW5nID49IHRhc2sudGltZSkpO1xyXG4gICAgICBpZiAoc3RhdGUpIHtcclxuICAgICAgICBpZiAoIXN0YXRlLnN1YnRhc2tzKSBzdGF0ZS5zdWJ0YXNrcyA9IFtdO1xyXG4gICAgICAgIHN0YXRlLnN1YnRhc2tzLnB1c2godGFzayk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZVxyXG4gICAgICAgIHRhc2tzLnB1c2godGFzayk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBmb3JrSm9pbihvYnNlcnZhYmxlcykuXHJcbiAgICAgIHBpcGUodGFwKCgpID0+IHRoaXMudGFza3MgPSB0YXNrcy5zb3J0KCh0MCwgdDEpID0+IHQwLnRpbWUgPiB0MS50aW1lID8gMSA6IC0xKSkpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBcclxuICAgKiBAcGFyYW0gcm93XHJcbiAgICovXHJcbiAgcm93U2VsZWN0aW5nKHJvdykge1xyXG4gICAgaWYgKHJvdy5kYXRhLnRhc2tEYXRhLnR5cGUgPT09ICdNb2RlbENoYW5nZScpXHJcbiAgICAgIHRoaXMuX2NvbXBhcmUocm93LmRhdGEpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBcclxuICAgKiBAcGFyYW0gdGFza1xyXG4gICAqL1xyXG4gIHB1YmxpYyBfY29tcGFyZSh0YXNrOiBUYXNrKSB7XHJcbiAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoWydtYWlsYm94L2QnLCB0aGlzLm1vZGVsLmRvY3VtZW50SWQuZW5jb2RlSWQoKSwgJ3ZlcnNpb24nLCB0YXNrLnRpbWUudmFsdWVPZigpLmVuY29kZUlkKCldLCB7IHN0YXRlOiB7IGl0ZW06IHRoaXMubW9kZWwgfSB9KVxyXG4gIH1cclxuICByZWFkb25seSBzZWxlY3Rpb25TZXR0aW5ncyA9IHt9IGFzIFNlbGVjdGlvblNldHRpbmdzTW9kZWw7XHJcbiAgcmVhZG9ubHkgdGFza0ZpZWxkczogVGFza0ZpZWxkc01vZGVsID0ge1xyXG4gICAgaWQ6ICdpZCcsXHJcbiAgICBuYW1lOiAndGl0bGUnLFxyXG4gICAgc3RhcnREYXRlOiAndGltZScsXHJcbiAgICBlbmREYXRlOiAnZW5kaW5nJyxcclxuICAgIGR1cmF0aW9uOiAnZHVyYXRpb24nLFxyXG4gICAgZGVwZW5kZW5jeTogJ2RlcGVuZGVuY2llcycsXHJcbiAgICBjaGlsZDogJ3N1YnRhc2tzJ1xyXG4gIH07XHJcbiAgY29sdW1uczogQ29sdW1uTW9kZWxbXTtcclxuICByZWFkb25seSB0b29sdGlwU2V0dGluZ3MgPSB7IHNob3dUb29sdGlwOiBmYWxzZSB9O1xyXG4gIHJlYWRvbmx5IHRpbWVsaW5lU2V0dGluZ3M6IFRpbWVsaW5lU2V0dGluZ3NNb2RlbCA9IHtcclxuICAgIHRpbWVsaW5lVW5pdFNpemU6IDYwLFxyXG4gICAgdG9wVGllcjoge1xyXG4gICAgICBmb3JtYXQ6ICdNTU0gZGQsIHl5eXknLFxyXG4gICAgICB1bml0OiAnRGF5JyxcclxuICAgIH0sXHJcbiAgICBib3R0b21UaWVyOiB7XHJcbiAgICAgIHVuaXQ6ICdIb3VyJyxcclxuICAgICAgZm9ybWF0OiAnaC5tbSBhJ1xyXG4gICAgfVxyXG4gIH07XHJcbiAgcmVhZG9ubHkgZXZlbnRNYXJrZXJzOiBFdmVudE1hcmtlck1vZGVsW10gPSBbXHJcbiAgXTtcclxuICBwdWJsaWMgbGFiZWxTZXR0aW5nczogTGFiZWxTZXR0aW5nc01vZGVsID0ge1xyXG4gICAgcmlnaHRMYWJlbDogJ25hbWUnLCBsZWZ0TGFiZWw6ICd0aXRsZSdcclxuICB9O1xyXG4gIHB1YmxpYyBzcGxpdHRlclNldHRpbmdzOiBTcGxpdHRlclNldHRpbmdzTW9kZWwgPSB7XHJcbiAgICBjb2x1bW5JbmRleDogMyxcclxuICAgIHZpZXc6ICdDaGFydCcsXHJcbiAgICBwb3NpdGlvbjogJzAnLFxyXG4gICAgc2VwYXJhdG9yU2l6ZTogMFxyXG4gIH07XHJcbiAgcHVibGljIGRheVdvcmtpbmdUaW1lOiBEYXlXb3JraW5nVGltZU1vZGVsW10gPSBbeyBmcm9tOiAwLCB0bzogMjQgfV07XHJcbn1cclxuaW50ZXJmYWNlIFRhc2sge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgdHlwZTogc3RyaW5nO1xyXG4gIG5vZGVJZD86IHN0cmluZztcclxuICBuYW1lPzogc3RyaW5nO1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIHRpbWU6IERhdGU7XHJcbiAgZW5kaW5nPzogRGF0ZTtcclxuICBkdXJhdGlvbj86IG51bWJlcjtcclxuICBzdWJ0YXNrcz86IFRhc2tbXTtcclxuICBkZXBlbmRlbmNpZXM/OiBzdHJpbmc7XHJcbiAgaW5kaWNhdG9ycz86IGFueVtdLFxyXG59XHJcbmludGVyZmFjZSBPcHRpb25zIHtcclxuXHJcbn1cclxuIl19
|
@@ -7,7 +7,7 @@ import * as i3 from "../core/slots/pane-ref";
|
|
7
7
|
import * as i4 from "./views.component";
|
8
8
|
export class DocumentViewPaneComponent {
|
9
9
|
constructor(session, translate, pane) {
|
10
|
-
pane.title = translate.get('
|
10
|
+
pane.title = translate.get('Views');
|
11
11
|
pane.dataChange().subscribe(d => {
|
12
12
|
this.model = d['item'];
|
13
13
|
const form = session.profile.forms.find(f => f.name === this.model.formId);
|
@@ -26,4 +26,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
|
|
26
26
|
type: ViewChild,
|
27
27
|
args: [DocumentViewsComponent]
|
28
28
|
}] } });
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3MucGFuZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3ZpZXdzL3ZpZXdzLnBhbmUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBS3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7QUFRM0QsTUFBTSxPQUFPLHlCQUF5QjtJQUdwQyxZQUNFLE9BQXVCLEVBQ3ZCLFNBQTJCLEVBQzNCLElBQWE7UUFFYixJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN2QixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDM0UsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDckQsQ0FBQzs4R0FoQlUseUJBQXlCO2tHQUF6Qix5QkFBeUIsMkZBQ3pCLHNCQUFzQixnREFOdkIsK0RBQStEOzsyRkFLOUQseUJBQXlCO2tCQU5yQyxTQUFTOytCQUNFLCtEQUErRDt3SUFNdEMsS0FBSztzQkFBdkMsU0FBUzt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IERvY3VtZW50TW9kZWwgfSBmcm9tIFwiLi4vY29yZS9tb2RlbHNcIjtcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tIFwiLi4vY29yZS9zZXNzaW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgUGFuZVJlZiB9IGZyb20gXCIuLi9jb3JlL3Nsb3RzL3BhbmUtcmVmXCI7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiLi4vY29yZS90cmFuc2xhdGUuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEb2N1bWVudFZpZXdzQ29tcG9uZW50IH0gZnJvbSBcIi4vdmlld3MuY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJzxiaXpkb2MtZG9jdW1lbnQtdmlld3MgW21vZGVsXT1tb2RlbD48L2JpemRvYy1kb2N1bWVudC12aWV3cz4nLFxyXG4gIHN0eWxlczogW2A6aG9zdCB7XHJcbiAgbWluLXdpZHRoOiA0NTBweDtcclxuICAgIGZsZXgtZ3JvdzogMTt9YF1cclxufSlcclxuZXhwb3J0IGNsYXNzIERvY3VtZW50Vmlld1BhbmVDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoRG9jdW1lbnRWaWV3c0NvbXBvbmVudCkgdmlld3M6IERvY3VtZW50Vmlld3NDb21wb25lbnQ7XHJcbiAgbW9kZWw6IERvY3VtZW50TW9kZWw7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBzZXNzaW9uOiBTZXNzaW9uU2VydmljZSxcclxuICAgIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHBhbmU6IFBhbmVSZWZcclxuICApIHtcclxuICAgIHBhbmUudGl0bGUgPSB0cmFuc2xhdGUuZ2V0KCdWaWV3cycpO1xyXG4gICAgcGFuZS5kYXRhQ2hhbmdlKCkuc3Vic2NyaWJlKGQgPT4ge1xyXG4gICAgICB0aGlzLm1vZGVsID0gZFsnaXRlbSddO1xyXG4gICAgICBjb25zdCBmb3JtID0gc2Vzc2lvbi5wcm9maWxlLmZvcm1zLmZpbmQoZiA9PiBmLm5hbWUgPT09IHRoaXMubW9kZWwuZm9ybUlkKTtcclxuICAgICAgcGFuZS5ncm91cCA9IGAjJHt0aGlzLm1vZGVsLm51bWJlcn1gO1xyXG4gICAgICBwYW5lLmljb24gPSBmb3JtLmljb247XHJcbiAgICB9KTtcclxuICAgIHBhbmUucmVzaXplZCgpLnN1YnNjcmliZSgoKT0+IHRoaXMudmlld3MucmVzaXplKCkpO1xyXG4gIH1cclxufVxyXG5cclxuIl19
|