@piserve-tech/form-submission 1.3.86 → 1.3.88
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/form-fields/date-time-fields/date-time-fields.component.mjs +8 -24
- package/esm2022/form-submission/submit-form/submit-form.component.mjs +3 -4
- package/fesm2022/piserve-tech-form-submission.mjs +9 -26
- package/fesm2022/piserve-tech-form-submission.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -113,7 +113,7 @@ export class DateTimeFieldsComponent {
|
|
|
113
113
|
}
|
|
114
114
|
if (!this.maxTime || this.maxTime.length === 0) {
|
|
115
115
|
if (this.timeFormat === '12') {
|
|
116
|
-
this.maxTime = '
|
|
116
|
+
this.maxTime = '11:59 pm';
|
|
117
117
|
}
|
|
118
118
|
else {
|
|
119
119
|
this.maxTime = '23:59';
|
|
@@ -246,35 +246,19 @@ export class DateTimeFieldsComponent {
|
|
|
246
246
|
const formattemaxDate = this.datePipe.transform(this.maxDate, this.Dateformat);
|
|
247
247
|
if (formattedDate === formatteminDate) {
|
|
248
248
|
this.minTime = this.getMinTime().toString();
|
|
249
|
-
|
|
250
|
-
this.maxTime = '12:00 pm';
|
|
251
|
-
}
|
|
252
|
-
else {
|
|
253
|
-
this.maxTime = '23:00';
|
|
254
|
-
}
|
|
249
|
+
this.maxTime = this.timeFormat === '12' ? '11:59 pm' : '23:59';
|
|
255
250
|
}
|
|
256
251
|
if (formattedDate === formattemaxDate) {
|
|
257
252
|
this.maxTime = this.getMaxTime().toString();
|
|
258
|
-
|
|
259
|
-
this.minTime = '12:00 am';
|
|
260
|
-
}
|
|
261
|
-
else {
|
|
262
|
-
this.minTime = '00:00';
|
|
263
|
-
}
|
|
253
|
+
this.minTime = this.timeFormat === '12' ? '12:00 am' : '00:00';
|
|
264
254
|
}
|
|
265
255
|
if (formattedDate !== formatteminDate && formattedDate !== formattemaxDate) {
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
this.maxTime = '12:00 pm';
|
|
269
|
-
}
|
|
270
|
-
else {
|
|
271
|
-
this.minTime = '00:00';
|
|
272
|
-
this.maxTime = '23:00';
|
|
273
|
-
}
|
|
256
|
+
this.minTime = this.timeFormat === '12' ? '12:00 am' : '00:00';
|
|
257
|
+
this.maxTime = this.timeFormat === '12' ? '11:59 pm' : '23:59';
|
|
274
258
|
}
|
|
275
|
-
const formattedTime = this.selectedTime || ''; //
|
|
259
|
+
const formattedTime = this.selectedTime || ''; // Ensure selectedTime is handled properly
|
|
276
260
|
if (formattedDate && formattedTime) {
|
|
277
|
-
return `${formattedDate}
|
|
261
|
+
return `${formattedDate}, ${formattedTime}`;
|
|
278
262
|
}
|
|
279
263
|
return '';
|
|
280
264
|
case 'DATE_RANGE':
|
|
@@ -421,4 +405,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
421
405
|
type: ViewChild,
|
|
422
406
|
args: ['dateAndTimePicker']
|
|
423
407
|
}] } });
|
|
424
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL2RhdGUtdGltZS1maWVsZHMvZGF0ZS10aW1lLWZpZWxkcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL2RhdGUtdGltZS1maWVsZHMvZGF0ZS10aW1lLWZpZWxkcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFjL0UsTUFBTSxPQUFPLHVCQUF1QjtJQW9DbEMsWUFBb0IsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQW5DdEMsYUFBUSxHQUFnQztZQUN0QyxjQUFjLEVBQUUsY0FBYztZQUM5QixVQUFVLEVBQUUsSUFBSTtZQUNoQixnQkFBZ0IsRUFBRSxJQUFJO1lBQ3RCLGVBQWUsRUFBRSxLQUFLO1NBQ3ZCLENBQUM7UUFFTyxhQUFRLEdBQVEsRUFBRSxDQUFDO1FBQzVCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUNsQixVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFDckIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFDcEIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBQ3hCLGtCQUFhLEdBQVcsRUFBRSxD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U0FDYjtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzsrR0F0Y1UsdUJBQXVCO21HQUF2Qix1QkFBdUIsaUZBSHZCLENBQUMsUUFBUSxDQUFDLHFWQ1p2QixrbVZBcVRBOzs0RkR0U2EsdUJBQXVCO2tCQVBuQyxTQUFTOytCQUNFLHNCQUFzQixhQUdyQixDQUFDLFFBQVEsQ0FBQyxpQkFDTixpQkFBaUIsQ0FBQyxJQUFJOytGQVU1QixRQUFRO3NCQUFoQixLQUFLO2dCQXlCc0IsVUFBVTtzQkFBckMsU0FBUzt1QkFBQyxlQUFlO2dCQUNJLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUNJLGlCQUFpQjtzQkFBaEQsU0FBUzt1QkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCc0RhdGVwaWNrZXJDb25maWcsXG4gIEJzRGF0ZXBpY2tlckRpcmVjdGl2ZSxcbn0gZnJvbSAnbmd4LWJvb3RzdHJhcC9kYXRlcGlja2VyJztcbmltcG9ydCB7IE5neE1hdGVyaWFsVGltZXBpY2tlckNvbXBvbmVudCB9IGZyb20gJ25neC1tYXRlcmlhbC10aW1lcGlja2VyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWRhdGUtdGltZS1maWVsZHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS10aW1lLWZpZWxkcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RhdGUtdGltZS1maWVsZHMuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbRGF0ZVBpcGVdLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIERhdGVUaW1lRmllbGRzQ29tcG9uZW50IHtcbiAgYnNDb25maWc6IFBhcnRpYWw8QnNEYXRlcGlja2VyQ29uZmlnPiA9IHtcbiAgICBjb250YWluZXJDbGFzczogJ3RoZW1lLWN1c3RvbScsXG4gICAgaXNBbmltYXRlZDogdHJ1ZSxcbiAgICBhZGFwdGl2ZVBvc2l0aW9uOiB0cnVlLFxuICAgIHNob3dXZWVrTnVtYmVyczogZmFsc2UsXG4gIH07XG5cbiAgQElucHV0KCkgcXVlc3Rpb246IGFueSA9IHt9O1xuICByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBoaW50OiBzdHJpbmcgPSAnJztcbiAgY291bnQ6IG51bWJlciA9IDA7XG4gIG1pblRpbWU6IHN0cmluZyA9ICcnO1xuICBtYXhUaW1lOiBzdHJpbmcgPSAnJztcbiAgZGF0ZVR5cGU6IHN0cmluZyA9ICcnO1xuICBmb3JtYXQ6IHN0cmluZyA9ICcnO1xuICBEYXRlZm9ybWF0OiBzdHJpbmcgPSAnJztcbiAgdGltZUZvcm1hdDogc3RyaW5nID0gJyc7XG4gIG1pbkRhdGVPcHRpb246IHN0cmluZyA9ICcnO1xuICBtaW5EYXRlOiBEYXRlIHwgdW5kZWZpbmVkO1xuICBtYXhEYXRlT3B0aW9uOiBzdHJpbmcgPSAnJztcbiAgbWF4RGF0ZTogRGF0ZSB8IHVuZGVmaW5lZDtcbiAgdG9kYXlEYXRlOiBEYXRlID0gbmV3IERhdGUoKTtcbiAgc2VsZWN0ZWREYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG4gIHNlbGVjdGVkVGltZTogc3RyaW5nID0gJyc7XG4gIHNlbGVjdGVkRGF0ZVJhbmdlOiBzdHJpbmcgPSAnJztcbiAgc2VsZWN0ZWREYXRlQW5kVGltZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuICB2YWxpZGF0aW9uRmFpbGVkITogYm9vbGVhbjtcbiAgdGltZVZhbGlkYXRpb25GYWlsZWQhOiBib29sZWFuO1xuICB2YWxpZGF0aW9uTWVzc2FnZTogc3RyaW5nID0gJyc7XG4gIG1heFRpbWVPcHRpb246IHN0cmluZyA9ICcnO1xuICBtaW5UaW1lT3B0aW9uOiBzdHJpbmcgPSAnJztcblxuICBAVmlld0NoaWxkKCdkYXRlcGlja2VyWU1EJykgZGF0ZXBpY2tlciE6IEJzRGF0ZXBpY2tlckRpcmVjdGl2ZTtcbiAgQFZpZXdDaGlsZCgnZGF0ZXJhbmdlcGlja2VyJykgZGF0ZVJhbmdlUGlja2VyITogQnNEYXRlcGlja2VyRGlyZWN0aXZlO1xuICBAVmlld0NoaWxkKCdkYXRlQW5kVGltZVBpY2tlcicpIGRhdGVBbmRUaW1lUGlja2VyITogQnNEYXRlcGlja2VyRGlyZWN0aXZlO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy52YWx1ZUFzc2lnbmVkKCk7XG4gIH1cblxuICB2YWx1ZUFzc2lnbmVkKCkge1xuXG4gICAgdGhpcy5jb3VudCA9IHRoaXMucXVlc3Rpb24uY291bnQ7XG4gICAgdGhpcy5yZXF1aXJlZCA9IHRoaXMucXVlc3Rpb24ucmVxdWlyZWQ7XG4gICAgdGhpcy5oaW50ID0gdGhpcy5xdWVzdGlvbi5oaW50O1xuICAgIHRoaXMuZGF0ZVR5cGUgPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LmFwcGVhcmFuY2UuZGF0ZVR5cGU7XG4gICAgdGhpcy5taW5EYXRlT3B0aW9uID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLm1pbkRhdGVPcHRpb247XG4gICAgdGhpcy5EYXRlZm9ybWF0ID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmZvcm1hdC5yZXBsYWNlKC9ERC9nLCAnZGQnKTtcblxuXG4gICAgdGhpcy5taW5EYXRlID0gdGhpcy5nZXRNaW5EYXRlKCk7XG5cblxuICAgIHRoaXMubWF4RGF0ZU9wdGlvbiA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5tYXhEYXRlT3B0aW9uO1xuICAgIHRoaXMubWF4RGF0ZSA9IHRoaXMuZ2V0TWF4RGF0ZSgpO1xuICAgIHRoaXMuc2V0RGF0ZVRpbWVGb3JtYXQoKTtcbiAgICBpZiAodGhpcy5xdWVzdGlvbj8uYW5zd2VyICYmICh0aGlzLnF1ZXN0aW9uPy5hbnN3ZXIpLmxlbmd0aCA+IDApXG4gICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHRoaXMucXVlc3Rpb24/LmFuc3dlcjtcbiAgICB0aGlzLnNlbGVjdGVkVGltZSA9IHRoaXMucXVlc3Rpb24uYW5zd2VyO1xuICAgIGlmICh0aGlzLnF1ZXN0aW9uPy5hbnN3ZXIgJiYgKHRoaXMucXVlc3Rpb24/LmFuc3dlcikubGVuZ3RoID4gMClcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlQW5kVGltZSA9IG5ldyBEYXRlKHRoaXMucXVlc3Rpb24uYW5zd2VyKTtcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZVJhbmdlID0gdGhpcy5xdWVzdGlvbi5hbnN3ZXI7XG4gICAgdGhpcy5taW5UaW1lT3B0aW9uID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLm1pblRpbWVPcHRpb247XG4gICAgdGhpcy5tYXhUaW1lT3B0aW9uID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLm1heFRpbWVPcHRpb247XG4gICAgaWYgKHRoaXMuZGF0ZVR5cGUgIT09ICdEQVRFX0FORF9USU1FJykge1xuICAgICAgdGhpcy5taW5UaW1lID0gdGhpcy5nZXRNaW5UaW1lKCkudG9TdHJpbmcoKTtcbiAgICAgIHRoaXMubWF4VGltZSA9IHRoaXMuZ2V0TWF4VGltZSgpLnRvU3RyaW5nKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmRhdGVUeXBlID09PSAnREFURV9BTkRfVElNRScgJiYgdGhpcy5xdWVzdGlvbj8uYW5zd2VyKSB7XG4gICAgICBjb25zdCBkYXRlVGltZUFycmF5ID0gdGhpcy5xdWVzdGlvbi5hbnN3ZXJcbiAgICAgICAgPyB0aGlzLnF1ZXN0aW9uLmFuc3dlci5zcGxpdCgnLCcpXG4gICAgICAgIDogW107IC8vIEZhbGxiYWNrIHRvIGFuIGVtcHR5IGFycmF5IGlmIGB0aGlzLnF1ZXN0aW9uLmFuc3dlcmAgaXMgdW5kZWZpbmVkXG5cbiAgICAgIGlmIChkYXRlVGltZUFycmF5Lmxlbmd0aCA9PT0gMikge1xuICAgICAgICBjb25zdCBmZXRjaGVkRGF0ZSA9IGRhdGVUaW1lQXJyYXlbMF0udHJpbSgpO1xuICAgICAgICBjb25zdCBmZXRjaGVkVGltZSA9IGRhdGVUaW1lQXJyYXlbMV0udHJpbSgpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IGZldGNoZWREYXRlO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVGltZSA9IGZldGNoZWRUaW1lO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBmb3JtYXR0ZWREYXRlID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5zZWxlY3RlZERhdGVBbmRUaW1lLCB0aGlzLkRhdGVmb3JtYXQpO1xuICAgICAgY29uc3QgZm9ybWF0dGVtaW5EYXRlID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5taW5EYXRlLCB0aGlzLkRhdGVmb3JtYXQpO1xuICAgICAgY29uc3QgZm9ybWF0dGVtYXhEYXRlID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5tYXhEYXRlLCB0aGlzLkRhdGVmb3JtYXQpO1xuXG4gICAgICBpZiAoZm9ybWF0dGVkRGF0ZSA9PT0gZm9ybWF0dGVtaW5EYXRlKSB7XG4gICAgICAgIHRoaXMubWluVGltZSA9IHRoaXMuZ2V0TWluVGltZSgpLnRvU3RyaW5nKCk7XG4gICAgICAgIGlmICh0aGlzLnRpbWVGb3JtYXQgPT09ICcxMicpIHtcbiAgICAgICAgICB0aGlzLm1heFRpbWUgPSAnMTI6MDAgcG0nO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubWF4VGltZSA9ICcyMzo1OSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChmb3JtYXR0ZWREYXRlID09PSBmb3JtYXR0ZW1heERhdGUpIHtcbiAgICAgICAgdGhpcy5tYXhUaW1lID0gdGhpcy5nZXRNYXhUaW1lKCkudG9TdHJpbmcoKTtcbiAgICAgICAgaWYgKHRoaXMudGltZUZvcm1hdCA9PT0gJzEyJykge1xuICAgICAgICAgIHRoaXMubWluVGltZSA9ICcxMjowMCBhbSc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5taW5UaW1lID0gJzAwOjAwJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGZvcm1hdHRlZERhdGUgIT09IGZvcm1hdHRlbWluRGF0ZSAmJiBmb3JtYXR0ZWREYXRlICE9PSBmb3JtYXR0ZW1heERhdGUpIHtcbiAgICAgICAgaWYgKHRoaXMudGltZUZvcm1hdCA9PT0gJzEyJykge1xuICAgICAgICAgIHRoaXMubWluVGltZSA9ICcxMjowMCBhbSc7XG4gICAgICAgICAgdGhpcy5tYXhUaW1lID0gJzEyOjAwIHBtJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLm1pblRpbWUgPSAnMDA6MDAnO1xuICAgICAgICAgIHRoaXMubWF4VGltZSA9ICcyMzo1OSc7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuXG4gICAgaWYgKCF0aGlzLm1pblRpbWUgfHwgdGhpcy5taW5UaW1lLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaWYgKHRoaXMudGltZUZvcm1hdCA9PT0gJzEyJykge1xuICAgICAgICB0aGlzLm1pblRpbWUgPSAnMTI6MDAgYW0nO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5taW5UaW1lID0gJzAwOjAwJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIXRoaXMubWF4VGltZSB8fCB0aGlzLm1heFRpbWUubGVuZ3RoID09PSAwKSB7XG4gICAgICBpZiAodGhpcy50aW1lRm9ybWF0ID09PSAnMTInKSB7XG4gICAgICAgIHRoaXMubWF4VGltZSA9ICcxMjowMCBwbSc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm1heFRpbWUgPSAnMjM6NTknO1xuICAgICAgfVxuICAgIH1cblxuXG5cbiAgfVxuXG4gIHNldERhdGVUaW1lRm9ybWF0KCkge1xuICAgIHN3aXRjaCAodGhpcy5kYXRlVHlwZSkge1xuICAgICAgY2FzZSAnREFURV9PTkxZJzpcbiAgICAgICAgdGhpcy5mb3JtYXQgPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LmFwcGVhcmFuY2UuZm9ybWF0O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ1RJTUVfT05MWSc6XG4gICAgICAgIHRoaXMudGltZUZvcm1hdCA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS50aW1lRm9ybWF0O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0RBVEVfQU5EX1RJTUUnOlxuICAgICAgICB0aGlzLmZvcm1hdCA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5mb3JtYXQ7XG4gICAgICAgIHRoaXMudGltZUZvcm1hdCA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS50aW1lRm9ybWF0O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0RBVEVfUkFOR0UnOlxuICAgICAgICB0aGlzLmZvcm1hdCA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5mb3JtYXQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5mb3JtYXQgPSAnREQvTU0vWVlZWSc7XG4gICAgfVxuICB9XG5cbiAgZ2V0TWluRGF0ZSgpOiBEYXRlIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5taW5EYXRlT3B0aW9uID09PSAnQ1VSUkVOVF9EQVRFJykge1xuICAgICAgcmV0dXJuIHRoaXMudG9kYXlEYXRlO1xuICAgIH0gZWxzZSBpZiAodGhpcy5taW5EYXRlT3B0aW9uID09PSAnQ1VTVE9NJykge1xuICAgICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5taW5EYXRlKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDsgLy8gUmV0dXJuIHVuZGVmaW5lZCBpZiBubyB2YWxpZCBvcHRpb25cbiAgfVxuXG4gIGdldE1heERhdGUoKTogRGF0ZSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHRoaXMubWF4RGF0ZU9wdGlvbiA9PT0gJ0NVUlJFTlRfREFURScpIHtcbiAgICAgIHJldHVybiB0aGlzLnRvZGF5RGF0ZTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubWF4RGF0ZU9wdGlvbiA9PT0gJ0NVU1RPTScpIHtcbiAgICAgIHJldHVybiBuZXcgRGF0ZSh0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LnZhbGlkYXRpb24ubWF4RGF0ZSk7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXRNaW5UaW1lKCkge1xuICAgIGlmICh0aGlzLm1pblRpbWVPcHRpb24pIHtcbiAgICAgIGNvbnN0IGZvcm1hdCA9IHRoaXMudGltZUZvcm1hdCA9PT0gJzI0JyA/ICdISDptbScgOiAnaGg6bW0gYSc7XG5cbiAgICAgIGlmICh0aGlzLm1pblRpbWVPcHRpb24gPT09ICdDVVJSRU5UX1RJTUUnKSB7XG4gICAgICAgIGNvbnN0IG5vdyA9IG5ldyBEYXRlKCk7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShub3csIGZvcm1hdCkgfHwgJyc7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMubWluVGltZU9wdGlvbiA9PT0gJ0NVU1RPTScpIHtcbiAgICAgICAgY29uc3QgY3VzdG9tVGltZSA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5taW5UaW1lO1xuICAgICAgICBjb25zdCBbaG91cnMsIG1pbnV0ZXNdID0gY3VzdG9tVGltZS5zcGxpdCgnOicpOyAvLyBTcGxpdCBieSBjb2xvbiB0byBnZXQgaG91cnMgYW5kIG1pbnV0ZXNcblxuICAgICAgICAvLyBDcmVhdGUgYSBEYXRlIG9iamVjdCB3aXRoIGEgZml4ZWQgZGF0ZSBhbmQgY3VzdG9tIHRpbWVcbiAgICAgICAgY29uc3QgY3VzdG9tRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIGN1c3RvbURhdGUuc2V0SG91cnMocGFyc2VJbnQoaG91cnMsIDEwKSwgcGFyc2VJbnQobWludXRlcywgMTApLCAwLCAwKTsgLy8gU2V0IGhvdXJzIGFuZCBtaW51dGVzXG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKGN1c3RvbURhdGUsIGZvcm1hdCkgfHwgJyc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRW5zdXJlIGEgZGVmYXVsdCByZXR1cm4gaWYgbm8gY29uZGl0aW9uIGlzIG1ldFxuICAgIHJldHVybiAnJztcbiAgfVxuXG5cbiAgZ2V0TWF4VGltZSgpIHtcbiAgICBpZiAodGhpcy5tYXhUaW1lT3B0aW9uKSB7XG4gICAgICBjb25zdCBmb3JtYXQgPSB0aGlzLnRpbWVGb3JtYXQgPT09ICcyNCcgPyAnSEg6bW0nIDogJ2hoOm1tIGEnO1xuICAgICAgaWYgKHRoaXMubWF4VGltZU9wdGlvbiA9PT0gJ0NVUlJFTlRfVElNRScpIHtcbiAgICAgICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKG5vdywgZm9ybWF0KSB8fCAnJztcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKHRoaXMubWF4VGltZU9wdGlvbiA9PT0gJ0NVU1RPTScpIHtcbiAgICAgICAgY29uc3QgY3VzdG9tVGltZSA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5tYXhUaW1lO1xuICAgICAgICBjb25zdCBbaG91cnMsIG1pbnV0ZXNdID0gY3VzdG9tVGltZS5zcGxpdCgnOicpOyAvLyBTcGxpdCBieSBjb2xvbiB0byBnZXQgaG91cnMgYW5kIG1pbnV0ZXNcblxuICAgICAgICAvLyBDcmVhdGUgYSBEYXRlIG9iamVjdCB3aXRoIGEgZml4ZWQgZGF0ZSBhbmQgY3VzdG9tIHRpbWVcbiAgICAgICAgY29uc3QgY3VzdG9tRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIGN1c3RvbURhdGUuc2V0SG91cnMocGFyc2VJbnQoaG91cnMsIDEwKSwgcGFyc2VJbnQobWludXRlcywgMTApLCAwLCAwKTsgLy8gU2V0IGhvdXJzIGFuZCBtaW51dGVzXG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKGN1c3RvbURhdGUsIGZvcm1hdCkgfHwgJyc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgb3BlbkRhdGVQaWNrZXIoKSB7ICAgIFxuICAgIHRoaXMuZGF0ZXBpY2tlci50b2dnbGUoKTtcbiAgfVxuXG4gIG9wZW5EYXRlUmFuZ2VQaWNrZXIoKSB7XG4gICAgdGhpcy5kYXRlUmFuZ2VQaWNrZXIudG9nZ2xlKCk7XG4gIH1cblxuICBvcGVuRGF0ZUFuZFRpbWVQaWNrZXIoKSB7XG4gICAgdGhpcy5kYXRlQW5kVGltZVBpY2tlci50b2dnbGUoKTtcbiAgfVxuXG4gIGNsb3NlRGF0ZXBpY2tlcigpIHtcbiAgICBpZiAodGhpcy5kYXRlQW5kVGltZVBpY2tlcikge1xuICAgICAgdGhpcy5kYXRlQW5kVGltZVBpY2tlci5oaWRlKCk7IC8vIENsb3NlIHRoZSBkYXRlcGlja2VyXG4gICAgfVxuICB9XG5cblxuXG5cbiAgdmFsaWRhdGVGaWVsZCgpIHtcbiAgICBpZiAodGhpcy5kYXRlVHlwZSA9PT0gJ0RBVEVfT05MWScpIHtcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkRGF0ZSkge1xuICAgICAgICB0aGlzLnF1ZXN0aW9uLmFuc3dlciA9IHRoaXMuZm9ybWF0RGF0ZSh0aGlzLnNlbGVjdGVkRGF0ZS50b1N0cmluZygpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucXVlc3Rpb24uYW5zd2VyID0gJyc7XG4gICAgICB9XG5cbiAgICAgIHRoaXMudmFsaWRhdGVEYXRlT25seSgpXG4gICAgfVxuICAgIGVsc2UgaWYgKHRoaXMuZGF0ZVR5cGUgPT09ICdUSU1FX09OTFknKSB7XG4gICAgICB0aGlzLnF1ZXN0aW9uLmFuc3dlciA9IFN0cmluZyh0aGlzLnNlbGVjdGVkVGltZSk7XG4gICAgICB0aGlzLnZhbGlkYXRlVGltZU9ubHkoKVxuICAgIH1cbiAgICBlbHNlIGlmICh0aGlzLmRhdGVUeXBlID09PSAnREFURV9BTkRfVElNRScpIHtcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkRGF0ZUFuZFRpbWUpIHtcbiAgICAgICAgdGhpcy5xdWVzdGlvbi5hbnN3ZXIgPSB0aGlzLmZvcm1hdERhdGUodGhpcy5zZWxlY3RlZERhdGVBbmRUaW1lLnRvU3RyaW5nKCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5xdWVzdGlvbi5hbnN3ZXIgPSAnJztcbiAgICAgIH1cblxuICAgICAgdGhpcy52YWxpZGF0ZURhdGVBbmRUaW1lKClcblxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMucXVlc3Rpb24uYW5zd2VyID0gdGhpcy5mb3JtYXREYXRlKHRoaXMuc2VsZWN0ZWREYXRlUmFuZ2UpO1xuICAgICAgdGhpcy52YWxpZGF0ZURhdGVSYW5nZSgpXG4gICAgfVxuICB9XG5cbiAgZm9ybWF0RGF0ZShkYXRlOiBzdHJpbmcgfCBEYXRlLCB0eXBlOiBzdHJpbmcgPSAnZGF0ZVRpbWUnKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKHRoaXMuZGF0ZVR5cGUpIHtcbiAgICAgIGNhc2UgJ0RBVEVfT05MWSc6XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLnNlbGVjdGVkRGF0ZSwgdGhpcy5EYXRlZm9ybWF0KSB8fCAnJztcbiAgICAgIGNhc2UgJ0RBVEVfQU5EX1RJTUUnOlxuICAgICAgICBjb25zdCBmb3JtYXR0ZWREYXRlID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5zZWxlY3RlZERhdGVBbmRUaW1lLCB0aGlzLkRhdGVmb3JtYXQpO1xuICAgICAgICBjb25zdCBmb3JtYXR0ZW1pbkRhdGUgPSB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLm1pbkRhdGUsIHRoaXMuRGF0ZWZvcm1hdCk7XG4gICAgICAgIGNvbnN0IGZvcm1hdHRlbWF4RGF0ZSA9IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHRoaXMubWF4RGF0ZSwgdGhpcy5EYXRlZm9ybWF0KTtcbiAgICAgICAgaWYgKGZvcm1hdHRlZERhdGUgPT09IGZvcm1hdHRlbWluRGF0ZSkge1xuICAgICAgICAgIHRoaXMubWluVGltZSA9IHRoaXMuZ2V0TWluVGltZSgpLnRvU3RyaW5nKCk7XG4gICAgICAgICAgaWYgKHRoaXMudGltZUZvcm1hdCA9PT0gJzEyJykge1xuICAgICAgICAgICAgdGhpcy5tYXhUaW1lID0gJzEyOjAwIHBtJztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5tYXhUaW1lID0gJzIzOjAwJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGZvcm1hdHRlZERhdGUgPT09IGZvcm1hdHRlbWF4RGF0ZSkge1xuICAgICAgICAgIHRoaXMubWF4VGltZSA9IHRoaXMuZ2V0TWF4VGltZSgpLnRvU3RyaW5nKCk7XG4gICAgICAgICAgaWYgKHRoaXMudGltZUZvcm1hdCA9PT0gJzEyJykge1xuICAgICAgICAgICAgdGhpcy5taW5UaW1lID0gJzEyOjAwIGFtJztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5taW5UaW1lID0gJzAwOjAwJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGZvcm1hdHRlZERhdGUgIT09IGZvcm1hdHRlbWluRGF0ZSAmJiBmb3JtYXR0ZWREYXRlICE9PSBmb3JtYXR0ZW1heERhdGUpIHtcbiAgICAgICAgICBpZiAodGhpcy50aW1lRm9ybWF0ID09PSAnMTInKSB7XG4gICAgICAgICAgICB0aGlzLm1pblRpbWUgPSAnMTI6MDAgYW0nO1xuICAgICAgICAgICAgdGhpcy5tYXhUaW1lID0gJzEyOjAwIHBtJztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5taW5UaW1lID0gJzAwOjAwJztcbiAgICAgICAgICAgIHRoaXMubWF4VGltZSA9ICcyMzowMCc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGZvcm1hdHRlZFRpbWUgPSB0aGlzLnNlbGVjdGVkVGltZSB8fCAnJzsgIC8vIElmIHNlbGVjdGVkVGltZSBpcyBudWxsIG9yIHVuZGVmaW5lZCwgdXNlIGVtcHR5IHN0cmluZ1xuICAgICAgICBpZiAoZm9ybWF0dGVkRGF0ZSAmJiBmb3JtYXR0ZWRUaW1lKSB7XG4gICAgICAgICAgcmV0dXJuIGAke2Zvcm1hdHRlZERhdGV9LCR7Zm9ybWF0dGVkVGltZX1gO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIGNhc2UgJ0RBVEVfUkFOR0UnOlxuXG4gICAgICAgIGNvbnN0IGRhdGVzID0gZGF0ZSBhcyB1bmtub3duIGFzIERhdGVbXTtcblxuICAgICAgICAvLyBFbnN1cmUgZGF0ZXMgaXMgZGVmaW5lZCBhbmQgaXMgYW4gYXJyYXlcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZGF0ZXMpICYmIGRhdGVzLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oZGF0ZXNbMF0sIHRoaXMuRGF0ZWZvcm1hdCk7XG4gICAgICAgICAgY29uc3QgZW5kID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oZGF0ZXNbMV0sIHRoaXMuRGF0ZWZvcm1hdCk7XG4gICAgICAgICAgcmV0dXJuIGAke3N0YXJ0fSAtICR7ZW5kfWA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJyc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oZGF0ZSwgdGhpcy5EYXRlZm9ybWF0KSB8fCAnJztcbiAgICB9XG4gIH1cblxuICB2YWxpZGF0ZURhdGVPbmx5KCkge1xuICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IGZhbHNlO1xuICAgIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2UgPSAnJztcbiAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdGhpcy5zZWxlY3RlZERhdGUpIHtcbiAgICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IHRydWU7XG4gICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gJ1RoaXMgaXMgYSByZXF1aXJlZCBxdWVzdGlvbic7XG4gICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb24gPSBmYWxzZTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb24gPSB0cnVlO1xuICAgIH1cbiAgfVxuICB2YWxpZGF0ZVRpbWVPbmx5KCkge1xuICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IGZhbHNlO1xuICAgIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2UgPSAnJztcbiAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdGhpcy5zZWxlY3RlZFRpbWUpIHtcbiAgICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IHRydWU7XG4gICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gJ1RoaXMgaXMgYSByZXF1aXJlZCBxdWVzdGlvbic7O1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gZmFsc2U7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gdHJ1ZTtcbiAgICB9XG4gIH1cbiAgdmFsaWRhdGVEYXRlUmFuZ2UoKSB7XG4gICAgdGhpcy52YWxpZGF0aW9uRmFpbGVkID0gZmFsc2U7XG4gICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9ICcnO1xuICAgIGlmICh0aGlzLnJlcXVpcmVkICYmICF0aGlzLnNlbGVjdGVkRGF0ZVJhbmdlKSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSB0cnVlO1xuICAgICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9ICdUaGlzIGlzIGEgcmVxdWlyZWQgcXVlc3Rpb24nO1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gZmFsc2U7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gdHJ1ZTtcbiAgICB9XG4gIH1cbiAgdmFsaWRhdGVEYXRlQW5kVGltZSgpIHtcbiAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSBmYWxzZTtcbiAgICB0aGlzLnRpbWVWYWxpZGF0aW9uRmFpbGVkID0gZmFsc2U7XG4gICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9ICcnO1xuICAgIGlmICh0aGlzLnJlcXVpcmVkICYmICF0aGlzLnNlbGVjdGVkRGF0ZUFuZFRpbWUpIHtcbiAgICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IHRydWU7XG4gICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gJ1RoaXMgaXMgYSByZXF1aXJlZCBxdWVzdGlvbic7XG4gICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb24gPSBmYWxzZTtcbiAgICB9XG4gICAgZWxzZSBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdGhpcy5zZWxlY3RlZFRpbWUpIHtcbiAgICAgIHRoaXMudGltZVZhbGlkYXRpb25GYWlsZWQgPSB0cnVlO1xuICAgICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9ICdUaGlzIGlzIGEgcmVxdWlyZWQgcXVlc3Rpb24nO1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gZmFsc2U7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBjb252ZXJ0VG9JU09EYXRlKFxuICAgIGRhdGVJbnB1dDogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZFxuICApOiBEYXRlIHwgbnVsbCB7XG5cblxuICAgIGlmICghZGF0ZUlucHV0KSB7XG5cblxuICAgICAgcmV0dXJuIG51bGw7IC8vIFJldHVybiBudWxsIGlmIGRhdGVJbnB1dCBpcyBudWxsLCB1bmRlZmluZWQsIG9yIGFueSBmYWxzeSB2YWx1ZVxuICAgIH1cblxuICAgIGxldCB5ZWFyLCBtb250aCwgZGF5O1xuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZGF0ZUlucHV0KSkge1xuICAgICAgLy8gRXh0cmFjdCB5ZWFyLCBtb250aCwgYW5kIGRheSBmcm9tIGFycmF5IGlucHV0XG4gICAgICBbeWVhciwgbW9udGgsIGRheV0gPSBkYXRlSW5wdXQ7XG5cbiAgICAgIC8vIFZhbGlkYXRlIHRoZSBhcnJheSBmb3JtYXRcbiAgICAgIGlmIChcbiAgICAgICAgdHlwZW9mIHllYXIgIT09ICdudW1iZXInIHx8XG4gICAgICAgIHR5cGVvZiBtb250aCAhPT0gJ251bWJlcicgfHxcbiAgICAgICAgdHlwZW9mIGRheSAhPT0gJ251bWJlcicgfHxcbiAgICAgICAgaXNOYU4oeWVhcikgfHxcbiAgICAgICAgaXNOYU4obW9udGgpIHx8XG4gICAgICAgIGlzTmFOKGRheSkgfHxcbiAgICAgICAgIU51bWJlci5pc0ludGVnZXIoeWVhcikgfHxcbiAgICAgICAgIU51bWJlci5pc0ludGVnZXIobW9udGgpIHx8XG4gICAgICAgICFOdW1iZXIuaXNJbnRlZ2VyKGRheSkgfHxcbiAgICAgICAgbW9udGggPCAxIHx8XG4gICAgICAgIG1vbnRoID4gMTIgfHxcbiAgICAgICAgZGF5IDwgMSB8fFxuICAgICAgICBkYXkgPiAzMVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIGRhdGVJbnB1dCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIC8vIENoZWNrIGlmIHRoZSBzdHJpbmcgbWF0Y2hlcyB0aGUgWVlZWS1NTS1ERCBmb3JtYXRcbiAgICAgIGNvbnN0IGRhdGVQYXJ0cyA9IGRhdGVJbnB1dC5zcGxpdCgnLScpO1xuICAgICAgaWYgKGRhdGVQYXJ0cy5sZW5ndGggIT09IDMpIHJldHVybiBudWxsO1xuXG4gICAgICBbeWVhciwgbW9udGgsIGRheV0gPSBkYXRlUGFydHMubWFwKE51bWJlcik7XG5cbiAgICAgIC8vIFZhbGlkYXRlIHRoZSBwYXJzZWQgcGFydHNcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oeWVhcikgfHxcbiAgICAgICAgaXNOYU4obW9udGgpIHx8XG4gICAgICAgIGlzTmFOKGRheSkgfHxcbiAgICAgICAgIU51bWJlci5pc0ludGVnZXIoeWVhcikgfHxcbiAgICAgICAgIU51bWJlci5pc0ludGVnZXIobW9udGgpIHx8XG4gICAgICAgICFOdW1iZXIuaXNJbnRlZ2VyKGRheSkgfHxcbiAgICAgICAgbW9udGggPCAxIHx8XG4gICAgICAgIG1vbnRoID4gMTIgfHxcbiAgICAgICAgZGF5IDwgMSB8fFxuICAgICAgICBkYXkgPiAzMVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbDsgLy8gVW5zdXBwb3J0ZWQgaW5wdXQgdHlwZVxuICAgIH1cblxuICAgIC8vIENyZWF0ZSBhIERhdGUgb2JqZWN0IChtb250aCBpcyAwLWJhc2VkLCBzbyBzdWJ0cmFjdCAxKVxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCAtIDEsIGRheSk7XG5cbiAgICAvLyBWZXJpZnkgaWYgdGhlIERhdGUgb2JqZWN0IG1hdGNoZXMgdGhlIHByb3ZpZGVkIHllYXIsIG1vbnRoLCBhbmQgZGF5XG4gICAgaWYgKFxuICAgICAgZGF0ZS5nZXRGdWxsWWVhcigpICE9PSB5ZWFyIHx8XG4gICAgICBkYXRlLmdldE1vbnRoKCkgIT09IG1vbnRoIC0gMSB8fFxuICAgICAgZGF0ZS5nZXREYXRlKCkgIT09IGRheVxuICAgICkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRhdGU7XG4gIH1cblxufVxuIiwiPGRpdiAgY2xhc3M9XCJtYi01IHB4LTNcIj5cbiAgPGRpdiBjbGFzcz1cImlucHV0LXdyYXBwZXIgbWItMlwiPlxuICAgIDxkaXYgW2lubmVySFRNTF09XCJxdWVzdGlvbi5xdWVzdGlvbk51bWJlclwiPjwvZGl2PlxuICAgICZuYnNwOyZuYnNwOyA8bGFiZWw+e3sgcXVlc3Rpb24ucXVlc3Rpb24gfX08L2xhYmVsXG4gICAgPiZuYnNwO1xuICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kYW5nZXJcIiAqbmdJZj1cInJlcXVpcmVkXCI+Kjwvc3Bhbj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInN2Zy13cmFwcGVyIG1iLTIgaGludEljb25cIlxuICAgICAgW2F0dHIuZGF0YS10aXRsZV09XCJoaW50XCJcbiAgICAgICpuZ0lmPVwiaGludFwiXG4gICAgPlxuICAgICAgPHN2Z1xuICAgICAgICBjbGFzcz1cImhpbnRTdmdcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDMwIDMwXCJcbiAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICA+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZmlsbC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgZD1cIk0xNSAyNi4yNVYyNi4yNUM4Ljc4NjI1IDI2LjI1IDMuNzUgMjEuMjEzOCAzLjc1IDE1VjE1QzMuNzUgOC43ODYyNSA4Ljc4NjI1IDMuNzUgMTUgMy43NVYzLjc1QzIxLjIxMzggMy43NSAyNi4yNSA4Ljc4NjI1IDI2LjI1IDE1VjE1QzI2LjI1IDIxLjIxMzggMjEuMjEzOCAyNi4yNSAxNSAyNi4yNVpcIlxuICAgICAgICAgIHN0cm9rZT1cIiMzMjMyMzJcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTUgMTYuNTYyM1YxNi4yNDk4QzE1IDE1LjIyODUgMTUuNjMxMiAxNC42NzQ4IDE2LjI2MzcgMTQuMjQ5OEMxNi44ODEyIDEzLjgzMzUgMTcuNSAxMy4yOTEgMTcuNSAxMi4yOTFDMTcuNSAxMC45MDk4IDE2LjM4MTMgOS43OTEwMiAxNSA5Ljc5MTAyQzEzLjYxODcgOS43OTEwMiAxMi41IDEwLjkwOTggMTIuNSAxMi4yOTFcIlxuICAgICAgICAgIHN0cm9rZT1cIiMzMjMyMzJcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTQuOTk4OCAyMEMxNC44MjYzIDIwIDE0LjY4NjMgMjAuMTQgMTQuNjg3NSAyMC4zMTI1QzE0LjY4NzUgMjAuNDg1IDE0LjgyNzUgMjAuNjI1IDE1IDIwLjYyNUMxNS4xNzI1IDIwLjYyNSAxNS4zMTI1IDIwLjQ4NSAxNS4zMTI1IDIwLjMxMjVDMTUuMzEyNSAyMC4xNCAxNS4xNzI1IDIwIDE0Ljk5ODggMjBcIlxuICAgICAgICAgIHN0cm9rZT1cIiMzMjMyMzJcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgPC9zdmc+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0ZVR5cGUgPT09ICdEQVRFX09OTFknXCI+XG4gICAgPCEtLSBEYXRlIG9ubHkgcGlja2VyIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBoZWlnaHRcIlxuICAgICAgICAjZGF0ZXBpY2tlcllNRD1cImJzRGF0ZXBpY2tlclwiXG4gICAgICAgIGJzRGF0ZXBpY2tlclxuICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlID8gbWluRGF0ZSA6IHVuZGVmaW5lZFwiXG4gICAgICAgIFttYXhEYXRlXT1cIm1heERhdGUgPyBtYXhEYXRlIDogdW5kZWZpbmVkXCJcbiAgICAgICAgW2JzQ29uZmlnXT1cInsgZGF0ZUlucHV0Rm9ybWF0OiBmb3JtYXQsIGNvbnRhaW5lckNsYXNzOiAndGhlbWUtY3VzdG9tJyB9XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZERhdGVcIlxuICAgICAgICAoYmx1cik9XCJ2YWxpZGF0ZUZpZWxkKClcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWxpZGF0ZUZpZWxkKClcIlxuICAgICAgICBbY2xhc3MuaW52YWxpZF09XCJ2YWxpZGF0aW9uRmFpbGVkXCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWxlY3QgZGF0ZVwiXG4gICAgICAvPlxuICAgICAgPGlcbiAgICAgICAgY2xhc3M9XCJmYS1zb2xpZCBmYS1jYWxlbmRhci1kYXlzIGNhbGVuZGFyLWljb24gdGV4dC1wcmltYXJ5IGZzLTVcIlxuICAgICAgICAoY2xpY2spPVwib3BlbkRhdGVQaWNrZXIoKVwiXG4gICAgICA+PC9pPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJ2YWxpZGF0aW9uRmFpbGVkXCIgY2xhc3M9XCJ0ZXh0LWRhbmdlciBtdC0yXCI+XG4gICAgICA8c3ZnXG4gICAgICAgIGNsYXNzPVwidmFsaWRhdGlvblN2Z1wiXG4gICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgID5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTEyLjAwMSAxNi43NUMxMi4xMzkgMTYuNzUgMTIuMjUxIDE2LjYzOCAxMi4yNSAxNi41QzEyLjI1IDE2LjM2MiAxMi4xMzggMTYuMjUgMTIgMTYuMjVDMTEuODYyIDE2LjI1IDExLjc1IDE2LjM2MiAxMS43NSAxNi41QzExLjc1IDE2LjYzOCAxMS44NjIgMTYuNzUgMTIuMDAxIDE2Ljc1XCJcbiAgICAgICAgICBzdHJva2U9XCJ3aGl0ZVwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZmlsbC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgZD1cIk0xMiAyMUM3LjAyOSAyMSAzIDE2Ljk3MSAzIDEyQzMgNy4wMjkgNy4wMjkgMyAxMiAzQzE2Ljk3MSAzIDIxIDcuMDI5IDIxIDEyQzIxIDE2Ljk3MSAxNi45NzEgMjEgMTIgMjFaXCJcbiAgICAgICAgICBmaWxsPVwiI0ZGMDAwMFwiXG4gICAgICAgICAgc3Ryb2tlPVwiI0ZGMDAwMFwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0xMiAxMi43NUwxMiA3Ljc1XCJcbiAgICAgICAgICBzdHJva2U9XCJ3aGl0ZVwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTZcIiByPVwiMVwiIGZpbGw9XCJ3aGl0ZVwiIC8+XG4gICAgICA8L3N2Zz5cbiAgICAgIHt7IHZhbGlkYXRpb25NZXNzYWdlIH19XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJkYXRlVHlwZSA9PT0gJ1RJTUVfT05MWSdcIj5cbiAgICA8IS0tIFRpbWUgcGlja2VyIC0tPlxuXG5cbjxkaXYgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgaGVpZ2h0IGFwcGVhcmFuY2VJbnB1dCBtdC0zXCJcbiAgICAgIGFyaWEtbGFiZWw9XCJTZWxlY3QgdGltZVwiXG4gICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdCB0aW1lXCJcbiAgICAgIHJlYWRvbmx5XG4gICAgICBbZm9ybWF0XT1cInRpbWVGb3JtYXQ9PT0nMjQnPzI0OjEyXCJcbiAgICAgIFtuZ3hUaW1lcGlja2VyXT1cImZ1bGxUaW1lM1wiXG4gICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkVGltZVwiXG4gICAgICBbbWF4XT1cIm1heFRpbWVcIlxuICAgICAgW21pbl09XCJtaW5UaW1lXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbGlkYXRlRmllbGQoKVwiXG4gICAgICBbY2xhc3MuaW52YWxpZF09XCJ2YWxpZGF0aW9uRmFpbGVkXCJcbiAgLz5cbiAgXG4gIDxpXG4gIGlkPVwic3RhcnREYXRlSWNvblwiXG4gIGNsYXNzPVwiZmEtc29saWQgZmEtY2xvY2sgdGV4dC1wcmltYXJ5IGZzLTYgY2xvY2staWNvblwiXG4gIChjbGljayk9XCJmdWxsVGltZTMub3BlbigpXCJcbiAgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXI7XCJcbj48L2k+XG4gIDxuZ3gtbWF0ZXJpYWwtdGltZXBpY2tlciAjZnVsbFRpbWUzPjwvbmd4LW1hdGVyaWFsLXRpbWVwaWNrZXI+XG48L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwidmFsaWRhdGlvbkZhaWxlZFwiIGNsYXNzPVwidGV4dC1kYW5nZXIgbXQtMlwiPlxuICAgICAgPHN2Z1xuICAgICAgICBjbGFzcz1cInZhbGlkYXRpb25TdmdcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICA+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0xMi4wMDEgMTYuNzVDMTIuMTM5IDE2Ljc1IDEyLjI1MSAxNi42MzggMTIuMjUgMTYuNUMxMi4yNSAxNi4zNjIgMTIuMTM4IDE2LjI1IDEyIDE2LjI1QzExLjg2MiAxNi4yNSAxMS43NSAxNi4zNjIgMTEuNzUgMTYuNUMxMS43NSAxNi42MzggMTEuODYyIDE2Ljc1IDEyLjAwMSAxNi43NVwiXG4gICAgICAgICAgc3Ryb2tlPVwid2hpdGVcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGZpbGwtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGQ9XCJNMTIgMjFDNy4wMjkgMjEgMyAxNi45NzEgMyAxMkMzIDcuMDI5IDcuMDI5IDMgMTIgM0MxNi45NzEgMyAyMSA3LjAyOSAyMSAxMkMyMSAxNi45NzEgMTYuOTcxIDIxIDEyIDIxWlwiXG4gICAgICAgICAgZmlsbD1cIiNGRjAwMDBcIlxuICAgICAgICAgIHN0cm9rZT1cIiNGRjAwMDBcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTIgMTIuNzVMMTIgNy43NVwiXG4gICAgICAgICAgc3Ryb2tlPVwid2hpdGVcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjE2XCIgcj1cIjFcIiBmaWxsPVwid2hpdGVcIiAvPlxuICAgICAgPC9zdmc+XG4gICAgICB7eyB2YWxpZGF0aW9uTWVzc2FnZSB9fVxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0ZVR5cGUgPT09ICdEQVRFX0FORF9USU1FJ1wiPlxuICAgIDwhLS0gRGF0ZSBhbmQgdGltZSBwaWNrZXIgLS0+XG4gICAgPGRpdiBjbGFzcz1cImlucHV0LWNvbnRhaW5lclwiPlxuICAgICAgPGlucHV0XG4gICAgICAgICNkYXRlQW5kVGltZVBpY2tlcj1cImJzRGF0ZXBpY2tlclwiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgaGVpZ2h0XCJcbiAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZSA/IG1pbkRhdGUgOiB1bmRlZmluZWRcIlxuICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlID8gbWF4RGF0ZSA6IHVuZGVmaW5lZFwiXG4gICAgICAgIFtic0NvbmZpZ109XCJ7XG4gICAgICAgICAgZGF0ZUlucHV0Rm9ybWF0OiBmb3JtYXQsIGNvbnRhaW5lckNsYXNzOiAndGhlbWUtY3VzdG9tJyBcbiAgICAgICAgfVwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwiU2VsZWN0IGRhdGVcIlxuICAgICAgICBic0RhdGVwaWNrZXJcbiAgICAgICAgW2NsYXNzLmludmFsaWRdPVwidmFsaWRhdGlvbkZhaWxlZFwiXG4gICAgICAgIFsobmdNb2RlbCldPVwic2VsZWN0ZWREYXRlQW5kVGltZVwiXG4gICAgICAgIChibHVyKT1cInZhbGlkYXRlRmllbGQoKVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbGlkYXRlRmllbGQoKVwiXG4gICAgICAvPlxuICAgICAgPGlcbiAgICAgICAgY2xhc3M9XCJmYS1zb2xpZCBmYS1jYWxlbmRhci1kYXlzIGNhbGVuZGFyLWljb24gdGV4dC1wcmltYXJ5IGZzLTVcIlxuICAgICAgICAoY2xpY2spPVwib3BlbkRhdGVBbmRUaW1lUGlja2VyKClcIlxuICAgICAgPjwvaT5cbiAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIiAqbmdJZj1cInNlbGVjdGVkRGF0ZUFuZFRpbWUgJiYgc2VsZWN0ZWREYXRlQW5kVGltZSAhPSBudWxsXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICBcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgaGVpZ2h0IGFwcGVhcmFuY2VJbnB1dCBtdC0zXCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIlNlbGVjdCB0aW1lXCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWxlY3QgdGltZVwiXG4gICAgICAgIHJlYWRvbmx5XG4gICAgICAgIFtmb3JtYXRdPVwidGltZUZvcm1hdD09PScyNCc/MjQ6MTJcIlxuICAgICAgICBbbmd4VGltZXBpY2tlcl09XCJmdWxsVGltZTRcIlxuICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkVGltZVwiXG4gICAgICAgIFttYXhdPVwibWF4VGltZVwiXG4gICAgICAgIFttaW5dPVwibWluVGltZVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbGlkYXRlRmllbGQoKVwiXG4gICAgICAgIChmb2N1cyk9XCJjbG9zZURhdGVwaWNrZXIoKVwiXG4gICAgICAgIFtjbGFzcy5pbnZhbGlkXT1cInRpbWVWYWxpZGF0aW9uRmFpbGVkXCJcbiAgICAvPlxuICAgIFxuICAgIDxpXG4gICAgaWQ9XCJzdGFydERhdGVJY29uXCJcbiAgICBjbGFzcz1cImZhLXNvbGlkIGZhLWNsb2NrIHRleHQtcHJpbWFyeSBmcy02IGNsb2NrLWljb25cIlxuICAgIChjbGljayk9XCJmdWxsVGltZTQub3BlbigpXCJcbiAgICBzdHlsZT1cImN1cnNvcjogcG9pbnRlcjtcIlxuICA+PC9pPlxuICAgIDxuZ3gtbWF0ZXJpYWwtdGltZXBpY2tlciAjZnVsbFRpbWU0Pjwvbmd4LW1hdGVyaWFsLXRpbWVwaWNrZXI+XG4gIDwvZGl2PlxuICAgXG4gICAgPGRpdiAqbmdJZj1cInZhbGlkYXRpb25GYWlsZWQgfHwgdGltZVZhbGlkYXRpb25GYWlsZWRcIiBjbGFzcz1cInRleHQtZGFuZ2VyIG10LTJcIj5cbiAgICAgIDxzdmdcbiAgICAgICAgY2xhc3M9XCJ2YWxpZGF0aW9uU3ZnXCJcbiAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTIuMDAxIDE2Ljc1QzEyLjEzOSAxNi43NSAxMi4yNTEgMTYuNjM4IDEyLjI1IDE2LjVDMTIuMjUgMTYuMzYyIDEyLjEzOCAxNi4yNSAxMiAxNi4yNUMxMS44NjIgMTYuMjUgMTEuNzUgMTYuMzYyIDExLjc1IDE2LjVDMTEuNzUgMTYuNjM4IDExLjg2MiAxNi43NSAxMi4wMDEgMTYuNzVcIlxuICAgICAgICAgIHN0cm9rZT1cIndoaXRlXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBmaWxsLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBjbGlwLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBkPVwiTTEyIDIxQzcuMDI5IDIxIDMgMTYuOTcxIDMgMTJDMyA3LjAyOSA3LjAyOSAzIDEyIDNDMTYuOTcxIDMgMjEgNy4wMjkgMjEgMTJDMjEgMTYuOTcxIDE2Ljk3MSAyMSAxMiAyMVpcIlxuICAgICAgICAgIGZpbGw9XCIjRkYwMDAwXCJcbiAgICAgICAgICBzdHJva2U9XCIjRkYwMDAwXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTEyIDEyLjc1TDEyIDcuNzVcIlxuICAgICAgICAgIHN0cm9rZT1cIndoaXRlXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxNlwiIHI9XCIxXCIgZmlsbD1cIndoaXRlXCIgLz5cbiAgICAgIDwvc3ZnPlxuICAgICAge3sgdmFsaWRhdGlvbk1lc3NhZ2UgfX1cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGVUeXBlID09PSAnREFURV9SQU5HRSdcIj5cbiAgICA8IS0tIERhdGUgcmFuZ2UgcGlja2VyIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGhlaWdodFwiXG4gICAgICAgICNkYXRlcmFuZ2VwaWNrZXI9XCJic0RhdGVyYW5nZXBpY2tlclwiXG4gICAgICAgIGJzRGF0ZXJhbmdlcGlja2VyXG4gICAgICAgIHBsYWNlaG9sZGVyPVwiU2VsZWN0IGRhdGVcIlxuICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlID8gbWluRGF0ZSA6IHVuZGVmaW5lZFwiXG4gICAgICAgIFttYXhEYXRlXT1cIm1heERhdGUgPyBtYXhEYXRlIDogdW5kZWZpbmVkXCJcbiAgICAgICAgW2JzQ29uZmlnXT1cIntcbiAgICAgICAgICByYW5nZUlucHV0Rm9ybWF0OiBmb3JtYXQsXG4gICAgICAgICAgZGF0ZUlucHV0Rm9ybWF0OiBmb3JtYXQsIGNvbnRhaW5lckNsYXNzOiAndGhlbWUtY3VzdG9tJyBcbiAgICAgICAgfVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwic2VsZWN0ZWREYXRlUmFuZ2VcIlxuICAgICAgICAoYmx1cik9XCJ2YWxpZGF0ZUZpZWxkKClcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWxpZGF0ZUZpZWxkKClcIlxuICAgICAgICBbY2xhc3MuaW52YWxpZF09XCJ2YWxpZGF0aW9uRmFpbGVkXCJcbiAgICAgIC8+XG4gICAgICA8aVxuICAgICAgICBjbGFzcz1cImZhLXNvbGlkIGZhLWNhbGVuZGFyLWRheXMgY2FsZW5kYXItaWNvbiB0ZXh0LXByaW1hcnkgZnMtNVwiXG4gICAgICAgIChjbGljayk9XCJvcGVuRGF0ZVJhbmdlUGlja2VyKClcIlxuICAgICAgPjwvaT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwidmFsaWRhdGlvbkZhaWxlZFwiIGNsYXNzPVwidGV4dC1kYW5nZXIgbXQtMlwiPlxuICAgICAgPHN2Z1xuICAgICAgICBjbGFzcz1cInZhbGlkYXRpb25TdmdcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICA+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0xMi4wMDEgMTYuNzVDMTIuMTM5IDE2Ljc1IDEyLjI1MSAxNi42MzggMTIuMjUgMTYuNUMxMi4yNSAxNi4zNjIgMTIuMTM4IDE2LjI1IDEyIDE2LjI1QzExLjg2MiAxNi4yNSAxMS43NSAxNi4zNjIgMTEuNzUgMTYuNUMxMS43NSAxNi42MzggMTEuODYyIDE2Ljc1IDEyLjAwMSAxNi43NVwiXG4gICAgICAgICAgc3Ryb2tlPVwid2hpdGVcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGZpbGwtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGQ9XCJNMTIgMjFDNy4wMjkgMjEgMyAxNi45NzEgMyAxMkMzIDcuMDI5IDcuMDI5IDMgMTIgM0MxNi45NzEgMyAyMSA3LjAyOSAyMSAxMkMyMSAxNi45NzEgMTYuOTcxIDIxIDEyIDIxWlwiXG4gICAgICAgICAgZmlsbD1cIiNGRjAwMDBcIlxuICAgICAgICAgIHN0cm9rZT1cIiNGRjAwMDBcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTIgMTIuNzVMMTIgNy43NVwiXG4gICAgICAgICAgc3Ryb2tlPVwid2hpdGVcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjE2XCIgcj1cIjFcIiBmaWxsPVwid2hpdGVcIiAvPlxuICAgICAgPC9zdmc+XG4gICAgICB7eyB2YWxpZGF0aW9uTWVzc2FnZSB9fVxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|
|
408
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL2RhdGUtdGltZS1maWVsZHMvZGF0ZS10aW1lLWZpZWxkcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL2RhdGUtdGltZS1maWVsZHMvZGF0ZS10aW1lLWZpZWxkcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFjL0UsTUFBTSxPQUFPLHVCQUF1QjtJQW9DbEMsWUFBb0IsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQW5DdEMsYUFBUSxHQUFnQztZQUN0QyxjQUFjLEVBQUUsY0FBYztZQUM5QixVQUFVLEVBQUUsSUFBSTtZQUNoQixnQkFBZ0IsRUFBRSxJQUFJO1lBQ3RCLGVBQWUsRUFBRSxLQUFLO1NBQ3ZCLENBQUM7UUFFTyxhQUFRLEdBQVEsRUFBRSxDQUFDO1FBQzVCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUNsQixVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFDckIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFDcEIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBQ3hCLGtCQUFhLEdBQVcsRUFBRSxD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WnZCLGttVkFxVEE7OzRGRHRTYSx1QkFBdUI7a0JBUG5DLFNBQVM7K0JBQ0Usc0JBQXNCLGFBR3JCLENBQUMsUUFBUSxDQUFDLGlCQUNOLGlCQUFpQixDQUFDLElBQUk7K0ZBVTVCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBeUJzQixVQUFVO3NCQUFyQyxTQUFTO3VCQUFDLGVBQWU7Z0JBQ0ksZUFBZTtzQkFBNUMsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBQ0ksaUJBQWlCO3NCQUFoRCxTQUFTO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJzRGF0ZXBpY2tlckNvbmZpZyxcbiAgQnNEYXRlcGlja2VyRGlyZWN0aXZlLFxufSBmcm9tICduZ3gtYm9vdHN0cmFwL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgTmd4TWF0ZXJpYWxUaW1lcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnbmd4LW1hdGVyaWFsLXRpbWVwaWNrZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItZGF0ZS10aW1lLWZpZWxkcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlLXRpbWUtZmllbGRzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZS10aW1lLWZpZWxkcy5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtEYXRlUGlwZV0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZVRpbWVGaWVsZHNDb21wb25lbnQge1xuICBic0NvbmZpZzogUGFydGlhbDxCc0RhdGVwaWNrZXJDb25maWc+ID0ge1xuICAgIGNvbnRhaW5lckNsYXNzOiAndGhlbWUtY3VzdG9tJyxcbiAgICBpc0FuaW1hdGVkOiB0cnVlLFxuICAgIGFkYXB0aXZlUG9zaXRpb246IHRydWUsXG4gICAgc2hvd1dlZWtOdW1iZXJzOiBmYWxzZSxcbiAgfTtcblxuICBASW5wdXQoKSBxdWVzdGlvbjogYW55ID0ge307XG4gIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIGhpbnQ6IHN0cmluZyA9ICcnO1xuICBjb3VudDogbnVtYmVyID0gMDtcbiAgbWluVGltZTogc3RyaW5nID0gJyc7XG4gIG1heFRpbWU6IHN0cmluZyA9ICcnO1xuICBkYXRlVHlwZTogc3RyaW5nID0gJyc7XG4gIGZvcm1hdDogc3RyaW5nID0gJyc7XG4gIERhdGVmb3JtYXQ6IHN0cmluZyA9ICcnO1xuICB0aW1lRm9ybWF0OiBzdHJpbmcgPSAnJztcbiAgbWluRGF0ZU9wdGlvbjogc3RyaW5nID0gJyc7XG4gIG1pbkRhdGU6IERhdGUgfCB1bmRlZmluZWQ7XG4gIG1heERhdGVPcHRpb246IHN0cmluZyA9ICcnO1xuICBtYXhEYXRlOiBEYXRlIHwgdW5kZWZpbmVkO1xuICB0b2RheURhdGU6IERhdGUgPSBuZXcgRGF0ZSgpO1xuICBzZWxlY3RlZERhdGU6IERhdGUgfCBudWxsID0gbnVsbDtcbiAgc2VsZWN0ZWRUaW1lOiBzdHJpbmcgPSAnJztcbiAgc2VsZWN0ZWREYXRlUmFuZ2U6IHN0cmluZyA9ICcnO1xuICBzZWxlY3RlZERhdGVBbmRUaW1lOiBEYXRlIHwgbnVsbCA9IG51bGw7XG4gIHZhbGlkYXRpb25GYWlsZWQhOiBib29sZWFuO1xuICB0aW1lVmFsaWRhdGlvbkZhaWxlZCE6IGJvb2xlYW47XG4gIHZhbGlkYXRpb25NZXNzYWdlOiBzdHJpbmcgPSAnJztcbiAgbWF4VGltZU9wdGlvbjogc3RyaW5nID0gJyc7XG4gIG1pblRpbWVPcHRpb246IHN0cmluZyA9ICcnO1xuXG4gIEBWaWV3Q2hpbGQoJ2RhdGVwaWNrZXJZTUQnKSBkYXRlcGlja2VyITogQnNEYXRlcGlja2VyRGlyZWN0aXZlO1xuICBAVmlld0NoaWxkKCdkYXRlcmFuZ2VwaWNrZXInKSBkYXRlUmFuZ2VQaWNrZXIhOiBCc0RhdGVwaWNrZXJEaXJlY3RpdmU7XG4gIEBWaWV3Q2hpbGQoJ2RhdGVBbmRUaW1lUGlja2VyJykgZGF0ZUFuZFRpbWVQaWNrZXIhOiBCc0RhdGVwaWNrZXJEaXJlY3RpdmU7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnZhbHVlQXNzaWduZWQoKTtcbiAgfVxuXG4gIHZhbHVlQXNzaWduZWQoKSB7XG5cbiAgICB0aGlzLmNvdW50ID0gdGhpcy5xdWVzdGlvbi5jb3VudDtcbiAgICB0aGlzLnJlcXVpcmVkID0gdGhpcy5xdWVzdGlvbi5yZXF1aXJlZDtcbiAgICB0aGlzLmhpbnQgPSB0aGlzLnF1ZXN0aW9uLmhpbnQ7XG4gICAgdGhpcy5kYXRlVHlwZSA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5kYXRlVHlwZTtcbiAgICB0aGlzLm1pbkRhdGVPcHRpb24gPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LnZhbGlkYXRpb24ubWluRGF0ZU9wdGlvbjtcbiAgICB0aGlzLkRhdGVmb3JtYXQgPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LmFwcGVhcmFuY2UuZm9ybWF0LnJlcGxhY2UoL0REL2csICdkZCcpO1xuXG5cbiAgICB0aGlzLm1pbkRhdGUgPSB0aGlzLmdldE1pbkRhdGUoKTtcblxuXG4gICAgdGhpcy5tYXhEYXRlT3B0aW9uID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLm1heERhdGVPcHRpb247XG4gICAgdGhpcy5tYXhEYXRlID0gdGhpcy5nZXRNYXhEYXRlKCk7XG4gICAgdGhpcy5zZXREYXRlVGltZUZvcm1hdCgpO1xuICAgIGlmICh0aGlzLnF1ZXN0aW9uPy5hbnN3ZXIgJiYgKHRoaXMucXVlc3Rpb24/LmFuc3dlcikubGVuZ3RoID4gMClcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdGhpcy5xdWVzdGlvbj8uYW5zd2VyO1xuICAgIHRoaXMuc2VsZWN0ZWRUaW1lID0gdGhpcy5xdWVzdGlvbi5hbnN3ZXI7XG4gICAgaWYgKHRoaXMucXVlc3Rpb24/LmFuc3dlciAmJiAodGhpcy5xdWVzdGlvbj8uYW5zd2VyKS5sZW5ndGggPiAwKVxuICAgICAgdGhpcy5zZWxlY3RlZERhdGVBbmRUaW1lID0gbmV3IERhdGUodGhpcy5xdWVzdGlvbi5hbnN3ZXIpO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRlUmFuZ2UgPSB0aGlzLnF1ZXN0aW9uLmFuc3dlcjtcbiAgICB0aGlzLm1pblRpbWVPcHRpb24gPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LnZhbGlkYXRpb24ubWluVGltZU9wdGlvbjtcbiAgICB0aGlzLm1heFRpbWVPcHRpb24gPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LnZhbGlkYXRpb24ubWF4VGltZU9wdGlvbjtcbiAgICBpZiAodGhpcy5kYXRlVHlwZSAhPT0gJ0RBVEVfQU5EX1RJTUUnKSB7XG4gICAgICB0aGlzLm1pblRpbWUgPSB0aGlzLmdldE1pblRpbWUoKS50b1N0cmluZygpO1xuICAgICAgdGhpcy5tYXhUaW1lID0gdGhpcy5nZXRNYXhUaW1lKCkudG9TdHJpbmcoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZGF0ZVR5cGUgPT09ICdEQVRFX0FORF9USU1FJyAmJiB0aGlzLnF1ZXN0aW9uPy5hbnN3ZXIpIHtcbiAgICAgIGNvbnN0IGRhdGVUaW1lQXJyYXkgPSB0aGlzLnF1ZXN0aW9uLmFuc3dlclxuICAgICAgICA/IHRoaXMucXVlc3Rpb24uYW5zd2VyLnNwbGl0KCcsJylcbiAgICAgICAgOiBbXTsgLy8gRmFsbGJhY2sgdG8gYW4gZW1wdHkgYXJyYXkgaWYgYHRoaXMucXVlc3Rpb24uYW5zd2VyYCBpcyB1bmRlZmluZWRcblxuICAgICAgaWYgKGRhdGVUaW1lQXJyYXkubGVuZ3RoID09PSAyKSB7XG4gICAgICAgIGNvbnN0IGZldGNoZWREYXRlID0gZGF0ZVRpbWVBcnJheVswXS50cmltKCk7XG4gICAgICAgIGNvbnN0IGZldGNoZWRUaW1lID0gZGF0ZVRpbWVBcnJheVsxXS50cmltKCk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gZmV0Y2hlZERhdGU7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRUaW1lID0gZmV0Y2hlZFRpbWU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLnNlbGVjdGVkRGF0ZUFuZFRpbWUsIHRoaXMuRGF0ZWZvcm1hdCk7XG4gICAgICBjb25zdCBmb3JtYXR0ZW1pbkRhdGUgPSB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLm1pbkRhdGUsIHRoaXMuRGF0ZWZvcm1hdCk7XG4gICAgICBjb25zdCBmb3JtYXR0ZW1heERhdGUgPSB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLm1heERhdGUsIHRoaXMuRGF0ZWZvcm1hdCk7XG5cbiAgICAgIGlmIChmb3JtYXR0ZWREYXRlID09PSBmb3JtYXR0ZW1pbkRhdGUpIHtcbiAgICAgICAgdGhpcy5taW5UaW1lID0gdGhpcy5nZXRNaW5UaW1lKCkudG9TdHJpbmcoKTtcbiAgICAgICAgaWYgKHRoaXMudGltZUZvcm1hdCA9PT0gJzEyJykge1xuICAgICAgICAgIHRoaXMubWF4VGltZSA9ICcxMjowMCBwbSc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5tYXhUaW1lID0gJzIzOjU5JztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGZvcm1hdHRlZERhdGUgPT09IGZvcm1hdHRlbWF4RGF0ZSkge1xuICAgICAgICB0aGlzLm1heFRpbWUgPSB0aGlzLmdldE1heFRpbWUoKS50b1N0cmluZygpO1xuICAgICAgICBpZiAodGhpcy50aW1lRm9ybWF0ID09PSAnMTInKSB7XG4gICAgICAgICAgdGhpcy5taW5UaW1lID0gJzEyOjAwIGFtJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLm1pblRpbWUgPSAnMDA6MDAnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoZm9ybWF0dGVkRGF0ZSAhPT0gZm9ybWF0dGVtaW5EYXRlICYmIGZvcm1hdHRlZERhdGUgIT09IGZvcm1hdHRlbWF4RGF0ZSkge1xuICAgICAgICBpZiAodGhpcy50aW1lRm9ybWF0ID09PSAnMTInKSB7XG4gICAgICAgICAgdGhpcy5taW5UaW1lID0gJzEyOjAwIGFtJztcbiAgICAgICAgICB0aGlzLm1heFRpbWUgPSAnMTI6MDAgcG0nO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubWluVGltZSA9ICcwMDowMCc7XG4gICAgICAgICAgdGhpcy5tYXhUaW1lID0gJzIzOjU5JztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG5cbiAgICBpZiAoIXRoaXMubWluVGltZSB8fCB0aGlzLm1pblRpbWUubGVuZ3RoID09PSAwKSB7XG4gICAgICBpZiAodGhpcy50aW1lRm9ybWF0ID09PSAnMTInKSB7XG4gICAgICAgIHRoaXMubWluVGltZSA9ICcxMjowMCBhbSc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm1pblRpbWUgPSAnMDA6MDAnO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghdGhpcy5tYXhUaW1lIHx8IHRoaXMubWF4VGltZS5sZW5ndGggPT09IDApIHtcbiAgICAgIGlmICh0aGlzLnRpbWVGb3JtYXQgPT09ICcxMicpIHtcbiAgICAgICAgdGhpcy5tYXhUaW1lID0gJzExOjU5IHBtJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubWF4VGltZSA9ICcyMzo1OSc7XG4gICAgICB9XG4gICAgfVxuXG5cblxuICB9XG5cbiAgc2V0RGF0ZVRpbWVGb3JtYXQoKSB7XG4gICAgc3dpdGNoICh0aGlzLmRhdGVUeXBlKSB7XG4gICAgICBjYXNlICdEQVRFX09OTFknOlxuICAgICAgICB0aGlzLmZvcm1hdCA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5mb3JtYXQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnVElNRV9PTkxZJzpcbiAgICAgICAgdGhpcy50aW1lRm9ybWF0ID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLnRpbWVGb3JtYXQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnREFURV9BTkRfVElNRSc6XG4gICAgICAgIHRoaXMuZm9ybWF0ID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmZvcm1hdDtcbiAgICAgICAgdGhpcy50aW1lRm9ybWF0ID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLnRpbWVGb3JtYXQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnREFURV9SQU5HRSc6XG4gICAgICAgIHRoaXMuZm9ybWF0ID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmZvcm1hdDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLmZvcm1hdCA9ICdERC9NTS9ZWVlZJztcbiAgICB9XG4gIH1cblxuICBnZXRNaW5EYXRlKCk6IERhdGUgfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLm1pbkRhdGVPcHRpb24gPT09ICdDVVJSRU5UX0RBVEUnKSB7XG4gICAgICByZXR1cm4gdGhpcy50b2RheURhdGU7XG4gICAgfSBlbHNlIGlmICh0aGlzLm1pbkRhdGVPcHRpb24gPT09ICdDVVNUT00nKSB7XG4gICAgICByZXR1cm4gbmV3IERhdGUodGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLm1pbkRhdGUpO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkOyAvLyBSZXR1cm4gdW5kZWZpbmVkIGlmIG5vIHZhbGlkIG9wdGlvblxuICB9XG5cbiAgZ2V0TWF4RGF0ZSgpOiBEYXRlIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5tYXhEYXRlT3B0aW9uID09PSAnQ1VSUkVOVF9EQVRFJykge1xuICAgICAgcmV0dXJuIHRoaXMudG9kYXlEYXRlO1xuICAgIH0gZWxzZSBpZiAodGhpcy5tYXhEYXRlT3B0aW9uID09PSAnQ1VTVE9NJykge1xuICAgICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5tYXhEYXRlKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGdldE1pblRpbWUoKSB7XG4gICAgaWYgKHRoaXMubWluVGltZU9wdGlvbikge1xuICAgICAgY29uc3QgZm9ybWF0ID0gdGhpcy50aW1lRm9ybWF0ID09PSAnMjQnID8gJ0hIOm1tJyA6ICdoaDptbSBhJztcblxuICAgICAgaWYgKHRoaXMubWluVGltZU9wdGlvbiA9PT0gJ0NVUlJFTlRfVElNRScpIHtcbiAgICAgICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKG5vdywgZm9ybWF0KSB8fCAnJztcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5taW5UaW1lT3B0aW9uID09PSAnQ1VTVE9NJykge1xuICAgICAgICBjb25zdCBjdXN0b21UaW1lID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLm1pblRpbWU7XG4gICAgICAgIGNvbnN0IFtob3VycywgbWludXRlc10gPSBjdXN0b21UaW1lLnNwbGl0KCc6Jyk7IC8vIFNwbGl0IGJ5IGNvbG9uIHRvIGdldCBob3VycyBhbmQgbWludXRlc1xuXG4gICAgICAgIC8vIENyZWF0ZSBhIERhdGUgb2JqZWN0IHdpdGggYSBmaXhlZCBkYXRlIGFuZCBjdXN0b20gdGltZVxuICAgICAgICBjb25zdCBjdXN0b21EYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgY3VzdG9tRGF0ZS5zZXRIb3VycyhwYXJzZUludChob3VycywgMTApLCBwYXJzZUludChtaW51dGVzLCAxMCksIDAsIDApOyAvLyBTZXQgaG91cnMgYW5kIG1pbnV0ZXNcblxuICAgICAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oY3VzdG9tRGF0ZSwgZm9ybWF0KSB8fCAnJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFbnN1cmUgYSBkZWZhdWx0IHJldHVybiBpZiBubyBjb25kaXRpb24gaXMgbWV0XG4gICAgcmV0dXJuICcnO1xuICB9XG5cblxuICBnZXRNYXhUaW1lKCkge1xuICAgIGlmICh0aGlzLm1heFRpbWVPcHRpb24pIHtcbiAgICAgIGNvbnN0IGZvcm1hdCA9IHRoaXMudGltZUZvcm1hdCA9PT0gJzI0JyA/ICdISDptbScgOiAnaGg6bW0gYSc7XG4gICAgICBpZiAodGhpcy5tYXhUaW1lT3B0aW9uID09PSAnQ1VSUkVOVF9USU1FJykge1xuICAgICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0obm93LCBmb3JtYXQpIHx8ICcnO1xuICAgICAgfVxuICAgICAgZWxzZSBpZiAodGhpcy5tYXhUaW1lT3B0aW9uID09PSAnQ1VTVE9NJykge1xuICAgICAgICBjb25zdCBjdXN0b21UaW1lID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLm1heFRpbWU7XG4gICAgICAgIGNvbnN0IFtob3VycywgbWludXRlc10gPSBjdXN0b21UaW1lLnNwbGl0KCc6Jyk7IC8vIFNwbGl0IGJ5IGNvbG9uIHRvIGdldCBob3VycyBhbmQgbWludXRlc1xuXG4gICAgICAgIC8vIENyZWF0ZSBhIERhdGUgb2JqZWN0IHdpdGggYSBmaXhlZCBkYXRlIGFuZCBjdXN0b20gdGltZVxuICAgICAgICBjb25zdCBjdXN0b21EYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgY3VzdG9tRGF0ZS5zZXRIb3VycyhwYXJzZUludChob3VycywgMTApLCBwYXJzZUludChtaW51dGVzLCAxMCksIDAsIDApOyAvLyBTZXQgaG91cnMgYW5kIG1pbnV0ZXNcblxuICAgICAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oY3VzdG9tRGF0ZSwgZm9ybWF0KSB8fCAnJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBvcGVuRGF0ZVBpY2tlcigpIHsgICAgXG4gICAgdGhpcy5kYXRlcGlja2VyLnRvZ2dsZSgpO1xuICB9XG5cbiAgb3BlbkRhdGVSYW5nZVBpY2tlcigpIHtcbiAgICB0aGlzLmRhdGVSYW5nZVBpY2tlci50b2dnbGUoKTtcbiAgfVxuXG4gIG9wZW5EYXRlQW5kVGltZVBpY2tlcigpIHtcbiAgICB0aGlzLmRhdGVBbmRUaW1lUGlja2VyLnRvZ2dsZSgpO1xuICB9XG5cbiAgY2xvc2VEYXRlcGlja2VyKCkge1xuICAgIGlmICh0aGlzLmRhdGVBbmRUaW1lUGlja2VyKSB7XG4gICAgICB0aGlzLmRhdGVBbmRUaW1lUGlja2VyLmhpZGUoKTsgLy8gQ2xvc2UgdGhlIGRhdGVwaWNrZXJcbiAgICB9XG4gIH1cblxuXG5cblxuICB2YWxpZGF0ZUZpZWxkKCkge1xuICAgIGlmICh0aGlzLmRhdGVUeXBlID09PSAnREFURV9PTkxZJykge1xuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWREYXRlKSB7XG4gICAgICAgIHRoaXMucXVlc3Rpb24uYW5zd2VyID0gdGhpcy5mb3JtYXREYXRlKHRoaXMuc2VsZWN0ZWREYXRlLnRvU3RyaW5nKCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5xdWVzdGlvbi5hbnN3ZXIgPSAnJztcbiAgICAgIH1cblxuICAgICAgdGhpcy52YWxpZGF0ZURhdGVPbmx5KClcbiAgICB9XG4gICAgZWxzZSBpZiAodGhpcy5kYXRlVHlwZSA9PT0gJ1RJTUVfT05MWScpIHtcbiAgICAgIHRoaXMucXVlc3Rpb24uYW5zd2VyID0gU3RyaW5nKHRoaXMuc2VsZWN0ZWRUaW1lKTtcbiAgICAgIHRoaXMudmFsaWRhdGVUaW1lT25seSgpXG4gICAgfVxuICAgIGVsc2UgaWYgKHRoaXMuZGF0ZVR5cGUgPT09ICdEQVRFX0FORF9USU1FJykge1xuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWREYXRlQW5kVGltZSkge1xuICAgICAgICB0aGlzLnF1ZXN0aW9uLmFuc3dlciA9IHRoaXMuZm9ybWF0RGF0ZSh0aGlzLnNlbGVjdGVkRGF0ZUFuZFRpbWUudG9TdHJpbmcoKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnF1ZXN0aW9uLmFuc3dlciA9ICcnO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnZhbGlkYXRlRGF0ZUFuZFRpbWUoKVxuXG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5xdWVzdGlvbi5hbnN3ZXIgPSB0aGlzLmZvcm1hdERhdGUodGhpcy5zZWxlY3RlZERhdGVSYW5nZSk7XG4gICAgICB0aGlzLnZhbGlkYXRlRGF0ZVJhbmdlKClcbiAgICB9XG4gIH1cblxuICBmb3JtYXREYXRlKGRhdGU6IHN0cmluZyB8IERhdGUsIHR5cGU6IHN0cmluZyA9ICdkYXRlVGltZScpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAodGhpcy5kYXRlVHlwZSkge1xuICAgICAgY2FzZSAnREFURV9PTkxZJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHRoaXMuc2VsZWN0ZWREYXRlLCB0aGlzLkRhdGVmb3JtYXQpIHx8ICcnO1xuICAgICAgICBjYXNlICdEQVRFX0FORF9USU1FJzpcbiAgICAgICAgICBjb25zdCBmb3JtYXR0ZWREYXRlID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5zZWxlY3RlZERhdGVBbmRUaW1lLCB0aGlzLkRhdGVmb3JtYXQpO1xuICAgICAgICAgIGNvbnN0IGZvcm1hdHRlbWluRGF0ZSA9IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHRoaXMubWluRGF0ZSwgdGhpcy5EYXRlZm9ybWF0KTtcbiAgICAgICAgICBjb25zdCBmb3JtYXR0ZW1heERhdGUgPSB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLm1heERhdGUsIHRoaXMuRGF0ZWZvcm1hdCk7XG4gICAgICAgICAgXG4gICAgICAgICAgaWYgKGZvcm1hdHRlZERhdGUgPT09IGZvcm1hdHRlbWluRGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5taW5UaW1lID0gdGhpcy5nZXRNaW5UaW1lKCkudG9TdHJpbmcoKTtcbiAgICAgICAgICAgIHRoaXMubWF4VGltZSA9IHRoaXMudGltZUZvcm1hdCA9PT0gJzEyJyA/ICcxMTo1OSBwbScgOiAnMjM6NTknO1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICBpZiAoZm9ybWF0dGVkRGF0ZSA9PT0gZm9ybWF0dGVtYXhEYXRlKSB7XG4gICAgICAgICAgICB0aGlzLm1heFRpbWUgPSB0aGlzLmdldE1heFRpbWUoKS50b1N0cmluZygpO1xuICAgICAgICAgICAgdGhpcy5taW5UaW1lID0gdGhpcy50aW1lRm9ybWF0ID09PSAnMTInID8gJzEyOjAwIGFtJyA6ICcwMDowMCc7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIGlmIChmb3JtYXR0ZWREYXRlICE9PSBmb3JtYXR0ZW1pbkRhdGUgJiYgZm9ybWF0dGVkRGF0ZSAhPT0gZm9ybWF0dGVtYXhEYXRlKSB7XG4gICAgICAgICAgICB0aGlzLm1pblRpbWUgPSB0aGlzLnRpbWVGb3JtYXQgPT09ICcxMicgPyAnMTI6MDAgYW0nIDogJzAwOjAwJztcbiAgICAgICAgICAgIHRoaXMubWF4VGltZSA9IHRoaXMudGltZUZvcm1hdCA9PT0gJzEyJyA/ICcxMTo1OSBwbScgOiAnMjM6NTknO1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICBjb25zdCBmb3JtYXR0ZWRUaW1lID0gdGhpcy5zZWxlY3RlZFRpbWUgfHwgJyc7ICAvLyBFbnN1cmUgc2VsZWN0ZWRUaW1lIGlzIGhhbmRsZWQgcHJvcGVybHlcbiAgICAgICAgICBpZiAoZm9ybWF0dGVkRGF0ZSAmJiBmb3JtYXR0ZWRUaW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gYCR7Zm9ybWF0dGVkRGF0ZX0sICR7Zm9ybWF0dGVkVGltZX1gO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICBjYXNlICdEQVRFX1JBTkdFJzpcblxuICAgICAgICBjb25zdCBkYXRlcyA9IGRhdGUgYXMgdW5rbm93biBhcyBEYXRlW107XG5cbiAgICAgICAgLy8gRW5zdXJlIGRhdGVzIGlzIGRlZmluZWQgYW5kIGlzIGFuIGFycmF5XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGVzKSAmJiBkYXRlcy5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgICBjb25zdCBzdGFydCA9IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKGRhdGVzWzBdLCB0aGlzLkRhdGVmb3JtYXQpO1xuICAgICAgICAgIGNvbnN0IGVuZCA9IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKGRhdGVzWzFdLCB0aGlzLkRhdGVmb3JtYXQpO1xuICAgICAgICAgIHJldHVybiBgJHtzdGFydH0gLSAke2VuZH1gO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICcnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKGRhdGUsIHRoaXMuRGF0ZWZvcm1hdCkgfHwgJyc7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVEYXRlT25seSgpIHtcbiAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSBmYWxzZTtcbiAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gJyc7XG4gICAgaWYgKHRoaXMucmVxdWlyZWQgJiYgIXRoaXMuc2VsZWN0ZWREYXRlKSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSB0cnVlO1xuICAgICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9ICdUaGlzIGlzIGEgcmVxdWlyZWQgcXVlc3Rpb24nO1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gZmFsc2U7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gdHJ1ZTtcbiAgICB9XG4gIH1cbiAgdmFsaWRhdGVUaW1lT25seSgpIHtcbiAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSBmYWxzZTtcbiAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gJyc7XG4gICAgaWYgKHRoaXMucmVxdWlyZWQgJiYgIXRoaXMuc2VsZWN0ZWRUaW1lKSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSB0cnVlO1xuICAgICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9ICdUaGlzIGlzIGEgcmVxdWlyZWQgcXVlc3Rpb24nOztcbiAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbiA9IGZhbHNlO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbiA9IHRydWU7XG4gICAgfVxuICB9XG4gIHZhbGlkYXRlRGF0ZVJhbmdlKCkge1xuICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IGZhbHNlO1xuICAgIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2UgPSAnJztcbiAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdGhpcy5zZWxlY3RlZERhdGVSYW5nZSkge1xuICAgICAgdGhpcy52YWxpZGF0aW9uRmFpbGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2UgPSAnVGhpcyBpcyBhIHJlcXVpcmVkIHF1ZXN0aW9uJztcbiAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbiA9IGZhbHNlO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbiA9IHRydWU7XG4gICAgfVxuICB9XG4gIHZhbGlkYXRlRGF0ZUFuZFRpbWUoKSB7XG4gICAgdGhpcy52YWxpZGF0aW9uRmFpbGVkID0gZmFsc2U7XG4gICAgdGhpcy50aW1lVmFsaWRhdGlvbkZhaWxlZCA9IGZhbHNlO1xuICAgIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2UgPSAnJztcbiAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdGhpcy5zZWxlY3RlZERhdGVBbmRUaW1lKSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSB0cnVlO1xuICAgICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9ICdUaGlzIGlzIGEgcmVxdWlyZWQgcXVlc3Rpb24nO1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gZmFsc2U7XG4gICAgfVxuICAgIGVsc2UgaWYgKHRoaXMucmVxdWlyZWQgJiYgIXRoaXMuc2VsZWN0ZWRUaW1lKSB7XG4gICAgICB0aGlzLnRpbWVWYWxpZGF0aW9uRmFpbGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2UgPSAnVGhpcyBpcyBhIHJlcXVpcmVkIHF1ZXN0aW9uJztcbiAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbiA9IGZhbHNlO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbiA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgY29udmVydFRvSVNPRGF0ZShcbiAgICBkYXRlSW5wdXQ6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyXSB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWRcbiAgKTogRGF0ZSB8IG51bGwge1xuXG5cbiAgICBpZiAoIWRhdGVJbnB1dCkge1xuXG5cbiAgICAgIHJldHVybiBudWxsOyAvLyBSZXR1cm4gbnVsbCBpZiBkYXRlSW5wdXQgaXMgbnVsbCwgdW5kZWZpbmVkLCBvciBhbnkgZmFsc3kgdmFsdWVcbiAgICB9XG5cbiAgICBsZXQgeWVhciwgbW9udGgsIGRheTtcblxuICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGVJbnB1dCkpIHtcbiAgICAgIC8vIEV4dHJhY3QgeWVhciwgbW9udGgsIGFuZCBkYXkgZnJvbSBhcnJheSBpbnB1dFxuICAgICAgW3llYXIsIG1vbnRoLCBkYXldID0gZGF0ZUlucHV0O1xuXG4gICAgICAvLyBWYWxpZGF0ZSB0aGUgYXJyYXkgZm9ybWF0XG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiB5ZWFyICE9PSAnbnVtYmVyJyB8fFxuICAgICAgICB0eXBlb2YgbW9udGggIT09ICdudW1iZXInIHx8XG4gICAgICAgIHR5cGVvZiBkYXkgIT09ICdudW1iZXInIHx8XG4gICAgICAgIGlzTmFOKHllYXIpIHx8XG4gICAgICAgIGlzTmFOKG1vbnRoKSB8fFxuICAgICAgICBpc05hTihkYXkpIHx8XG4gICAgICAgICFOdW1iZXIuaXNJbnRlZ2VyKHllYXIpIHx8XG4gICAgICAgICFOdW1iZXIuaXNJbnRlZ2VyKG1vbnRoKSB8fFxuICAgICAgICAhTnVtYmVyLmlzSW50ZWdlcihkYXkpIHx8XG4gICAgICAgIG1vbnRoIDwgMSB8fFxuICAgICAgICBtb250aCA+IDEyIHx8XG4gICAgICAgIGRheSA8IDEgfHxcbiAgICAgICAgZGF5ID4gMzFcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBkYXRlSW5wdXQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAvLyBDaGVjayBpZiB0aGUgc3RyaW5nIG1hdGNoZXMgdGhlIFlZWVktTU0tREQgZm9ybWF0XG4gICAgICBjb25zdCBkYXRlUGFydHMgPSBkYXRlSW5wdXQuc3BsaXQoJy0nKTtcbiAgICAgIGlmIChkYXRlUGFydHMubGVuZ3RoICE9PSAzKSByZXR1cm4gbnVsbDtcblxuICAgICAgW3llYXIsIG1vbnRoLCBkYXldID0gZGF0ZVBhcnRzLm1hcChOdW1iZXIpO1xuXG4gICAgICAvLyBWYWxpZGF0ZSB0aGUgcGFyc2VkIHBhcnRzXG4gICAgICBpZiAoXG4gICAgICAgIGlzTmFOKHllYXIpIHx8XG4gICAgICAgIGlzTmFOKG1vbnRoKSB8fFxuICAgICAgICBpc05hTihkYXkpIHx8XG4gICAgICAgICFOdW1iZXIuaXNJbnRlZ2VyKHllYXIpIHx8XG4gICAgICAgICFOdW1iZXIuaXNJbnRlZ2VyKG1vbnRoKSB8fFxuICAgICAgICAhTnVtYmVyLmlzSW50ZWdlcihkYXkpIHx8XG4gICAgICAgIG1vbnRoIDwgMSB8fFxuICAgICAgICBtb250aCA+IDEyIHx8XG4gICAgICAgIGRheSA8IDEgfHxcbiAgICAgICAgZGF5ID4gMzFcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7IC8vIFVuc3VwcG9ydGVkIGlucHV0IHR5cGVcbiAgICB9XG5cbiAgICAvLyBDcmVhdGUgYSBEYXRlIG9iamVjdCAobW9udGggaXMgMC1iYXNlZCwgc28gc3VidHJhY3QgMSlcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoeWVhciwgbW9udGggLSAxLCBkYXkpO1xuXG4gICAgLy8gVmVyaWZ5IGlmIHRoZSBEYXRlIG9iamVjdCBtYXRjaGVzIHRoZSBwcm92aWRlZCB5ZWFyLCBtb250aCwgYW5kIGRheVxuICAgIGlmIChcbiAgICAgIGRhdGUuZ2V0RnVsbFllYXIoKSAhPT0geWVhciB8fFxuICAgICAgZGF0ZS5nZXRNb250aCgpICE9PSBtb250aCAtIDEgfHxcbiAgICAgIGRhdGUuZ2V0RGF0ZSgpICE9PSBkYXlcbiAgICApIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiBkYXRlO1xuICB9XG5cbn1cbiIsIjxkaXYgIGNsYXNzPVwibWItNSBweC0zXCI+XG4gIDxkaXYgY2xhc3M9XCJpbnB1dC13cmFwcGVyIG1iLTJcIj5cbiAgICA8ZGl2IFtpbm5lckhUTUxdPVwicXVlc3Rpb24ucXVlc3Rpb25OdW1iZXJcIj48L2Rpdj5cbiAgICAmbmJzcDsmbmJzcDsgPGxhYmVsPnt7IHF1ZXN0aW9uLnF1ZXN0aW9uIH19PC9sYWJlbFxuICAgID4mbmJzcDtcbiAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCIgKm5nSWY9XCJyZXF1aXJlZFwiPio8L3NwYW4+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJzdmctd3JhcHBlciBtYi0yIGhpbnRJY29uXCJcbiAgICAgIFthdHRyLmRhdGEtdGl0bGVdPVwiaGludFwiXG4gICAgICAqbmdJZj1cImhpbnRcIlxuICAgID5cbiAgICAgIDxzdmdcbiAgICAgICAgY2xhc3M9XCJoaW50U3ZnXCJcbiAgICAgICAgdmlld0JveD1cIjAgMCAzMCAzMFwiXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGZpbGwtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGQ9XCJNMTUgMjYuMjVWMjYuMjVDOC43ODYyNSAyNi4yNSAzLjc1IDIxLjIxMzggMy43NSAxNVYxNUMzLjc1IDguNzg2MjUgOC43ODYyNSAzLjc1IDE1IDMuNzVWMy43NUMyMS4yMTM4IDMuNzUgMjYuMjUgOC43ODYyNSAyNi4yNSAxNVYxNUMyNi4yNSAyMS4yMTM4IDIxLjIxMzggMjYuMjUgMTUgMjYuMjVaXCJcbiAgICAgICAgICBzdHJva2U9XCIjMzIzMjMyXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTE1IDE2LjU2MjNWMTYuMjQ5OEMxNSAxNS4yMjg1IDE1LjYzMTIgMTQuNjc0OCAxNi4yNjM3IDE0LjI0OThDMTYuODgxMiAxMy44MzM1IDE3LjUgMTMuMjkxIDE3LjUgMTIuMjkxQzE3LjUgMTAuOTA5OCAxNi4zODEzIDkuNzkxMDIgMTUgOS43OTEwMkMxMy42MTg3IDkuNzkxMDIgMTIuNSAxMC45MDk4IDEyLjUgMTIuMjkxXCJcbiAgICAgICAgICBzdHJva2U9XCIjMzIzMjMyXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTE0Ljk5ODggMjBDMTQuODI2MyAyMCAxNC42ODYzIDIwLjE0IDE0LjY4NzUgMjAuMzEyNUMxNC42ODc1IDIwLjQ4NSAxNC44Mjc1IDIwLjYyNSAxNSAyMC42MjVDMTUuMTcyNSAyMC42MjUgMTUuMzEyNSAyMC40ODUgMTUuMzEyNSAyMC4zMTI1QzE1LjMxMjUgMjAuMTQgMTUuMTcyNSAyMCAxNC45OTg4IDIwXCJcbiAgICAgICAgICBzdHJva2U9XCIjMzIzMjMyXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGVUeXBlID09PSAnREFURV9PTkxZJ1wiPlxuICAgIDwhLS0gRGF0ZSBvbmx5IHBpY2tlciAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtY29udGFpbmVyXCI+XG4gICAgICA8aW5wdXRcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgaGVpZ2h0XCJcbiAgICAgICAgI2RhdGVwaWNrZXJZTUQ9XCJic0RhdGVwaWNrZXJcIlxuICAgICAgICBic0RhdGVwaWNrZXJcbiAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZSA/IG1pbkRhdGUgOiB1bmRlZmluZWRcIlxuICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlID8gbWF4RGF0ZSA6IHVuZGVmaW5lZFwiXG4gICAgICAgIFtic0NvbmZpZ109XCJ7IGRhdGVJbnB1dEZvcm1hdDogZm9ybWF0LCBjb250YWluZXJDbGFzczogJ3RoZW1lLWN1c3RvbScgfVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwic2VsZWN0ZWREYXRlXCJcbiAgICAgICAgKGJsdXIpPVwidmFsaWRhdGVGaWVsZCgpXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsaWRhdGVGaWVsZCgpXCJcbiAgICAgICAgW2NsYXNzLmludmFsaWRdPVwidmFsaWRhdGlvbkZhaWxlZFwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwiU2VsZWN0IGRhdGVcIlxuICAgICAgLz5cbiAgICAgIDxpXG4gICAgICAgIGNsYXNzPVwiZmEtc29saWQgZmEtY2FsZW5kYXItZGF5cyBjYWxlbmRhci1pY29uIHRleHQtcHJpbWFyeSBmcy01XCJcbiAgICAgICAgKGNsaWNrKT1cIm9wZW5EYXRlUGlja2VyKClcIlxuICAgICAgPjwvaT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwidmFsaWRhdGlvbkZhaWxlZFwiIGNsYXNzPVwidGV4dC1kYW5nZXIgbXQtMlwiPlxuICAgICAgPHN2Z1xuICAgICAgICBjbGFzcz1cInZhbGlkYXRpb25TdmdcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICA+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0xMi4wMDEgMTYuNzVDMTIuMTM5IDE2Ljc1IDEyLjI1MSAxNi42MzggMTIuMjUgMTYuNUMxMi4yNSAxNi4zNjIgMTIuMTM4IDE2LjI1IDEyIDE2LjI1QzExLjg2MiAxNi4yNSAxMS43NSAxNi4zNjIgMTEuNzUgMTYuNUMxMS43NSAxNi42MzggMTEuODYyIDE2Ljc1IDEyLjAwMSAxNi43NVwiXG4gICAgICAgICAgc3Ryb2tlPVwid2hpdGVcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGZpbGwtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGNsaXAtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGQ9XCJNMTIgMjFDNy4wMjkgMjEgMyAxNi45NzEgMyAxMkMzIDcuMDI5IDcuMDI5IDMgMTIgM0MxNi45NzEgMyAyMSA3LjAyOSAyMSAxMkMyMSAxNi45NzEgMTYuOTcxIDIxIDEyIDIxWlwiXG4gICAgICAgICAgZmlsbD1cIiNGRjAwMDBcIlxuICAgICAgICAgIHN0cm9rZT1cIiNGRjAwMDBcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTIgMTIuNzVMMTIgNy43NVwiXG4gICAgICAgICAgc3Ryb2tlPVwid2hpdGVcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjE2XCIgcj1cIjFcIiBmaWxsPVwid2hpdGVcIiAvPlxuICAgICAgPC9zdmc+XG4gICAgICB7eyB2YWxpZGF0aW9uTWVzc2FnZSB9fVxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0ZVR5cGUgPT09ICdUSU1FX09OTFknXCI+XG4gICAgPCEtLSBUaW1lIHBpY2tlciAtLT5cblxuXG48ZGl2IGNsYXNzPVwiaW5wdXQtY29udGFpbmVyXCI+XG4gICAgICA8aW5wdXRcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGhlaWdodCBhcHBlYXJhbmNlSW5wdXQgbXQtM1wiXG4gICAgICBhcmlhLWxhYmVsPVwiU2VsZWN0IHRpbWVcIlxuICAgICAgcGxhY2Vob2xkZXI9XCJTZWxlY3QgdGltZVwiXG4gICAgICByZWFkb25seVxuICAgICAgW2Zvcm1hdF09XCJ0aW1lRm9ybWF0PT09JzI0Jz8yNDoxMlwiXG4gICAgICBbbmd4VGltZXBpY2tlcl09XCJmdWxsVGltZTNcIlxuICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFRpbWVcIlxuICAgICAgW21heF09XCJtYXhUaW1lXCJcbiAgICAgIFttaW5dPVwibWluVGltZVwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWxpZGF0ZUZpZWxkKClcIlxuICAgICAgW2NsYXNzLmludmFsaWRdPVwidmFsaWRhdGlvbkZhaWxlZFwiXG4gIC8+XG4gIFxuICA8aVxuICBpZD1cInN0YXJ0RGF0ZUljb25cIlxuICBjbGFzcz1cImZhLXNvbGlkIGZhLWNsb2NrIHRleHQtcHJpbWFyeSBmcy02IGNsb2NrLWljb25cIlxuICAoY2xpY2spPVwiZnVsbFRpbWUzLm9wZW4oKVwiXG4gIHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyO1wiXG4+PC9pPlxuICA8bmd4LW1hdGVyaWFsLXRpbWVwaWNrZXIgI2Z1bGxUaW1lMz48L25neC1tYXRlcmlhbC10aW1lcGlja2VyPlxuPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cInZhbGlkYXRpb25GYWlsZWRcIiBjbGFzcz1cInRleHQtZGFuZ2VyIG10LTJcIj5cbiAgICAgIDxzdmdcbiAgICAgICAgY2xhc3M9XCJ2YWxpZGF0aW9uU3ZnXCJcbiAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTIuMDAxIDE2Ljc1QzEyLjEzOSAxNi43NSAxMi4yNTEgMTYuNjM4IDEyLjI1IDE2LjVDMTIuMjUgMTYuMzYyIDEyLjEzOCAxNi4yNSAxMiAxNi4yNUMxMS44NjIgMTYuMjUgMTEuNzUgMTYuMzYyIDExLjc1IDE2LjVDMTEuNzUgMTYuNjM4IDExLjg2MiAxNi43NSAxMi4wMDEgMTYuNzVcIlxuICAgICAgICAgIHN0cm9rZT1cIndoaXRlXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBmaWxsLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBjbGlwLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBkPVwiTTEyIDIxQzcuMDI5IDIxIDMgMTYuOTcxIDMgMTJDMyA3LjAyOSA3LjAyOSAzIDEyIDNDMTYuOTcxIDMgMjEgNy4wMjkgMjEgMTJDMjEgMTYuOTcxIDE2Ljk3MSAyMSAxMiAyMVpcIlxuICAgICAgICAgIGZpbGw9XCIjRkYwMDAwXCJcbiAgICAgICAgICBzdHJva2U9XCIjRkYwMDAwXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTEyIDEyLjc1TDEyIDcuNzVcIlxuICAgICAgICAgIHN0cm9rZT1cIndoaXRlXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxNlwiIHI9XCIxXCIgZmlsbD1cIndoaXRlXCIgLz5cbiAgICAgIDwvc3ZnPlxuICAgICAge3sgdmFsaWRhdGlvbk1lc3NhZ2UgfX1cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGVUeXBlID09PSAnREFURV9BTkRfVElNRSdcIj5cbiAgICA8IS0tIERhdGUgYW5kIHRpbWUgcGlja2VyIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICAjZGF0ZUFuZFRpbWVQaWNrZXI9XCJic0RhdGVwaWNrZXJcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGhlaWdodFwiXG4gICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGUgPyBtaW5EYXRlIDogdW5kZWZpbmVkXCJcbiAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZSA/IG1heERhdGUgOiB1bmRlZmluZWRcIlxuICAgICAgICBbYnNDb25maWddPVwie1xuICAgICAgICAgIGRhdGVJbnB1dEZvcm1hdDogZm9ybWF0LCBjb250YWluZXJDbGFzczogJ3RoZW1lLWN1c3RvbScgXG4gICAgICAgIH1cIlxuICAgICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdCBkYXRlXCJcbiAgICAgICAgYnNEYXRlcGlja2VyXG4gICAgICAgIFtjbGFzcy5pbnZhbGlkXT1cInZhbGlkYXRpb25GYWlsZWRcIlxuICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkRGF0ZUFuZFRpbWVcIlxuICAgICAgICAoYmx1cik9XCJ2YWxpZGF0ZUZpZWxkKClcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWxpZGF0ZUZpZWxkKClcIlxuICAgICAgLz5cbiAgICAgIDxpXG4gICAgICAgIGNsYXNzPVwiZmEtc29saWQgZmEtY2FsZW5kYXItZGF5cyBjYWxlbmRhci1pY29uIHRleHQtcHJpbWFyeSBmcy01XCJcbiAgICAgICAgKGNsaWNrKT1cIm9wZW5EYXRlQW5kVGltZVBpY2tlcigpXCJcbiAgICAgID48L2k+XG4gICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtY29udGFpbmVyXCIgKm5nSWY9XCJzZWxlY3RlZERhdGVBbmRUaW1lICYmIHNlbGVjdGVkRGF0ZUFuZFRpbWUgIT0gbnVsbFwiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGhlaWdodCBhcHBlYXJhbmNlSW5wdXQgbXQtM1wiXG4gICAgICAgIGFyaWEtbGFiZWw9XCJTZWxlY3QgdGltZVwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwiU2VsZWN0IHRpbWVcIlxuICAgICAgICByZWFkb25seVxuICAgICAgICBbZm9ybWF0XT1cInRpbWVGb3JtYXQ9PT0nMjQnPzI0OjEyXCJcbiAgICAgICAgW25neFRpbWVwaWNrZXJdPVwiZnVsbFRpbWU0XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFRpbWVcIlxuICAgICAgICBbbWF4XT1cIm1heFRpbWVcIlxuICAgICAgICBbbWluXT1cIm1pblRpbWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWxpZGF0ZUZpZWxkKClcIlxuICAgICAgICAoZm9jdXMpPVwiY2xvc2VEYXRlcGlja2VyKClcIlxuICAgICAgICBbY2xhc3MuaW52YWxpZF09XCJ0aW1lVmFsaWRhdGlvbkZhaWxlZFwiXG4gICAgLz5cbiAgICBcbiAgICA8aVxuICAgIGlkPVwic3RhcnREYXRlSWNvblwiXG4gICAgY2xhc3M9XCJmYS1zb2xpZCBmYS1jbG9jayB0ZXh0LXByaW1hcnkgZnMtNiBjbG9jay1pY29uXCJcbiAgICAoY2xpY2spPVwiZnVsbFRpbWU0Lm9wZW4oKVwiXG4gICAgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXI7XCJcbiAgPjwvaT5cbiAgICA8bmd4LW1hdGVyaWFsLXRpbWVwaWNrZXIgI2Z1bGxUaW1lND48L25neC1tYXRlcmlhbC10aW1lcGlja2VyPlxuICA8L2Rpdj5cbiAgIFxuICAgIDxkaXYgKm5nSWY9XCJ2YWxpZGF0aW9uRmFpbGVkIHx8IHRpbWVWYWxpZGF0aW9uRmFpbGVkXCIgY2xhc3M9XCJ0ZXh0LWRhbmdlciBtdC0yXCI+XG4gICAgICA8c3ZnXG4gICAgICAgIGNsYXNzPVwidmFsaWRhdGlvblN2Z1wiXG4gICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgID5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTEyLjAwMSAxNi43NUMxMi4xMzkgMTYuNzUgMTIuMjUxIDE2LjYzOCAxMi4yNSAxNi41QzEyLjI1IDE2LjM2MiAxMi4xMzggMTYuMjUgMTIgMTYuMjVDMTEuODYyIDE2LjI1IDExLjc1IDE2LjM2MiAxMS43NSAxNi41QzExLjc1IDE2LjYzOCAxMS44NjIgMTYuNzUgMTIuMDAxIDE2Ljc1XCJcbiAgICAgICAgICBzdHJva2U9XCJ3aGl0ZVwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZmlsbC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgZD1cIk0xMiAyMUM3LjAyOSAyMSAzIDE2Ljk3MSAzIDEyQzMgNy4wMjkgNy4wMjkgMyAxMiAzQzE2Ljk3MSAzIDIxIDcuMDI5IDIxIDEyQzIxIDE2Ljk3MSAxNi45NzEgMjEgMTIgMjFaXCJcbiAgICAgICAgICBmaWxsPVwiI0ZGMDAwMFwiXG4gICAgICAgICAgc3Ryb2tlPVwiI0ZGMDAwMFwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0xMiAxMi43NUwxMiA3Ljc1XCJcbiAgICAgICAgICBzdHJva2U9XCJ3aGl0ZVwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTZcIiByPVwiMVwiIGZpbGw9XCJ3aGl0ZVwiIC8+XG4gICAgICA8L3N2Zz5cbiAgICAgIHt7IHZhbGlkYXRpb25NZXNzYWdlIH19XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJkYXRlVHlwZSA9PT0gJ0RBVEVfUkFOR0UnXCI+XG4gICAgPCEtLSBEYXRlIHJhbmdlIHBpY2tlciAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtY29udGFpbmVyXCI+XG4gICAgICA8aW5wdXRcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBoZWlnaHRcIlxuICAgICAgICAjZGF0ZXJhbmdlcGlja2VyPVwiYnNEYXRlcmFuZ2VwaWNrZXJcIlxuICAgICAgICBic0RhdGVyYW5nZXBpY2tlclxuICAgICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdCBkYXRlXCJcbiAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZSA/IG1pbkRhdGUgOiB1bmRlZmluZWRcIlxuICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlID8gbWF4RGF0ZSA6IHVuZGVmaW5lZFwiXG4gICAgICAgIFtic0NvbmZpZ109XCJ7XG4gICAgICAgICAgcmFuZ2VJbnB1dEZvcm1hdDogZm9ybWF0LFxuICAgICAgICAgIGRhdGVJbnB1dEZvcm1hdDogZm9ybWF0LCBjb250YWluZXJDbGFzczogJ3RoZW1lLWN1c3RvbScgXG4gICAgICAgIH1cIlxuICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkRGF0ZVJhbmdlXCJcbiAgICAgICAgKGJsdXIpPVwidmFsaWRhdGVGaWVsZCgpXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsaWRhdGVGaWVsZCgpXCJcbiAgICAgICAgW2NsYXNzLmludmFsaWRdPVwidmFsaWRhdGlvbkZhaWxlZFwiXG4gICAgICAvPlxuICAgICAgPGlcbiAgICAgICAgY2xhc3M9XCJmYS1zb2xpZCBmYS1jYWxlbmRhci1kYXlzIGNhbGVuZGFyLWljb24gdGV4dC1wcmltYXJ5IGZzLTVcIlxuICAgICAgICAoY2xpY2spPVwib3BlbkRhdGVSYW5nZVBpY2tlcigpXCJcbiAgICAgID48L2k+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cInZhbGlkYXRpb25GYWlsZWRcIiBjbGFzcz1cInRleHQtZGFuZ2VyIG10LTJcIj5cbiAgICAgIDxzdmdcbiAgICAgICAgY2xhc3M9XCJ2YWxpZGF0aW9uU3ZnXCJcbiAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTIuMDAxIDE2Ljc1QzEyLjEzOSAxNi43NSAxMi4yNTEgMTYuNjM4IDEyLjI1IDE2LjVDMTIuMjUgMTYuMzYyIDEyLjEzOCAxNi4yNSAxMiAxNi4yNUMxMS44NjIgMTYuMjUgMTEuNzUgMTYuMzYyIDExLjc1IDE2LjVDMTEuNzUgMTYuNjM4IDExLjg2MiAxNi43NSAxMi4wMDEgMTYuNzVcIlxuICAgICAgICAgIHN0cm9rZT1cIndoaXRlXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBmaWxsLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBjbGlwLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBkPVwiTTEyIDIxQzcuMDI5IDIxIDMgMTYuOTcxIDMgMTJDMyA3LjAyOSA3LjAyOSAzIDEyIDNDMTYuOTcxIDMgMjEgNy4wMjkgMjEgMTJDMjEgMTYuOTcxIDE2Ljk3MSAyMSAxMiAyMVpcIlxuICAgICAgICAgIGZpbGw9XCIjRkYwMDAwXCJcbiAgICAgICAgICBzdHJva2U9XCIjRkYwMDAwXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTEyIDEyLjc1TDEyIDcuNzVcIlxuICAgICAgICAgIHN0cm9rZT1cIndoaXRlXCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxNlwiIHI9XCIxXCIgZmlsbD1cIndoaXRlXCIgLz5cbiAgICAgIDwvc3ZnPlxuICAgICAge3sgdmFsaWRhdGlvbk1lc3NhZ2UgfX1cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
|