@fundamental-ngx/platform 0.43.6 → 0.43.7

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.
Files changed (44) hide show
  1. package/esm2020/form/multi-combobox/commons/base-multi-combobox.mjs +8 -2
  2. package/esm2020/search-field/search-field.component.mjs +3 -3
  3. package/esm2020/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +1 -1
  4. package/esm2020/table/components/table-toolbar/table-toolbar.component.mjs +3 -3
  5. package/esm2020/table/table.component.mjs +30 -5
  6. package/esm2020/table-helpers/directives/table-draggable.directive.mjs +8 -2
  7. package/esm2020/table-helpers/table.mjs +2 -1
  8. package/esm2020/upload-collection/upload-collection/upload-collection.component.mjs +1 -1
  9. package/esm2020/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +1 -1
  10. package/fesm2015/fundamental-ngx-platform-form.mjs +7 -1
  11. package/fesm2015/fundamental-ngx-platform-form.mjs.map +1 -1
  12. package/fesm2015/fundamental-ngx-platform-search-field.mjs +2 -2
  13. package/fesm2015/fundamental-ngx-platform-search-field.mjs.map +1 -1
  14. package/fesm2015/fundamental-ngx-platform-smart-filter-bar.mjs +1 -1
  15. package/fesm2015/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
  16. package/fesm2015/fundamental-ngx-platform-table-helpers.mjs +8 -1
  17. package/fesm2015/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
  18. package/fesm2015/fundamental-ngx-platform-table.mjs +31 -4
  19. package/fesm2015/fundamental-ngx-platform-table.mjs.map +1 -1
  20. package/fesm2015/fundamental-ngx-platform-upload-collection.mjs +1 -1
  21. package/fesm2015/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
  22. package/fesm2015/fundamental-ngx-platform-variant-management.mjs +1 -1
  23. package/fesm2015/fundamental-ngx-platform-variant-management.mjs.map +1 -1
  24. package/fesm2020/fundamental-ngx-platform-form.mjs +7 -1
  25. package/fesm2020/fundamental-ngx-platform-form.mjs.map +1 -1
  26. package/fesm2020/fundamental-ngx-platform-search-field.mjs +2 -2
  27. package/fesm2020/fundamental-ngx-platform-search-field.mjs.map +1 -1
  28. package/fesm2020/fundamental-ngx-platform-smart-filter-bar.mjs +1 -1
  29. package/fesm2020/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
  30. package/fesm2020/fundamental-ngx-platform-table-helpers.mjs +8 -1
  31. package/fesm2020/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
  32. package/fesm2020/fundamental-ngx-platform-table.mjs +29 -4
  33. package/fesm2020/fundamental-ngx-platform-table.mjs.map +1 -1
  34. package/fesm2020/fundamental-ngx-platform-upload-collection.mjs +1 -1
  35. package/fesm2020/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
  36. package/fesm2020/fundamental-ngx-platform-variant-management.mjs +1 -1
  37. package/fesm2020/fundamental-ngx-platform-variant-management.mjs.map +1 -1
  38. package/fundamental-ngx-platform-v0.43.7.tgz +0 -0
  39. package/package.json +4 -4
  40. package/schematics/ng-add/index.js +1 -1
  41. package/table/components/table-toolbar/table-toolbar.component.d.ts +2 -2
  42. package/table/table.component.d.ts +15 -1
  43. package/table-helpers/table.d.ts +21 -19
  44. package/fundamental-ngx-platform-v0.43.6.tgz +0 -0
@@ -486,7 +486,7 @@ SearchFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
486
486
  provide: FD_SHELLBAR_SEARCH_COMPONENT,
487
487
  useExisting: SearchFieldComponent
488
488
  }
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]=\"_showDropdown ? 'true' : 'false'\"\n aria-haspopup=\"true\"\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 <div\n class=\"fdp-search-field__suggestion-dropdown\"\n [attr.dir]=\"_dir\"\n *ngIf=\"(_dropdownValues$ | async | suggestionMatches : inputText : mobile)?.length\"\n >\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 _dropdownValues$ | async | suggestionMatches : inputText : mobile\"\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-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 });
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 });
490
490
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SearchFieldComponent, decorators: [{
491
491
  type: Component,
492
492
  args: [{ selector: 'fdp-search-field', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
@@ -495,7 +495,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
495
495
  provide: FD_SHELLBAR_SEARCH_COMPONENT,
496
496
  useExisting: SearchFieldComponent
497
497
  }
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]=\"_showDropdown ? 'true' : 'false'\"\n aria-haspopup=\"true\"\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 <div\n class=\"fdp-search-field__suggestion-dropdown\"\n [attr.dir]=\"_dir\"\n *ngIf=\"(_dropdownValues$ | async | suggestionMatches : inputText : mobile)?.length\"\n >\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 _dropdownValues$ | async | suggestionMatches : inputText : mobile\"\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-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"] }]
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"] }]
499
499
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }, { type: i2.RtlService, decorators: [{
500
500
  type: Optional
501
501
  }] }, { type: Document, decorators: [{
@@ -595,4 +595,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
595
595
  name: 'suggestionMatches'
596
596
  }]
597
597
  }] });
598
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osUUFBUSxFQUNSLE1BQU0sRUFDTixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFDTixJQUFJLEVBRUosU0FBUyxFQUVULFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JFLE9BQU8sRUFBcUIsT0FBTyxFQUFFLGFBQWEsRUFBYyxNQUFNLHNCQUFzQixDQUFDO0FBQzdGLE9BQU8sRUFBbUIsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUdyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9GLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLEVB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O21CQUFDO29CQUNGLElBQUksRUFBRSxtQkFBbUI7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3RvcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFBpcGUsXG4gICAgUGlwZVRyYW5zZm9ybSxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBET1dOX0FSUk9XLCBFU0NBUEUsIFVQX0FSUk9XIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IENvbm5lY3RlZFBvc2l0aW9uLCBPdmVybGF5LCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgRm9jdXNhYmxlT3B0aW9uLCBGb2N1c0tleU1hbmFnZXIsIExpdmVBbm5vdW5jZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgZnJvbUV2ZW50LCBpc09ic2VydmFibGUsIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsIEtleVV0aWwsIFJ0bFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFBvcG92ZXJDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcG9wb3Zlcic7XG5pbXBvcnQgeyBNb2JpbGVNb2RlQ29uZmlnIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL21vYmlsZS1tb2RlJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQsIFNlYXJjaEZpZWxkRGF0YVNvdXJjZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7XG4gICAgU0VBUkNIX0ZJRUxEX0NPTVBPTkVOVCxcbiAgICBTZWFyY2hGaWVsZE1vYmlsZUludGVyZmFjZVxufSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkLW1vYmlsZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2VhcmNoRmllbGRNb2JpbGVDb21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkL3NlYXJjaC1maWVsZC1tb2JpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IFBsYXRmb3JtU2VhcmNoRmllbGRNb2JpbGVNb2R1bGUgfSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkLW1vYmlsZS5tb2R1bGUnO1xuaW1wb3J0IHsgRmRMYW5ndWFnZSwgRkRfTEFOR1VBR0UsIFRyYW5zbGF0aW9uUmVzb2x2ZXIgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2kxOG4nO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlPYnNlcnZlciwgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVycyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jb250ZW50LWRlbnNpdHknO1xuaW1wb3J0IHsgRkRfU0hFTExCQVJfU0VBUkNIX0NPTVBPTkVOVCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGVsbGJhcic7XG5pbXBvcnQgeyBTZWFyY2hDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcbmltcG9ydCBlcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaElucHV0IHtcbiAgICB0ZXh0OiBzdHJpbmc7XG4gICAgY2F0ZWdvcnk6IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VnZ2VzdGlvbkl0ZW0ge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgaXNIaXN0b3JpY2FsPzogc3RyaW5nO1xuICAgIGRhdGE/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/LnNlYXJjaENhdGVnb3J5Q2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiX3Nob3dDYXRlZ29yeURyb3Bkb3duXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjYXRlZ29yeU1vZGUgPT09ICdzZWxlY3QnID8gc2VhcmNoQ2F0ZWdvcnlTZWxlY3QgOiBzZWFyY2hDYXRlZ29yeU1lbnVcIlxuICAgICAgICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgI2lucHV0RmllbGRcbiAgICAgICAgICAgICAgICB0eXBlPVwic2VhcmNoXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZHAtc2VhcmNoLWZpZWxkX19pbnB1dCBmZC1pbnB1dCBmZC1pbnB1dC1ncm91cF9faW5wdXQge3sgYXBwZWFyYW5jZT8uc2VhcmNoRmllbGRDbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiX2lucHV0SWRcIlxuICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gJycgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cIl9tZW51SWRcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiX3Nob3dEcm9wZG93biA/ICd0cnVlJyA6ICdmYWxzZSdcIlxuICAgICAgICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvblNlYXJjaFN1Ym1pdCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImlucHV0VGV4dFwiXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwibW9iaWxlICYmIG9wZW5Nb2JpbGVNb2RlKClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1pbnB1dC1ncm91cF9fYWRkb24gZmQtaW5wdXQtZ3JvdXBfX2FkZG9uLS1idXR0b24ge3sgYXBwZWFyYW5jZT8uYWRkb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJpbnB1dFRleHQgJiYgaW5wdXRUZXh0Lmxlbmd0aCA+IDBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidwbGF0Zm9ybVNlYXJjaEZpZWxkLmNsZWFyQnV0dG9uVGl0bGUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkcC1zZWFyY2gtZmllbGRfX2NsZWFyIGZkLWJ1dHRvbiBmZC1idXR0b24tLXRyYW5zcGFyZW50IHt7IGFwcGVhcmFuY2U/LmJ1dHRvbkNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmZkLWlucHV0LWdyb3VwX19idXR0b25dPVwiIWFwcGVhcmFuY2U/LnJlbW92ZUdyb3VwQnV0dG9uQ2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICcnIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIl9jbGVhcklkXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsZWFyVGV4dElucHV0KClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJkZWNsaW5lXCI+PC9mZC1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWlucHV0LWdyb3VwX19hZGRvbiBmZC1pbnB1dC1ncm91cF9fYWRkb24tLWJ1dHRvbiB7eyBhcHBlYXJhbmNlPy5hZGRvbkNsYXNzIH19IHt7XG4gICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U/LnNlYXJjaFN1Ym1pdENsYXNzXG4gICAgICAgICAgICAgICAgfX1cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9yY2VTZWFyY2hCdXR0b24gfHwgaXNMb2FkaW5nIHx8ICghaXNMb2FkaW5nICYmICFfaXNTZWFyY2hEb25lKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFkaXNhYmxlU2VhcmNoXCJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidwbGF0Zm9ybVNlYXJjaEZpZWxkLnN1Ym1pdEJ1dHRvblRpdGxlJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZHAtc2VhcmNoLWZpZWxkX19zdWJtaXQgZmQtYnV0dG9uIGZkLWJ1dHRvbi0tdHJhbnNwYXJlbnQge3sgYXBwZWFyYW5jZT8uYnV0dG9uQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZmQtaW5wdXQtZ3JvdXBfX2J1dHRvbl09XCIhYXBwZWFyYW5jZT8ucmVtb3ZlR3JvdXBCdXR0b25DbGFzc1wiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIl9zdWJtaXRJZFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gJycgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2VhcmNoU3VibWl0KClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJzZWFyY2hcIj48L2ZkLWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtaW5wdXQtZ3JvdXBfX2FkZG9uIGZkLWlucHV0LWdyb3VwX19hZGRvbi0tYnV0dG9uIHt7IGFwcGVhcmFuY2U/LmFkZG9uQ2xhc3MgfX0ge3tcbiAgICAgICAgICAgICAgICAgICAgYXBwZWFyYW5jZT8uc2VhcmNoU3VibWl0Q2xhc3NcbiAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhZGlzYWJsZVJlZnJlc2ggJiYgIWlzTG9hZGluZyAmJiAoX2lzUmVmcmVzaCB8fCBfaXNTZWFyY2hEb25lKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ3BsYXRmb3JtU2VhcmNoRmllbGQuc3luY2hyb25pemVCdXR0b25UaXRsZScgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmRwLXNlYXJjaC1maWVsZF9fbG9hZGluZyBmZC1pbnB1dC1ncm91cF9fYnV0dG9uIGZkLWJ1dHRvbiBmZC1idXR0b24tLXRyYW5zcGFyZW50IHt7XG4gICAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPy5idXR0b25DbGFzc1xuICAgICAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gJycgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiX3JlZnJlc2hJZFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNlYXJjaFN1Ym1pdCgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1pY29uIGdseXBoPVwic3luY2hyb25pemVcIj48L2ZkLWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzdWdnZXN0aW9uTWVudVRlbXBsYXRlPlxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJmZHAtc2VhcmNoLWZpZWxkX19zdWdnZXN0aW9uLWRyb3Bkb3duXCJcbiAgICAgICAgW2F0dHIuZGlyXT1cIl9kaXJcIlxuICAgICAgICAqbmdJZj1cIihfZHJvcGRvd25WYWx1ZXMkIHwgYXN5bmMgfCBzdWdnZXN0aW9uTWF0Y2hlcyA6IGlucHV0VGV4dCA6IG1vYmlsZSk/Lmxlbmd0aFwiXG4gICAgPlxuICAgICAgICA8bmF2XG4gICAgICAgICAgICBjbGFzcz1cImZkLW1lbnVcIlxuICAgICAgICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICBbY2xhc3MuaXMtY29tcGFjdF09XCJjb250ZW50RGVuc2l0eU9ic2VydmVyLmlzQ29tcGFjdCQgfCBhc3luY1wiXG4gICAgICAgICAgICBbY2xhc3MuZmQtbWVudS0tbW9iaWxlXT1cIm1vYmlsZVwiXG4gICAgICAgICAgICBbY2xhc3MuZmQtbWVudS0tb3ZlcmZsb3ddPVwiIW1vYmlsZVwiXG4gICAgICAgICAgICBbYXR0ci5pZF09XCJfbWVudUlkXCJcbiAgICAgICAgICAgICNtZW51XG4gICAgICAgICAgICAoa2V5ZG93bik9XCJvbktleWRvd24oJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx1bCBjbGFzcz1cImZkLW1lbnVfX2xpc3RcIiByb2xlPVwibWVudVwiPlxuICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICBmZHBTZWFyY2hGaWVsZFN1Z2dlc3Rpb25cbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZHAtc2VhcmNoLWZpZWxkX19zdWdnZXN0aW9uLWl0ZW0gZmQtbWVudV9faXRlbSBmZC1tZW51X19saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHZhbHVlIG9mIF9kcm9wZG93blZhbHVlcyQgfCBhc3luYyB8IHN1Z2dlc3Rpb25NYXRjaGVzIDogaW5wdXRUZXh0IDogbW9iaWxlXCJcbiAgICAgICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25JdGVtQ2xpY2sodmFsdWUpOyAkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gICAgICAgICAgICAgICAgICAgIChrZXlkb3duLnRhYik9XCJvbkl0ZW1DbGljayh2YWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgICAoa2V5dXAuc3BhY2UpPVwib25JdGVtQ2xpY2sodmFsdWUpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25JdGVtQ2xpY2sodmFsdWUpXCJcbiAgICAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJ2YWx1ZSB8IGhpZ2hsaWdodCA6IGlucHV0VGV4dCA6IHRydWUgOiB0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgcm9sZT1cIm1lbnVpdGVtXCJcbiAgICAgICAgICAgICAgICA+PC9saT5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvbmF2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
598
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9zZWFyY2gtZmllbGQvc2VhcmNoLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osUUFBUSxFQUNSLE1BQU0sRUFDTixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFDTixJQUFJLEVBRUosU0FBUyxFQUVULFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JFLE9BQU8sRUFBcUIsT0FBTyxFQUFFLGFBQWEsRUFBYyxNQUFNLHNCQUFzQixDQUFDO0FBQzdGLE9BQU8sRUFBbUIsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUdyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9GLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLEVB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O21CQUFDO29CQUNGLElBQUksRUFBRSxtQkFBbUI7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3RvcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFBpcGUsXG4gICAgUGlwZVRyYW5zZm9ybSxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBET1dOX0FSUk9XLCBFU0NBUEUsIFVQX0FSUk9XIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IENvbm5lY3RlZFBvc2l0aW9uLCBPdmVybGF5LCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgRm9jdXNhYmxlT3B0aW9uLCBGb2N1c0tleU1hbmFnZXIsIExpdmVBbm5vdW5jZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgZnJvbUV2ZW50LCBpc09ic2VydmFibGUsIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsIEtleVV0aWwsIFJ0bFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFBvcG92ZXJDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcG9wb3Zlcic7XG5pbXBvcnQgeyBNb2JpbGVNb2RlQ29uZmlnIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL21vYmlsZS1tb2RlJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQsIFNlYXJjaEZpZWxkRGF0YVNvdXJjZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7XG4gICAgU0VBUkNIX0ZJRUxEX0NPTVBPTkVOVCxcbiAgICBTZWFyY2hGaWVsZE1vYmlsZUludGVyZmFjZVxufSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkLW1vYmlsZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2VhcmNoRmllbGRNb2JpbGVDb21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkL3NlYXJjaC1maWVsZC1tb2JpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IFBsYXRmb3JtU2VhcmNoRmllbGRNb2JpbGVNb2R1bGUgfSBmcm9tICcuL3NlYXJjaC1maWVsZC1tb2JpbGUvc2VhcmNoLWZpZWxkLW1vYmlsZS5tb2R1bGUnO1xuaW1wb3J0IHsgRmRMYW5ndWFnZSwgRkRfTEFOR1VBR0UsIFRyYW5zbGF0aW9uUmVzb2x2ZXIgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2kxOG4nO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlPYnNlcnZlciwgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVycyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jb250ZW50LWRlbnNpdHknO1xuaW1wb3J0IHsgRkRfU0hFTExCQVJfU0VBUkNIX0NPTVBPTkVOVCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGVsbGJhcic7XG5pbXBvcnQgeyBTZWFyY2hDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcbmltcG9ydCBlcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaElucHV0IHtcbiAgICB0ZXh0OiBzdHJpbmc7XG4gICAgY2F0ZWdvcnk6IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VnZ2VzdGlvbkl0ZW0ge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgaXNIaXN0b3JpY2FsPzogc3RyaW5nO1xuICAgIGRhdGE/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==