ca-components 1.1.9991 → 1.1.9992
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-filters/components/ca-location-filter/ca-location-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-input-address-dropdown/ca-input-address-dropdown.component.mjs +6 -25
- package/fesm2022/ca-components.mjs +6 -25
- package/fesm2022/ca-components.mjs.map +1 -1
- package/lib/components/ca-input-address-dropdown/ca-input-address-dropdown.component.d.ts +2 -6
- package/package.json +1 -1
|
@@ -232,7 +232,7 @@ export class CaLocationFilterComponent {
|
|
|
232
232
|
// modules
|
|
233
233
|
AngularSvgIconModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: HttpClientModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type:
|
|
234
234
|
// components
|
|
235
|
-
CaTabSwitchComponent, selector: "app-ca-tab-switch", inputs: ["tabs", "type", "hasDashboardHeight", "subPeriodDropdownList", "selectedSubPeriod", "isClearCustomPeriodRangeValue", "isDisabled", "isBold"], outputs: ["switchClicked", "customPeriodRangeEmitter", "customPeriodRangeSubperiodEmitter", "popoverClosedEmitter"] }, { kind: "component", type: CaInputAddressDropdownComponent, selector: "app-ca-input-address-dropdown", inputs: ["placeholderType", "
|
|
235
|
+
CaTabSwitchComponent, selector: "app-ca-tab-switch", inputs: ["tabs", "type", "hasDashboardHeight", "subPeriodDropdownList", "selectedSubPeriod", "isClearCustomPeriodRangeValue", "isDisabled", "isBold"], outputs: ["switchClicked", "customPeriodRangeEmitter", "customPeriodRangeSubperiodEmitter", "popoverClosedEmitter"] }, { kind: "component", type: CaInputAddressDropdownComponent, selector: "app-ca-input-address-dropdown", inputs: ["placeholderType", "receivedAddressData", "receivedAddressList", "inputConfig", "commandHandler", "isRouting", "closedBorder", "incorrectValue", "hideEmptyLoaded"], outputs: ["sentAddressValue", "selectedAddress", "sentAddressData", "closeDropdown", "commandEvent", "changeFlag", "incorrectEvent"] }, { kind: "component", type: CaNgxSliderComponent, selector: "app-ca-ngx-slider", inputs: ["sliderTemplate", "sliderName", "sliderOptions", "startedValue", "customClass", "minValue", "maxValue", "isDisabled"], outputs: ["onUserValueChange", "onUserHighValueChange"] }], animations: [
|
|
236
236
|
inOutAnimation('inOutAnimation'),
|
|
237
237
|
showAnimation('showAnimation'),
|
|
238
238
|
areaLeftSideAnimation('areaLeftSideAnimation'),
|
|
@@ -271,4 +271,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
271
271
|
}], addressList: [{
|
|
272
272
|
type: Input
|
|
273
273
|
}] } });
|
|
274
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWZpbHRlcnMvY29tcG9uZW50cy9jYS1sb2NhdGlvbi1maWx0ZXIvY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWZpbHRlcnMvY29tcG9uZW50cy9jYS1sb2NhdGlvbi1maWx0ZXIvY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFDTCxXQUFXLEVBQ1gsbUJBQW1CLEdBR3BCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsVUFBVTtBQUNWLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxRQUFRO0FBQ1IsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRTNGLGFBQWE7QUFDYixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnR0FBZ0csQ0FBQztBQUVuSSxhQUFhO0FBQ2IsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pF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SztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgT3B0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyLXNsaWRlci9uZ3gtc2xpZGVyJztcbmltcG9ydCB7XG4gIEZvcm1zTW9kdWxlLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIFVudHlwZWRGb3JtR3JvdXAsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLy8gbW9kdWxlc1xuaW1wb3J0IHsgQW5ndWxhclN2Z0ljb25Nb2R1bGUgfSBmcm9tICdhbmd1bGFyLXN2Zy1pY29uJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG4vLyBlbnVtc1xuaW1wb3J0IHsgTG9hZFN0YXR1c0VudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtcy9sb2FkLXN0YXR1cy5lbnVtJztcbmltcG9ydCB7IFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtIH0gZnJvbSAnLi4vLi4vLi4vY2EtbWFwL2VudW1zL3Rvb2xiYXItZmlsdGVyLXN0cmluZy5lbnVtJztcblxuLy8gdmFsaWRhdG9yc1xuaW1wb3J0IHsgYWRkcmVzc1ZhbGlkYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2NhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24vdmFsaWRhdG9ycy9jYS1pbnB1dC1hZGRyZXNzLnJlZ2V4LXZhbGlkYXRpb25zJztcblxuLy8gYW5pbWF0aW9uc1xuaW1wb3J0IHsgaW5PdXRBbmltYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9hbmltYXRpb25zL2luLW91dC5hbmltYXRpb24nO1xuaW1wb3J0IHsgc2hvd0FuaW1hdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2FuaW1hdGlvbnMvc2hvdy5hbmltYXRpb24nO1xuaW1wb3J0IHsgYXJlYUxlZnRTaWRlQW5pbWF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vYW5pbWF0aW9ucy9hcmVhLWxlZnQtc2lkZS5hbmltYXRpb24nO1xuaW1wb3J0IHsgYXJlYVJpZ2h0U2lkZUFuaW1hdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2FuaW1hdGlvbnMvYXJlYS1yaWdodC1zaWRlLmFuaW1hdGlvbic7XG5cbi8vIHV0aWxzXG5pbXBvcnQgeyBDYUZpbHRlcnNTdmdSb3V0ZXMgfSBmcm9tICcuLi8uLi91dGlscy9zdmctcm91dGVzL2NhLWZpbHRlcnMtc3ZnLXJvdXRlcyc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgQXJyYXlTdGF0dXMgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvYXJyYXktc3RhdHVzLm1vZGVsJztcbmltcG9ydCB7IGZpbHRlck91dHB1dCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXItb3V0cHV0Lm1vZGVsJztcbmltcG9ydCB7IGZpbHRlck91dHB1dFdpdGhQYXJhbXMgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLW91dHB1dC1wYXJhbXMubW9kZWwnO1xuaW1wb3J0IHsgQXJlYUJveFRhYiB9IGZyb20gJy4vbW9kZWxzL2FyZWEtYm94LXRhYi5tb2RlbCc7XG5cbi8vIGNvbnN0YW50c1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlnQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29uc3RhbnRzL2ZpbHRlci1jb25maWcuY29uc3RhbnRzJztcbmltcG9ydCB7IExvY2F0aW9uRmlsdGVyQ29uc3RhbnRzIH0gZnJvbSAnLi91dGlscy9jb25zdGFudHMvbG9jYXRpb24tZmlsdGVyLmNvbnN0YW50cyc7XG5cbi8vIGNvbXBvbmVudHNcbmltcG9ydCB7IENhVGFiU3dpdGNoQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY2EtdGFiLXN3aXRjaC9jYS10YWItc3dpdGNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYUlucHV0QWRkcmVzc0Ryb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9jYS1pbnB1dC1hZGRyZXNzLWRyb3Bkb3duL2NhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB7IENhTmd4U2xpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY2Etbmd4LXNsaWRlci9jYS1uZ3gtc2xpZGVyLmNvbXBvbmVudCc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgQWRkcmVzc0RhdGEgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2NhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24vbW9kZWxzL2FkZHJlc3MtZGF0YS5tb2RlbCc7XG5pbXBvcnQgeyBBZGRyZXNzTGlzdCB9IGZyb20gJy4uLy4uLy4uL2NhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24vbW9kZWxzL2FkZHJlc3MtbGlzdC5tb2RlbCc7XG5cbi8vIGhlbHBlcnNcbmltcG9ydCB7IEZpbHRlckhlbHBlciB9IGZyb20gJy4uLy4uL3V0aWxzL2hlbHBlcnMnO1xuaW1wb3J0IHsgQ2FMb2NhdGlvbkZpbHRlckNvbmZpZyB9IGZyb20gJy4vY29uZmlnL2NhLWxvY2F0aW9uLWZpbHRlci5jb25maWcnO1xuaW1wb3J0IHsgSUNhSW5wdXQgfSBmcm9tICcuLi8uLi8uLi9jYS1pbnB1dC9jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY2EtbG9jYXRpb24tZmlsdGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIC8vIG1vZHVsZXNcbiAgICBBbmd1bGFyU3ZnSWNvbk1vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIC8vIGNvbXBvbmVudHNcbiAgICBDYVRhYlN3aXRjaENvbXBvbmVudCxcbiAgICBDYUlucHV0QWRkcmVzc0Ryb3Bkb3duQ29tcG9uZW50LFxuICAgIENhTmd4U2xpZGVyQ29tcG9uZW50XG5dLFxuICB0ZW1wbGF0ZVVybDogJy4vY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICBpbk91dEFuaW1hdGlvbignaW5PdXRBbmltYXRpb24nKSxcbiAgICBzaG93QW5pbWF0aW9uKCdzaG93QW5pbWF0aW9uJyksXG4gICAgYXJlYUxlZnRTaWRlQW5pbWF0aW9uKCdhcmVhTGVmdFNpZGVBbmltYXRpb24nKSxcbiAgICBhcmVhUmlnaHRTaWRlQW5pbWF0aW9uKCdhcmVhUmlnaHRTaWRlQW5pbWF0aW9uJyksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIENhTG9jYXRpb25GaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHR5cGUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHRvRG9TdWJUeXBlITogc3RyaW5nO1xuICBASW5wdXQoKSBpc0xlZ2VuZFZpZXc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgaXNGaWx0ZXJBY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgaXNBcmVhRmlsdGVyOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgYWRkcmVzc0xpc3QhOiBBZGRyZXNzTGlzdFtdO1xuXG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHB1YmxpYyBsb2NhdGlvblNsaWRlckRhdGE6IE9wdGlvbnMgPVxuICAgIEZpbHRlckNvbmZpZ0NvbnN0YW50cy5MT0NBVElPTl9TTElERVJfREFUQTtcblxuICBwdWJsaWMgbG9jYXRpb25OYW1lU2V0ITogc3RyaW5nIHwgbnVsbDtcbiAgcHVibGljIGxvY2F0aW9uRm9ybSE6IFVudHlwZWRGb3JtR3JvdXA7XG5cbiAgcHVibGljIGxvY2F0aW9uUmFuZ2U6IG51bWJlciA9IDI1O1xuICBwdWJsaWMgbG9jYXRpb25SYW5nZVNldDogbnVtYmVyID0gMjU7XG5cbiAgcHVibGljIGxvbmdWYWw6IG51bWJlciA9IDA7XG4gIHB1YmxpYyBsYXRWYWw6IG51bWJlciA9IDA7XG5cbiAgcHVibGljIG9yaWdpbkxvbmdWYWw6IG51bWJlciA9IDA7XG4gIHB1YmxpYyBvcmlnaW5MYXRWYWw6IG51bWJlciA9IDA7XG5cbiAgcHVibGljIGRlc3RMb25nVmFsOiBudW1iZXIgPSAwO1xuICBwdWJsaWMgZGVzdExhdFZhbDogbnVtYmVyID0gMDtcblxuICBwdWJsaWMgbG9uZ1ZhbHVlU2V0OiBudW1iZXIgPSAwO1xuICBwdWJsaWMgbGF0VmFsU2V0OiBudW1iZXIgPSAwO1xuXG4gIHB1YmxpYyBvcmlnaW5Mb25nVmFsU2V0OiBudW1iZXIgPSAwO1xuICBwdWJsaWMgb3JpZ2luTGF0VmFsU2V0OiBudW1iZXIgPSAwO1xuXG4gIHB1YmxpYyBkZXN0TG9uZ1ZhbFNldDogbnVtYmVyID0gMDtcbiAgcHVibGljIGRlc3RMYXRWYWxTZXQ6IG51bWJlciA9IDA7XG5cbiAgcHVibGljIHVuc2VsZWN0ZWRWaXNpYmxlQ291bnQ6IG51bWJlciA9IDA7XG4gIHB1YmxpYyBhcmVhRmlsdGVyU2VsZWN0ZWQhOiBzdHJpbmc7XG5cbiAgcHVibGljIGlzQnV0dG9uQXZhaWxhYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBpc0FzY2VuZGluZ1NvcnRPcmRlcjogYm9vbGVhbiA9IHRydWU7XG5cbiAgcHVibGljIGxvYWRTdGF0dXNFbnVtID0gTG9hZFN0YXR1c0VudW07XG4gIHB1YmxpYyBmaWx0ZXJBY3RpdmVBcnJheTogQXJyYXlTdGF0dXNbXSA9IFtdO1xuICBwdWJsaWMgdG90YWxGaWx0ZXJzTnVtOiBudW1iZXIgPSAwO1xuXG4gIHB1YmxpYyBhcmVhRm9ybSE6IFVudHlwZWRGb3JtR3JvdXA7XG4gIHB1YmxpYyBsb2NhdGlvblN0YXRlITogc3RyaW5nIHwgbnVsbDtcbiAgcHVibGljIHJhbmdlVmFsdWU6IG51bWJlciA9IDA7XG4gIHB1YmxpYyBkZXN0aW5hdGlvblN0YXRlITogc3RyaW5nO1xuICBwdWJsaWMgb3JpZ2luU3RhdGUhOiBzdHJpbmc7XG4gIHB1YmxpYyBoYXNTaWRlQW5pbWF0aW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIGFyZWFCb3hUYWI6IEFyZWFCb3hUYWJbXSA9IExvY2F0aW9uRmlsdGVyQ29uc3RhbnRzLkFSRUFfQk9YX1RBQjtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNyZWF0ZUZvcm0oKTtcblxuICAgIHRoaXMud2F0Y2hMb2NhdGlvbkZvcm1WYWx1ZUNoYW5nZXMoKTtcblxuICAgIHRoaXMud2F0Y2hBcmVhRm9ybVZhbHVlQ2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0IGdldE9yaWdpbkNvbnRyb2woKTogSUNhSW5wdXQge1xuICAgIHJldHVybiBDYUxvY2F0aW9uRmlsdGVyQ29uZmlnLm9yaWdpbkNvbnRyb2woKTtcbiAgfVxuXG4gIGdldCBnZXREZXN0aW5hdGlvbkNvbnRyb2woKTogSUNhSW5wdXQge1xuICAgIHJldHVybiBDYUxvY2F0aW9uRmlsdGVyQ29uZmlnLmRlc3RpbmF0aW9uQ29udHJvbCgpO1xuICB9XG5cbiAgZ2V0IGdldEFkZHJlc3NDb250cm9sKCk6IElDYUlucHV0IHtcbiAgICByZXR1cm4gQ2FMb2NhdGlvbkZpbHRlckNvbmZpZy5hZGRyZXNzQ29udHJvbCgpO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyKSB7fVxuXG4gIHByaXZhdGUgY3JlYXRlRm9ybSgpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2F0aW9uRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgYWRkcmVzczogW251bGwsIFsuLi5hZGRyZXNzVmFsaWRhdGlvbl1dLFxuICAgIH0pO1xuXG4gICAgdGhpcy5hcmVhRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgb3JpZ2luOiBbbnVsbCwgWy4uLmFkZHJlc3NWYWxpZGF0aW9uXV0sXG4gICAgICBkZXN0aW5hdGlvbjogW251bGwsIFsuLi5hZGRyZXNzVmFsaWRhdGlvbl1dLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB3YXRjaExvY2F0aW9uRm9ybVZhbHVlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmFyZWFGaWx0ZXJTZWxlY3RlZCA9IFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkxPQ0FUSU9OO1xuXG4gICAgaWYgKHRoaXMubG9jYXRpb25Gb3JtKSB7XG4gICAgICB0aGlzLmxvY2F0aW9uRm9ybS52YWx1ZUNoYW5nZXNcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAuc3Vic2NyaWJlKChjaGFuZ2VzKSA9PiB7XG4gICAgICAgICAgaWYgKCFjaGFuZ2VzLmFkZHJlc3MpXG4gICAgICAgICAgICB0aGlzLmxvY2F0aW9uU3RhdGUgPVxuICAgICAgICAgICAgICBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5FTVBUWV9TVFJJTkdfUExBQ0VIT0xERVI7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgd2F0Y2hBcmVhRm9ybVZhbHVlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hcmVhRm9ybSkge1xuICAgICAgdGhpcy5hcmVhRm9ybS52YWx1ZUNoYW5nZXNcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAuc3Vic2NyaWJlKChjaGFuZ2VzKSA9PiB7XG4gICAgICAgICAgaWYgKCFjaGFuZ2VzLm9yaWdpbilcbiAgICAgICAgICAgIHRoaXMub3JpZ2luU3RhdGUgPSBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5FTVBUWV9TVFJJTkdfUExBQ0VIT0xERVI7XG5cbiAgICAgICAgICBpZiAoIWNoYW5nZXMuZGVzdGluYXRpb24pXG4gICAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uU3RhdGUgPVxuICAgICAgICAgICAgICBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5FTVBUWV9TVFJJTkdfUExBQ0VIT0xERVI7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkFyZWFGaWx0ZXJDbG9zZSgpOiB2b2lkIHtcbiAgICBGaWx0ZXJIZWxwZXIuaGFuZGxlQXJlYUZpbHRlckNsb3NlKFxuICAgICAgdGhpcy5sb2NhdGlvbkZvcm0sXG4gICAgICB0aGlzLmxvY2F0aW9uTmFtZVNldCxcbiAgICAgIHRoaXMubG9uZ1ZhbCxcbiAgICAgIHRoaXMubGF0VmFsLFxuICAgICAgdGhpcy5sb25nVmFsdWVTZXQsXG4gICAgICB0aGlzLmxhdFZhbFNldCxcbiAgICAgIHRoaXMubG9jYXRpb25SYW5nZSxcbiAgICAgIHRoaXMubG9jYXRpb25SYW5nZVNldFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgdHJhY2tCeUluZGV4KGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIHB1YmxpYyBvblRhYkNoYW5nZShldmVudDogeyBuYW1lOiBzdHJpbmcgfSwgc3ViVHlwZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5oYXNTaWRlQW5pbWF0aW9uID0gdHJ1ZTtcbiAgICB0aGlzLmFyZWFGaWx0ZXJTZWxlY3RlZCA9IGV2ZW50Lm5hbWU7XG4gIH1cblxuICBwdWJsaWMgc2V0RmlsdGVyVmFsdWUoKTogZmlsdGVyT3V0cHV0IHwgZmlsdGVyT3V0cHV0V2l0aFBhcmFtcyB7XG4gICAgbGV0IHF1ZXJ5UGFyYW1zID0ge307XG4gICAgY29uc3Qgc3ViVHlwZSA9IFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkVNUFRZX1NUUklOR19QTEFDRUhPTERFUi50b1N0cmluZygpO1xuXG4gICAgaWYgKHRoaXMuYXJlYUZpbHRlclNlbGVjdGVkICE9IFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkxPQ0FUSU9OKSB7XG4gICAgICBxdWVyeVBhcmFtcyA9IHtcbiAgICAgICAgb3JpZ2luTGF0VmFsdWU6IHRoaXMub3JpZ2luTGF0VmFsLFxuICAgICAgICBvcmlnaW5Mb25nVmFsdWU6IHRoaXMub3JpZ2luTG9uZ1ZhbCxcbiAgICAgICAgZGVzdGluYXRpb25MYXRWYWx1ZTogdGhpcy5kZXN0TGF0VmFsLFxuICAgICAgICBkZXN0aW5hdGlvbkxvbmdWYWx1ZTogdGhpcy5kZXN0TG9uZ1ZhbCxcbiAgICAgICAgcmFuZ2VWYWx1ZTogdGhpcy5sb2NhdGlvblJhbmdlLFxuICAgICAgfTtcblxuICAgICAgdGhpcy5sb2NhdGlvblJhbmdlU2V0ID0gdGhpcy5sb2NhdGlvblJhbmdlO1xuICAgICAgdGhpcy5vcmlnaW5MYXRWYWxTZXQgPSB0aGlzLm9yaWdpbkxhdFZhbDtcbiAgICAgIHRoaXMub3JpZ2luTG9uZ1ZhbFNldCA9IHRoaXMub3JpZ2luTG9uZ1ZhbDtcbiAgICAgIHRoaXMuZGVzdExvbmdWYWxTZXQgPSB0aGlzLmRlc3RMb25nVmFsO1xuICAgICAgdGhpcy5kZXN0TGF0VmFsU2V0ID0gdGhpcy5kZXN0TGF0VmFsO1xuICAgIH0gZWxzZSB7XG4gICAgICBxdWVyeVBhcmFtcyA9IHtcbiAgICAgICAgbG9uZ1ZhbHVlOiB0aGlzLmxvbmdWYWwsXG4gICAgICAgIGxhdFZhbHVlOiB0aGlzLmxhdFZhbCxcbiAgICAgICAgcmFuZ2VWYWx1ZTogdGhpcy5sb2NhdGlvblJhbmdlLFxuICAgICAgfTtcblxuICAgICAgdGhpcy5sb25nVmFsdWVTZXQgPSB0aGlzLmxvbmdWYWw7XG4gICAgICB0aGlzLmxhdFZhbFNldCA9IHRoaXMubGF0VmFsO1xuICAgICAgdGhpcy5sb2NhdGlvblJhbmdlU2V0ID0gdGhpcy5sb2NhdGlvblJhbmdlO1xuICAgICAgdGhpcy5sb2NhdGlvbk5hbWVTZXQgPSB0aGlzLmxvY2F0aW9uRm9ybS5nZXQoJ2FkZHJlc3MnKT8udmFsdWU7XG4gICAgfVxuXG4gICAgY29uc3QgYWN0aW9uID0gJ1NldCc7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGZpbHRlclR5cGU6IHRoaXMudHlwZSxcbiAgICAgIGFjdGlvbixcbiAgICAgIHF1ZXJ5UGFyYW1zLFxuICAgICAgc3ViVHlwZSxcbiAgICB9O1xuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgcHVibGljIGNsZWFyQWxsKGV2ZW50PzogRXZlbnQpOiBmaWx0ZXJPdXRwdXQgfCBmaWx0ZXJPdXRwdXRXaXRoUGFyYW1zIHtcbiAgICBpZiAoZXZlbnQpIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgdGhpcy5sb2NhdGlvbkZvcm0uc2V0VmFsdWUoe1xuICAgICAgYWRkcmVzczogbnVsbCxcbiAgICB9KTtcbiAgICB0aGlzLmFyZWFGb3JtLnNldFZhbHVlKHtcbiAgICAgIG9yaWdpbjogbnVsbCxcbiAgICAgIGRlc3RpbmF0aW9uOiBudWxsLFxuICAgIH0pO1xuICAgIHRoaXMubG9jYXRpb25SYW5nZSA9IDI1O1xuICAgIHRoaXMubG9jYXRpb25TdGF0ZSA9IG51bGw7XG4gICAgdGhpcy5sb25nVmFsID0gMDtcbiAgICB0aGlzLmxhdFZhbCA9IDA7XG4gICAgdGhpcy5vcmlnaW5Mb25nVmFsID0gMDtcbiAgICB0aGlzLm9yaWdpbkxhdFZhbCA9IDA7XG4gICAgdGhpcy5kZXN0TG9uZ1ZhbCA9IDA7XG4gICAgdGhpcy5kZXN0TGF0VmFsID0gMDtcbiAgICB0aGlzLmxvY2F0aW9uTmFtZVNldCA9IG51bGw7XG5cbiAgICB0aGlzLmxvbmdWYWx1ZVNldCA9IHRoaXMubG9uZ1ZhbDtcbiAgICB0aGlzLmxhdFZhbFNldCA9IHRoaXMubGF0VmFsO1xuICAgIHRoaXMub3JpZ2luTG9uZ1ZhbFNldCA9IHRoaXMub3JpZ2luTG9uZ1ZhbDtcbiAgICB0aGlzLm9yaWdpbkxhdFZhbFNldCA9IHRoaXMub3JpZ2luTGF0VmFsO1xuICAgIHRoaXMuZGVzdExhdFZhbFNldCA9IHRoaXMuZGVzdExvbmdWYWw7XG4gICAgdGhpcy5kZXN0TG9uZ1ZhbFNldCA9IHRoaXMuZGVzdExvbmdWYWw7XG4gICAgdGhpcy5sb2NhdGlvblJhbmdlU2V0ID0gdGhpcy5sb2NhdGlvblJhbmdlO1xuXG4gICAgY29uc3QgYWN0aW9uID0gJ0NsZWFyJztcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgYWN0aW9uLFxuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgZmlsdGVyVHlwZTogdGhpcy50eXBlLFxuICAgIH07XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBwdWJsaWMgc2V0UmFuZ2VWYWx1ZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBjb25zdCB2YWx1ZSA9IE51bWJlcihpbnB1dEVsZW1lbnQudmFsdWUpO1xuXG4gICAgaWYgKHRoaXMudHlwZSAhPSBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5MT0NBVElPTl9GSUxURVIpIHtcbiAgICAgIHRoaXMucmFuZ2VWYWx1ZSA9IHZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvY2F0aW9uUmFuZ2UgPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlSW5wdXRTZWxlY3QoZXZlbnQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMubG9jYXRpb25OYW1lU2V0ID0gZXZlbnQ7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlT3JpZ2luU2VsZWN0KGV2ZW50OiBBZGRyZXNzRGF0YSk6IHZvaWQge1xuICAgIGlmIChldmVudD8uYWRkcmVzcz8uYWRkcmVzcykgdGhpcy5vcmlnaW5TdGF0ZSA9IGV2ZW50LmFkZHJlc3MuYWRkcmVzcztcblxuICAgIGlmIChldmVudD8ubG9uZ0xhdCAmJiBldmVudD8ubG9uZ0xhdD8ubGF0aXR1ZGUpIHtcbiAgICAgIHRoaXMub3JpZ2luTG9uZ1ZhbCA9IGV2ZW50Py5sb25nTGF0Py5sb25naXR1ZGUgfHwgMDtcbiAgICAgIHRoaXMub3JpZ2luTGF0VmFsID0gZXZlbnQ/LmxvbmdMYXQ/LmxhdGl0dWRlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVEZXN0aW5hdGlvblNlbGVjdChldmVudDogQWRkcmVzc0RhdGEpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQ/LmFkZHJlc3M/LmFkZHJlc3MpIHRoaXMuZGVzdGluYXRpb25TdGF0ZSA9IGV2ZW50LmFkZHJlc3MuYWRkcmVzcztcblxuICAgIGlmIChldmVudD8ubG9uZ0xhdCAmJiBldmVudD8ubG9uZ0xhdD8ubGF0aXR1ZGUpIHtcbiAgICAgIHRoaXMuZGVzdExvbmdWYWwgPSBldmVudD8ubG9uZ0xhdD8ubG9uZ2l0dWRlIHx8IDA7XG4gICAgICB0aGlzLmRlc3RMYXRWYWwgPSBldmVudD8ubG9uZ0xhdD8ubGF0aXR1ZGU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFN2Z1BhdGgocHJvcGVydHlOYW1lOiBrZXlvZiB0eXBlb2YgQ2FGaWx0ZXJzU3ZnUm91dGVzKTogc3RyaW5nIHtcbiAgICByZXR1cm4gQ2FGaWx0ZXJzU3ZnUm91dGVzW3Byb3BlcnR5TmFtZV0gYXMgc3RyaW5nO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwidHlwZSA9PT0gJ2xvY2F0aW9uRmlsdGVyJ1wiPlxuICA8ZGl2IGNsYXNzPVwiYm9yZGVyLWZpbHRlclwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYXJlYUZpbHRlckhvbGRlclwiIFtAc2hvd0FuaW1hdGlvbl09XCIhIWlzRmlsdGVyQWN0aXZlXCI+XG4gICAgPGFwcC1jYS10YWItc3dpdGNoXG4gICAgICBbdGFic109XCJhcmVhQm94VGFiXCJcbiAgICAgIChzd2l0Y2hDbGlja2VkKT1cIm9uVGFiQ2hhbmdlKCRldmVudCwgJ1JFUVVFU1RTLUJPWCcpXCJcbiAgICAgIFt0eXBlXT1cIid0eXBlMi1tb2RhbC1wb3B1cCdcIlxuICAgID5cbiAgICA8L2FwcC1jYS10YWItc3dpdGNoPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImFyZWEtYWxsLWhvbGRlciBkLWZsZXggZmxleC13cmFwIGZsZXgtcm93XCI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nSWY9XCJcbiAgICAgICAgaXNBcmVhRmlsdGVyICYmIGFyZWFGaWx0ZXJTZWxlY3RlZCAhPT0gJ0xvY2F0aW9uJztcbiAgICAgICAgZWxzZSBsb2NhdGlvblNlbGVjdGVkXG4gICAgICBcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJtYWluLXBhcnQtaG9sZGVyXCIgW0BhcmVhUmlnaHRTaWRlQW5pbWF0aW9uXT1cIidpbidcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiYXJlYS1mb3Jtcy1ob2xkZXJcIlxuICAgICAgICAgIFtmb3JtR3JvdXBdPVwiYXJlYUZvcm1cIlxuICAgICAgICAgIFtAc2hvd0FuaW1hdGlvbl09XCIhIWlzRmlsdGVyQWN0aXZlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcmVhLXNpbmdsZS1mb3JtLWhvbGRlclwiPlxuICAgICAgICAgICAgPGFwcC1jYS1pbnB1dC1hZGRyZXNzLWRyb3Bkb3duXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cIm9yaWdpblwiXG4gICAgICAgICAgICAgIFtpbnB1dENvbmZpZ109XCJnZXRPcmlnaW5Db250cm9sXCJcbiAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyVHlwZV09XCInc2hvcnRBZGRyZXNzJ1wiXG4gICAgICAgICAgICAgIChzZWxlY3RlZEFkZHJlc3MpPVwiaGFuZGxlT3JpZ2luU2VsZWN0KCRldmVudClcIlxuICAgICAgICAgICAgPjwvYXBwLWNhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImFyZWEtc2luZ2xlLWZvcm0taG9sZGVyXCI+XG4gICAgICAgICAgICA8YXBwLWNhLWlucHV0LWFkZHJlc3MtZHJvcGRvd25cbiAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGVzdGluYXRpb25cIlxuICAgICAgICAgICAgICBbaW5wdXRDb25maWddPVwiZ2V0RGVzdGluYXRpb25Db250cm9sXCJcbiAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyVHlwZV09XCInc2hvcnRBZGRyZXNzJ1wiXG4gICAgICAgICAgICAgIChzZWxlY3RlZEFkZHJlc3MpPVwiaGFuZGxlRGVzdGluYXRpb25TZWxlY3QoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9hcHAtY2EtaW5wdXQtYWRkcmVzcy1kcm9wZG93bj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2xvY2F0aW9uU2VsZWN0ZWQ+XG4gICAgICA8ZGl2IGNsYXNzPVwibWFpbi1wYXJ0LWhvbGRlclwiIFtAYXJlYUxlZnRTaWRlQW5pbWF0aW9uXT1cIidpbidcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZmlsdGVyLW1pZGRsZS1ob2xkZXIgbG9jYXRpb24tbWlkZGxlLXBhZGRpbmdcIlxuICAgICAgICAgIFtAc2hvd0FuaW1hdGlvbl09XCIhIWlzRmlsdGVyQWN0aXZlXCJcbiAgICAgICAgICBbZm9ybUdyb3VwXT1cImxvY2F0aW9uRm9ybVwiXG4gICAgICAgID5cbiAgICAgICAgICA8YXBwLWNhLWlucHV0LWFkZHJlc3MtZHJvcGRvd25cbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImFkZHJlc3NcIlxuICAgICAgICAgICAgW2lucHV0Q29uZmlnXT1cImdldEFkZHJlc3NDb250cm9sXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlclR5cGVdPVwiJ3Nob3J0QWRkcmVzcydcIlxuICAgICAgICAgICAgKHNlbnRBZGRyZXNzVmFsdWUpPVwiaGFuZGxlSW5wdXRTZWxlY3QoJGV2ZW50KVwiXG4gICAgICAgICAgPjwvYXBwLWNhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZmlsdGVyLW1pZGRsZS1ob2xkZXIgbG9jYXRpb24tc2xpZGVyLW1pZGRsZS1wYWRkaW5nXCJcbiAgICAgIFtAc2hvd0FuaW1hdGlvbl09XCIhIWlzRmlsdGVyQWN0aXZlXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwicmFuZ2UtbmV3LXZhbHVlLWhvbGRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyYW5nZS10ZXh0XCI+UmFuZ2U8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJhbmdlLWZsZXgtaG9sZGVyXCI+XG4gICAgICAgICAgPGRpdiAob25Vc2VyVmFsdWVDaGFuZ2UpPVwic2V0UmFuZ2VWYWx1ZSgkZXZlbnQpXCI+PC9kaXY+XG4gICAgICAgICAgPGFwcC1jYS1uZ3gtc2xpZGVyXG4gICAgICAgICAgICBbc2xpZGVyT3B0aW9uc109XCJsb2NhdGlvblNsaWRlckRhdGFcIlxuICAgICAgICAgICAgW3N0YXJ0ZWRWYWx1ZV09XCJsb2NhdGlvblJhbmdlXCJcbiAgICAgICAgICAgIFtjdXN0b21DbGFzc109XCInY3VzdG9tLXNsaWRlci1maWx0ZXInXCJcbiAgICAgICAgICA+PC9hcHAtY2Etbmd4LXNsaWRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJib3JkZXItZmlsdGVyIGJvdHRvbS1ib3JkZXItbWFyZ2luXCI+PC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
274
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWZpbHRlcnMvY29tcG9uZW50cy9jYS1sb2NhdGlvbi1maWx0ZXIvY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWZpbHRlcnMvY29tcG9uZW50cy9jYS1sb2NhdGlvbi1maWx0ZXIvY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFDTCxXQUFXLEVBQ1gsbUJBQW1CLEdBR3BCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsVUFBVTtBQUNWLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxRQUFRO0FBQ1IsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRTNGLGFBQWE7QUFDYixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnR0FBZ0csQ0FBQztBQUVuSSxhQUFhO0FBQ2IsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pF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SztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgT3B0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyLXNsaWRlci9uZ3gtc2xpZGVyJztcbmltcG9ydCB7XG4gIEZvcm1zTW9kdWxlLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIFVudHlwZWRGb3JtR3JvdXAsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLy8gbW9kdWxlc1xuaW1wb3J0IHsgQW5ndWxhclN2Z0ljb25Nb2R1bGUgfSBmcm9tICdhbmd1bGFyLXN2Zy1pY29uJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG4vLyBlbnVtc1xuaW1wb3J0IHsgTG9hZFN0YXR1c0VudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtcy9sb2FkLXN0YXR1cy5lbnVtJztcbmltcG9ydCB7IFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtIH0gZnJvbSAnLi4vLi4vLi4vY2EtbWFwL2VudW1zL3Rvb2xiYXItZmlsdGVyLXN0cmluZy5lbnVtJztcblxuLy8gdmFsaWRhdG9yc1xuaW1wb3J0IHsgYWRkcmVzc1ZhbGlkYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2NhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24vdmFsaWRhdG9ycy9jYS1pbnB1dC1hZGRyZXNzLnJlZ2V4LXZhbGlkYXRpb25zJztcblxuLy8gYW5pbWF0aW9uc1xuaW1wb3J0IHsgaW5PdXRBbmltYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9hbmltYXRpb25zL2luLW91dC5hbmltYXRpb24nO1xuaW1wb3J0IHsgc2hvd0FuaW1hdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2FuaW1hdGlvbnMvc2hvdy5hbmltYXRpb24nO1xuaW1wb3J0IHsgYXJlYUxlZnRTaWRlQW5pbWF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vYW5pbWF0aW9ucy9hcmVhLWxlZnQtc2lkZS5hbmltYXRpb24nO1xuaW1wb3J0IHsgYXJlYVJpZ2h0U2lkZUFuaW1hdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2FuaW1hdGlvbnMvYXJlYS1yaWdodC1zaWRlLmFuaW1hdGlvbic7XG5cbi8vIHV0aWxzXG5pbXBvcnQgeyBDYUZpbHRlcnNTdmdSb3V0ZXMgfSBmcm9tICcuLi8uLi91dGlscy9zdmctcm91dGVzL2NhLWZpbHRlcnMtc3ZnLXJvdXRlcyc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgQXJyYXlTdGF0dXMgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvYXJyYXktc3RhdHVzLm1vZGVsJztcbmltcG9ydCB7IGZpbHRlck91dHB1dCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXItb3V0cHV0Lm1vZGVsJztcbmltcG9ydCB7IGZpbHRlck91dHB1dFdpdGhQYXJhbXMgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLW91dHB1dC1wYXJhbXMubW9kZWwnO1xuaW1wb3J0IHsgQXJlYUJveFRhYiB9IGZyb20gJy4vbW9kZWxzL2FyZWEtYm94LXRhYi5tb2RlbCc7XG5cbi8vIGNvbnN0YW50c1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlnQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29uc3RhbnRzL2ZpbHRlci1jb25maWcuY29uc3RhbnRzJztcbmltcG9ydCB7IExvY2F0aW9uRmlsdGVyQ29uc3RhbnRzIH0gZnJvbSAnLi91dGlscy9jb25zdGFudHMvbG9jYXRpb24tZmlsdGVyLmNvbnN0YW50cyc7XG5cbi8vIGNvbXBvbmVudHNcbmltcG9ydCB7IENhVGFiU3dpdGNoQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY2EtdGFiLXN3aXRjaC9jYS10YWItc3dpdGNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYUlucHV0QWRkcmVzc0Ryb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9jYS1pbnB1dC1hZGRyZXNzLWRyb3Bkb3duL2NhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB7IENhTmd4U2xpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY2Etbmd4LXNsaWRlci9jYS1uZ3gtc2xpZGVyLmNvbXBvbmVudCc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgQWRkcmVzc0RhdGEgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2NhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24vbW9kZWxzL2FkZHJlc3MtZGF0YS5tb2RlbCc7XG5pbXBvcnQgeyBBZGRyZXNzTGlzdCB9IGZyb20gJy4uLy4uLy4uL2NhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24vbW9kZWxzL2FkZHJlc3MtbGlzdC5tb2RlbCc7XG5cbi8vIGhlbHBlcnNcbmltcG9ydCB7IEZpbHRlckhlbHBlciB9IGZyb20gJy4uLy4uL3V0aWxzL2hlbHBlcnMnO1xuaW1wb3J0IHsgQ2FMb2NhdGlvbkZpbHRlckNvbmZpZyB9IGZyb20gJy4vY29uZmlnL2NhLWxvY2F0aW9uLWZpbHRlci5jb25maWcnO1xuaW1wb3J0IHsgSUNhSW5wdXQgfSBmcm9tICcuLi8uLi8uLi9jYS1pbnB1dC9jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY2EtbG9jYXRpb24tZmlsdGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIC8vIG1vZHVsZXNcbiAgICBBbmd1bGFyU3ZnSWNvbk1vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIC8vIGNvbXBvbmVudHNcbiAgICBDYVRhYlN3aXRjaENvbXBvbmVudCxcbiAgICBDYUlucHV0QWRkcmVzc0Ryb3Bkb3duQ29tcG9uZW50LFxuICAgIENhTmd4U2xpZGVyQ29tcG9uZW50XG5dLFxuICB0ZW1wbGF0ZVVybDogJy4vY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2EtbG9jYXRpb24tZmlsdGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICBpbk91dEFuaW1hdGlvbignaW5PdXRBbmltYXRpb24nKSxcbiAgICBzaG93QW5pbWF0aW9uKCdzaG93QW5pbWF0aW9uJyksXG4gICAgYXJlYUxlZnRTaWRlQW5pbWF0aW9uKCdhcmVhTGVmdFNpZGVBbmltYXRpb24nKSxcbiAgICBhcmVhUmlnaHRTaWRlQW5pbWF0aW9uKCdhcmVhUmlnaHRTaWRlQW5pbWF0aW9uJyksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIENhTG9jYXRpb25GaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHR5cGUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHRvRG9TdWJUeXBlITogc3RyaW5nO1xuICBASW5wdXQoKSBpc0xlZ2VuZFZpZXc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgaXNGaWx0ZXJBY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgaXNBcmVhRmlsdGVyOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgYWRkcmVzc0xpc3QhOiBBZGRyZXNzTGlzdFtdO1xuXG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHB1YmxpYyBsb2NhdGlvblNsaWRlckRhdGE6IE9wdGlvbnMgPVxuICAgIEZpbHRlckNvbmZpZ0NvbnN0YW50cy5MT0NBVElPTl9TTElERVJfREFUQTtcblxuICBwdWJsaWMgbG9jYXRpb25OYW1lU2V0ITogc3RyaW5nIHwgbnVsbDtcbiAgcHVibGljIGxvY2F0aW9uRm9ybSE6IFVudHlwZWRGb3JtR3JvdXA7XG5cbiAgcHVibGljIGxvY2F0aW9uUmFuZ2U6IG51bWJlciA9IDI1O1xuICBwdWJsaWMgbG9jYXRpb25SYW5nZVNldDogbnVtYmVyID0gMjU7XG5cbiAgcHVibGljIGxvbmdWYWw6IG51bWJlciA9IDA7XG4gIHB1YmxpYyBsYXRWYWw6IG51bWJlciA9IDA7XG5cbiAgcHVibGljIG9yaWdpbkxvbmdWYWw6IG51bWJlciA9IDA7XG4gIHB1YmxpYyBvcmlnaW5MYXRWYWw6IG51bWJlciA9IDA7XG5cbiAgcHVibGljIGRlc3RMb25nVmFsOiBudW1iZXIgPSAwO1xuICBwdWJsaWMgZGVzdExhdFZhbDogbnVtYmVyID0gMDtcblxuICBwdWJsaWMgbG9uZ1ZhbHVlU2V0OiBudW1iZXIgPSAwO1xuICBwdWJsaWMgbGF0VmFsU2V0OiBudW1iZXIgPSAwO1xuXG4gIHB1YmxpYyBvcmlnaW5Mb25nVmFsU2V0OiBudW1iZXIgPSAwO1xuICBwdWJsaWMgb3JpZ2luTGF0VmFsU2V0OiBudW1iZXIgPSAwO1xuXG4gIHB1YmxpYyBkZXN0TG9uZ1ZhbFNldDogbnVtYmVyID0gMDtcbiAgcHVibGljIGRlc3RMYXRWYWxTZXQ6IG51bWJlciA9IDA7XG5cbiAgcHVibGljIHVuc2VsZWN0ZWRWaXNpYmxlQ291bnQ6IG51bWJlciA9IDA7XG4gIHB1YmxpYyBhcmVhRmlsdGVyU2VsZWN0ZWQhOiBzdHJpbmc7XG5cbiAgcHVibGljIGlzQnV0dG9uQXZhaWxhYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBpc0FzY2VuZGluZ1NvcnRPcmRlcjogYm9vbGVhbiA9IHRydWU7XG5cbiAgcHVibGljIGxvYWRTdGF0dXNFbnVtID0gTG9hZFN0YXR1c0VudW07XG4gIHB1YmxpYyBmaWx0ZXJBY3RpdmVBcnJheTogQXJyYXlTdGF0dXNbXSA9IFtdO1xuICBwdWJsaWMgdG90YWxGaWx0ZXJzTnVtOiBudW1iZXIgPSAwO1xuXG4gIHB1YmxpYyBhcmVhRm9ybSE6IFVudHlwZWRGb3JtR3JvdXA7XG4gIHB1YmxpYyBsb2NhdGlvblN0YXRlITogc3RyaW5nIHwgbnVsbDtcbiAgcHVibGljIHJhbmdlVmFsdWU6IG51bWJlciA9IDA7XG4gIHB1YmxpYyBkZXN0aW5hdGlvblN0YXRlITogc3RyaW5nO1xuICBwdWJsaWMgb3JpZ2luU3RhdGUhOiBzdHJpbmc7XG4gIHB1YmxpYyBoYXNTaWRlQW5pbWF0aW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIGFyZWFCb3hUYWI6IEFyZWFCb3hUYWJbXSA9IExvY2F0aW9uRmlsdGVyQ29uc3RhbnRzLkFSRUFfQk9YX1RBQjtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNyZWF0ZUZvcm0oKTtcblxuICAgIHRoaXMud2F0Y2hMb2NhdGlvbkZvcm1WYWx1ZUNoYW5nZXMoKTtcblxuICAgIHRoaXMud2F0Y2hBcmVhRm9ybVZhbHVlQ2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0IGdldE9yaWdpbkNvbnRyb2woKTogSUNhSW5wdXQge1xuICAgIHJldHVybiBDYUxvY2F0aW9uRmlsdGVyQ29uZmlnLm9yaWdpbkNvbnRyb2woKTtcbiAgfVxuXG4gIGdldCBnZXREZXN0aW5hdGlvbkNvbnRyb2woKTogSUNhSW5wdXQge1xuICAgIHJldHVybiBDYUxvY2F0aW9uRmlsdGVyQ29uZmlnLmRlc3RpbmF0aW9uQ29udHJvbCgpO1xuICB9XG5cbiAgZ2V0IGdldEFkZHJlc3NDb250cm9sKCk6IElDYUlucHV0IHtcbiAgICByZXR1cm4gQ2FMb2NhdGlvbkZpbHRlckNvbmZpZy5hZGRyZXNzQ29udHJvbCgpO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyKSB7fVxuXG4gIHByaXZhdGUgY3JlYXRlRm9ybSgpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2F0aW9uRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgYWRkcmVzczogW251bGwsIFsuLi5hZGRyZXNzVmFsaWRhdGlvbl1dLFxuICAgIH0pO1xuXG4gICAgdGhpcy5hcmVhRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgb3JpZ2luOiBbbnVsbCwgWy4uLmFkZHJlc3NWYWxpZGF0aW9uXV0sXG4gICAgICBkZXN0aW5hdGlvbjogW251bGwsIFsuLi5hZGRyZXNzVmFsaWRhdGlvbl1dLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB3YXRjaExvY2F0aW9uRm9ybVZhbHVlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmFyZWFGaWx0ZXJTZWxlY3RlZCA9IFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkxPQ0FUSU9OO1xuXG4gICAgaWYgKHRoaXMubG9jYXRpb25Gb3JtKSB7XG4gICAgICB0aGlzLmxvY2F0aW9uRm9ybS52YWx1ZUNoYW5nZXNcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAuc3Vic2NyaWJlKChjaGFuZ2VzKSA9PiB7XG4gICAgICAgICAgaWYgKCFjaGFuZ2VzLmFkZHJlc3MpXG4gICAgICAgICAgICB0aGlzLmxvY2F0aW9uU3RhdGUgPVxuICAgICAgICAgICAgICBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5FTVBUWV9TVFJJTkdfUExBQ0VIT0xERVI7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgd2F0Y2hBcmVhRm9ybVZhbHVlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hcmVhRm9ybSkge1xuICAgICAgdGhpcy5hcmVhRm9ybS52YWx1ZUNoYW5nZXNcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAuc3Vic2NyaWJlKChjaGFuZ2VzKSA9PiB7XG4gICAgICAgICAgaWYgKCFjaGFuZ2VzLm9yaWdpbilcbiAgICAgICAgICAgIHRoaXMub3JpZ2luU3RhdGUgPSBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5FTVBUWV9TVFJJTkdfUExBQ0VIT0xERVI7XG5cbiAgICAgICAgICBpZiAoIWNoYW5nZXMuZGVzdGluYXRpb24pXG4gICAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uU3RhdGUgPVxuICAgICAgICAgICAgICBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5FTVBUWV9TVFJJTkdfUExBQ0VIT0xERVI7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkFyZWFGaWx0ZXJDbG9zZSgpOiB2b2lkIHtcbiAgICBGaWx0ZXJIZWxwZXIuaGFuZGxlQXJlYUZpbHRlckNsb3NlKFxuICAgICAgdGhpcy5sb2NhdGlvbkZvcm0sXG4gICAgICB0aGlzLmxvY2F0aW9uTmFtZVNldCxcbiAgICAgIHRoaXMubG9uZ1ZhbCxcbiAgICAgIHRoaXMubGF0VmFsLFxuICAgICAgdGhpcy5sb25nVmFsdWVTZXQsXG4gICAgICB0aGlzLmxhdFZhbFNldCxcbiAgICAgIHRoaXMubG9jYXRpb25SYW5nZSxcbiAgICAgIHRoaXMubG9jYXRpb25SYW5nZVNldFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgdHJhY2tCeUluZGV4KGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIHB1YmxpYyBvblRhYkNoYW5nZShldmVudDogeyBuYW1lOiBzdHJpbmcgfSwgc3ViVHlwZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5oYXNTaWRlQW5pbWF0aW9uID0gdHJ1ZTtcbiAgICB0aGlzLmFyZWFGaWx0ZXJTZWxlY3RlZCA9IGV2ZW50Lm5hbWU7XG4gIH1cblxuICBwdWJsaWMgc2V0RmlsdGVyVmFsdWUoKTogZmlsdGVyT3V0cHV0IHwgZmlsdGVyT3V0cHV0V2l0aFBhcmFtcyB7XG4gICAgbGV0IHF1ZXJ5UGFyYW1zID0ge307XG4gICAgY29uc3Qgc3ViVHlwZSA9IFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkVNUFRZX1NUUklOR19QTEFDRUhPTERFUi50b1N0cmluZygpO1xuXG4gICAgaWYgKHRoaXMuYXJlYUZpbHRlclNlbGVjdGVkICE9IFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkxPQ0FUSU9OKSB7XG4gICAgICBxdWVyeVBhcmFtcyA9IHtcbiAgICAgICAgb3JpZ2luTGF0VmFsdWU6IHRoaXMub3JpZ2luTGF0VmFsLFxuICAgICAgICBvcmlnaW5Mb25nVmFsdWU6IHRoaXMub3JpZ2luTG9uZ1ZhbCxcbiAgICAgICAgZGVzdGluYXRpb25MYXRWYWx1ZTogdGhpcy5kZXN0TGF0VmFsLFxuICAgICAgICBkZXN0aW5hdGlvbkxvbmdWYWx1ZTogdGhpcy5kZXN0TG9uZ1ZhbCxcbiAgICAgICAgcmFuZ2VWYWx1ZTogdGhpcy5sb2NhdGlvblJhbmdlLFxuICAgICAgfTtcblxuICAgICAgdGhpcy5sb2NhdGlvblJhbmdlU2V0ID0gdGhpcy5sb2NhdGlvblJhbmdlO1xuICAgICAgdGhpcy5vcmlnaW5MYXRWYWxTZXQgPSB0aGlzLm9yaWdpbkxhdFZhbDtcbiAgICAgIHRoaXMub3JpZ2luTG9uZ1ZhbFNldCA9IHRoaXMub3JpZ2luTG9uZ1ZhbDtcbiAgICAgIHRoaXMuZGVzdExvbmdWYWxTZXQgPSB0aGlzLmRlc3RMb25nVmFsO1xuICAgICAgdGhpcy5kZXN0TGF0VmFsU2V0ID0gdGhpcy5kZXN0TGF0VmFsO1xuICAgIH0gZWxzZSB7XG4gICAgICBxdWVyeVBhcmFtcyA9IHtcbiAgICAgICAgbG9uZ1ZhbHVlOiB0aGlzLmxvbmdWYWwsXG4gICAgICAgIGxhdFZhbHVlOiB0aGlzLmxhdFZhbCxcbiAgICAgICAgcmFuZ2VWYWx1ZTogdGhpcy5sb2NhdGlvblJhbmdlLFxuICAgICAgfTtcblxuICAgICAgdGhpcy5sb25nVmFsdWVTZXQgPSB0aGlzLmxvbmdWYWw7XG4gICAgICB0aGlzLmxhdFZhbFNldCA9IHRoaXMubGF0VmFsO1xuICAgICAgdGhpcy5sb2NhdGlvblJhbmdlU2V0ID0gdGhpcy5sb2NhdGlvblJhbmdlO1xuICAgICAgdGhpcy5sb2NhdGlvbk5hbWVTZXQgPSB0aGlzLmxvY2F0aW9uRm9ybS5nZXQoJ2FkZHJlc3MnKT8udmFsdWU7XG4gICAgfVxuXG4gICAgY29uc3QgYWN0aW9uID0gJ1NldCc7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGZpbHRlclR5cGU6IHRoaXMudHlwZSxcbiAgICAgIGFjdGlvbixcbiAgICAgIHF1ZXJ5UGFyYW1zLFxuICAgICAgc3ViVHlwZSxcbiAgICB9O1xuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgcHVibGljIGNsZWFyQWxsKGV2ZW50PzogRXZlbnQpOiBmaWx0ZXJPdXRwdXQgfCBmaWx0ZXJPdXRwdXRXaXRoUGFyYW1zIHtcbiAgICBpZiAoZXZlbnQpIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgdGhpcy5sb2NhdGlvbkZvcm0uc2V0VmFsdWUoe1xuICAgICAgYWRkcmVzczogbnVsbCxcbiAgICB9KTtcbiAgICB0aGlzLmFyZWFGb3JtLnNldFZhbHVlKHtcbiAgICAgIG9yaWdpbjogbnVsbCxcbiAgICAgIGRlc3RpbmF0aW9uOiBudWxsLFxuICAgIH0pO1xuICAgIHRoaXMubG9jYXRpb25SYW5nZSA9IDI1O1xuICAgIHRoaXMubG9jYXRpb25TdGF0ZSA9IG51bGw7XG4gICAgdGhpcy5sb25nVmFsID0gMDtcbiAgICB0aGlzLmxhdFZhbCA9IDA7XG4gICAgdGhpcy5vcmlnaW5Mb25nVmFsID0gMDtcbiAgICB0aGlzLm9yaWdpbkxhdFZhbCA9IDA7XG4gICAgdGhpcy5kZXN0TG9uZ1ZhbCA9IDA7XG4gICAgdGhpcy5kZXN0TGF0VmFsID0gMDtcbiAgICB0aGlzLmxvY2F0aW9uTmFtZVNldCA9IG51bGw7XG5cbiAgICB0aGlzLmxvbmdWYWx1ZVNldCA9IHRoaXMubG9uZ1ZhbDtcbiAgICB0aGlzLmxhdFZhbFNldCA9IHRoaXMubGF0VmFsO1xuICAgIHRoaXMub3JpZ2luTG9uZ1ZhbFNldCA9IHRoaXMub3JpZ2luTG9uZ1ZhbDtcbiAgICB0aGlzLm9yaWdpbkxhdFZhbFNldCA9IHRoaXMub3JpZ2luTGF0VmFsO1xuICAgIHRoaXMuZGVzdExhdFZhbFNldCA9IHRoaXMuZGVzdExvbmdWYWw7XG4gICAgdGhpcy5kZXN0TG9uZ1ZhbFNldCA9IHRoaXMuZGVzdExvbmdWYWw7XG4gICAgdGhpcy5sb2NhdGlvblJhbmdlU2V0ID0gdGhpcy5sb2NhdGlvblJhbmdlO1xuXG4gICAgY29uc3QgYWN0aW9uID0gJ0NsZWFyJztcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgYWN0aW9uLFxuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgZmlsdGVyVHlwZTogdGhpcy50eXBlLFxuICAgIH07XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBwdWJsaWMgc2V0UmFuZ2VWYWx1ZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBjb25zdCB2YWx1ZSA9IE51bWJlcihpbnB1dEVsZW1lbnQudmFsdWUpO1xuXG4gICAgaWYgKHRoaXMudHlwZSAhPSBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5MT0NBVElPTl9GSUxURVIpIHtcbiAgICAgIHRoaXMucmFuZ2VWYWx1ZSA9IHZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvY2F0aW9uUmFuZ2UgPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlSW5wdXRTZWxlY3QoZXZlbnQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMubG9jYXRpb25OYW1lU2V0ID0gZXZlbnQ7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlT3JpZ2luU2VsZWN0KGV2ZW50OiBBZGRyZXNzRGF0YSk6IHZvaWQge1xuICAgIGlmIChldmVudD8uYWRkcmVzcz8uYWRkcmVzcykgdGhpcy5vcmlnaW5TdGF0ZSA9IGV2ZW50LmFkZHJlc3MuYWRkcmVzcztcblxuICAgIGlmIChldmVudD8ubG9uZ0xhdCAmJiBldmVudD8ubG9uZ0xhdD8ubGF0aXR1ZGUpIHtcbiAgICAgIHRoaXMub3JpZ2luTG9uZ1ZhbCA9IGV2ZW50Py5sb25nTGF0Py5sb25naXR1ZGUgfHwgMDtcbiAgICAgIHRoaXMub3JpZ2luTGF0VmFsID0gZXZlbnQ/LmxvbmdMYXQ/LmxhdGl0dWRlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVEZXN0aW5hdGlvblNlbGVjdChldmVudDogQWRkcmVzc0RhdGEpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQ/LmFkZHJlc3M/LmFkZHJlc3MpIHRoaXMuZGVzdGluYXRpb25TdGF0ZSA9IGV2ZW50LmFkZHJlc3MuYWRkcmVzcztcblxuICAgIGlmIChldmVudD8ubG9uZ0xhdCAmJiBldmVudD8ubG9uZ0xhdD8ubGF0aXR1ZGUpIHtcbiAgICAgIHRoaXMuZGVzdExvbmdWYWwgPSBldmVudD8ubG9uZ0xhdD8ubG9uZ2l0dWRlIHx8IDA7XG4gICAgICB0aGlzLmRlc3RMYXRWYWwgPSBldmVudD8ubG9uZ0xhdD8ubGF0aXR1ZGU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFN2Z1BhdGgocHJvcGVydHlOYW1lOiBrZXlvZiB0eXBlb2YgQ2FGaWx0ZXJzU3ZnUm91dGVzKTogc3RyaW5nIHtcbiAgICByZXR1cm4gQ2FGaWx0ZXJzU3ZnUm91dGVzW3Byb3BlcnR5TmFtZV0gYXMgc3RyaW5nO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwidHlwZSA9PT0gJ2xvY2F0aW9uRmlsdGVyJ1wiPlxuICA8ZGl2IGNsYXNzPVwiYm9yZGVyLWZpbHRlclwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYXJlYUZpbHRlckhvbGRlclwiIFtAc2hvd0FuaW1hdGlvbl09XCIhIWlzRmlsdGVyQWN0aXZlXCI+XG4gICAgPGFwcC1jYS10YWItc3dpdGNoXG4gICAgICBbdGFic109XCJhcmVhQm94VGFiXCJcbiAgICAgIChzd2l0Y2hDbGlja2VkKT1cIm9uVGFiQ2hhbmdlKCRldmVudCwgJ1JFUVVFU1RTLUJPWCcpXCJcbiAgICAgIFt0eXBlXT1cIid0eXBlMi1tb2RhbC1wb3B1cCdcIlxuICAgID5cbiAgICA8L2FwcC1jYS10YWItc3dpdGNoPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImFyZWEtYWxsLWhvbGRlciBkLWZsZXggZmxleC13cmFwIGZsZXgtcm93XCI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nSWY9XCJcbiAgICAgICAgaXNBcmVhRmlsdGVyICYmIGFyZWFGaWx0ZXJTZWxlY3RlZCAhPT0gJ0xvY2F0aW9uJztcbiAgICAgICAgZWxzZSBsb2NhdGlvblNlbGVjdGVkXG4gICAgICBcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJtYWluLXBhcnQtaG9sZGVyXCIgW0BhcmVhUmlnaHRTaWRlQW5pbWF0aW9uXT1cIidpbidcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiYXJlYS1mb3Jtcy1ob2xkZXJcIlxuICAgICAgICAgIFtmb3JtR3JvdXBdPVwiYXJlYUZvcm1cIlxuICAgICAgICAgIFtAc2hvd0FuaW1hdGlvbl09XCIhIWlzRmlsdGVyQWN0aXZlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcmVhLXNpbmdsZS1mb3JtLWhvbGRlclwiPlxuICAgICAgICAgICAgPGFwcC1jYS1pbnB1dC1hZGRyZXNzLWRyb3Bkb3duXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cIm9yaWdpblwiXG4gICAgICAgICAgICAgIFtpbnB1dENvbmZpZ109XCJnZXRPcmlnaW5Db250cm9sXCJcbiAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyVHlwZV09XCInc2hvcnRBZGRyZXNzJ1wiXG4gICAgICAgICAgICAgIChzZWxlY3RlZEFkZHJlc3MpPVwiaGFuZGxlT3JpZ2luU2VsZWN0KCRldmVudClcIlxuICAgICAgICAgICAgPjwvYXBwLWNhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImFyZWEtc2luZ2xlLWZvcm0taG9sZGVyXCI+XG4gICAgICAgICAgICA8YXBwLWNhLWlucHV0LWFkZHJlc3MtZHJvcGRvd25cbiAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGVzdGluYXRpb25cIlxuICAgICAgICAgICAgICBbaW5wdXRDb25maWddPVwiZ2V0RGVzdGluYXRpb25Db250cm9sXCJcbiAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyVHlwZV09XCInc2hvcnRBZGRyZXNzJ1wiXG4gICAgICAgICAgICAgIChzZWxlY3RlZEFkZHJlc3MpPVwiaGFuZGxlRGVzdGluYXRpb25TZWxlY3QoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9hcHAtY2EtaW5wdXQtYWRkcmVzcy1kcm9wZG93bj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2xvY2F0aW9uU2VsZWN0ZWQ+XG4gICAgICA8ZGl2IGNsYXNzPVwibWFpbi1wYXJ0LWhvbGRlclwiIFtAYXJlYUxlZnRTaWRlQW5pbWF0aW9uXT1cIidpbidcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZmlsdGVyLW1pZGRsZS1ob2xkZXIgbG9jYXRpb24tbWlkZGxlLXBhZGRpbmdcIlxuICAgICAgICAgIFtAc2hvd0FuaW1hdGlvbl09XCIhIWlzRmlsdGVyQWN0aXZlXCJcbiAgICAgICAgICBbZm9ybUdyb3VwXT1cImxvY2F0aW9uRm9ybVwiXG4gICAgICAgID5cbiAgICAgICAgICA8YXBwLWNhLWlucHV0LWFkZHJlc3MtZHJvcGRvd25cbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImFkZHJlc3NcIlxuICAgICAgICAgICAgW2lucHV0Q29uZmlnXT1cImdldEFkZHJlc3NDb250cm9sXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlclR5cGVdPVwiJ3Nob3J0QWRkcmVzcydcIlxuICAgICAgICAgICAgKHNlbnRBZGRyZXNzVmFsdWUpPVwiaGFuZGxlSW5wdXRTZWxlY3QoJGV2ZW50KVwiXG4gICAgICAgICAgPjwvYXBwLWNhLWlucHV0LWFkZHJlc3MtZHJvcGRvd24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZmlsdGVyLW1pZGRsZS1ob2xkZXIgbG9jYXRpb24tc2xpZGVyLW1pZGRsZS1wYWRkaW5nXCJcbiAgICAgIFtAc2hvd0FuaW1hdGlvbl09XCIhIWlzRmlsdGVyQWN0aXZlXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwicmFuZ2UtbmV3LXZhbHVlLWhvbGRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyYW5nZS10ZXh0XCI+UmFuZ2U8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJhbmdlLWZsZXgtaG9sZGVyXCI+XG4gICAgICAgICAgPGRpdiAob25Vc2VyVmFsdWVDaGFuZ2UpPVwic2V0UmFuZ2VWYWx1ZSgkZXZlbnQpXCI+PC9kaXY+XG4gICAgICAgICAgPGFwcC1jYS1uZ3gtc2xpZGVyXG4gICAgICAgICAgICBbc2xpZGVyT3B0aW9uc109XCJsb2NhdGlvblNsaWRlckRhdGFcIlxuICAgICAgICAgICAgW3N0YXJ0ZWRWYWx1ZV09XCJsb2NhdGlvblJhbmdlXCJcbiAgICAgICAgICAgIFtjdXN0b21DbGFzc109XCInY3VzdG9tLXNsaWRlci1maWx0ZXInXCJcbiAgICAgICAgICA+PC9hcHAtY2Etbmd4LXNsaWRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJib3JkZXItZmlsdGVyIGJvdHRvbS1ib3JkZXItbWFyZ2luXCI+PC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|