ca-components 0.0.56 → 0.0.58
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/ca-custom-datetime-pickers/ca-custom-datetime-pickers.component.mjs +6 -4
- package/esm2022/lib/components/ca-pickup-delivery-block/ca-pickup-delivery-block.component.mjs +3 -3
- package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-single/ca-load-single.component.mjs +3 -3
- package/fesm2022/ca-components.mjs +9 -7
- package/fesm2022/ca-components.mjs.map +1 -1
- package/package.json +1 -1
package/esm2022/lib/components/ca-custom-datetime-pickers/ca-custom-datetime-pickers.component.mjs
CHANGED
|
@@ -76,9 +76,11 @@ export class CaCustomDatetimePickersComponent {
|
|
|
76
76
|
}
|
|
77
77
|
setTimeValue() {
|
|
78
78
|
const dateInputArray = moment(this.dateTime).format('H/mm/A').split('/');
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
79
|
+
setTimeout(() => {
|
|
80
|
+
this.scrollTypes.hourScroll = this.hourTimes.indexOf(parseInt(dateInputArray[0]));
|
|
81
|
+
this.scrollTypes.minutesScroll = this.timeMinutes.indexOf(dateInputArray[1]);
|
|
82
|
+
this.scrollTypes.pmAmScroll = dateInputArray[2] === 'AM' ? 0 : 1;
|
|
83
|
+
});
|
|
82
84
|
}
|
|
83
85
|
setListPreview(value) {
|
|
84
86
|
this.listPreview = value;
|
|
@@ -220,4 +222,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
220
222
|
}], placeholder: [{
|
|
221
223
|
type: Input
|
|
222
224
|
}] } });
|
|
223
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEdBR2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsU0FBUztBQUNULE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUs1QixhQUFhO0FBQ2IsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0sNEdBQTRHLENBQUM7QUFFM0ssWUFBWTtBQUNaLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBTXJHLFFBQVE7QUFDUixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7OztBQWF4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VUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQW1DbkIsWUFBWTtzQkFEZixLQUFLO2dCQVNGLFdBQVc7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgT25EZXN0cm95LFxuICBBZnRlckNvbnRlbnRJbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLy8gbW9tZW50XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5cbi8vIHNlcnZpY2VzXG5pbXBvcnQgeyBDYWxlbmRhckRhdGVUaW1lUGlja2VyU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvY2FsZW5kYXItZGF0ZXRpbWUtcGlja2VyLnNlcnZpY2UnO1xuXG4vLyBjb21wb25lbnRzXG5pbXBvcnQgeyBDYUN1c3RvbURhdGVUaW1lUGlja2Vyc0RhdGVDYWxlbmRhcnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMtZGF0ZS1jYWxlbmRhcnMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMtZGF0ZS1jYWxlbmRhcnMuY29tcG9uZW50JztcblxuLy8gY29uc3RhbnRzXG5pbXBvcnQgeyBDdXN0b21EYXRldGltZVBpY2tlcnNDb25zdGFudHMgfSBmcm9tICcuL3V0aWxzL2NvbnN0YW50cy9jdXN0b20tZGF0ZXRpbWUtcGlja2Vycy5jb25zdGFudHMnO1xuXG4vLyBtb2RlbHNcbmltcG9ydCB7IElDYUlucHV0IH0gZnJvbSAnLi4vY2EtaW5wdXQvY29uZmlnL2NhLWlucHV0LmNvbmZpZyc7XG5pbXBvcnQgeyBTY3JvbGxUeXBlIH0gZnJvbSAnLi9tb2RlbHMvc2Nyb2xsLXR5cGUubW9kZWwnO1xuXG4vLyBlbnVtc1xuaW1wb3J0IHsgSW5wdXRDb25maWdOYW1lU3RyaW5nRW51bSB9IGZyb20gJy4uL2NhLWlucHV0L2VudW1zL2lucHV0LWNvbmZpZy1uYW1lLXN0cmluZy5lbnVtJztcbmltcG9ydCB7IENhbGVuZGFyVHlwZVN0cmluZ0VudW0gfSBmcm9tICcuL2VudW1zL2NhbGVuZGFyLXR5cGUtc3RyaW5nLmVudW0nO1xuaW1wb3J0IHsgQ2FsZW5kYXJMaXN0UHJldmlld1N0cmluZ0VudW0gfSBmcm9tICcuL2VudW1zL2NhbGVuZGFyLWxpc3QtcHJldmlldy1zdHJpbmcuZW51bSc7XG5pbXBvcnQgeyBDYWxlbmRhclNjcm9sbFR5cGVTdHJpbmdFbnVtIH0gZnJvbSAnLi9lbnVtcy9jYWxlbmRhci1zY3JvbGwtdHlwZS1zdHJpbmcuZW51bSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jYS1jdXN0b20tZGF0ZXRpbWUtcGlja2VycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYS1jdXN0b20tZGF0ZXRpbWUtcGlja2Vycy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhLWN1c3RvbS1kYXRldGltZS1waWNrZXJzLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgQ2FDdXN0b21EYXRlVGltZVBpY2tlcnNEYXRlQ2FsZW5kYXJzQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDYUN1c3RvbURhdGV0aW1lUGlja2Vyc0NvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlckNvbnRlbnRJbml0XG57XG4gIEBJbnB1dCgpIGRhdGVUaW1lITogRGF0ZTtcbiAgQFZpZXdDaGlsZCgncmVmJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pIHJlZiE6IFZpZXdDb250YWluZXJSZWY7XG4gIHB1YmxpYyBfaW5wdXRDb25maWchOiBJQ2FJbnB1dDtcbiAgQElucHV0KCkgc2V0IGlucHV0Q29uZmlnKGNvbmZpZzogSUNhSW5wdXQpIHtcbiAgICB0aGlzLl9pbnB1dENvbmZpZyA9IGNvbmZpZztcbiAgICBpZiAoXG4gICAgICB0aGlzLl9pbnB1dENvbmZpZy5uYW1lID09PSBJbnB1dENvbmZpZ05hbWVTdHJpbmdFbnVtLkRBVEVfUElDS0VSX0JBTktfQ0FSRFxuICAgIClcbiAgICAgIHRoaXMubGlzdFByZXZpZXcgPSBDYWxlbmRhckxpc3RQcmV2aWV3U3RyaW5nRW51bS5NT05USF9MSVNUO1xuXG4gICAgaWYgKHRoaXMuX2lucHV0Q29uZmlnLm1pbnV0ZXNHYXBGaXZlKVxuICAgICAgdGhpcy50aW1lTWludXRlcyA9IEN1c3RvbURhdGV0aW1lUGlja2Vyc0NvbnN0YW50cy50aW1lTWludXRlc0dhcEZpdmU7XG4gICAgZWxzZSB0aGlzLnRpbWVNaW51dGVzID0gQ3VzdG9tRGF0ZXRpbWVQaWNrZXJzQ29uc3RhbnRzLnRpbWVNaW51dGVzO1xuICB9XG5cbiAgQE91dHB1dCgpIGNsb3NlUG9wb3ZlcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGQoQ2FDdXN0b21EYXRlVGltZVBpY2tlcnNEYXRlQ2FsZW5kYXJzQ29tcG9uZW50KVxuICBkYXRlQ2FsZW5kYXIhOiBDYUN1c3RvbURhdGVUaW1lUGlja2Vyc0RhdGVDYWxlbmRhcnNDb21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoJ3BtQW1TY3JvbGwnKSBwbUFtU2Nyb2xsITogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnbWludXRlc1Njcm9sbCcpIG1pbnV0ZXNTY3JvbGwhOiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCdob3VyU2Nyb2xsJykgaG91clNjcm9sbCE6IEVsZW1lbnRSZWY7XG5cbiAgcHVibGljIHNlbGVjdGVkRGF0ZVRpbWUhOiBzdHJpbmc7XG4gIHB1YmxpYyBjYWxlbmRhck1haW5UeXBlITogc3RyaW5nO1xuICBwdWJsaWMgb3V0cHV0VHlwZSE6IChzdHJpbmcgfCBudW1iZXIpW107XG4gIHB1YmxpYyBjdXJyZW50WWVhcjogbnVtYmVyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuICBwdWJsaWMgY3VycmVudE1vbnRoOiBudW1iZXIgPSBuZXcgRGF0ZSgpLmdldE1vbnRoKCk7XG4gIHB1YmxpYyBjdXJyZW50RGF5OiBudW1iZXIgPSBuZXcgRGF0ZSgpLmdldERhdGUoKTtcbiAgcHVibGljIGxpc3RQcmV2aWV3OiBzdHJpbmcgPSBDYWxlbmRhckxpc3RQcmV2aWV3U3RyaW5nRW51bS5GVUxMX0xJU1Q7XG4gIHB1YmxpYyB0aW1lTWludXRlcyE6IHN0cmluZ1tdO1xuICBwdWJsaWMgbW9udGhBcnJheTogbnVtYmVyW10gPSBuZXcgQXJyYXkoMTIpXG4gICAgLmZpbGwoMClcbiAgICAubWFwKChfLCBpbmR4KSA9PiBpbmR4ICsgMSk7XG4gIHB1YmxpYyBtb250aERheUxpc3Q6IG51bWJlcltdID0gbmV3IEFycmF5KDMxKVxuICAgIC5maWxsKDApXG4gICAgLm1hcCgoXywgaW5keCkgPT4gaW5keCArIDEpO1xuICBwdWJsaWMgeWVhcnNMaXN0OiAoc3RyaW5nIHwgbnVtYmVyKVtdID0gbmV3IEFycmF5KDEwMClcbiAgICAuZmlsbCgwKVxuICAgIC5tYXAoKF8sIGlkeCkgPT4gKGlkeCA8IDEwID8gJzAnICsgaWR4IDogaWR4KSk7XG4gIHB1YmxpYyBzY3JvbGxUaW1lciE6IE5vZGVKUy5UaW1lb3V0IHwgbnVtYmVyO1xuICBwdWJsaWMgaG92ZXJlZEl0ZW0hOiBzdHJpbmcgfCBudWxsO1xuICBwdWJsaWMgaXNJbnB1dEZvY3VzITogYm9vbGVhbjtcbiAgcHVibGljIG1vbnRoTmFtZXM6IHN0cmluZ1tdID0gQ3VzdG9tRGF0ZXRpbWVQaWNrZXJzQ29uc3RhbnRzLm1vbnRoTmFtZXM7XG4gIHB1YmxpYyBob3VyVGltZXM6IG51bWJlcltdID0gQ3VzdG9tRGF0ZXRpbWVQaWNrZXJzQ29uc3RhbnRzLmhvdXJUaW1lcztcbiAgcHVibGljIHNjcm9sbFR5cGVzOiBTY3JvbGxUeXBlID1cbiAgICBDdXN0b21EYXRldGltZVBpY2tlcnNDb25zdGFudHMuZGVmYXVsdFNjcm9sbFR5cGVzO1xuICBwdWJsaWMgc2VsZWN0ZWRUaW1lOiBzdHJpbmcgPVxuICAgIEN1c3RvbURhdGV0aW1lUGlja2Vyc0NvbnN0YW50cy5kZWZhdWx0U2VsZWN0ZWRUaW1lO1xuICBwdWJsaWMgdGltZU9mRGF5OiBzdHJpbmdbXSA9IEN1c3RvbURhdGV0aW1lUGlja2Vyc0NvbnN0YW50cy50aW1lT2ZEYXk7XG5cbiAgcHVibGljIHByZXZpb3VzUmFuZ2VTaWRlITogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNhbGVuZGFyU2VydmljZTogQ2FsZW5kYXJEYXRlVGltZVBpY2tlclNlcnZpY2UpIHt9XG5cbiAgQElucHV0KClcbiAgc2V0IGNhbGVuZGFyVHlwZShjYWxlbmRhclR5cGU6IHN0cmluZykge1xuICAgIHRoaXMuY2FsZW5kYXJNYWluVHlwZSA9IGNhbGVuZGFyVHlwZTtcbiAgICBpZiAoY2FsZW5kYXJUeXBlID09PSBDYWxlbmRhclR5cGVTdHJpbmdFbnVtLlRJTUUpXG4gICAgICB0aGlzLm91dHB1dFR5cGUgPSBDdXN0b21EYXRldGltZVBpY2tlcnNDb25zdGFudHMuZGVmYXVsdE91dHB1dFR5cGVUaW1lO1xuICAgIGVsc2UgdGhpcy5vdXRwdXRUeXBlID0gQ3VzdG9tRGF0ZXRpbWVQaWNrZXJzQ29uc3RhbnRzLmRlZmF1bHRPdXRwdXRUeXBlRGF0ZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBwbGFjZWhvbGRlcihwbGFjZWhvbGRlcjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZWxlY3RlZERhdGVUaW1lID0gcGxhY2Vob2xkZXI7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXREYXRlQ2hhbmdlZExpc3RlbmVyKCk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy5zZXRUaW1lVmFsdWUoKTtcbiAgICB0aGlzLmNoYW5nZU9wZW5lZCgpO1xuICB9XG5cbiAgcHVibGljIGluaXREYXRlQ2hhbmdlZExpc3RlbmVyKCk6IHZvaWQge1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmRhdGVDaGFuZ2VkLnN1YnNjcmliZSgoZGF0ZSkgPT4ge1xuICAgICAgaWYgKHRoaXMuY2FsZW5kYXJNYWluVHlwZSAhPT0gQ2FsZW5kYXJUeXBlU3RyaW5nRW51bS5USU1FKSB7XG4gICAgICAgIHRoaXMub3V0cHV0VHlwZVswXSA9IGRhdGVbMF07XG4gICAgICAgIHRoaXMub3V0cHV0VHlwZVsyXSA9IGRhdGVbMV07XG4gICAgICAgIHRoaXMub3V0cHV0VHlwZVs0XSA9IGRhdGVbMl07XG4gICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlVGltZSA9IHRoaXMuY3JlYXRlU3RyaW5nRnJvbU91dHB1dCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNldFRpbWVWYWx1ZSgpIHtcbiAgICBjb25zdCBkYXRlSW5wdXRBcnJheSA9IG1vbWVudCh0aGlzLmRhdGVUaW1lKS5mb3JtYXQoJ0gvbW0vQScpLnNwbGl0KCcvJyk7XG4gICAgdGhpcy5zY3JvbGxUeXBlcy5ob3VyU2Nyb2xsID0gdGhpcy5ob3VyVGltZXMuaW5kZXhPZihcbiAgICAgIHBhcnNlSW50KGRhdGVJbnB1dEFycmF5WzBdKVxuICAgICk7XG4gICAgdGhpcy5zY3JvbGxUeXBlcy5taW51dGVzU2Nyb2xsID0gdGhpcy50aW1lTWludXRlcy5pbmRleE9mKFxuICAgICAgZGF0ZUlucHV0QXJyYXlbMV1cbiAgICApO1xuICAgIHRoaXMuc2Nyb2xsVHlwZXMucG1BbVNjcm9sbCA9IGRhdGVJbnB1dEFycmF5WzJdID09PSAnQU0nID8gMCA6IDE7XG4gIH1cblxuICBwdWJsaWMgc2V0TGlzdFByZXZpZXcodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMubGlzdFByZXZpZXcgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBpbnB1dEluRm9jdXMoKTogdm9pZCB7XG4gICAgdGhpcy5pc0lucHV0Rm9jdXMgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIGlucHV0Qmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLmlzSW5wdXRGb2N1cyA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGNoYW5nZU9wZW5lZCgpOiB2b2lkIHtcbiAgICAvLyB0aGlzLmlzSW5wdXRGb2N1cyA9IGU7XG4gICAgLy8gaWYgKGUpIHtcbiAgICBpZiAodGhpcy5jYWxlbmRhck1haW5UeXBlID09PSBDYWxlbmRhclR5cGVTdHJpbmdFbnVtLlRJTUUpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmhvdXJTY3JvbGwubmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPVxuICAgICAgICAgIHRoaXMuc2Nyb2xsVHlwZXMuaG91clNjcm9sbCAqIDIyO1xuICAgICAgICB0aGlzLm1pbnV0ZXNTY3JvbGwubmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPVxuICAgICAgICAgIHRoaXMuc2Nyb2xsVHlwZXMubWludXRlc1Njcm9sbCAqIDIyO1xuICAgICAgICB0aGlzLnBtQW1TY3JvbGwubmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPVxuICAgICAgICAgIHRoaXMuc2Nyb2xsVHlwZXMucG1BbVNjcm9sbCAqIDIyO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCB0ZXN0ID0gYCR7XG4gICAgICAgIHRoaXMuZGF0ZVRpbWUuZ2V0TW9udGgoKSArIDFcbiAgICAgIH0vJHt0aGlzLmRhdGVUaW1lLmdldERhdGUoKX0vJHt0aGlzLmRhdGVUaW1lLmdldEZ1bGxZZWFyKCl9YDtcblxuICAgICAgdGhpcy5jYWxlbmRhclNlcnZpY2Uuc2Nyb2xsVG9EYXRlLm5leHQoXG4gICAgICAgIGAke1xuICAgICAgICAgIHRoaXMuZGF0ZVRpbWUuZ2V0TW9udGgoKSArIDFcbiAgICAgICAgfS8ke3RoaXMuZGF0ZVRpbWUuZ2V0RGF0ZSgpfS8ke3RoaXMuZGF0ZVRpbWUuZ2V0RnVsbFllYXIoKX1gXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZXRUaW1lKCk6IHZvaWQge1xuICAgIHRoaXMub3V0cHV0VHlwZVswXSA9IHRoaXMuaG91clRpbWVzW3RoaXMuc2Nyb2xsVHlwZXMuaG91clNjcm9sbF07XG4gICAgdGhpcy5vdXRwdXRUeXBlWzJdID0gdGhpcy50aW1lTWludXRlc1t0aGlzLnNjcm9sbFR5cGVzLm1pbnV0ZXNTY3JvbGxdO1xuICAgIHRoaXMub3V0cHV0VHlwZVs0XSA9IHRoaXMudGltZU9mRGF5W3RoaXMuc2Nyb2xsVHlwZXMucG1BbVNjcm9sbF07XG5cbiAgICB0aGlzLnNlbGVjdGVkRGF0ZVRpbWUgPSB0aGlzLmNyZWF0ZVN0cmluZ0Zyb21PdXRwdXQoKTtcblxuICAgIGxldCBjdXJyZW50RGF0ZSA9IG1vbWVudCgpLmZvcm1hdCgnTU0vREQvWVlZWScpO1xuXG4gICAgdGhpcy5jYWxlbmRhclNlcnZpY2UuZGF0ZUNoYW5nZWQubmV4dChcbiAgICAgIG5ldyBEYXRlKGN1cnJlbnREYXRlICsgJyAnICsgdGhpcy5zZWxlY3RlZERhdGVUaW1lKVxuICAgICk7XG5cbiAgICB0aGlzLmNsb3NlUG9wb3Zlci5lbWl0KCk7XG4gIH1cblxuICBwdWJsaWMgc2V0RGVmYXVsdFRpbWUoKTogdm9pZCB7XG4gICAgbGV0IGN1cnJlbnREYXRlID0gbW9tZW50KCkuZm9ybWF0KCdNTS9ERC9ZWVlZJyk7XG4gICAgdGhpcy5jYWxlbmRhclNlcnZpY2UuZGF0ZUNoYW5nZWQubmV4dChuZXcgRGF0ZShjdXJyZW50RGF0ZSArICcgMDg6MDAnKSk7XG5cbiAgICB0aGlzLmNsb3NlUG9wb3Zlci5lbWl0KCk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2VQb3B1cCgpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlUG9wb3Zlci5lbWl0KCk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlU3RyaW5nRnJvbU91dHB1dCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm91dHB1dFR5cGUuam9pbignJyk7XG4gIH1cblxuICBwdWJsaWMgb25TY3JvbGwoXG4gICAgZXZlbnQ6IEV2ZW50LFxuICAgIHR5cGU6IGtleW9mIFNjcm9sbFR5cGUsXG4gICAgaW5kZXg6IG51bWJlciB8IG51bGwgPSBudWxsXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IHNjcm9sRnJvbVRvcCA9IE1hdGguZmxvb3IoKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkuc2Nyb2xsVG9wKTtcbiAgICBjb25zdCBzY3JvbGxJbmRleCA9IGluZGV4ID09PSBudWxsID8gTWF0aC5mbG9vcihzY3JvbEZyb21Ub3AgLyAyMikgOiBpbmRleDtcbiAgICBjb25zdCBzY3JvbGxSZW1haW5pbmcgPSBzY3JvbEZyb21Ub3AgJSAyMjtcbiAgICBjbGVhckludGVydmFsKHRoaXMuc2Nyb2xsVGltZXIpO1xuICAgIHRoaXMuc2Nyb2xsVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmIChzY3JvbGxSZW1haW5pbmcgPCAxMSAmJiBpbmRleCA9PT0gbnVsbCkge1xuICAgICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5zY3JvbGxUb3AgPSBzY3JvbGxJbmRleCAqIDIyO1xuICAgICAgICB0aGlzLnNjcm9sbFR5cGVzW3R5cGVdID0gc2Nyb2xsSW5kZXg7XG4gICAgICB9IGVsc2UgaWYgKGluZGV4ICE9PSBudWxsKSB7XG4gICAgICAgICg8SFRNTEVsZW1lbnQ+KDxIVE1MRWxlbWVudD5ldmVudC50YXJnZXQpLnBhcmVudE5vZGUpLnNjcm9sbFRvcCA9XG4gICAgICAgICAgc2Nyb2xsSW5kZXggKiAyMjtcbiAgICAgICAgdGhpcy5zY3JvbGxUeXBlc1t0eXBlXSA9IHNjcm9sbEluZGV4O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkuc2Nyb2xsVG9wID0gKHNjcm9sbEluZGV4ICsgMSkgKiAyMjtcbiAgICAgICAgdGhpcy5zY3JvbGxUeXBlc1t0eXBlXSA9IHNjcm9sbEluZGV4ICsgMTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jaGVja0ZvclNjcm9sbGVkVHlwZSh0eXBlKTtcbiAgICB9LCAyMDApO1xuICB9XG5cbiAgcHVibGljIGNoZWNrRm9yU2Nyb2xsZWRUeXBlKHR5cGU6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICh0eXBlID09PSBDYWxlbmRhclNjcm9sbFR5cGVTdHJpbmdFbnVtLkhPVVJTX1NDUk9MTCkge1xuICAgICAgaWYgKHRoaXMuc2Nyb2xsVHlwZXNbdHlwZV0gPj0gMTIpIHtcbiAgICAgICAgdGhpcy5wbUFtU2Nyb2xsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID0gMjI7XG4gICAgICAgIHRoaXMuc2Nyb2xsVHlwZXMucG1BbVNjcm9sbCA9IDE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnBtQW1TY3JvbGwubmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPSAwO1xuICAgICAgICB0aGlzLnNjcm9sbFR5cGVzLnBtQW1TY3JvbGwgPSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0eXBlID09PSBDYWxlbmRhclNjcm9sbFR5cGVTdHJpbmdFbnVtLlBNX0FNX1NDUk9MTCkge1xuICAgICAgaWYgKHRoaXMuc2Nyb2xsVHlwZXNbdHlwZV0gPT09IDApIHtcbiAgICAgICAgaWYgKHRoaXMuc2Nyb2xsVHlwZXMuaG91clNjcm9sbCA+PSAxMikge1xuICAgICAgICAgIHRoaXMuaG91clNjcm9sbC5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCA9XG4gICAgICAgICAgICAodGhpcy5zY3JvbGxUeXBlcy5ob3VyU2Nyb2xsIC0gMTIpICogMjI7XG4gICAgICAgICAgdGhpcy5zY3JvbGxUeXBlcy5ob3VyU2Nyb2xsID0gTWF0aC5mbG9vcihcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsVHlwZXMuaG91clNjcm9sbCAtIDEyXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMuc2Nyb2xsVHlwZXMuaG91clNjcm9sbCA8IDEyKSB7XG4gICAgICAgICAgdGhpcy5ob3VyU2Nyb2xsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID1cbiAgICAgICAgICAgICh0aGlzLnNjcm9sbFR5cGVzLmhvdXJTY3JvbGwgKyAxMikgKiAyMjtcbiAgICAgICAgICB0aGlzLnNjcm9sbFR5cGVzLmhvdXJTY3JvbGwgPSBNYXRoLmZsb29yKFxuICAgICAgICAgICAgdGhpcy5zY3JvbGxUeXBlcy5ob3VyU2Nyb2xsICsgMTJcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5zZWxlY3RlZFRpbWUgPSBgJHt0aGlzLmhvdXJUaW1lc1t0aGlzLnNjcm9sbFR5cGVzLmhvdXJTY3JvbGxdfToke1xuICAgICAgdGhpcy50aW1lTWludXRlc1t0aGlzLnNjcm9sbFR5cGVzLm1pbnV0ZXNTY3JvbGxdXG4gICAgfSAke3RoaXMudGltZU9mRGF5W3RoaXMuc2Nyb2xsVHlwZXMucG1BbVNjcm9sbF19YDtcbiAgfVxuXG4gIHB1YmxpYyB0cmFja0J5SW5kZXgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIGluZGV4O1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5saXN0UHJldmlldyA9IENhbGVuZGFyTGlzdFByZXZpZXdTdHJpbmdFbnVtLkZVTExfTElTVDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRlbXBfaW5wX2hvbGRlclwiPlxuICAgIDxkaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwaWNrZXJzX2hvbGRlciBkYXJrX3BpY2tlclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNhbGVuZGFyTWFpblR5cGUgPT09ICdkYXRlJ1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXRlX3BpY2tlclwiPlxuICAgICAgICAgICAgICAgICAgICA8YXBwLWNhLWN1c3RvbS1kYXRldGltZS1waWNrZXJzLWRhdGUtY2FsZW5kYXJzXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGlzdFByZXZpZXddPVwibGlzdFByZXZpZXdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGVUaW1lXT1cImRhdGVUaW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpc01vbnRoQW5kWWVhck9ubHldPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2lucHV0Q29uZmlnLm5hbWUgPT09ICdkYXRlcGlja2VyQmFua0NhcmQnXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKHNldExpc3RQcmV2aWV3VmFsdWUpPVwic2V0TGlzdFByZXZpZXcoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgID48L2FwcC1jYS1jdXN0b20tZGF0ZXRpbWUtcGlja2Vycy1kYXRlLWNhbGVuZGFycz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2FsZW5kYXJNYWluVHlwZSA9PT0gJ3RpbWUnXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpbWVfcGlja2VyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aW1lX3BpY2tlcl9oZWFkIGQtZmxleFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkX3RpbWUgdGEtZm9udC1ib2xkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgc2VsZWN0ZWRUaW1lIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNlbF9ub3cgdGEtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0RGVmYXVsdFRpbWUoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGltZV9waWNrZXJfYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBpY2tlcl9ib2R5X2hlYWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGEtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJob3ZlcmVkSXRlbSA9PT0gJ2hvdXJzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIb3VyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRhLWZvbnQtYm9sZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaG92ZXJlZEl0ZW0gPT09ICdtaW51dGVzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaW51dGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGEtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJob3ZlcmVkSXRlbSA9PT0gJ3RpbWVzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBTS9QTVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGlja2VyX2JvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNob3VyU2Nyb2xsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb3VzZW91dCk9XCJob3ZlcmVkSXRlbSA9IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW91c2VvdmVyKT1cImhvdmVyZWRJdGVtID0gJ2hvdXJzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzY3JvbGwpPVwib25TY3JvbGwoJGV2ZW50LCAnaG91clNjcm9sbCcpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzY3JvbGxfcGlja2Vyc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgaG91ciBvZiBob3VyVGltZXM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGluZHggPSBpbmRleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFja0J5OiB0cmFja0J5SW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNjcm9sbF9pdGVtIHRhLWZvbnQtbWVkaXVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhY3RpdmVfaXRlbSB0YS1mb250LWJvbGQnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsVHlwZXMuaG91clNjcm9sbCA9PT0gaW5keFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNjcm9sbCgkZXZlbnQsICdob3VyU2Nyb2xsJywgaW5keClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGhvdXIgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNtaW51dGVzU2Nyb2xsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb3VzZW91dCk9XCJob3ZlcmVkSXRlbSA9IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW91c2VvdmVyKT1cImhvdmVyZWRJdGVtID0gJ21pbnV0ZXMnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNjcm9sbCk9XCJvblNjcm9sbCgkZXZlbnQsICdtaW51dGVzU2Nyb2xsJylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNjcm9sbF9waWNrZXJzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBtaW51dGVzIG9mIHRpbWVNaW51dGVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBpbmR4ID0gaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFja0J5OiB0cmFja0J5SW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNjcm9sbF9pdGVtIHRhLWZvbnQtbWVkaXVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhY3RpdmVfaXRlbSB0YS1mb250LWJvbGQnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsVHlwZXMubWludXRlc1Njcm9sbCA9PT0gaW5keFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TY3JvbGwoJGV2ZW50LCAnbWludXRlc1Njcm9sbCcsIGluZHgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBtaW51dGVzIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjcG1BbVNjcm9sbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW91c2VvdXQpPVwiaG92ZXJlZEl0ZW0gPSBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vdXNlb3Zlcik9XCJob3ZlcmVkSXRlbSA9ICd0aW1lcydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2Nyb2xsKT1cIm9uU2Nyb2xsKCRldmVudCwgJ3BtQW1TY3JvbGwnKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2Nyb2xsX3BpY2tlcnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHdoZW4gb2YgdGltZU9mRGF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBpbmR4ID0gaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFja0J5OiB0cmFja0J5SW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNjcm9sbF9pdGVtIHRhLWZvbnQtbWVkaXVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhY3RpdmVfaXRlbSB0YS1mb250LWJvbGQnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsVHlwZXMucG1BbVNjcm9sbCA9PT0gaW5keFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNjcm9sbCgkZXZlbnQsICdwbUFtU2Nyb2xsJywgaW5keClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHdoZW4gfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGlja2VyX2xpbmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJib3JkZXJfbGluZVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJib3JkZXJfbGluZSBsaW5lXzJcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwaWNrZXJfYnV0dG9uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlUG9wdXAoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGlja19idXR0b24gdGEtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENhbmNlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldFRpbWUoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGlja19idXR0b24gc2V0X2J1dHRvbiB0YS1mb250LWJvbGRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEdBR2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsU0FBUztBQUNULE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUs1QixhQUFhO0FBQ2IsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0sNEdBQTRHLENBQUM7QUFFM0ssWUFBWTtBQUNaLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBTXJHLFFBQVE7QUFDUixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7OztBQWF4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WUFBWTtnQkFDSyxhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWU7Z0JBQ0QsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQW1DbkIsWUFBWTtzQkFEZixLQUFLO2dCQVNGLFdBQVc7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgT25EZXN0cm95LFxuICBBZnRlckNvbnRlbnRJbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLy8gbW9tZW50XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5cbi8vIHNlcnZpY2VzXG5pbXBvcnQgeyBDYWxlbmRhckRhdGVUaW1lUGlja2VyU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvY2FsZW5kYXItZGF0ZXRpbWUtcGlja2VyLnNlcnZpY2UnO1xuXG4vLyBjb21wb25lbnRzXG5pbXBvcnQgeyBDYUN1c3RvbURhdGVUaW1lUGlja2Vyc0RhdGVDYWxlbmRhcnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMtZGF0ZS1jYWxlbmRhcnMvY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMtZGF0ZS1jYWxlbmRhcnMuY29tcG9uZW50JztcblxuLy8gY29uc3RhbnRzXG5pbXBvcnQgeyBDdXN0b21EYXRldGltZVBpY2tlcnNDb25zdGFudHMgfSBmcm9tICcuL3V0aWxzL2NvbnN0YW50cy9jdXN0b20tZGF0ZXRpbWUtcGlja2Vycy5jb25zdGFudHMnO1xuXG4vLyBtb2RlbHNcbmltcG9ydCB7IElDYUlucHV0IH0gZnJvbSAnLi4vY2EtaW5wdXQvY29uZmlnL2NhLWlucHV0LmNvbmZpZyc7XG5pbXBvcnQgeyBTY3JvbGxUeXBlIH0gZnJvbSAnLi9tb2RlbHMvc2Nyb2xsLXR5cGUubW9kZWwnO1xuXG4vLyBlbnVtc1xuaW1wb3J0IHsgSW5wdXRDb25maWdOYW1lU3RyaW5nRW51bSB9IGZyb20gJy4uL2NhLWlucHV0L2VudW1zL2lucHV0LWNvbmZpZy1uYW1lLXN0cmluZy5lbnVtJztcbmltcG9ydCB7IENhbGVuZGFyVHlwZVN0cmluZ0VudW0gfSBmcm9tICcuL2VudW1zL2NhbGVuZGFyLXR5cGUtc3RyaW5nLmVudW0nO1xuaW1wb3J0IHsgQ2FsZW5kYXJMaXN0UHJldmlld1N0cmluZ0VudW0gfSBmcm9tICcuL2VudW1zL2NhbGVuZGFyLWxpc3QtcHJldmlldy1zdHJpbmcuZW51bSc7XG5pbXBvcnQgeyBDYWxlbmRhclNjcm9sbFR5cGVTdHJpbmdFbnVtIH0gZnJvbSAnLi9lbnVtcy9jYWxlbmRhci1zY3JvbGwtdHlwZS1zdHJpbmcuZW51bSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jYS1jdXN0b20tZGF0ZXRpbWUtcGlja2VycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYS1jdXN0b20tZGF0ZXRpbWUtcGlja2Vycy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhLWN1c3RvbS1kYXRldGltZS1waWNrZXJzLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgQ2FDdXN0b21EYXRlVGltZVBpY2tlcnNEYXRlQ2FsZW5kYXJzQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDYUN1c3RvbURhdGV0aW1lUGlja2Vyc0NvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlckNvbnRlbnRJbml0XG57XG4gIEBJbnB1dCgpIGRhdGVUaW1lITogRGF0ZTtcbiAgQFZpZXdDaGlsZCgncmVmJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pIHJlZiE6IFZpZXdDb250YWluZXJSZWY7XG4gIHB1YmxpYyBfaW5wdXRDb25maWchOiBJQ2FJbnB1dDtcbiAgQElucHV0KCkgc2V0IGlucHV0Q29uZmlnKGNvbmZpZzogSUNhSW5wdXQpIHtcbiAgICB0aGlzLl9pbnB1dENvbmZpZyA9IGNvbmZpZztcbiAgICBpZiAoXG4gICAgICB0aGlzLl9pbnB1dENvbmZpZy5uYW1lID09PSBJbnB1dENvbmZpZ05hbWVTdHJpbmdFbnVtLkRBVEVfUElDS0VSX0JBTktfQ0FSRFxuICAgIClcbiAgICAgIHRoaXMubGlzdFByZXZpZXcgPSBDYWxlbmRhckxpc3RQcmV2aWV3U3RyaW5nRW51bS5NT05USF9MSVNUO1xuXG4gICAgaWYgKHRoaXMuX2lucHV0Q29uZmlnLm1pbnV0ZXNHYXBGaXZlKVxuICAgICAgdGhpcy50aW1lTWludXRlcyA9IEN1c3RvbURhdGV0aW1lUGlja2Vyc0NvbnN0YW50cy50aW1lTWludXRlc0dhcEZpdmU7XG4gICAgZWxzZSB0aGlzLnRpbWVNaW51dGVzID0gQ3VzdG9tRGF0ZXRpbWVQaWNrZXJzQ29uc3RhbnRzLnRpbWVNaW51dGVzO1xuICB9XG5cbiAgQE91dHB1dCgpIGNsb3NlUG9wb3ZlcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGQoQ2FDdXN0b21EYXRlVGltZVBpY2tlcnNEYXRlQ2FsZW5kYXJzQ29tcG9uZW50KVxuICBkYXRlQ2FsZW5kYXIhOiBDYUN1c3RvbURhdGVUaW1lUGlja2Vyc0RhdGVDYWxlbmRhcnNDb21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoJ3BtQW1TY3JvbGwnKSBwbUFtU2Nyb2xsITogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnbWludXRlc1Njcm9sbCcpIG1pbnV0ZXNTY3JvbGwhOiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCdob3VyU2Nyb2xsJykgaG91clNjcm9sbCE6IEVsZW1lbnRSZWY7XG5cbiAgcHVibGljIHNlbGVjdGVkRGF0ZVRpbWUhOiBzdHJpbmc7XG4gIHB1YmxpYyBjYWxlbmRhck1haW5UeXBlITogc3RyaW5nO1xuICBwdWJsaWMgb3V0cHV0VHlwZSE6IChzdHJpbmcgfCBudW1iZXIpW107XG4gIHB1YmxpYyBjdXJyZW50WWVhcjogbnVtYmVyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuICBwdWJsaWMgY3VycmVudE1vbnRoOiBudW1iZXIgPSBuZXcgRGF0ZSgpLmdldE1vbnRoKCk7XG4gIHB1YmxpYyBjdXJyZW50RGF5OiBudW1iZXIgPSBuZXcgRGF0ZSgpLmdldERhdGUoKTtcbiAgcHVibGljIGxpc3RQcmV2aWV3OiBzdHJpbmcgPSBDYWxlbmRhckxpc3RQcmV2aWV3U3RyaW5nRW51bS5GVUxMX0xJU1Q7XG4gIHB1YmxpYyB0aW1lTWludXRlcyE6IHN0cmluZ1tdO1xuICBwdWJsaWMgbW9udGhBcnJheTogbnVtYmVyW10gPSBuZXcgQXJyYXkoMTIpXG4gICAgLmZpbGwoMClcbiAgICAubWFwKChfLCBpbmR4KSA9PiBpbmR4ICsgMSk7XG4gIHB1YmxpYyBtb250aERheUxpc3Q6IG51bWJlcltdID0gbmV3IEFycmF5KDMxKVxuICAgIC5maWxsKDApXG4gICAgLm1hcCgoXywgaW5keCkgPT4gaW5keCArIDEpO1xuICBwdWJsaWMgeWVhcnNMaXN0OiAoc3RyaW5nIHwgbnVtYmVyKVtdID0gbmV3IEFycmF5KDEwMClcbiAgICAuZmlsbCgwKVxuICAgIC5tYXAoKF8sIGlkeCkgPT4gKGlkeCA8IDEwID8gJzAnICsgaWR4IDogaWR4KSk7XG4gIHB1YmxpYyBzY3JvbGxUaW1lciE6IE5vZGVKUy5UaW1lb3V0IHwgbnVtYmVyO1xuICBwdWJsaWMgaG92ZXJlZEl0ZW0hOiBzdHJpbmcgfCBudWxsO1xuICBwdWJsaWMgaXNJbnB1dEZvY3VzITogYm9vbGVhbjtcbiAgcHVibGljIG1vbnRoTmFtZXM6IHN0cmluZ1tdID0gQ3VzdG9tRGF0ZXRpbWVQaWNrZXJzQ29uc3RhbnRzLm1vbnRoTmFtZXM7XG4gIHB1YmxpYyBob3VyVGltZXM6IG51bWJlcltdID0gQ3VzdG9tRGF0ZXRpbWVQaWNrZXJzQ29uc3RhbnRzLmhvdXJUaW1lcztcbiAgcHVibGljIHNjcm9sbFR5cGVzOiBTY3JvbGxUeXBlID1cbiAgICBDdXN0b21EYXRldGltZVBpY2tlcnNDb25zdGFudHMuZGVmYXVsdFNjcm9sbFR5cGVzO1xuICBwdWJsaWMgc2VsZWN0ZWRUaW1lOiBzdHJpbmcgPVxuICAgIEN1c3RvbURhdGV0aW1lUGlja2Vyc0NvbnN0YW50cy5kZWZhdWx0U2VsZWN0ZWRUaW1lO1xuICBwdWJsaWMgdGltZU9mRGF5OiBzdHJpbmdbXSA9IEN1c3RvbURhdGV0aW1lUGlja2Vyc0NvbnN0YW50cy50aW1lT2ZEYXk7XG5cbiAgcHVibGljIHByZXZpb3VzUmFuZ2VTaWRlITogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNhbGVuZGFyU2VydmljZTogQ2FsZW5kYXJEYXRlVGltZVBpY2tlclNlcnZpY2UpIHt9XG5cbiAgQElucHV0KClcbiAgc2V0IGNhbGVuZGFyVHlwZShjYWxlbmRhclR5cGU6IHN0cmluZykge1xuICAgIHRoaXMuY2FsZW5kYXJNYWluVHlwZSA9IGNhbGVuZGFyVHlwZTtcbiAgICBpZiAoY2FsZW5kYXJUeXBlID09PSBDYWxlbmRhclR5cGVTdHJpbmdFbnVtLlRJTUUpXG4gICAgICB0aGlzLm91dHB1dFR5cGUgPSBDdXN0b21EYXRldGltZVBpY2tlcnNDb25zdGFudHMuZGVmYXVsdE91dHB1dFR5cGVUaW1lO1xuICAgIGVsc2UgdGhpcy5vdXRwdXRUeXBlID0gQ3VzdG9tRGF0ZXRpbWVQaWNrZXJzQ29uc3RhbnRzLmRlZmF1bHRPdXRwdXRUeXBlRGF0ZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBwbGFjZWhvbGRlcihwbGFjZWhvbGRlcjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZWxlY3RlZERhdGVUaW1lID0gcGxhY2Vob2xkZXI7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXREYXRlQ2hhbmdlZExpc3RlbmVyKCk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy5zZXRUaW1lVmFsdWUoKTtcbiAgICB0aGlzLmNoYW5nZU9wZW5lZCgpO1xuICB9XG5cbiAgcHVibGljIGluaXREYXRlQ2hhbmdlZExpc3RlbmVyKCk6IHZvaWQge1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmRhdGVDaGFuZ2VkLnN1YnNjcmliZSgoZGF0ZSkgPT4ge1xuICAgICAgaWYgKHRoaXMuY2FsZW5kYXJNYWluVHlwZSAhPT0gQ2FsZW5kYXJUeXBlU3RyaW5nRW51bS5USU1FKSB7XG4gICAgICAgIHRoaXMub3V0cHV0VHlwZVswXSA9IGRhdGVbMF07XG4gICAgICAgIHRoaXMub3V0cHV0VHlwZVsyXSA9IGRhdGVbMV07XG4gICAgICAgIHRoaXMub3V0cHV0VHlwZVs0XSA9IGRhdGVbMl07XG4gICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlVGltZSA9IHRoaXMuY3JlYXRlU3RyaW5nRnJvbU91dHB1dCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNldFRpbWVWYWx1ZSgpIHtcbiAgICBjb25zdCBkYXRlSW5wdXRBcnJheSA9IG1vbWVudCh0aGlzLmRhdGVUaW1lKS5mb3JtYXQoJ0gvbW0vQScpLnNwbGl0KCcvJyk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnNjcm9sbFR5cGVzLmhvdXJTY3JvbGwgPSB0aGlzLmhvdXJUaW1lcy5pbmRleE9mKFxuICAgICAgICBwYXJzZUludChkYXRlSW5wdXRBcnJheVswXSlcbiAgICAgICk7XG4gICAgICB0aGlzLnNjcm9sbFR5cGVzLm1pbnV0ZXNTY3JvbGwgPSB0aGlzLnRpbWVNaW51dGVzLmluZGV4T2YoXG4gICAgICAgIGRhdGVJbnB1dEFycmF5WzFdXG4gICAgICApO1xuXG4gICAgICB0aGlzLnNjcm9sbFR5cGVzLnBtQW1TY3JvbGwgPSBkYXRlSW5wdXRBcnJheVsyXSA9PT0gJ0FNJyA/IDAgOiAxO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNldExpc3RQcmV2aWV3KHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RQcmV2aWV3ID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgaW5wdXRJbkZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuaXNJbnB1dEZvY3VzID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBpbnB1dEJsdXIoKTogdm9pZCB7XG4gICAgdGhpcy5pc0lucHV0Rm9jdXMgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VPcGVuZWQoKTogdm9pZCB7XG4gICAgLy8gdGhpcy5pc0lucHV0Rm9jdXMgPSBlO1xuICAgIC8vIGlmIChlKSB7XG4gICAgaWYgKHRoaXMuY2FsZW5kYXJNYWluVHlwZSA9PT0gQ2FsZW5kYXJUeXBlU3RyaW5nRW51bS5USU1FKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5ob3VyU2Nyb2xsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID1cbiAgICAgICAgICB0aGlzLnNjcm9sbFR5cGVzLmhvdXJTY3JvbGwgKiAyMjtcbiAgICAgICAgdGhpcy5taW51dGVzU2Nyb2xsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID1cbiAgICAgICAgICB0aGlzLnNjcm9sbFR5cGVzLm1pbnV0ZXNTY3JvbGwgKiAyMjtcbiAgICAgICAgdGhpcy5wbUFtU2Nyb2xsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID1cbiAgICAgICAgICB0aGlzLnNjcm9sbFR5cGVzLnBtQW1TY3JvbGwgKiAyMjtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgdGVzdCA9IGAke1xuICAgICAgICB0aGlzLmRhdGVUaW1lLmdldE1vbnRoKCkgKyAxXG4gICAgICB9LyR7dGhpcy5kYXRlVGltZS5nZXREYXRlKCl9LyR7dGhpcy5kYXRlVGltZS5nZXRGdWxsWWVhcigpfWA7XG5cbiAgICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLnNjcm9sbFRvRGF0ZS5uZXh0KFxuICAgICAgICBgJHtcbiAgICAgICAgICB0aGlzLmRhdGVUaW1lLmdldE1vbnRoKCkgKyAxXG4gICAgICAgIH0vJHt0aGlzLmRhdGVUaW1lLmdldERhdGUoKX0vJHt0aGlzLmRhdGVUaW1lLmdldEZ1bGxZZWFyKCl9YFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2V0VGltZSgpOiB2b2lkIHtcbiAgICB0aGlzLm91dHB1dFR5cGVbMF0gPSB0aGlzLmhvdXJUaW1lc1t0aGlzLnNjcm9sbFR5cGVzLmhvdXJTY3JvbGxdO1xuICAgIHRoaXMub3V0cHV0VHlwZVsyXSA9IHRoaXMudGltZU1pbnV0ZXNbdGhpcy5zY3JvbGxUeXBlcy5taW51dGVzU2Nyb2xsXTtcbiAgICB0aGlzLm91dHB1dFR5cGVbNF0gPSB0aGlzLnRpbWVPZkRheVt0aGlzLnNjcm9sbFR5cGVzLnBtQW1TY3JvbGxdO1xuXG4gICAgdGhpcy5zZWxlY3RlZERhdGVUaW1lID0gdGhpcy5jcmVhdGVTdHJpbmdGcm9tT3V0cHV0KCk7XG5cbiAgICBsZXQgY3VycmVudERhdGUgPSBtb21lbnQoKS5mb3JtYXQoJ01NL0REL1lZWVknKTtcblxuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmRhdGVDaGFuZ2VkLm5leHQoXG4gICAgICBuZXcgRGF0ZShjdXJyZW50RGF0ZSArICcgJyArIHRoaXMuc2VsZWN0ZWREYXRlVGltZSlcbiAgICApO1xuXG4gICAgdGhpcy5jbG9zZVBvcG92ZXIuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIHNldERlZmF1bHRUaW1lKCk6IHZvaWQge1xuICAgIGxldCBjdXJyZW50RGF0ZSA9IG1vbWVudCgpLmZvcm1hdCgnTU0vREQvWVlZWScpO1xuICAgIHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmRhdGVDaGFuZ2VkLm5leHQobmV3IERhdGUoY3VycmVudERhdGUgKyAnIDA4OjAwJykpO1xuXG4gICAgdGhpcy5jbG9zZVBvcG92ZXIuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIGNsb3NlUG9wdXAoKTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZVBvcG92ZXIuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIGNyZWF0ZVN0cmluZ0Zyb21PdXRwdXQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5vdXRwdXRUeXBlLmpvaW4oJycpO1xuICB9XG5cbiAgcHVibGljIG9uU2Nyb2xsKFxuICAgIGV2ZW50OiBFdmVudCxcbiAgICB0eXBlOiBrZXlvZiBTY3JvbGxUeXBlLFxuICAgIGluZGV4OiBudW1iZXIgfCBudWxsID0gbnVsbFxuICApOiB2b2lkIHtcbiAgICBjb25zdCBzY3JvbEZyb21Ub3AgPSBNYXRoLmZsb29yKChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLnNjcm9sbFRvcCk7XG4gICAgY29uc3Qgc2Nyb2xsSW5kZXggPSBpbmRleCA9PT0gbnVsbCA/IE1hdGguZmxvb3Ioc2Nyb2xGcm9tVG9wIC8gMjIpIDogaW5kZXg7XG4gICAgY29uc3Qgc2Nyb2xsUmVtYWluaW5nID0gc2Nyb2xGcm9tVG9wICUgMjI7XG4gICAgY2xlYXJJbnRlcnZhbCh0aGlzLnNjcm9sbFRpbWVyKTtcbiAgICB0aGlzLnNjcm9sbFRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAoc2Nyb2xsUmVtYWluaW5nIDwgMTEgJiYgaW5kZXggPT09IG51bGwpIHtcbiAgICAgICAgKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkuc2Nyb2xsVG9wID0gc2Nyb2xsSW5kZXggKiAyMjtcbiAgICAgICAgdGhpcy5zY3JvbGxUeXBlc1t0eXBlXSA9IHNjcm9sbEluZGV4O1xuICAgICAgfSBlbHNlIGlmIChpbmRleCAhPT0gbnVsbCkge1xuICAgICAgICAoPEhUTUxFbGVtZW50Pig8SFRNTEVsZW1lbnQ+ZXZlbnQudGFyZ2V0KS5wYXJlbnROb2RlKS5zY3JvbGxUb3AgPVxuICAgICAgICAgIHNjcm9sbEluZGV4ICogMjI7XG4gICAgICAgIHRoaXMuc2Nyb2xsVHlwZXNbdHlwZV0gPSBzY3JvbGxJbmRleDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLnNjcm9sbFRvcCA9IChzY3JvbGxJbmRleCArIDEpICogMjI7XG4gICAgICAgIHRoaXMuc2Nyb2xsVHlwZXNbdHlwZV0gPSBzY3JvbGxJbmRleCArIDE7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2hlY2tGb3JTY3JvbGxlZFR5cGUodHlwZSk7XG4gICAgfSwgMjAwKTtcbiAgfVxuXG4gIHB1YmxpYyBjaGVja0ZvclNjcm9sbGVkVHlwZSh0eXBlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAodHlwZSA9PT0gQ2FsZW5kYXJTY3JvbGxUeXBlU3RyaW5nRW51bS5IT1VSU19TQ1JPTEwpIHtcbiAgICAgIGlmICh0aGlzLnNjcm9sbFR5cGVzW3R5cGVdID49IDEyKSB7XG4gICAgICAgIHRoaXMucG1BbVNjcm9sbC5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCA9IDIyO1xuICAgICAgICB0aGlzLnNjcm9sbFR5cGVzLnBtQW1TY3JvbGwgPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5wbUFtU2Nyb2xsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID0gMDtcbiAgICAgICAgdGhpcy5zY3JvbGxUeXBlcy5wbUFtU2Nyb2xsID0gMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodHlwZSA9PT0gQ2FsZW5kYXJTY3JvbGxUeXBlU3RyaW5nRW51bS5QTV9BTV9TQ1JPTEwpIHtcbiAgICAgIGlmICh0aGlzLnNjcm9sbFR5cGVzW3R5cGVdID09PSAwKSB7XG4gICAgICAgIGlmICh0aGlzLnNjcm9sbFR5cGVzLmhvdXJTY3JvbGwgPj0gMTIpIHtcbiAgICAgICAgICB0aGlzLmhvdXJTY3JvbGwubmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPVxuICAgICAgICAgICAgKHRoaXMuc2Nyb2xsVHlwZXMuaG91clNjcm9sbCAtIDEyKSAqIDIyO1xuICAgICAgICAgIHRoaXMuc2Nyb2xsVHlwZXMuaG91clNjcm9sbCA9IE1hdGguZmxvb3IoXG4gICAgICAgICAgICB0aGlzLnNjcm9sbFR5cGVzLmhvdXJTY3JvbGwgLSAxMlxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICh0aGlzLnNjcm9sbFR5cGVzLmhvdXJTY3JvbGwgPCAxMikge1xuICAgICAgICAgIHRoaXMuaG91clNjcm9sbC5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCA9XG4gICAgICAgICAgICAodGhpcy5zY3JvbGxUeXBlcy5ob3VyU2Nyb2xsICsgMTIpICogMjI7XG4gICAgICAgICAgdGhpcy5zY3JvbGxUeXBlcy5ob3VyU2Nyb2xsID0gTWF0aC5mbG9vcihcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsVHlwZXMuaG91clNjcm9sbCArIDEyXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0ZWRUaW1lID0gYCR7dGhpcy5ob3VyVGltZXNbdGhpcy5zY3JvbGxUeXBlcy5ob3VyU2Nyb2xsXX06JHtcbiAgICAgIHRoaXMudGltZU1pbnV0ZXNbdGhpcy5zY3JvbGxUeXBlcy5taW51dGVzU2Nyb2xsXVxuICAgIH0gJHt0aGlzLnRpbWVPZkRheVt0aGlzLnNjcm9sbFR5cGVzLnBtQW1TY3JvbGxdfWA7XG4gIH1cblxuICBwdWJsaWMgdHJhY2tCeUluZGV4KGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMubGlzdFByZXZpZXcgPSBDYWxlbmRhckxpc3RQcmV2aWV3U3RyaW5nRW51bS5GVUxMX0xJU1Q7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0ZW1wX2lucF9ob2xkZXJcIj5cbiAgICA8ZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicGlja2Vyc19ob2xkZXIgZGFya19waWNrZXJcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjYWxlbmRhck1haW5UeXBlID09PSAnZGF0ZSdcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZV9waWNrZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGFwcC1jYS1jdXN0b20tZGF0ZXRpbWUtcGlja2Vycy1kYXRlLWNhbGVuZGFyc1xuICAgICAgICAgICAgICAgICAgICAgICAgW2xpc3RQcmV2aWV3XT1cImxpc3RQcmV2aWV3XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRlVGltZV09XCJkYXRlVGltZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXNNb250aEFuZFllYXJPbmx5XT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9pbnB1dENvbmZpZy5uYW1lID09PSAnZGF0ZXBpY2tlckJhbmtDYXJkJ1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChzZXRMaXN0UHJldmlld1ZhbHVlKT1cInNldExpc3RQcmV2aWV3KCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICA+PC9hcHAtY2EtY3VzdG9tLWRhdGV0aW1lLXBpY2tlcnMtZGF0ZS1jYWxlbmRhcnM+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNhbGVuZGFyTWFpblR5cGUgPT09ICd0aW1lJ1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aW1lX3BpY2tlclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGltZV9waWNrZXJfaGVhZCBkLWZsZXhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RlZF90aW1lIHRhLWZvbnQtYm9sZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHNlbGVjdGVkVGltZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzZWxfbm93IHRhLWZvbnQtYm9sZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldERlZmF1bHRUaW1lKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHRcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpbWVfcGlja2VyX2JvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwaWNrZXJfYm9keV9oZWFkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRhLWZvbnQtYm9sZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaG92ZXJlZEl0ZW0gPT09ICdob3VycydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSG91clxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0YS1mb250LWJvbGRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImhvdmVyZWRJdGVtID09PSAnbWludXRlcydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWludXRlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRhLWZvbnQtYm9sZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaG92ZXJlZEl0ZW0gPT09ICd0aW1lcydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQU0vUE1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBpY2tlcl9ib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjaG91clNjcm9sbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW91c2VvdXQpPVwiaG92ZXJlZEl0ZW0gPSBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vdXNlb3Zlcik9XCJob3ZlcmVkSXRlbSA9ICdob3VycydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2Nyb2xsKT1cIm9uU2Nyb2xsKCRldmVudCwgJ2hvdXJTY3JvbGwnKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2Nyb2xsX3BpY2tlcnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGhvdXIgb2YgaG91clRpbWVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBpbmR4ID0gaW5kZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2tCeTogdHJhY2tCeUluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzY3JvbGxfaXRlbSB0YS1mb250LW1lZGl1bVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYWN0aXZlX2l0ZW0gdGEtZm9udC1ib2xkJzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbFR5cGVzLmhvdXJTY3JvbGwgPT09IGluZHhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TY3JvbGwoJGV2ZW50LCAnaG91clNjcm9sbCcsIGluZHgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBob3VyIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjbWludXRlc1Njcm9sbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW91c2VvdXQpPVwiaG92ZXJlZEl0ZW0gPSBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vdXNlb3Zlcik9XCJob3ZlcmVkSXRlbSA9ICdtaW51dGVzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzY3JvbGwpPVwib25TY3JvbGwoJGV2ZW50LCAnbWludXRlc1Njcm9sbCcpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzY3JvbGxfcGlja2Vyc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgbWludXRlcyBvZiB0aW1lTWludXRlcztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgaW5keCA9IGluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2tCeTogdHJhY2tCeUluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzY3JvbGxfaXRlbSB0YS1mb250LW1lZGl1bVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYWN0aXZlX2l0ZW0gdGEtZm9udC1ib2xkJzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbFR5cGVzLm1pbnV0ZXNTY3JvbGwgPT09IGluZHhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uU2Nyb2xsKCRldmVudCwgJ21pbnV0ZXNTY3JvbGwnLCBpbmR4KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgbWludXRlcyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI3BtQW1TY3JvbGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vdXNlb3V0KT1cImhvdmVyZWRJdGVtID0gbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb3VzZW92ZXIpPVwiaG92ZXJlZEl0ZW0gPSAndGltZXMnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNjcm9sbCk9XCJvblNjcm9sbCgkZXZlbnQsICdwbUFtU2Nyb2xsJylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNjcm9sbF9waWNrZXJzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB3aGVuIG9mIHRpbWVPZkRheTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgaW5keCA9IGluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2tCeTogdHJhY2tCeUluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzY3JvbGxfaXRlbSB0YS1mb250LW1lZGl1bVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYWN0aXZlX2l0ZW0gdGEtZm9udC1ib2xkJzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbFR5cGVzLnBtQW1TY3JvbGwgPT09IGluZHhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TY3JvbGwoJGV2ZW50LCAncG1BbVNjcm9sbCcsIGluZHgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyB3aGVuIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBpY2tlcl9saW5lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYm9yZGVyX2xpbmVcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYm9yZGVyX2xpbmUgbGluZV8yXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGlja2VyX2J1dHRvbnNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjbG9zZVBvcHVwKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBpY2tfYnV0dG9uIHRhLWZvbnQtYm9sZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZXRUaW1lKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBpY2tfYnV0dG9uIHNldF9idXR0b24gdGEtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|