@fundamental-ngx/platform 0.43.7 → 0.43.9
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/dynamic-page/dynamic-page.component.d.ts +4 -2
- package/esm2020/dynamic-page/dynamic-page.component.mjs +9 -6
- package/esm2020/form/combobox/combobox/combobox.component.mjs +1 -1
- package/esm2020/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +1 -1
- package/esm2020/form/multi-input/multi-input.component.mjs +3 -3
- package/esm2020/list/list.component.mjs +11 -11
- package/esm2020/message-popover/components/message-view/message-view.component.mjs +2 -2
- package/esm2020/search-field/search-field.component.mjs +5 -6
- package/esm2020/settings-generator/controls/theme-selector-list/theme-selector-list.component.mjs +2 -2
- package/esm2020/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.mjs +1 -1
- package/esm2020/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +27 -21
- package/esm2020/table/components/table-group-row/table-group-row.component.mjs +7 -4
- package/esm2020/table/components/table-header-row/table-header-row.component.mjs +28 -13
- package/esm2020/table/components/table-p13-dialog/columns/columns.component.mjs +1 -1
- package/esm2020/table/components/table-p13-dialog/filtering/filtering.model.mjs +2 -2
- package/esm2020/table/components/table-popping-row/table-popping-row.component.mjs +6 -3
- package/esm2020/table/components/table-row/table-row.component.mjs +34 -9
- package/esm2020/table/components/table-view-settings-dialog/filtering/filter-multi-select.component.mjs +1 -1
- package/esm2020/table/components/table-view-settings-dialog/filtering/filter-single-select.component.mjs +1 -1
- package/esm2020/table/components/table-view-settings-dialog/filtering/filters-list-step.component.mjs +1 -1
- package/esm2020/table/components/table-view-settings-dialog/grouping/grouping.component.mjs +1 -1
- package/esm2020/table/components/table-view-settings-dialog/sorting/sorting.component.mjs +1 -1
- package/esm2020/table/table.component.mjs +17 -7
- package/esm2020/table/table.module.mjs +8 -5
- package/esm2020/table-helpers/models/column-freeze-event.model.mjs +1 -1
- package/esm2020/table-helpers/services/table-column-resize.service.mjs +2 -2
- package/esm2020/table-helpers/table-column.mjs +1 -1
- package/esm2020/table-helpers/table.mjs +1 -1
- package/esm2020/upload-collection/dialogs/move-to/move-to.component.mjs +1 -1
- package/esm2020/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +3 -3
- package/esm2020/variant-management/variant-management.component.mjs +1 -1
- package/fesm2015/fundamental-ngx-platform-dynamic-page.mjs +9 -6
- package/fesm2015/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-form.mjs +4 -4
- package/fesm2015/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-list.mjs +3 -3
- package/fesm2015/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-message-popover.mjs +1 -1
- package/fesm2015/fundamental-ngx-platform-message-popover.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-search-field.mjs +4 -5
- package/fesm2015/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-settings-generator.mjs +2 -2
- package/fesm2015/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-table.mjs +127 -58
- package/fesm2015/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-upload-collection.mjs +1 -1
- package/fesm2015/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-value-help-dialog.mjs +2 -2
- package/fesm2015/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-variant-management.mjs +1 -1
- package/fesm2015/fundamental-ngx-platform-variant-management.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-dynamic-page.mjs +9 -6
- package/fesm2020/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-form.mjs +4 -4
- package/fesm2020/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-list.mjs +3 -3
- package/fesm2020/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-message-popover.mjs +1 -1
- package/fesm2020/fundamental-ngx-platform-message-popover.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-search-field.mjs +4 -5
- package/fesm2020/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-settings-generator.mjs +2 -2
- package/fesm2020/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-table.mjs +123 -58
- package/fesm2020/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-upload-collection.mjs +1 -1
- package/fesm2020/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-value-help-dialog.mjs +2 -2
- package/fesm2020/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-variant-management.mjs +1 -1
- package/fesm2020/fundamental-ngx-platform-variant-management.mjs.map +1 -1
- package/fundamental-ngx-platform-v0.43.9.tgz +0 -0
- package/list/list.component.d.ts +3 -3
- package/package.json +4 -4
- package/schematics/ng-add/index.js +1 -1
- package/table/components/table-cell-header-popover/table-cell-header-popover.component.d.ts +9 -13
- package/table/components/table-header-row/table-header-row.component.d.ts +10 -3
- package/table/components/table-row/table-row.component.d.ts +10 -2
- package/table/table.component.d.ts +7 -1
- package/table/table.module.d.ts +1 -1
- package/table-helpers/models/column-freeze-event.model.d.ts +5 -0
- package/table-helpers/services/table-column-resize.service.d.ts +1 -1
- package/table-helpers/table.d.ts +1 -1
- package/fundamental-ngx-platform-v0.43.7.tgz +0 -0
|
@@ -40,14 +40,13 @@ export class SearchFieldSuggestionDirective {
|
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
SearchFieldSuggestionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SearchFieldSuggestionDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
43
|
-
SearchFieldSuggestionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: SearchFieldSuggestionDirective, selector: "[fdpSearchFieldSuggestion]", host: { attributes: { "tabindex": "-1"
|
|
43
|
+
SearchFieldSuggestionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: SearchFieldSuggestionDirective, selector: "[fdpSearchFieldSuggestion]", host: { attributes: { "tabindex": "-1" } }, ngImport: i0 });
|
|
44
44
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SearchFieldSuggestionDirective, decorators: [{
|
|
45
45
|
type: Directive,
|
|
46
46
|
args: [{
|
|
47
47
|
selector: '[fdpSearchFieldSuggestion]',
|
|
48
48
|
host: {
|
|
49
|
-
tabindex: '-1'
|
|
50
|
-
role: 'list-item'
|
|
49
|
+
tabindex: '-1'
|
|
51
50
|
}
|
|
52
51
|
}]
|
|
53
52
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
@@ -486,7 +485,7 @@ SearchFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
|
|
|
486
485
|
provide: FD_SHELLBAR_SEARCH_COMPONENT,
|
|
487
486
|
useExisting: SearchFieldComponent
|
|
488
487
|
}
|
|
489
|
-
], viewQueries: [{ propertyName: "categoryDropdown", first: true, predicate: ["categoryDropdown"], descendants: true }, { propertyName: "inputGroup", first: true, predicate: ["inputGroup"], descendants: true }, { propertyName: "inputField", first: true, predicate: ["inputField"], descendants: true }, { propertyName: "inputFieldTemplate", first: true, predicate: ["inputFieldTemplate"], descendants: true }, { propertyName: "suggestionMenuTemplate", first: true, predicate: ["suggestionMenuTemplate"], descendants: true }, { propertyName: "suggestionItems", predicate: SearchFieldSuggestionDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"mobile ? mobileTemplate : inputFieldTemplate\"></ng-container>\n\n<ng-template #mobileTemplate>\n <ng-container *ngTemplateOutlet=\"inputFieldTemplate\"></ng-container>\n</ng-template>\n\n<ng-template #searchCategoryMenu>\n <button\n class=\"fdp-search-field__category-button fd-input-group__button fd-button fd-button--menu {{\n appearance?.categoryButtonClass\n }}\"\n [fdpMenuTriggerFor]=\"categoryMenu\"\n >\n <span class=\"fdp-search-field__category-label\" *ngIf=\"!hideCategoryLabel\">\n {{ _currentCategory?.label || categoryLabel }}\n </span>\n </button>\n <fdp-menu #categoryMenu>\n <fdp-menu-item *ngFor=\"let category of categories\" (itemSelect)=\"setCurrentCategory(category)\"\n >{{ category.label }}\n </fdp-menu-item>\n </fdp-menu>\n</ng-template>\n\n<ng-template #searchCategorySelect>\n <fd-select\n [placeholder]=\"categoryLabel\"\n [selectControlClass]=\"appearance?.categoryButtonClass\"\n [selectDropdownButtonClass]=\"appearance?.categoryDropdownButtonClass\"\n (valueChange)=\"setCurrentCategory($event)\"\n >\n <li fd-option *ngFor=\"let category of categories\" [value]=\"category\">{{ category.label }}</li>\n </fd-select>\n</ng-template>\n\n<ng-template #inputFieldTemplate>\n <div\n class=\"fdp-search-field\"\n [class.with-categories]=\"_showCategoryDropdown\"\n [class.is-loading]=\"isLoading\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n [class.hide-category-label]=\"hideCategoryLabel\"\n >\n <div\n #inputGroup\n class=\"fdp-search-field__input-group fd-input-group {{ appearance?.searchClass }}\"\n [class.is-focus]=\"isFocused\"\n >\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.searchCategoryClass }}\"\n *ngIf=\"_showCategoryDropdown\"\n >\n <ng-template\n *ngTemplateOutlet=\"categoryMode === 'select' ? searchCategorySelect : searchCategoryMenu\"\n ></ng-template>\n </span>\n <input\n #inputField\n type=\"search\"\n [attr.placeholder]=\"placeholder\"\n class=\"fdp-search-field__input fd-input fd-input-group__input {{ appearance?.searchFieldClass }}\"\n [attr.id]=\"_inputId\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-controls]=\"_menuId\"\n [attr.aria-expanded]=\"\n (_dropdownValues$ | async)?.length !== 0 ? (_showDropdown ? 'true' : 'false') : null\n \"\n [attr.aria-haspopup]=\"(_dropdownValues$ | async)?.length !== 0\"\n autocomplete=\"off\"\n (keydown)=\"onKeydown($event)\"\n (keydown.enter)=\"onSearchSubmit($event)\"\n [(ngModel)]=\"inputText\"\n (ngModelChange)=\"onValueChange($event)\"\n (click)=\"mobile && openMobileMode()\"\n />\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }}\"\n *ngIf=\"inputText && inputText.length > 0\"\n >\n <button\n [title]=\"'platformSearchField.clearButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__clear fd-button fd-button--transparent {{ appearance?.buttonClass }}\"\n [class.fd-input-group__button]=\"!appearance?.removeGroupButtonClass\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.id]=\"_clearId\"\n (click)=\"clearTextInput()\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </span>\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }} {{\n appearance?.searchSubmitClass\n }}\"\n *ngIf=\"forceSearchButton || isLoading || (!isLoading && !_isSearchDone)\"\n >\n <button\n *ngIf=\"!disableSearch\"\n [title]=\"'platformSearchField.submitButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__submit fd-button fd-button--transparent {{ appearance?.buttonClass }}\"\n [class.fd-input-group__button]=\"!appearance?.removeGroupButtonClass\"\n [attr.id]=\"_submitId\"\n [attr.disabled]=\"disabled ? '' : null\"\n (click)=\"onSearchSubmit()\"\n >\n <fd-icon glyph=\"search\"></fd-icon>\n </button>\n </span>\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }} {{\n appearance?.searchSubmitClass\n }}\"\n *ngIf=\"!disableRefresh && !isLoading && (_isRefresh || _isSearchDone)\"\n >\n <button\n [title]=\"'platformSearchField.synchronizeButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__loading fd-input-group__button fd-button fd-button--transparent {{\n appearance?.buttonClass\n }}\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.id]=\"_refreshId\"\n (click)=\"onSearchSubmit()\"\n >\n <fd-icon glyph=\"synchronize\"></fd-icon>\n </button>\n </span>\n </div>\n </div>\n</ng-template>\n\n<ng-template #suggestionMenuTemplate>\n <ng-container *ngIf=\"_dropdownValues$ | async | suggestionMatches : inputText : mobile as suggestions\">\n <div class=\"fdp-search-field__suggestion-dropdown\" [attr.dir]=\"_dir\" *ngIf=\"suggestions?.length\">\n <nav\n class=\"fd-menu\"\n tabindex=\"-1\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n [class.fd-menu--mobile]=\"mobile\"\n [class.fd-menu--overflow]=\"!mobile\"\n [attr.id]=\"_menuId\"\n #menu\n (keydown)=\"onKeydown($event)\"\n >\n <ul class=\"fd-menu__list\" role=\"menu\">\n <li\n fdpSearchFieldSuggestion\n class=\"fdp-search-field__suggestion-item fd-menu__item fd-menu__link\"\n *ngFor=\"let value of suggestions\"\n (keydown.enter)=\"onItemClick(value); $event.preventDefault()\"\n (keydown.tab)=\"onItemClick(value)\"\n (keyup.space)=\"onItemClick(value); $event.stopPropagation()\"\n (click)=\"onItemClick(value)\"\n [innerHTML]=\"value | highlight : inputText : true : true\"\n role=\"menuitem\"\n ></li>\n </ul>\n </nav>\n </div>\n </ng-container>\n</ng-template>\n", styles: [".fd-button{--fdButton_Height:2.25rem;--fdButton_Clickable_Height:2.75rem;--fdButton_Padding_X:.625rem;--fdButton_Min_Width:2.25rem;-webkit-box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Background);align-items:center;appearance:none;background-color:transparent;background-color:var(--fdButtonBackgroundColor);background-image:none;border:0;border-color:var(--fdButtonBorderColor);border-radius:var(--sapButton_BorderCornerRadius);border-style:solid;border-width:var(--sapButton_BorderWidth);box-sizing:border-box;color:var(--sapTextColor);color:var(--fdButtonColor);cursor:pointer;display:inline-block;display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdButton_Height);justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;max-height:var(--fdButton_Height);min-width:var(--fdButton_Min_Width);outline:0;padding:0;padding-left:calc(var(--fdButton_Padding_X) - var(--sapButton_BorderWidth));padding-right:calc(var(--fdButton_Padding_X) - var(--sapButton_BorderWidth));position:relative;text-align:center;text-decoration:none;text-shadow:var(--fdButton_Text_Shadow);user-select:none;vertical-align:middle;white-space:nowrap}.fd-button:after,.fd-button:before{box-sizing:inherit;font-size:inherit}.fd-button::-moz-focus-inner{border:0}.fd-button:before{bottom:calc((var(--fdButton_Clickable_Height) - var(--fdButton_Height)) * .5);content:\"\";display:block;height:auto;left:0;position:absolute;right:0;top:calc((var(--fdButton_Clickable_Height) - var(--fdButton_Height)) * .5);width:100%}.fd-button__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:inherit;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;font-weight:inherit;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-button__text:after,.fd-button__text:before{box-sizing:inherit;font-size:inherit}.fd-button,.fd-button__text{font-family:var(--fdButton_Font_Family)}.fd-button :not(:first-child):not(.fd-button__badge){margin-left:.375rem}.fd-button :not(:first-child):not(.fd-button__badge)[dir=rtl],[dir=rtl] .fd-button :not(:first-child):not(.fd-button__badge){margin-left:0;margin-right:.375rem}.fd-button>[class*=sap-icon]{color:inherit;font-size:1rem;font-style:normal;height:1rem;line-height:1rem;min-width:1rem;vertical-align:text-bottom;width:1rem}.fd-button>[class*=sap-icon]:after,.fd-button>[class*=sap-icon]:before{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.fd-button__badge{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:var(--sapContent_BadgeBackground);border:0;border:.0625rem solid var(--fdButton_Badge_Border_Color);border-radius:.5rem;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_BadgeTextColor);display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;height:1rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;margin-left:var(--fdButton_Badge_Margin_Left, 0);padding:0 .3125rem;position:var(--fdButton_Badge_Position, absolute);right:-.25rem;top:-.25rem;z-index:1}.fd-button__badge:after,.fd-button__badge:before{box-sizing:inherit;font-size:inherit}.fd-button__badge[dir=rtl],[dir=rtl] .fd-button__badge{left:-.25rem;margin-left:0;margin-right:var(--fdButton_Badge_Margin_Left, 0);right:auto}.fd-button[class*=-compact],.fd-button[class*=-condensed],[class*=-compact] .fd-button:not([class*=-cozy]),[class*=-condensed] .fd-button:not([class*=-cozy]){--fdButton_Height:1.625rem;--fdButton_Clickable_Height:2rem;--fdButton_Padding_X:.5rem;--fdButton_Min_Width:2rem;--fdButton_Badge_Position:static;--fdButton_Badge_Margin_Left:.25rem}.fd-button--menu{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-button--menu-fixed-width{justify-content:space-between}.fd-button--menu .fd-button__text{line-height:1rem}.fd-button--full-width{-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center;min-width:100%;width:100%}.fd-button--text-alignment-left{justify-content:flex-start;text-align:left}.fd-button--text-alignment-right{justify-content:flex-end;text-align:right}.fd-button--decisive{min-width:4rem}.fd-button__instructions{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.fd-button.is-focus,.fd-button:focus{box-shadow:none;outline:none;z-index:5}.fd-button.is-focus:after,.fd-button:focus:after{border:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);border-radius:calc(var(--sapButton_BorderCornerRadius) - var(--sapContent_FocusWidth));bottom:var(--fdButton_Outline_Offset);content:\"\";display:block;left:var(--fdButton_Outline_Offset);position:absolute;right:var(--fdButton_Outline_Offset);top:var(--fdButton_Outline_Offset)}.fd-button.is-focus.fd-button--toggled:after,.fd-button.is-focus.is-selected:after,.fd-button:focus.fd-button--toggled:after,.fd-button:focus.is-selected:after{border-color:var(--fdButton_Outline_Contrast)}.fd-button.is-active,.fd-button.is-selected,.fd-button:active,.fd-button[aria-selected=true]{box-shadow:none;outline:none}.fd-button.is-disabled,.fd-button:disabled,.fd-button[aria-disabled=true]{box-shadow:none;cursor:not-allowed;opacity:var(--sapContent_DisabledOpacity)}.fd-button.is-selected,.fd-button[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button.is-hover,.fd-button:hover{--fdButtonColor:var(--sapButton_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button.is-active,.fd-button:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button.is-active .fd-button__icon,.fd-button:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button.is-disabled,.fd-button:disabled,.fd-button[aria-disabled=true]{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Background)}.fd-button.fd-button--toggled,.fd-button.is-disabled.is-selected,.fd-button.is-disabled[aria-selected=true],.fd-button:disabled.is-selected,.fd-button:disabled[aria-selected=true],.fd-button[aria-disabled=true].is-selected,.fd-button[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button.fd-button--toggled.is-active,.fd-button.fd-button--toggled.is-hover,.fd-button.fd-button--toggled.is-selected,.fd-button.fd-button--toggled:active,.fd-button.fd-button--toggled:hover,.fd-button.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button.fd-button--toggled.is-active,.fd-button.fd-button--toggled.is-selected,.fd-button.fd-button--toggled:active,.fd-button.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button.fd-button--toggled.is-active .fd-button__icon,.fd-button.fd-button--toggled.is-selected .fd-button__icon,.fd-button.fd-button--toggled:active .fd-button__icon,.fd-button.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button.fd-button--toggled.is-disabled,.fd-button.fd-button--toggled:disabled,.fd-button.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--attention{--fdButtonColor:var(--sapButton_Attention_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--attention.is-selected,.fd-button--attention[aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Background)}.fd-button--attention.is-hover,.fd-button--attention:hover{--fdButtonColor:var(--sapButton_Attention_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Hover_Background);box-shadow:var(--fdButton_Attention_Hover_Shadow)}.fd-button--attention.is-active,.fd-button--attention:active{--fdButtonColor:var(--sapButton_Attention_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Active_Background);--fdElementTextColor:var(--sapButton_Attention_Active_TextColor);--fdElementIconColor:var(--sapButton_Attention_Active_TextColor)}.fd-button--attention.is-active .fd-button__icon,.fd-button--attention:active .fd-button__icon{color:var(--sapButton_Attention_Active_TextColor);text-shadow:none}.fd-button--attention.is-disabled,.fd-button--attention:disabled,.fd-button--attention[aria-disabled=true]{--fdButtonColor:var(--sapButton_Attention_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Background)}.fd-button--attention.fd-button--toggled,.fd-button--attention.is-disabled.is-selected,.fd-button--attention.is-disabled[aria-selected=true],.fd-button--attention:disabled.is-selected,.fd-button--attention:disabled[aria-selected=true],.fd-button--attention[aria-disabled=true].is-selected,.fd-button--attention[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Background)}.fd-button--attention.fd-button--toggled.is-active,.fd-button--attention.fd-button--toggled.is-hover,.fd-button--attention.fd-button--toggled.is-selected,.fd-button--attention.fd-button--toggled:active,.fd-button--attention.fd-button--toggled:hover,.fd-button--attention.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Hover_Background);box-shadow:var(--fdButton_Attention_Hover_Shadow)}.fd-button--attention.fd-button--toggled.is-active,.fd-button--attention.fd-button--toggled.is-selected,.fd-button--attention.fd-button--toggled:active,.fd-button--attention.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Attention_Selected_TextColor);--fdElementIconColor:var(--sapButton_Attention_Selected_TextColor)}.fd-button--attention.fd-button--toggled.is-active .fd-button__icon,.fd-button--attention.fd-button--toggled.is-selected .fd-button__icon,.fd-button--attention.fd-button--toggled:active .fd-button__icon,.fd-button--attention.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Attention_Active_TextColor);text-shadow:none}.fd-button--attention.fd-button--toggled.is-disabled,.fd-button--attention.fd-button--toggled:disabled,.fd-button--attention.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--emphasized{--fdButtonColor:var(--sapButton_Emphasized_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);border-width:var(--fdButton_Emphasized_Border_Width);color:var(--fdButtonColor);font-weight:var(--sapButton_Emphasized_FontWeight)}.fd-button--emphasized.is-selected,.fd-button--emphasized[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--emphasized.is-hover,.fd-button--emphasized:hover{--fdButtonColor:var(--sapButton_Emphasized_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Hover_Background);box-shadow:none}.fd-button--emphasized.is-active,.fd-button--emphasized:active{--fdButtonColor:var(--sapButton_Emphasized_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Active_Background);--fdElementTextColor:var(--sapButton_Emphasized_Active_TextColor);--fdElementIconColor:var(--sapButton_Emphasized_Active_TextColor)}.fd-button--emphasized.is-active .fd-button__icon,.fd-button--emphasized:active .fd-button__icon{color:var(--sapButton_Emphasized_Active_TextColor);text-shadow:none}.fd-button--emphasized.is-disabled,.fd-button--emphasized:disabled,.fd-button--emphasized[aria-disabled=true]{--fdButtonColor:var(--sapButton_Emphasized_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Background)}.fd-button--emphasized.fd-button--toggled,.fd-button--emphasized.is-disabled.is-selected,.fd-button--emphasized.is-disabled[aria-selected=true],.fd-button--emphasized:disabled.is-selected,.fd-button--emphasized:disabled[aria-selected=true],.fd-button--emphasized[aria-disabled=true].is-selected,.fd-button--emphasized[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-hover,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled:hover,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--emphasized.fd-button--toggled.is-active .fd-button__icon,.fd-button--emphasized.fd-button--toggled.is-selected .fd-button__icon,.fd-button--emphasized.fd-button--toggled:active .fd-button__icon,.fd-button--emphasized.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Emphasized_Active_TextColor);text-shadow:none}.fd-button--emphasized.fd-button--toggled.is-disabled,.fd-button--emphasized.fd-button--toggled:disabled,.fd-button--emphasized.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--emphasized.is-focus,.fd-button--emphasized:focus{z-index:5}.fd-button--emphasized.is-focus:after,.fd-button--emphasized:focus:after{border-color:var(--sapContent_ContrastFocusColor)}.fd-button--emphasized.is-active,.fd-button--emphasized.is-selected,.fd-button--emphasized:active,.fd-button--emphasized[aria-selected=true]{outline:none}.fd-button--emphasized.fd-button--toggled.is-focus,.fd-button--emphasized.fd-button--toggled:focus{outline-color:var(--fdButton_Emphasized_Active_Outline);z-index:5}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{outline:none}.fd-button--ghost{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--fdButton_Ghost_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--ghost.is-selected,.fd-button--ghost[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--ghost.is-hover,.fd-button--ghost:hover{--fdButtonColor:var(--sapButton_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--ghost.is-active,.fd-button--ghost:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button--ghost.is-active .fd-button__icon,.fd-button--ghost:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--ghost.is-disabled,.fd-button--ghost:disabled,.fd-button--ghost[aria-disabled=true]{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--fdButton_Ghost_Background)}.fd-button--ghost.fd-button--toggled,.fd-button--ghost.is-disabled.is-selected,.fd-button--ghost.is-disabled[aria-selected=true],.fd-button--ghost:disabled.is-selected,.fd-button--ghost:disabled[aria-selected=true],.fd-button--ghost[aria-disabled=true].is-selected,.fd-button--ghost[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--ghost.fd-button--toggled.is-active,.fd-button--ghost.fd-button--toggled.is-hover,.fd-button--ghost.fd-button--toggled.is-selected,.fd-button--ghost.fd-button--toggled:active,.fd-button--ghost.fd-button--toggled:hover,.fd-button--ghost.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--ghost.fd-button--toggled.is-active,.fd-button--ghost.fd-button--toggled.is-selected,.fd-button--ghost.fd-button--toggled:active,.fd-button--ghost.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--ghost.fd-button--toggled.is-active .fd-button__icon,.fd-button--ghost.fd-button--toggled.is-selected .fd-button__icon,.fd-button--ghost.fd-button--toggled:active .fd-button__icon,.fd-button--ghost.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--ghost.fd-button--toggled.is-disabled,.fd-button--ghost.fd-button--toggled:disabled,.fd-button--ghost.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--negative{--fdButtonColor:var(--sapButton_Reject_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--negative.is-selected,.fd-button--negative[aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Background)}.fd-button--negative.is-hover,.fd-button--negative:hover{--fdButtonColor:var(--sapButton_Reject_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Hover_Background);box-shadow:var(--fdButton_Negative_Hover_Shadow)}.fd-button--negative.is-active,.fd-button--negative:active{--fdButtonColor:var(--sapButton_Reject_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Active_Background);--fdElementTextColor:var(--sapButton_Reject_Active_TextColor);--fdElementIconColor:var(--sapButton_Reject_Active_TextColor)}.fd-button--negative.is-active .fd-button__icon,.fd-button--negative:active .fd-button__icon{color:var(--sapButton_Reject_Active_TextColor);text-shadow:none}.fd-button--negative.is-disabled,.fd-button--negative:disabled,.fd-button--negative[aria-disabled=true]{--fdButtonColor:var(--sapButton_Reject_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Background)}.fd-button--negative.fd-button--toggled,.fd-button--negative.is-disabled.is-selected,.fd-button--negative.is-disabled[aria-selected=true],.fd-button--negative:disabled.is-selected,.fd-button--negative:disabled[aria-selected=true],.fd-button--negative[aria-disabled=true].is-selected,.fd-button--negative[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Background)}.fd-button--negative.fd-button--toggled.is-active,.fd-button--negative.fd-button--toggled.is-hover,.fd-button--negative.fd-button--toggled.is-selected,.fd-button--negative.fd-button--toggled:active,.fd-button--negative.fd-button--toggled:hover,.fd-button--negative.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Hover_Background);box-shadow:var(--fdButton_Negative_Hover_Shadow)}.fd-button--negative.fd-button--toggled.is-active,.fd-button--negative.fd-button--toggled.is-selected,.fd-button--negative.fd-button--toggled:active,.fd-button--negative.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Reject_Selected_TextColor);--fdElementIconColor:var(--sapButton_Reject_Selected_TextColor)}.fd-button--negative.fd-button--toggled.is-active .fd-button__icon,.fd-button--negative.fd-button--toggled.is-selected .fd-button__icon,.fd-button--negative.fd-button--toggled:active .fd-button__icon,.fd-button--negative.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Reject_Active_TextColor);text-shadow:none}.fd-button--negative.fd-button--toggled.is-disabled,.fd-button--negative.fd-button--toggled:disabled,.fd-button--negative.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--positive{--fdButtonColor:var(--sapButton_Accept_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--positive.is-selected,.fd-button--positive[aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Background)}.fd-button--positive.is-hover,.fd-button--positive:hover{--fdButtonColor:var(--sapButton_Accept_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Hover_Background);box-shadow:var(--fdButton_Positive_Hover_Shadow)}.fd-button--positive.is-active,.fd-button--positive:active{--fdButtonColor:var(--sapButton_Accept_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Active_Background);--fdElementTextColor:var(--sapButton_Accept_Active_TextColor);--fdElementIconColor:var(--sapButton_Accept_Active_TextColor)}.fd-button--positive.is-active .fd-button__icon,.fd-button--positive:active .fd-button__icon{color:var(--sapButton_Accept_Active_TextColor);text-shadow:none}.fd-button--positive.is-disabled,.fd-button--positive:disabled,.fd-button--positive[aria-disabled=true]{--fdButtonColor:var(--sapButton_Accept_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Background)}.fd-button--positive.fd-button--toggled,.fd-button--positive.is-disabled.is-selected,.fd-button--positive.is-disabled[aria-selected=true],.fd-button--positive:disabled.is-selected,.fd-button--positive:disabled[aria-selected=true],.fd-button--positive[aria-disabled=true].is-selected,.fd-button--positive[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Background)}.fd-button--positive.fd-button--toggled.is-active,.fd-button--positive.fd-button--toggled.is-hover,.fd-button--positive.fd-button--toggled.is-selected,.fd-button--positive.fd-button--toggled:active,.fd-button--positive.fd-button--toggled:hover,.fd-button--positive.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Hover_Background);box-shadow:var(--fdButton_Positive_Hover_Shadow)}.fd-button--positive.fd-button--toggled.is-active,.fd-button--positive.fd-button--toggled.is-selected,.fd-button--positive.fd-button--toggled:active,.fd-button--positive.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Accept_Selected_TextColor);--fdElementIconColor:var(--sapButton_Accept_Selected_TextColor)}.fd-button--positive.fd-button--toggled.is-active .fd-button__icon,.fd-button--positive.fd-button--toggled.is-selected .fd-button__icon,.fd-button--positive.fd-button--toggled:active .fd-button__icon,.fd-button--positive.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Accept_Active_TextColor);text-shadow:none}.fd-button--positive.fd-button--toggled.is-disabled,.fd-button--positive.fd-button--toggled:disabled,.fd-button--positive.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--transparent{--fdButtonColor:var(--sapButton_Lite_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--transparent.is-selected,.fd-button--transparent[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--transparent.is-hover,.fd-button--transparent:hover{--fdButtonColor:var(--sapButton_Lite_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--transparent.is-active,.fd-button--transparent:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button--transparent.is-active .fd-button__icon,.fd-button--transparent:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--transparent.is-disabled,.fd-button--transparent:disabled,.fd-button--transparent[aria-disabled=true]{--fdButtonColor:var(--sapButton_Lite_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Background)}.fd-button--transparent.fd-button--toggled,.fd-button--transparent.is-disabled.is-selected,.fd-button--transparent.is-disabled[aria-selected=true],.fd-button--transparent:disabled.is-selected,.fd-button--transparent:disabled[aria-selected=true],.fd-button--transparent[aria-disabled=true].is-selected,.fd-button--transparent[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--transparent.fd-button--toggled.is-active,.fd-button--transparent.fd-button--toggled.is-hover,.fd-button--transparent.fd-button--toggled.is-selected,.fd-button--transparent.fd-button--toggled:active,.fd-button--transparent.fd-button--toggled:hover,.fd-button--transparent.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--transparent.fd-button--toggled.is-active,.fd-button--transparent.fd-button--toggled.is-selected,.fd-button--transparent.fd-button--toggled:active,.fd-button--transparent.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--transparent.fd-button--toggled.is-active .fd-button__icon,.fd-button--transparent.fd-button--toggled.is-selected .fd-button__icon,.fd-button--transparent.fd-button--toggled:active .fd-button__icon,.fd-button--transparent.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--transparent.fd-button--toggled.is-disabled,.fd-button--transparent.fd-button--toggled:disabled,.fd-button--transparent.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-input{-webkit-box-sizing:border-box;-webkit-box-shadow:none;-webkit-appearance:none;appearance:none;background:var(--sapField_BackgroundStyle, var(--sapField_BackgroundStyle));background-color:var(--sapField_Background, var(--sapField_Background));border:0;border:var(--sapField_BorderWidth) var(--sapField_BorderStyle) var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);box-shadow:none;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);cursor:text;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2.25rem;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdInput_Field_Margin, .25rem 0);min-height:2.25rem;min-width:var(2.75rem, 2.75rem);outline:none;overflow:hidden;padding:0;padding:var(--fdInput_Field_Padding, 0 .625rem);text-overflow:ellipsis;text-shadow:var(--fdInput_Text_Shadow);white-space:nowrap;width:100%;z-index:1}.fd-input:after,.fd-input:before{box-sizing:inherit;font-size:inherit}.fd-input::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:var(--fdPlaceholder_Font_Style)}.fd-input[dir=rtl]::placeholder,[dir=rtl] .fd-input::placeholder{text-indent:.125rem}.fd-input::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-input::-ms-clear{display:none}.fd-input.is-hover,.fd-input:hover{-webkit-box-shadow:var(--fdInput_Box_Shadow_Hover);background:var(--sapField_Hover_BackgroundStyle, var(--sapField_Hover_BackgroundStyle));background-color:var(--sapField_Hover_Background, var(--sapField_Hover_Background));border-color:var(--sapField_Hover_BorderColor);box-shadow:var(--fdInput_Box_Shadow_Hover)}.fd-input.is-focus,.fd-input:focus{-webkit-box-shadow:none;background:var(--sapField_Focus_Background, var(--sapField_Focus_Background));box-shadow:none;outline-color:var(--fdInput_Outline_Color);outline-offset:var(--fdInput_Outline_Offset);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-input[type=search]::-webkit-search-cancel-button,.fd-input[type=search]::-webkit-search-decoration,.fd-input[type=search]::-webkit-search-results-button,.fd-input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}.fd-input[aria-expanded=false]{z-index:0}.fd-input.is-expanded,.fd-input[aria-expanded=true]{z-index:4}.fd-input[class*=-compact],.fd-input[class*=-condensed],[class*=-compact] .fd-input:not([class*=-cozy]),[class*=-condensed] .fd-input:not([class*=-cozy]){box-sizing:border-box;height:1.625rem;margin:var(--fdInput_Field_Compact_Margin, .1875rem 0);min-height:1.625rem;min-width:var(--fdInput_Field_Compact_Min_Width, 2rem);padding:var(--fdInput_Field_Compact_Padding, 0 .5rem)}.fd-input--no-number-spinner{-moz-appearance:textfield}.fd-input--no-number-spinner::-webkit-inner-spin-button,.fd-input--no-number-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fd-input.right-align{text-align:right}.fd-input.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-input.is-success.is-hover,.fd-input.is-success:hover{-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-input.is-success.is-focus,.fd-input.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-input.is-success.is-focus.is-hover,.fd-input.is-success.is-focus:hover,.fd-input.is-success:focus.is-hover,.fd-input.is-success:focus:hover{box-shadow:none}.fd-input.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-input.is-error.is-hover,.fd-input.is-error:hover{-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-input.is-error.is-focus,.fd-input.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-input.is-error.is-focus.is-hover,.fd-input.is-error.is-focus:hover,.fd-input.is-error:focus.is-hover,.fd-input.is-error:focus:hover{box-shadow:none}.fd-input.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input.is-warning.is-hover,.fd-input.is-warning:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input.is-warning.is-focus.is-hover,.fd-input.is-warning.is-focus:hover,.fd-input.is-warning:focus.is-hover,.fd-input.is-warning:focus:hover{box-shadow:none}.fd-input.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input.is-alert.is-hover,.fd-input.is-alert:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input.is-alert.is-focus.is-hover,.fd-input.is-alert.is-focus:hover,.fd-input.is-alert:focus.is-hover,.fd-input.is-alert:focus:hover{box-shadow:none}.fd-input.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-input.is-information.is-hover,.fd-input.is-information:hover{-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-input.is-information.is-focus,.fd-input.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-input.is-information.is-focus.is-hover,.fd-input.is-information.is-focus:hover,.fd-input.is-information:focus.is-hover,.fd-input.is-information:focus:hover{box-shadow:none}.fd-input.is-alert,.fd-input.is-error,.fd-input.is-warning{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-input.is-alert::placeholder,.fd-input.is-error::placeholder,.fd-input.is-warning::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus,.fd-input.is-error.is-focus,.fd-input.is-error:focus,.fd-input.is-information.is-focus,.fd-input.is-information:focus,.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-input.is-error::placeholder{color:var(--sapField_TextColor)}.fd-input.is-disabled,.fd-input:disabled,.fd-input[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-input.is-disabled::placeholder,.fd-input:disabled::placeholder,.fd-input[aria-disabled=true]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input.is-readonly,.fd-input[aria-readonly=true],.fd-input[readonly]{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius)}.fd-input.is-readonly::placeholder,.fd-input[aria-readonly=true]::placeholder,.fd-input[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input.is-readonly.is-hover,.fd-input.is-readonly:hover,.fd-input[aria-readonly=true].is-hover,.fd-input[aria-readonly=true]:hover,.fd-input[readonly].is-hover,.fd-input[readonly]:hover{-webkit-box-shadow:none;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);box-shadow:none}.fd-input.is-readonly.is-focus,.fd-input.is-readonly:focus,.fd-input[aria-readonly=true].is-focus,.fd-input[aria-readonly=true]:focus,.fd-input[readonly].is-focus,.fd-input[readonly]:focus{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);z-index:5}/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-input-group+(--inline, --control)\n .fd-input-group__addon+(--button)\n*/.fd-input-group{-webkit-box-sizing:border-box;-webkit-box-shadow:none;-webkit-appearance:none;appearance:none;background:var(--fdInputGroup_Background, var(--sapField_BackgroundStyle));background-color:var(--fdInputGroup_Background_Color, var(--sapField_Background));border:0;border:var(--sapField_BorderWidth) var(--sapField_BorderStyle) var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);box-shadow:none;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);cursor:text;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:auto;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdInput_Field_Margin, .25rem 0);min-width:var(2.75rem, 2.75rem);outline:none;overflow:hidden;padding:0;text-overflow:ellipsis;text-shadow:var(--fdInput_Text_Shadow);white-space:nowrap;width:100%;z-index:1}.fd-input-group:after,.fd-input-group:before{box-sizing:inherit;font-size:inherit}.fd-input-group::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:var(--fdPlaceholder_Font_Style)}.fd-input-group[dir=rtl]::placeholder,[dir=rtl] .fd-input-group::placeholder{text-indent:.125rem}.fd-input-group::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-input-group::-ms-clear{display:none}.fd-input-group.is-hover,.fd-input-group:hover{-webkit-box-shadow:var(--fdInput_Box_Shadow_Hover);background:var(--fdInputGroup_Hover_Background, var(--sapField_Hover_BackgroundStyle));background-color:var(--fdInputGroup_Hover_Background_Color, var(--sapField_Hover_Background));border-color:var(--sapField_Hover_BorderColor);box-shadow:var(--fdInput_Box_Shadow_Hover)}.fd-input-group.is-focus,.fd-input-group:focus{-webkit-box-shadow:none;background:var(--sapField_Focus_Background, var(--sapField_Focus_Background));box-shadow:none;outline-color:var(--fdInput_Outline_Color);outline-offset:var(--fdInput_Outline_Offset);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-input-group.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-input-group.is-success.is-hover,.fd-input-group.is-success:hover{-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-input-group.is-success.is-focus,.fd-input-group.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-input-group.is-success.is-focus.is-hover,.fd-input-group.is-success.is-focus:hover,.fd-input-group.is-success:focus.is-hover,.fd-input-group.is-success:focus:hover{box-shadow:none}.fd-input-group.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-input-group.is-error.is-hover,.fd-input-group.is-error:hover{-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-input-group.is-error.is-focus,.fd-input-group.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-input-group.is-error.is-focus.is-hover,.fd-input-group.is-error.is-focus:hover,.fd-input-group.is-error:focus.is-hover,.fd-input-group.is-error:focus:hover{box-shadow:none}.fd-input-group.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input-group.is-warning.is-hover,.fd-input-group.is-warning:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input-group.is-warning.is-focus,.fd-input-group.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input-group.is-warning.is-focus.is-hover,.fd-input-group.is-warning.is-focus:hover,.fd-input-group.is-warning:focus.is-hover,.fd-input-group.is-warning:focus:hover{box-shadow:none}.fd-input-group.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input-group.is-alert.is-hover,.fd-input-group.is-alert:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input-group.is-alert.is-focus,.fd-input-group.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input-group.is-alert.is-focus.is-hover,.fd-input-group.is-alert.is-focus:hover,.fd-input-group.is-alert:focus.is-hover,.fd-input-group.is-alert:focus:hover{box-shadow:none}.fd-input-group.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-input-group.is-information.is-hover,.fd-input-group.is-information:hover{-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-input-group.is-information.is-focus,.fd-input-group.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-input-group.is-information.is-focus.is-hover,.fd-input-group.is-information.is-focus:hover,.fd-input-group.is-information:focus.is-hover,.fd-input-group.is-information:focus:hover{box-shadow:none}.fd-input-group.is-alert,.fd-input-group.is-error,.fd-input-group.is-warning{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-input-group.is-alert::placeholder,.fd-input-group.is-error::placeholder,.fd-input-group.is-warning::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-input-group.is-alert.is-focus,.fd-input-group.is-alert:focus,.fd-input-group.is-error.is-focus,.fd-input-group.is-error:focus,.fd-input-group.is-information.is-focus,.fd-input-group.is-information:focus,.fd-input-group.is-warning.is-focus,.fd-input-group.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-input-group.is-error::placeholder{color:var(--sapField_TextColor)}.fd-input-group.is-disabled,.fd-input-group:disabled,.fd-input-group[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-input-group.is-disabled::placeholder,.fd-input-group:disabled::placeholder,.fd-input-group[aria-disabled=true]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input-group.is-readonly,.fd-input-group[aria-readonly=true],.fd-input-group[readonly]{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius)}.fd-input-group.is-readonly::placeholder,.fd-input-group[aria-readonly=true]::placeholder,.fd-input-group[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input-group.is-readonly.is-hover,.fd-input-group.is-readonly:hover,.fd-input-group[aria-readonly=true].is-hover,.fd-input-group[aria-readonly=true]:hover,.fd-input-group[readonly].is-hover,.fd-input-group[readonly]:hover{-webkit-box-shadow:none;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);box-shadow:none}.fd-input-group.is-readonly.is-focus,.fd-input-group.is-readonly:focus,.fd-input-group[aria-readonly=true].is-focus,.fd-input-group[aria-readonly=true]:focus,.fd-input-group[readonly].is-focus,.fd-input-group[readonly]:focus{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);z-index:5}.fd-input-group .fd-input-group__button:first-child{border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:first-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child{border-left:var(--fdInputGroup_ControlButton_SideBorder);border-right-style:none}.fd-input-group .fd-input-group__button:first-child.is-hover,.fd-input-group .fd-input-group__button:first-child:hover{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:first-child.is-hover[dir=rtl],.fd-input-group .fd-input-group__button:first-child:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child.is-hover,[dir=rtl] .fd-input-group .fd-input-group__button:first-child:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__button:first-child.is-active,.fd-input-group .fd-input-group__button:first-child:active{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:first-child.is-active[dir=rtl],.fd-input-group .fd-input-group__button:first-child:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child.is-active,[dir=rtl] .fd-input-group .fd-input-group__button:first-child:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__button:not(:first-child){border-left:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:not(:first-child)[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child){border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:not(:first-child).is-hover,.fd-input-group .fd-input-group__button:not(:first-child):hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-hover[dir=rtl],.fd-input-group .fd-input-group__button:not(:first-child):hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child).is-hover,[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child):hover{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-active,.fd-input-group .fd-input-group__button:not(:first-child):active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-active[dir=rtl],.fd-input-group .fd-input-group__button:not(:first-child):active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child).is-active,[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child):active{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button{border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button{border-left:var(--fdInputGroup_ControlButton_SideBorder);border-right-style:none}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover[dir=rtl],.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover,[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active,.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active[dir=rtl],.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active,[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button{border-left:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover[dir=rtl],.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover,[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active,.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active[dir=rtl],.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active,[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button{background:var(--fdInput_Group_Button_Background);border:none;border-radius:var(--fdInput_Group_Button_Border_Raduis);color:var(--fdInput_Group_Button_Text_Color);overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;z-index:auto!important}.fd-input-group .fd-input-group__button:before{display:none!important}.fd-input-group .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__button:hover{--fdInput_Group_Button_Text_Color:var(--fdInput_Group_Button_Hover_Text_Color);-webkit-box-shadow:var(--fdInput_Group_Button_Box_Shadow);background:var(--fdInput_Group_Button_Hover_Background);box-shadow:var(--fdInput_Group_Button_Box_Shadow)}.fd-input-group .fd-input-group__button.is-active,.fd-input-group .fd-input-group__button:active{-webkit-box-shadow:var(--fdInput_Group_Button_Box_Shadow);background:var(--fdInput_Group_Button_Active_Background);box-shadow:var(--fdInput_Group_Button_Box_Shadow);color:var(--fdInput_Group_Button_Active_Text_Color)}.fd-input-group.is-success .fd-input-group__button.is-active,.fd-input-group.is-success .fd-input-group__button.is-hover,.fd-input-group.is-success .fd-input-group__button:active,.fd-input-group.is-success .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Success_Active_Box_Shadow)}.fd-input-group.is-success .fd-input-group__button.is-active,.fd-input-group.is-success .fd-input-group__button:active{color:var(--fdInput_Group_Button_Success_Active_Text_Color)}.fd-input-group.is-error .fd-input-group__button.is-active,.fd-input-group.is-error .fd-input-group__button.is-hover,.fd-input-group.is-error .fd-input-group__button:active,.fd-input-group.is-error .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Error_Active_Box_Shadow)}.fd-input-group.is-error .fd-input-group__button.is-active,.fd-input-group.is-error .fd-input-group__button:active{color:var(--fdInput_Group_Button_Error_Active_Text_Color)}.fd-input-group.is-warning .fd-input-group__button.is-active,.fd-input-group.is-warning .fd-input-group__button.is-hover,.fd-input-group.is-warning .fd-input-group__button:active,.fd-input-group.is-warning .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Warning_Active_Box_Shadow)}.fd-input-group.is-warning .fd-input-group__button.is-active,.fd-input-group.is-warning .fd-input-group__button:active{color:var(--fdInput_Group_Button_Warning_Active_Text_Color)}.fd-input-group.is-alert .fd-input-group__button.is-active,.fd-input-group.is-alert .fd-input-group__button.is-hover,.fd-input-group.is-alert .fd-input-group__button:active,.fd-input-group.is-alert .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Warning_Active_Box_Shadow)}.fd-input-group.is-alert .fd-input-group__button.is-active,.fd-input-group.is-alert .fd-input-group__button:active{color:var(--fdInput_Group_Button_Warning_Active_Text_Color)}.fd-input-group.is-information .fd-input-group__button.is-active,.fd-input-group.is-information .fd-input-group__button.is-hover,.fd-input-group.is-information .fd-input-group__button:active,.fd-input-group.is-information .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Information_Active_Box_Shadow)}.fd-input-group.is-information .fd-input-group__button.is-active,.fd-input-group.is-information .fd-input-group__button:active{color:var(--fdInput_Group_Button_Information_Active_Text_Color)}.fd-input-group .fd-input-group__input{-webkit-box-flex:1;-ms-flex:1 1 10rem;background:none;background-color:var(--fdInputGroup_Input_Background, transparent);border:var(--fdInputGroup_Input_Border, none);color:var(--fdInputGroup_Input_Color, inherit);flex:1 1 10rem;padding-left:.25rem;padding-right:.25rem;text-shadow:var(--fdInputGroup_Text_Shadow)}.fd-input-group .fd-input-group__input:nth-child(n+1){margin:0}.fd-input-group .fd-input-group__input::placeholder{color:var(--fdInputGroup_Input_Placeholder_Color, var(--sapField_PlaceholderTextColor));font-style:var(--fdInputGroup_Input_Placeholder_Style, italic)}.fd-input-group .fd-input-group__input.is-hover,.fd-input-group .fd-input-group__input:hover{-webkit-box-shadow:none;background:none;background-color:var(--fdInputGroup_Hover_Input_Background, transparent);box-shadow:none}.fd-input-group .fd-input-group__input.is-focus,.fd-input-group .fd-input-group__input:focus{-webkit-box-shadow:none;background:var(--fdInputGroup_Input_Background, none);border-radius:0;box-shadow:none;outline:none;z-index:5}.fd-input-group .fd-input-group__input:first-child{padding-left:.625rem}.fd-input-group .fd-input-group__input:first-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__input:first-child{padding-left:0;padding-right:.625rem}.fd-input-group .fd-input-group__input:last-child{padding-right:.625rem}.fd-input-group .fd-input-group__input:last-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__input:last-child{padding-left:.625rem;padding-right:.25rem}.fd-input-group--inline{display:inline-flex;vertical-align:bottom;width:auto}.fd-input-group__addon{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fdInputGroup_Addon_Background, none);border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-height:var(--fdInput_Group_Addon_Height, 2.25rem);min-width:var(--fdInput_Group_Addon_Width, 2.25rem);overflow:hidden;padding:0 .625rem;text-overflow:ellipsis;white-space:nowrap}.fd-input-group__addon:after,.fd-input-group__addon:before{box-sizing:inherit;font-size:inherit}.fd-input-group__addon span[class*=sap-icon--]:before{font-size:var(--sapFontLargeSize)}.fd-input-group__addon--readonly{opacity:.4}.fd-input-group__addon--button{overflow:visible;padding:0}.fd-input-group--control[aria-expanded=true]{margin-bottom:0}.fd-input-group[class*=-compact],.fd-input-group[class*=-condensed],[class*=-compact] .fd-input-group:not([class*=-cozy]),[class*=-condensed] .fd-input-group:not([class*=-cozy]){--fdInput_Field_Margin:.1875rem 0;--fdInput_Field_Compact_Margin:0;--fdInput_Group_Addon_Width:2rem;--fdInput_Group_Addon_Height:1.625rem}.fd-input-group .fd-textarea{resize:vertical}.fd-input-group .is-disabled,.fd-input-group :disabled,.fd-input-group [aria-disabled=true]{opacity:1}.fd-input-group.is-readonly,.fd-input-group[readonly]{overflow:visible}.fd-input-group .fd-tokenizer,.fd-input-group .fd-tokenizer.is-focus,.fd-input-group .fd-tokenizer.is-hover,.fd-input-group .fd-tokenizer:focus,.fd-input-group .fd-tokenizer:hover{-webkit-box-shadow:none;background:none;background-color:var(transparent, transparent);box-shadow:none}.fd-input-group .fd-tokenizer.is-focus,.fd-input-group .fd-tokenizer:focus{outline:none;z-index:5}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0}.fdp-search-field input[type=text]::-ms-clear{display:none;width:0;height:0}.fdp-search-field input[type=text]::-ms-reveal{display:none;width:0;height:0}.fdp-search-field input[type=search]::-webkit-search-decoration,.fdp-search-field input[type=search]::-webkit-search-cancel-button,.fdp-search-field input[type=search]::-webkit-search-results-button,.fdp-search-field input[type=search]::-webkit-search-results-decoration{display:none}.fdp-search-field .fdp-search-field__input-group button.fd-input-group__button{border-width:0}.fdp-search-field .fdp-search-field__input:hover{background:transparent}.fdp-search-field__suggestion-dropdown .fd-menu--overflow{top:0;max-width:none;min-height:10rem;max-height:100%;position:absolute;background-color:var(--sapList_Background)}.fdp-search-field__suggestion-dropdown .fd-menu__list,.fdp-search-field__suggestion-dropdown .fd-menu__item{max-width:none}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i5.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i5.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i5.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(function () { return i6.DefaultValueAccessor; }), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(function () { return i6.NgControlStatus; }), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(function () { return i6.NgModel; }), selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i0.forwardRef(function () { return i7.Dir; }), selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "component", type: i0.forwardRef(function () { return i8.IconComponent; }), selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i0.forwardRef(function () { return i9.MenuComponent; }), selector: "fdp-menu", inputs: ["id", "openByArrowKeys", "xPosition"], outputs: ["close"] }, { kind: "component", type: i0.forwardRef(function () { return i9.MenuItemComponent; }), selector: "fdp-menu-item", inputs: ["disabled", "cascadeDirection"], outputs: ["itemSelect"] }, { kind: "directive", type: i0.forwardRef(function () { return i9.MenuTriggerDirective; }), selector: "[fdpMenuTriggerFor]", inputs: ["fdpMenuTriggerFor"] }, { kind: "component", type: i0.forwardRef(function () { return i10.SelectComponent; }), selector: "fd-select", inputs: ["controlId", "state", "mobile", "stateMessage", "disabled", "required", "readonly", "placeholder", "value", "extendedBodyTemplate", "maxHeight", "glyph", "closeOnOutsideClick", "fillControlMode", "controlTemplate", "appendTo", "unselectMissingOption", "typeaheadDebounceInterval", "ariaLabelledBy", "ariaLabel", "mobileConfig", "inline", "selectControlClass", "selectDropdownButtonClass", "compareWith"], outputs: ["isOpenChange", "valueChange"] }, { kind: "component", type: i0.forwardRef(function () { return i10.OptionComponent; }), selector: "[fd-option], fd-option", inputs: ["id", "value", "disabled"], outputs: ["selectionChange"] }, { kind: "directive", type: i0.forwardRef(function () { return SearchFieldSuggestionDirective; }), selector: "[fdpSearchFieldSuggestion]" }, { kind: "pipe", type: i0.forwardRef(function () { return i5.AsyncPipe; }), name: "async" }, { kind: "pipe", type: i0.forwardRef(function () { return i2.SearchHighlightPipe; }), name: "highlight" }, { kind: "pipe", type: i0.forwardRef(function () { return i11.FdTranslatePipe; }), name: "fdTranslate" }, { kind: "pipe", type: i0.forwardRef(function () { return SuggestionMatchesPipe; }), name: "suggestionMatches" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
488
|
+
], viewQueries: [{ propertyName: "categoryDropdown", first: true, predicate: ["categoryDropdown"], descendants: true }, { propertyName: "inputGroup", first: true, predicate: ["inputGroup"], descendants: true }, { propertyName: "inputField", first: true, predicate: ["inputField"], descendants: true }, { propertyName: "inputFieldTemplate", first: true, predicate: ["inputFieldTemplate"], descendants: true }, { propertyName: "suggestionMenuTemplate", first: true, predicate: ["suggestionMenuTemplate"], descendants: true }, { propertyName: "suggestionItems", predicate: SearchFieldSuggestionDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"mobile ? mobileTemplate : inputFieldTemplate\"></ng-container>\n\n<ng-template #mobileTemplate>\n <ng-container *ngTemplateOutlet=\"inputFieldTemplate\"></ng-container>\n</ng-template>\n\n<ng-template #searchCategoryMenu>\n <button\n class=\"fdp-search-field__category-button fd-input-group__button fd-button fd-button--menu {{\n appearance?.categoryButtonClass\n }}\"\n [fdpMenuTriggerFor]=\"categoryMenu\"\n >\n <span class=\"fdp-search-field__category-label\" *ngIf=\"!hideCategoryLabel\">\n {{ _currentCategory?.label || categoryLabel }}\n </span>\n </button>\n <fdp-menu #categoryMenu>\n <fdp-menu-item *ngFor=\"let category of categories\" (itemSelect)=\"setCurrentCategory(category)\"\n >{{ category.label }}\n </fdp-menu-item>\n </fdp-menu>\n</ng-template>\n\n<ng-template #searchCategorySelect>\n <fd-select\n [placeholder]=\"categoryLabel\"\n [selectControlClass]=\"appearance?.categoryButtonClass\"\n [selectDropdownButtonClass]=\"appearance?.categoryDropdownButtonClass\"\n (valueChange)=\"setCurrentCategory($event)\"\n >\n <li fd-option *ngFor=\"let category of categories\" [value]=\"category\">{{ category.label }}</li>\n </fd-select>\n</ng-template>\n\n<ng-template #inputFieldTemplate>\n <div\n class=\"fdp-search-field\"\n [class.with-categories]=\"_showCategoryDropdown\"\n [class.is-loading]=\"isLoading\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n [class.hide-category-label]=\"hideCategoryLabel\"\n >\n <div\n #inputGroup\n class=\"fdp-search-field__input-group fd-input-group {{ appearance?.searchClass }}\"\n [class.is-focus]=\"isFocused\"\n >\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.searchCategoryClass }}\"\n *ngIf=\"_showCategoryDropdown\"\n >\n <ng-template\n *ngTemplateOutlet=\"categoryMode === 'select' ? searchCategorySelect : searchCategoryMenu\"\n ></ng-template>\n </span>\n <input\n #inputField\n type=\"search\"\n [attr.placeholder]=\"placeholder\"\n class=\"fdp-search-field__input fd-input fd-input-group__input {{ appearance?.searchFieldClass }}\"\n [attr.id]=\"_inputId\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-label]=\"ariaLabel || 'platformSearchField.searchInputLabel' | fdTranslate\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-controls]=\"_menuId\"\n [attr.aria-expanded]=\"\n (_dropdownValues$ | async)?.length !== 0 ? (_showDropdown ? 'true' : 'false') : null\n \"\n [attr.aria-haspopup]=\"(_dropdownValues$ | async)?.length !== 0\"\n autocomplete=\"off\"\n (keydown)=\"onKeydown($event)\"\n (keydown.enter)=\"onSearchSubmit($event)\"\n [(ngModel)]=\"inputText\"\n (ngModelChange)=\"onValueChange($event)\"\n (click)=\"mobile && openMobileMode()\"\n />\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }}\"\n *ngIf=\"inputText && inputText.length > 0\"\n >\n <button\n [attr.aria-hidden]=\"!mobile\"\n [attr.aria-label]=\"'platformSearchField.clearButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__clear fd-button fd-button--transparent {{ appearance?.buttonClass }}\"\n [class.fd-input-group__button]=\"!appearance?.removeGroupButtonClass\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.id]=\"_clearId\"\n (click)=\"clearTextInput()\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </span>\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }} {{\n appearance?.searchSubmitClass\n }}\"\n *ngIf=\"forceSearchButton || isLoading || (!isLoading && !_isSearchDone)\"\n >\n <button\n [attr.aria-hidden]=\"!mobile\"\n *ngIf=\"!disableSearch\"\n [attr.aria-label]=\"'platformSearchField.submitButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__submit fd-button fd-button--transparent {{ appearance?.buttonClass }}\"\n [class.fd-input-group__button]=\"!appearance?.removeGroupButtonClass\"\n [attr.id]=\"_submitId\"\n [attr.disabled]=\"disabled ? '' : null\"\n (click)=\"onSearchSubmit()\"\n >\n <fd-icon glyph=\"search\"></fd-icon>\n </button>\n </span>\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }} {{\n appearance?.searchSubmitClass\n }}\"\n *ngIf=\"!disableRefresh && !isLoading && (_isRefresh || _isSearchDone)\"\n >\n <button\n [attr.aria-hidden]=\"!mobile\"\n [attr.aria-label]=\"'platformSearchField.synchronizeButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__loading fd-input-group__button fd-button fd-button--transparent {{\n appearance?.buttonClass\n }}\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.id]=\"_refreshId\"\n (click)=\"onSearchSubmit()\"\n >\n <fd-icon glyph=\"synchronize\"></fd-icon>\n </button>\n </span>\n </div>\n </div>\n</ng-template>\n\n<ng-template #suggestionMenuTemplate>\n <ng-container *ngIf=\"_dropdownValues$ | async | suggestionMatches : inputText : mobile as suggestions\">\n <div class=\"fdp-search-field__suggestion-dropdown\" [attr.dir]=\"_dir\" *ngIf=\"suggestions?.length\">\n <nav\n class=\"fd-menu\"\n tabindex=\"-1\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n [class.fd-menu--mobile]=\"mobile\"\n [class.fd-menu--overflow]=\"!mobile\"\n [attr.id]=\"_menuId\"\n #menu\n (keydown)=\"onKeydown($event)\"\n >\n <ul class=\"fd-menu__list\" role=\"menu\">\n <li\n fdpSearchFieldSuggestion\n class=\"fdp-search-field__suggestion-item fd-menu__item fd-menu__link\"\n *ngFor=\"let value of suggestions\"\n (keydown.enter)=\"onItemClick(value); $event.preventDefault()\"\n (keydown.tab)=\"onItemClick(value)\"\n (keyup.space)=\"onItemClick(value); $event.stopPropagation()\"\n (click)=\"onItemClick(value)\"\n [innerHTML]=\"value | highlight : inputText : true : true\"\n role=\"menuitem\"\n ></li>\n </ul>\n </nav>\n </div>\n </ng-container>\n</ng-template>\n", styles: [".fd-button{--fdButton_Height:2.25rem;--fdButton_Clickable_Height:2.75rem;--fdButton_Padding_X:.625rem;--fdButton_Min_Width:2.25rem;-webkit-box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Background);align-items:center;appearance:none;background-color:transparent;background-color:var(--fdButtonBackgroundColor);background-image:none;border:0;border-color:var(--fdButtonBorderColor);border-radius:var(--sapButton_BorderCornerRadius);border-style:solid;border-width:var(--sapButton_BorderWidth);box-sizing:border-box;color:var(--sapTextColor);color:var(--fdButtonColor);cursor:pointer;display:inline-block;display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdButton_Height);justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;max-height:var(--fdButton_Height);min-width:var(--fdButton_Min_Width);outline:0;padding:0;padding-left:calc(var(--fdButton_Padding_X) - var(--sapButton_BorderWidth));padding-right:calc(var(--fdButton_Padding_X) - var(--sapButton_BorderWidth));position:relative;text-align:center;text-decoration:none;text-shadow:var(--fdButton_Text_Shadow);user-select:none;vertical-align:middle;white-space:nowrap}.fd-button:after,.fd-button:before{box-sizing:inherit;font-size:inherit}.fd-button::-moz-focus-inner{border:0}.fd-button:before{bottom:calc((var(--fdButton_Clickable_Height) - var(--fdButton_Height)) * .5);content:\"\";display:block;height:auto;left:0;position:absolute;right:0;top:calc((var(--fdButton_Clickable_Height) - var(--fdButton_Height)) * .5);width:100%}.fd-button__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:inherit;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;font-weight:inherit;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-button__text:after,.fd-button__text:before{box-sizing:inherit;font-size:inherit}.fd-button,.fd-button__text{font-family:var(--fdButton_Font_Family)}.fd-button :not(:first-child):not(.fd-button__badge){margin-left:.375rem}.fd-button :not(:first-child):not(.fd-button__badge)[dir=rtl],[dir=rtl] .fd-button :not(:first-child):not(.fd-button__badge){margin-left:0;margin-right:.375rem}.fd-button>[class*=sap-icon]{color:inherit;font-size:1rem;font-style:normal;height:1rem;line-height:1rem;min-width:1rem;vertical-align:text-bottom;width:1rem}.fd-button>[class*=sap-icon]:after,.fd-button>[class*=sap-icon]:before{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.fd-button__badge{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:var(--sapContent_BadgeBackground);border:0;border:.0625rem solid var(--fdButton_Badge_Border_Color);border-radius:.5rem;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_BadgeTextColor);display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;height:1rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;margin-left:var(--fdButton_Badge_Margin_Left, 0);padding:0 .3125rem;position:var(--fdButton_Badge_Position, absolute);right:-.25rem;top:-.25rem;z-index:1}.fd-button__badge:after,.fd-button__badge:before{box-sizing:inherit;font-size:inherit}.fd-button__badge[dir=rtl],[dir=rtl] .fd-button__badge{left:-.25rem;margin-left:0;margin-right:var(--fdButton_Badge_Margin_Left, 0);right:auto}.fd-button[class*=-compact],.fd-button[class*=-condensed],[class*=-compact] .fd-button:not([class*=-cozy]),[class*=-condensed] .fd-button:not([class*=-cozy]){--fdButton_Height:1.625rem;--fdButton_Clickable_Height:2rem;--fdButton_Padding_X:.5rem;--fdButton_Min_Width:2rem;--fdButton_Badge_Position:static;--fdButton_Badge_Margin_Left:.25rem}.fd-button--menu{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-button--menu-fixed-width{justify-content:space-between}.fd-button--menu .fd-button__text{line-height:1rem}.fd-button--full-width{-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center;min-width:100%;width:100%}.fd-button--text-alignment-left{justify-content:flex-start;text-align:left}.fd-button--text-alignment-right{justify-content:flex-end;text-align:right}.fd-button--decisive{min-width:4rem}.fd-button__instructions{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.fd-button.is-focus,.fd-button:focus{box-shadow:none;outline:none;z-index:5}.fd-button.is-focus:after,.fd-button:focus:after{border:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);border-radius:calc(var(--sapButton_BorderCornerRadius) - var(--sapContent_FocusWidth));bottom:var(--fdButton_Outline_Offset);content:\"\";display:block;left:var(--fdButton_Outline_Offset);position:absolute;right:var(--fdButton_Outline_Offset);top:var(--fdButton_Outline_Offset)}.fd-button.is-focus.fd-button--toggled:after,.fd-button.is-focus.is-selected:after,.fd-button:focus.fd-button--toggled:after,.fd-button:focus.is-selected:after{border-color:var(--fdButton_Outline_Contrast)}.fd-button.is-active,.fd-button.is-selected,.fd-button:active,.fd-button[aria-selected=true]{box-shadow:none;outline:none}.fd-button.is-disabled,.fd-button:disabled,.fd-button[aria-disabled=true]{box-shadow:none;cursor:not-allowed;opacity:var(--sapContent_DisabledOpacity)}.fd-button.is-selected,.fd-button[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button.is-hover,.fd-button:hover{--fdButtonColor:var(--sapButton_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button.is-active,.fd-button:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button.is-active .fd-button__icon,.fd-button:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button.is-disabled,.fd-button:disabled,.fd-button[aria-disabled=true]{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Background)}.fd-button.fd-button--toggled,.fd-button.is-disabled.is-selected,.fd-button.is-disabled[aria-selected=true],.fd-button:disabled.is-selected,.fd-button:disabled[aria-selected=true],.fd-button[aria-disabled=true].is-selected,.fd-button[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button.fd-button--toggled.is-active,.fd-button.fd-button--toggled.is-hover,.fd-button.fd-button--toggled.is-selected,.fd-button.fd-button--toggled:active,.fd-button.fd-button--toggled:hover,.fd-button.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button.fd-button--toggled.is-active,.fd-button.fd-button--toggled.is-selected,.fd-button.fd-button--toggled:active,.fd-button.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button.fd-button--toggled.is-active .fd-button__icon,.fd-button.fd-button--toggled.is-selected .fd-button__icon,.fd-button.fd-button--toggled:active .fd-button__icon,.fd-button.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button.fd-button--toggled.is-disabled,.fd-button.fd-button--toggled:disabled,.fd-button.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--attention{--fdButtonColor:var(--sapButton_Attention_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--attention.is-selected,.fd-button--attention[aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Background)}.fd-button--attention.is-hover,.fd-button--attention:hover{--fdButtonColor:var(--sapButton_Attention_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Hover_Background);box-shadow:var(--fdButton_Attention_Hover_Shadow)}.fd-button--attention.is-active,.fd-button--attention:active{--fdButtonColor:var(--sapButton_Attention_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Active_Background);--fdElementTextColor:var(--sapButton_Attention_Active_TextColor);--fdElementIconColor:var(--sapButton_Attention_Active_TextColor)}.fd-button--attention.is-active .fd-button__icon,.fd-button--attention:active .fd-button__icon{color:var(--sapButton_Attention_Active_TextColor);text-shadow:none}.fd-button--attention.is-disabled,.fd-button--attention:disabled,.fd-button--attention[aria-disabled=true]{--fdButtonColor:var(--sapButton_Attention_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Background)}.fd-button--attention.fd-button--toggled,.fd-button--attention.is-disabled.is-selected,.fd-button--attention.is-disabled[aria-selected=true],.fd-button--attention:disabled.is-selected,.fd-button--attention:disabled[aria-selected=true],.fd-button--attention[aria-disabled=true].is-selected,.fd-button--attention[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Background)}.fd-button--attention.fd-button--toggled.is-active,.fd-button--attention.fd-button--toggled.is-hover,.fd-button--attention.fd-button--toggled.is-selected,.fd-button--attention.fd-button--toggled:active,.fd-button--attention.fd-button--toggled:hover,.fd-button--attention.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Hover_Background);box-shadow:var(--fdButton_Attention_Hover_Shadow)}.fd-button--attention.fd-button--toggled.is-active,.fd-button--attention.fd-button--toggled.is-selected,.fd-button--attention.fd-button--toggled:active,.fd-button--attention.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Attention_Selected_TextColor);--fdElementIconColor:var(--sapButton_Attention_Selected_TextColor)}.fd-button--attention.fd-button--toggled.is-active .fd-button__icon,.fd-button--attention.fd-button--toggled.is-selected .fd-button__icon,.fd-button--attention.fd-button--toggled:active .fd-button__icon,.fd-button--attention.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Attention_Active_TextColor);text-shadow:none}.fd-button--attention.fd-button--toggled.is-disabled,.fd-button--attention.fd-button--toggled:disabled,.fd-button--attention.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--emphasized{--fdButtonColor:var(--sapButton_Emphasized_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);border-width:var(--fdButton_Emphasized_Border_Width);color:var(--fdButtonColor);font-weight:var(--sapButton_Emphasized_FontWeight)}.fd-button--emphasized.is-selected,.fd-button--emphasized[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--emphasized.is-hover,.fd-button--emphasized:hover{--fdButtonColor:var(--sapButton_Emphasized_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Hover_Background);box-shadow:none}.fd-button--emphasized.is-active,.fd-button--emphasized:active{--fdButtonColor:var(--sapButton_Emphasized_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Active_Background);--fdElementTextColor:var(--sapButton_Emphasized_Active_TextColor);--fdElementIconColor:var(--sapButton_Emphasized_Active_TextColor)}.fd-button--emphasized.is-active .fd-button__icon,.fd-button--emphasized:active .fd-button__icon{color:var(--sapButton_Emphasized_Active_TextColor);text-shadow:none}.fd-button--emphasized.is-disabled,.fd-button--emphasized:disabled,.fd-button--emphasized[aria-disabled=true]{--fdButtonColor:var(--sapButton_Emphasized_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Background)}.fd-button--emphasized.fd-button--toggled,.fd-button--emphasized.is-disabled.is-selected,.fd-button--emphasized.is-disabled[aria-selected=true],.fd-button--emphasized:disabled.is-selected,.fd-button--emphasized:disabled[aria-selected=true],.fd-button--emphasized[aria-disabled=true].is-selected,.fd-button--emphasized[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-hover,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled:hover,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--emphasized.fd-button--toggled.is-active .fd-button__icon,.fd-button--emphasized.fd-button--toggled.is-selected .fd-button__icon,.fd-button--emphasized.fd-button--toggled:active .fd-button__icon,.fd-button--emphasized.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Emphasized_Active_TextColor);text-shadow:none}.fd-button--emphasized.fd-button--toggled.is-disabled,.fd-button--emphasized.fd-button--toggled:disabled,.fd-button--emphasized.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--emphasized.is-focus,.fd-button--emphasized:focus{z-index:5}.fd-button--emphasized.is-focus:after,.fd-button--emphasized:focus:after{border-color:var(--sapContent_ContrastFocusColor)}.fd-button--emphasized.is-active,.fd-button--emphasized.is-selected,.fd-button--emphasized:active,.fd-button--emphasized[aria-selected=true]{outline:none}.fd-button--emphasized.fd-button--toggled.is-focus,.fd-button--emphasized.fd-button--toggled:focus{outline-color:var(--fdButton_Emphasized_Active_Outline);z-index:5}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{outline:none}.fd-button--ghost{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--fdButton_Ghost_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--ghost.is-selected,.fd-button--ghost[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--ghost.is-hover,.fd-button--ghost:hover{--fdButtonColor:var(--sapButton_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--ghost.is-active,.fd-button--ghost:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button--ghost.is-active .fd-button__icon,.fd-button--ghost:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--ghost.is-disabled,.fd-button--ghost:disabled,.fd-button--ghost[aria-disabled=true]{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--fdButton_Ghost_Background)}.fd-button--ghost.fd-button--toggled,.fd-button--ghost.is-disabled.is-selected,.fd-button--ghost.is-disabled[aria-selected=true],.fd-button--ghost:disabled.is-selected,.fd-button--ghost:disabled[aria-selected=true],.fd-button--ghost[aria-disabled=true].is-selected,.fd-button--ghost[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--ghost.fd-button--toggled.is-active,.fd-button--ghost.fd-button--toggled.is-hover,.fd-button--ghost.fd-button--toggled.is-selected,.fd-button--ghost.fd-button--toggled:active,.fd-button--ghost.fd-button--toggled:hover,.fd-button--ghost.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--ghost.fd-button--toggled.is-active,.fd-button--ghost.fd-button--toggled.is-selected,.fd-button--ghost.fd-button--toggled:active,.fd-button--ghost.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--ghost.fd-button--toggled.is-active .fd-button__icon,.fd-button--ghost.fd-button--toggled.is-selected .fd-button__icon,.fd-button--ghost.fd-button--toggled:active .fd-button__icon,.fd-button--ghost.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--ghost.fd-button--toggled.is-disabled,.fd-button--ghost.fd-button--toggled:disabled,.fd-button--ghost.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--negative{--fdButtonColor:var(--sapButton_Reject_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--negative.is-selected,.fd-button--negative[aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Background)}.fd-button--negative.is-hover,.fd-button--negative:hover{--fdButtonColor:var(--sapButton_Reject_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Hover_Background);box-shadow:var(--fdButton_Negative_Hover_Shadow)}.fd-button--negative.is-active,.fd-button--negative:active{--fdButtonColor:var(--sapButton_Reject_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Active_Background);--fdElementTextColor:var(--sapButton_Reject_Active_TextColor);--fdElementIconColor:var(--sapButton_Reject_Active_TextColor)}.fd-button--negative.is-active .fd-button__icon,.fd-button--negative:active .fd-button__icon{color:var(--sapButton_Reject_Active_TextColor);text-shadow:none}.fd-button--negative.is-disabled,.fd-button--negative:disabled,.fd-button--negative[aria-disabled=true]{--fdButtonColor:var(--sapButton_Reject_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Background)}.fd-button--negative.fd-button--toggled,.fd-button--negative.is-disabled.is-selected,.fd-button--negative.is-disabled[aria-selected=true],.fd-button--negative:disabled.is-selected,.fd-button--negative:disabled[aria-selected=true],.fd-button--negative[aria-disabled=true].is-selected,.fd-button--negative[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Background)}.fd-button--negative.fd-button--toggled.is-active,.fd-button--negative.fd-button--toggled.is-hover,.fd-button--negative.fd-button--toggled.is-selected,.fd-button--negative.fd-button--toggled:active,.fd-button--negative.fd-button--toggled:hover,.fd-button--negative.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Hover_Background);box-shadow:var(--fdButton_Negative_Hover_Shadow)}.fd-button--negative.fd-button--toggled.is-active,.fd-button--negative.fd-button--toggled.is-selected,.fd-button--negative.fd-button--toggled:active,.fd-button--negative.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Reject_Selected_TextColor);--fdElementIconColor:var(--sapButton_Reject_Selected_TextColor)}.fd-button--negative.fd-button--toggled.is-active .fd-button__icon,.fd-button--negative.fd-button--toggled.is-selected .fd-button__icon,.fd-button--negative.fd-button--toggled:active .fd-button__icon,.fd-button--negative.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Reject_Active_TextColor);text-shadow:none}.fd-button--negative.fd-button--toggled.is-disabled,.fd-button--negative.fd-button--toggled:disabled,.fd-button--negative.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--positive{--fdButtonColor:var(--sapButton_Accept_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--positive.is-selected,.fd-button--positive[aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Background)}.fd-button--positive.is-hover,.fd-button--positive:hover{--fdButtonColor:var(--sapButton_Accept_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Hover_Background);box-shadow:var(--fdButton_Positive_Hover_Shadow)}.fd-button--positive.is-active,.fd-button--positive:active{--fdButtonColor:var(--sapButton_Accept_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Active_Background);--fdElementTextColor:var(--sapButton_Accept_Active_TextColor);--fdElementIconColor:var(--sapButton_Accept_Active_TextColor)}.fd-button--positive.is-active .fd-button__icon,.fd-button--positive:active .fd-button__icon{color:var(--sapButton_Accept_Active_TextColor);text-shadow:none}.fd-button--positive.is-disabled,.fd-button--positive:disabled,.fd-button--positive[aria-disabled=true]{--fdButtonColor:var(--sapButton_Accept_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Background)}.fd-button--positive.fd-button--toggled,.fd-button--positive.is-disabled.is-selected,.fd-button--positive.is-disabled[aria-selected=true],.fd-button--positive:disabled.is-selected,.fd-button--positive:disabled[aria-selected=true],.fd-button--positive[aria-disabled=true].is-selected,.fd-button--positive[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Background)}.fd-button--positive.fd-button--toggled.is-active,.fd-button--positive.fd-button--toggled.is-hover,.fd-button--positive.fd-button--toggled.is-selected,.fd-button--positive.fd-button--toggled:active,.fd-button--positive.fd-button--toggled:hover,.fd-button--positive.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Hover_Background);box-shadow:var(--fdButton_Positive_Hover_Shadow)}.fd-button--positive.fd-button--toggled.is-active,.fd-button--positive.fd-button--toggled.is-selected,.fd-button--positive.fd-button--toggled:active,.fd-button--positive.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Accept_Selected_TextColor);--fdElementIconColor:var(--sapButton_Accept_Selected_TextColor)}.fd-button--positive.fd-button--toggled.is-active .fd-button__icon,.fd-button--positive.fd-button--toggled.is-selected .fd-button__icon,.fd-button--positive.fd-button--toggled:active .fd-button__icon,.fd-button--positive.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Accept_Active_TextColor);text-shadow:none}.fd-button--positive.fd-button--toggled.is-disabled,.fd-button--positive.fd-button--toggled:disabled,.fd-button--positive.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--transparent{--fdButtonColor:var(--sapButton_Lite_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--transparent.is-selected,.fd-button--transparent[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--transparent.is-hover,.fd-button--transparent:hover{--fdButtonColor:var(--sapButton_Lite_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--transparent.is-active,.fd-button--transparent:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button--transparent.is-active .fd-button__icon,.fd-button--transparent:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--transparent.is-disabled,.fd-button--transparent:disabled,.fd-button--transparent[aria-disabled=true]{--fdButtonColor:var(--sapButton_Lite_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Background)}.fd-button--transparent.fd-button--toggled,.fd-button--transparent.is-disabled.is-selected,.fd-button--transparent.is-disabled[aria-selected=true],.fd-button--transparent:disabled.is-selected,.fd-button--transparent:disabled[aria-selected=true],.fd-button--transparent[aria-disabled=true].is-selected,.fd-button--transparent[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--transparent.fd-button--toggled.is-active,.fd-button--transparent.fd-button--toggled.is-hover,.fd-button--transparent.fd-button--toggled.is-selected,.fd-button--transparent.fd-button--toggled:active,.fd-button--transparent.fd-button--toggled:hover,.fd-button--transparent.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--transparent.fd-button--toggled.is-active,.fd-button--transparent.fd-button--toggled.is-selected,.fd-button--transparent.fd-button--toggled:active,.fd-button--transparent.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--transparent.fd-button--toggled.is-active .fd-button__icon,.fd-button--transparent.fd-button--toggled.is-selected .fd-button__icon,.fd-button--transparent.fd-button--toggled:active .fd-button__icon,.fd-button--transparent.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--transparent.fd-button--toggled.is-disabled,.fd-button--transparent.fd-button--toggled:disabled,.fd-button--transparent.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-input{-webkit-box-sizing:border-box;-webkit-box-shadow:none;-webkit-appearance:none;appearance:none;background:var(--sapField_BackgroundStyle, var(--sapField_BackgroundStyle));background-color:var(--sapField_Background, var(--sapField_Background));border:0;border:var(--sapField_BorderWidth) var(--sapField_BorderStyle) var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);box-shadow:none;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);cursor:text;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2.25rem;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdInput_Field_Margin, .25rem 0);min-height:2.25rem;min-width:var(2.75rem, 2.75rem);outline:none;overflow:hidden;padding:0;padding:var(--fdInput_Field_Padding, 0 .625rem);text-overflow:ellipsis;text-shadow:var(--fdInput_Text_Shadow);white-space:nowrap;width:100%;z-index:1}.fd-input:after,.fd-input:before{box-sizing:inherit;font-size:inherit}.fd-input::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:var(--fdPlaceholder_Font_Style)}.fd-input[dir=rtl]::placeholder,[dir=rtl] .fd-input::placeholder{text-indent:.125rem}.fd-input::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-input::-ms-clear{display:none}.fd-input.is-hover,.fd-input:hover{-webkit-box-shadow:var(--fdInput_Box_Shadow_Hover);background:var(--sapField_Hover_BackgroundStyle, var(--sapField_Hover_BackgroundStyle));background-color:var(--sapField_Hover_Background, var(--sapField_Hover_Background));border-color:var(--sapField_Hover_BorderColor);box-shadow:var(--fdInput_Box_Shadow_Hover)}.fd-input.is-focus,.fd-input:focus{-webkit-box-shadow:none;background:var(--sapField_Focus_Background, var(--sapField_Focus_Background));box-shadow:none;outline-color:var(--fdInput_Outline_Color);outline-offset:var(--fdInput_Outline_Offset);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-input[type=search]::-webkit-search-cancel-button,.fd-input[type=search]::-webkit-search-decoration,.fd-input[type=search]::-webkit-search-results-button,.fd-input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}.fd-input[aria-expanded=false]{z-index:0}.fd-input.is-expanded,.fd-input[aria-expanded=true]{z-index:4}.fd-input[class*=-compact],.fd-input[class*=-condensed],[class*=-compact] .fd-input:not([class*=-cozy]),[class*=-condensed] .fd-input:not([class*=-cozy]){box-sizing:border-box;height:1.625rem;margin:var(--fdInput_Field_Compact_Margin, .1875rem 0);min-height:1.625rem;min-width:var(--fdInput_Field_Compact_Min_Width, 2rem);padding:var(--fdInput_Field_Compact_Padding, 0 .5rem)}.fd-input--no-number-spinner{-moz-appearance:textfield}.fd-input--no-number-spinner::-webkit-inner-spin-button,.fd-input--no-number-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fd-input.right-align{text-align:right}.fd-input.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-input.is-success.is-hover,.fd-input.is-success:hover{-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-input.is-success.is-focus,.fd-input.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-input.is-success.is-focus.is-hover,.fd-input.is-success.is-focus:hover,.fd-input.is-success:focus.is-hover,.fd-input.is-success:focus:hover{box-shadow:none}.fd-input.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-input.is-error.is-hover,.fd-input.is-error:hover{-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-input.is-error.is-focus,.fd-input.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-input.is-error.is-focus.is-hover,.fd-input.is-error.is-focus:hover,.fd-input.is-error:focus.is-hover,.fd-input.is-error:focus:hover{box-shadow:none}.fd-input.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input.is-warning.is-hover,.fd-input.is-warning:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input.is-warning.is-focus.is-hover,.fd-input.is-warning.is-focus:hover,.fd-input.is-warning:focus.is-hover,.fd-input.is-warning:focus:hover{box-shadow:none}.fd-input.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input.is-alert.is-hover,.fd-input.is-alert:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input.is-alert.is-focus.is-hover,.fd-input.is-alert.is-focus:hover,.fd-input.is-alert:focus.is-hover,.fd-input.is-alert:focus:hover{box-shadow:none}.fd-input.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-input.is-information.is-hover,.fd-input.is-information:hover{-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-input.is-information.is-focus,.fd-input.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-input.is-information.is-focus.is-hover,.fd-input.is-information.is-focus:hover,.fd-input.is-information:focus.is-hover,.fd-input.is-information:focus:hover{box-shadow:none}.fd-input.is-alert,.fd-input.is-error,.fd-input.is-warning{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-input.is-alert::placeholder,.fd-input.is-error::placeholder,.fd-input.is-warning::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus,.fd-input.is-error.is-focus,.fd-input.is-error:focus,.fd-input.is-information.is-focus,.fd-input.is-information:focus,.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-input.is-error::placeholder{color:var(--sapField_TextColor)}.fd-input.is-disabled,.fd-input:disabled,.fd-input[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-input.is-disabled::placeholder,.fd-input:disabled::placeholder,.fd-input[aria-disabled=true]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input.is-readonly,.fd-input[aria-readonly=true],.fd-input[readonly]{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius)}.fd-input.is-readonly::placeholder,.fd-input[aria-readonly=true]::placeholder,.fd-input[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input.is-readonly.is-hover,.fd-input.is-readonly:hover,.fd-input[aria-readonly=true].is-hover,.fd-input[aria-readonly=true]:hover,.fd-input[readonly].is-hover,.fd-input[readonly]:hover{-webkit-box-shadow:none;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);box-shadow:none}.fd-input.is-readonly.is-focus,.fd-input.is-readonly:focus,.fd-input[aria-readonly=true].is-focus,.fd-input[aria-readonly=true]:focus,.fd-input[readonly].is-focus,.fd-input[readonly]:focus{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);z-index:5}/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-input-group+(--inline, --control)\n .fd-input-group__addon+(--button)\n*/.fd-input-group{-webkit-box-sizing:border-box;-webkit-box-shadow:none;-webkit-appearance:none;appearance:none;background:var(--fdInputGroup_Background, var(--sapField_BackgroundStyle));background-color:var(--fdInputGroup_Background_Color, var(--sapField_Background));border:0;border:var(--sapField_BorderWidth) var(--sapField_BorderStyle) var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);box-shadow:none;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);cursor:text;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:auto;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdInput_Field_Margin, .25rem 0);min-width:var(2.75rem, 2.75rem);outline:none;overflow:hidden;padding:0;text-overflow:ellipsis;text-shadow:var(--fdInput_Text_Shadow);white-space:nowrap;width:100%;z-index:1}.fd-input-group:after,.fd-input-group:before{box-sizing:inherit;font-size:inherit}.fd-input-group::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:var(--fdPlaceholder_Font_Style)}.fd-input-group[dir=rtl]::placeholder,[dir=rtl] .fd-input-group::placeholder{text-indent:.125rem}.fd-input-group::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-input-group::-ms-clear{display:none}.fd-input-group.is-hover,.fd-input-group:hover{-webkit-box-shadow:var(--fdInput_Box_Shadow_Hover);background:var(--fdInputGroup_Hover_Background, var(--sapField_Hover_BackgroundStyle));background-color:var(--fdInputGroup_Hover_Background_Color, var(--sapField_Hover_Background));border-color:var(--sapField_Hover_BorderColor);box-shadow:var(--fdInput_Box_Shadow_Hover)}.fd-input-group.is-focus,.fd-input-group:focus{-webkit-box-shadow:none;background:var(--sapField_Focus_Background, var(--sapField_Focus_Background));box-shadow:none;outline-color:var(--fdInput_Outline_Color);outline-offset:var(--fdInput_Outline_Offset);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-input-group.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-input-group.is-success.is-hover,.fd-input-group.is-success:hover{-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-input-group.is-success.is-focus,.fd-input-group.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-input-group.is-success.is-focus.is-hover,.fd-input-group.is-success.is-focus:hover,.fd-input-group.is-success:focus.is-hover,.fd-input-group.is-success:focus:hover{box-shadow:none}.fd-input-group.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-input-group.is-error.is-hover,.fd-input-group.is-error:hover{-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-input-group.is-error.is-focus,.fd-input-group.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-input-group.is-error.is-focus.is-hover,.fd-input-group.is-error.is-focus:hover,.fd-input-group.is-error:focus.is-hover,.fd-input-group.is-error:focus:hover{box-shadow:none}.fd-input-group.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input-group.is-warning.is-hover,.fd-input-group.is-warning:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input-group.is-warning.is-focus,.fd-input-group.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input-group.is-warning.is-focus.is-hover,.fd-input-group.is-warning.is-focus:hover,.fd-input-group.is-warning:focus.is-hover,.fd-input-group.is-warning:focus:hover{box-shadow:none}.fd-input-group.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input-group.is-alert.is-hover,.fd-input-group.is-alert:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input-group.is-alert.is-focus,.fd-input-group.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input-group.is-alert.is-focus.is-hover,.fd-input-group.is-alert.is-focus:hover,.fd-input-group.is-alert:focus.is-hover,.fd-input-group.is-alert:focus:hover{box-shadow:none}.fd-input-group.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-input-group.is-information.is-hover,.fd-input-group.is-information:hover{-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-input-group.is-information.is-focus,.fd-input-group.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-input-group.is-information.is-focus.is-hover,.fd-input-group.is-information.is-focus:hover,.fd-input-group.is-information:focus.is-hover,.fd-input-group.is-information:focus:hover{box-shadow:none}.fd-input-group.is-alert,.fd-input-group.is-error,.fd-input-group.is-warning{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-input-group.is-alert::placeholder,.fd-input-group.is-error::placeholder,.fd-input-group.is-warning::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-input-group.is-alert.is-focus,.fd-input-group.is-alert:focus,.fd-input-group.is-error.is-focus,.fd-input-group.is-error:focus,.fd-input-group.is-information.is-focus,.fd-input-group.is-information:focus,.fd-input-group.is-warning.is-focus,.fd-input-group.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-input-group.is-error::placeholder{color:var(--sapField_TextColor)}.fd-input-group.is-disabled,.fd-input-group:disabled,.fd-input-group[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-input-group.is-disabled::placeholder,.fd-input-group:disabled::placeholder,.fd-input-group[aria-disabled=true]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input-group.is-readonly,.fd-input-group[aria-readonly=true],.fd-input-group[readonly]{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius)}.fd-input-group.is-readonly::placeholder,.fd-input-group[aria-readonly=true]::placeholder,.fd-input-group[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input-group.is-readonly.is-hover,.fd-input-group.is-readonly:hover,.fd-input-group[aria-readonly=true].is-hover,.fd-input-group[aria-readonly=true]:hover,.fd-input-group[readonly].is-hover,.fd-input-group[readonly]:hover{-webkit-box-shadow:none;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);box-shadow:none}.fd-input-group.is-readonly.is-focus,.fd-input-group.is-readonly:focus,.fd-input-group[aria-readonly=true].is-focus,.fd-input-group[aria-readonly=true]:focus,.fd-input-group[readonly].is-focus,.fd-input-group[readonly]:focus{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);z-index:5}.fd-input-group .fd-input-group__button:first-child{border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:first-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child{border-left:var(--fdInputGroup_ControlButton_SideBorder);border-right-style:none}.fd-input-group .fd-input-group__button:first-child.is-hover,.fd-input-group .fd-input-group__button:first-child:hover{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:first-child.is-hover[dir=rtl],.fd-input-group .fd-input-group__button:first-child:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child.is-hover,[dir=rtl] .fd-input-group .fd-input-group__button:first-child:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__button:first-child.is-active,.fd-input-group .fd-input-group__button:first-child:active{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:first-child.is-active[dir=rtl],.fd-input-group .fd-input-group__button:first-child:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child.is-active,[dir=rtl] .fd-input-group .fd-input-group__button:first-child:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__button:not(:first-child){border-left:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:not(:first-child)[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child){border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:not(:first-child).is-hover,.fd-input-group .fd-input-group__button:not(:first-child):hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-hover[dir=rtl],.fd-input-group .fd-input-group__button:not(:first-child):hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child).is-hover,[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child):hover{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-active,.fd-input-group .fd-input-group__button:not(:first-child):active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-active[dir=rtl],.fd-input-group .fd-input-group__button:not(:first-child):active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child).is-active,[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child):active{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button{border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button{border-left:var(--fdInputGroup_ControlButton_SideBorder);border-right-style:none}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover[dir=rtl],.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover,[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active,.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active[dir=rtl],.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active,[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button{border-left:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover[dir=rtl],.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover,[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active,.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active[dir=rtl],.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active,[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button{background:var(--fdInput_Group_Button_Background);border:none;border-radius:var(--fdInput_Group_Button_Border_Raduis);color:var(--fdInput_Group_Button_Text_Color);overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;z-index:auto!important}.fd-input-group .fd-input-group__button:before{display:none!important}.fd-input-group .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__button:hover{--fdInput_Group_Button_Text_Color:var(--fdInput_Group_Button_Hover_Text_Color);-webkit-box-shadow:var(--fdInput_Group_Button_Box_Shadow);background:var(--fdInput_Group_Button_Hover_Background);box-shadow:var(--fdInput_Group_Button_Box_Shadow)}.fd-input-group .fd-input-group__button.is-active,.fd-input-group .fd-input-group__button:active{-webkit-box-shadow:var(--fdInput_Group_Button_Box_Shadow);background:var(--fdInput_Group_Button_Active_Background);box-shadow:var(--fdInput_Group_Button_Box_Shadow);color:var(--fdInput_Group_Button_Active_Text_Color)}.fd-input-group.is-success .fd-input-group__button.is-active,.fd-input-group.is-success .fd-input-group__button.is-hover,.fd-input-group.is-success .fd-input-group__button:active,.fd-input-group.is-success .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Success_Active_Box_Shadow)}.fd-input-group.is-success .fd-input-group__button.is-active,.fd-input-group.is-success .fd-input-group__button:active{color:var(--fdInput_Group_Button_Success_Active_Text_Color)}.fd-input-group.is-error .fd-input-group__button.is-active,.fd-input-group.is-error .fd-input-group__button.is-hover,.fd-input-group.is-error .fd-input-group__button:active,.fd-input-group.is-error .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Error_Active_Box_Shadow)}.fd-input-group.is-error .fd-input-group__button.is-active,.fd-input-group.is-error .fd-input-group__button:active{color:var(--fdInput_Group_Button_Error_Active_Text_Color)}.fd-input-group.is-warning .fd-input-group__button.is-active,.fd-input-group.is-warning .fd-input-group__button.is-hover,.fd-input-group.is-warning .fd-input-group__button:active,.fd-input-group.is-warning .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Warning_Active_Box_Shadow)}.fd-input-group.is-warning .fd-input-group__button.is-active,.fd-input-group.is-warning .fd-input-group__button:active{color:var(--fdInput_Group_Button_Warning_Active_Text_Color)}.fd-input-group.is-alert .fd-input-group__button.is-active,.fd-input-group.is-alert .fd-input-group__button.is-hover,.fd-input-group.is-alert .fd-input-group__button:active,.fd-input-group.is-alert .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Warning_Active_Box_Shadow)}.fd-input-group.is-alert .fd-input-group__button.is-active,.fd-input-group.is-alert .fd-input-group__button:active{color:var(--fdInput_Group_Button_Warning_Active_Text_Color)}.fd-input-group.is-information .fd-input-group__button.is-active,.fd-input-group.is-information .fd-input-group__button.is-hover,.fd-input-group.is-information .fd-input-group__button:active,.fd-input-group.is-information .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Information_Active_Box_Shadow)}.fd-input-group.is-information .fd-input-group__button.is-active,.fd-input-group.is-information .fd-input-group__button:active{color:var(--fdInput_Group_Button_Information_Active_Text_Color)}.fd-input-group .fd-input-group__input{-webkit-box-flex:1;-ms-flex:1 1 10rem;background:none;background-color:var(--fdInputGroup_Input_Background, transparent);border:var(--fdInputGroup_Input_Border, none);color:var(--fdInputGroup_Input_Color, inherit);flex:1 1 10rem;padding-left:.25rem;padding-right:.25rem;text-shadow:var(--fdInputGroup_Text_Shadow)}.fd-input-group .fd-input-group__input:nth-child(n+1){margin:0}.fd-input-group .fd-input-group__input::placeholder{color:var(--fdInputGroup_Input_Placeholder_Color, var(--sapField_PlaceholderTextColor));font-style:var(--fdInputGroup_Input_Placeholder_Style, italic)}.fd-input-group .fd-input-group__input.is-hover,.fd-input-group .fd-input-group__input:hover{-webkit-box-shadow:none;background:none;background-color:var(--fdInputGroup_Hover_Input_Background, transparent);box-shadow:none}.fd-input-group .fd-input-group__input.is-focus,.fd-input-group .fd-input-group__input:focus{-webkit-box-shadow:none;background:var(--fdInputGroup_Input_Background, none);border-radius:0;box-shadow:none;outline:none;z-index:5}.fd-input-group .fd-input-group__input:first-child{padding-left:.625rem}.fd-input-group .fd-input-group__input:first-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__input:first-child{padding-left:0;padding-right:.625rem}.fd-input-group .fd-input-group__input:last-child{padding-right:.625rem}.fd-input-group .fd-input-group__input:last-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__input:last-child{padding-left:.625rem;padding-right:.25rem}.fd-input-group--inline{display:inline-flex;vertical-align:bottom;width:auto}.fd-input-group__addon{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fdInputGroup_Addon_Background, none);border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-height:var(--fdInput_Group_Addon_Height, 2.25rem);min-width:var(--fdInput_Group_Addon_Width, 2.25rem);overflow:hidden;padding:0 .625rem;text-overflow:ellipsis;white-space:nowrap}.fd-input-group__addon:after,.fd-input-group__addon:before{box-sizing:inherit;font-size:inherit}.fd-input-group__addon span[class*=sap-icon--]:before{font-size:var(--sapFontLargeSize)}.fd-input-group__addon--readonly{opacity:.4}.fd-input-group__addon--button{overflow:visible;padding:0}.fd-input-group--control[aria-expanded=true]{margin-bottom:0}.fd-input-group[class*=-compact],.fd-input-group[class*=-condensed],[class*=-compact] .fd-input-group:not([class*=-cozy]),[class*=-condensed] .fd-input-group:not([class*=-cozy]){--fdInput_Field_Margin:.1875rem 0;--fdInput_Field_Compact_Margin:0;--fdInput_Group_Addon_Width:2rem;--fdInput_Group_Addon_Height:1.625rem}.fd-input-group .fd-textarea{resize:vertical}.fd-input-group .is-disabled,.fd-input-group :disabled,.fd-input-group [aria-disabled=true]{opacity:1}.fd-input-group.is-readonly,.fd-input-group[readonly]{overflow:visible}.fd-input-group .fd-tokenizer,.fd-input-group .fd-tokenizer.is-focus,.fd-input-group .fd-tokenizer.is-hover,.fd-input-group .fd-tokenizer:focus,.fd-input-group .fd-tokenizer:hover{-webkit-box-shadow:none;background:none;background-color:var(transparent, transparent);box-shadow:none}.fd-input-group .fd-tokenizer.is-focus,.fd-input-group .fd-tokenizer:focus{outline:none;z-index:5}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0}.fdp-search-field input[type=text]::-ms-clear{display:none;width:0;height:0}.fdp-search-field input[type=text]::-ms-reveal{display:none;width:0;height:0}.fdp-search-field input[type=search]::-webkit-search-decoration,.fdp-search-field input[type=search]::-webkit-search-cancel-button,.fdp-search-field input[type=search]::-webkit-search-results-button,.fdp-search-field input[type=search]::-webkit-search-results-decoration{display:none}.fdp-search-field .fdp-search-field__input-group button.fd-input-group__button{border-width:0}.fdp-search-field .fdp-search-field__input:hover{background:transparent}.fdp-search-field__suggestion-dropdown .fd-menu--overflow{top:0;max-width:none;min-height:10rem;max-height:100%;position:absolute;background-color:var(--sapList_Background)}.fdp-search-field__suggestion-dropdown .fd-menu__list,.fdp-search-field__suggestion-dropdown .fd-menu__item{max-width:none}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i5.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i5.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i5.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(function () { return i6.DefaultValueAccessor; }), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(function () { return i6.NgControlStatus; }), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(function () { return i6.NgModel; }), selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i0.forwardRef(function () { return i7.Dir; }), selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "component", type: i0.forwardRef(function () { return i8.IconComponent; }), selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i0.forwardRef(function () { return i9.MenuComponent; }), selector: "fdp-menu", inputs: ["id", "openByArrowKeys", "xPosition"], outputs: ["close"] }, { kind: "component", type: i0.forwardRef(function () { return i9.MenuItemComponent; }), selector: "fdp-menu-item", inputs: ["disabled", "cascadeDirection"], outputs: ["itemSelect"] }, { kind: "directive", type: i0.forwardRef(function () { return i9.MenuTriggerDirective; }), selector: "[fdpMenuTriggerFor]", inputs: ["fdpMenuTriggerFor"] }, { kind: "component", type: i0.forwardRef(function () { return i10.SelectComponent; }), selector: "fd-select", inputs: ["controlId", "state", "mobile", "stateMessage", "disabled", "required", "readonly", "placeholder", "value", "extendedBodyTemplate", "maxHeight", "glyph", "closeOnOutsideClick", "fillControlMode", "controlTemplate", "appendTo", "unselectMissingOption", "typeaheadDebounceInterval", "ariaLabelledBy", "ariaLabel", "mobileConfig", "inline", "selectControlClass", "selectDropdownButtonClass", "compareWith"], outputs: ["isOpenChange", "valueChange"] }, { kind: "component", type: i0.forwardRef(function () { return i10.OptionComponent; }), selector: "[fd-option], fd-option", inputs: ["id", "value", "disabled"], outputs: ["selectionChange"] }, { kind: "directive", type: i0.forwardRef(function () { return SearchFieldSuggestionDirective; }), selector: "[fdpSearchFieldSuggestion]" }, { kind: "pipe", type: i0.forwardRef(function () { return i5.AsyncPipe; }), name: "async" }, { kind: "pipe", type: i0.forwardRef(function () { return i2.SearchHighlightPipe; }), name: "highlight" }, { kind: "pipe", type: i0.forwardRef(function () { return i11.FdTranslatePipe; }), name: "fdTranslate" }, { kind: "pipe", type: i0.forwardRef(function () { return SuggestionMatchesPipe; }), name: "suggestionMatches" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
490
489
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SearchFieldComponent, decorators: [{
|
|
491
490
|
type: Component,
|
|
492
491
|
args: [{ selector: 'fdp-search-field', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
|
|
@@ -495,7 +494,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
495
494
|
provide: FD_SHELLBAR_SEARCH_COMPONENT,
|
|
496
495
|
useExisting: SearchFieldComponent
|
|
497
496
|
}
|
|
498
|
-
], template: "<ng-container *ngTemplateOutlet=\"mobile ? mobileTemplate : inputFieldTemplate\"></ng-container>\n\n<ng-template #mobileTemplate>\n <ng-container *ngTemplateOutlet=\"inputFieldTemplate\"></ng-container>\n</ng-template>\n\n<ng-template #searchCategoryMenu>\n <button\n class=\"fdp-search-field__category-button fd-input-group__button fd-button fd-button--menu {{\n appearance?.categoryButtonClass\n }}\"\n [fdpMenuTriggerFor]=\"categoryMenu\"\n >\n <span class=\"fdp-search-field__category-label\" *ngIf=\"!hideCategoryLabel\">\n {{ _currentCategory?.label || categoryLabel }}\n </span>\n </button>\n <fdp-menu #categoryMenu>\n <fdp-menu-item *ngFor=\"let category of categories\" (itemSelect)=\"setCurrentCategory(category)\"\n >{{ category.label }}\n </fdp-menu-item>\n </fdp-menu>\n</ng-template>\n\n<ng-template #searchCategorySelect>\n <fd-select\n [placeholder]=\"categoryLabel\"\n [selectControlClass]=\"appearance?.categoryButtonClass\"\n [selectDropdownButtonClass]=\"appearance?.categoryDropdownButtonClass\"\n (valueChange)=\"setCurrentCategory($event)\"\n >\n <li fd-option *ngFor=\"let category of categories\" [value]=\"category\">{{ category.label }}</li>\n </fd-select>\n</ng-template>\n\n<ng-template #inputFieldTemplate>\n <div\n class=\"fdp-search-field\"\n [class.with-categories]=\"_showCategoryDropdown\"\n [class.is-loading]=\"isLoading\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n [class.hide-category-label]=\"hideCategoryLabel\"\n >\n <div\n #inputGroup\n class=\"fdp-search-field__input-group fd-input-group {{ appearance?.searchClass }}\"\n [class.is-focus]=\"isFocused\"\n >\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.searchCategoryClass }}\"\n *ngIf=\"_showCategoryDropdown\"\n >\n <ng-template\n *ngTemplateOutlet=\"categoryMode === 'select' ? searchCategorySelect : searchCategoryMenu\"\n ></ng-template>\n </span>\n <input\n #inputField\n type=\"search\"\n [attr.placeholder]=\"placeholder\"\n class=\"fdp-search-field__input fd-input fd-input-group__input {{ appearance?.searchFieldClass }}\"\n [attr.id]=\"_inputId\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-controls]=\"_menuId\"\n [attr.aria-expanded]=\"\n (_dropdownValues$ | async)?.length !== 0 ? (_showDropdown ? 'true' : 'false') : null\n \"\n [attr.aria-haspopup]=\"(_dropdownValues$ | async)?.length !== 0\"\n autocomplete=\"off\"\n (keydown)=\"onKeydown($event)\"\n (keydown.enter)=\"onSearchSubmit($event)\"\n [(ngModel)]=\"inputText\"\n (ngModelChange)=\"onValueChange($event)\"\n (click)=\"mobile && openMobileMode()\"\n />\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }}\"\n *ngIf=\"inputText && inputText.length > 0\"\n >\n <button\n [title]=\"'platformSearchField.clearButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__clear fd-button fd-button--transparent {{ appearance?.buttonClass }}\"\n [class.fd-input-group__button]=\"!appearance?.removeGroupButtonClass\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.id]=\"_clearId\"\n (click)=\"clearTextInput()\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </span>\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }} {{\n appearance?.searchSubmitClass\n }}\"\n *ngIf=\"forceSearchButton || isLoading || (!isLoading && !_isSearchDone)\"\n >\n <button\n *ngIf=\"!disableSearch\"\n [title]=\"'platformSearchField.submitButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__submit fd-button fd-button--transparent {{ appearance?.buttonClass }}\"\n [class.fd-input-group__button]=\"!appearance?.removeGroupButtonClass\"\n [attr.id]=\"_submitId\"\n [attr.disabled]=\"disabled ? '' : null\"\n (click)=\"onSearchSubmit()\"\n >\n <fd-icon glyph=\"search\"></fd-icon>\n </button>\n </span>\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }} {{\n appearance?.searchSubmitClass\n }}\"\n *ngIf=\"!disableRefresh && !isLoading && (_isRefresh || _isSearchDone)\"\n >\n <button\n [title]=\"'platformSearchField.synchronizeButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__loading fd-input-group__button fd-button fd-button--transparent {{\n appearance?.buttonClass\n }}\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.id]=\"_refreshId\"\n (click)=\"onSearchSubmit()\"\n >\n <fd-icon glyph=\"synchronize\"></fd-icon>\n </button>\n </span>\n </div>\n </div>\n</ng-template>\n\n<ng-template #suggestionMenuTemplate>\n <ng-container *ngIf=\"_dropdownValues$ | async | suggestionMatches : inputText : mobile as suggestions\">\n <div class=\"fdp-search-field__suggestion-dropdown\" [attr.dir]=\"_dir\" *ngIf=\"suggestions?.length\">\n <nav\n class=\"fd-menu\"\n tabindex=\"-1\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n [class.fd-menu--mobile]=\"mobile\"\n [class.fd-menu--overflow]=\"!mobile\"\n [attr.id]=\"_menuId\"\n #menu\n (keydown)=\"onKeydown($event)\"\n >\n <ul class=\"fd-menu__list\" role=\"menu\">\n <li\n fdpSearchFieldSuggestion\n class=\"fdp-search-field__suggestion-item fd-menu__item fd-menu__link\"\n *ngFor=\"let value of suggestions\"\n (keydown.enter)=\"onItemClick(value); $event.preventDefault()\"\n (keydown.tab)=\"onItemClick(value)\"\n (keyup.space)=\"onItemClick(value); $event.stopPropagation()\"\n (click)=\"onItemClick(value)\"\n [innerHTML]=\"value | highlight : inputText : true : true\"\n role=\"menuitem\"\n ></li>\n </ul>\n </nav>\n </div>\n </ng-container>\n</ng-template>\n", styles: [".fd-button{--fdButton_Height:2.25rem;--fdButton_Clickable_Height:2.75rem;--fdButton_Padding_X:.625rem;--fdButton_Min_Width:2.25rem;-webkit-box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Background);align-items:center;appearance:none;background-color:transparent;background-color:var(--fdButtonBackgroundColor);background-image:none;border:0;border-color:var(--fdButtonBorderColor);border-radius:var(--sapButton_BorderCornerRadius);border-style:solid;border-width:var(--sapButton_BorderWidth);box-sizing:border-box;color:var(--sapTextColor);color:var(--fdButtonColor);cursor:pointer;display:inline-block;display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdButton_Height);justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;max-height:var(--fdButton_Height);min-width:var(--fdButton_Min_Width);outline:0;padding:0;padding-left:calc(var(--fdButton_Padding_X) - var(--sapButton_BorderWidth));padding-right:calc(var(--fdButton_Padding_X) - var(--sapButton_BorderWidth));position:relative;text-align:center;text-decoration:none;text-shadow:var(--fdButton_Text_Shadow);user-select:none;vertical-align:middle;white-space:nowrap}.fd-button:after,.fd-button:before{box-sizing:inherit;font-size:inherit}.fd-button::-moz-focus-inner{border:0}.fd-button:before{bottom:calc((var(--fdButton_Clickable_Height) - var(--fdButton_Height)) * .5);content:\"\";display:block;height:auto;left:0;position:absolute;right:0;top:calc((var(--fdButton_Clickable_Height) - var(--fdButton_Height)) * .5);width:100%}.fd-button__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:inherit;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;font-weight:inherit;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-button__text:after,.fd-button__text:before{box-sizing:inherit;font-size:inherit}.fd-button,.fd-button__text{font-family:var(--fdButton_Font_Family)}.fd-button :not(:first-child):not(.fd-button__badge){margin-left:.375rem}.fd-button :not(:first-child):not(.fd-button__badge)[dir=rtl],[dir=rtl] .fd-button :not(:first-child):not(.fd-button__badge){margin-left:0;margin-right:.375rem}.fd-button>[class*=sap-icon]{color:inherit;font-size:1rem;font-style:normal;height:1rem;line-height:1rem;min-width:1rem;vertical-align:text-bottom;width:1rem}.fd-button>[class*=sap-icon]:after,.fd-button>[class*=sap-icon]:before{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.fd-button__badge{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:var(--sapContent_BadgeBackground);border:0;border:.0625rem solid var(--fdButton_Badge_Border_Color);border-radius:.5rem;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_BadgeTextColor);display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;height:1rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;margin-left:var(--fdButton_Badge_Margin_Left, 0);padding:0 .3125rem;position:var(--fdButton_Badge_Position, absolute);right:-.25rem;top:-.25rem;z-index:1}.fd-button__badge:after,.fd-button__badge:before{box-sizing:inherit;font-size:inherit}.fd-button__badge[dir=rtl],[dir=rtl] .fd-button__badge{left:-.25rem;margin-left:0;margin-right:var(--fdButton_Badge_Margin_Left, 0);right:auto}.fd-button[class*=-compact],.fd-button[class*=-condensed],[class*=-compact] .fd-button:not([class*=-cozy]),[class*=-condensed] .fd-button:not([class*=-cozy]){--fdButton_Height:1.625rem;--fdButton_Clickable_Height:2rem;--fdButton_Padding_X:.5rem;--fdButton_Min_Width:2rem;--fdButton_Badge_Position:static;--fdButton_Badge_Margin_Left:.25rem}.fd-button--menu{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-button--menu-fixed-width{justify-content:space-between}.fd-button--menu .fd-button__text{line-height:1rem}.fd-button--full-width{-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center;min-width:100%;width:100%}.fd-button--text-alignment-left{justify-content:flex-start;text-align:left}.fd-button--text-alignment-right{justify-content:flex-end;text-align:right}.fd-button--decisive{min-width:4rem}.fd-button__instructions{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.fd-button.is-focus,.fd-button:focus{box-shadow:none;outline:none;z-index:5}.fd-button.is-focus:after,.fd-button:focus:after{border:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);border-radius:calc(var(--sapButton_BorderCornerRadius) - var(--sapContent_FocusWidth));bottom:var(--fdButton_Outline_Offset);content:\"\";display:block;left:var(--fdButton_Outline_Offset);position:absolute;right:var(--fdButton_Outline_Offset);top:var(--fdButton_Outline_Offset)}.fd-button.is-focus.fd-button--toggled:after,.fd-button.is-focus.is-selected:after,.fd-button:focus.fd-button--toggled:after,.fd-button:focus.is-selected:after{border-color:var(--fdButton_Outline_Contrast)}.fd-button.is-active,.fd-button.is-selected,.fd-button:active,.fd-button[aria-selected=true]{box-shadow:none;outline:none}.fd-button.is-disabled,.fd-button:disabled,.fd-button[aria-disabled=true]{box-shadow:none;cursor:not-allowed;opacity:var(--sapContent_DisabledOpacity)}.fd-button.is-selected,.fd-button[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button.is-hover,.fd-button:hover{--fdButtonColor:var(--sapButton_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button.is-active,.fd-button:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button.is-active .fd-button__icon,.fd-button:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button.is-disabled,.fd-button:disabled,.fd-button[aria-disabled=true]{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Background)}.fd-button.fd-button--toggled,.fd-button.is-disabled.is-selected,.fd-button.is-disabled[aria-selected=true],.fd-button:disabled.is-selected,.fd-button:disabled[aria-selected=true],.fd-button[aria-disabled=true].is-selected,.fd-button[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button.fd-button--toggled.is-active,.fd-button.fd-button--toggled.is-hover,.fd-button.fd-button--toggled.is-selected,.fd-button.fd-button--toggled:active,.fd-button.fd-button--toggled:hover,.fd-button.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button.fd-button--toggled.is-active,.fd-button.fd-button--toggled.is-selected,.fd-button.fd-button--toggled:active,.fd-button.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button.fd-button--toggled.is-active .fd-button__icon,.fd-button.fd-button--toggled.is-selected .fd-button__icon,.fd-button.fd-button--toggled:active .fd-button__icon,.fd-button.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button.fd-button--toggled.is-disabled,.fd-button.fd-button--toggled:disabled,.fd-button.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--attention{--fdButtonColor:var(--sapButton_Attention_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--attention.is-selected,.fd-button--attention[aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Background)}.fd-button--attention.is-hover,.fd-button--attention:hover{--fdButtonColor:var(--sapButton_Attention_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Hover_Background);box-shadow:var(--fdButton_Attention_Hover_Shadow)}.fd-button--attention.is-active,.fd-button--attention:active{--fdButtonColor:var(--sapButton_Attention_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Active_Background);--fdElementTextColor:var(--sapButton_Attention_Active_TextColor);--fdElementIconColor:var(--sapButton_Attention_Active_TextColor)}.fd-button--attention.is-active .fd-button__icon,.fd-button--attention:active .fd-button__icon{color:var(--sapButton_Attention_Active_TextColor);text-shadow:none}.fd-button--attention.is-disabled,.fd-button--attention:disabled,.fd-button--attention[aria-disabled=true]{--fdButtonColor:var(--sapButton_Attention_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Background)}.fd-button--attention.fd-button--toggled,.fd-button--attention.is-disabled.is-selected,.fd-button--attention.is-disabled[aria-selected=true],.fd-button--attention:disabled.is-selected,.fd-button--attention:disabled[aria-selected=true],.fd-button--attention[aria-disabled=true].is-selected,.fd-button--attention[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Background)}.fd-button--attention.fd-button--toggled.is-active,.fd-button--attention.fd-button--toggled.is-hover,.fd-button--attention.fd-button--toggled.is-selected,.fd-button--attention.fd-button--toggled:active,.fd-button--attention.fd-button--toggled:hover,.fd-button--attention.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Hover_Background);box-shadow:var(--fdButton_Attention_Hover_Shadow)}.fd-button--attention.fd-button--toggled.is-active,.fd-button--attention.fd-button--toggled.is-selected,.fd-button--attention.fd-button--toggled:active,.fd-button--attention.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Attention_Selected_TextColor);--fdElementIconColor:var(--sapButton_Attention_Selected_TextColor)}.fd-button--attention.fd-button--toggled.is-active .fd-button__icon,.fd-button--attention.fd-button--toggled.is-selected .fd-button__icon,.fd-button--attention.fd-button--toggled:active .fd-button__icon,.fd-button--attention.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Attention_Active_TextColor);text-shadow:none}.fd-button--attention.fd-button--toggled.is-disabled,.fd-button--attention.fd-button--toggled:disabled,.fd-button--attention.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--emphasized{--fdButtonColor:var(--sapButton_Emphasized_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);border-width:var(--fdButton_Emphasized_Border_Width);color:var(--fdButtonColor);font-weight:var(--sapButton_Emphasized_FontWeight)}.fd-button--emphasized.is-selected,.fd-button--emphasized[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--emphasized.is-hover,.fd-button--emphasized:hover{--fdButtonColor:var(--sapButton_Emphasized_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Hover_Background);box-shadow:none}.fd-button--emphasized.is-active,.fd-button--emphasized:active{--fdButtonColor:var(--sapButton_Emphasized_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Active_Background);--fdElementTextColor:var(--sapButton_Emphasized_Active_TextColor);--fdElementIconColor:var(--sapButton_Emphasized_Active_TextColor)}.fd-button--emphasized.is-active .fd-button__icon,.fd-button--emphasized:active .fd-button__icon{color:var(--sapButton_Emphasized_Active_TextColor);text-shadow:none}.fd-button--emphasized.is-disabled,.fd-button--emphasized:disabled,.fd-button--emphasized[aria-disabled=true]{--fdButtonColor:var(--sapButton_Emphasized_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Background)}.fd-button--emphasized.fd-button--toggled,.fd-button--emphasized.is-disabled.is-selected,.fd-button--emphasized.is-disabled[aria-selected=true],.fd-button--emphasized:disabled.is-selected,.fd-button--emphasized:disabled[aria-selected=true],.fd-button--emphasized[aria-disabled=true].is-selected,.fd-button--emphasized[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-hover,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled:hover,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--emphasized.fd-button--toggled.is-active .fd-button__icon,.fd-button--emphasized.fd-button--toggled.is-selected .fd-button__icon,.fd-button--emphasized.fd-button--toggled:active .fd-button__icon,.fd-button--emphasized.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Emphasized_Active_TextColor);text-shadow:none}.fd-button--emphasized.fd-button--toggled.is-disabled,.fd-button--emphasized.fd-button--toggled:disabled,.fd-button--emphasized.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--emphasized.is-focus,.fd-button--emphasized:focus{z-index:5}.fd-button--emphasized.is-focus:after,.fd-button--emphasized:focus:after{border-color:var(--sapContent_ContrastFocusColor)}.fd-button--emphasized.is-active,.fd-button--emphasized.is-selected,.fd-button--emphasized:active,.fd-button--emphasized[aria-selected=true]{outline:none}.fd-button--emphasized.fd-button--toggled.is-focus,.fd-button--emphasized.fd-button--toggled:focus{outline-color:var(--fdButton_Emphasized_Active_Outline);z-index:5}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{outline:none}.fd-button--ghost{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--fdButton_Ghost_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--ghost.is-selected,.fd-button--ghost[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--ghost.is-hover,.fd-button--ghost:hover{--fdButtonColor:var(--sapButton_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--ghost.is-active,.fd-button--ghost:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button--ghost.is-active .fd-button__icon,.fd-button--ghost:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--ghost.is-disabled,.fd-button--ghost:disabled,.fd-button--ghost[aria-disabled=true]{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--fdButton_Ghost_Background)}.fd-button--ghost.fd-button--toggled,.fd-button--ghost.is-disabled.is-selected,.fd-button--ghost.is-disabled[aria-selected=true],.fd-button--ghost:disabled.is-selected,.fd-button--ghost:disabled[aria-selected=true],.fd-button--ghost[aria-disabled=true].is-selected,.fd-button--ghost[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--ghost.fd-button--toggled.is-active,.fd-button--ghost.fd-button--toggled.is-hover,.fd-button--ghost.fd-button--toggled.is-selected,.fd-button--ghost.fd-button--toggled:active,.fd-button--ghost.fd-button--toggled:hover,.fd-button--ghost.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--ghost.fd-button--toggled.is-active,.fd-button--ghost.fd-button--toggled.is-selected,.fd-button--ghost.fd-button--toggled:active,.fd-button--ghost.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--ghost.fd-button--toggled.is-active .fd-button__icon,.fd-button--ghost.fd-button--toggled.is-selected .fd-button__icon,.fd-button--ghost.fd-button--toggled:active .fd-button__icon,.fd-button--ghost.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--ghost.fd-button--toggled.is-disabled,.fd-button--ghost.fd-button--toggled:disabled,.fd-button--ghost.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--negative{--fdButtonColor:var(--sapButton_Reject_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--negative.is-selected,.fd-button--negative[aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Background)}.fd-button--negative.is-hover,.fd-button--negative:hover{--fdButtonColor:var(--sapButton_Reject_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Hover_Background);box-shadow:var(--fdButton_Negative_Hover_Shadow)}.fd-button--negative.is-active,.fd-button--negative:active{--fdButtonColor:var(--sapButton_Reject_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Active_Background);--fdElementTextColor:var(--sapButton_Reject_Active_TextColor);--fdElementIconColor:var(--sapButton_Reject_Active_TextColor)}.fd-button--negative.is-active .fd-button__icon,.fd-button--negative:active .fd-button__icon{color:var(--sapButton_Reject_Active_TextColor);text-shadow:none}.fd-button--negative.is-disabled,.fd-button--negative:disabled,.fd-button--negative[aria-disabled=true]{--fdButtonColor:var(--sapButton_Reject_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Background)}.fd-button--negative.fd-button--toggled,.fd-button--negative.is-disabled.is-selected,.fd-button--negative.is-disabled[aria-selected=true],.fd-button--negative:disabled.is-selected,.fd-button--negative:disabled[aria-selected=true],.fd-button--negative[aria-disabled=true].is-selected,.fd-button--negative[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Background)}.fd-button--negative.fd-button--toggled.is-active,.fd-button--negative.fd-button--toggled.is-hover,.fd-button--negative.fd-button--toggled.is-selected,.fd-button--negative.fd-button--toggled:active,.fd-button--negative.fd-button--toggled:hover,.fd-button--negative.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Hover_Background);box-shadow:var(--fdButton_Negative_Hover_Shadow)}.fd-button--negative.fd-button--toggled.is-active,.fd-button--negative.fd-button--toggled.is-selected,.fd-button--negative.fd-button--toggled:active,.fd-button--negative.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Reject_Selected_TextColor);--fdElementIconColor:var(--sapButton_Reject_Selected_TextColor)}.fd-button--negative.fd-button--toggled.is-active .fd-button__icon,.fd-button--negative.fd-button--toggled.is-selected .fd-button__icon,.fd-button--negative.fd-button--toggled:active .fd-button__icon,.fd-button--negative.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Reject_Active_TextColor);text-shadow:none}.fd-button--negative.fd-button--toggled.is-disabled,.fd-button--negative.fd-button--toggled:disabled,.fd-button--negative.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--positive{--fdButtonColor:var(--sapButton_Accept_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--positive.is-selected,.fd-button--positive[aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Background)}.fd-button--positive.is-hover,.fd-button--positive:hover{--fdButtonColor:var(--sapButton_Accept_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Hover_Background);box-shadow:var(--fdButton_Positive_Hover_Shadow)}.fd-button--positive.is-active,.fd-button--positive:active{--fdButtonColor:var(--sapButton_Accept_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Active_Background);--fdElementTextColor:var(--sapButton_Accept_Active_TextColor);--fdElementIconColor:var(--sapButton_Accept_Active_TextColor)}.fd-button--positive.is-active .fd-button__icon,.fd-button--positive:active .fd-button__icon{color:var(--sapButton_Accept_Active_TextColor);text-shadow:none}.fd-button--positive.is-disabled,.fd-button--positive:disabled,.fd-button--positive[aria-disabled=true]{--fdButtonColor:var(--sapButton_Accept_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Background)}.fd-button--positive.fd-button--toggled,.fd-button--positive.is-disabled.is-selected,.fd-button--positive.is-disabled[aria-selected=true],.fd-button--positive:disabled.is-selected,.fd-button--positive:disabled[aria-selected=true],.fd-button--positive[aria-disabled=true].is-selected,.fd-button--positive[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Background)}.fd-button--positive.fd-button--toggled.is-active,.fd-button--positive.fd-button--toggled.is-hover,.fd-button--positive.fd-button--toggled.is-selected,.fd-button--positive.fd-button--toggled:active,.fd-button--positive.fd-button--toggled:hover,.fd-button--positive.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Hover_Background);box-shadow:var(--fdButton_Positive_Hover_Shadow)}.fd-button--positive.fd-button--toggled.is-active,.fd-button--positive.fd-button--toggled.is-selected,.fd-button--positive.fd-button--toggled:active,.fd-button--positive.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Accept_Selected_TextColor);--fdElementIconColor:var(--sapButton_Accept_Selected_TextColor)}.fd-button--positive.fd-button--toggled.is-active .fd-button__icon,.fd-button--positive.fd-button--toggled.is-selected .fd-button__icon,.fd-button--positive.fd-button--toggled:active .fd-button__icon,.fd-button--positive.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Accept_Active_TextColor);text-shadow:none}.fd-button--positive.fd-button--toggled.is-disabled,.fd-button--positive.fd-button--toggled:disabled,.fd-button--positive.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--transparent{--fdButtonColor:var(--sapButton_Lite_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--transparent.is-selected,.fd-button--transparent[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--transparent.is-hover,.fd-button--transparent:hover{--fdButtonColor:var(--sapButton_Lite_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--transparent.is-active,.fd-button--transparent:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button--transparent.is-active .fd-button__icon,.fd-button--transparent:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--transparent.is-disabled,.fd-button--transparent:disabled,.fd-button--transparent[aria-disabled=true]{--fdButtonColor:var(--sapButton_Lite_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Background)}.fd-button--transparent.fd-button--toggled,.fd-button--transparent.is-disabled.is-selected,.fd-button--transparent.is-disabled[aria-selected=true],.fd-button--transparent:disabled.is-selected,.fd-button--transparent:disabled[aria-selected=true],.fd-button--transparent[aria-disabled=true].is-selected,.fd-button--transparent[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--transparent.fd-button--toggled.is-active,.fd-button--transparent.fd-button--toggled.is-hover,.fd-button--transparent.fd-button--toggled.is-selected,.fd-button--transparent.fd-button--toggled:active,.fd-button--transparent.fd-button--toggled:hover,.fd-button--transparent.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--transparent.fd-button--toggled.is-active,.fd-button--transparent.fd-button--toggled.is-selected,.fd-button--transparent.fd-button--toggled:active,.fd-button--transparent.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--transparent.fd-button--toggled.is-active .fd-button__icon,.fd-button--transparent.fd-button--toggled.is-selected .fd-button__icon,.fd-button--transparent.fd-button--toggled:active .fd-button__icon,.fd-button--transparent.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--transparent.fd-button--toggled.is-disabled,.fd-button--transparent.fd-button--toggled:disabled,.fd-button--transparent.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-input{-webkit-box-sizing:border-box;-webkit-box-shadow:none;-webkit-appearance:none;appearance:none;background:var(--sapField_BackgroundStyle, var(--sapField_BackgroundStyle));background-color:var(--sapField_Background, var(--sapField_Background));border:0;border:var(--sapField_BorderWidth) var(--sapField_BorderStyle) var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);box-shadow:none;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);cursor:text;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2.25rem;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdInput_Field_Margin, .25rem 0);min-height:2.25rem;min-width:var(2.75rem, 2.75rem);outline:none;overflow:hidden;padding:0;padding:var(--fdInput_Field_Padding, 0 .625rem);text-overflow:ellipsis;text-shadow:var(--fdInput_Text_Shadow);white-space:nowrap;width:100%;z-index:1}.fd-input:after,.fd-input:before{box-sizing:inherit;font-size:inherit}.fd-input::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:var(--fdPlaceholder_Font_Style)}.fd-input[dir=rtl]::placeholder,[dir=rtl] .fd-input::placeholder{text-indent:.125rem}.fd-input::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-input::-ms-clear{display:none}.fd-input.is-hover,.fd-input:hover{-webkit-box-shadow:var(--fdInput_Box_Shadow_Hover);background:var(--sapField_Hover_BackgroundStyle, var(--sapField_Hover_BackgroundStyle));background-color:var(--sapField_Hover_Background, var(--sapField_Hover_Background));border-color:var(--sapField_Hover_BorderColor);box-shadow:var(--fdInput_Box_Shadow_Hover)}.fd-input.is-focus,.fd-input:focus{-webkit-box-shadow:none;background:var(--sapField_Focus_Background, var(--sapField_Focus_Background));box-shadow:none;outline-color:var(--fdInput_Outline_Color);outline-offset:var(--fdInput_Outline_Offset);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-input[type=search]::-webkit-search-cancel-button,.fd-input[type=search]::-webkit-search-decoration,.fd-input[type=search]::-webkit-search-results-button,.fd-input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}.fd-input[aria-expanded=false]{z-index:0}.fd-input.is-expanded,.fd-input[aria-expanded=true]{z-index:4}.fd-input[class*=-compact],.fd-input[class*=-condensed],[class*=-compact] .fd-input:not([class*=-cozy]),[class*=-condensed] .fd-input:not([class*=-cozy]){box-sizing:border-box;height:1.625rem;margin:var(--fdInput_Field_Compact_Margin, .1875rem 0);min-height:1.625rem;min-width:var(--fdInput_Field_Compact_Min_Width, 2rem);padding:var(--fdInput_Field_Compact_Padding, 0 .5rem)}.fd-input--no-number-spinner{-moz-appearance:textfield}.fd-input--no-number-spinner::-webkit-inner-spin-button,.fd-input--no-number-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fd-input.right-align{text-align:right}.fd-input.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-input.is-success.is-hover,.fd-input.is-success:hover{-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-input.is-success.is-focus,.fd-input.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-input.is-success.is-focus.is-hover,.fd-input.is-success.is-focus:hover,.fd-input.is-success:focus.is-hover,.fd-input.is-success:focus:hover{box-shadow:none}.fd-input.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-input.is-error.is-hover,.fd-input.is-error:hover{-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-input.is-error.is-focus,.fd-input.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-input.is-error.is-focus.is-hover,.fd-input.is-error.is-focus:hover,.fd-input.is-error:focus.is-hover,.fd-input.is-error:focus:hover{box-shadow:none}.fd-input.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input.is-warning.is-hover,.fd-input.is-warning:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input.is-warning.is-focus.is-hover,.fd-input.is-warning.is-focus:hover,.fd-input.is-warning:focus.is-hover,.fd-input.is-warning:focus:hover{box-shadow:none}.fd-input.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input.is-alert.is-hover,.fd-input.is-alert:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input.is-alert.is-focus.is-hover,.fd-input.is-alert.is-focus:hover,.fd-input.is-alert:focus.is-hover,.fd-input.is-alert:focus:hover{box-shadow:none}.fd-input.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-input.is-information.is-hover,.fd-input.is-information:hover{-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-input.is-information.is-focus,.fd-input.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-input.is-information.is-focus.is-hover,.fd-input.is-information.is-focus:hover,.fd-input.is-information:focus.is-hover,.fd-input.is-information:focus:hover{box-shadow:none}.fd-input.is-alert,.fd-input.is-error,.fd-input.is-warning{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-input.is-alert::placeholder,.fd-input.is-error::placeholder,.fd-input.is-warning::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus,.fd-input.is-error.is-focus,.fd-input.is-error:focus,.fd-input.is-information.is-focus,.fd-input.is-information:focus,.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-input.is-error::placeholder{color:var(--sapField_TextColor)}.fd-input.is-disabled,.fd-input:disabled,.fd-input[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-input.is-disabled::placeholder,.fd-input:disabled::placeholder,.fd-input[aria-disabled=true]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input.is-readonly,.fd-input[aria-readonly=true],.fd-input[readonly]{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius)}.fd-input.is-readonly::placeholder,.fd-input[aria-readonly=true]::placeholder,.fd-input[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input.is-readonly.is-hover,.fd-input.is-readonly:hover,.fd-input[aria-readonly=true].is-hover,.fd-input[aria-readonly=true]:hover,.fd-input[readonly].is-hover,.fd-input[readonly]:hover{-webkit-box-shadow:none;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);box-shadow:none}.fd-input.is-readonly.is-focus,.fd-input.is-readonly:focus,.fd-input[aria-readonly=true].is-focus,.fd-input[aria-readonly=true]:focus,.fd-input[readonly].is-focus,.fd-input[readonly]:focus{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);z-index:5}/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-input-group+(--inline, --control)\n .fd-input-group__addon+(--button)\n*/.fd-input-group{-webkit-box-sizing:border-box;-webkit-box-shadow:none;-webkit-appearance:none;appearance:none;background:var(--fdInputGroup_Background, var(--sapField_BackgroundStyle));background-color:var(--fdInputGroup_Background_Color, var(--sapField_Background));border:0;border:var(--sapField_BorderWidth) var(--sapField_BorderStyle) var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);box-shadow:none;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);cursor:text;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:auto;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdInput_Field_Margin, .25rem 0);min-width:var(2.75rem, 2.75rem);outline:none;overflow:hidden;padding:0;text-overflow:ellipsis;text-shadow:var(--fdInput_Text_Shadow);white-space:nowrap;width:100%;z-index:1}.fd-input-group:after,.fd-input-group:before{box-sizing:inherit;font-size:inherit}.fd-input-group::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:var(--fdPlaceholder_Font_Style)}.fd-input-group[dir=rtl]::placeholder,[dir=rtl] .fd-input-group::placeholder{text-indent:.125rem}.fd-input-group::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-input-group::-ms-clear{display:none}.fd-input-group.is-hover,.fd-input-group:hover{-webkit-box-shadow:var(--fdInput_Box_Shadow_Hover);background:var(--fdInputGroup_Hover_Background, var(--sapField_Hover_BackgroundStyle));background-color:var(--fdInputGroup_Hover_Background_Color, var(--sapField_Hover_Background));border-color:var(--sapField_Hover_BorderColor);box-shadow:var(--fdInput_Box_Shadow_Hover)}.fd-input-group.is-focus,.fd-input-group:focus{-webkit-box-shadow:none;background:var(--sapField_Focus_Background, var(--sapField_Focus_Background));box-shadow:none;outline-color:var(--fdInput_Outline_Color);outline-offset:var(--fdInput_Outline_Offset);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-input-group.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-input-group.is-success.is-hover,.fd-input-group.is-success:hover{-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-input-group.is-success.is-focus,.fd-input-group.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-input-group.is-success.is-focus.is-hover,.fd-input-group.is-success.is-focus:hover,.fd-input-group.is-success:focus.is-hover,.fd-input-group.is-success:focus:hover{box-shadow:none}.fd-input-group.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-input-group.is-error.is-hover,.fd-input-group.is-error:hover{-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-input-group.is-error.is-focus,.fd-input-group.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-input-group.is-error.is-focus.is-hover,.fd-input-group.is-error.is-focus:hover,.fd-input-group.is-error:focus.is-hover,.fd-input-group.is-error:focus:hover{box-shadow:none}.fd-input-group.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input-group.is-warning.is-hover,.fd-input-group.is-warning:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input-group.is-warning.is-focus,.fd-input-group.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input-group.is-warning.is-focus.is-hover,.fd-input-group.is-warning.is-focus:hover,.fd-input-group.is-warning:focus.is-hover,.fd-input-group.is-warning:focus:hover{box-shadow:none}.fd-input-group.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input-group.is-alert.is-hover,.fd-input-group.is-alert:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input-group.is-alert.is-focus,.fd-input-group.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input-group.is-alert.is-focus.is-hover,.fd-input-group.is-alert.is-focus:hover,.fd-input-group.is-alert:focus.is-hover,.fd-input-group.is-alert:focus:hover{box-shadow:none}.fd-input-group.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-input-group.is-information.is-hover,.fd-input-group.is-information:hover{-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-input-group.is-information.is-focus,.fd-input-group.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-input-group.is-information.is-focus.is-hover,.fd-input-group.is-information.is-focus:hover,.fd-input-group.is-information:focus.is-hover,.fd-input-group.is-information:focus:hover{box-shadow:none}.fd-input-group.is-alert,.fd-input-group.is-error,.fd-input-group.is-warning{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-input-group.is-alert::placeholder,.fd-input-group.is-error::placeholder,.fd-input-group.is-warning::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-input-group.is-alert.is-focus,.fd-input-group.is-alert:focus,.fd-input-group.is-error.is-focus,.fd-input-group.is-error:focus,.fd-input-group.is-information.is-focus,.fd-input-group.is-information:focus,.fd-input-group.is-warning.is-focus,.fd-input-group.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-input-group.is-error::placeholder{color:var(--sapField_TextColor)}.fd-input-group.is-disabled,.fd-input-group:disabled,.fd-input-group[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-input-group.is-disabled::placeholder,.fd-input-group:disabled::placeholder,.fd-input-group[aria-disabled=true]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input-group.is-readonly,.fd-input-group[aria-readonly=true],.fd-input-group[readonly]{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius)}.fd-input-group.is-readonly::placeholder,.fd-input-group[aria-readonly=true]::placeholder,.fd-input-group[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input-group.is-readonly.is-hover,.fd-input-group.is-readonly:hover,.fd-input-group[aria-readonly=true].is-hover,.fd-input-group[aria-readonly=true]:hover,.fd-input-group[readonly].is-hover,.fd-input-group[readonly]:hover{-webkit-box-shadow:none;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);box-shadow:none}.fd-input-group.is-readonly.is-focus,.fd-input-group.is-readonly:focus,.fd-input-group[aria-readonly=true].is-focus,.fd-input-group[aria-readonly=true]:focus,.fd-input-group[readonly].is-focus,.fd-input-group[readonly]:focus{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);z-index:5}.fd-input-group .fd-input-group__button:first-child{border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:first-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child{border-left:var(--fdInputGroup_ControlButton_SideBorder);border-right-style:none}.fd-input-group .fd-input-group__button:first-child.is-hover,.fd-input-group .fd-input-group__button:first-child:hover{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:first-child.is-hover[dir=rtl],.fd-input-group .fd-input-group__button:first-child:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child.is-hover,[dir=rtl] .fd-input-group .fd-input-group__button:first-child:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__button:first-child.is-active,.fd-input-group .fd-input-group__button:first-child:active{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:first-child.is-active[dir=rtl],.fd-input-group .fd-input-group__button:first-child:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child.is-active,[dir=rtl] .fd-input-group .fd-input-group__button:first-child:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__button:not(:first-child){border-left:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:not(:first-child)[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child){border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:not(:first-child).is-hover,.fd-input-group .fd-input-group__button:not(:first-child):hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-hover[dir=rtl],.fd-input-group .fd-input-group__button:not(:first-child):hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child).is-hover,[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child):hover{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-active,.fd-input-group .fd-input-group__button:not(:first-child):active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-active[dir=rtl],.fd-input-group .fd-input-group__button:not(:first-child):active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child).is-active,[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child):active{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button{border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button{border-left:var(--fdInputGroup_ControlButton_SideBorder);border-right-style:none}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover[dir=rtl],.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover,[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active,.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active[dir=rtl],.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active,[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button{border-left:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover[dir=rtl],.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover,[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active,.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active[dir=rtl],.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active,[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button{background:var(--fdInput_Group_Button_Background);border:none;border-radius:var(--fdInput_Group_Button_Border_Raduis);color:var(--fdInput_Group_Button_Text_Color);overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;z-index:auto!important}.fd-input-group .fd-input-group__button:before{display:none!important}.fd-input-group .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__button:hover{--fdInput_Group_Button_Text_Color:var(--fdInput_Group_Button_Hover_Text_Color);-webkit-box-shadow:var(--fdInput_Group_Button_Box_Shadow);background:var(--fdInput_Group_Button_Hover_Background);box-shadow:var(--fdInput_Group_Button_Box_Shadow)}.fd-input-group .fd-input-group__button.is-active,.fd-input-group .fd-input-group__button:active{-webkit-box-shadow:var(--fdInput_Group_Button_Box_Shadow);background:var(--fdInput_Group_Button_Active_Background);box-shadow:var(--fdInput_Group_Button_Box_Shadow);color:var(--fdInput_Group_Button_Active_Text_Color)}.fd-input-group.is-success .fd-input-group__button.is-active,.fd-input-group.is-success .fd-input-group__button.is-hover,.fd-input-group.is-success .fd-input-group__button:active,.fd-input-group.is-success .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Success_Active_Box_Shadow)}.fd-input-group.is-success .fd-input-group__button.is-active,.fd-input-group.is-success .fd-input-group__button:active{color:var(--fdInput_Group_Button_Success_Active_Text_Color)}.fd-input-group.is-error .fd-input-group__button.is-active,.fd-input-group.is-error .fd-input-group__button.is-hover,.fd-input-group.is-error .fd-input-group__button:active,.fd-input-group.is-error .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Error_Active_Box_Shadow)}.fd-input-group.is-error .fd-input-group__button.is-active,.fd-input-group.is-error .fd-input-group__button:active{color:var(--fdInput_Group_Button_Error_Active_Text_Color)}.fd-input-group.is-warning .fd-input-group__button.is-active,.fd-input-group.is-warning .fd-input-group__button.is-hover,.fd-input-group.is-warning .fd-input-group__button:active,.fd-input-group.is-warning .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Warning_Active_Box_Shadow)}.fd-input-group.is-warning .fd-input-group__button.is-active,.fd-input-group.is-warning .fd-input-group__button:active{color:var(--fdInput_Group_Button_Warning_Active_Text_Color)}.fd-input-group.is-alert .fd-input-group__button.is-active,.fd-input-group.is-alert .fd-input-group__button.is-hover,.fd-input-group.is-alert .fd-input-group__button:active,.fd-input-group.is-alert .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Warning_Active_Box_Shadow)}.fd-input-group.is-alert .fd-input-group__button.is-active,.fd-input-group.is-alert .fd-input-group__button:active{color:var(--fdInput_Group_Button_Warning_Active_Text_Color)}.fd-input-group.is-information .fd-input-group__button.is-active,.fd-input-group.is-information .fd-input-group__button.is-hover,.fd-input-group.is-information .fd-input-group__button:active,.fd-input-group.is-information .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Information_Active_Box_Shadow)}.fd-input-group.is-information .fd-input-group__button.is-active,.fd-input-group.is-information .fd-input-group__button:active{color:var(--fdInput_Group_Button_Information_Active_Text_Color)}.fd-input-group .fd-input-group__input{-webkit-box-flex:1;-ms-flex:1 1 10rem;background:none;background-color:var(--fdInputGroup_Input_Background, transparent);border:var(--fdInputGroup_Input_Border, none);color:var(--fdInputGroup_Input_Color, inherit);flex:1 1 10rem;padding-left:.25rem;padding-right:.25rem;text-shadow:var(--fdInputGroup_Text_Shadow)}.fd-input-group .fd-input-group__input:nth-child(n+1){margin:0}.fd-input-group .fd-input-group__input::placeholder{color:var(--fdInputGroup_Input_Placeholder_Color, var(--sapField_PlaceholderTextColor));font-style:var(--fdInputGroup_Input_Placeholder_Style, italic)}.fd-input-group .fd-input-group__input.is-hover,.fd-input-group .fd-input-group__input:hover{-webkit-box-shadow:none;background:none;background-color:var(--fdInputGroup_Hover_Input_Background, transparent);box-shadow:none}.fd-input-group .fd-input-group__input.is-focus,.fd-input-group .fd-input-group__input:focus{-webkit-box-shadow:none;background:var(--fdInputGroup_Input_Background, none);border-radius:0;box-shadow:none;outline:none;z-index:5}.fd-input-group .fd-input-group__input:first-child{padding-left:.625rem}.fd-input-group .fd-input-group__input:first-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__input:first-child{padding-left:0;padding-right:.625rem}.fd-input-group .fd-input-group__input:last-child{padding-right:.625rem}.fd-input-group .fd-input-group__input:last-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__input:last-child{padding-left:.625rem;padding-right:.25rem}.fd-input-group--inline{display:inline-flex;vertical-align:bottom;width:auto}.fd-input-group__addon{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fdInputGroup_Addon_Background, none);border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-height:var(--fdInput_Group_Addon_Height, 2.25rem);min-width:var(--fdInput_Group_Addon_Width, 2.25rem);overflow:hidden;padding:0 .625rem;text-overflow:ellipsis;white-space:nowrap}.fd-input-group__addon:after,.fd-input-group__addon:before{box-sizing:inherit;font-size:inherit}.fd-input-group__addon span[class*=sap-icon--]:before{font-size:var(--sapFontLargeSize)}.fd-input-group__addon--readonly{opacity:.4}.fd-input-group__addon--button{overflow:visible;padding:0}.fd-input-group--control[aria-expanded=true]{margin-bottom:0}.fd-input-group[class*=-compact],.fd-input-group[class*=-condensed],[class*=-compact] .fd-input-group:not([class*=-cozy]),[class*=-condensed] .fd-input-group:not([class*=-cozy]){--fdInput_Field_Margin:.1875rem 0;--fdInput_Field_Compact_Margin:0;--fdInput_Group_Addon_Width:2rem;--fdInput_Group_Addon_Height:1.625rem}.fd-input-group .fd-textarea{resize:vertical}.fd-input-group .is-disabled,.fd-input-group :disabled,.fd-input-group [aria-disabled=true]{opacity:1}.fd-input-group.is-readonly,.fd-input-group[readonly]{overflow:visible}.fd-input-group .fd-tokenizer,.fd-input-group .fd-tokenizer.is-focus,.fd-input-group .fd-tokenizer.is-hover,.fd-input-group .fd-tokenizer:focus,.fd-input-group .fd-tokenizer:hover{-webkit-box-shadow:none;background:none;background-color:var(transparent, transparent);box-shadow:none}.fd-input-group .fd-tokenizer.is-focus,.fd-input-group .fd-tokenizer:focus{outline:none;z-index:5}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0}.fdp-search-field input[type=text]::-ms-clear{display:none;width:0;height:0}.fdp-search-field input[type=text]::-ms-reveal{display:none;width:0;height:0}.fdp-search-field input[type=search]::-webkit-search-decoration,.fdp-search-field input[type=search]::-webkit-search-cancel-button,.fdp-search-field input[type=search]::-webkit-search-results-button,.fdp-search-field input[type=search]::-webkit-search-results-decoration{display:none}.fdp-search-field .fdp-search-field__input-group button.fd-input-group__button{border-width:0}.fdp-search-field .fdp-search-field__input:hover{background:transparent}.fdp-search-field__suggestion-dropdown .fd-menu--overflow{top:0;max-width:none;min-height:10rem;max-height:100%;position:absolute;background-color:var(--sapList_Background)}.fdp-search-field__suggestion-dropdown .fd-menu__list,.fdp-search-field__suggestion-dropdown .fd-menu__item{max-width:none}\n"] }]
|
|
497
|
+
], template: "<ng-container *ngTemplateOutlet=\"mobile ? mobileTemplate : inputFieldTemplate\"></ng-container>\n\n<ng-template #mobileTemplate>\n <ng-container *ngTemplateOutlet=\"inputFieldTemplate\"></ng-container>\n</ng-template>\n\n<ng-template #searchCategoryMenu>\n <button\n class=\"fdp-search-field__category-button fd-input-group__button fd-button fd-button--menu {{\n appearance?.categoryButtonClass\n }}\"\n [fdpMenuTriggerFor]=\"categoryMenu\"\n >\n <span class=\"fdp-search-field__category-label\" *ngIf=\"!hideCategoryLabel\">\n {{ _currentCategory?.label || categoryLabel }}\n </span>\n </button>\n <fdp-menu #categoryMenu>\n <fdp-menu-item *ngFor=\"let category of categories\" (itemSelect)=\"setCurrentCategory(category)\"\n >{{ category.label }}\n </fdp-menu-item>\n </fdp-menu>\n</ng-template>\n\n<ng-template #searchCategorySelect>\n <fd-select\n [placeholder]=\"categoryLabel\"\n [selectControlClass]=\"appearance?.categoryButtonClass\"\n [selectDropdownButtonClass]=\"appearance?.categoryDropdownButtonClass\"\n (valueChange)=\"setCurrentCategory($event)\"\n >\n <li fd-option *ngFor=\"let category of categories\" [value]=\"category\">{{ category.label }}</li>\n </fd-select>\n</ng-template>\n\n<ng-template #inputFieldTemplate>\n <div\n class=\"fdp-search-field\"\n [class.with-categories]=\"_showCategoryDropdown\"\n [class.is-loading]=\"isLoading\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n [class.hide-category-label]=\"hideCategoryLabel\"\n >\n <div\n #inputGroup\n class=\"fdp-search-field__input-group fd-input-group {{ appearance?.searchClass }}\"\n [class.is-focus]=\"isFocused\"\n >\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.searchCategoryClass }}\"\n *ngIf=\"_showCategoryDropdown\"\n >\n <ng-template\n *ngTemplateOutlet=\"categoryMode === 'select' ? searchCategorySelect : searchCategoryMenu\"\n ></ng-template>\n </span>\n <input\n #inputField\n type=\"search\"\n [attr.placeholder]=\"placeholder\"\n class=\"fdp-search-field__input fd-input fd-input-group__input {{ appearance?.searchFieldClass }}\"\n [attr.id]=\"_inputId\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.aria-label]=\"ariaLabel || 'platformSearchField.searchInputLabel' | fdTranslate\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-controls]=\"_menuId\"\n [attr.aria-expanded]=\"\n (_dropdownValues$ | async)?.length !== 0 ? (_showDropdown ? 'true' : 'false') : null\n \"\n [attr.aria-haspopup]=\"(_dropdownValues$ | async)?.length !== 0\"\n autocomplete=\"off\"\n (keydown)=\"onKeydown($event)\"\n (keydown.enter)=\"onSearchSubmit($event)\"\n [(ngModel)]=\"inputText\"\n (ngModelChange)=\"onValueChange($event)\"\n (click)=\"mobile && openMobileMode()\"\n />\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }}\"\n *ngIf=\"inputText && inputText.length > 0\"\n >\n <button\n [attr.aria-hidden]=\"!mobile\"\n [attr.aria-label]=\"'platformSearchField.clearButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__clear fd-button fd-button--transparent {{ appearance?.buttonClass }}\"\n [class.fd-input-group__button]=\"!appearance?.removeGroupButtonClass\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.id]=\"_clearId\"\n (click)=\"clearTextInput()\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </span>\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }} {{\n appearance?.searchSubmitClass\n }}\"\n *ngIf=\"forceSearchButton || isLoading || (!isLoading && !_isSearchDone)\"\n >\n <button\n [attr.aria-hidden]=\"!mobile\"\n *ngIf=\"!disableSearch\"\n [attr.aria-label]=\"'platformSearchField.submitButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__submit fd-button fd-button--transparent {{ appearance?.buttonClass }}\"\n [class.fd-input-group__button]=\"!appearance?.removeGroupButtonClass\"\n [attr.id]=\"_submitId\"\n [attr.disabled]=\"disabled ? '' : null\"\n (click)=\"onSearchSubmit()\"\n >\n <fd-icon glyph=\"search\"></fd-icon>\n </button>\n </span>\n <span\n class=\"fd-input-group__addon fd-input-group__addon--button {{ appearance?.addonClass }} {{\n appearance?.searchSubmitClass\n }}\"\n *ngIf=\"!disableRefresh && !isLoading && (_isRefresh || _isSearchDone)\"\n >\n <button\n [attr.aria-hidden]=\"!mobile\"\n [attr.aria-label]=\"'platformSearchField.synchronizeButtonTitle' | fdTranslate\"\n class=\"fdp-search-field__loading fd-input-group__button fd-button fd-button--transparent {{\n appearance?.buttonClass\n }}\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.id]=\"_refreshId\"\n (click)=\"onSearchSubmit()\"\n >\n <fd-icon glyph=\"synchronize\"></fd-icon>\n </button>\n </span>\n </div>\n </div>\n</ng-template>\n\n<ng-template #suggestionMenuTemplate>\n <ng-container *ngIf=\"_dropdownValues$ | async | suggestionMatches : inputText : mobile as suggestions\">\n <div class=\"fdp-search-field__suggestion-dropdown\" [attr.dir]=\"_dir\" *ngIf=\"suggestions?.length\">\n <nav\n class=\"fd-menu\"\n tabindex=\"-1\"\n [class.is-compact]=\"contentDensityObserver.isCompact$ | async\"\n [class.fd-menu--mobile]=\"mobile\"\n [class.fd-menu--overflow]=\"!mobile\"\n [attr.id]=\"_menuId\"\n #menu\n (keydown)=\"onKeydown($event)\"\n >\n <ul class=\"fd-menu__list\" role=\"menu\">\n <li\n fdpSearchFieldSuggestion\n class=\"fdp-search-field__suggestion-item fd-menu__item fd-menu__link\"\n *ngFor=\"let value of suggestions\"\n (keydown.enter)=\"onItemClick(value); $event.preventDefault()\"\n (keydown.tab)=\"onItemClick(value)\"\n (keyup.space)=\"onItemClick(value); $event.stopPropagation()\"\n (click)=\"onItemClick(value)\"\n [innerHTML]=\"value | highlight : inputText : true : true\"\n role=\"menuitem\"\n ></li>\n </ul>\n </nav>\n </div>\n </ng-container>\n</ng-template>\n", styles: [".fd-button{--fdButton_Height:2.25rem;--fdButton_Clickable_Height:2.75rem;--fdButton_Padding_X:.625rem;--fdButton_Min_Width:2.25rem;-webkit-box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Background);align-items:center;appearance:none;background-color:transparent;background-color:var(--fdButtonBackgroundColor);background-image:none;border:0;border-color:var(--fdButtonBorderColor);border-radius:var(--sapButton_BorderCornerRadius);border-style:solid;border-width:var(--sapButton_BorderWidth);box-sizing:border-box;color:var(--sapTextColor);color:var(--fdButtonColor);cursor:pointer;display:inline-block;display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdButton_Height);justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;max-height:var(--fdButton_Height);min-width:var(--fdButton_Min_Width);outline:0;padding:0;padding-left:calc(var(--fdButton_Padding_X) - var(--sapButton_BorderWidth));padding-right:calc(var(--fdButton_Padding_X) - var(--sapButton_BorderWidth));position:relative;text-align:center;text-decoration:none;text-shadow:var(--fdButton_Text_Shadow);user-select:none;vertical-align:middle;white-space:nowrap}.fd-button:after,.fd-button:before{box-sizing:inherit;font-size:inherit}.fd-button::-moz-focus-inner{border:0}.fd-button:before{bottom:calc((var(--fdButton_Clickable_Height) - var(--fdButton_Height)) * .5);content:\"\";display:block;height:auto;left:0;position:absolute;right:0;top:calc((var(--fdButton_Clickable_Height) - var(--fdButton_Height)) * .5);width:100%}.fd-button__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:inherit;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;font-weight:inherit;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-button__text:after,.fd-button__text:before{box-sizing:inherit;font-size:inherit}.fd-button,.fd-button__text{font-family:var(--fdButton_Font_Family)}.fd-button :not(:first-child):not(.fd-button__badge){margin-left:.375rem}.fd-button :not(:first-child):not(.fd-button__badge)[dir=rtl],[dir=rtl] .fd-button :not(:first-child):not(.fd-button__badge){margin-left:0;margin-right:.375rem}.fd-button>[class*=sap-icon]{color:inherit;font-size:1rem;font-style:normal;height:1rem;line-height:1rem;min-width:1rem;vertical-align:text-bottom;width:1rem}.fd-button>[class*=sap-icon]:after,.fd-button>[class*=sap-icon]:before{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.fd-button__badge{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:var(--sapContent_BadgeBackground);border:0;border:.0625rem solid var(--fdButton_Badge_Border_Color);border-radius:.5rem;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_BadgeTextColor);display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;height:1rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;margin-left:var(--fdButton_Badge_Margin_Left, 0);padding:0 .3125rem;position:var(--fdButton_Badge_Position, absolute);right:-.25rem;top:-.25rem;z-index:1}.fd-button__badge:after,.fd-button__badge:before{box-sizing:inherit;font-size:inherit}.fd-button__badge[dir=rtl],[dir=rtl] .fd-button__badge{left:-.25rem;margin-left:0;margin-right:var(--fdButton_Badge_Margin_Left, 0);right:auto}.fd-button[class*=-compact],.fd-button[class*=-condensed],[class*=-compact] .fd-button:not([class*=-cozy]),[class*=-condensed] .fd-button:not([class*=-cozy]){--fdButton_Height:1.625rem;--fdButton_Clickable_Height:2rem;--fdButton_Padding_X:.5rem;--fdButton_Min_Width:2rem;--fdButton_Badge_Position:static;--fdButton_Badge_Margin_Left:.25rem}.fd-button--menu{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-button--menu-fixed-width{justify-content:space-between}.fd-button--menu .fd-button__text{line-height:1rem}.fd-button--full-width{-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center;min-width:100%;width:100%}.fd-button--text-alignment-left{justify-content:flex-start;text-align:left}.fd-button--text-alignment-right{justify-content:flex-end;text-align:right}.fd-button--decisive{min-width:4rem}.fd-button__instructions{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.fd-button.is-focus,.fd-button:focus{box-shadow:none;outline:none;z-index:5}.fd-button.is-focus:after,.fd-button:focus:after{border:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);border-radius:calc(var(--sapButton_BorderCornerRadius) - var(--sapContent_FocusWidth));bottom:var(--fdButton_Outline_Offset);content:\"\";display:block;left:var(--fdButton_Outline_Offset);position:absolute;right:var(--fdButton_Outline_Offset);top:var(--fdButton_Outline_Offset)}.fd-button.is-focus.fd-button--toggled:after,.fd-button.is-focus.is-selected:after,.fd-button:focus.fd-button--toggled:after,.fd-button:focus.is-selected:after{border-color:var(--fdButton_Outline_Contrast)}.fd-button.is-active,.fd-button.is-selected,.fd-button:active,.fd-button[aria-selected=true]{box-shadow:none;outline:none}.fd-button.is-disabled,.fd-button:disabled,.fd-button[aria-disabled=true]{box-shadow:none;cursor:not-allowed;opacity:var(--sapContent_DisabledOpacity)}.fd-button.is-selected,.fd-button[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button.is-hover,.fd-button:hover{--fdButtonColor:var(--sapButton_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button.is-active,.fd-button:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button.is-active .fd-button__icon,.fd-button:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button.is-disabled,.fd-button:disabled,.fd-button[aria-disabled=true]{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Background)}.fd-button.fd-button--toggled,.fd-button.is-disabled.is-selected,.fd-button.is-disabled[aria-selected=true],.fd-button:disabled.is-selected,.fd-button:disabled[aria-selected=true],.fd-button[aria-disabled=true].is-selected,.fd-button[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button.fd-button--toggled.is-active,.fd-button.fd-button--toggled.is-hover,.fd-button.fd-button--toggled.is-selected,.fd-button.fd-button--toggled:active,.fd-button.fd-button--toggled:hover,.fd-button.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button.fd-button--toggled.is-active,.fd-button.fd-button--toggled.is-selected,.fd-button.fd-button--toggled:active,.fd-button.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button.fd-button--toggled.is-active .fd-button__icon,.fd-button.fd-button--toggled.is-selected .fd-button__icon,.fd-button.fd-button--toggled:active .fd-button__icon,.fd-button.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button.fd-button--toggled.is-disabled,.fd-button.fd-button--toggled:disabled,.fd-button.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--attention{--fdButtonColor:var(--sapButton_Attention_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--attention.is-selected,.fd-button--attention[aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Background)}.fd-button--attention.is-hover,.fd-button--attention:hover{--fdButtonColor:var(--sapButton_Attention_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Hover_Background);box-shadow:var(--fdButton_Attention_Hover_Shadow)}.fd-button--attention.is-active,.fd-button--attention:active{--fdButtonColor:var(--sapButton_Attention_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Active_Background);--fdElementTextColor:var(--sapButton_Attention_Active_TextColor);--fdElementIconColor:var(--sapButton_Attention_Active_TextColor)}.fd-button--attention.is-active .fd-button__icon,.fd-button--attention:active .fd-button__icon{color:var(--sapButton_Attention_Active_TextColor);text-shadow:none}.fd-button--attention.is-disabled,.fd-button--attention:disabled,.fd-button--attention[aria-disabled=true]{--fdButtonColor:var(--sapButton_Attention_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Background)}.fd-button--attention.fd-button--toggled,.fd-button--attention.is-disabled.is-selected,.fd-button--attention.is-disabled[aria-selected=true],.fd-button--attention:disabled.is-selected,.fd-button--attention:disabled[aria-selected=true],.fd-button--attention[aria-disabled=true].is-selected,.fd-button--attention[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Background)}.fd-button--attention.fd-button--toggled.is-active,.fd-button--attention.fd-button--toggled.is-hover,.fd-button--attention.fd-button--toggled.is-selected,.fd-button--attention.fd-button--toggled:active,.fd-button--attention.fd-button--toggled:hover,.fd-button--attention.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Attention_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Attention_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Attention_Selected_Hover_Background);box-shadow:var(--fdButton_Attention_Hover_Shadow)}.fd-button--attention.fd-button--toggled.is-active,.fd-button--attention.fd-button--toggled.is-selected,.fd-button--attention.fd-button--toggled:active,.fd-button--attention.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Attention_Selected_TextColor);--fdElementIconColor:var(--sapButton_Attention_Selected_TextColor)}.fd-button--attention.fd-button--toggled.is-active .fd-button__icon,.fd-button--attention.fd-button--toggled.is-selected .fd-button__icon,.fd-button--attention.fd-button--toggled:active .fd-button__icon,.fd-button--attention.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Attention_Active_TextColor);text-shadow:none}.fd-button--attention.fd-button--toggled.is-disabled,.fd-button--attention.fd-button--toggled:disabled,.fd-button--attention.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--emphasized{--fdButtonColor:var(--sapButton_Emphasized_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);border-width:var(--fdButton_Emphasized_Border_Width);color:var(--fdButtonColor);font-weight:var(--sapButton_Emphasized_FontWeight)}.fd-button--emphasized.is-selected,.fd-button--emphasized[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--emphasized.is-hover,.fd-button--emphasized:hover{--fdButtonColor:var(--sapButton_Emphasized_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Hover_Background);box-shadow:none}.fd-button--emphasized.is-active,.fd-button--emphasized:active{--fdButtonColor:var(--sapButton_Emphasized_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Active_Background);--fdElementTextColor:var(--sapButton_Emphasized_Active_TextColor);--fdElementIconColor:var(--sapButton_Emphasized_Active_TextColor)}.fd-button--emphasized.is-active .fd-button__icon,.fd-button--emphasized:active .fd-button__icon{color:var(--sapButton_Emphasized_Active_TextColor);text-shadow:none}.fd-button--emphasized.is-disabled,.fd-button--emphasized:disabled,.fd-button--emphasized[aria-disabled=true]{--fdButtonColor:var(--sapButton_Emphasized_TextColor);--fdButtonBorderColor:var(--sapButton_Emphasized_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Emphasized_Background)}.fd-button--emphasized.fd-button--toggled,.fd-button--emphasized.is-disabled.is-selected,.fd-button--emphasized.is-disabled[aria-selected=true],.fd-button--emphasized:disabled.is-selected,.fd-button--emphasized:disabled[aria-selected=true],.fd-button--emphasized[aria-disabled=true].is-selected,.fd-button--emphasized[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-hover,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled:hover,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--emphasized.fd-button--toggled.is-active .fd-button__icon,.fd-button--emphasized.fd-button--toggled.is-selected .fd-button__icon,.fd-button--emphasized.fd-button--toggled:active .fd-button__icon,.fd-button--emphasized.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Emphasized_Active_TextColor);text-shadow:none}.fd-button--emphasized.fd-button--toggled.is-disabled,.fd-button--emphasized.fd-button--toggled:disabled,.fd-button--emphasized.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--emphasized.is-focus,.fd-button--emphasized:focus{z-index:5}.fd-button--emphasized.is-focus:after,.fd-button--emphasized:focus:after{border-color:var(--sapContent_ContrastFocusColor)}.fd-button--emphasized.is-active,.fd-button--emphasized.is-selected,.fd-button--emphasized:active,.fd-button--emphasized[aria-selected=true]{outline:none}.fd-button--emphasized.fd-button--toggled.is-focus,.fd-button--emphasized.fd-button--toggled:focus{outline-color:var(--fdButton_Emphasized_Active_Outline);z-index:5}.fd-button--emphasized.fd-button--toggled.is-active,.fd-button--emphasized.fd-button--toggled.is-selected,.fd-button--emphasized.fd-button--toggled:active,.fd-button--emphasized.fd-button--toggled[aria-selected=true]{outline:none}.fd-button--ghost{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--fdButton_Ghost_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--ghost.is-selected,.fd-button--ghost[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--ghost.is-hover,.fd-button--ghost:hover{--fdButtonColor:var(--sapButton_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--ghost.is-active,.fd-button--ghost:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button--ghost.is-active .fd-button__icon,.fd-button--ghost:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--ghost.is-disabled,.fd-button--ghost:disabled,.fd-button--ghost[aria-disabled=true]{--fdButtonColor:var(--sapButton_TextColor);--fdButtonBorderColor:var(--sapButton_BorderColor);--fdButtonBackgroundColor:var(--fdButton_Ghost_Background)}.fd-button--ghost.fd-button--toggled,.fd-button--ghost.is-disabled.is-selected,.fd-button--ghost.is-disabled[aria-selected=true],.fd-button--ghost:disabled.is-selected,.fd-button--ghost:disabled[aria-selected=true],.fd-button--ghost[aria-disabled=true].is-selected,.fd-button--ghost[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--ghost.fd-button--toggled.is-active,.fd-button--ghost.fd-button--toggled.is-hover,.fd-button--ghost.fd-button--toggled.is-selected,.fd-button--ghost.fd-button--toggled:active,.fd-button--ghost.fd-button--toggled:hover,.fd-button--ghost.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--ghost.fd-button--toggled.is-active,.fd-button--ghost.fd-button--toggled.is-selected,.fd-button--ghost.fd-button--toggled:active,.fd-button--ghost.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--ghost.fd-button--toggled.is-active .fd-button__icon,.fd-button--ghost.fd-button--toggled.is-selected .fd-button__icon,.fd-button--ghost.fd-button--toggled:active .fd-button__icon,.fd-button--ghost.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--ghost.fd-button--toggled.is-disabled,.fd-button--ghost.fd-button--toggled:disabled,.fd-button--ghost.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--negative{--fdButtonColor:var(--sapButton_Reject_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--negative.is-selected,.fd-button--negative[aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Background)}.fd-button--negative.is-hover,.fd-button--negative:hover{--fdButtonColor:var(--sapButton_Reject_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Hover_Background);box-shadow:var(--fdButton_Negative_Hover_Shadow)}.fd-button--negative.is-active,.fd-button--negative:active{--fdButtonColor:var(--sapButton_Reject_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Active_Background);--fdElementTextColor:var(--sapButton_Reject_Active_TextColor);--fdElementIconColor:var(--sapButton_Reject_Active_TextColor)}.fd-button--negative.is-active .fd-button__icon,.fd-button--negative:active .fd-button__icon{color:var(--sapButton_Reject_Active_TextColor);text-shadow:none}.fd-button--negative.is-disabled,.fd-button--negative:disabled,.fd-button--negative[aria-disabled=true]{--fdButtonColor:var(--sapButton_Reject_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Background)}.fd-button--negative.fd-button--toggled,.fd-button--negative.is-disabled.is-selected,.fd-button--negative.is-disabled[aria-selected=true],.fd-button--negative:disabled.is-selected,.fd-button--negative:disabled[aria-selected=true],.fd-button--negative[aria-disabled=true].is-selected,.fd-button--negative[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Background)}.fd-button--negative.fd-button--toggled.is-active,.fd-button--negative.fd-button--toggled.is-hover,.fd-button--negative.fd-button--toggled.is-selected,.fd-button--negative.fd-button--toggled:active,.fd-button--negative.fd-button--toggled:hover,.fd-button--negative.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Reject_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Reject_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Reject_Selected_Hover_Background);box-shadow:var(--fdButton_Negative_Hover_Shadow)}.fd-button--negative.fd-button--toggled.is-active,.fd-button--negative.fd-button--toggled.is-selected,.fd-button--negative.fd-button--toggled:active,.fd-button--negative.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Reject_Selected_TextColor);--fdElementIconColor:var(--sapButton_Reject_Selected_TextColor)}.fd-button--negative.fd-button--toggled.is-active .fd-button__icon,.fd-button--negative.fd-button--toggled.is-selected .fd-button__icon,.fd-button--negative.fd-button--toggled:active .fd-button__icon,.fd-button--negative.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Reject_Active_TextColor);text-shadow:none}.fd-button--negative.fd-button--toggled.is-disabled,.fd-button--negative.fd-button--toggled:disabled,.fd-button--negative.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--positive{--fdButtonColor:var(--sapButton_Accept_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--positive.is-selected,.fd-button--positive[aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Background)}.fd-button--positive.is-hover,.fd-button--positive:hover{--fdButtonColor:var(--sapButton_Accept_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Hover_Background);box-shadow:var(--fdButton_Positive_Hover_Shadow)}.fd-button--positive.is-active,.fd-button--positive:active{--fdButtonColor:var(--sapButton_Accept_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Active_Background);--fdElementTextColor:var(--sapButton_Accept_Active_TextColor);--fdElementIconColor:var(--sapButton_Accept_Active_TextColor)}.fd-button--positive.is-active .fd-button__icon,.fd-button--positive:active .fd-button__icon{color:var(--sapButton_Accept_Active_TextColor);text-shadow:none}.fd-button--positive.is-disabled,.fd-button--positive:disabled,.fd-button--positive[aria-disabled=true]{--fdButtonColor:var(--sapButton_Accept_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Background)}.fd-button--positive.fd-button--toggled,.fd-button--positive.is-disabled.is-selected,.fd-button--positive.is-disabled[aria-selected=true],.fd-button--positive:disabled.is-selected,.fd-button--positive:disabled[aria-selected=true],.fd-button--positive[aria-disabled=true].is-selected,.fd-button--positive[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Background)}.fd-button--positive.fd-button--toggled.is-active,.fd-button--positive.fd-button--toggled.is-hover,.fd-button--positive.fd-button--toggled.is-selected,.fd-button--positive.fd-button--toggled:active,.fd-button--positive.fd-button--toggled:hover,.fd-button--positive.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Accept_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Accept_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Accept_Selected_Hover_Background);box-shadow:var(--fdButton_Positive_Hover_Shadow)}.fd-button--positive.fd-button--toggled.is-active,.fd-button--positive.fd-button--toggled.is-selected,.fd-button--positive.fd-button--toggled:active,.fd-button--positive.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Accept_Selected_TextColor);--fdElementIconColor:var(--sapButton_Accept_Selected_TextColor)}.fd-button--positive.fd-button--toggled.is-active .fd-button__icon,.fd-button--positive.fd-button--toggled.is-selected .fd-button__icon,.fd-button--positive.fd-button--toggled:active .fd-button__icon,.fd-button--positive.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Accept_Active_TextColor);text-shadow:none}.fd-button--positive.fd-button--toggled.is-disabled,.fd-button--positive.fd-button--toggled:disabled,.fd-button--positive.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-button--transparent{--fdButtonColor:var(--sapButton_Lite_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Background);background-color:var(--fdButtonBackgroundColor);border-color:var(--fdButtonBorderColor);color:var(--fdButtonColor)}.fd-button--transparent.is-selected,.fd-button--transparent[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--transparent.is-hover,.fd-button--transparent:hover{--fdButtonColor:var(--sapButton_Lite_Hover_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--transparent.is-active,.fd-button--transparent:active{--fdButtonColor:var(--sapButton_Active_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_Active_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Active_Background);--fdElementTextColor:var(--sapButton_Active_TextColor);--fdElementIconColor:var(--sapButton_Active_TextColor)}.fd-button--transparent.is-active .fd-button__icon,.fd-button--transparent:active .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--transparent.is-disabled,.fd-button--transparent:disabled,.fd-button--transparent[aria-disabled=true]{--fdButtonColor:var(--sapButton_Lite_TextColor);--fdButtonBorderColor:var(--sapButton_Lite_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Lite_Background)}.fd-button--transparent.fd-button--toggled,.fd-button--transparent.is-disabled.is-selected,.fd-button--transparent.is-disabled[aria-selected=true],.fd-button--transparent:disabled.is-selected,.fd-button--transparent:disabled[aria-selected=true],.fd-button--transparent[aria-disabled=true].is-selected,.fd-button--transparent[aria-disabled=true][aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Background)}.fd-button--transparent.fd-button--toggled.is-active,.fd-button--transparent.fd-button--toggled.is-hover,.fd-button--transparent.fd-button--toggled.is-selected,.fd-button--transparent.fd-button--toggled:active,.fd-button--transparent.fd-button--toggled:hover,.fd-button--transparent.fd-button--toggled[aria-selected=true]{--fdButtonColor:var(--sapButton_Selected_TextColor);--fdButtonBorderColor:var(--sapButton_Selected_Hover_BorderColor);--fdButtonBackgroundColor:var(--sapButton_Selected_Hover_Background);box-shadow:var(--fdButton_Hover_Shadow)}.fd-button--transparent.fd-button--toggled.is-active,.fd-button--transparent.fd-button--toggled.is-selected,.fd-button--transparent.fd-button--toggled:active,.fd-button--transparent.fd-button--toggled[aria-selected=true]{--fdElementTextColor:var(--sapButton_Selected_TextColor);--fdElementIconColor:var(--sapButton_Selected_TextColor)}.fd-button--transparent.fd-button--toggled.is-active .fd-button__icon,.fd-button--transparent.fd-button--toggled.is-selected .fd-button__icon,.fd-button--transparent.fd-button--toggled:active .fd-button__icon,.fd-button--transparent.fd-button--toggled[aria-selected=true] .fd-button__icon{color:var(--sapButton_Active_TextColor);text-shadow:none}.fd-button--transparent.fd-button--toggled.is-disabled,.fd-button--transparent.fd-button--toggled:disabled,.fd-button--transparent.fd-button--toggled[aria-disabled=true]{box-shadow:none}.fd-input{-webkit-box-sizing:border-box;-webkit-box-shadow:none;-webkit-appearance:none;appearance:none;background:var(--sapField_BackgroundStyle, var(--sapField_BackgroundStyle));background-color:var(--sapField_Background, var(--sapField_Background));border:0;border:var(--sapField_BorderWidth) var(--sapField_BorderStyle) var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);box-shadow:none;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);cursor:text;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2.25rem;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdInput_Field_Margin, .25rem 0);min-height:2.25rem;min-width:var(2.75rem, 2.75rem);outline:none;overflow:hidden;padding:0;padding:var(--fdInput_Field_Padding, 0 .625rem);text-overflow:ellipsis;text-shadow:var(--fdInput_Text_Shadow);white-space:nowrap;width:100%;z-index:1}.fd-input:after,.fd-input:before{box-sizing:inherit;font-size:inherit}.fd-input::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:var(--fdPlaceholder_Font_Style)}.fd-input[dir=rtl]::placeholder,[dir=rtl] .fd-input::placeholder{text-indent:.125rem}.fd-input::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-input::-ms-clear{display:none}.fd-input.is-hover,.fd-input:hover{-webkit-box-shadow:var(--fdInput_Box_Shadow_Hover);background:var(--sapField_Hover_BackgroundStyle, var(--sapField_Hover_BackgroundStyle));background-color:var(--sapField_Hover_Background, var(--sapField_Hover_Background));border-color:var(--sapField_Hover_BorderColor);box-shadow:var(--fdInput_Box_Shadow_Hover)}.fd-input.is-focus,.fd-input:focus{-webkit-box-shadow:none;background:var(--sapField_Focus_Background, var(--sapField_Focus_Background));box-shadow:none;outline-color:var(--fdInput_Outline_Color);outline-offset:var(--fdInput_Outline_Offset);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-input[type=search]::-webkit-search-cancel-button,.fd-input[type=search]::-webkit-search-decoration,.fd-input[type=search]::-webkit-search-results-button,.fd-input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}.fd-input[aria-expanded=false]{z-index:0}.fd-input.is-expanded,.fd-input[aria-expanded=true]{z-index:4}.fd-input[class*=-compact],.fd-input[class*=-condensed],[class*=-compact] .fd-input:not([class*=-cozy]),[class*=-condensed] .fd-input:not([class*=-cozy]){box-sizing:border-box;height:1.625rem;margin:var(--fdInput_Field_Compact_Margin, .1875rem 0);min-height:1.625rem;min-width:var(--fdInput_Field_Compact_Min_Width, 2rem);padding:var(--fdInput_Field_Compact_Padding, 0 .5rem)}.fd-input--no-number-spinner{-moz-appearance:textfield}.fd-input--no-number-spinner::-webkit-inner-spin-button,.fd-input--no-number-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fd-input.right-align{text-align:right}.fd-input.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-input.is-success.is-hover,.fd-input.is-success:hover{-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-input.is-success.is-focus,.fd-input.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-input.is-success.is-focus.is-hover,.fd-input.is-success.is-focus:hover,.fd-input.is-success:focus.is-hover,.fd-input.is-success:focus:hover{box-shadow:none}.fd-input.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-input.is-error.is-hover,.fd-input.is-error:hover{-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-input.is-error.is-focus,.fd-input.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-input.is-error.is-focus.is-hover,.fd-input.is-error.is-focus:hover,.fd-input.is-error:focus.is-hover,.fd-input.is-error:focus:hover{box-shadow:none}.fd-input.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input.is-warning.is-hover,.fd-input.is-warning:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input.is-warning.is-focus.is-hover,.fd-input.is-warning.is-focus:hover,.fd-input.is-warning:focus.is-hover,.fd-input.is-warning:focus:hover{box-shadow:none}.fd-input.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input.is-alert.is-hover,.fd-input.is-alert:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input.is-alert.is-focus.is-hover,.fd-input.is-alert.is-focus:hover,.fd-input.is-alert:focus.is-hover,.fd-input.is-alert:focus:hover{box-shadow:none}.fd-input.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-input.is-information.is-hover,.fd-input.is-information:hover{-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-input.is-information.is-focus,.fd-input.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-input.is-information.is-focus.is-hover,.fd-input.is-information.is-focus:hover,.fd-input.is-information:focus.is-hover,.fd-input.is-information:focus:hover{box-shadow:none}.fd-input.is-alert,.fd-input.is-error,.fd-input.is-warning{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-input.is-alert::placeholder,.fd-input.is-error::placeholder,.fd-input.is-warning::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-input.is-alert.is-focus,.fd-input.is-alert:focus,.fd-input.is-error.is-focus,.fd-input.is-error:focus,.fd-input.is-information.is-focus,.fd-input.is-information:focus,.fd-input.is-warning.is-focus,.fd-input.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-input.is-error::placeholder{color:var(--sapField_TextColor)}.fd-input.is-disabled,.fd-input:disabled,.fd-input[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-input.is-disabled::placeholder,.fd-input:disabled::placeholder,.fd-input[aria-disabled=true]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input.is-readonly,.fd-input[aria-readonly=true],.fd-input[readonly]{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius)}.fd-input.is-readonly::placeholder,.fd-input[aria-readonly=true]::placeholder,.fd-input[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input.is-readonly.is-hover,.fd-input.is-readonly:hover,.fd-input[aria-readonly=true].is-hover,.fd-input[aria-readonly=true]:hover,.fd-input[readonly].is-hover,.fd-input[readonly]:hover{-webkit-box-shadow:none;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);box-shadow:none}.fd-input.is-readonly.is-focus,.fd-input.is-readonly:focus,.fd-input[aria-readonly=true].is-focus,.fd-input[aria-readonly=true]:focus,.fd-input[readonly].is-focus,.fd-input[readonly]:focus{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);z-index:5}/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-input-group+(--inline, --control)\n .fd-input-group__addon+(--button)\n*/.fd-input-group{-webkit-box-sizing:border-box;-webkit-box-shadow:none;-webkit-appearance:none;appearance:none;background:var(--fdInputGroup_Background, var(--sapField_BackgroundStyle));background-color:var(--fdInputGroup_Background_Color, var(--sapField_Background));border:0;border:var(--sapField_BorderWidth) var(--sapField_BorderStyle) var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);box-shadow:none;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);cursor:text;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:auto;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdInput_Field_Margin, .25rem 0);min-width:var(2.75rem, 2.75rem);outline:none;overflow:hidden;padding:0;text-overflow:ellipsis;text-shadow:var(--fdInput_Text_Shadow);white-space:nowrap;width:100%;z-index:1}.fd-input-group:after,.fd-input-group:before{box-sizing:inherit;font-size:inherit}.fd-input-group::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:var(--fdPlaceholder_Font_Style)}.fd-input-group[dir=rtl]::placeholder,[dir=rtl] .fd-input-group::placeholder{text-indent:.125rem}.fd-input-group::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-input-group::-ms-clear{display:none}.fd-input-group.is-hover,.fd-input-group:hover{-webkit-box-shadow:var(--fdInput_Box_Shadow_Hover);background:var(--fdInputGroup_Hover_Background, var(--sapField_Hover_BackgroundStyle));background-color:var(--fdInputGroup_Hover_Background_Color, var(--sapField_Hover_Background));border-color:var(--sapField_Hover_BorderColor);box-shadow:var(--fdInput_Box_Shadow_Hover)}.fd-input-group.is-focus,.fd-input-group:focus{-webkit-box-shadow:none;background:var(--sapField_Focus_Background, var(--sapField_Focus_Background));box-shadow:none;outline-color:var(--fdInput_Outline_Color);outline-offset:var(--fdInput_Outline_Offset);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-input-group.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-input-group.is-success.is-hover,.fd-input-group.is-success:hover{-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-input-group.is-success.is-focus,.fd-input-group.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-input-group.is-success.is-focus.is-hover,.fd-input-group.is-success.is-focus:hover,.fd-input-group.is-success:focus.is-hover,.fd-input-group.is-success:focus:hover{box-shadow:none}.fd-input-group.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-input-group.is-error.is-hover,.fd-input-group.is-error:hover{-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-input-group.is-error.is-focus,.fd-input-group.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-input-group.is-error.is-focus.is-hover,.fd-input-group.is-error.is-focus:hover,.fd-input-group.is-error:focus.is-hover,.fd-input-group.is-error:focus:hover{box-shadow:none}.fd-input-group.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input-group.is-warning.is-hover,.fd-input-group.is-warning:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input-group.is-warning.is-focus,.fd-input-group.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input-group.is-warning.is-focus.is-hover,.fd-input-group.is-warning.is-focus:hover,.fd-input-group.is-warning:focus.is-hover,.fd-input-group.is-warning:focus:hover{box-shadow:none}.fd-input-group.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-input-group.is-alert.is-hover,.fd-input-group.is-alert:hover{-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-input-group.is-alert.is-focus,.fd-input-group.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-input-group.is-alert.is-focus.is-hover,.fd-input-group.is-alert.is-focus:hover,.fd-input-group.is-alert:focus.is-hover,.fd-input-group.is-alert:focus:hover{box-shadow:none}.fd-input-group.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-input-group.is-information.is-hover,.fd-input-group.is-information:hover{-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-input-group.is-information.is-focus,.fd-input-group.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-input-group.is-information.is-focus.is-hover,.fd-input-group.is-information.is-focus:hover,.fd-input-group.is-information:focus.is-hover,.fd-input-group.is-information:focus:hover{box-shadow:none}.fd-input-group.is-alert,.fd-input-group.is-error,.fd-input-group.is-warning{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-input-group.is-alert::placeholder,.fd-input-group.is-error::placeholder,.fd-input-group.is-warning::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-input-group.is-alert.is-focus,.fd-input-group.is-alert:focus,.fd-input-group.is-error.is-focus,.fd-input-group.is-error:focus,.fd-input-group.is-information.is-focus,.fd-input-group.is-information:focus,.fd-input-group.is-warning.is-focus,.fd-input-group.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-input-group.is-error::placeholder{color:var(--sapField_TextColor)}.fd-input-group.is-disabled,.fd-input-group:disabled,.fd-input-group[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-input-group.is-disabled::placeholder,.fd-input-group:disabled::placeholder,.fd-input-group[aria-disabled=true]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input-group.is-readonly,.fd-input-group[aria-readonly=true],.fd-input-group[readonly]{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius)}.fd-input-group.is-readonly::placeholder,.fd-input-group[aria-readonly=true]::placeholder,.fd-input-group[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-input-group.is-readonly.is-hover,.fd-input-group.is-readonly:hover,.fd-input-group[aria-readonly=true].is-hover,.fd-input-group[aria-readonly=true]:hover,.fd-input-group[readonly].is-hover,.fd-input-group[readonly]:hover{-webkit-box-shadow:none;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);box-shadow:none}.fd-input-group.is-readonly.is-focus,.fd-input-group.is-readonly:focus,.fd-input-group[aria-readonly=true].is-focus,.fd-input-group[aria-readonly=true]:focus,.fd-input-group[readonly].is-focus,.fd-input-group[readonly]:focus{background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);z-index:5}.fd-input-group .fd-input-group__button:first-child{border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:first-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child{border-left:var(--fdInputGroup_ControlButton_SideBorder);border-right-style:none}.fd-input-group .fd-input-group__button:first-child.is-hover,.fd-input-group .fd-input-group__button:first-child:hover{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:first-child.is-hover[dir=rtl],.fd-input-group .fd-input-group__button:first-child:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child.is-hover,[dir=rtl] .fd-input-group .fd-input-group__button:first-child:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__button:first-child.is-active,.fd-input-group .fd-input-group__button:first-child:active{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:first-child.is-active[dir=rtl],.fd-input-group .fd-input-group__button:first-child:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:first-child.is-active,[dir=rtl] .fd-input-group .fd-input-group__button:first-child:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__button:not(:first-child){border-left:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:not(:first-child)[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child){border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__button:not(:first-child).is-hover,.fd-input-group .fd-input-group__button:not(:first-child):hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-hover[dir=rtl],.fd-input-group .fd-input-group__button:not(:first-child):hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child).is-hover,[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child):hover{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-active,.fd-input-group .fd-input-group__button:not(:first-child):active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button:not(:first-child).is-active[dir=rtl],.fd-input-group .fd-input-group__button:not(:first-child):active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child).is-active,[dir=rtl] .fd-input-group .fd-input-group__button:not(:first-child):active{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button{border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button{border-left:var(--fdInputGroup_ControlButton_SideBorder);border-right-style:none}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover[dir=rtl],.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-hover,[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active,.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active{border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active[dir=rtl],.fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button.is-active,[dir=rtl] .fd-input-group .fd-input-group__addon:first-child .fd-input-group__button:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active);border-right-style:none}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button{border-left:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover[dir=rtl],.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-hover,[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:hover{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active,.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active{border-left:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active[dir=rtl],.fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button.is-active,[dir=rtl] .fd-input-group .fd-input-group__addon:not(:first-child) .fd-input-group__button:active{border-left-style:none;border-right:var(--fdInputGroup_ControlButton_SideBorder_Active)}.fd-input-group .fd-input-group__button{background:var(--fdInput_Group_Button_Background);border:none;border-radius:var(--fdInput_Group_Button_Border_Raduis);color:var(--fdInput_Group_Button_Text_Color);overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;z-index:auto!important}.fd-input-group .fd-input-group__button:before{display:none!important}.fd-input-group .fd-input-group__button.is-hover,.fd-input-group .fd-input-group__button:hover{--fdInput_Group_Button_Text_Color:var(--fdInput_Group_Button_Hover_Text_Color);-webkit-box-shadow:var(--fdInput_Group_Button_Box_Shadow);background:var(--fdInput_Group_Button_Hover_Background);box-shadow:var(--fdInput_Group_Button_Box_Shadow)}.fd-input-group .fd-input-group__button.is-active,.fd-input-group .fd-input-group__button:active{-webkit-box-shadow:var(--fdInput_Group_Button_Box_Shadow);background:var(--fdInput_Group_Button_Active_Background);box-shadow:var(--fdInput_Group_Button_Box_Shadow);color:var(--fdInput_Group_Button_Active_Text_Color)}.fd-input-group.is-success .fd-input-group__button.is-active,.fd-input-group.is-success .fd-input-group__button.is-hover,.fd-input-group.is-success .fd-input-group__button:active,.fd-input-group.is-success .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Success_Active_Box_Shadow)}.fd-input-group.is-success .fd-input-group__button.is-active,.fd-input-group.is-success .fd-input-group__button:active{color:var(--fdInput_Group_Button_Success_Active_Text_Color)}.fd-input-group.is-error .fd-input-group__button.is-active,.fd-input-group.is-error .fd-input-group__button.is-hover,.fd-input-group.is-error .fd-input-group__button:active,.fd-input-group.is-error .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Error_Active_Box_Shadow)}.fd-input-group.is-error .fd-input-group__button.is-active,.fd-input-group.is-error .fd-input-group__button:active{color:var(--fdInput_Group_Button_Error_Active_Text_Color)}.fd-input-group.is-warning .fd-input-group__button.is-active,.fd-input-group.is-warning .fd-input-group__button.is-hover,.fd-input-group.is-warning .fd-input-group__button:active,.fd-input-group.is-warning .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Warning_Active_Box_Shadow)}.fd-input-group.is-warning .fd-input-group__button.is-active,.fd-input-group.is-warning .fd-input-group__button:active{color:var(--fdInput_Group_Button_Warning_Active_Text_Color)}.fd-input-group.is-alert .fd-input-group__button.is-active,.fd-input-group.is-alert .fd-input-group__button.is-hover,.fd-input-group.is-alert .fd-input-group__button:active,.fd-input-group.is-alert .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Warning_Active_Box_Shadow)}.fd-input-group.is-alert .fd-input-group__button.is-active,.fd-input-group.is-alert .fd-input-group__button:active{color:var(--fdInput_Group_Button_Warning_Active_Text_Color)}.fd-input-group.is-information .fd-input-group__button.is-active,.fd-input-group.is-information .fd-input-group__button.is-hover,.fd-input-group.is-information .fd-input-group__button:active,.fd-input-group.is-information .fd-input-group__button:hover{box-shadow:var(--fdInput_Group_Button_Information_Active_Box_Shadow)}.fd-input-group.is-information .fd-input-group__button.is-active,.fd-input-group.is-information .fd-input-group__button:active{color:var(--fdInput_Group_Button_Information_Active_Text_Color)}.fd-input-group .fd-input-group__input{-webkit-box-flex:1;-ms-flex:1 1 10rem;background:none;background-color:var(--fdInputGroup_Input_Background, transparent);border:var(--fdInputGroup_Input_Border, none);color:var(--fdInputGroup_Input_Color, inherit);flex:1 1 10rem;padding-left:.25rem;padding-right:.25rem;text-shadow:var(--fdInputGroup_Text_Shadow)}.fd-input-group .fd-input-group__input:nth-child(n+1){margin:0}.fd-input-group .fd-input-group__input::placeholder{color:var(--fdInputGroup_Input_Placeholder_Color, var(--sapField_PlaceholderTextColor));font-style:var(--fdInputGroup_Input_Placeholder_Style, italic)}.fd-input-group .fd-input-group__input.is-hover,.fd-input-group .fd-input-group__input:hover{-webkit-box-shadow:none;background:none;background-color:var(--fdInputGroup_Hover_Input_Background, transparent);box-shadow:none}.fd-input-group .fd-input-group__input.is-focus,.fd-input-group .fd-input-group__input:focus{-webkit-box-shadow:none;background:var(--fdInputGroup_Input_Background, none);border-radius:0;box-shadow:none;outline:none;z-index:5}.fd-input-group .fd-input-group__input:first-child{padding-left:.625rem}.fd-input-group .fd-input-group__input:first-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__input:first-child{padding-left:0;padding-right:.625rem}.fd-input-group .fd-input-group__input:last-child{padding-right:.625rem}.fd-input-group .fd-input-group__input:last-child[dir=rtl],[dir=rtl] .fd-input-group .fd-input-group__input:last-child{padding-left:.625rem;padding-right:.25rem}.fd-input-group--inline{display:inline-flex;vertical-align:bottom;width:auto}.fd-input-group__addon{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fdInputGroup_Addon_Background, none);border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-height:var(--fdInput_Group_Addon_Height, 2.25rem);min-width:var(--fdInput_Group_Addon_Width, 2.25rem);overflow:hidden;padding:0 .625rem;text-overflow:ellipsis;white-space:nowrap}.fd-input-group__addon:after,.fd-input-group__addon:before{box-sizing:inherit;font-size:inherit}.fd-input-group__addon span[class*=sap-icon--]:before{font-size:var(--sapFontLargeSize)}.fd-input-group__addon--readonly{opacity:.4}.fd-input-group__addon--button{overflow:visible;padding:0}.fd-input-group--control[aria-expanded=true]{margin-bottom:0}.fd-input-group[class*=-compact],.fd-input-group[class*=-condensed],[class*=-compact] .fd-input-group:not([class*=-cozy]),[class*=-condensed] .fd-input-group:not([class*=-cozy]){--fdInput_Field_Margin:.1875rem 0;--fdInput_Field_Compact_Margin:0;--fdInput_Group_Addon_Width:2rem;--fdInput_Group_Addon_Height:1.625rem}.fd-input-group .fd-textarea{resize:vertical}.fd-input-group .is-disabled,.fd-input-group :disabled,.fd-input-group [aria-disabled=true]{opacity:1}.fd-input-group.is-readonly,.fd-input-group[readonly]{overflow:visible}.fd-input-group .fd-tokenizer,.fd-input-group .fd-tokenizer.is-focus,.fd-input-group .fd-tokenizer.is-hover,.fd-input-group .fd-tokenizer:focus,.fd-input-group .fd-tokenizer:hover{-webkit-box-shadow:none;background:none;background-color:var(transparent, transparent);box-shadow:none}.fd-input-group .fd-tokenizer.is-focus,.fd-input-group .fd-tokenizer:focus{outline:none;z-index:5}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0}.fdp-search-field input[type=text]::-ms-clear{display:none;width:0;height:0}.fdp-search-field input[type=text]::-ms-reveal{display:none;width:0;height:0}.fdp-search-field input[type=search]::-webkit-search-decoration,.fdp-search-field input[type=search]::-webkit-search-cancel-button,.fdp-search-field input[type=search]::-webkit-search-results-button,.fdp-search-field input[type=search]::-webkit-search-results-decoration{display:none}.fdp-search-field .fdp-search-field__input-group button.fd-input-group__button{border-width:0}.fdp-search-field .fdp-search-field__input:hover{background:transparent}.fdp-search-field__suggestion-dropdown .fd-menu--overflow{top:0;max-width:none;min-height:10rem;max-height:100%;position:absolute;background-color:var(--sapList_Background)}.fdp-search-field__suggestion-dropdown .fd-menu__list,.fdp-search-field__suggestion-dropdown .fd-menu__item{max-width:none}\n"] }]
|
|
499
498
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }, { type: i2.RtlService, decorators: [{
|
|
500
499
|
type: Optional
|
|
501
500
|
}] }, { type: Document, decorators: [{
|
|
@@ -595,4 +594,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
595
594
|
name: 'suggestionMatches'
|
|
596
595
|
}]
|
|
597
596
|
}] });
|
|
598
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osUUFBUSxFQUNSLE1BQU0sRUFDTixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFDTixJQUFJLEVBRUosU0FBUyxFQUVULFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JFLE9BQU8sRUFBcUIsT0FBTyxFQUFFLGFBQWEsRUFBYyxNQUFNLHNCQUFzQixDQUFDO0FBQzdGLE9BQU8sRUFBbUIsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUdyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9GLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTFGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRWpFLE9BQU8sRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RixPQUFPLEVBQ0gsc0JBQXNCLEVBRXpCLE1BQU0scURBQXFELENBQUM7QUFDN0QsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDOUcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDbkcsT0FBTyxFQUFjLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ2hILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTlFLE9BQU8sS0FBSyxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7Ozs7OztBQXlCcEMsTUFBTSxPQUFPLDhCQUE4QjtJQUN2QyxjQUFjO0lBQ2QsWUFBb0IsT0FBbUI7UUFBbkIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtJQUFHLENBQUM7SUFFM0MsY0FBYztJQUNkLEtBQUs7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN2QyxDQUFDOzsySEFQUSw4QkFBOEI7K0dBQTlCLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQVAxQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLElBQUksRUFBRTt3QkFDRixRQUFRLEVBQUUsSUFBSTt3QkFDZCxJQUFJLEVBQUUsV0FBVztxQkFDcEI7aUJBQ0o7O0FBV0QsSUFBSSxrQkFBa0IsR0FBRyxDQUFDLENBQUM7QUFrQjNCLE1BQU0sT0FBTyxvQkFDVCxTQUFRLGFBQWE7SUFPckIsMkNBQTJDO0lBQzNDLElBQ0ksVUFBVSxDQUFDLEtBQWlCO1FBQzVCLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDL0IsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFzQkQsdUVBQXVFO0lBQ3ZFLElBQ0ksV0FBVyxDQUFDLEtBQXNEO1FBQ2xFLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN0QixrRUFBa0U7WUFDbEUsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQTBCLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQzlDO2FBQU0sSUFBSSxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQzlCLEdBQUcsQ0FBQyxDQUFDLFdBQTZCLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUM1RixDQUFDO1NBQ0w7YUFBTTtZQUNILElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDbEM7SUFDTCxDQUFDO0lBQ0QsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzdCLENBQUM7SUFFRCxxQ0FBcUM7SUFDckMsSUFDSSxVQUFVLENBQUMsS0FBaUM7UUFDNUMsSUFBSSxLQUFLLEVBQUU7WUFDUCxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDckM7SUFDTCxDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFNRCwwQkFBMEI7SUFDMUIsSUFDSSxVQUFVLENBQUMsS0FBdUI7UUFDbEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUNELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBbUVELDBCQUEwQjtJQUMxQixJQUFJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsYUFBYSxLQUFLLElBQUksQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDO0lBQzVFLENBQUM7SUE4R0QsY0FBYztJQUNkLElBQUksZ0JBQWdCO1FBQ2hCLE9BQU87WUFDSCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDcEIsUUFBUSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLElBQUksSUFBSTtTQUNqRCxDQUFDO0lBQ04sQ0FBQztJQUVELGNBQWM7SUFDZCxZQUNXLFVBQW1DLEVBQ3pCLFFBQWlCLEVBQ2pCLGlCQUFtQyxFQUNuQyxTQUFtQixFQUNqQixHQUFzQixFQUNaLElBQWdCLEVBQ1YsU0FBbUIsRUFDaEIsVUFBa0MsRUFDdkQsY0FBNkIsRUFDckMsd0JBQWlELEVBQ2pELHNCQUE4QztRQUV2RCxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFaSixlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUN6QixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFDbkMsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNqQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUNaLFNBQUksR0FBSixJQUFJLENBQVk7UUFDVixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ2hCLGVBQVUsR0FBVixVQUFVLENBQXdCO1FBQ3ZELG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQ3JDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFDakQsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQTFSM0QsZ0VBQWdFO1FBRWhFLGlCQUFZLEdBQXNCLE1BQU0sQ0FBQztRQTZCekMscUNBQXFDO1FBRXJDLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBRXZCLG9DQUFvQztRQUVwQyxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQW1EdEIsOENBQThDO1FBRTlDLGtCQUFhLEdBQUcsVUFBVSxDQUFDO1FBRTNCLHFDQUFxQztRQUVyQyxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFFMUIsNkJBQTZCO1FBRTdCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUErQmxCLDRDQUE0QztRQUU1QyxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFFMUIsMEJBQTBCO1FBRTFCLGdCQUFXLEdBQThCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFNUQsMkJBQTJCO1FBRTNCLGlCQUFZLEdBQThCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFN0QsMkJBQTJCO1FBRTNCLGlCQUFZLEdBQThCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFN0QsOEJBQThCO1FBRTlCLGlCQUFZLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFPbEU7OztXQUdHO1FBQ0gscUJBQWdCLEdBQXlCLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQVFoRDs7O1dBR0c7UUFDSCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUV0Qjs7O1dBR0c7UUFDSCwwQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFFOUIsY0FBYztRQUNkLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFFZCxjQUFjO1FBQ2QsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUVmLGNBQWM7UUFDZCxZQUFPLEdBQUcsRUFBRSxDQUFDO1FBRWIsY0FBYztRQUNkLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFFaEIsY0FBYztRQUNkLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFFZCxjQUFjO1FBQ2QsU0FBSSxHQUFjLEtBQUssQ0FBQztRQUV4QixjQUFjO1FBQ2QsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUVmLGNBQWM7UUFDZCxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRW5CLGNBQWM7UUFDZCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQVd0QixjQUFjO1FBQ04sK0NBQTBDLEdBQUcsRUFBRSxDQUFDO1FBV3hELGNBQWM7UUFDTix5QkFBb0IsR0FBRyxJQUFJLG1CQUFtQixFQUFFLENBQUM7UUFFekQsY0FBYztRQUNHLGdCQUFXLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVuRCxjQUFjO1FBQ0csd0JBQW1CLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQW9EM0QsQ0FBQztJQUVELGNBQWM7SUFDZCxRQUFRO1FBQ0osTUFBTSxNQUFNLEdBQUcsa0JBQWtCLENBQUM7UUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLE1BQU0sVUFBVSxrQkFBa0IsRUFBRSxFQUFFLENBQUM7UUFDMUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLE1BQU0sV0FBVyxrQkFBa0IsRUFBRSxFQUFFLENBQUM7UUFDNUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLE1BQU0sU0FBUyxrQkFBa0IsRUFBRSxFQUFFLENBQUM7UUFFeEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFFdkIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFjLEVBQUUsRUFBRTtnQkFDekUsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUNsQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzdCLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDYixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztTQUMzQjtJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksWUFBWSxJQUFJLE9BQU8sSUFBSSxpQkFBaUIsSUFBSSxPQUFPLEVBQUU7WUFDekQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUNqRDtJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFO1lBQzVCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDO1NBQ3JDO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsY0FBYztJQUVkLGFBQWEsQ0FBQyxLQUFvQjtRQUM5QixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUU7WUFDbEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMxQjtJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUs7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCwyQ0FBMkM7SUFDM0MsU0FBUyxDQUFDLEtBQW9CO1FBQzFCLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDUixPQUFPO1NBQ1Y7UUFFRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDLEVBQUU7WUFDbEQsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7Z0JBQzVCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDL0M7U0FDSjthQUFNLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFO1lBQzNDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNsQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSCxhQUFhLENBQUMsS0FBYTtRQUN2Qiw0REFBNEQ7UUFDNUQsNERBQTREO1FBQzVELFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQywwQ0FBMEMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBRXhCLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3pCO1FBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDN0MsTUFBTSxRQUFRLEdBQVcsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RDLElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDdkIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDM0IsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztTQUM3QjtRQUVELElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNqQixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQy9CLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLElBQUksSUFBSSxDQUFDLENBQUM7WUFFNUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDaEM7UUFFRCxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVyxDQUFDLEtBQWE7UUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDM0IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMxQjtRQUNELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILGNBQWMsQ0FBQyxLQUFhO1FBQ3hCLEtBQUssRUFBRSxjQUFjLEVBQUUsQ0FBQztRQUV4QixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUU5QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUV2QixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDaEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7U0FDN0I7UUFFRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILGtCQUFrQixDQUFDLGVBQStCO1FBQzlDLElBQUksQ0FBQyxnQkFBZ0I7WUFDakIsZUFBZTtnQkFDZixJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FDakIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEtBQUssZUFBZSxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsS0FBSyxLQUFLLGVBQWUsQ0FBQyxLQUFLLENBQ3JHLENBQUM7UUFFTixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxrQkFBa0I7UUFDZCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMscUJBQXFCLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDdEMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN2RSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDcEIsT0FBTztTQUNWO1FBRUQsaUJBQWlCO1FBQ2pCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1FBQzNELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUVqRSxrQ0FBa0M7UUFDbEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNqRyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRTFELDZDQUE2QztRQUM3QyxTQUFTLENBQWEsUUFBUSxFQUFFLE9BQU8sQ0FBQzthQUNuQyxJQUFJLENBQ0QsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDYixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBcUIsQ0FBQztZQUMzQyxPQUFPLENBQ0gsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUI7Z0JBQzVCLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO2dCQUMzRCxJQUFJLENBQUMsYUFBYSxDQUNyQixDQUFDO1FBQ04sQ0FBQyxDQUFDLEVBQ0YsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQzlCO2FBQ0EsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7WUFDM0MsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEtBQUssT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzNFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztRQUVQLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO0lBQzlCLENBQUM7SUFFRCxjQUFjO0lBQ2QsY0FBYztRQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELGNBQWM7SUFDZCxhQUFhO1FBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELGNBQWM7SUFDZCxhQUFhO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsY0FBYztJQUNkLFVBQVUsQ0FBQyxNQUFlO1FBQ3RCLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxNQUFNLEVBQUU7WUFDeEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7WUFFckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDbEM7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLG1CQUFtQixDQUFDLEtBQUssR0FBRyxJQUFJO1FBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDN0IsT0FBTztTQUNWO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3BDLElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2hCO1FBQ0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQUVELGNBQWM7SUFDZCxjQUFjO1FBQ1YsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUU5QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUUzQixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxjQUFjO0lBQ2QsNkJBQTZCO1FBQ3pCLE1BQU0sU0FBUyxHQUF3QjtZQUNuQztnQkFDSSxPQUFPLEVBQUUsT0FBTztnQkFDaEIsT0FBTyxFQUFFLFFBQVE7Z0JBQ2pCLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixRQUFRLEVBQUUsS0FBSzthQUNsQjtZQUNEO2dCQUNJLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixPQUFPLEVBQUUsS0FBSztnQkFDZCxRQUFRLEVBQUUsT0FBTztnQkFDakIsUUFBUSxFQUFFLFFBQVE7YUFDckI7U0FDSixDQUFDO1FBQ0YsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsUUFBUTthQUNqQyxRQUFRLEVBQUU7YUFDVixtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ3BDLGtCQUFrQixFQUFFO2FBQ3BCLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5QixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ25FLE9BQU8sSUFBSSxhQUFhLENBQUM7WUFDckIsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxhQUFhLEVBQUUsa0NBQWtDO1lBQ2pELEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxXQUFXO1NBQ25ELENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxjQUFjO0lBQ2QscUJBQXFCLENBQUMsVUFBc0M7UUFDeEQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hDLFVBQVU7YUFDTCxJQUFJLEVBQUU7YUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7YUFDbEUsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDaEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztRQUNQLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7O09BR0c7SUFDSyxxQkFBcUI7UUFDekIsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDOUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO2dCQUNoQyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksVUFBVSxFQUFFLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7b0JBQ2pHLEtBQUssRUFBRSxDQUFDO2lCQUNYO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxjQUFjO0lBQ04sS0FBSyxDQUFDLDRCQUE0QjtRQUN0QywrQ0FBK0M7UUFDL0MsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDckQsSUFBSSxFQUFFLHVCQUF1QixFQUFFLCtCQUErQixFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ3hFLElBQUksdUJBQXVCLEVBQUU7WUFDekIsdUJBQXVCLEdBQUcsZUFBZSxHQUFHLEdBQUcsR0FBRyx1QkFBdUIsQ0FBQztTQUM3RTtRQUNELElBQUksQ0FBQyx1QkFBdUIsSUFBSSxDQUFDLCtCQUErQixFQUFFO1lBQzlELE1BQU0sSUFBSSxHQUFHLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMsdUJBQXVCLEVBQUU7Z0JBQzFCLHVCQUF1QixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQ3ZELElBQUksRUFDSiw2Q0FBNkMsRUFDN0MsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQzdCLENBQUM7YUFDTDtZQUNELElBQUksQ0FBQywrQkFBK0IsRUFBRTtnQkFDbEMsK0JBQStCLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FDL0QsSUFBSSxFQUNKLHFEQUFxRCxDQUN4RCxDQUFDO2FBQ0w7U0FDSjtRQUNELElBQUksQ0FBQywwQ0FBMEM7WUFDM0MsdUJBQXVCLEdBQUcsQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0YsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7U0FDakY7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNOLEtBQUssQ0FBQyxnQkFBZ0I7UUFDMUIsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUM3QixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDaEUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTO1NBQ3pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxtQkFBbUIsQ0FDN0MsRUFBRSxrQkFBa0IsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLHNCQUFzQixFQUFFLEVBQ3BHLCtCQUErQixFQUMvQiwwQkFBMEIsRUFDMUIsSUFBSSxDQUFDLGlCQUFpQixFQUN0QixRQUFRLENBQ1gsQ0FBQztJQUNOLENBQUM7O2lIQXZvQlEsb0JBQW9CLHNNQTBSakIsUUFBUSxhQUNSLFdBQVc7cUdBM1JkLG9CQUFvQixtNEJBUmxCO1FBQ1AsK0JBQStCLEVBQUU7UUFDakM7WUFDSSxPQUFPLEVBQUUsNEJBQTRCO1lBQ3JDLFdBQVcsRUFBRSxvQkFBb0I7U0FDcEM7S0FDSix5akJBeVFhLDhCQUE4Qiw0RkMvV2hELGs0T0FrS0Esc3VqRUR0RmEsOEJBQThCLHdaQXlxQjlCLHFCQUFxQjsyRkE3b0JyQixvQkFBb0I7a0JBZGhDLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1AsK0JBQStCLEVBQUU7d0JBQ2pDOzRCQUNJLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFdBQVcsc0JBQXNCO3lCQUNwQztxQkFDSjs7MEJBMlJJLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsTUFBTTsyQkFBQyxXQUFXO21KQXJSdkIsWUFBWTtzQkFEWCxLQUFLO2dCQUtGLFVBQVU7c0JBRGIsS0FBSztnQkFnQk4sV0FBVztzQkFEVixLQUFLO2dCQUtOLE1BQU07c0JBREwsS0FBSztnQkFLTixZQUFZO3NCQURYLEtBQUs7Z0JBS04sY0FBYztzQkFEYixLQUFLO2dCQUtOLGFBQWE7c0JBRFosS0FBSztnQkFLRixXQUFXO3NCQURkLEtBQUs7Z0JBcUJGLFVBQVU7c0JBRGIsS0FBSztnQkFZTixTQUFTO3NCQURSLEtBQUs7Z0JBS0YsVUFBVTtzQkFEYixLQUFLO2dCQVdOLGVBQWU7c0JBRGQsS0FBSztnQkFLTixhQUFhO3NCQURaLEtBQUs7Z0JBS04saUJBQWlCO3NCQURoQixLQUFLO2dCQUtOLFNBQVM7c0JBRFIsS0FBSztnQkFRTixTQUFTO3NCQURSLEtBQUs7Z0JBUU4sY0FBYztzQkFEYixLQUFLO2dCQVFOLHVCQUF1QjtzQkFEdEIsS0FBSztnQkFTTiwrQkFBK0I7c0JBRDlCLEtBQUs7Z0JBS04saUJBQWlCO3NCQURoQixLQUFLO2dCQUtOLFdBQVc7c0JBRFYsTUFBTTtnQkFLUCxZQUFZO3NCQURYLE1BQU07Z0JBS1AsWUFBWTtzQkFEWCxNQUFNO2dCQUtQLFlBQVk7c0JBRFgsTUFBTTtnQkE4RlAsZ0JBQWdCO3NCQURmLFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUtoRCxVQUFVO3NCQURULFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFLMUMsVUFBVTtzQkFEVCxTQUFTO3VCQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBSzFDLGtCQUFrQjtzQkFEakIsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBSy9CLHNCQUFzQjtzQkFEckIsU0FBUzt1QkFBQyx3QkFBd0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBS3RELGVBQWU7c0JBRGQsWUFBWTt1QkFBQyw4QkFBOEI7Z0JBcUU1QyxhQUFhO3NCQURaLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDOztBQWtVdkMsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixjQUFjO0lBQ2QsU0FBUyxDQUFDLE1BQXVCLEVBQUUsS0FBYSxFQUFFLE1BQU0sR0FBRyxLQUFLO1FBQzVELElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxNQUFNLEdBQUcsRUFBRSxDQUFDO1NBQ2Y7UUFDRCxJQUFJLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNsQixPQUFPLE1BQU0sQ0FBQztTQUNqQjtRQUNELE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNsRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0RixDQUFDOztrSEFYUSxxQkFBcUI7Z0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUhqQyxJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxtQkFBbUI7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3RvcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFBpcGUsXG4gICAgUGlwZVRyYW5zZm9ybSxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBET1dOX0FSUk9XLCBFU0NBUEUsIFVQX0FSUk9XIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IENvbm5lY3RlZFBvc2l0aW9uLCBPdmVybGF5LCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgRm9jdXNhYmxlT3B0aW9uLCBGb2N1c0tleU1hbmFnZXIsIExpdmVBbm5vdW5jZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgZnJvbUV2ZW50LCBpc09ic2VydmFibGUsIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsIEtleVV0aWwsIFJ0bFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFBvcG92ZXJDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcG9wb3Zlcic7XG5pbXBvcnQgeyBNb2JpbGVNb2RlQ29uZmlnIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL21vYmlsZS1tb2RlJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQsIFNlYXJjaEZpZWxkRGF0YVNvdXJjZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7XG4gICAgU0VBUkNIX0ZJRUxEX0NPTVBPTkVOVCxcbiAgICBTZWFyY2hGaWVsZE1vYmlsZUludGVyZmFjZVxufSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkLW1vYmlsZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2VhcmNoRmllbGRNb2JpbGVDb21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkL3NlYXJjaC1maWVsZC1tb2JpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IFBsYXRmb3JtU2VhcmNoRmllbGRNb2JpbGVNb2R1bGUgfSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkLW1vYmlsZS5tb2R1bGUnO1xuaW1wb3J0IHsgRmRMYW5ndWFnZSwgRkRfTEFOR1VBR0UsIFRyYW5zbGF0aW9uUmVzb2x2ZXIgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2kxOG4nO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlPYnNlcnZlciwgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVycyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jb250ZW50LWRlbnNpdHknO1xuaW1wb3J0IHsgRkRfU0hFTExCQVJfU0VBUkNIX0NPTVBPTkVOVCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGVsbGJhcic7XG5pbXBvcnQgeyBTZWFyY2hDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcbmltcG9ydCBlcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaElucHV0IHtcbiAgICB0ZXh0OiBzdHJpbmc7XG4gICAgY2F0ZWdvcnk6IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VnZ2VzdGlvbkl0ZW0ge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgaXNIaXN0b3JpY2FsPzogc3RyaW5nO1xuICAgIGRhdGE/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFsdWVMYWJlbEl0ZW0ge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZmRwU2VhcmNoRmllbGRTdWdnZXN0aW9uXScsXG4gICAgaG9zdDoge1xuICAgICAgICB0YWJpbmRleDogJy0xJyxcbiAgICAgICAgcm9sZTogJ2xpc3QtaXRlbSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEZpZWxkU3VnZ2VzdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIEZvY3VzYWJsZU9wdGlvbiB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYpIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbn1cblxubGV0IHNlYXJjaEZpZWxkSWRDb3VudCA9IDA7XG5cbnR5cGUgQXBwZWFyYW5jZSA9IFNlYXJjaENvbXBvbmVudFsnYXBwZWFyYW5jZSddIHwgdW5kZWZpbmVkO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1zZWFyY2gtZmllbGQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2gtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NlYXJjaC1maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIGNvbnRlbnREZW5zaXR5T2JzZXJ2ZXJQcm92aWRlcnMoKSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRkRfU0hFTExCQVJfU0VBUkNIX0NPTVBPTkVOVCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBTZWFyY2hGaWVsZENvbXBvbmVudFxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hGaWVsZENvbXBvbmVudFxuICAgIGV4dGVuZHMgQmFzZUNvbXBvbmVudFxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgU2VhcmNoRmllbGRNb2JpbGVJbnRlcmZhY2UsIFNlYXJjaENvbXBvbmVudFxue1xuICAgIC8qKiBUeXBlIG9mIGNvbXBvbmVudCB1c2VkIHRvIHJlbmRlciB0aGUgY2F0ZWdvcmllcyBkcm9wZG93bi4gKi9cbiAgICBASW5wdXQoKVxuICAgIGNhdGVnb3J5TW9kZTogJ21lbnUnIHwgJ3NlbGVjdCcgPSAnbWVudSc7XG5cbiAgICAvKiogQWRkaXRpb25hbCBhcHBlYXJhbmNlIGNvbmZpZ3VyYXRpb24uICovXG4gICAgQElucHV0KClcbiAgICBzZXQgYXBwZWFyYW5jZSh2YWx1ZTogQXBwZWFyYW5jZSkge1xuICAgICAgICBpZiAoZXF1YWwodmFsdWUsIHRoaXMuYXBwZWFyYW5jZSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2FwcGVhcmFuY2UgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIGdldCBhcHBlYXJhbmNlKCk6IEFwcGVhcmFuY2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXBwZWFyYW5jZTtcbiAgICB9XG5cbiAgICAvKiogUGxhY2UgaG9sZGVyIHRleHQgZm9yIHNlYXJjaCBpbnB1dCBmaWVsZC4gKi9cbiAgICBASW5wdXQoKVxuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG5cbiAgICAvKiogU2V0IE1vYmlsZSBNb2RlICovXG4gICAgQElucHV0KClcbiAgICBtb2JpbGU6IGJvb2xlYW47XG5cbiAgICAvKiogU2VhcmNoIEZpZWxkIE1vYmlsZSBjb25maWd1cmF0aW9uICovXG4gICAgQElucHV0KClcbiAgICBtb2JpbGVDb25maWc6IE1vYmlsZU1vZGVDb25maWc7XG5cbiAgICAvKiogV2hldGhlciBkaXNwbGF5IFJlZnJlc2ggYnV0dG9uICovXG4gICAgQElucHV0KClcbiAgICBkaXNhYmxlUmVmcmVzaCA9IGZhbHNlO1xuXG4gICAgLyoqIFdoZXRoZXIgZGlzcGxheSBzZWFyY2ggYnV0dG9uICovXG4gICAgQElucHV0KClcbiAgICBkaXNhYmxlU2VhcmNoID0gZmFsc2U7XG5cbiAgICAvKiogTGlzdCBvZiBzdHJpbmcgdmFsdWVzIHRvIHBvcHVsYXRlIHN1Z2dlc3Rpb24gZHJvcGRvd24gc2VsZWN0aW9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHN1Z2dlc3Rpb25zKHZhbHVlOiBTdWdnZXN0aW9uSXRlbVtdIHwgT2JzZXJ2YWJsZTxTdWdnZXN0aW9uSXRlbVtdPikge1xuICAgICAgICB0aGlzLl9zdWdnZXN0aW9ucyA9IHZhbHVlO1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIC8vIGNvbnZlcnQgc3VnZ2VzdGlvbnMgdG8gYW4gYXJyYXkgb2Ygc3RyaW5nIGZvciBcImRyb3Bkb3duIHZhbHVlc1wiXG4gICAgICAgICAgICBjb25zdCBkcm9wZG93blZhbHVlcyA9IHZhbHVlLm1hcCgoc3VnZ2VzdGlvbjogU3VnZ2VzdGlvbkl0ZW0pID0+IHN1Z2dlc3Rpb24udmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5fZHJvcGRvd25WYWx1ZXMkID0gb2YoZHJvcGRvd25WYWx1ZXMpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzT2JzZXJ2YWJsZSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuX2Ryb3Bkb3duVmFsdWVzJCA9IHZhbHVlLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChzdWdnZXN0aW9uczogU3VnZ2VzdGlvbkl0ZW1bXSkgPT4gc3VnZ2VzdGlvbnMubWFwKChzdWdnZXN0aW9uKSA9PiBzdWdnZXN0aW9uLnZhbHVlKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9kcm9wZG93blZhbHVlcyQgPSBvZihbXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IHN1Z2dlc3Rpb25zKCk6IFN1Z2dlc3Rpb25JdGVtW10gfCBPYnNlcnZhYmxlPFN1Z2dlc3Rpb25JdGVtW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N1Z2dlc3Rpb25zO1xuICAgIH1cblxuICAgIC8qKiBEYXRhc291cmNlIGZvciBzdWdnZXN0aW9uIGxpc3QgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBkYXRhU291cmNlKHZhbHVlOiBTZWFyY2hGaWVsZERhdGFTb3VyY2U8YW55Pikge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX2luaXRpYWxpemVEYXRhU291cmNlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBnZXQgZGF0YVNvdXJjZSgpOiBTZWFyY2hGaWVsZERhdGFTb3VyY2U8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRhU291cmNlO1xuICAgIH1cblxuICAgIC8qKiBJbml0aWFsIGlucHV0IHRleHQuICovXG4gICAgQElucHV0KClcbiAgICBpbnB1dFRleHQ6IHN0cmluZztcblxuICAgIC8qKiBMaXN0IG9mIGNhdGVnb3JpZXMuICovXG4gICAgQElucHV0KClcbiAgICBzZXQgY2F0ZWdvcmllcyh2YWx1ZTogVmFsdWVMYWJlbEl0ZW1bXSkge1xuICAgICAgICB0aGlzLl9jYXRlZ29yaWVzID0gdmFsdWU7XG4gICAgICAgIHRoaXMuX3Nob3dDYXRlZ29yeURyb3Bkb3duID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiYgdmFsdWUubGVuZ3RoID4gMDtcbiAgICB9XG4gICAgZ2V0IGNhdGVnb3JpZXMoKTogVmFsdWVMYWJlbEl0ZW1bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jYXRlZ29yaWVzO1xuICAgIH1cblxuICAgIC8qKiBDdXJyZW50IGNhdGVnb3J5LCB2YWx1ZSBzaG91bGQgYmUgcHJlc2VudCBpbiBjYXRlZ29yaWVzIGFycmF5ICovXG4gICAgQElucHV0KClcbiAgICBjdXJyZW50Q2F0ZWdvcnk6IFZhbHVlTGFiZWxJdGVtO1xuXG4gICAgLyoqIFNldCBsYWJlbCBmb3IgY2F0ZWdvcnkgZHJvcGRvd24gYnV0dG9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgY2F0ZWdvcnlMYWJlbCA9ICdDYXRlZ29yeSc7XG5cbiAgICAvKiogSGlkZSBkaXNwbGF5IG9mIGNhdGVnb3J5IGxhYmVsICovXG4gICAgQElucHV0KClcbiAgICBoaWRlQ2F0ZWdvcnlMYWJlbCA9IGZhbHNlO1xuXG4gICAgLyoqIFRvZ2dsZSBcImxvYWRpbmdcIiBtb2RlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgaXNMb2FkaW5nID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBBUklBIGxhYmVsIHRvIHNwZWNpZnkgd2hhdCB0aGUgc2VhcmNoIGZpZWxkIGlzXG4gICAgICogTm90IHNob3duIGluIHRoZSBVSSwgb25seSB2aXNpYmxlIGJ5IHRoZSBzY3JlZW4tcmVhZGVycy5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFMYWJlbDogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKlxuICAgICAqIElkIG9mIGVsZW1lbnRzIChzZXBhcmF0ZWQgYnkgc3BhY2UpIGZvciBzZXR0aW5nIGFyaWEtbGFiZWxsZWRieSBmb3Igc2VhcmNoIGlucHV0XG4gICAgICogTm90IHNob3duIGluIHRoZSBVSSwgb25seSB2aXNpYmxlIGJ5IHRoZSBzY3JlZW4tcmVhZGVycy5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFMYWJlbGxlZGJ5OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCB1c2UgaTE4biBjYXBhYmlsaXRpZXMgaW5zdGVhZFxuICAgICAqIE1lc3NhZ2UgYW5ub3VuY2VkIGJ5IHNjcmVlbiByZWFkZXIsIHdoZW4gc2VhcmNoIHN1Z2dlc3Rpb25zIG9wZW5zLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VhcmNoU3VnZ2VzdGlvbk1lc3NhZ2U6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHVzZSBpMThuIGNhcGFiaWxpdGllcyBpbnN0ZWFkXG4gICAgICogU2Vjb25kIHBhcnQgb2YgbWVzc2FnZSBmb3Igc2VhcmNoIHN1Z2dlc3Rpb24uXG4gICAgICogZGlyZWN0aW9uIGZvciBuYXZpZ2F0aW5nIHRoZSBzdWdnZXN0aW9uLiBUaGlzIGlzIG5vdCBuZWNlc3NyeSBpbiBjYXNlIG9mIDAgc3VnZ2VzdGlvbi5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNlYXJjaFN1Z2dlc3Rpb25OYXZpZ2F0ZU1lc3NhZ2U6IHN0cmluZztcblxuICAgIC8qKiBXaGV0aGVyIHRvIGFsd2F5cyBzaG93IHNlYXJjaCBidXR0b24uICovXG4gICAgQElucHV0KClcbiAgICBmb3JjZVNlYXJjaEJ1dHRvbiA9IGZhbHNlO1xuXG4gICAgLyoqIElucHV0IGNoYW5nZSBldmVudC4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBpbnB1dENoYW5nZTogRXZlbnRFbWl0dGVyPFNlYXJjaElucHV0PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKiBTZWFyY2ggc3VibWl0IGV2ZW50LiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHNlYXJjaFN1Ym1pdDogRXZlbnRFbWl0dGVyPFNlYXJjaElucHV0PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKiBDYW5jZWwgc2VhcmNoIGV2ZW50LiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGNhbmNlbFNlYXJjaDogRXZlbnRFbWl0dGVyPFNlYXJjaElucHV0PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKiBPcGVuIG1vYmlsZSBtb2RlIGV2ZW50LiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGlzT3BlbkNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gRm9jdXMgc3RhdGUgKi9cbiAgICBnZXQgaXNGb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZG9jdW1lbnQ/LmFjdGl2ZUVsZW1lbnQgPT09IHRoaXMuaW5wdXRGaWVsZD8ubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPYnNlcnZhYmxlIGxpc3Qgb2Ygc3RyaW5nIHZhbHVlcyB0YWtlbiBmcm9tIGBzdWdnZXN0aW9uc2AgdG8gcG9wdWxhdGUgZHJvcGRvd24gbWVudS5cbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgX2Ryb3Bkb3duVmFsdWVzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXT4gPSBvZihbXSk7XG5cbiAgICAvKipcbiAgICAgKiBDdXJyZW50bHkgc2V0IGNhdGVnb3J5LlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBfY3VycmVudENhdGVnb3J5PzogVmFsdWVMYWJlbEl0ZW07XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIG9yIG5vdCB0byBzaG93IHR5cGVhaGVhZCBkcm9wZG93bi5cbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgX3Nob3dEcm9wZG93biA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciBvciBub3QgdG8gc2hvdyBjYXRlZ29yeSBkcm9wZG93bi4gVGhpcyBpcyBkZXBlbmRlbnQgb24gbGVuZ3RoIG9mIGBjYXRlZ29yeVZhbHVlc2AgcHJvcGVydHkuXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIF9zaG93Q2F0ZWdvcnlEcm9wZG93biA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfaW5wdXRJZCA9ICcnO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfc3VibWl0SWQgPSAnJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX21lbnVJZCA9ICcnO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfcmVmcmVzaElkID0gJyc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jbGVhcklkID0gJyc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9kaXI6IERpcmVjdGlvbiA9ICdsdHInO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBpc09wZW4gPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2lzUmVmcmVzaCA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfaXNTZWFyY2hEb25lID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3N1Z2dlc3Rpb25zOiBTdWdnZXN0aW9uSXRlbVtdIHwgT2JzZXJ2YWJsZTxTdWdnZXN0aW9uSXRlbVtdPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZGF0YVNvdXJjZTogU2VhcmNoRmllbGREYXRhU291cmNlPGFueT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NhdGVnb3JpZXM6IFZhbHVlTGFiZWxJdGVtW107XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2N1cnJlbnRTZWFyY2hTdWdnZXN0aW9uQW5ub3VjZW1lbnRNZXNzYWdlID0gJyc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3N1Z2dlc3Rpb25PdmVybGF5UmVmOiBPdmVybGF5UmVmIHwgbnVsbDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3VnZ2VzdGlvblBvcnRhbDogVGVtcGxhdGVQb3J0YWw7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3N1Z2dlc3Rpb25rZXlNYW5hZ2VyOiBGb2N1c0tleU1hbmFnZXI8U2VhcmNoRmllbGRTdWdnZXN0aW9uRGlyZWN0aXZlPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRpb25SZXNvbHZlciA9IG5ldyBUcmFuc2xhdGlvblJlc29sdmVyKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX29uRGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhU291cmNlQ2hhbmdlZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hcHBlYXJhbmNlOiBBcHBlYXJhbmNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdjYXRlZ29yeURyb3Bkb3duJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gICAgY2F0ZWdvcnlEcm9wZG93bjogUG9wb3ZlckNvbXBvbmVudDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZCgnaW5wdXRHcm91cCcsIHsgc3RhdGljOiBmYWxzZSB9KVxuICAgIGlucHV0R3JvdXA6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdpbnB1dEZpZWxkJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gICAgaW5wdXRGaWVsZDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2lucHV0RmllbGRUZW1wbGF0ZScpXG4gICAgaW5wdXRGaWVsZFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdzdWdnZXN0aW9uTWVudVRlbXBsYXRlJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gICAgc3VnZ2VzdGlvbk1lbnVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZHJlbihTZWFyY2hGaWVsZFN1Z2dlc3Rpb25EaXJlY3RpdmUpXG4gICAgc3VnZ2VzdGlvbkl0ZW1zOiBRdWVyeUxpc3Q8U2VhcmNoRmllbGRTdWdnZXN0aW9uRGlyZWN0aXZlPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IHNlYXJjaEZpZWxkVmFsdWUoKTogU2VhcmNoSW5wdXQge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdGV4dDogdGhpcy5pbnB1dFRleHQsXG4gICAgICAgICAgICBjYXRlZ29yeTogdGhpcy5fY3VycmVudENhdGVnb3J5Py52YWx1ZSB8fCBudWxsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9vdmVybGF5OiBPdmVybGF5LFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByb3RlY3RlZCByZWFkb25seSBfY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IF9ydGw6IFJ0bFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgcmVhZG9ubHkgX2RvY3VtZW50OiBEb2N1bWVudCxcbiAgICAgICAgQEluamVjdChGRF9MQU5HVUFHRSkgcHJpdmF0ZSByZWFkb25seSBfbGFuZ3VhZ2UkOiBPYnNlcnZhYmxlPEZkTGFuZ3VhZ2U+LFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9saXZlQW5ub3VuY2VyOiBMaXZlQW5ub3VuY2VyLFxuICAgICAgICByZWFkb25seSBfZHluYW1pY0NvbXBvbmVudFNlcnZpY2U6IER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLFxuICAgICAgICByZWFkb25seSBjb250ZW50RGVuc2l0eU9ic2VydmVyOiBDb250ZW50RGVuc2l0eU9ic2VydmVyXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9jZCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgYmFzZUlkID0gJ2ZkcC1zZWFyY2gtZmllbGQnO1xuICAgICAgICB0aGlzLl9pbnB1dElkID0gYCR7YmFzZUlkfS1pbnB1dC0ke3NlYXJjaEZpZWxkSWRDb3VudCsrfWA7XG4gICAgICAgIHRoaXMuX3N1Ym1pdElkID0gYCR7YmFzZUlkfS1zdWJtaXQtJHtzZWFyY2hGaWVsZElkQ291bnQrK31gO1xuICAgICAgICB0aGlzLl9tZW51SWQgPSBgJHtiYXNlSWR9LW1lbnUtJHtzZWFyY2hGaWVsZElkQ291bnQrK31gO1xuXG4gICAgICAgIHRoaXMuX2lzUmVmcmVzaCA9IHRydWU7XG5cbiAgICAgICAgaWYgKHRoaXMuX3J0bCkge1xuICAgICAgICAgICAgdGhpcy5fcnRsLnJ0bC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChpc1J0bDogYm9vbGVhbikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2RpciA9IGlzUnRsID8gJ3J0bCcgOiAnbHRyJztcbiAgICAgICAgICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLm1vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy5fc2V0VXBNb2JpbGVNb2RlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKCdjYXRlZ29yaWVzJyBpbiBjaGFuZ2VzIHx8ICdjdXJyZW50Q2F0ZWdvcnknIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0Q3VycmVudENhdGVnb3J5KHRoaXMuY3VycmVudENhdGVnb3J5KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9zdWdnZXN0aW9uT3ZlcmxheVJlZikge1xuICAgICAgICAgICAgdGhpcy5fc3VnZ2VzdGlvbk92ZXJsYXlSZWYuZGlzcG9zZSgpO1xuICAgICAgICAgICAgdGhpcy5fc3VnZ2VzdGlvbk92ZXJsYXlSZWYgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3N1Z2dlc3Rpb25rZXlNYW5hZ2VyPy5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMuX29uRGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLl9vbkRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgICBoYW5kbGVLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1vYmlsZSAmJiB0aGlzLmlzT3BlbiAmJiBLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW0VTQ0FQRV0pKSB7XG4gICAgICAgICAgICB0aGlzLnNob3dEaWFsb2coZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRm9jdXNlcyB0aGUgc2VhcmNoIGlucHV0IGZpZWxkLlxuICAgICAqL1xuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlucHV0RmllbGQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIENhcHR1cmluZyBvbktleWRvd24gb2YgaW5wdXQgZWxlbWVudCAqL1xuICAgIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIWV2ZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtVUF9BUlJPVywgRE9XTl9BUlJPV10pKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fc3VnZ2VzdGlvbmtleU1hbmFnZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zdWdnZXN0aW9ua2V5TWFuYWdlci5vbktleWRvd24oZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbRVNDQVBFXSkpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VTdWdnZXN0aW9uTWVudSh0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhcHR1cmluZyB2YWx1ZSBjaGFuZ2UgaW4gaW5wdXQgdGV4dCBmaWVsZCBvZiBjb21ib2JveC5cbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgb25WYWx1ZUNoYW5nZShldmVudDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIC8vIHdoZW4gc2VhcmNoIHJlc3VsdCBub3QgY2hhbmdlZCBidXQgaW5wdXQgdGV4dCBpcyBjaGFuZ2VkLlxuICAgICAgICAvLyBhZ2FpbiBuZWVkIHRvIGFubm91bmNlIHRoZSByZXN1bHQsIHNvIGNsZWFyIHRoaXMgbWVzc2FnZS5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiAodGhpcy5fY3VycmVudFNlYXJjaFN1Z2dlc3Rpb25Bbm5vdWNlbWVudE1lc3NhZ2UgPSAnJykpO1xuICAgICAgICB0aGlzLl9pc1NlYXJjaERvbmUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5faXNSZWZyZXNoID0gZmFsc2U7XG5cbiAgICAgICAgaWYgKHRoaXMubW9iaWxlICYmICF0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgdGhpcy5vcGVuTW9iaWxlTW9kZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pbnB1dENoYW5nZS5lbWl0KHRoaXMuc2VhcmNoRmllbGRWYWx1ZSk7XG4gICAgICAgIGNvbnN0IGlucHV0U3RyOiBzdHJpbmcgPSBldmVudC50cmltKCk7XG4gICAgICAgIGlmIChpbnB1dFN0ci5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VTdWdnZXN0aW9uTWVudSgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLm1vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy5vcGVuU3VnZ2VzdGlvbk1lbnUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmRhdGFTb3VyY2UpIHtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gbmV3IE1hcCgpO1xuICAgICAgICAgICAgbWF0Y2guc2V0KCdrZXl3b3JkJywgaW5wdXRTdHIpO1xuICAgICAgICAgICAgbWF0Y2guc2V0KCdjYXRlZ29yeScsIHRoaXMuX2N1cnJlbnRDYXRlZ29yeT8udmFsdWUgfHwgbnVsbCk7XG5cbiAgICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZS5tYXRjaChtYXRjaCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl91cGRhdGVTZWFyY2hBbm5vdWNlbWVudFRleHQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYXB0dXJpbmcgaXRlbSBzZWxlY3Rpb24gZnJvbSBkcm9wZG93biBtZW51IG9mIGNvbWJvYm94LlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBvbkl0ZW1DbGljayhldmVudDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRUZXh0ID0gZXZlbnQ7XG4gICAgICAgIHRoaXMuaW5wdXRDaGFuZ2UuZW1pdCh0aGlzLnNlYXJjaEZpZWxkVmFsdWUpO1xuICAgICAgICB0aGlzLnNlYXJjaFN1Ym1pdC5lbWl0KHRoaXMuc2VhcmNoRmllbGRWYWx1ZSk7XG4gICAgICAgIHRoaXMuY2xvc2VTdWdnZXN0aW9uTWVudSgpO1xuICAgICAgICBpZiAodGhpcy5tb2JpbGUpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd0RpYWxvZyhmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5faXNTZWFyY2hEb25lID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGxiYWNrIGZ1bmN0aW9uIHdoaWNoIGdldHMgZXhlY3V0ZWQgb24ga2V5Ym9hcmQgZW50ZXIgb2YgaW5wdXQgdGV4dCBmaWVsZC5cbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgb25TZWFyY2hTdWJtaXQoZXZlbnQ/OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldmVudD8ucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICBpZiAodGhpcy5pc0xvYWRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMuY2FuY2VsU2VhcmNoLmVtaXQoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VhcmNoU3VibWl0LmVtaXQodGhpcy5zZWFyY2hGaWVsZFZhbHVlKTtcblxuICAgICAgICB0aGlzLl9pc1JlZnJlc2ggPSB0cnVlO1xuXG4gICAgICAgIGlmICh0aGlzLmlucHV0VGV4dCkge1xuICAgICAgICAgICAgdGhpcy5faXNTZWFyY2hEb25lID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2xvc2VTdWdnZXN0aW9uTWVudShmYWxzZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyBjdXJyZW50IGNhdGVnb3J5LlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBzZXRDdXJyZW50Q2F0ZWdvcnkoY3VycmVudENhdGVnb3J5OiBWYWx1ZUxhYmVsSXRlbSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jdXJyZW50Q2F0ZWdvcnkgPVxuICAgICAgICAgICAgY3VycmVudENhdGVnb3J5ICYmXG4gICAgICAgICAgICB0aGlzLmNhdGVnb3JpZXM/LmZpbmQoXG4gICAgICAgICAgICAgICAgKGNhdGVnb3J5KSA9PiBjYXRlZ29yeS5sYWJlbCA9PT0gY3VycmVudENhdGVnb3J5LmxhYmVsICYmIGNhdGVnb3J5LnZhbHVlID09PSBjdXJyZW50Q2F0ZWdvcnkudmFsdWVcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5pbnB1dENoYW5nZS5lbWl0KHRoaXMuc2VhcmNoRmllbGRWYWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3BlbiBzdWdnZXN0aW9uIG1lbnVcbiAgICAgKi9cbiAgICBvcGVuU3VnZ2VzdGlvbk1lbnUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2xvc2VTdWdnZXN0aW9uTWVudSgpO1xuICAgICAgICB0aGlzLl9zdWdnZXN0aW9ua2V5TWFuYWdlcj8uZGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9zdWdnZXN0aW9ua2V5TWFuYWdlciA9IG5ldyBGb2N1c0tleU1hbmFnZXIodGhpcy5zdWdnZXN0aW9uSXRlbXMpO1xuICAgICAgICBpZiAodGhpcy5fc2hvd0Ryb3Bkb3duKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBjcmVhdGUgb3ZlcmxheVxuICAgICAgICBjb25zdCBvdmVybGF5Q29uZmlnID0gdGhpcy5fY3JlYXRlU3VnZ2V0aW9uT3ZlcmxheUNvbmZpZygpO1xuICAgICAgICB0aGlzLl9zdWdnZXN0aW9uT3ZlcmxheVJlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKG92ZXJsYXlDb25maWcpO1xuXG4gICAgICAgIC8vIGdldCBwb3J0YWwgdG8gYXR0YWNoIHRvIG92ZXJsYXlcbiAgICAgICAgdGhpcy5fc3VnZ2VzdGlvblBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLnN1Z2dlc3Rpb25NZW51VGVtcGxhdGUsIHRoaXMuX3ZpZXdDb250YWluZXJSZWYpO1xuICAgICAgICB0aGlzLl9zdWdnZXN0aW9uT3ZlcmxheVJlZi5hdHRhY2godGhpcy5fc3VnZ2VzdGlvblBvcnRhbCk7XG5cbiAgICAgICAgLy8gYWRkIHN1YnNjcmlwdGlvbiB0byBjYXB0dXJlIG91dHNpZGUgY2xpY2tzXG4gICAgICAgIGZyb21FdmVudDxNb3VzZUV2ZW50Pihkb2N1bWVudCwgJ2NsaWNrJylcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGZpbHRlcigoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgISF0aGlzLl9zdWdnZXN0aW9uT3ZlcmxheVJlZiAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIXRoaXMuX3N1Z2dlc3Rpb25PdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LmNvbnRhaW5zKHRhcmdldCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3Nob3dEcm9wZG93blxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICAgICAgICBjb25zdCBmb2N1cyA9ICEodGFyZ2V0LnRhZ05hbWUgPT09ICdJTlBVVCcgJiYgdGhpcy5faW5wdXRJZCAhPT0gdGFyZ2V0LmlkKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNsb3NlU3VnZ2VzdGlvbk1lbnUoZm9jdXMpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fc2hvd0Ryb3Bkb3duID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG9wZW5Nb2JpbGVNb2RlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNob3dEaWFsb2codHJ1ZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBkaWFsb2dBcHByb3ZlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uSXRlbUNsaWNrKHRoaXMuaW5wdXRUZXh0KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGRpYWxvZ0Rpc21pc3MoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2hvd0RpYWxvZyhmYWxzZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzaG93RGlhbG9nKGlzT3BlbjogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc09wZW4gIT09IGlzT3Blbikge1xuICAgICAgICAgICAgdGhpcy5pc09wZW4gPSBpc09wZW47XG5cbiAgICAgICAgICAgIHRoaXMuaXNPcGVuQ2hhbmdlLmVtaXQoaXNPcGVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY2xvc2VTdWdnZXN0aW9uTWVudShmb2N1cyA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9zdWdnZXN0aW9uT3ZlcmxheVJlZikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3N1Z2dlc3Rpb25PdmVybGF5UmVmLmRldGFjaCgpO1xuICAgICAgICBpZiAoZm9jdXMpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zaG93RHJvcGRvd24gPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNsZWFyVGV4dElucHV0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlucHV0VGV4dCA9ICcnO1xuICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMuaW5wdXRDaGFuZ2UuZW1pdCh0aGlzLnNlYXJjaEZpZWxkVmFsdWUpO1xuICAgICAgICB0aGlzLmNhbmNlbFNlYXJjaC5lbWl0KHRoaXMuc2VhcmNoRmllbGRWYWx1ZSk7XG5cbiAgICAgICAgdGhpcy5faXNSZWZyZXNoID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5faXNTZWFyY2hEb25lID0gZmFsc2U7XG5cbiAgICAgICAgdGhpcy5jbG9zZVN1Z2dlc3Rpb25NZW51KGZhbHNlKTtcbiAgICAgICAgdGhpcy5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2NyZWF0ZVN1Z2dldGlvbk92ZXJsYXlDb25maWcoKTogT3ZlcmxheUNvbmZpZyB7XG4gICAgICAgIGNvbnN0IHBvc2l0aW9uczogQ29ubmVjdGVkUG9zaXRpb25bXSA9IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgIG9yaWdpblk6ICdib3R0b20nLFxuICAgICAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJ1xuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheVxuICAgICAgICAgICAgLnBvc2l0aW9uKClcbiAgICAgICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMuaW5wdXRHcm91cClcbiAgICAgICAgICAgIC53aXRoTG9ja2VkUG9zaXRpb24oKVxuICAgICAgICAgICAgLndpdGhQb3NpdGlvbnMocG9zaXRpb25zKTtcbiAgICAgICAgY29uc3Qgc2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpO1xuICAgICAgICByZXR1cm4gbmV3IE92ZXJsYXlDb25maWcoe1xuICAgICAgICAgICAgcG9zaXRpb25TdHJhdGVneSxcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5LFxuICAgICAgICAgICAgYmFja2Ryb3BDbGFzczogJ2Nkay1vdmVybGF5LXRyYW5zcGFyZW50LWJhY2tkcm9wJyxcbiAgICAgICAgICAgIHdpZHRoOiB0aGlzLmlucHV0R3JvdXAubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pbml0aWFsaXplRGF0YVNvdXJjZShkYXRhU291cmNlOiBTZWFyY2hGaWVsZERhdGFTb3VyY2U8YW55Pik6IHZvaWQge1xuICAgICAgICB0aGlzLl9kYXRhU291cmNlQ2hhbmdlZCQubmV4dCgpO1xuICAgICAgICBkYXRhU291cmNlXG4gICAgICAgICAgICAub3BlbigpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwobWVyZ2UodGhpcy5fb25EZXN0cm95JCwgdGhpcy5fZGF0YVNvdXJjZUNoYW5nZWQkKSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZHJvcGRvd25WYWx1ZXMkID0gb2YoZGF0YSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fZGF0YVNvdXJjZSA9IGRhdGFTb3VyY2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlbiByZXR1cm4gY291bnQgZm9yIG1hdGNoaW5nIHN1Z2dlc3Rpb24gd2l0aCBpbnB1dCB0ZXh0XG4gICAgICogQHJldHVybnMgbnVtYmVyXG4gICAgICovXG4gICAgcHJpdmF0ZSBfZ2V0U3VnZ2VzdGlvbnNMZW5ndGgoKTogbnVtYmVyIHtcbiAgICAgICAgbGV0IGNvdW50ID0gMDtcbiAgICAgICAgdGhpcy5fZHJvcGRvd25WYWx1ZXMkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKHN1Z2dlc3Rpb25zKSA9PiB7XG4gICAgICAgICAgICBzdWdnZXN0aW9ucz8uZm9yRWFjaCgoc3VnZ2VzdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmlucHV0VGV4dCAmJiBzdWdnZXN0aW9uPy50b0xvd2VyQ2FzZSgpLmluZGV4T2YodGhpcy5pbnB1dFRleHQ/LnRyaW0oKT8udG9Mb3dlckNhc2UoKSkgPiAtMSkge1xuICAgICAgICAgICAgICAgICAgICBjb3VudCsrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gY291bnQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGFzeW5jIF91cGRhdGVTZWFyY2hBbm5vdWNlbWVudFRleHQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIC8vIGNyZWF0ZSBzZWFyY2ggc3VnZ2VzdGlvbiBtZXNzYWdlIHdpdGggY291bnQuXG4gICAgICAgIGNvbnN0IHN1Z2dlc3Rpb25Db3VudCA9IHRoaXMuX2dldFN1Z2dlc3Rpb25zTGVuZ3RoKCk7XG4gICAgICAgIGxldCB7IHNlYXJjaFN1Z2dlc3Rpb25NZXNzYWdlLCBzZWFyY2hTdWdnZXN0aW9uTmF2aWdhdGVNZXNzYWdlIH0gPSB0aGlzO1xuICAgICAgICBpZiAoc2VhcmNoU3VnZ2VzdGlvbk1lc3NhZ2UpIHtcbiAgICAgICAgICAgIHNlYXJjaFN1Z2dlc3Rpb25NZXNzYWdlID0gc3VnZ2VzdGlvbkNvdW50ICsgJyAnICsgc2VhcmNoU3VnZ2VzdGlvbk1lc3NhZ2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFzZWFyY2hTdWdnZXN0aW9uTWVzc2FnZSB8fCAhc2VhcmNoU3VnZ2VzdGlvbk5hdmlnYXRlTWVzc2FnZSkge1xuICAgICAgICAgICAgY29uc3QgbGFuZyA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuX2xhbmd1YWdlJCk7XG4gICAgICAgICAgICBpZiAoIXNlYXJjaFN1Z2dlc3Rpb25NZXNzYWdlKSB7XG4gICAgICAgICAgICAgICAgc2VhcmNoU3VnZ2VzdGlvbk1lc3NhZ2UgPSB0aGlzLl90cmFuc2xhdGlvblJlc29sdmVyLnJlc29sdmUoXG4gICAgICAgICAgICAgICAgICAgIGxhbmcsXG4gICAgICAgICAgICAgICAgICAgICdwbGF0Zm9ybVNlYXJjaEZpZWxkLnNlYXJjaFN1Z2dlc3Rpb25NZXNzYWdlJyxcbiAgICAgICAgICAgICAgICAgICAgeyBjb3VudDogc3VnZ2VzdGlvbkNvdW50IH1cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFzZWFyY2hTdWdnZXN0aW9uTmF2aWdhdGVNZXNzYWdlKSB7XG4gICAgICAgICAgICAgICAgc2VhcmNoU3VnZ2VzdGlvbk5hdmlnYXRlTWVzc2FnZSA9IHRoaXMuX3RyYW5zbGF0aW9uUmVzb2x2ZXIucmVzb2x2ZShcbiAgICAgICAgICAgICAgICAgICAgbGFuZyxcbiAgICAgICAgICAgICAgICAgICAgJ3BsYXRmb3JtU2VhcmNoRmllbGQuc2VhcmNoU3VnZ2VzdGlvbk5hdmlnYXRlTWVzc2FnZSdcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2N1cnJlbnRTZWFyY2hTdWdnZXN0aW9uQW5ub3VjZW1lbnRNZXNzYWdlID1cbiAgICAgICAgICAgIHNlYXJjaFN1Z2dlc3Rpb25NZXNzYWdlICsgKHN1Z2dlc3Rpb25Db3VudCA+IDAgPyBzZWFyY2hTdWdnZXN0aW9uTmF2aWdhdGVNZXNzYWdlIDogJycpO1xuICAgICAgICBpZiAodGhpcy5pbnB1dFRleHQ/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuX2xpdmVBbm5vdW5jZXIuYW5ub3VuY2UodGhpcy5fY3VycmVudFNlYXJjaFN1Z2dlc3Rpb25Bbm5vdWNlbWVudE1lc3NhZ2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGFzeW5jIF9zZXRVcE1vYmlsZU1vZGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgICAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogU0VBUkNIX0ZJRUxEX0NPTVBPTkVOVCwgdXNlVmFsdWU6IHRoaXMgfV0sXG4gICAgICAgICAgICBwYXJlbnQ6IHRoaXMuX2luamVjdG9yXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX2R5bmFtaWNDb21wb25lbnRTZXJ2aWNlLmNyZWF0ZUR5bmFtaWNNb2R1bGUoXG4gICAgICAgICAgICB7IGlucHV0RmllbGRUZW1wbGF0ZTogdGhpcy5pbnB1dEZpZWxkVGVtcGxhdGUsIHN1Z2dlc3Rpb25NZW51VGVtcGxhdGU6IHRoaXMuc3VnZ2VzdGlvbk1lbnVUZW1wbGF0ZSB9LFxuICAgICAgICAgICAgUGxhdGZvcm1TZWFyY2hGaWVsZE1vYmlsZU1vZHVsZSxcbiAgICAgICAgICAgIFNlYXJjaEZpZWxkTW9iaWxlQ29tcG9uZW50LFxuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgIGluamVjdG9yXG4gICAgICAgICk7XG4gICAgfVxufVxuXG5AUGlwZSh7XG4gICAgbmFtZTogJ3N1Z2dlc3Rpb25NYXRjaGVzJ1xufSlcbmV4cG9ydCBjbGFzcyBTdWdnZXN0aW9uTWF0Y2hlc1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHRyYW5zZm9ybSh2YWx1ZXM6IHN0cmluZ1tdIHwgbnVsbCwgbWF0Y2g6IHN0cmluZywgbW9iaWxlID0gZmFsc2UpOiBzdHJpbmdbXSB7XG4gICAgICAgIGlmICghdmFsdWVzKSB7XG4gICAgICAgICAgICB2YWx1ZXMgPSBbXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobW9iaWxlICYmICFtYXRjaCkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlcztcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwcm9jZXNzZWRNYXRjaCA9IG1hdGNoLnRyaW0oKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICByZXR1cm4gdmFsdWVzLmZpbHRlcigodmFsdWUpID0+IHZhbHVlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihwcm9jZXNzZWRNYXRjaCkgPiAtMSk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIm1vYmlsZSA/IG1vYmlsZVRlbXBsYXRlIDogaW5wdXRGaWVsZFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlVGVtcGxhdGU+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImlucHV0RmllbGRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzZWFyY2hDYXRlZ29yeU1lbnU+XG4gICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX2NhdGVnb3J5LWJ1dHRvbiBmZC1pbnB1dC1ncm91cF9fYnV0dG9uIGZkLWJ1dHRvbiBmZC1idXR0b24tLW1lbnUge3tcbiAgICAgICAgICAgIGFwcGVhcmFuY2U/LmNhdGVnb3J5QnV0dG9uQ2xhc3NcbiAgICAgICAgfX1cIlxuICAgICAgICBbZmRwTWVudVRyaWdnZXJGb3JdPVwiY2F0ZWdvcnlNZW51XCJcbiAgICA+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmRwLXNlYXJjaC1maWVsZF9fY2F0ZWdvcnktbGFiZWxcIiAqbmdJZj1cIiFoaWRlQ2F0ZWdvcnlMYWJlbFwiPlxuICAgICAgICAgICAge3sgX2N1cnJlbnRDYXRlZ29yeT8ubGFiZWwgfHwgY2F0ZWdvcnlMYWJlbCB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgPC9idXR0b24+XG4gICAgPGZkcC1tZW51ICNjYXRlZ29yeU1lbnU+XG4gICAgICAgIDxmZHAtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBjYXRlZ29yeSBvZiBjYXRlZ29yaWVzXCIgKGl0ZW1TZWxlY3QpPVwic2V0Q3VycmVudENhdGVnb3J5KGNhdGVnb3J5KVwiXG4gICAgICAgICAgICA+e3sgY2F0ZWdvcnkubGFiZWwgfX1cbiAgICAgICAgPC9mZHAtbWVudS1pdGVtPlxuICAgIDwvZmRwLW1lbnU+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3NlYXJjaENhdGVnb3J5U2VsZWN0PlxuICAgIDxmZC1zZWxlY3RcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImNhdGVnb3J5TGFiZWxcIlxuICAgICAgICBbc2VsZWN0Q29udHJvbENsYXNzXT1cImFwcGVhcmFuY2U/LmNhdGVnb3J5QnV0dG9uQ2xhc3NcIlxuICAgICAgICBbc2VsZWN0RHJvcGRvd25CdXR0b25DbGFzc109XCJhcHBlYXJhbmNlPy5jYXRlZ29yeURyb3Bkb3duQnV0dG9uQ2xhc3NcIlxuICAgICAgICAodmFsdWVDaGFuZ2UpPVwic2V0Q3VycmVudENhdGVnb3J5KCRldmVudClcIlxuICAgID5cbiAgICAgICAgPGxpIGZkLW9wdGlvbiAqbmdGb3I9XCJsZXQgY2F0ZWdvcnkgb2YgY2F0ZWdvcmllc1wiIFt2YWx1ZV09XCJjYXRlZ29yeVwiPnt7IGNhdGVnb3J5LmxhYmVsIH19PC9saT5cbiAgICA8L2ZkLXNlbGVjdD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjaW5wdXRGaWVsZFRlbXBsYXRlPlxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJmZHAtc2VhcmNoLWZpZWxkXCJcbiAgICAgICAgW2NsYXNzLndpdGgtY2F0ZWdvcmllc109XCJfc2hvd0NhdGVnb3J5RHJvcGRvd25cIlxuICAgICAgICBbY2xhc3MuaXMtbG9hZGluZ109XCJpc0xvYWRpbmdcIlxuICAgICAgICBbY2xhc3MuaXMtY29tcGFjdF09XCJjb250ZW50RGVuc2l0eU9ic2VydmVyLmlzQ29tcGFjdCQgfCBhc3luY1wiXG4gICAgICAgIFtjbGFzcy5oaWRlLWNhdGVnb3J5LWxhYmVsXT1cImhpZGVDYXRlZ29yeUxhYmVsXCJcbiAgICA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICNpbnB1dEdyb3VwXG4gICAgICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX2lucHV0LWdyb3VwIGZkLWlucHV0LWdyb3VwIHt7IGFwcGVhcmFuY2U/LnNlYXJjaENsYXNzIH19XCJcbiAgICAgICAgICAgIFtjbGFzcy5pcy1mb2N1c109XCJpc0ZvY3VzZWRcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtaW5wdXQtZ3JvdXBfX2FkZG9uIGZkLWlucHV0LWdyb3VwX19hZGRvbi0tYnV0dG9uIHt7IGFwcGVhcmFuY2U/LnNlYXJjaENhdGVnb3J5Q2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiX3Nob3dDYXRlZ29yeURyb3Bkb3duXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjYXRlZ29yeU1vZGUgPT09ICdzZWxlY3QnID8gc2VhcmNoQ2F0ZWdvcnlTZWxlY3QgOiBzZWFyY2hDYXRlZ29yeU1lbnVcIlxuICAgICAgICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgI2lucHV0RmllbGRcbiAgICAgICAgICAgICAgICB0eXBlPVwic2VhcmNoXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZHAtc2VhcmNoLWZpZWxkX19pbnB1dCBmZC1pbnB1dCBmZC1pbnB1dC1ncm91cF9faW5wdXQge3sgYXBwZWFyYW5jZT8uc2VhcmNoRmllbGRDbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiX2lucHV0SWRcIlxuICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gJycgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cIl9tZW51SWRcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiXG4gICAgICAgICAgICAgICAgICAgIChfZHJvcGRvd25WYWx1ZXMkIHwgYXN5bmMpPy5sZW5ndGggIT09IDAgPyAoX3Nob3dEcm9wZG93biA/ICd0cnVlJyA6ICdmYWxzZScpIDogbnVsbFxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCIoX2Ryb3Bkb3duVmFsdWVzJCB8IGFzeW5jKT8ubGVuZ3RoICE9PSAwXCJcbiAgICAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvblNlYXJjaFN1Ym1pdCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImlucHV0VGV4dFwiXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwibW9iaWxlICYmIG9wZW5Nb2JpbGVNb2RlKClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1pbnB1dC1ncm91cF9fYWRkb24gZmQtaW5wdXQtZ3JvdXBfX2FkZG9uLS1idXR0b24ge3sgYXBwZWFyYW5jZT8uYWRkb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJpbnB1dFRleHQgJiYgaW5wdXRUZXh0Lmxlbmd0aCA+IDBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidwbGF0Zm9ybVNlYXJjaEZpZWxkLmNsZWFyQnV0dG9uVGl0bGUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX2NsZWFyIGZkLWJ1dHRvbiBmZC1idXR0b24tLXRyYW5zcGFyZW50IHt7IGFwcGVhcmFuY2U/LmJ1dHRvbkNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmZkLWlucHV0LWdyb3VwX19idXR0b25dPVwiIWFwcGVhcmFuY2U/LnJlbW92ZUdyb3VwQnV0dG9uQ2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICcnIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIl9jbGVhcklkXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsZWFyVGV4dElucHV0KClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJkZWNsaW5lXCI+PC9mZC1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWlucHV0LWdyb3VwX19hZGRvbiBmZC1pbnB1dC1ncm91cF9fYWRkb24tLWJ1dHRvbiB7eyBhcHBlYXJhbmNlPy5hZGRvbkNsYXNzIH19IHt7XG4gICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U/LnNlYXJjaFN1Ym1pdENsYXNzXG4gICAgICAgICAgICAgICAgfX1cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9yY2VTZWFyY2hCdXR0b24gfHwgaXNMb2FkaW5nIHx8ICghaXNMb2FkaW5nICYmICFfaXNTZWFyY2hEb25lKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFkaXNhYmxlU2VhcmNoXCJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidwbGF0Zm9ybVNlYXJjaEZpZWxkLnN1Ym1pdEJ1dHRvblRpdGxlJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZHAtc2VhcmNoLWZpZWxkX19zdWJtaXQgZmQtYnV0dG9uIGZkLWJ1dHRvbi0tdHJhbnNwYXJlbnQge3sgYXBwZWFyYW5jZT8uYnV0dG9uQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZmQtaW5wdXQtZ3JvdXBfX2J1dHRvbl09XCIhYXBwZWFyYW5jZT8ucmVtb3ZlR3JvdXBCdXR0b25DbGFzc1wiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIl9zdWJtaXRJZFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gJycgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2VhcmNoU3VibWl0KClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJzZWFyY2hcIj48L2ZkLWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtaW5wdXQtZ3JvdXBfX2FkZG9uIGZkLWlucHV0LWdyb3VwX19hZGRvbi0tYnV0dG9uIHt7IGFwcGVhcmFuY2U/LmFkZG9uQ2xhc3MgfX0ge3tcbiAgICAgICAgICAgICAgICAgICAgYXBwZWFyYW5jZT8uc2VhcmNoU3VibWl0Q2xhc3NcbiAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhZGlzYWJsZVJlZnJlc2ggJiYgIWlzTG9hZGluZyAmJiAoX2lzUmVmcmVzaCB8fCBfaXNTZWFyY2hEb25lKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ3BsYXRmb3JtU2VhcmNoRmllbGQuc3luY2hyb25pemVCdXR0b25UaXRsZScgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmRwLXNlYXJjaC1maWVsZF9fbG9hZGluZyBmZC1pbnB1dC1ncm91cF9fYnV0dG9uIGZkLWJ1dHRvbiBmZC1idXR0b24tLXRyYW5zcGFyZW50IHt7XG4gICAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPy5idXR0b25DbGFzc1xuICAgICAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gJycgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiX3JlZnJlc2hJZFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNlYXJjaFN1Ym1pdCgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1pY29uIGdseXBoPVwic3luY2hyb25pemVcIj48L2ZkLWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzdWdnZXN0aW9uTWVudVRlbXBsYXRlPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJfZHJvcGRvd25WYWx1ZXMkIHwgYXN5bmMgfCBzdWdnZXN0aW9uTWF0Y2hlcyA6IGlucHV0VGV4dCA6IG1vYmlsZSBhcyBzdWdnZXN0aW9uc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmRwLXNlYXJjaC1maWVsZF9fc3VnZ2VzdGlvbi1kcm9wZG93blwiIFthdHRyLmRpcl09XCJfZGlyXCIgKm5nSWY9XCJzdWdnZXN0aW9ucz8ubGVuZ3RoXCI+XG4gICAgICAgICAgICA8bmF2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1tZW51XCJcbiAgICAgICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuaXMtY29tcGFjdF09XCJjb250ZW50RGVuc2l0eU9ic2VydmVyLmlzQ29tcGFjdCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmZkLW1lbnUtLW1vYmlsZV09XCJtb2JpbGVcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5mZC1tZW51LS1vdmVyZmxvd109XCIhbW9iaWxlXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJfbWVudUlkXCJcbiAgICAgICAgICAgICAgICAjbWVudVxuICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJmZC1tZW51X19saXN0XCIgcm9sZT1cIm1lbnVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgICAgICBmZHBTZWFyY2hGaWVsZFN1Z2dlc3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmRwLXNlYXJjaC1maWVsZF9fc3VnZ2VzdGlvbi1pdGVtIGZkLW1lbnVfX2l0ZW0gZmQtbWVudV9fbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgdmFsdWUgb2Ygc3VnZ2VzdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25JdGVtQ2xpY2sodmFsdWUpOyAkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bi50YWIpPVwib25JdGVtQ2xpY2sodmFsdWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChrZXl1cC5zcGFjZSk9XCJvbkl0ZW1DbGljayh2YWx1ZSk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25JdGVtQ2xpY2sodmFsdWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwidmFsdWUgfCBoaWdobGlnaHQgOiBpbnB1dFRleHQgOiB0cnVlIDogdHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICByb2xlPVwibWVudWl0ZW1cIlxuICAgICAgICAgICAgICAgICAgICA+PC9saT5cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9uYXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
597
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osUUFBUSxFQUNSLE1BQU0sRUFDTixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFDTixJQUFJLEVBRUosU0FBUyxFQUVULFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JFLE9BQU8sRUFBcUIsT0FBTyxFQUFFLGFBQWEsRUFBYyxNQUFNLHNCQUFzQixDQUFDO0FBQzdGLE9BQU8sRUFBbUIsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUdyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9GLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLEVB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RSxtQkFBbUI7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3RvcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFBpcGUsXG4gICAgUGlwZVRyYW5zZm9ybSxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBET1dOX0FSUk9XLCBFU0NBUEUsIFVQX0FSUk9XIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IENvbm5lY3RlZFBvc2l0aW9uLCBPdmVybGF5LCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgRm9jdXNhYmxlT3B0aW9uLCBGb2N1c0tleU1hbmFnZXIsIExpdmVBbm5vdW5jZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgZnJvbUV2ZW50LCBpc09ic2VydmFibGUsIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsIEtleVV0aWwsIFJ0bFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFBvcG92ZXJDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcG9wb3Zlcic7XG5pbXBvcnQgeyBNb2JpbGVNb2RlQ29uZmlnIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL21vYmlsZS1tb2RlJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQsIFNlYXJjaEZpZWxkRGF0YVNvdXJjZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7XG4gICAgU0VBUkNIX0ZJRUxEX0NPTVBPTkVOVCxcbiAgICBTZWFyY2hGaWVsZE1vYmlsZUludGVyZmFjZVxufSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkLW1vYmlsZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2VhcmNoRmllbGRNb2JpbGVDb21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkL3NlYXJjaC1maWVsZC1tb2JpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IFBsYXRmb3JtU2VhcmNoRmllbGRNb2JpbGVNb2R1bGUgfSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkLW1vYmlsZS5tb2R1bGUnO1xuaW1wb3J0IHsgRmRMYW5ndWFnZSwgRkRfTEFOR1VBR0UsIFRyYW5zbGF0aW9uUmVzb2x2ZXIgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2kxOG4nO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlPYnNlcnZlciwgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVycyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jb250ZW50LWRlbnNpdHknO1xuaW1wb3J0IHsgRkRfU0hFTExCQVJfU0VBUkNIX0NPTVBPTkVOVCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGVsbGJhcic7XG5pbXBvcnQgeyBTZWFyY2hDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcbmltcG9ydCBlcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaElucHV0IHtcbiAgICB0ZXh0OiBzdHJpbmc7XG4gICAgY2F0ZWdvcnk6IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VnZ2VzdGlvbkl0ZW0ge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgaXNIaXN0b3JpY2FsPzogc3RyaW5nO1xuICAgIGRhdGE/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFsdWVMYWJlbEl0ZW0ge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZmRwU2VhcmNoRmllbGRTdWdnZXN0aW9uXScsXG4gICAgaG9zdDoge1xuICAgICAgICB0YWJpbmRleDogJy0xJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoRmllbGRTdWdnZXN0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgRm9jdXNhYmxlT3B0aW9uIHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZikge31cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxufVxuXG5sZXQgc2VhcmNoRmllbGRJZENvdW50ID0gMDtcblxudHlwZSBBcHBlYXJhbmNlID0gU2VhcmNoQ29tcG9uZW50WydhcHBlYXJhbmNlJ10gfCB1bmRlZmluZWQ7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmRwLXNlYXJjaC1maWVsZCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC1maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2VhcmNoLWZpZWxkLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVycygpLFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBGRF9TSEVMTEJBUl9TRUFSQ0hfQ09NUE9ORU5ULFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IFNlYXJjaEZpZWxkQ29tcG9uZW50XG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEZpZWxkQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBCYXNlQ29tcG9uZW50XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBTZWFyY2hGaWVsZE1vYmlsZUludGVyZmFjZSwgU2VhcmNoQ29tcG9uZW50XG57XG4gICAgLyoqIFR5cGUgb2YgY29tcG9uZW50IHVzZWQgdG8gcmVuZGVyIHRoZSBjYXRlZ29yaWVzIGRyb3Bkb3duLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgY2F0ZWdvcnlNb2RlOiAnbWVudScgfCAnc2VsZWN0JyA9ICdtZW51JztcblxuICAgIC8qKiBBZGRpdGlvbmFsIGFwcGVhcmFuY2UgY29uZmlndXJhdGlvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBhcHBlYXJhbmNlKHZhbHVlOiBBcHBlYXJhbmNlKSB7XG4gICAgICAgIGlmIChlcXVhbCh2YWx1ZSwgdGhpcy5hcHBlYXJhbmNlKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fYXBwZWFyYW5jZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgZ2V0IGFwcGVhcmFuY2UoKTogQXBwZWFyYW5jZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hcHBlYXJhbmNlO1xuICAgIH1cblxuICAgIC8qKiBQbGFjZSBob2xkZXIgdGV4dCBmb3Igc2VhcmNoIGlucHV0IGZpZWxkLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICAgIC8qKiBTZXQgTW9iaWxlIE1vZGUgKi9cbiAgICBASW5wdXQoKVxuICAgIG1vYmlsZTogYm9vbGVhbjtcblxuICAgIC8qKiBTZWFyY2ggRmllbGQgTW9iaWxlIGNvbmZpZ3VyYXRpb24gKi9cbiAgICBASW5wdXQoKVxuICAgIG1vYmlsZUNvbmZpZzogTW9iaWxlTW9kZUNvbmZpZztcblxuICAgIC8qKiBXaGV0aGVyIGRpc3BsYXkgUmVmcmVzaCBidXR0b24gKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVSZWZyZXNoID0gZmFsc2U7XG5cbiAgICAvKiogV2hldGhlciBkaXNwbGF5IHNlYXJjaCBidXR0b24gKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVTZWFyY2ggPSBmYWxzZTtcblxuICAgIC8qKiBMaXN0IG9mIHN0cmluZyB2YWx1ZXMgdG8gcG9wdWxhdGUgc3VnZ2VzdGlvbiBkcm9wZG93biBzZWxlY3Rpb24uICovXG4gICAgQElucHV0KClcbiAgICBzZXQgc3VnZ2VzdGlvbnModmFsdWU6IFN1Z2dlc3Rpb25JdGVtW10gfCBPYnNlcnZhYmxlPFN1Z2dlc3Rpb25JdGVtW10+KSB7XG4gICAgICAgIHRoaXMuX3N1Z2dlc3Rpb25zID0gdmFsdWU7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgLy8gY29udmVydCBzdWdnZXN0aW9ucyB0byBhbiBhcnJheSBvZiBzdHJpbmcgZm9yIFwiZHJvcGRvd24gdmFsdWVzXCJcbiAgICAgICAgICAgIGNvbnN0IGRyb3Bkb3duVmFsdWVzID0gdmFsdWUubWFwKChzdWdnZXN0aW9uOiBTdWdnZXN0aW9uSXRlbSkgPT4gc3VnZ2VzdGlvbi52YWx1ZSk7XG4gICAgICAgICAgICB0aGlzLl9kcm9wZG93blZhbHVlcyQgPSBvZihkcm9wZG93blZhbHVlcyk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNPYnNlcnZhYmxlKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5fZHJvcGRvd25WYWx1ZXMkID0gdmFsdWUucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHN1Z2dlc3Rpb25zOiBTdWdnZXN0aW9uSXRlbVtdKSA9PiBzdWdnZXN0aW9ucy5tYXAoKHN1Z2dlc3Rpb24pID0+IHN1Z2dlc3Rpb24udmFsdWUpKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2Ryb3Bkb3duVmFsdWVzJCA9IG9mKFtdKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBnZXQgc3VnZ2VzdGlvbnMoKTogU3VnZ2VzdGlvbkl0ZW1bXSB8IE9ic2VydmFibGU8U3VnZ2VzdGlvbkl0ZW1bXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc3VnZ2VzdGlvbnM7XG4gICAgfVxuXG4gICAgLyoqIERhdGFzb3VyY2UgZm9yIHN1Z2dlc3Rpb24gbGlzdCAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGRhdGFTb3VyY2UodmFsdWU6IFNlYXJjaEZpZWxkRGF0YVNvdXJjZTxhbnk+KSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5faW5pdGlhbGl6ZURhdGFTb3VyY2UodmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBkYXRhU291cmNlKCk6IFNlYXJjaEZpZWxkRGF0YVNvdXJjZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGFTb3VyY2U7XG4gICAgfVxuXG4gICAgLyoqIEluaXRpYWwgaW5wdXQgdGV4dC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGlucHV0VGV4dDogc3RyaW5nO1xuXG4gICAgLyoqIExpc3Qgb2YgY2F0ZWdvcmllcy4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBjYXRlZ29yaWVzKHZhbHVlOiBWYWx1ZUxhYmVsSXRlbVtdKSB7XG4gICAgICAgIHRoaXMuX2NhdGVnb3JpZXMgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5fc2hvd0NhdGVnb3J5RHJvcGRvd24gPSBBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggPiAwO1xuICAgIH1cbiAgICBnZXQgY2F0ZWdvcmllcygpOiBWYWx1ZUxhYmVsSXRlbVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NhdGVnb3JpZXM7XG4gICAgfVxuXG4gICAgLyoqIEN1cnJlbnQgY2F0ZWdvcnksIHZhbHVlIHNob3VsZCBiZSBwcmVzZW50IGluIGNhdGVnb3JpZXMgYXJyYXkgKi9cbiAgICBASW5wdXQoKVxuICAgIGN1cnJlbnRDYXRlZ29yeTogVmFsdWVMYWJlbEl0ZW07XG5cbiAgICAvKiogU2V0IGxhYmVsIGZvciBjYXRlZ29yeSBkcm9wZG93biBidXR0b24uICovXG4gICAgQElucHV0KClcbiAgICBjYXRlZ29yeUxhYmVsID0gJ0NhdGVnb3J5JztcblxuICAgIC8qKiBIaWRlIGRpc3BsYXkgb2YgY2F0ZWdvcnkgbGFiZWwgKi9cbiAgICBASW5wdXQoKVxuICAgIGhpZGVDYXRlZ29yeUxhYmVsID0gZmFsc2U7XG5cbiAgICAvKiogVG9nZ2xlIFwibG9hZGluZ1wiIG1vZGUuICovXG4gICAgQElucHV0KClcbiAgICBpc0xvYWRpbmcgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEFSSUEgbGFiZWwgdG8gc3BlY2lmeSB3aGF0IHRoZSBzZWFyY2ggZmllbGQgaXNcbiAgICAgKiBOb3Qgc2hvd24gaW4gdGhlIFVJLCBvbmx5IHZpc2libGUgYnkgdGhlIHNjcmVlbi1yZWFkZXJzLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXJpYUxhYmVsOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqXG4gICAgICogSWQgb2YgZWxlbWVudHMgKHNlcGFyYXRlZCBieSBzcGFjZSkgZm9yIHNldHRpbmcgYXJpYS1sYWJlbGxlZGJ5IGZvciBzZWFyY2ggaW5wdXRcbiAgICAgKiBOb3Qgc2hvd24gaW4gdGhlIFVJLCBvbmx5IHZpc2libGUgYnkgdGhlIHNjcmVlbi1yZWFkZXJzLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXJpYUxhYmVsbGVkYnk6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHVzZSBpMThuIGNhcGFiaWxpdGllcyBpbnN0ZWFkXG4gICAgICogTWVzc2FnZSBhbm5vdW5jZWQgYnkgc2NyZWVuIHJlYWRlciwgd2hlbiBzZWFyY2ggc3VnZ2VzdGlvbnMgb3BlbnMuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZWFyY2hTdWdnZXN0aW9uTWVzc2FnZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgdXNlIGkxOG4gY2FwYWJpbGl0aWVzIGluc3RlYWRcbiAgICAgKiBTZWNvbmQgcGFydCBvZiBtZXNzYWdlIGZvciBzZWFyY2ggc3VnZ2VzdGlvbi5cbiAgICAgKiBkaXJlY3Rpb24gZm9yIG5hdmlnYXRpbmcgdGhlIHN1Z2dlc3Rpb24uIFRoaXMgaXMgbm90IG5lY2Vzc3J5IGluIGNhc2Ugb2YgMCBzdWdnZXN0aW9uLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VhcmNoU3VnZ2VzdGlvbk5hdmlnYXRlTWVzc2FnZTogc3RyaW5nO1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gYWx3YXlzIHNob3cgc2VhcmNoIGJ1dHRvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIGZvcmNlU2VhcmNoQnV0dG9uID0gZmFsc2U7XG5cbiAgICAvKiogSW5wdXQgY2hhbmdlIGV2ZW50LiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGlucHV0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8U2VhcmNoSW5wdXQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqIFNlYXJjaCBzdWJtaXQgZXZlbnQuICovXG4gICAgQE91dHB1dCgpXG4gICAgc2VhcmNoU3VibWl0OiBFdmVudEVtaXR0ZXI8U2VhcmNoSW5wdXQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqIENhbmNlbCBzZWFyY2ggZXZlbnQuICovXG4gICAgQE91dHB1dCgpXG4gICAgY2FuY2VsU2VhcmNoOiBFdmVudEVtaXR0ZXI8U2VhcmNoSW5wdXQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqIE9wZW4gbW9iaWxlIG1vZGUgZXZlbnQuICovXG4gICAgQE91dHB1dCgpXG4gICAgaXNPcGVuQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKiogQGhpZGRlbiBGb2N1cyBzdGF0ZSAqL1xuICAgIGdldCBpc0ZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kb2N1bWVudD8uYWN0aXZlRWxlbWVudCA9PT0gdGhpcy5pbnB1dEZpZWxkPy5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE9ic2VydmFibGUgbGlzdCBvZiBzdHJpbmcgdmFsdWVzIHRha2VuIGZyb20gYHN1Z2dlc3Rpb25zYCB0byBwb3B1bGF0ZSBkcm9wZG93biBtZW51LlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBfZHJvcGRvd25WYWx1ZXMkOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiA9IG9mKFtdKTtcblxuICAgIC8qKlxuICAgICAqIEN1cnJlbnRseSBzZXQgY2F0ZWdvcnkuXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIF9jdXJyZW50Q2F0ZWdvcnk/OiBWYWx1ZUxhYmVsSXRlbTtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgb3Igbm90IHRvIHNob3cgdHlwZWFoZWFkIGRyb3Bkb3duLlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBfc2hvd0Ryb3Bkb3duID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIG9yIG5vdCB0byBzaG93IGNhdGVnb3J5IGRyb3Bkb3duLiBUaGlzIGlzIGRlcGVuZGVudCBvbiBsZW5ndGggb2YgYGNhdGVnb3J5VmFsdWVzYCBwcm9wZXJ0eS5cbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgX3Nob3dDYXRlZ29yeURyb3Bkb3duID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pbnB1dElkID0gJyc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9zdWJtaXRJZCA9ICcnO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfbWVudUlkID0gJyc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9yZWZyZXNoSWQgPSAnJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2NsZWFySWQgPSAnJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2RpcjogRGlyZWN0aW9uID0gJ2x0cic7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGlzT3BlbiA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfaXNSZWZyZXNoID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pc1NlYXJjaERvbmUgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3VnZ2VzdGlvbnM6IFN1Z2dlc3Rpb25JdGVtW10gfCBPYnNlcnZhYmxlPFN1Z2dlc3Rpb25JdGVtW10+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kYXRhU291cmNlOiBTZWFyY2hGaWVsZERhdGFTb3VyY2U8YW55PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY2F0ZWdvcmllczogVmFsdWVMYWJlbEl0ZW1bXTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY3VycmVudFNlYXJjaFN1Z2dlc3Rpb25Bbm5vdWNlbWVudE1lc3NhZ2UgPSAnJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3VnZ2VzdGlvbk92ZXJsYXlSZWY6IE92ZXJsYXlSZWYgfCBudWxsO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zdWdnZXN0aW9uUG9ydGFsOiBUZW1wbGF0ZVBvcnRhbDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3VnZ2VzdGlvbmtleU1hbmFnZXI6IEZvY3VzS2V5TWFuYWdlcjxTZWFyY2hGaWVsZFN1Z2dlc3Rpb25EaXJlY3RpdmU+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90cmFuc2xhdGlvblJlc29sdmVyID0gbmV3IFRyYW5zbGF0aW9uUmVzb2x2ZXIoKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfb25EZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2RhdGFTb3VyY2VDaGFuZ2VkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2FwcGVhcmFuY2U6IEFwcGVhcmFuY2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2NhdGVnb3J5RHJvcGRvd24nLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgICBjYXRlZ29yeURyb3Bkb3duOiBQb3BvdmVyQ29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdpbnB1dEdyb3VwJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gICAgaW5wdXRHcm91cDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2lucHV0RmllbGQnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgICBpbnB1dEZpZWxkOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZCgnaW5wdXRGaWVsZFRlbXBsYXRlJylcbiAgICBpbnB1dEZpZWxkVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ3N1Z2dlc3Rpb25NZW51VGVtcGxhdGUnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgICBzdWdnZXN0aW9uTWVudVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkcmVuKFNlYXJjaEZpZWxkU3VnZ2VzdGlvbkRpcmVjdGl2ZSlcbiAgICBzdWdnZXN0aW9uSXRlbXM6IFF1ZXJ5TGlzdDxTZWFyY2hGaWVsZFN1Z2dlc3Rpb25EaXJlY3RpdmU+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgc2VhcmNoRmllbGRWYWx1ZSgpOiBTZWFyY2hJbnB1dCB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0ZXh0OiB0aGlzLmlucHV0VGV4dCxcbiAgICAgICAgICAgIGNhdGVnb3J5OiB0aGlzLl9jdXJyZW50Q2F0ZWdvcnk/LnZhbHVlIHx8IG51bGxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX292ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX3ZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgX3J0bDogUnRsU2VydmljZSxcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnQ6IERvY3VtZW50LFxuICAgICAgICBASW5qZWN0KEZEX0xBTkdVQUdFKSBwcml2YXRlIHJlYWRvbmx5IF9sYW5ndWFnZSQ6IE9ic2VydmFibGU8RmRMYW5ndWFnZT4sXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX2xpdmVBbm5vdW5jZXI6IExpdmVBbm5vdW5jZXIsXG4gICAgICAgIHJlYWRvbmx5IF9keW5hbWljQ29tcG9uZW50U2VydmljZTogRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG4gICAgICAgIHJlYWRvbmx5IGNvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJcbiAgICApIHtcbiAgICAgICAgc3VwZXIoX2NkKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBiYXNlSWQgPSAnZmRwLXNlYXJjaC1maWVsZCc7XG4gICAgICAgIHRoaXMuX2lucHV0SWQgPSBgJHtiYXNlSWR9LWlucHV0LSR7c2VhcmNoRmllbGRJZENvdW50Kyt9YDtcbiAgICAgICAgdGhpcy5fc3VibWl0SWQgPSBgJHtiYXNlSWR9LXN1Ym1pdC0ke3NlYXJjaEZpZWxkSWRDb3VudCsrfWA7XG4gICAgICAgIHRoaXMuX21lbnVJZCA9IGAke2Jhc2VJZH0tbWVudS0ke3NlYXJjaEZpZWxkSWRDb3VudCsrfWA7XG5cbiAgICAgICAgdGhpcy5faXNSZWZyZXNoID0gdHJ1ZTtcblxuICAgICAgICBpZiAodGhpcy5fcnRsKSB7XG4gICAgICAgICAgICB0aGlzLl9ydGwucnRsLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGlzUnRsOiBib29sZWFuKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZGlyID0gaXNSdGwgPyAncnRsJyA6ICdsdHInO1xuICAgICAgICAgICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubW9iaWxlKSB7XG4gICAgICAgICAgICB0aGlzLl9zZXRVcE1vYmlsZU1vZGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoJ2NhdGVnb3JpZXMnIGluIGNoYW5nZXMgfHwgJ2N1cnJlbnRDYXRlZ29yeScgaW4gY2hhbmdlcykge1xuICAgICAgICAgICAgdGhpcy5zZXRDdXJyZW50Q2F0ZWdvcnkodGhpcy5jdXJyZW50Q2F0ZWdvcnkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX3N1Z2dlc3Rpb25PdmVybGF5UmVmKSB7XG4gICAgICAgICAgICB0aGlzLl9zdWdnZXN0aW9uT3ZlcmxheVJlZi5kaXNwb3NlKCk7XG4gICAgICAgICAgICB0aGlzLl9zdWdnZXN0aW9uT3ZlcmxheVJlZiA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fc3VnZ2VzdGlvbmtleU1hbmFnZXI/LmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5fb25EZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX29uRGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGhhbmRsZUtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubW9iaWxlICYmIHRoaXMuaXNPcGVuICYmIEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbRVNDQVBFXSkpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd0RpYWxvZyhmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGb2N1c2VzIHRoZSBzZWFyY2ggaW5wdXQgZmllbGQuXG4gICAgICovXG4gICAgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRGaWVsZC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQ2FwdHVyaW5nIG9uS2V5ZG93biBvZiBpbnB1dCBlbGVtZW50ICovXG4gICAgb25LZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghZXZlbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW1VQX0FSUk9XLCBET1dOX0FSUk9XXSkpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9zdWdnZXN0aW9ua2V5TWFuYWdlcikge1xuICAgICAgICAgICAgICAgIHRoaXMuX3N1Z2dlc3Rpb25rZXlNYW5hZ2VyLm9uS2V5ZG93bihldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtFU0NBUEVdKSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZVN1Z2dlc3Rpb25NZW51KHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FwdHVyaW5nIHZhbHVlIGNoYW5nZSBpbiBpbnB1dCB0ZXh0IGZpZWxkIG9mIGNvbWJvYm94LlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBvblZhbHVlQ2hhbmdlKGV2ZW50OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgLy8gd2hlbiBzZWFyY2ggcmVzdWx0IG5vdCBjaGFuZ2VkIGJ1dCBpbnB1dCB0ZXh0IGlzIGNoYW5nZWQuXG4gICAgICAgIC8vIGFnYWluIG5lZWQgdG8gYW5ub3VuY2UgdGhlIHJlc3VsdCwgc28gY2xlYXIgdGhpcyBtZXNzYWdlLlxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLl9jdXJyZW50U2VhcmNoU3VnZ2VzdGlvbkFubm91Y2VtZW50TWVzc2FnZSA9ICcnKSk7XG4gICAgICAgIHRoaXMuX2lzU2VhcmNoRG9uZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLl9pc1JlZnJlc2ggPSBmYWxzZTtcblxuICAgICAgICBpZiAodGhpcy5tb2JpbGUgJiYgIXRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLm9wZW5Nb2JpbGVNb2RlKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlucHV0Q2hhbmdlLmVtaXQodGhpcy5zZWFyY2hGaWVsZFZhbHVlKTtcbiAgICAgICAgY29uc3QgaW5wdXRTdHI6IHN0cmluZyA9IGV2ZW50LnRyaW0oKTtcbiAgICAgICAgaWYgKGlucHV0U3RyLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZVN1Z2dlc3Rpb25NZW51KCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMubW9iaWxlKSB7XG4gICAgICAgICAgICB0aGlzLm9wZW5TdWdnZXN0aW9uTWVudSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuZGF0YVNvdXJjZSkge1xuICAgICAgICAgICAgY29uc3QgbWF0Y2ggPSBuZXcgTWFwKCk7XG4gICAgICAgICAgICBtYXRjaC5zZXQoJ2tleXdvcmQnLCBpbnB1dFN0cik7XG4gICAgICAgICAgICBtYXRjaC5zZXQoJ2NhdGVnb3J5JywgdGhpcy5fY3VycmVudENhdGVnb3J5Py52YWx1ZSB8fCBudWxsKTtcblxuICAgICAgICAgICAgdGhpcy5kYXRhU291cmNlLm1hdGNoKG1hdGNoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3VwZGF0ZVNlYXJjaEFubm91Y2VtZW50VGV4dCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhcHR1cmluZyBpdGVtIHNlbGVjdGlvbiBmcm9tIGRyb3Bkb3duIG1lbnUgb2YgY29tYm9ib3guXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIG9uSXRlbUNsaWNrKGV2ZW50OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbnB1dFRleHQgPSBldmVudDtcbiAgICAgICAgdGhpcy5pbnB1dENoYW5nZS5lbWl0KHRoaXMuc2VhcmNoRmllbGRWYWx1ZSk7XG4gICAgICAgIHRoaXMuc2VhcmNoU3VibWl0LmVtaXQodGhpcy5zZWFyY2hGaWVsZFZhbHVlKTtcbiAgICAgICAgdGhpcy5jbG9zZVN1Z2dlc3Rpb25NZW51KCk7XG4gICAgICAgIGlmICh0aGlzLm1vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy5zaG93RGlhbG9nKGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9pc1NlYXJjaERvbmUgPSB0cnVlO1xuICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgZnVuY3Rpb24gd2hpY2ggZ2V0cyBleGVjdXRlZCBvbiBrZXlib2FyZCBlbnRlciBvZiBpbnB1dCB0ZXh0IGZpZWxkLlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBvblNlYXJjaFN1Ym1pdChldmVudD86IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50Py5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIGlmICh0aGlzLmlzTG9hZGluZykge1xuICAgICAgICAgICAgdGhpcy5jYW5jZWxTZWFyY2guZW1pdCgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zZWFyY2hTdWJtaXQuZW1pdCh0aGlzLnNlYXJjaEZpZWxkVmFsdWUpO1xuXG4gICAgICAgIHRoaXMuX2lzUmVmcmVzaCA9IHRydWU7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5wdXRUZXh0KSB7XG4gICAgICAgICAgICB0aGlzLl9pc1NlYXJjaERvbmUgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jbG9zZVN1Z2dlc3Rpb25NZW51KGZhbHNlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGN1cnJlbnQgY2F0ZWdvcnkuXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHNldEN1cnJlbnRDYXRlZ29yeShjdXJyZW50Q2F0ZWdvcnk6IFZhbHVlTGFiZWxJdGVtKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnRDYXRlZ29yeSA9XG4gICAgICAgICAgICBjdXJyZW50Q2F0ZWdvcnkgJiZcbiAgICAgICAgICAgIHRoaXMuY2F0ZWdvcmllcz8uZmluZChcbiAgICAgICAgICAgICAgICAoY2F0ZWdvcnkpID0+IGNhdGVnb3J5LmxhYmVsID09PSBjdXJyZW50Q2F0ZWdvcnkubGFiZWwgJiYgY2F0ZWdvcnkudmFsdWUgPT09IGN1cnJlbnRDYXRlZ29yeS52YWx1ZVxuICAgICAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmlucHV0Q2hhbmdlLmVtaXQodGhpcy5zZWFyY2hGaWVsZFZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPcGVuIHN1Z2dlc3Rpb24gbWVudVxuICAgICAqL1xuICAgIG9wZW5TdWdnZXN0aW9uTWVudSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbG9zZVN1Z2dlc3Rpb25NZW51KCk7XG4gICAgICAgIHRoaXMuX3N1Z2dlc3Rpb25rZXlNYW5hZ2VyPy5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMuX3N1Z2dlc3Rpb25rZXlNYW5hZ2VyID0gbmV3IEZvY3VzS2V5TWFuYWdlcih0aGlzLnN1Z2dlc3Rpb25JdGVtcyk7XG4gICAgICAgIGlmICh0aGlzLl9zaG93RHJvcGRvd24pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGNyZWF0ZSBvdmVybGF5XG4gICAgICAgIGNvbnN0IG92ZXJsYXlDb25maWcgPSB0aGlzLl9jcmVhdGVTdWdnZXRpb25PdmVybGF5Q29uZmlnKCk7XG4gICAgICAgIHRoaXMuX3N1Z2dlc3Rpb25PdmVybGF5UmVmID0gdGhpcy5fb3ZlcmxheS5jcmVhdGUob3ZlcmxheUNvbmZpZyk7XG5cbiAgICAgICAgLy8gZ2V0IHBvcnRhbCB0byBhdHRhY2ggdG8gb3ZlcmxheVxuICAgICAgICB0aGlzLl9zdWdnZXN0aW9uUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMuc3VnZ2VzdGlvbk1lbnVUZW1wbGF0ZSwgdGhpcy5fdmlld0NvbnRhaW5lclJlZik7XG4gICAgICAgIHRoaXMuX3N1Z2dlc3Rpb25PdmVybGF5UmVmLmF0dGFjaCh0aGlzLl9zdWdnZXN0aW9uUG9ydGFsKTtcblxuICAgICAgICAvLyBhZGQgc3Vic2NyaXB0aW9uIHRvIGNhcHR1cmUgb3V0c2lkZSBjbGlja3NcbiAgICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGRvY3VtZW50LCAnY2xpY2snKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAhIXRoaXMuX3N1Z2dlc3Rpb25PdmVybGF5UmVmICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAhdGhpcy5fc3VnZ2VzdGlvbk92ZXJsYXlSZWYub3ZlcmxheUVsZW1lbnQuY29udGFpbnModGFyZ2V0KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fc2hvd0Ryb3Bkb3duXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgICAgICAgICAgICAgIGNvbnN0IGZvY3VzID0gISh0YXJnZXQudGFnTmFtZSA9PT0gJ0lOUFVUJyAmJiB0aGlzLl9pbnB1dElkICE9PSB0YXJnZXQuaWQpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2VTdWdnZXN0aW9uTWVudShmb2N1cyk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl9zaG93RHJvcGRvd24gPSB0cnVlO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb3Blbk1vYmlsZU1vZGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2hvd0RpYWxvZyh0cnVlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGRpYWxvZ0FwcHJvdmUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25JdGVtQ2xpY2sodGhpcy5pbnB1dFRleHQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZGlhbG9nRGlzbWlzcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaG93RGlhbG9nKGZhbHNlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNob3dEaWFsb2coaXNPcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzT3BlbiAhPT0gaXNPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLmlzT3BlbiA9IGlzT3BlbjtcblxuICAgICAgICAgICAgdGhpcy5pc09wZW5DaGFuZ2UuZW1pdChpc09wZW4pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjbG9zZVN1Z2dlc3Rpb25NZW51KGZvY3VzID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuX3N1Z2dlc3Rpb25PdmVybGF5UmVmKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fc3VnZ2VzdGlvbk92ZXJsYXlSZWYuZGV0YWNoKCk7XG4gICAgICAgIGlmIChmb2N1cykge1xuICAgICAgICAgICAgdGhpcy5mb2N1cygpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3Nob3dEcm9wZG93biA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY2xlYXJUZXh0SW5wdXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRUZXh0ID0gJyc7XG4gICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgdGhpcy5pbnB1dENoYW5nZS5lbWl0KHRoaXMuc2VhcmNoRmllbGRWYWx1ZSk7XG4gICAgICAgIHRoaXMuY2FuY2VsU2VhcmNoLmVtaXQodGhpcy5zZWFyY2hGaWVsZFZhbHVlKTtcblxuICAgICAgICB0aGlzLl9pc1JlZnJlc2ggPSB0cnVlO1xuICAgICAgICB0aGlzLl9pc1NlYXJjaERvbmUgPSBmYWxzZTtcblxuICAgICAgICB0aGlzLmNsb3NlU3VnZ2VzdGlvbk1lbnUoZmFsc2UpO1xuICAgICAgICB0aGlzLmZvY3VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfY3JlYXRlU3VnZ2V0aW9uT3ZlcmxheUNvbmZpZygpOiBPdmVybGF5Q29uZmlnIHtcbiAgICAgICAgY29uc3QgcG9zaXRpb25zOiBDb25uZWN0ZWRQb3NpdGlvbltdID0gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgICAgICAgb3ZlcmxheVk6ICd0b3AnXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nXG4gICAgICAgICAgICB9XG4gICAgICAgIF07XG4gICAgICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5XG4gICAgICAgICAgICAucG9zaXRpb24oKVxuICAgICAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5pbnB1dEdyb3VwKVxuICAgICAgICAgICAgLndpdGhMb2NrZWRQb3NpdGlvbigpXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyhwb3NpdGlvbnMpO1xuICAgICAgICBjb25zdCBzY3JvbGxTdHJhdGVneSA9IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCk7XG4gICAgICAgIHJldHVybiBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICAgICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3ksXG4gICAgICAgICAgICBiYWNrZHJvcENsYXNzOiAnY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3AnLFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuaW5wdXRHcm91cC5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2luaXRpYWxpemVEYXRhU291cmNlKGRhdGFTb3VyY2U6IFNlYXJjaEZpZWxkRGF0YVNvdXJjZTxhbnk+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2RhdGFTb3VyY2VDaGFuZ2VkJC5uZXh0KCk7XG4gICAgICAgIGRhdGFTb3VyY2VcbiAgICAgICAgICAgIC5vcGVuKClcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbChtZXJnZSh0aGlzLl9vbkRlc3Ryb3kkLCB0aGlzLl9kYXRhU291cmNlQ2hhbmdlZCQpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9kcm9wZG93blZhbHVlcyQgPSBvZihkYXRhKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9kYXRhU291cmNlID0gZGF0YVNvdXJjZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuIHJldHVybiBjb3VudCBmb3IgbWF0Y2hpbmcgc3VnZ2VzdGlvbiB3aXRoIGlucHV0IHRleHRcbiAgICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXRTdWdnZXN0aW9uc0xlbmd0aCgpOiBudW1iZXIge1xuICAgICAgICBsZXQgY291bnQgPSAwO1xuICAgICAgICB0aGlzLl9kcm9wZG93blZhbHVlcyQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoc3VnZ2VzdGlvbnMpID0+IHtcbiAgICAgICAgICAgIHN1Z2dlc3Rpb25zPy5mb3JFYWNoKChzdWdnZXN0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaW5wdXRUZXh0ICYmIHN1Z2dlc3Rpb24/LnRvTG93ZXJDYXNlKCkuaW5kZXhPZih0aGlzLmlucHV0VGV4dD8udHJpbSgpPy50b0xvd2VyQ2FzZSgpKSA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvdW50Kys7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBjb3VudDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgYXN5bmMgX3VwZGF0ZVNlYXJjaEFubm91Y2VtZW50VGV4dCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgLy8gY3JlYXRlIHNlYXJjaCBzdWdnZXN0aW9uIG1lc3NhZ2Ugd2l0aCBjb3VudC5cbiAgICAgICAgY29uc3Qgc3VnZ2VzdGlvbkNvdW50ID0gdGhpcy5fZ2V0U3VnZ2VzdGlvbnNMZW5ndGgoKTtcbiAgICAgICAgbGV0IHsgc2VhcmNoU3VnZ2VzdGlvbk1lc3NhZ2UsIHNlYXJjaFN1Z2dlc3Rpb25OYXZpZ2F0ZU1lc3NhZ2UgfSA9IHRoaXM7XG4gICAgICAgIGlmIChzZWFyY2hTdWdnZXN0aW9uTWVzc2FnZSkge1xuICAgICAgICAgICAgc2VhcmNoU3VnZ2VzdGlvbk1lc3NhZ2UgPSBzdWdnZXN0aW9uQ291bnQgKyAnICcgKyBzZWFyY2hTdWdnZXN0aW9uTWVzc2FnZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXNlYXJjaFN1Z2dlc3Rpb25NZXNzYWdlIHx8ICFzZWFyY2hTdWdnZXN0aW9uTmF2aWdhdGVNZXNzYWdlKSB7XG4gICAgICAgICAgICBjb25zdCBsYW5nID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5fbGFuZ3VhZ2UkKTtcbiAgICAgICAgICAgIGlmICghc2VhcmNoU3VnZ2VzdGlvbk1lc3NhZ2UpIHtcbiAgICAgICAgICAgICAgICBzZWFyY2hTdWdnZXN0aW9uTWVzc2FnZSA9IHRoaXMuX3RyYW5zbGF0aW9uUmVzb2x2ZXIucmVzb2x2ZShcbiAgICAgICAgICAgICAgICAgICAgbGFuZyxcbiAgICAgICAgICAgICAgICAgICAgJ3BsYXRmb3JtU2VhcmNoRmllbGQuc2VhcmNoU3VnZ2VzdGlvbk1lc3NhZ2UnLFxuICAgICAgICAgICAgICAgICAgICB7IGNvdW50OiBzdWdnZXN0aW9uQ291bnQgfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXNlYXJjaFN1Z2dlc3Rpb25OYXZpZ2F0ZU1lc3NhZ2UpIHtcbiAgICAgICAgICAgICAgICBzZWFyY2hTdWdnZXN0aW9uTmF2aWdhdGVNZXNzYWdlID0gdGhpcy5fdHJhbnNsYXRpb25SZXNvbHZlci5yZXNvbHZlKFxuICAgICAgICAgICAgICAgICAgICBsYW5nLFxuICAgICAgICAgICAgICAgICAgICAncGxhdGZvcm1TZWFyY2hGaWVsZC5zZWFyY2hTdWdnZXN0aW9uTmF2aWdhdGVNZXNzYWdlJ1xuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fY3VycmVudFNlYXJjaFN1Z2dlc3Rpb25Bbm5vdWNlbWVudE1lc3NhZ2UgPVxuICAgICAgICAgICAgc2VhcmNoU3VnZ2VzdGlvbk1lc3NhZ2UgKyAoc3VnZ2VzdGlvbkNvdW50ID4gMCA/IHNlYXJjaFN1Z2dlc3Rpb25OYXZpZ2F0ZU1lc3NhZ2UgOiAnJyk7XG4gICAgICAgIGlmICh0aGlzLmlucHV0VGV4dD8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5fbGl2ZUFubm91bmNlci5hbm5vdW5jZSh0aGlzLl9jdXJyZW50U2VhcmNoU3VnZ2VzdGlvbkFubm91Y2VtZW50TWVzc2FnZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgYXN5bmMgX3NldFVwTW9iaWxlTW9kZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBTRUFSQ0hfRklFTERfQ09NUE9ORU5ULCB1c2VWYWx1ZTogdGhpcyB9XSxcbiAgICAgICAgICAgIHBhcmVudDogdGhpcy5faW5qZWN0b3JcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fZHluYW1pY0NvbXBvbmVudFNlcnZpY2UuY3JlYXRlRHluYW1pY01vZHVsZShcbiAgICAgICAgICAgIHsgaW5wdXRGaWVsZFRlbXBsYXRlOiB0aGlzLmlucHV0RmllbGRUZW1wbGF0ZSwgc3VnZ2VzdGlvbk1lbnVUZW1wbGF0ZTogdGhpcy5zdWdnZXN0aW9uTWVudVRlbXBsYXRlIH0sXG4gICAgICAgICAgICBQbGF0Zm9ybVNlYXJjaEZpZWxkTW9iaWxlTW9kdWxlLFxuICAgICAgICAgICAgU2VhcmNoRmllbGRNb2JpbGVDb21wb25lbnQsXG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGFpbmVyUmVmLFxuICAgICAgICAgICAgaW5qZWN0b3JcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAnc3VnZ2VzdGlvbk1hdGNoZXMnXG59KVxuZXhwb3J0IGNsYXNzIFN1Z2dlc3Rpb25NYXRjaGVzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgdHJhbnNmb3JtKHZhbHVlczogc3RyaW5nW10gfCBudWxsLCBtYXRjaDogc3RyaW5nLCBtb2JpbGUgPSBmYWxzZSk6IHN0cmluZ1tdIHtcbiAgICAgICAgaWYgKCF2YWx1ZXMpIHtcbiAgICAgICAgICAgIHZhbHVlcyA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIGlmIChtb2JpbGUgJiYgIW1hdGNoKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWVzO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHByb2Nlc3NlZE1hdGNoID0gbWF0Y2gudHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIHJldHVybiB2YWx1ZXMuZmlsdGVyKCh2YWx1ZSkgPT4gdmFsdWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKHByb2Nlc3NlZE1hdGNoKSA+IC0xKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibW9iaWxlID8gbW9iaWxlVGVtcGxhdGUgOiBpbnB1dEZpZWxkVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNtb2JpbGVUZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaW5wdXRGaWVsZFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3NlYXJjaENhdGVnb3J5TWVudT5cbiAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzPVwiZmRwLXNlYXJjaC1maWVsZF9fY2F0ZWdvcnktYnV0dG9uIGZkLWlucHV0LWdyb3VwX19idXR0b24gZmQtYnV0dG9uIGZkLWJ1dHRvbi0tbWVudSB7e1xuICAgICAgICAgICAgYXBwZWFyYW5jZT8uY2F0ZWdvcnlCdXR0b25DbGFzc1xuICAgICAgICB9fVwiXG4gICAgICAgIFtmZHBNZW51VHJpZ2dlckZvcl09XCJjYXRlZ29yeU1lbnVcIlxuICAgID5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmZHAtc2VhcmNoLWZpZWxkX19jYXRlZ29yeS1sYWJlbFwiICpuZ0lmPVwiIWhpZGVDYXRlZ29yeUxhYmVsXCI+XG4gICAgICAgICAgICB7eyBfY3VycmVudENhdGVnb3J5Py5sYWJlbCB8fCBjYXRlZ29yeUxhYmVsIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8ZmRwLW1lbnUgI2NhdGVnb3J5TWVudT5cbiAgICAgICAgPGZkcC1tZW51LWl0ZW0gKm5nRm9yPVwibGV0IGNhdGVnb3J5IG9mIGNhdGVnb3JpZXNcIiAoaXRlbVNlbGVjdCk9XCJzZXRDdXJyZW50Q2F0ZWdvcnkoY2F0ZWdvcnkpXCJcbiAgICAgICAgICAgID57eyBjYXRlZ29yeS5sYWJlbCB9fVxuICAgICAgICA8L2ZkcC1tZW51LWl0ZW0+XG4gICAgPC9mZHAtbWVudT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc2VhcmNoQ2F0ZWdvcnlTZWxlY3Q+XG4gICAgPGZkLXNlbGVjdFxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY2F0ZWdvcnlMYWJlbFwiXG4gICAgICAgIFtzZWxlY3RDb250cm9sQ2xhc3NdPVwiYXBwZWFyYW5jZT8uY2F0ZWdvcnlCdXR0b25DbGFzc1wiXG4gICAgICAgIFtzZWxlY3REcm9wZG93bkJ1dHRvbkNsYXNzXT1cImFwcGVhcmFuY2U/LmNhdGVnb3J5RHJvcGRvd25CdXR0b25DbGFzc1wiXG4gICAgICAgICh2YWx1ZUNoYW5nZSk9XCJzZXRDdXJyZW50Q2F0ZWdvcnkoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgICA8bGkgZmQtb3B0aW9uICpuZ0Zvcj1cImxldCBjYXRlZ29yeSBvZiBjYXRlZ29yaWVzXCIgW3ZhbHVlXT1cImNhdGVnb3J5XCI+e3sgY2F0ZWdvcnkubGFiZWwgfX08L2xpPlxuICAgIDwvZmQtc2VsZWN0PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNpbnB1dEZpZWxkVGVtcGxhdGU+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRcIlxuICAgICAgICBbY2xhc3Mud2l0aC1jYXRlZ29yaWVzXT1cIl9zaG93Q2F0ZWdvcnlEcm9wZG93blwiXG4gICAgICAgIFtjbGFzcy5pcy1sb2FkaW5nXT1cImlzTG9hZGluZ1wiXG4gICAgICAgIFtjbGFzcy5pcy1jb21wYWN0XT1cImNvbnRlbnREZW5zaXR5T2JzZXJ2ZXIuaXNDb21wYWN0JCB8IGFzeW5jXCJcbiAgICAgICAgW2NsYXNzLmhpZGUtY2F0ZWdvcnktbGFiZWxdPVwiaGlkZUNhdGVnb3J5TGFiZWxcIlxuICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgI2lucHV0R3JvdXBcbiAgICAgICAgICAgIGNsYXNzPVwiZmRwLXNlYXJjaC1maWVsZF9faW5wdXQtZ3JvdXAgZmQtaW5wdXQtZ3JvdXAge3sgYXBwZWFyYW5jZT8uc2VhcmNoQ2xhc3MgfX1cIlxuICAgICAgICAgICAgW2NsYXNzLmlzLWZvY3VzXT1cImlzRm9jdXNlZFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1pbnB1dC1ncm91cF9fYWRkb24gZmQtaW5wdXQtZ3JvdXBfX2FkZG9uLS1idXR0b24ge3sgYXBwZWFyYW5jZT8uc2VhcmNoQ2F0ZWdvcnlDbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJfc2hvd0NhdGVnb3J5RHJvcGRvd25cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImNhdGVnb3J5TW9kZSA9PT0gJ3NlbGVjdCcgPyBzZWFyY2hDYXRlZ29yeVNlbGVjdCA6IHNlYXJjaENhdGVnb3J5TWVudVwiXG4gICAgICAgICAgICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAjaW5wdXRGaWVsZFxuICAgICAgICAgICAgICAgIHR5cGU9XCJzZWFyY2hcIlxuICAgICAgICAgICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX2lucHV0IGZkLWlucHV0IGZkLWlucHV0LWdyb3VwX19pbnB1dCB7eyBhcHBlYXJhbmNlPy5zZWFyY2hGaWVsZENsYXNzIH19XCJcbiAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJfaW5wdXRJZFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgPyAnJyA6IG51bGxcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsIHx8ICdwbGF0Zm9ybVNlYXJjaEZpZWxkLnNlYXJjaElucHV0TGFiZWwnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJfbWVudUlkXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIlxuICAgICAgICAgICAgICAgICAgICAoX2Ryb3Bkb3duVmFsdWVzJCB8IGFzeW5jKT8ubGVuZ3RoICE9PSAwID8gKF9zaG93RHJvcGRvd24gPyAndHJ1ZScgOiAnZmFsc2UnKSA6IG51bGxcbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwiKF9kcm9wZG93blZhbHVlcyQgfCBhc3luYyk/Lmxlbmd0aCAhPT0gMFwiXG4gICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJvbktleWRvd24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25TZWFyY2hTdWJtaXQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpbnB1dFRleHRcIlxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm1vYmlsZSAmJiBvcGVuTW9iaWxlTW9kZSgpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtaW5wdXQtZ3JvdXBfX2FkZG9uIGZkLWlucHV0LWdyb3VwX19hZGRvbi0tYnV0dG9uIHt7IGFwcGVhcmFuY2U/LmFkZG9uQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaW5wdXRUZXh0ICYmIGlucHV0VGV4dC5sZW5ndGggPiAwXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cIiFtb2JpbGVcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidwbGF0Zm9ybVNlYXJjaEZpZWxkLmNsZWFyQnV0dG9uVGl0bGUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX2NsZWFyIGZkLWJ1dHRvbiBmZC1idXR0b24tLXRyYW5zcGFyZW50IHt7IGFwcGVhcmFuY2U/LmJ1dHRvbkNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmZkLWlucHV0LWdyb3VwX19idXR0b25dPVwiIWFwcGVhcmFuY2U/LnJlbW92ZUdyb3VwQnV0dG9uQ2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICcnIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIl9jbGVhcklkXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsZWFyVGV4dElucHV0KClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJkZWNsaW5lXCI+PC9mZC1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWlucHV0LWdyb3VwX19hZGRvbiBmZC1pbnB1dC1ncm91cF9fYWRkb24tLWJ1dHRvbiB7eyBhcHBlYXJhbmNlPy5hZGRvbkNsYXNzIH19IHt7XG4gICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U/LnNlYXJjaFN1Ym1pdENsYXNzXG4gICAgICAgICAgICAgICAgfX1cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9yY2VTZWFyY2hCdXR0b24gfHwgaXNMb2FkaW5nIHx8ICghaXNMb2FkaW5nICYmICFfaXNTZWFyY2hEb25lKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCIhbW9iaWxlXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhZGlzYWJsZVNlYXJjaFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ3BsYXRmb3JtU2VhcmNoRmllbGQuc3VibWl0QnV0dG9uVGl0bGUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX3N1Ym1pdCBmZC1idXR0b24gZmQtYnV0dG9uLS10cmFuc3BhcmVudCB7eyBhcHBlYXJhbmNlPy5idXR0b25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5mZC1pbnB1dC1ncm91cF9fYnV0dG9uXT1cIiFhcHBlYXJhbmNlPy5yZW1vdmVHcm91cEJ1dHRvbkNsYXNzXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiX3N1Ym1pdElkXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgPyAnJyA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TZWFyY2hTdWJtaXQoKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtaWNvbiBnbHlwaD1cInNlYXJjaFwiPjwvZmQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1pbnB1dC1ncm91cF9fYWRkb24gZmQtaW5wdXQtZ3JvdXBfX2FkZG9uLS1idXR0b24ge3sgYXBwZWFyYW5jZT8uYWRkb25DbGFzcyB9fSB7e1xuICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPy5zZWFyY2hTdWJtaXRDbGFzc1xuICAgICAgICAgICAgICAgIH19XCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiFkaXNhYmxlUmVmcmVzaCAmJiAhaXNMb2FkaW5nICYmIChfaXNSZWZyZXNoIHx8IF9pc1NlYXJjaERvbmUpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cIiFtb2JpbGVcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidwbGF0Zm9ybVNlYXJjaEZpZWxkLnN5bmNocm9uaXplQnV0dG9uVGl0bGUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX2xvYWRpbmcgZmQtaW5wdXQtZ3JvdXBfX2J1dHRvbiBmZC1idXR0b24gZmQtYnV0dG9uLS10cmFuc3BhcmVudCB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgYXBwZWFyYW5jZT8uYnV0dG9uQ2xhc3NcbiAgICAgICAgICAgICAgICAgICAgfX1cIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICcnIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIl9yZWZyZXNoSWRcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TZWFyY2hTdWJtaXQoKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtaWNvbiBnbHlwaD1cInN5bmNocm9uaXplXCI+PC9mZC1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc3VnZ2VzdGlvbk1lbnVUZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2Ryb3Bkb3duVmFsdWVzJCB8IGFzeW5jIHwgc3VnZ2VzdGlvbk1hdGNoZXMgOiBpbnB1dFRleHQgOiBtb2JpbGUgYXMgc3VnZ2VzdGlvbnNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX3N1Z2dlc3Rpb24tZHJvcGRvd25cIiBbYXR0ci5kaXJdPVwiX2RpclwiICpuZ0lmPVwic3VnZ2VzdGlvbnM/Lmxlbmd0aFwiPlxuICAgICAgICAgICAgPG5hdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtbWVudVwiXG4gICAgICAgICAgICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmlzLWNvbXBhY3RdPVwiY29udGVudERlbnNpdHlPYnNlcnZlci5pc0NvbXBhY3QkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5mZC1tZW51LS1tb2JpbGVdPVwibW9iaWxlXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZmQtbWVudS0tb3ZlcmZsb3ddPVwiIW1vYmlsZVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiX21lbnVJZFwiXG4gICAgICAgICAgICAgICAgI21lbnVcbiAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJvbktleWRvd24oJGV2ZW50KVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiZmQtbWVudV9fbGlzdFwiIHJvbGU9XCJtZW51XCI+XG4gICAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAgICAgZmRwU2VhcmNoRmllbGRTdWdnZXN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX3N1Z2dlc3Rpb24taXRlbSBmZC1tZW51X19pdGVtIGZkLW1lbnVfX2xpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHZhbHVlIG9mIHN1Z2dlc3Rpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uSXRlbUNsaWNrKHZhbHVlKTsgJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24udGFiKT1cIm9uSXRlbUNsaWNrKHZhbHVlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5dXAuc3BhY2UpPVwib25JdGVtQ2xpY2sodmFsdWUpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKHZhbHVlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cInZhbHVlIHwgaGlnaGxpZ2h0IDogaW5wdXRUZXh0IDogdHJ1ZSA6IHRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcm9sZT1cIm1lbnVpdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbGk+XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgIDwvbmF2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|