{"version":3,"sources":["../node_modules/react/index.js","../node_modules/tslib/tslib.es6.js","../node_modules/react/jsx-runtime.js","../../src/motion/AnimationStyles.ts","../../src/classNames/AnimationClassNames.ts","../../src/utilities/buildClassMap.ts","../../src/styles/CommonStyles.ts","../../src/styles/zIndexes.ts","../../src/styles/getFocusStyle.ts","../../src/styles/hiddenContentStyle.ts","../../src/styles/getGlobalClassNames.ts","../../src/styles/theme.ts","../../src/styles/GeneralStyles.ts","../../src/styles/getPlaceholderStyles.ts","../../src/utilities/icons.ts","../../src/version.ts","../../src/index.ts","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../../src/components/Persona/Persona.types.ts","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../../src/fonts/FluentFonts.ts","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../src/utilities/positioning/positioning.types.ts","../node_modules/prop-types/index.js","../../modules/createNamedContext.js","../../modules/HistoryContext.js","../../modules/RouterContext.js","../../modules/Router.js","../../modules/MemoryRouter.js","../../modules/Lifecycle.js","../../modules/generatePath.js","../../modules/Redirect.js","../../modules/matchPath.js","../../modules/Route.js","../../modules/StaticRouter.js","../../modules/Switch.js","../../modules/hooks.js","../../src/components/MessageBar/MessageBar.types.ts","../../src/dom/getWindow.ts","../../src/common/DirectionalHint.ts","../../src/components/DetailsList/DetailsList.types.ts","../../src/KeyCodes.ts","../node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../../src/utils/isCheckBoxInput.ts","../../src/utils/isDateObject.ts","../../src/utils/isNullOrUndefined.ts","../../src/utils/isObject.ts","../../src/logic/getEventValue.ts","../../src/logic/isNameInFieldArray.ts","../../src/logic/getNodeParentName.ts","../../src/utils/compact.ts","../../src/utils/isUndefined.ts","../../src/utils/get.ts","../../src/constants.ts","../../src/useFormContext.tsx","../../src/logic/getProxyFormState.ts","../../src/utils/isEmptyObject.ts","../../src/logic/shouldRenderFormState.ts","../../src/utils/convertToArrayPayload.ts","../../src/logic/shouldSubscribeByName.ts","../../src/useSubscribe.ts","../../src/utils/isString.ts","../../src/logic/generateWatchOutput.ts","../../src/utils/isFunction.ts","../../src/utils/objectHasFunction.ts","../../src/useController.ts","../../src/useWatch.ts","../../src/useFormState.ts","../../src/controller.tsx","../../src/logic/appendErrors.ts","../../src/utils/isKey.ts","../../src/utils/stringToPath.ts","../../src/utils/set.ts","../../src/logic/focusFieldBy.ts","../../src/logic/isWatched.ts","../../src/utils/isWeb.ts","../../src/utils/cloneObject.ts","../../src/utils/unset.ts","../../src/utils/createSubject.ts","../../src/utils/isPrimitive.ts","../../src/utils/deepEqual.ts","../../src/utils/getValidationModes.ts","../../src/utils/isBoolean.ts","../../src/utils/isFileInput.ts","../../src/utils/isHTMLElement.ts","../../src/utils/isMultipleSelect.ts","../../src/utils/isRadioInput.ts","../../src/utils/isRadioOrCheckbox.ts","../../src/utils/live.ts","../../src/logic/getDirtyFields.ts","../../src/logic/getCheckboxValue.ts","../../src/logic/getFieldValueAs.ts","../../src/logic/getRadioValue.ts","../../src/logic/getFieldValue.ts","../../src/logic/getResolverOptions.ts","../../src/utils/isRegex.ts","../../src/logic/getRuleValue.ts","../../src/logic/hasValidation.ts","../../src/logic/schemaErrorLookup.ts","../../src/logic/skipValidation.ts","../../src/logic/unsetEmptyArray.ts","../../src/utils/isMessage.ts","../../src/logic/getValidateError.ts","../../src/logic/getValueAndMessage.ts","../../src/logic/validateField.ts","../../src/logic/createFormControl.ts","../../src/useForm.ts","../../src/focus.ts","../../src/elementContainsAttribute.ts","../../src/components/Image/Image.types.ts","../../src/properties.ts","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../../modules/BrowserRouter.js","../../modules/HashRouter.js","../../modules/utils/locationUtils.js","../../modules/Link.js","../../modules/NavLink.js","../../src/selection/Selection.types.ts","../../src/components/DetailsList/DetailsRow.styles.ts","../../src/dateValues/dateValues.ts","../../src/getParent.ts","../../src/getVirtualParent.ts","../../src/isVirtualElement.ts","../../src/components/Button/BaseButton.classNames.ts","../../src/dom/getDocument.ts","../node_modules/@babel/runtime/helpers/esm/extends.js","../../src/components/GroupedList/GroupSpacer.tsx","../../src/utilities/keytips/KeytipConstants.ts","../../src/useConst.ts","../../src/Stylesheet.ts","../../src/memoize.ts","../node_modules/resolve-pathname/esm/resolve-pathname.js","../node_modules/value-equal/esm/value-equal.js","../node_modules/history/esm/history.js","../node_modules/axios/lib/utils.js","../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/tiny-invariant/dist/tiny-invariant.esm.js","../../src/EventGroup.ts","../../src/components/FocusZone/FocusZone.types.ts","../../src/customizations/Customizations.ts","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../../src/StyleOptionsState.ts","../node_modules/@babel/runtime/helpers/esm/typeof.js","../../src/components/Icon/Icon.styles.ts","../../src/rtl.ts","../../src/components/DetailsList/DetailsRowCheck.styles.ts","../../src/getVendorSettings.ts","../../src/transforms/kebabRules.ts","../../src/transforms/prefixRules.ts","../../src/transforms/provideUnits.ts","../../src/transforms/rtlifyRules.ts","../../src/styleToClassName.ts","../../src/tokenizeWithParentheses.ts","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../src/components/Button/BaseButton.styles.ts","../../src/components/ContextualMenu/ContextualMenu.types.ts","../../src/components/Icon/ImageIcon.tsx","../../src/utilities/contextualMenu/contextualMenuUtility.ts","../../src/components/ContextualMenu/ContextualMenuItem.base.tsx","../../src/components/Divider/VerticalDivider.classNames.ts","../../src/components/ContextualMenu/ContextualMenu.cnstyles.ts","../../src/components/ContextualMenu/ContextualMenu.classNames.ts","../../src/components/ContextualMenu/ContextualMenuItem.ts","../../src/components/ContextualMenu/ContextualMenuItemWrapper/ContextualMenuItemWrapper.tsx","../../src/utilities/keytips/KeytipUtils.ts","../../src/components/KeytipData/useKeytipData.ts","../../src/components/KeytipData/KeytipData.tsx","../../src/components/ContextualMenu/ContextualMenuItemWrapper/ContextualMenuAnchor.tsx","../../src/components/Divider/VerticalDivider.base.tsx","../../src/components/Divider/VerticalDivider.tsx","../../src/components/Divider/VerticalDivider.styles.ts","../../src/components/ContextualMenu/ContextualMenuItemWrapper/ContextualMenuSplitButton.tsx","../../src/components/ContextualMenu/ContextualMenuItemWrapper/ContextualMenuButton.tsx","../../src/utilities/MenuContext/MenuContext.ts","../../src/components/ContextualMenu/ContextualMenu.base.tsx","../../src/components/ContextualMenu/ContextualMenu.styles.ts","../../src/components/ContextualMenu/ContextualMenu.tsx","../../src/components/Button/SplitButton/SplitButton.classNames.ts","../../src/components/Button/BaseButton.tsx","../../src/customizations/CustomizerContext.ts","../../src/setFocusVisibility.ts","../node_modules/react-i18next/dist/es/context.js","../../src/components/Dialog/DialogContent.types.ts","../../src/elementContains.ts","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../../src/dom/setSSR.ts","../../src/components/Button/SplitButton/SplitButton.styles.ts","../../src/components/pickers/BasePicker.types.ts","../../src/components/DetailsList/DetailsHeader.styles.ts","../../src/sessionStorage.ts","../node_modules/cookie/index.js","../../src/components/pickers/BasePicker.styles.ts","../../src/components/Link/Link.styles.ts","../node_modules/webpack/buildin/global.js","../../src/warn/warn.ts","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../../src/concatStyleSets.ts","../../src/utilities.ts","../../src/components/pickers/Suggestions/Suggestions.types.ts","../../src/components/Announced/Announced.base.tsx","../../src/components/Announced/Announced.ts","../../src/components/Announced/Announced.styles.ts","../../src/components/pickers/Suggestions/Suggestions.scss.ts","../../src/components/pickers/Suggestions/SuggestionsItem.tsx","../../src/components/pickers/Suggestions/Suggestions.tsx","../../src/components/pickers/Suggestions/Suggestions.styles.ts","../../src/components/pickers/Suggestions/SuggestionsController.ts","../../src/components/Autofill/Autofill.tsx","../../src/components/pickers/BasePicker.scss.ts","../../src/components/pickers/BasePicker.tsx","../node_modules/@fortawesome/fontawesome-svg-core/index.es.js","../../src/css.ts","../node_modules/react-dom/index.js","../../src/utilities/ThemeProvider/useTheme.ts","../../src/utilities/ThemeProvider/ThemeContext.ts","../../src/utilities/makeSemanticColors.ts","../../src/extractStyleParts.ts","../../src/findElementRecursive.ts","../node_modules/@babel/runtime/helpers/defineProperty.js","../../src/components/pickers/Suggestions/SuggestionsItem.styles.ts","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../src/components/DetailsList/DetailsRowCheck.tsx","../../src/components/Check/Check.styles.ts","../node_modules/@babel/runtime/helpers/esm/objectSpread.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/i18next/dist/esm/i18next.js","../../src/components/Image/Image.base.tsx","../../src/components/Image/Image.styles.ts","../../src/components/Image/Image.tsx","../node_modules/universal-cookie/es6/utils.js","../node_modules/universal-cookie/es6/Cookies.js","../node_modules/universal-cookie/es6/index.js","../../src/setVersion.ts","../../src/appendFunction.ts","../../src/extendComponent.ts","../../src/hoist.ts","../../src/utilities/decorators/BaseDecorator.ts","../node_modules/react-cookie/es6/Cookies.js","../node_modules/react-cookie/es6/CookiesContext.js","../../src/Async.ts","../../src/useOnEvent.ts","../../src/WindowProvider.tsx","../node_modules/object-assign/index.js","../node_modules/axios/lib/defaults.js","../node_modules/process/browser.js","../../src/customizations/useCustomizationSettings.ts","../../src/setPortalAttribute.ts","../../src/utilities/decorators/withResponsiveMode.tsx","../../src/hoistStatics.ts","../../src/components/Tooltip/TooltipHost.types.ts","../node_modules/path-to-regexp/index.js","../node_modules/@fortawesome/react-fontawesome/index.es.js","../node_modules/@fortawesome/free-brands-svg-icons/index.es.js","../../src/components/Label/Label.base.tsx","../../src/components/Label/Label.tsx","../../src/components/Label/Label.styles.ts","../../src/components/Stack/StackItem/StackItem.styles.ts","../../src/components/Stack/StackItem/StackItem.tsx","../../src/mergeStyles.ts","../../src/getId.ts","../node_modules/axios/lib/helpers/bind.js","../node_modules/axios/lib/helpers/buildURL.js","../node_modules/axios/lib/core/enhanceError.js","../node_modules/axios/lib/adapters/xhr.js","../node_modules/axios/lib/core/createError.js","../node_modules/axios/lib/cancel/isCancel.js","../node_modules/axios/lib/core/mergeConfig.js","../node_modules/axios/lib/cancel/Cancel.js","../../src/GlobalSettings.ts","../../src/fonts/createFontStyles.ts","../../src/array.ts","../../src/components/Icon/FontIcon.tsx","../../src/object.ts","../../src/utilities/keytips/KeytipManager.ts","../../src/warn/warnConditionallyRequiredProps.ts","../../src/warn/warnDeprecations.ts","../../src/slots.tsx","../node_modules/@babel/runtime/helpers/slicedToArray.js","../node_modules/@babel/runtime/helpers/classCallCheck.js","../node_modules/@babel/runtime/helpers/createClass.js","../node_modules/mini-create-react-context/dist/esm/index.js","../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../node_modules/axios/index.js","../../lib/atob.js","../../lib/base64_url_decode.js","../../lib/index.js","../node_modules/mime-types/index.js","../node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js","../../src/fabric-icons.ts","../../src/fabric-icons-0.ts","../../src/fabric-icons-1.ts","../../src/fabric-icons-2.ts","../../src/fabric-icons-3.ts","../../src/fabric-icons-4.ts","../../src/fabric-icons-5.ts","../../src/fabric-icons-6.ts","../../src/fabric-icons-7.ts","../../src/fabric-icons-8.ts","../../src/fabric-icons-9.ts","../../src/fabric-icons-10.ts","../../src/fabric-icons-11.ts","../../src/fabric-icons-12.ts","../../src/fabric-icons-13.ts","../../src/fabric-icons-14.ts","../../src/fabric-icons-15.ts","../../src/fabric-icons-16.ts","../../src/fabric-icons-17.ts","../../src/iconAliases.ts","../../src/components/Icon/Icon.types.ts","../../src/components/Icon/Icon.base.tsx","../../src/components/Icon/Icon.tsx","../../src/components/Button/DefaultButton/DefaultButton.styles.ts","../../src/components/Button/ButtonThemes.ts","../../src/components/Button/DefaultButton/DefaultButton.tsx","../../src/components/Dialog/DialogFooter.base.tsx","../../src/components/Dialog/DialogFooter.styles.ts","../../src/components/Dialog/DialogFooter.tsx","../../src/components/DetailsList/DetailsRowFields.tsx","../../src/components/DetailsList/DetailsRow.base.tsx","../../src/components/DetailsList/DetailsRow.ts","../../src/merge.ts","../../src/mergeThemes.ts","../../src/components/Button/ActionButton/ActionButton.styles.ts","../../src/components/Button/ActionButton/ActionButton.tsx","../../src/initializeComponentRef.ts","../../src/scroll.ts","../../src/components/Check/Check.base.tsx","../../src/components/Check/Check.tsx","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/scheduler/index.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../../src/usePrevious.ts","../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/nonIterableRest.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/isarray/index.js","../node_modules/react-router/node_modules/react-is/index.js","../node_modules/react-router/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/hoist-non-react-statics/node_modules/react-is/index.js","../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/axios/lib/axios.js","../node_modules/axios/lib/core/Axios.js","../node_modules/axios/lib/core/InterceptorManager.js","../node_modules/axios/lib/core/dispatchRequest.js","../node_modules/axios/lib/core/transformData.js","../node_modules/axios/lib/helpers/normalizeHeaderName.js","../node_modules/axios/lib/core/settle.js","../node_modules/axios/lib/helpers/cookies.js","../node_modules/axios/lib/core/buildFullPath.js","../node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/axios/lib/helpers/combineURLs.js","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/axios/lib/helpers/validator.js","../node_modules/axios/lib/cancel/CancelToken.js","../node_modules/axios/lib/helpers/spread.js","../node_modules/axios/lib/helpers/isAxiosError.js","../node_modules/mime-db/index.js","../node_modules/path-browserify/index.js","../node_modules/timers-browserify/main.js","../node_modules/setimmediate/setImmediate.js","../../src/concatStyleSetsWithProps.ts","../../src/mergeStyleSets.ts","../../src/styled.tsx","../../src/classNamesFunction.ts","../../src/useAsync.ts","../../src/getPropsWithDefaults.ts","../../src/createMergedRef.ts","../../src/portalContainsElement.ts","../../src/useMergedRefs.ts","../../src/dom/on.ts","../../src/modalize.ts","../../src/renderFunction/composeRenderFunction.tsx","../../src/customizations/customizable.tsx","../../src/getNativeElementProps.ts","../../src/spacing/DefaultSpacing.ts","../../src/createTheme.ts","../../src/keyboard.ts","../../src/useFocusRects.ts","../../src/BaseComponent.ts","../../src/colors/DefaultPalette.ts","../../src/fontFace.ts","../../src/keyframes.ts","../../src/useControllableValue.ts","../../src/string.ts","../../src/useId.ts","../../src/components/FocusZone/FocusZone.tsx","../../src/useIsomorphicLayoutEffect.ts","../../src/DelayedRender.tsx","../../src/ie11Detector.ts","../../src/useTarget.ts","../../src/components/Popup/Popup.tsx","../../src/useUnmount.ts","../../src/utilities/hooks/useResponsiveMode.tsx","../../src/componentAs/composeComponentAs.tsx","../../src/osDetector.ts","../../src/mobileDetector.ts","../../src/aria.ts","../../src/components/Button/CommandButton/CommandButton.tsx","../../src/createComponent.tsx","../../src/components/Button/PrimaryButton/PrimaryButton.tsx","../../src/useBoolean.ts","../../src/initials.ts","../../src/selection/Selection.ts","../../src/utilities/selection/SelectionZone.tsx","../../src/components/GroupedList/GroupedList.types.ts","../node_modules/react-cookie/es6/CookiesProvider.js","../node_modules/react-i18next/dist/es/I18nextProvider.js","../../src/dateFormatting/dateFormatting.defaults.ts","../../src/dateValues/timeConstants.ts","../../src/dateMath/dateMath.ts","../../src/dateGrid/getDateRangeTypeToUse.ts","../../src/dateGrid/isContiguous.ts","../../src/dateGrid/getBoundedDateRange.ts","../../src/dateGrid/isBeforeMinDate.ts","../../src/dateGrid/isAfterMaxDate.ts","../../src/dateGrid/isRestrictedDate.ts","../../src/components/CalendarDayGrid/CalendarMonthHeaderRow.tsx","../../src/dateGrid/findAvailableDate.ts","../../src/components/CalendarDayGrid/CalendarGridDayCell.tsx","../../src/components/CalendarDayGrid/CalendarGridRow.tsx","../../src/components/CalendarDayGrid/CalendarDayGrid.base.tsx","../../src/dateGrid/getDayGrid.ts","../../src/components/Calendar/Calendar.types.ts","../../src/components/CalendarDayGrid/CalendarDayGrid.styles.ts","../../src/components/CalendarDayGrid/CalendarDayGrid.tsx","../../src/components/Calendar/CalendarDay/CalendarDay.base.tsx","../../src/components/Calendar/CalendarDay/CalendarDay.tsx","../../src/components/Calendar/CalendarDay/CalendarDay.styles.ts","../../src/components/Calendar/CalendarPicker/CalendarPicker.styles.ts","../../src/components/Calendar/CalendarMonth/CalendarMonth.styles.ts","../../src/components/Calendar/defaults.ts","../../src/components/Calendar/CalendarYear/CalendarYear.base.tsx","../../src/components/Calendar/CalendarYear/CalendarYear.tsx","../../src/components/Calendar/CalendarYear/CalendarYear.styles.ts","../../src/components/Calendar/CalendarMonth/CalendarMonth.base.tsx","../../src/components/Calendar/CalendarMonth/CalendarMonth.tsx","../../src/components/Calendar/Calendar.base.tsx","../../src/components/Calendar/Calendar.styles.ts","../../src/components/Calendar/Calendar.tsx","../../src/components/DatePicker/defaults.ts","../../src/components/DatePicker/DatePicker.base.tsx","../../src/components/DatePicker/DatePicker.styles.ts","../../src/components/DatePicker/DatePicker.tsx","../../src/components/DetailsList/DetailsHeader.types.ts","../../src/utilities/dragdrop/DragDropHelper.tsx","../../src/components/DetailsList/DetailsColumn.base.tsx","../../src/components/DetailsList/DetailsColumn.styles.ts","../../src/components/DetailsList/DetailsColumn.ts","../../src/components/DetailsList/DetailsHeader.base.tsx","../../src/components/DetailsList/DetailsHeader.ts","../../src/components/GroupedList/GroupedList.styles.ts","../../src/components/GroupedList/GroupHeader.styles.ts","../../src/components/GroupedList/GroupHeader.base.tsx","../../src/components/GroupedList/GroupHeader.ts","../../src/components/GroupedList/GroupShowAll.styles.ts","../../src/components/GroupedList/GroupShowAll.base.tsx","../../src/components/GroupedList/GroupShowAll.ts","../../src/components/GroupedList/GroupFooter.styles.ts","../../src/components/GroupedList/GroupFooter.base.tsx","../../src/components/GroupedList/GroupFooter.ts","../../src/components/List/List.types.ts","../../src/components/List/List.tsx","../../src/components/GroupedList/GroupedListSection.tsx","../../src/components/GroupedList/GroupedList.base.tsx","../../src/components/GroupedList/GroupedList.ts","../../src/dom/getRect.ts","../../src/utilities/decorators/withViewport.tsx","../../src/utilities/groupedList/GroupedListUtility.tsx","../../src/components/DetailsList/DetailsList.base.tsx","../../src/components/DetailsList/DetailsList.styles.ts","../../src/components/DetailsList/DetailsList.ts","../../src/PortalCompatContext.ts","../../src/customizations/mergeSettings.ts","../../src/customizations/Customizer.tsx","../../src/customizations/mergeCustomizations.ts","../../src/components/Fabric/Fabric.base.tsx","../../src/components/Fabric/Fabric.styles.ts","../../src/components/Fabric/Fabric.tsx","../../src/components/Layer/Layer.notification.ts","../../src/components/Layer/Layer.base.tsx","../../src/setVirtualParent.ts","../../src/components/Layer/Layer.styles.ts","../../src/components/Layer/Layer.tsx","../../src/components/OverflowSet/OverflowButton.tsx","../../src/components/OverflowSet/OverflowSet.base.tsx","../../src/components/OverflowSet/OverflowSet.styles.ts","../../src/components/ResizeGroup/ResizeGroup.types.ts","../../src/components/OverflowSet/OverflowSet.ts","../../src/components/ResizeGroup/ResizeGroup.base.tsx","../../src/components/ResizeGroup/ResizeGroup.tsx","../../src/components/Button/CommandBarButton/CommandBarButton.styles.ts","../../src/components/Button/CommandBarButton/CommandBarButton.tsx","../../src/components/CommandBar/CommandBar.styles.ts","../../src/components/CommandBar/CommandBar.base.tsx","../../src/components/CommandBar/CommandBar.tsx","../../src/utilities/selectableOption/SelectableOption.types.ts","../../src/components/Dropdown/utilities/DropdownSizePosCache.ts","../../src/components/Panel/Panel.types.ts","../../src/components/Panel/Panel.base.tsx","../../src/components/Panel/Panel.styles.ts","../../src/components/Panel/Panel.ts","../../src/utilities/selectableOption/SelectableOption.ts","../../src/components/Dropdown/Dropdown.base.tsx","../../src/safeRequestAnimationFrame.ts","../../src/components/Dropdown/Dropdown.styles.ts","../../src/components/Dropdown/Dropdown.tsx","../../src/components/Persona/PersonaConsts.tsx","../../src/components/Persona/PersonaPresence/PersonaPresence.base.tsx","../../src/components/Persona/PersonaPresence/PersonaPresence.styles.ts","../../src/components/Persona/PersonaPresence/PersonaPresence.tsx","../../src/components/Persona/PersonaInitialsColor.ts","../../src/components/Persona/PersonaCoin/PersonaCoin.base.tsx","../../src/components/Persona/PersonaCoin/PersonaCoin.styles.ts","../../src/components/Persona/PersonaCoin/PersonaCoin.tsx","../../src/components/Persona/Persona.base.tsx","../../src/components/Persona/Persona.styles.ts","../../src/components/Persona/Persona.tsx","../../src/components/Tooltip/Tooltip.types.ts","../../src/components/Tooltip/Tooltip.base.tsx","../../src/components/Tooltip/Tooltip.tsx","../../src/components/Tooltip/Tooltip.styles.ts","../../src/components/Tooltip/TooltipHost.base.tsx","../../src/overflow.ts","../../src/components/Tooltip/TooltipHost.styles.ts","../../src/components/Tooltip/TooltipHost.ts","../../src/utilities/ThemeProvider/styleRenderers/mergeStylesRenderer.tsx","../../src/utilities/ThemeProvider/useThemeProviderClasses.tsx","../../src/utilities/ThemeProvider/makeStyles.ts","../../src/utilities/ThemeProvider/renderThemeProvider.tsx","../../src/utilities/ThemeProvider/useThemeProviderState.tsx","../../src/utilities/ThemeProvider/ThemeProvider.tsx","../../src/utilities/ThemeProvider/useThemeProvider.tsx","../../src/Rectangle.ts","../../src/utilities/positioning/positioning.ts","../../src/components/Callout/CalloutContent.base.tsx","../../src/components/Callout/CalloutContent.styles.ts","../../src/components/Callout/CalloutContent.tsx","../../src/components/Callout/Callout.tsx","../../src/components/Modal/Modal.styles.ts","../../src/utilities/DraggableZone/DraggableZone.styles.ts","../../src/utilities/DraggableZone/DraggableZone.tsx","../../src/useSetTimeout.ts","../../src/components/Modal/Modal.base.tsx","../../src/components/Modal/Modal.ts","../../src/components/Dialog/DialogContent.base.tsx","../../src/components/Dialog/DialogContent.styles.ts","../../src/components/Dialog/DialogContent.tsx","../../src/components/Dialog/Dialog.base.tsx","../../src/components/Dialog/Dialog.styles.ts","../../src/components/Dialog/Dialog.tsx","../../src/components/TextField/TextField.base.tsx","../../src/controlled.ts","../../src/components/TextField/TextField.styles.tsx","../../src/components/TextField/TextField.ts","../../src/components/pickers/PeoplePicker/PeoplePickerItems/PeoplePickerItem.styles.ts","../../src/components/pickers/PeoplePicker/PeoplePickerItems/PeoplePickerItem.tsx","../../src/components/pickers/PeoplePicker/PeoplePickerItems/PeoplePickerItemSuggestion.styles.ts","../../src/components/pickers/PeoplePicker/PeoplePickerItems/PeoplePickerItemSuggestion.tsx","../../src/components/pickers/PeoplePicker/PeoplePicker.tsx","../../src/components/pickers/TagPicker/TagItem.styles.ts","../../src/components/pickers/TagPicker/TagItem.tsx","../../src/components/pickers/TagPicker/TagItemSuggestion.styles.ts","../../src/components/pickers/TagPicker/TagItemSuggestion.tsx","../../src/components/pickers/TagPicker/TagPicker.tsx","../../src/math.ts","../../src/components/SpinButton/SpinButton.types.ts","../../src/components/SpinButton/SpinButton.styles.ts","../../src/components/SpinButton/SpinButton.base.tsx","../../src/components/SpinButton/SpinButton.tsx","../../src/components/Spinner/Spinner.types.ts","../../src/components/Spinner/Spinner.base.tsx","../../src/components/Spinner/Spinner.styles.tsx","../../src/components/Spinner/Spinner.tsx","../../src/components/Overlay/Overlay.base.tsx","../../src/components/Overlay/Overlay.styles.ts","../../src/components/Overlay/Overlay.tsx","../../src/components/Checkbox/Checkbox.base.tsx","../../src/components/Checkbox/Checkbox.styles.ts","../../src/components/Checkbox/Checkbox.tsx","../../src/components/Stack/StackUtils.ts","../../src/components/Stack/Stack.styles.ts","../../src/components/Stack/Stack.tsx","../../src/components/Toggle/Toggle.base.tsx","../../src/components/Toggle/Toggle.tsx","../../src/components/Toggle/Toggle.styles.ts","../../src/components/Nav/Nav.base.tsx","../../src/components/Nav/Nav.styles.ts","../../src/components/Nav/Nav.tsx","../../src/components/Separator/Separator.base.tsx","../../src/components/Separator/Separator.tsx","../../src/components/Separator/Separator.styles.ts","../../src/components/MessageBar/MessageBar.base.tsx","../../src/components/MessageBar/MessageBar.styles.ts","../../src/components/MessageBar/MessageBar.tsx","../../src/components/Link/useLink.ts","../../src/components/Link/Link.base.tsx","../../src/components/Link/Link.tsx","../../src/language.ts","../../src/fonts/DefaultFontStyles.ts","../../src/localStorage.ts","../node_modules/react-cookie/es6/useCookies.js","../node_modules/react-cookie/es6/utils.js","../node_modules/react-i18next/dist/es/utils.js","../node_modules/react-i18next/dist/es/useTranslation.js","../../src/useEventCallback.ts","../../src/components/FocusTrapZone/FocusTrapZone.tsx","../../src/components/Button/IconButton/IconButton.styles.ts","../../src/components/Button/IconButton/IconButton.tsx","../../src/effects/FluentDepths.ts","../../src/effects/DefaultEffects.ts"],"names":["module","exports","require","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","this","constructor","create","__assign","assign","t","s","i","n","arguments","length","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__decorate","decorators","target","key","desc","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__spreadArray","to","from","pack","ar","l","slice","concat","EASING_FUNCTION_1","EASING_FUNCTION_2","DURATION_1","DURATION_2","DURATION_3","DURATION_4","FADE_IN","keyframes","opacity","FADE_OUT","visibility","SLIDE_RIGHT_IN10","_createSlideInX","SLIDE_RIGHT_IN20","SLIDE_RIGHT_IN40","SLIDE_RIGHT_IN400","SLIDE_LEFT_IN10","SLIDE_LEFT_IN20","SLIDE_LEFT_IN40","SLIDE_LEFT_IN400","SLIDE_UP_IN10","_createSlideInY","SLIDE_UP_IN20","SLIDE_DOWN_IN10","SLIDE_DOWN_IN20","SLIDE_RIGHT_OUT10","_createSlideOutX","SLIDE_RIGHT_OUT20","SLIDE_RIGHT_OUT40","SLIDE_RIGHT_OUT400","SLIDE_LEFT_OUT10","SLIDE_LEFT_OUT20","SLIDE_LEFT_OUT40","SLIDE_LEFT_OUT400","SLIDE_UP_OUT10","_createSlideOutY","SLIDE_UP_OUT20","SLIDE_DOWN_OUT10","SLIDE_DOWN_OUT20","SCALE_UP100","transform","SCALE_DOWN98","SCALE_DOWN100","SCALE_UP103","ROTATE90","ROTATE_N90","AnimationVariables","easeFunction1","easeFunction2","durationValue1","durationValue2","durationValue3","durationValue4","AnimationStyles","slideRightIn10","_createAnimation","slideRightIn20","slideRightIn40","slideRightIn400","slideLeftIn10","slideLeftIn20","slideLeftIn40","slideLeftIn400","slideUpIn10","slideUpIn20","slideDownIn10","slideDownIn20","slideRightOut10","slideRightOut20","slideRightOut40","slideRightOut400","slideLeftOut10","slideLeftOut20","slideLeftOut40","slideLeftOut400","slideUpOut10","slideUpOut20","slideDownOut10","slideDownOut20","scaleUpIn100","scaleDownIn100","scaleUpOut103","scaleDownOut98","fadeIn100","fadeIn200","fadeIn400","fadeIn500","fadeOut100","fadeOut200","fadeOut400","fadeOut500","rotate90deg","rotateN90deg","animationName","animationDuration","animationTimingFunction","animationFillMode","fromX","pointerEvents","fromY","toX","toY","AnimationClassNames","styles","classes","styleName","className_1","get","undefined","mergeStyles","toString","enumerable","configurable","buildClassMap","HighContrastSelector","HighContrastSelectorWhite","ScreenWidthMinSmall","ScreenWidthMinMedium","ScreenWidthMinLarge","ScreenWidthMinXLarge","ScreenWidthMinXXLarge","ScreenWidthMaxSmall","ScreenWidthMaxMedium","ScreenWidthMinUhfMobile","getScreenSelector","min","max","getHighContrastNoAdjustStyle","forcedColorAdjust","MsHighContrastAdjust","ZIndexes","getFocusStyle","theme","insetOrOptions","position","highContrastStyle","borderColor","outlineColor","isFocusedOnly","_getFocusStyleInternal","inset","options","_c","_d","width","_e","_f","palette","white","_g","neutralSecondary","_h","outline","selectors","border","_a","IsFocusVisibleClassName","content","left","top","bottom","right","zIndex","FocusStyle","_b","focusClear","getInputFocusStyle","borderRadius","borderType","borderPosition","isBorderBottom","hiddenContentStyle","height","margin","padding","overflow","whiteSpace","_getGlobalClassNames","memoizeFunction","classNames","disableGlobalClassNames","styleSheet","Stylesheet","getInstance","keys","reduce","acc","className","getClassName","getGlobalClassNames","_theme","createTheme","_onThemeChangeCallbacks","ThemeSettingName","initializeThemeInCustomizations","win","getWindow","FabricConfig","legacyTheme","depComments","legacyLoadTheme","semanticColors","effects","lines","fonts","_i","fontName","font","propName","name_1","charAt","toUpperCase","value","_loadFonts","Customizations","applySettings","forEach","callback","loadTheme","getSettings","getTheme","normalize","boxShadow","boxSizing","noWrap","textOverflow","getPlaceholderStyles","_iconSettings","GlobalSettings","getValue","__options","disableWarnings","warnOnMissingIcons","__remapped","stylesheet","onReset","subset","normalizeIconName","name","toLowerCase","registerIcons","iconSubset","isRegistered","icons","iconName","code","normalizedIconName","_warnDuplicateIcon","registerIconAlias","mappedToName","getIcon","icon","fontFace","style","fontFamily","fontWeight","fontStyle","warn","_missingIcons","_missingIconsTimer","push","setTimeout","join","setVersion","_slicedToArray","arr","isArray","Symbol","iterator","_s","_arr","_n","next","done","err","unsupportedIterableToArray","PersonaSize","PersonaPresence","PersonaInitialsColor","ownKeys","object","enumerableOnly","symbols","filter","sym","_objectSpread2","source","getOwnPropertyDescriptors","defineProperties","LocalizedFontNames","LocalizedFontFamilies","FontSizes","FontWeights","IconFontSizes","Arabic","Cyrillic","EastEuropean","Greek","Hebrew","Selawik","Vietnamese","WestEuropean","Armenian","Georgian","_defineProperty","obj","writable","RectangleEdge","Position","createNamedContext","context","createContext","displayName","historyContext","Router","props","state","location","history","_isMounted","_pendingLocation","staticContext","unlisten","listen","computeRootMatch","pathname","path","url","params","isExact","componentDidMount","_this2","setState","componentWillUnmount","render","React","RouterContext","Provider","match","HistoryContext","children","Component","Lifecycle","onMount","componentDidUpdate","prevProps","onUpdate","onUnmount","cache","cacheCount","generatePath","generator","pathToRegexp","compile","compilePath","pretty","Redirect","computedMatch","Consumer","method","replace","createLocation","self","prevLocation","locationsAreEqual","matchPath","exact","strict","sensitive","matched","cacheKey","end","pathCache","result","regexp","exec","values","memo","index","Route","_this","component","Children","count","isEmptyChildren","createElement","addLeadingSlash","stripBasename","basename","base","substr","createURL","createPath","staticHandler","methodName","invariant","noop","Switch","element","child","isValidElement","cloneElement","useContext","useHistory","MessageBarType","_window","window","rootElement","_isSSR","el","ownerDocument","defaultView","DirectionalHint","topLeftEdge","topCenter","topRightEdge","topAutoEdge","bottomLeftEdge","bottomCenter","bottomRightEdge","bottomAutoEdge","leftTopEdge","leftCenter","leftBottomEdge","rightTopEdge","rightCenter","rightBottomEdge","ColumnActionsMode","ConstrainMode","ColumnDragEndLocation","DetailsListLayoutMode","CheckboxVisibility","KeyCodes","backspace","tab","enter","shift","ctrl","alt","pauseBreak","capslock","escape","space","pageUp","pageDown","home","up","down","insert","del","zero","one","two","three","four","five","six","seven","eight","nine","colon","a","f","g","h","j","k","m","o","q","u","v","w","x","y","z","leftWindow","rightWindow","select","zero_numpad","one_numpad","two_numpad","three_numpad","four_numpad","five_numpad","six_numpad","seven_numpad","eight_numpad","nine_numpad","multiply","add","subtract","decimalPoint","divide","f1","f2","f3","f4","f5","f6","f7","f8","f9","f10","f11","f12","numlock","scrollLock","semicolon","equalSign","comma","dash","period","forwardSlash","graveAccent","openBracket","backSlash","closeBracket","singleQuote","_regeneratorRuntime","Op","hasOwn","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","Context","_invoke","arg","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","record","tryCatch","type","fn","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","Gp","defineIteratorMethods","AsyncIterator","PromiseImpl","invoke","resolve","reject","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","info","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","isGeneratorFunction","genFun","ctor","mark","awrap","async","Promise","iter","reverse","pop","skipTempReset","prev","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","args","_createForOfIteratorHelper","allowArrayLike","it","F","normalCompletion","didErr","step","_e2","_objectWithoutProperties","excluded","objectWithoutPropertiesLoose","sourceSymbolKeys","Date","isObjectType","isNullOrUndefined","isDateObject","event","isObject","isCheckBoxInput","checked","names","has","substring","search","getNodeParentName","Boolean","val","defaultValue","compact","split","isUndefined","EVENTS","VALIDATION_MODE","INPUT_VALIDATION_RULES","HookFormContext","useFormContext","formState","_proxyFormState","localProxyFormState","isRoot","_key","formStateData","isEmptyObject","find","signalName","convertToArrayPayload","some","currentName","startsWith","useSubscribe","_props","useRef","current","useEffect","subscription","disabled","subject","subscribe","unsubscribe","tearDown","_names","formValues","isGlobal","isString","watch","map","fieldName","watchAll","data","isFunction","useController","methods","control","shouldUnregister","isArrayField","isNameInFieldArray","array","_name","useCallback","shouldSubscribeByName","fieldValues","generateWatchOutput","_formValues","updateValue","objectHasFunction","_subjects","useState","_getWatch","_removeUnmounted","useWatch","_defaultValues","_formState","updateFormState","_localProxyFormState","isDirty","dirtyFields","touchedFields","isValidating","isValid","errors","_mounted","shouldRenderFormState","getProxyFormState","useFormState","_registerProps","register","rules","updateMounted","field","_fields","mount","_shouldUnregisterField","_options","_stateFlags","action","unregister","onChange","getEventValue","onBlur","ref","elm","focus","setCustomValidity","message","reportValidity","fieldState","invalid","isTouched","Controller","validateAllFieldCriteria","types","test","input","set","tempPath","isKey","stringToPath","lastIndex","newValue","objValue","focusFieldBy","fields","fieldsNames","currentField","refs","isBlurEvent","watchName","HTMLElement","document","cloneObject","copy","Set","isWeb","Blob","FileList","unset","previousObjRef","updatePath","childObject","baseGet","objectRef","currentPaths","currentPathsLength","item","createSubject","_observers","observers","observer","deepEqual","object1","object2","isPrimitive","getTime","keys1","keys2","val1","includes","val2","mode","isOnSubmit","isOnBlur","isOnChange","isOnAll","isOnTouch","owner","isRadioInput","isHTMLElement","isConnected","markFieldsDirty","isParentNodeArray","getDirtyFieldsFromDefaultValues","dirtyFieldsFromValues","defaultValues","defaultResult","validResult","option","attributes","valueAsNumber","valueAsDate","setValueAs","NaN","defaultReturn","previous","getFieldValue","every","isFileInput","files","getRadioValue","isMultipleSelect","selectedOptions","isCheckBox","getCheckboxValue","getFieldValueAs","criteriaMode","shouldUseNativeValidation","RegExp","rule","isRegex","required","maxLength","minLength","pattern","validate","schemaErrorLookup","foundError","isSubmitted","reValidateMode","getValidateError","isMessage","isBoolean","validationData","inputValue","inputRef","isRadio","isRadioOrCheckbox","isEmpty","appendErrorsCurry","appendErrors","bind","getMinMaxMessage","exceedMax","maxLengthMessage","minLengthMessage","maxType","minType","getValueAndMessage","maxOutput","minOutput","valueDate","exceedMin","valueNumber","maxLengthOutput","minLengthOutput","patternValue","validateError","validationResult","defaultOptions","shouldFocusError","createFormControl","delayErrorCallback","submitCount","isSubmitting","isSubmitSuccessful","unMount","timer","validateFields","validationModeBeforeSubmit","getValidationModes","validationModeAfterSubmit","shouldDisplayAllAssociatedErrors","debounce","wait","clearTimeout","_updateValid","shouldSkipRender","resolver","_executeSchema","executeBuildInValidation","_updateFieldArray","shouldSetValues","shouldUpdateFieldsAndState","argA","argB","unsetEmptyArray","getDirtyFields","_getDirty","updateErrors","updateValidAndValue","shouldSkipSetValueAs","defaultChecked","setFieldValue","updateTouchAndDirty","fieldValue","shouldDirty","shouldRender","isFieldDirty","output","isPreviousFieldTouched","isPreviousFormDirty","isPreviousFieldDirty","shouldRenderByError","previousFieldError","shouldUpdateValid","delayError","updatedFormState","getResolverOptions","executeSchemaAndUpdateState","shouldOnlyCheckValid","valid","fieldReference","validateField","fieldError","live","getValues","_getFieldArray","selectRef","selected","checkboxRef","radioRef","shouldTouch","shouldValidate","trigger","setValues","fieldKey","setValue","isFieldArray","cloneValue","isWatched","shouldSkipValidation","hasValidation","deps","skipValidation","watched","previousErrorLookupResult","errorLookupResult","fieldNames","all","shouldFocus","getFieldState","clearErrors","inputName","setError","delete","keepValue","keepError","keepDirty","keepTouched","keepDefaultValue","keepIsValid","disabledIsDefined","getRuleValue","fieldRef","querySelectorAll","radioOrCheckbox","handleSubmit","onValid","onInvalid","preventDefault","persist","hasNoPromiseError","resetField","keepStateOptions","updatedValues","cloneUpdatedValues","keepDefaultValues","keepValues","keepDirtyValues","closest","keepSubmitCount","keepIsSubmitted","keepErrors","setFocus","shouldSelect","useForm","_formControl","getFirstFocusable","currentElement","includeElementsInFocusZones","getNextElement","getLastFocusable","getPreviousElement","getFirstTabbable","checkNode","getLastTabbable","focusFirstChild","focusAsync","suppressParentTraversal","traverseChildren","allowFocusRoot","tabbable","isCurrentElementVisible","isElementVisible","isElementFocusZone","isElementFocusSubZone","childMatch","lastElementChild","isElementTabbable","childMatchSiblingMatch","previousElementSibling","childMatchParent","parentElement","childMatchParentMatch","siblingMatch","suppressChildTraversal","firstElementChild","nextElementSibling","getAttribute","visibilityAttribute","offsetHeight","offsetParent","isVisible","checkTabIndex","tabIndex","tabIndexAttributeValue","parseInt","isFocusableAttribute","isTabIndexSet","tagName","doesElementContainFocus","getDocument","currentActiveElement","activeElement","elementContains","shouldWrapFocus","noWrapDataAttribute","attribute","elementMatch","findElementRecursive","testElement","hasAttribute","elementContainsAttribute","targetToFocusOnNextRepaint","requestAnimationFrame","getFocusableByIndexPath","parent","nextChild","Math","getElementIndexPath","fromElement","toElement","parent_1","getParent","unshift","ImageFit","ImageCoverStyle","ImageLoadState","toObjectMap","items","baseElementEvents","baseElementProperties","htmlElementProperties","labelProperties","audioProperties","videoProperties","olProperties","liProperties","anchorProperties","buttonProperties","inputProperties","textAreaProperties","selectProperties","optionProperties","tableProperties","trProperties","thProperties","tdProperties","colGroupProperties","colProperties","formProperties","iframeProperties","imgProperties","divProperties","getNativeProps","allowedPropNames","excludedPropNames","_toConsumableArray","arrayLikeToArray","BrowserRouter","createHistory","resolveToLocation","currentLocation","normalizeToLocation","forwardRefShim","C","forwardRef","LinkAnchor","forwardedRef","innerRef","navigate","onClick","rest","ex","defaultPrevented","button","metaKey","altKey","ctrlKey","shiftKey","isModifiedEvent","Link","href","createHref","isDuplicateNavigation","ariaCurrent","activeClassName","activeStyle","classNameProp","isActiveProp","isActive","locationProp","styleProp","toLocation","escapedPath","classnames","joinClassnames","SelectionMode","SelectionDirection","SELECTION_CHANGE","SELECTION_ITEMS_CHANGE","DetailsRowGlobalClassNames","root","cell","cellAnimation","cellCheck","check","cellMeasurer","listCellFirstChild","isContentUnselectable","isSelected","isCheckVisible","isRowHeader","DEFAULT_CELL_STYLE_PROPS","cellLeftPadding","cellRightPadding","cellExtraRightPadding","DEFAULT_ROW_HEIGHTS","rowHeight","compactRowHeight","rowVerticalPadding","compactRowVerticalPadding","getDetailsRowStyles","canSelect","droppingClassName","anySelected","checkboxCellClassName","_q","cellStyleProps","enableUpdateAnimations","neutralPrimary","neutralLighter","neutralLight","neutralDark","neutralQuaternaryAlt","focusBorder","focusedLinkColor","colors","defaultHeaderText","defaultMetaText","defaultBackground","defaultHoverHeaderText","defaultHoverMetaText","defaultHoverBackground","selectedHeaderText","selectedMetaText","selectedBackground","selectedHoverHeaderText","selectedHoverMetaText","selectedHoverBackground","focusHeaderText","focusMetaText","focusBackground","focusHoverBackground","selectedStyles","color","background","borderBottom","display","borderTop","LinkGlobalClassNames","cannotSelectStyles","userSelect","cursor","rootCompactStyles","minHeight","cellCompactStyles","paddingTop","paddingBottom","paddingLeft","defaultCellStyles","verticalAlign","maxWidth","_j","_k","small","minWidth","textAlign","_l","_m","flexShrink","flexGrow","cellUnpadded","paddingRight","cellPadded","_o","checkCell","marginTop","checkCover","alignItems","fontSize","medium","semibold","_p","isMultiline","wordBreak","DayOfWeek","MonthOfYear","FirstWeekOfYear","DateRangeType","DAYS_IN_WEEK","allowVirtualParents","_virtual","getVirtualParent","parentNode","ButtonGlobalClassNames","msButton","msButtonHasMenu","msButtonIcon","msButtonMenuIcon","msButtonLabel","msButtonDescription","msButtonScreenReaderText","msButtonFlexContainer","msButtonTextContainer","getBaseButtonClassNames","variantClassName","iconClassName","menuIconClassName","hasMenu","expanded","isSplit","isExpanded","mergeStyleSets","rootChecked","rootExpanded","iconExpandedHovered","menuIconExpandedHovered","rootExpandedHovered","rootHasMenu","rootDisabled","rootHovered","labelHovered","iconHovered","descriptionHovered","menuIconHovered","rootFocused","rootPressed","iconPressed","descriptionPressed","menuIconPressed","rootCheckedDisabled","rootCheckedHovered","rootCheckedPressed","flexContainer","textContainer","iconExpanded","iconChecked","iconDisabled","label","labelChecked","labelDisabled","menuIcon","menuIconChecked","menuIconDisabled","menuIconExpanded","description","descriptionChecked","descriptionDisabled","screenReaderText","_extends","SPACER_WIDTH","GroupSpacer","indentWidth","role","KeytipEvents","KTP_PREFIX","KTP_SEPARATOR","DATAKTP_TARGET","DATAKTP_EXECUTE_TARGET","KTP_LAYER_ID","useConst","initialValue","_stylesheet","InjectionMode","REUSE_STYLE_NODE","navigator","userAgent","_global","config","serializedStylesheet","_rules","_preservedRules","_counter","_keyToClassName","_onInsertRuleCallbacks","_onResetCallbacks","_classNameToArgs","_config","injectionMode","defaultPrefix","namespace","cspSettings","classNameToArgs","counter","classNameCache","keyToClassName","preservedRules","_lastStyleElement","fabricConfig","JSON","stringify","cb","preserve","_getStyleElement","sheet","insertRule","cssRules","appendChild","createTextNode","onInsertRule","includePreservedRules","_styleElement","_createStyleElement","head","styleElement","nodeToInsertBefore","setAttribute","nonce","placeholderStyleTag","_findPlaceholderStyleTag","childNodes","insertBefore","contains","querySelector","_initializedStylesheetResets","_resetCounter","_emptyObject","empty","_dictionary","_weakMap","WeakMap","resetMemoizations","maxCacheSize","ignoreNullOrUndefinedResult","rootNode","cacheSize","localResetCounter","currentNode","_createNode","_normalizeArg","createMemoizer","isAbsolute","spliceOne","list","resolvePathname","hasTrailingSlash","toParts","fromParts","isToAbs","isFromAbs","mustEndAbs","last","part","valueOf","valueEqual","aValue","bValue","stripLeadingSlash","prefix","hasBasename","stripTrailingSlash","hash","hashIndex","searchIndex","parsePath","decodeURI","URIError","createTransitionManager","prompt","listeners","setPrompt","nextPrompt","confirmTransitionTo","getUserConfirmation","appendListener","listener","notifyListeners","_len","canUseDOM","getConfirmation","confirm","PopStateEvent","HashChangeEvent","getHistoryState","createBrowserHistory","globalHistory","canUseHistory","ua","supportsHistory","needsHashChangeListener","_props$forceRefresh","forceRefresh","_props$getUserConfirm","_props$keyLength","keyLength","getDOMLocation","historyState","_ref","_window$location","createKey","random","transitionManager","nextState","handlePopState","isExtraneousPopstateEvent","handlePop","handleHashChange","forceNextPop","ok","fromLocation","toIndex","allKeys","fromIndex","delta","go","revertPop","initialLocation","listenerCount","checkDOMListeners","addEventListener","removeEventListener","isBlocked","pushState","prevIndex","nextKeys","replaceState","goBack","goForward","block","unblock","HashChangeEvent$1","HashPathCoders","hashbang","encodePath","decodePath","noslash","slash","stripHash","getHashPath","replaceHashPath","createHashHistory","_props$hashType","hashType","_HashPathCoders$hashT","ignorePath","encodedPath","allPaths","lastIndexOf","baseTag","pushHashPath","nextPaths","clamp","lowerBound","upperBound","createMemoryHistory","_props$initialEntries","initialEntries","_props$initialIndex","initialIndex","entries","nextIndex","nextEntries","splice","canGo","isPlainObject","isArrayBuffer","isBuffer","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isNumber","isDate","isFile","isBlob","isStream","pipe","isURLSearchParams","URLSearchParams","isStandardBrowserEnv","product","merge","assignValue","extend","thisArg","trim","str","stripBOM","charCodeAt","_inheritsLoose","subClass","superClass","condition","_id","EventGroup","_uniqueId","_parent","_eventRecords","eventName","eventArgs","bubbleEvent","retVal","_isElement","createEvent","ev","initEvent","dispatchEvent","createEventObject","evObj","fireEvent","events","__events__","eventRecords","id","eventRecordList","listIndex","objectCallback","declaredEvents","__declaredEvents","stopPropagation","cancelBubble","_isDisposed","off","useCapture","on","eventRecord","processElementEvent","elementCallback","attachEvent","targetArrayLookup","targetArray","detachEvent","raise","FocusZoneDirection","FocusZoneTabbableElements","none","inputOnly","NO_CUSTOMIZATIONS","settings","scopedSettings","inCustomizerContext","_allSettings","_events","_raiseChange","scopeName","properties","localSettings","localScopedSettings","globalScopedSettings","property","suppressUpdate","_suppressUpdates","_classCallCheck","instance","Constructor","_defineProperties","descriptor","_createClass","protoProps","staticProps","setRTL","isRTL","_rtl","getRTL","documentElement","getStyleOptions","rtl","_typeof","placeholder","image","MS_ICON","getStyles","isPlaceholder","isImage","imageContainer","_isRTL","RTL_LOCAL_STORAGE_KEY","savedRTL","getItem","persistSetting","doc","setItem","mergeStylesSetRTL","body","getRTLSafeKeyCode","GlobalClassNames","isDisabled","isHeader","CHECK_CELL_WIDTH","getDetailsRowCheckStyles","HEADER_HEIGHT","CheckGlobalClassNames","checkHost","justifyContent","backgroundColor","_vendorSettings","kebabRules","rulePairs","autoPrefixNames","prefixRules","vendorSettings","nav","isWebkit","isMoz","isOpera","isMs","getVendorSettings","NON_PIXEL_NUMBER_PROPS","provideUnits","isNonPixelProp","isVariableOrPrefixed","unit","LEFT","RIGHT","NAME_REPLACEMENTS","VALUE_REPLACEMENTS","rtlifyRules","parts","flipQuad","partIndex","numberVal","negateNum","getDisplayName","rootStyle","globalSelectorRegExp","expandSelector","newSelector","currentSelector","extractSelector","selector","__order","extractRules","selectorWithGlobals","replacementInfo","findGlobal","matchIndex","matchEndIndex","replacement","expandCommaSeparatedGlobals","separatedSelector","currentRules","expandedRules","argsFromClassName","prop","propValue","expandQuads","partStart","parens","tokenizeWithParentheses","getKeyForRules","serialized","hasProps","rulesForSelector","repeatString","serializeRuleEntries","ruleEntries","allEntries","styleToRegistration","registration","classNameFromKey","rulesToInsert","applyRegistration","specificityMultiplier","processedRule","cacheClassName","styleToClassName","_objectWithoutPropertiesLoose","sourceKeys","noOutline","iconStyle","lineHeight","buttonBorder","disabledBackground","disabledText","buttonHighContrastFocus","textDecoration","roundedCorner2","flexWrap","mediumPlus","ContextualMenuItemType","ImageIcon","imageProps","nativeProps","altText","hasName","title","imageNameProps","containerProps","css","Image","getIsChecked","canCheck","isChecked","hasSubmenu","subMenuProps","isItemDisabled","getMenuItemAriaRole","defaultIconRenderer","iconProps","Icon","renderItemIcon","onRenderIcon","renderCheckMarkIcon","onCheckmarkClick","isItemChecked","checkmarkIcon","renderItemName","text","renderSecondaryText","secondaryText","renderSubMenuIcon","submenuIconProps","subMenuIcon","_super","openSubMenu","getSubmenuTarget","submenuTarget","dismissSubMenu","dismissAll","dismissMenu","initializeComponentRef","ContextualMenuItemBase","renderContent","onRenderContent","_renderLayout","linkContentMenu","linkContent","defaultRenders","getDividerClassNames","wrapper","divider","neutralTertiaryAlt","CONTEXTUAL_MENU_ITEM_HEIGHT","MediumScreenSelector","getMenuItemStyles","ContextualMenuItemBackgroundHoverColor","menuItemBackgroundHovered","ContextualMenuItemTextHoverColor","menuItemTextHovered","ContextualMenuItemBackgroundSelectedColor","menuItemBackgroundPressed","ContextualMenuItemDividerColor","bodyDivider","menuItemStyles","bodyText","disabledBodyText","themeDarkAlt","themeDark","bodyTextChecked","anchorLink","textRendering","letterSpacing","wordSpacing","textTransform","textIndent","textShadow","maxHeight","large","iconColor","bodySubtext","splitButtonFlexContainer","concatStyleSets","CONTEXTUAL_SPLIT_MENU_MINWIDTH","getSplitButtonVerticalDividerClassNames","splitMenu","getItemClassNames","isAnchorLink","knownIcon","itemClassName","dividerClassName","subMenuClassName","primaryDisabled","splitPrimary","flexBasis","splitContainer","getItemStyles","ContextualMenuItem","styled","scope","onItemMouseEnter","currentTarget","onItemClickBase","onItemMouseLeave","onItemKeyDown","onItemMouseMove","ContextualMenuItemWrapper","newProps","shallowCompare","sequencesToID","keySequences","prevValue","keySequence","useKeytipData","uniqueId","keytipProps","keytipManager","KeytipManager","prevOptions","usePrevious","useIsomorphicLayoutEffect","update","nativeKeytipProps","ariaDescribedBy","keytipId","describedByPrepend","newKeytipProps","addParentOverflow","mergeAriaAttributeValues","describedby","getAriaDescribedBy","overflowSetSequence","overflowKeySequences","overflowSequenceLen","overflowSequence","newKeySequences","addElementAtIndex","mergeOverflows","getKeytipData","KeytipData","_anchor","onItemClick","ariaDescription","_ariaDescriptionId","ContextualMenuAnchor","focusableElementIndex","totalItemCount","hasCheckmarks","hasIcons","ChildrenRenderer","expandedMenuItemKey","anchorRel","rel","itemHasSubmenu","itemProps","_getMemoizedMenuButtonKeytipProps","getId","ariaDescribedByIds","additionalItemProperties","keytipAttributes","_onItemClick","onMouseEnter","_onItemMouseEnter","onMouseLeave","_onItemMouseLeave","onMouseMove","_onItemMouseMove","onKeyDown","_onItemKeyDown","componentRef","_getSubmenuTarget","_renderAriaDescription","getClassNames","classNamesFunction","VerticalDividerBase","deprecatedGetClassNames","VerticalDivider","which","_executeItemClick","_splitButton","executeItemClick","_processingTouch","_handleTouchAndPointerEvent","pointerType","stopImmediatePropagation","_async","Async","ContextualMenuSplitButton","_onPointerDown","dispose","splitButton","ariaLabel","_onItemMouseEnterPrimary","_onItemMouseMovePrimary","onTouchStart","_onTouchStart","_renderSplitPrimaryButton","_renderSplitDivider","_renderSplitIconButton","itemComponentProps","onItemMouseDown","_onIconItemClick","buttonProps","_onItemMouseEnterIcon","onMouseDown","_onItemMouseMoveIcon","onTap","_lastTouchTimeoutId","_btn","ContextualMenuButton","defaultRole","buttonNativeProperties","itemRole","itemButtonProperties","MenuContext","getContextualMenuItemClassNames","DEFAULT_PROPS","shouldFocusOnMount","gapSpace","directionalHint","beakWidth","getSubmenuItems","overrideItems","subItem","preferMenuTargetAsEventTarget","contextItem","getOnClickWithOverrideTarget","COMPONENT_NAME","_getMenuItemStylesFunction","styleProps","useSubMenuState","dismiss","hidden","menuTarget","setExpandedMenuItemKey","setSubmenuTarget","shouldFocusOnContainer","setShouldFocusOnContainer","subMenuId","useId","closeSubMenu","focusContainer","submenuItemKey","onSubMenuDismiss","isMountedRef","useOnSubmenuDismiss","findItemByKeyFromItems","submenuProps","onDismiss","isSubMenu","isBeakVisible","useKeyHandlers","hostElement","checkForNoWrap","focusZoneDirection","vertical","lastKeyDownWasAltOrMeta","keyHandler","shouldHandleKey","dismissAllMenus","handled","shouldHandleKeyDown","submenuCloseKey","shouldCloseSubMenu","isAltOrMeta","isMac","isIOS","shouldHandleKeyUp","keyPressIsAltOrMetaAlone","hasModifier","isUp","isDown","elementToFocus","lastChild","firstChild","openKey","ContextualMenuBase","propsWithoutDefaults","getPropsWithDefaults","asyncTracker","useAsync","menuId","useTarget","targetRef","targetWindow","tryFocusPreviousActiveElement","onRestoreFocus","previousActiveElement","documentContainsFocus","originalElement","containsFocus","hasFocus","usePreviousActiveElement","getSubmenuProps","delayUpdateFocusOnHover","shouldUpdateFocusOnMouseEvent","gotMouseMove","onMenuFocusCapture","useShouldUpdateFocusOnMouseMove","isScrollIdle","scrollIdleTimeoutId","useScrollHandler","onScroll","subMenuHoverDelay","enterTimerRef","cancelSubMenuTimer","onTimerExpired","useSubmenuEnterTimer","startSubmenuTimer","subMenuEntryTimer","responsiveMode","useResponsiveMode","onMenuDismissed","onMenuOpened","previousHidden","onMenuOpenedRef","onMenuClosedRef","propsRef","useVisibility","onKeyUp","onMenuKeyDown","shouldIgnoreMouseEvent","updateFocusOnMouseEvent","targetElement","nativeEvent","overrideTarget","shouldDismiss","setActive","useMouseHandlers","onItemMouseEnterBase","onItemMouseMoveBase","onMouseItemLeave","onAnchorClick","onDefaultRenderMenuList","menuListProps","menuClassNames","defaultRender","indexCorrection","menuItem","renderMenuItem","itemType","Divider","Header","indexIncrease","customOnRenderListLength","itemClassNames","renderedItems","subMenuIconClassName","itemStyleProps","subComponentStyles","renderSeparator","headerItem","renderHeaderMenuItem","renderListItem","Section","renderSectionItem","defaultRenderNormalItem","renderNormalItem","onRenderContextualMenuItem","sectionItem","sectionProps","groupProps","headerContextualMenuItem","ariaLabelledby","id_1","id_2","topDivider","contextualMenuItem","itemsIndex","bottomDivider","fromSection","onRender","commonProps","contextualMenuItemAs","divHtmlProperties","header","labelElementId","directionalHintForRTL","alignTargetEdge","coverTarget","doNotLayer","bounds","useTargetWidth","useTargetAsMinWidth","directionalHintFixed","calloutProps","onRenderSubMenu","onDefaultRenderSubMenu","onRenderMenuList","focusZoneProps","getMenuClassNames","itemsHaveIcons","contextualMenuItems","contextMenuStyle","adjustedFocusZoneProps","direction","handleTabKey","isCircularNavigation","submenuItem","canAnyMenuItemsCheck","ResponsiveMode","targetAsHtmlElement","offsetWidth","targetWidth","getBoundingClientRect","totalItemCount_1","itemCount","calloutStyles_1","callout","menuContext","Callout","setInitialFocus","container","onFocusCapture","FocusZone","renderFocusZone","defaultMenuItemRenderer","shouldUpdateWhenHidden","Event","Element","isopen","LocalContextualMenu","menuBackground","listStyleType","menuHeader","elevation8","composeRenderFunction","ContextualMenu","getSplitButtonClassNames","splitButtonMenuButton","splitButtonMenuButtonExpanded","splitButtonMenuButtonDisabled","splitButtonMenuButtonChecked","splitButtonMenuFocused","splitButtonContainer","splitButtonContainerChecked","splitButtonContainerCheckedHovered","splitButtonContainerHovered","splitButtonContainerFocused","splitButtonContainerDisabled","splitButtonMenuIcon","splitButtonMenuIconDisabled","splitButtonDivider","splitButtonDividerDisabled","createMergedRef","_classNames","FontIcon","onRenderText","_onRenderText","onRenderDescription","_onRenderDescription","_hasText","_labelId","_descriptionId","menuIconProps","menuProps","MenuType","menuAs","composeComponentAs","_dismissMenu","_menuShouldFocusOnMount","_menuShouldFocusOnContainer","menuHidden","_renderedVisibleMenu","_openMenu","_splitButtonContainer","portalContainsElement","_onMenuClick","_onMenuKeyDown","onKeyPress","onMouseUp","_buttonElement","click","_isValidMenuOpenKey","onMenuClick","_onToggleMenu","setFocusVisibility","forceUpdate","_isSplitButton","warnConditionallyRequiredProps","warnDeprecations","rootProps","toggled","BaseButton","ariaHidden","allowDisabledFocus","toggle","isPrimaryButtonDisabled","renderAsAnchor","tag","resolvedAriaLabel","nullRender","ariaLabelledBy","dataIsFocusable","isCheckboxTypeRole","checkedOrPressedValue","_mergedRef","elementRef","_onKeyDown","_onKeyPress","_onKeyUp","_onMouseDown","_onMouseUp","_onClick","_onRenderSplitButtonContent","_onRenderContent","onPointerUp","prevState","onAfterMenuDismiss","Tag","_onRenderIcon","onRenderAriaDescription","_onRenderAriaDescription","onRenderChildren","_onRenderChildren","onRenderMenu","_onRenderMenu","onRenderMenuIcon","_onRenderMenuIcon","Button","_onRenderTextContents","_shouldRenderMenu","_getMenuProps","Content","FocusRects","persistMenu","renderPersistedMenuHiddenOnMount","_onDismissMenu","primaryActionButtonProps","getBaseSplitButtonClassNames","onPointerDown","SplitButton","_onSplitButtonContainerKeyDown","_onSplitButtonPrimaryClick","_onSplitContainerFocusCapture","_onRenderSplitButtonMenuButton","_onRenderSplitButtonDivider","splitButtonMenuProps","splitButtonAriaLabel","splitButtonProps","menuTriggerKeyCode","baseClassName","CustomizerContext","customizations","IsFocusHiddenClassName","enabled","classList","remove","_objectSpread","i18nInstance","bindI18n","bindI18nStore","transEmptyNodeValue","transSupportBasicHtmlNodes","transWrapTextNodes","transKeepBasicHtmlNodesFor","useSuspense","I18nContext","getDefaults","ReportNamespaces","usedNamespaces","namespaces","ns","getI18n","initReactI18next","init","setDefaults","react","setI18n","DialogType","isContained","nextParent","_unsupportedIterableToArray","minLen","_root","global","_styleNonce","CSPSettings","_themeState","__themeState__","lastStyleElement","registeredStyles","runState","perf","duration","flushTimer","registeredThemableStyles","initializeThemeState","_themeTokenRegex","now","performance","measure","func","start","loadStyles","loadAsync","styleParts","splitStyles","styleArrays","mergedStyleArray","applyThemableStyles","stylesArray","styleRecord","resolveThemableArray","styleString","styleArray","getElementsByTagName","themable","newStyle","themableStyle","registerStyles","themableStyles","clearStylesInternal","clearStyles","reloadStyles","records","removeChild","splitStyleArray","currentValue","themeSlot","themedValue","console","DEBUG","rawString","pos","tokenMatch","customStyles","splitButtonDividerBaseStyles","splitButtonStyles","borderTopRightRadius","borderBottomRightRadius","borderRight","borderRightWidth","borderLeftWidth","buttonTextDisabled","neutralSecondaryAlt","borderLeft","marginLeft","marginRight","marginBottom","ValidationState","tooltipHost","cellIsCheck","collapseButton","isCollapsed","isAllSelected","isSelectAllHidden","isResizingColumn","cellSizer","isResizing","dropHintCircleStyle","dropHintCaretStyle","dropHintLineStyle","cellTitle","cellName","filterChevron","gripperBarVertical","checkTooltip","getCellStyles","getDetailsHeaderStyles","isSizing","isAllCollapsed","iconForegroundColor","headerForegroundColor","headerBackgroundColor","bodyBackground","resizerColor","cellSizerFadeInStyles","transition","cellStyles","cellWrapperPadded","cellIsGroupExpander","GROUP_EXPANDER_WIDTH","cellIsActionable","listHeaderBackgroundHovered","listHeaderBackgroundPressed","cellIsEmpty","cellIsResizing","cellSizerStart","cellSizerEnd","transformOrigin","sizingOverlay","accessibleLabel","themePrimary","dropHintStyle","sessionStorage","parse","opt","pairs","dec","decode","pair","tryDecode","serialize","enc","encode","fieldContentRegExp","maxAge","isFinite","floor","domain","expires","toUTCString","httpOnly","secure","sameSite","decodeURIComponent","encodeURIComponent","itemsWrapper","isFocused","inputClassName","inputBorder","inputBorderHovered","inputFocusBorderAlt","placeholderStyles","inputPlaceholderText","disabledPlaceholderStyles","disabledOverlayColor","alignSelf","inputText","isButton","isUnderlined","linkColor","link","linkInteractedColor","linkHovered","linkDisabledColor","focusBorderColor","Function","_arrayLikeToArray","len","arr2","styleSets","mergedSet","workingSubcomponentStyles","currentSet","currentComponentStyles","subCompProp","mergedValue","mergedSubStyles","workingSet_1","styleFunctionOrObject","SuggestionActionType","AnnouncedBase","Root","DelayedRender","Announced","suggestionsItem","closeButton","suggestionsItemIsSuggested","itemButton","actionButton","buttonSelected","suggestionsTitle","suggestionsContainer","suggestionsNone","suggestionsSpinner","suggestionsAvailable","legacyStyles","stylesImport","SuggestionsItem","suggestionModel","RenderSuggestion","onRemoveItem","isSelectedOverride","removeButtonAriaLabel","removeButtonIconProps","suggested","CommandButton","showRemoveButton","IconButton","StyledSuggestionsItem","suggestionsItemStyles","suggestionsProps","keyCode","currentSuggestionIndex","isEventHandled","newSelectedActionType","currentSelectedAction","selectedActionType","suggestionLength","suggestions","forceResolve","_refocusOnSuggestions","_searchForMoreButton","searchMore","_forceResolveButton","isLoading","isSearching","suggestionsAvailableAlertText","noResultsFoundText","onGetMoreResults","createGenericItem","showForceResolve","onSuggestionClick","refocusSuggestions","onSuggestionRemove","Suggestions","scrollSelected","activeSelectedElement","_selectedElement","forceResolveText","mostRecentlyUsedHeaderText","searchForMoreIcon","searchForMoreText","moreSuggestionsAvailable","loadingText","onRenderNoResultFound","searchingText","isMostRecentlyUsedVisible","resultsMaximumNumber","resultsFooterFull","resultsFooter","isResultsFooterVisible","suggestionsHeaderText","suggestionsClassName","suggestionsListId","suggestionsContainerAriaLabel","forceResolveButtonSelected","searchForMoreButtonSelected","searchForMoreButton","forceResolveButton","noSuggestions","spinnerStyles","spinner","spinnerClassNameOrStyles","headerText","footerTitle","hasNoSuggestions","forceResolveId","searchForMoreId","_getAlertText","_shouldShowForceResolve","_forceResolve","Spinner","noResults","_renderSuggestions","_getMoreResults","_scrollContainer","scrollTo","offsetTop","parentOffsetHeight","scrollTop","isBelow","onRenderSuggestion","removeSuggestionAriaLabel","suggestionsItemClassName","showRemoveButtons","StyledTypedSuggestionsItem","selectedIndex","suggestion","_onClickTypedSuggestionsItem","_onRemoveTypedSuggestionsItem","actionButtonStyles","themeLight","actionButtonSelectedStyles","overflowY","overflowX","circle","_isSuggestionModel","_ensureSuggestionModel","primaryText","currentIndex","SuggestionsController","newSuggestions","convertSuggestionsToSuggestionItems","currentSuggestion","setSelectedSuggestion","itemToConvert","itemToAdd","SELECTION_BACKWARD","isComposing","_autoFillEnabled","isIE11","_updateValue","_getCurrentInputValue","_tryEnableAutofill","suggestedDisplayValue","enableAutofillOnKeyPress","nativeEventComposing","composing","onInputChange","onInputValueChange","defaultVisibleValue","Autofill","updateValueInWillReceiveProps","updatedInputValue","_inputElement","inputElement","selectionDirection","selectionEnd","selectionStart","_getControlledValue","_","_1","shouldSelectFullInputValueInComponentDidUpdate","differenceIndex","_doesTextStartWith","shouldSelectFullRange","setSelectionRange","toLocaleLowerCase","dir","autoCapitalize","autoComplete","_getDisplayValue","onCompositionStart","_onCompositionStart","onCompositionUpdate","_onCompositionUpdate","onCompositionEnd","_onCompositionEnd","_onChanged","onInput","_onInputChanged","inel","oldValue","isComposed","displayValue","startWith","pickerText","inputFocused","inputDisabled","pickerInput","pickerItems","screenReaderOnly","basePickerProps","suggestionsType","SuggestionOfProperType","suggestionsStyles","selectItemFunction","addItemOnDismiss","suggestionStore","canAddItems","hasSelectedSuggestion","addItemByIndex","currentPromise","suggestionsVisible","resetFocus","onRemoveSuggestion","removeSuggestion","selection","setAllSelected","_userTriggeredSuggestions","inputProps","onFocus","relatedTarget","suggestionElement","hasSuggestedActionSelected","executeSelectedAction","completeSuggestion","_completeGenericSuggestion","onBackspace","tryHandleKeyDown","hasSuggestedAction","focusAboveSuggestions","deselectAllSuggestions","previousSuggestion","onSuggestionSelect","focusBelowSuggestions","nextSuggestion","changedItem","newItems","_updateSelectedItems","suggestionsArray","suggestionsPromiseLike","updateSuggestions","addItem","clear","completeSelection","getSuggestionAtIndex","processedItem","onItemSelected","processedItemObject","processedItemPromiseLike","resolvedProcessedItem","selectionRemoved","itemsToRemove","updatedValue","onResolveSuggestions","updateSuggestionsList","onValidateInput","createGenericSuggestion","_onResolveSuggestions","onEmptyInputFocus","selectedItems","defaultSelectedItems","_ariaMap","selectedSuggestionAlert","suggestionList","combobox","Selection","onSelectionChanged","onSelectionChange","setItems","selectedIndices","BasePicker","resolveDelay","oldProps","oldState","currentSelectedIndex","getSelectedIndices","setIndexSelected","forceComplete","selectionAriaLabel","selectionRole","comboLabel","onWrapperClick","renderCustomAlert","SelectionZone","selectionMode","multiple","renderItems","spellCheck","onInputFocus","onInputBlur","getActiveDescendant","renderSuggestions","itemLimit","StyledTypedSuggestions","_styledSuggestions","dismissSuggestions","pickerCalloutProps","onRenderSuggestionsItem","getSuggestions","suggestionsLoading","pickerSuggestionsProps","onRenderItem","removeItem","onItemChange","newEl","itemValue","_getTextFromItem","emptyResolveSuggestions","onEmptyResolveSuggestions","_updateAndResolveValue","_getShowSuggestions","isValueSelected","cursorLocation","getSelectedCount","removeItems","getSelection","suggestionAlertClassName","enableSelectedSuggestionAlert","selectedSuggestion","selectedSuggestionAlertText","alertClassName","suggestionRemovedText","removedItemText","itemName","format","getSuggestionsAlert","resolveNewValue","_onSelectedItemsUpdated","getTextFromItem","BasePickerListBelow","single","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","_WINDOW","_DOCUMENT","_PERFORMANCE","MutationObserver","_ref$userAgent","WINDOW","DOCUMENT","PERFORMANCE","IS_DOM","DEFAULT_REPLACEMENT_CLASS","DATA_FA_I2SVG","oneToTen","oneToTwenty","DUOTONE_CLASSES","GROUP","SWAP_OPACITY","PRIMARY","SECONDARY","initial","FontAwesomeConfig","_ref2","attr","coerce","getAttrConfig","familyPrefix","replacementClass","autoReplaceSvg","autoAddCss","autoA11y","searchPseudoElements","observeMutations","mutateApproach","keepOriginalSource","measurePerformance","showMissingIcons","hooks","shims","functions","doScroll","readyState","asyncTimer","PENDING","SETTLED","FULFILLED","REJECTED","NOOP","isNode","process","emit","asyncSetTimer","setImmediate","asyncQueue","asyncFlush","asyncCall","invokeCallback","subscriber","settled","_state","_data","promise","handleThenable","resolved","fulfill","reason","publishFulfillment","publishRejection","publish","_then","_handled","notifyRejectionHandled","P","rejectPromise","invokeResolver","onFulfillment","onRejection","fulfilled","rejected","catch","promises","results","remaining","race","meaninglessTransform","size","rotate","flipX","flipY","insertCss","innerHTML","headChildren","beforeChild","nextUniqueId","htmlEscape","joinStyles","transformIsMeaningful","transformForSvg","containerWidth","iconWidth","outer","innerTranslate","innerScale","innerRotate","inner","ALL_SPACE","fillBlack","abstract","force","fill","makeInlineSvgAbstract","_params$icons","main","mask","symbol","maskId","titleId","extra","_params$watchable","watchable","found","isUploadedIcon","widthClass","ceil","attrClass","uploadedIconWidthStyle","explicitMaskId","mainWidth","mainPath","maskWidth","maskPath","trans","maskRect","maskInnerGroupChildrenMixin","maskInnerGroup","maskOuterGroup","clipId","maskTag","maskUnits","maskContentUnits","defs","makeIconMasking","makeIconStandard","asSymbol","offset","asIcon","noop$1","thisContext","bindInternal4","defineIcons","_params$skipHooks","skipHooks","normalized","addPack","build","lookup","reducer","ligatures","ligature","hasRegular","shim","oldName","iconFromMapping","mapping","toHtml","abstractNodes","_abstractNodes$attrib","_abstractNodes$childr","attributeName","joinAttributes","parseTransformString","transformString","first","parseFloat","MissingIcon","stack","FILL","ANIMATION_BASE","attributeType","repeatCount","dur","RING","OPACITY_ANIMATE","cx","cy","asFoundIcon","vectorData","class","dfp","drc","fp","rc","dPatt","customPropPatt","rPatt","Library","definitions","additions","_pullDefinitions","definition","_normalized$key","ensureCss","_cssInserted","apiObject","abstractCreator","html","findIconDefinition","iconLookup","_iconLookup$prefix","library","iconDefinition","_params$transform","_params$symbol","_params$mask","_params$maskId","_params$title","_params$titleId","_params$classes","_params$attributes","_params$styles","maybeIconDefinition","checkDCE","__REACT_DEVTOOLS_GLOBAL_HOOK__","useTheme","ThemeContext","useCustomizationSettings","makeSemanticColors","isInverted","dep","listTextColor","listText","menuItemBackgroundChecked","warningHighlight","warningText","messageText","successText","_fixDeprecatedSlots","getSemanticColors","primaryButtonBorder","errorText","messageLink","messageLinkHovered","infoIcon","errorIcon","blockingIcon","warningIcon","severeWarningIcon","successIcon","infoBackground","errorBackground","blockingBackground","warningBackground","severeWarningBackground","successBackground","black","themeDarker","themeLighter","neutralQuaternary","neutralTertiary","neutralLighterAlt","accent","bodyFrameBackground","accentButtonText","buttonBackground","primaryButtonText","primaryButtonTextHovered","primaryButtonTextPressed","inputBackground","inputForegroundChecked","listBackground","cardStandoutBackground","buttonTextCheckedHovered","primaryButtonBackground","inputBackgroundChecked","inputIcon","accentButtonBackground","primaryButtonBackgroundPressed","inputBackgroundCheckedHovered","inputIconHovered","primaryButtonBackgroundHovered","inputPlaceholderBackgroundChecked","bodyBackgroundChecked","bodyFrameDivider","variantBorder","buttonBackgroundCheckedHovered","buttonBackgroundPressed","listItemBackgroundChecked","bodyBackgroundHovered","buttonBackgroundHovered","buttonBackgroundDisabled","buttonBorderDisabled","primaryButtonBackgroundDisabled","listItemBackgroundHovered","primaryButtonTextDisabled","disabledSubtext","listItemBackgroundCheckedHovered","variantBorderHovered","inputIconDisabled","actionLink","buttonText","menuItemText","bodyStandoutBackground","defaultStateBackground","actionLinkHovered","buttonTextHovered","buttonTextChecked","buttonTextPressed","inputTextHovered","smallInputBorder","disabledBodySubtext","disabledBorder","buttonBackgroundChecked","menuDivider","elevation4","cardShadow","cardShadowHovered","extractStyleParts","objects","_processArgs","argsList","translatedArgs","matchFunction","__esModule","SuggestionsItemGlobalClassNames","isSuggested","_setPrototypeOf","FastCheck","Check","useFastIcons","_defaultCheckboxRender","checkboxProps","_fastDefaultCheckboxRender","DetailsRowCheck","onRenderDetailsCheckbox","defaultCheckboxRender","onRenderCheckbox","detailsCheckboxProps","divProps","getNativeElementProps","checkRole","checkBoxHeight","sharedCircleCheck","_assertThisInitialized","ReferenceError","_possibleConstructorReturn","_getPrototypeOf","_inherits","consoleLogger","log","Logger","concreteLogger","logger","debug","bool","forward","_len2","_key2","_len3","_key3","_len4","_key4","lvl","debugOnly","moduleName","baseLogger","EventEmitter","cloned","_cloned","defer","res","rej","makeString","getLastOfPath","Empty","cleanKey","canNotTraverseDeeper","setPath","_getLastOfPath","getPath","_getLastOfPath3","getPathWithDefaults","defaultData","deepExtend","overwrite","regexEscape","_entityMap","isIE10","deepFind","keySeparator","paths","mix","joinedPath","ResourceStore","_EventEmitter","defaultNS","ignoreJSONStructure","lng","silent","addNamespaces","resources","addResource","deep","hasResourceBundle","removeNamespaces","getResource","compatibilityAPI","postProcessor","processors","addPostProcessor","translator","processor","checkedLoadedFor","Translator","services","language","interpolation","nsSeparator","interpolator","nestingRegexp","lastKey","overloadTranslationOptionHandler","_this$extractFromKey","extractFromKey","appendNamespaceToCIMode","resUsedKey","usedKey","resExactUsedKey","exactUsedKey","resType","noObject","joinArrays","handleAsObjectInI18nFormat","i18nFormat","handleAsObject","returnObjects","returnedObjectHandler","resTypeIsArray","newKeyToUse","deepKey","translate","extendTranslation","usedDefault","needsPluralHandling","hasDefaultValue","defaultValueSuffix","pluralResolver","getSuffix","isValidLookup","missingKeyNoValueFallbackToKey","resForMissing","updateMissing","fk","lngs","fallbackLngs","languageUtils","getFallbackCodes","fallbackLng","saveMissingTo","toResolveHierarchy","send","fallbackValue","missingKeyHandler","backendConnector","saveMissing","saveMissingPlurals","getSuffixes","suffix","appendNamespaceToMissingKey","parseMissingKeyHandler","_this3","usedLng","usedNS","skipInterpolation","nestBef","skipOnVariables","nb","defaultVariables","interpolate","na","nest","postProcess","postProcessorNames","applyPostProcessor","postProcessPassResolved","i18nResolved","_this4","extracted","fallbackNS","needsContextHandling","codes","utils","hasLoadedNamespace","pluralSuffix","possibleKey","finalKey","finalKeys","addLookupKeys","contextSeparator","returnNull","returnEmptyString","resourceStore","capitalize","string","LanguageUtil","whitelist","supportedLngs","formatLanguageCode","specialCases","lowerCaseLng","cleanCode","deprecate","isSupportedCode","load","nonExplicitSupportedLngs","getLanguagePartFromCode","cleanedLng","lngOnly","supportedLng","fallbacks","getScriptPartFromCode","fallbackCode","fallbackCodes","addCode","fc","sets","nr","_rulesPluralsTypes","Number","createRules","numbers","plurals","PluralResolver","getRule","number","idx","noAbs","abs","simplifyPluralSuffix","returnSuffix","prepend","compatibilityJSON","Interpolator","escapeValue","iOpts","useRawValueToEscape","prefixEscaped","suffixEscaped","formatSeparator","unescapePrefix","unescapeSuffix","nestingPrefix","nestingPrefixEscaped","nestingSuffix","nestingSuffixEscaped","nestingOptionsSeparator","maxReplaces","alwaysFormat","resetRegExp","regexpStr","regexpUnescapeStr","regexpUnescape","nestingRegexpStr","replaces","regexSafe","handleFormat","interpolationkey","missingInterpolationHandler","regex","safeValue","todo","temp","clonedOptions","handleHasOptions","inheritedOptions","sep","optionsString","formatters","doReduce","elem","Connector","backend","store","queue","languages","toLoad","pending","toLoadLanguages","toLoadNamespaces","hasAllNamespaces","reload","loaded","addResourceBundle","_getLastOfPath2","pushPath","what","fcName","tried","read","queueLoad","loadOne","prepareLoading","_this5","isUpdate","initImmediate","nonExplicitWhitelist","preload","pluralSeparator","partialBundledLanguages","ret","tDescription","_format","transformOptions","I18n","modules","external","isInitialized","isClone","createClassOnDemand","ClassOrObject","lu","languageDetector","detection","storeApi","_this2$store","storeApiChained","_this2$store2","deferred","initializedStoreOnce","changeLanguage","usedCallback","append","isLanguageChangingTo","setLng","getBestMatchFromCodes","cacheUserLanguage","loadResources","detect","keyPrefix","fixedT","opts","resultKey","_this$translator","_this$translator2","exists","_this6","lastLng","loadNotPending","loadState","precheck","preResult","_this7","preloaded","newLngs","_this8","mergedOptions","clone","membersToCopy","i18next","SVG_REGEX","ImageBase","frameElement","imageElement","onLoadingStateChange","onLoad","onError","src","notLoaded","setLoadState","naturalWidth","naturalHeight","onImageLoaded","onImageError","useLoadState","shouldFadeIn","shouldStartVisible","imageFit","maximizeFrame","loading","coverStyle","previousLoadState","cover","contain","centerContain","centerCover","desiredRatio","clientWidth","clientHeight","landscape","portrait","computeCoverStyle","useCoverStyle","isLoaded","isLandscape","isCenter","center","isCenterContain","isCenterCover","isContain","isCover","isNone","isError","isNotImageFit","useMergedRefs","rootMaximizeFrame","imageCenter","imageContain","imageCover","imageCenterContain","imageCenterCover","imageNone","imageLandscape","imagePortrait","ImageFitStyles","supportsObjectFit","msMaxTouchPoints","fallbackObjectFitStyles","objectFit","readCookie","cleanValue","cleanupCookieValue","doNotParse","isParsingCookie","Cookies","cookies","changeListeners","HAS_DOCUMENT_COOKIE","cookie","parseCookies","_updateBrowserValues","parseOptions","_emitChange","getAll","finalOptions","addChangeListener","removeChangeListener","packagesCache","_win","packageName","packageVersion","packages","__packages__","appendFunction","extendComponent","REACT_LIFECYCLE_EXCLUSIONS","_updateComposedComponentRef","BaseDecorator","composedComponentInstance","_composedComponentInstance","_hoisted","destination","exclusions","hoisted","hoistMethods","CookiesContext","_timeoutIds","_immediateIds","_intervalIds","_animationFrameIds","_onErrorHandler","_noop","clearImmediate","clearInterval","cancelAnimationFrame","timeoutId","_logError","immediateId","intervalId","setInterval","lastResult","lastArgs","waitMS","leading","trailing","lastExecuteTime","userCall","waitLength","noOpFunction","cancel","flush","maxWait","lastCallTime","markExecuted","time","invokeFunction","executeImmediately","maxWaitDelta","maxWaitExpired","resultFunction","animationFrameId","animationFrameCallback","useOnEvent","callbackRef","actualElement","WindowContext","useWindow","useDocument","propIsEnumerable","toObject","test1","getOwnPropertyNames","test2","fromCharCode","test3","letter","shouldUseNative","normalizeHeaderName","enhanceError","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","headers","defaults","transitional","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","adapter","XMLHttpRequest","getDefaultAdapter","transformRequest","rawValue","parser","encoder","stringifySafely","transformResponse","strictJSONParsing","responseType","timeout","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","status","common","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","currentQueue","draining","queueIndex","cleanUpNextTick","drainQueue","run","marker","runClearTimeout","Item","nextTick","browser","env","argv","version","versions","addListener","once","removeListener","removeAllListeners","prependListener","prependOnceListener","binding","cwd","chdir","umask","useForceUpdate","observe","unobserve","DATA_PORTAL_ATTRIBUTE","setPortalAttribute","_defaultMode","_lastMode","RESPONSIVE_MAX_CONSTRAINT","getInitialResponsiveMode","withResponsiveMode","ComposedComponent","resultClass","getResponsiveMode","WithResponsiveMode","_onResize","unknown","hoistStatics","getWidthOfCurrentWindow","currentWindow","innerWidth","dest","TooltipOverflowMode","isarray","tokensToFunction","tokensToRegExp","PATH_REGEXP","tokens","defaultDelimiter","delimiter","escaped","capture","group","modifier","asterisk","partial","repeat","optional","escapeGroup","escapeString","encodeURIComponentPretty","encodeURI","matches","flags","token","segment","attachKeys","re","route","endsWithDelimiter","groups","regexpToRegexp","arrayToRegexp","stringToRegexp","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","camelize","chr","_excluded$1","styleToObject","PRODUCTION","normalizeIconArgs","objectWithKey","_excluded","FontAwesomeIcon","iconArgs","maskArgs","_classes","beat","fade","beatFade","bounce","shake","flash","spin","spinPulse","spinReverse","pulse","fixedWidth","inverse","listItem","flip","rotation","pull","swapOpacity","renderedIcon","_console","extraProps","defaultProps","convertCurry","propTypes","PropTypes","oneOfType","oneOf","convert","mixins","attrs","_extraProps$style","existingStyle","faGithub","faLinkedin","LabelBase","RootType","Label","labelFontWeight","labelColor","labelDisabledColor","labelRequiredStarColor","wordWrap","overflowWrap","alignMap","StackItem","createComponent","Slots","getSlots","withSlots","grow","shrink","disableShrink","align","verticalFill","order","basis","mergeCss","styleArgs","resetIds","paramsSerializer","serializedParams","toISOString","hashmarkIndex","request","response","isAxiosError","toJSON","fileName","lineNumber","columnNumber","settle","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","requestData","requestHeaders","auth","username","password","unescape","Authorization","btoa","fullPath","baseURL","onloadend","responseHeaders","getAllResponseHeaders","responseText","statusText","open","onreadystatechange","responseURL","onabort","onerror","ontimeout","timeoutErrorMessage","xsrfValue","withCredentials","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancelToken","abort","__CANCEL__","config1","config2","valueFromConfig2Keys","mergeDeepPropertiesKeys","defaultToConfig2Keys","directMergeKeys","getMergedValue","mergeDeepProperties","axiosKeys","otherKeys","Cancel","globalSettings","_getGlobalSettings","callbacks","changeDescription","__id__","_getCallbacks","globalObj","defaultFontFamily","LanguageToFontMap","bg","cs","et","he","hi","Hindi","hr","hu","ja","Japanese","kk","ko","Korean","lt","lv","pl","ru","sk","th","Thai","tr","uk","vi","ChineseSimplified","ChineseTraditional","hy","ka","_createFont","weight","MozOsxFontSmoothing","WebkitFontSmoothing","createFontStyles","localeCode","localizedFont","lang","_getLocalizedFontFamily","fontFamilyWithFallback","tiny","mini","regular","xSmall","smallPlus","xLarge","xLargePlus","xxLarge","xxLargePlus","superLarge","mega","findIndex","arraysEqual","array1","array2","getIconContent","mergeImageProps","iconContent","accessibleName","finalChildren","filteredAssign","isAllowed","sourceObject","omit","keytips","persistedKeytips","sequenceMapping","inKeytipMode","shouldEnterKeytipMode","delayUpdatingKeytipChange","_instance","persisted","uniqueKeytip","_getUniqueKtp","uniqueID","event_1","PERSISTED_KEYTIP_ADDED","KEYTIP_ADDED","keytip","oldKeyTip","visible","KEYTIP_UPDATED","keytipToRemove","PERSISTED_KEYTIP_REMOVED","KEYTIP_REMOVED","ENTER_KEYTIP_MODE","EXIT_KEYTIP_MODE","fullSequence","parentKeytip","overflowButtonSequences","keytipSequences","PERSISTED_KEYTIP_EXECUTE","componentName","requiredProps","conditionalPropName","deprecationMap","slotType","isSlot","toArray","createFactory","DefaultComponent","defaultProp","componentProps","userProps","userSlotOptions","defaultStyles","flattenedUserProps","slotProps","transformedProps","_translateShorthand","finalProps","allProps","_constructFinalProps","UserComponent","defaultFactory","slots","mixedProps","slot","_renderSlot","_defaultStyles","ComponentType","slotOptions","arrayWithHoles","iterableToArrayLimit","nonIterableRest","MAX_SIGNED_31_BIT_INT","commonjsGlobal","globalThis","createEventEmitter","handlers","handler","changedBits","calculateChangedBits","_Provider$childContex","_Consumer$contextType","contextProp","getUniqueId","_Component","emitter","_proto","getChildContext","componentWillReceiveProps","nextProps","childContextTypes","isRequired","_Component2","observedBits","_proto2","contextTypes","reactIs","REACT_STATICS","contextType","getDefaultProps","getDerivedStateFromError","getDerivedStateFromProps","KNOWN_STATICS","caller","callee","arity","MEMO_STATICS","compare","TYPE_STATICS","getStatics","isMemo","ForwardRef","Memo","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","targetStatics","sourceStatics","InvalidCharacterError","atob","bs","bc","InvalidTokenError","base64_url_decode","db","extname","EXTRACT_TYPE_REGEXP","TEXT_TYPE_REGEXP","charset","mime","charsets","contentType","extension","exts","extensions","preference","populateMaps","each","serializeCookie","minutes","cookieOptions","setTime","nameEQ","ca","cookie$1","lookupCookie","cookieMinutes","cookieDomain","querystring","lookupQuerystring","hasLocalStorageSupport","localStorageAvailable","localStorage","testKey","lookupLocalStorage","hasSessionStorageSupport","sessionStorageAvailable","lookupSessionStorage","navigator$1","userLanguage","htmlTag","lookupFromPathIndex","subdomain","lookupFromSubdomainIndex","Browser","detectors","i18nOptions","caches","excludeCacheFor","lookupFromUrlIndex","addDetector","detector","detectionOrder","detected","detectorName","cacheName","initializeIcons","baseUrl","speak","GlobalNavButton","ChevronDown","ChevronUp","Edit","Add","More","Settings","Mail","Filter","Search","Share","BlockedSite","FavoriteStar","FavoriteStarFill","CheckMark","Delete","ChevronLeft","ChevronRight","Calendar","Megaphone","Undo","Flag","Page","Pinned","View","Clear","Download","Upload","Folder","Sort","AlignRight","AlignLeft","AddFriend","Info","SortLines","List","CircleRing","Heart","HeartFill","Tiles","Embed","Glimmer","Ascending","Descending","SortUp","SortDown","SyncToPC","LargeGrid","SkypeCheck","SkypeClock","SkypeMinus","ClearFilter","Flow","StatusCircleCheckmark","MoreVertical","registerIconAliases","iconBaseUrl","fontBaseUrl","i0","i1","i2","i3","i4","i5","i6","i7","i8","i9","i10","i11","i12","i13","i14","i15","i16","i17","initialize","IconType","imageLoadError","IconBase","imageErrorAs","iconType","iconContentChildren","_onImageLoadingStateChange","ImageType","finalIconContentChildren","primary","baseButtonStyles","getBaseButtonStyles","getSplitButtonStyles","defaultButtonStyles","primaryStyles","standardStyles","DefaultButton","customizable","DialogFooterBase","actions","actionsRight","_renderChildrenAsActions","DialogFooter","DetailsRowFields","columns","rowClassNames","itemIndex","onRenderItemColumn","getCellValueKey","propsOnRenderField","cellsByColumn","rowHeaderId","cellValueKeysRef","cellValueKeys","defaultOnRenderField","fieldProps","column","cellValueKey","fieldItem","fieldItemIndex","calculatedWidth","isPadded","getValueKey","defaultOnRender","onRenderField","previousValueKey","showAnimation","getCellText","NO_COLUMNS","selectionState","getSelectionState","isDropping","dragDropEvents","onDragEnter","_droppingClassNames","onDragLeave","columnMeasureInfo","DetailsRowBase","previousState","dragDropHelper","onDidMount","_dragDropSubscription","_getRowDragDropOptions","_onSelectionChanged","_onDidMountCalled","previousProps","_cellMeasurer","newWidth","onMeasureDone","onWillUnmount","useReducedRowRenderer","newSelectionState","flatIndexOffset","onRenderCheck","_onRenderCheck","rowWidth","checkboxVisibility","getRowAriaLabel","getRowAriaDescription","getRowAriaDescribedBy","checkButtonAriaLabel","rowFieldsAs","groupNestingDepth","isSelectionModal","isDraggable","canDrag","ariaRowDescription","canSelectItem","showCheckbox","ariaSelected","ariaPositionInSet","startIndex","ariaSetSize","horizontal","_rowClassNames","RowFields","rowFields","columnStartIndex","_ariaRowDescriptionId","draggable","_focusZone","always","collapseAllVisibility","CollapseAllVisibility","forceIntoFirstElement","eventMap","selectionIndex","canDrop","onDragStart","updateDropState","_updateDroppingState","onDrop","onDragEnd","onDragOver","isIndexSelected","isModal","DetailsRow","_merge","circularReferences","isCircularReference","mergeThemes","partialTheme","mergedTheme","defaultFontStyle","ActionButton","_onMount","_onUpdate","_onUnmount","_setComponentRef","_scrollbarWidth","_bodyScrollDisabledCount","DisabledScrollClassName","DATA_IS_SCROLLABLE_ATTRIBUTE","allowScrollOnElement","_previousClientY","_element","targetTouches","clientY","passive","scrollableParent","findScrollableParent","scrollHeight","allowOverscrollOnElement","_disableIosBodyScroll","disableBodyScroll","enableBodyScroll","getScrollbarWidth","scrollDiv","setProperty","startingElement","computedStyles","getComputedStyle","getPropertyValue","CheckBase","IconComponent","aa","ba","da","ea","fa","ha","ia","B","acceptsBooleans","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","removeEmptyString","D","oa","pa","qa","ma","la","removeAttribute","setAttributeNS","xlinkHref","ra","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","sa","ta","wa","xa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","for","E","Ma","Ka","La","Na","Oa","Pa","prepareStackTrace","construct","Qa","_render","Ra","$$typeof","_context","_payload","_init","Sa","Ta","nodeName","Va","_valueTracker","stopTracking","Ua","Wa","Xa","Ya","_wrapperState","initialChecked","Za","controlled","$a","ab","bb","eb","fb","defaultSelected","gb","dangerouslySetInnerHTML","hb","ib","jb","textContent","kb","lb","mb","ob","namespaceURI","MSApp","execUnsafeLocalFunction","pb","nodeType","nodeValue","qb","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","flex","flexPositive","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","lineClamp","orphans","tabSize","widows","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","rb","sb","tb","ub","menuitem","area","br","col","embed","img","keygen","meta","param","track","wbr","vb","wb","is","xb","srcElement","correspondingUseElement","yb","zb","Ab","Bb","Cb","stateNode","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","Ob","Pb","Qb","Rb","Sb","Tb","Ub","Vb","Wb","Xb","Zb","alternate","return","$b","memoizedState","dehydrated","ac","cc","sibling","dc","ec","gc","hc","ic","jc","kc","lc","mc","nc","Map","oc","pc","qc","blockedOn","domEventName","eventSystemFlags","targetContainers","sc","pointerId","tc","vc","wc","lanePriority","unstable_runWithPriority","priority","hydrate","containerInfo","xc","yc","zc","Ac","Bc","unstable_scheduleCallback","unstable_NormalPriority","Cc","Dc","Ec","animationend","animationiteration","animationstart","transitionend","Fc","Gc","Hc","animation","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Pc","Qc","unstable_now","Rc","Uc","pendingLanes","expiredLanes","suspendedLanes","pingedLanes","Vc","entangledLanes","entanglements","Wc","Xc","Yc","Zc","$c","eventTimes","clz32","bd","cd","LN2","dd","unstable_UserBlockingPriority","ed","fd","gd","hd","uc","jd","kd","ld","md","nd","od","charCode","pd","qd","rd","_reactName","_targetInst","isDefaultPrevented","returnValue","isPropagationStopped","isPersistent","wd","xd","yd","sd","eventPhase","bubbles","cancelable","timeStamp","isTrusted","td","ud","view","detail","vd","Ad","screenX","screenY","clientX","pageX","pageY","getModifierState","zd","buttons","movementX","movementY","Bd","Dd","dataTransfer","Fd","Hd","elapsedTime","pseudoElement","Id","clipboardData","Jd","Ld","Md","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Nd","Od","Alt","Control","Meta","Shift","Pd","Qd","locale","Rd","Td","pressure","tangentialPressure","tiltX","tiltY","twist","isPrimary","Vd","touches","changedTouches","Xd","Yd","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","Zd","$d","ae","be","documentMode","ce","de","ee","fe","ge","ie","le","date","datetime","email","month","range","tel","week","me","ne","oe","pe","qe","se","te","ue","ve","we","xe","ye","ze","oninput","Ae","Be","Ce","De","Ee","Fe","He","Ie","Je","Ke","Le","node","nextSibling","Me","compareDocumentPosition","Ne","HTMLIFrameElement","contentWindow","Oe","contentEditable","Pe","Qe","Re","Se","Te","Ue","anchorNode","anchorOffset","focusNode","focusOffset","Ve","We","Xe","Ye","Ze","Yb","G","$e","af","bf","cf","df","Nb","ef","ff","parentWindow","gf","hf","J","K","Q","L","je","char","ke","jf","kf","lf","mf","autoFocus","nf","__html","of","pf","qf","rf","sf","previousSibling","tf","vf","wf","xf","yf","zf","Af","Bf","H","I","Cf","M","N","Df","Ef","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","Ff","Gf","Hf","If","Jf","__reactInternalMemoizedMergedChildContext","Kf","Lf","Mf","Nf","Of","Pf","unstable_cancelCallback","Qf","unstable_shouldYield","Rf","unstable_requestPaint","Sf","Tf","unstable_getCurrentPriorityLevel","Uf","unstable_ImmediatePriority","Vf","Wf","Xf","unstable_LowPriority","Yf","unstable_IdlePriority","Zf","$f","ag","cg","dg","O","eg","fg","gg","hg","ig","jg","kg","ReactCurrentBatchConfig","lg","mg","ng","og","pg","qg","rg","_currentValue","sg","childLanes","tg","dependencies","firstContext","lanes","ug","vg","responders","wg","xg","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","yg","zg","eventTime","lane","payload","Ag","Bg","Cg","A","Dg","Eg","Fg","Gg","Kg","isMounted","_reactInternals","enqueueSetState","Hg","Ig","Jg","enqueueReplaceState","enqueueForceUpdate","Lg","shouldComponentUpdate","isPureReactComponent","Mg","updater","Ng","UNSAFE_componentWillReceiveProps","Og","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","Pg","Qg","_owner","_stringRef","Rg","Sg","lastEffect","nextEffect","firstEffect","Tg","Ug","elementType","Vg","implementation","Wg","Xg","Yg","Zg","$g","ah","bh","ch","dh","eh","fh","gh","hh","ih","memoizedProps","revealOrder","jh","kh","lh","mh","nh","oh","pendingProps","ph","qh","rh","sh","uh","_workInProgressVersionPrimary","vh","ReactCurrentDispatcher","wh","xh","R","S","T","yh","zh","Ah","Bh","Ch","Dh","Eh","Fh","Gh","Hh","baseQueue","Ih","Jh","Kh","lastRenderedReducer","eagerReducer","eagerState","lastRenderedState","dispatch","Lh","Mh","_getVersion","_source","mutableReadLanes","Nh","U","getSnapshot","setSnapshot","Oh","Ph","Qh","Rh","destroy","Sh","Th","Uh","Vh","Wh","Xh","Yh","Zh","$h","ai","bi","ci","di","readContext","useImperativeHandle","useLayoutEffect","useMemo","useReducer","useDebugValue","useDeferredValue","useTransition","useMutableSource","useOpaqueIdentifier","unstable_isNewReconciler","uf","ei","ReactCurrentOwner","fi","gi","ii","ji","ki","li","mi","baseLanes","ni","oi","pi","UNSAFE_componentWillUpdate","componentWillUpdate","qi","ri","pendingContext","Bi","Di","Ei","si","retryLane","ti","fallback","unstable_avoidThisFallback","ui","unstable_expectedLoadTime","wi","xi","yi","zi","isBackwards","rendering","renderingStartTime","tail","tailMode","Ai","Fi","Gi","wasMultiple","onclick","createElementNS","V","Hi","Ii","W","Ji","Ki","Li","Mi","Ni","Oi","Pi","Qi","Ri","Si","componentDidCatch","Ti","componentStack","Ui","WeakSet","Vi","Wi","Xi","__reactInternalSnapshotBeforeUpdate","Yi","Zi","$i","aj","bj","onCommitFiberUnmount","cj","dj","ej","fj","gj","hj","_reactRootContainer","ij","jj","kj","lj","mj","nj","oj","pj","X","Y","qj","rj","sj","tj","uj","vj","Infinity","wj","ck","Z","xj","yj","zj","Aj","Bj","Cj","Dj","Ej","Fj","Gj","Hj","Ij","Jj","Sc","Kj","Lj","Mj","callbackNode","expirationTimes","callbackPriority","Tc","Nj","Oj","Pj","Qj","Rj","Sj","Tj","finishedWork","finishedLanes","Uj","timeoutHandle","Wj","Xj","pingCache","Yj","Zj","va","ak","bk","dk","rangeCount","focusedElem","selectionRange","ek","createRange","setStart","removeAllRanges","addRange","setEnd","scrollLeft","onCommitFiberRoot","gk","ik","isReactComponent","pendingChildren","jk","mutableSourceEagerHydrationData","lk","mk","nk","qk","hydrationOptions","mutableSources","_internalRoot","rk","tk","hk","_calculateChangedBits","unstable_observedBits","unmount","form","Vj","vk","Events","wk","findFiberByHostInstance","bundleType","rendererPackageName","xk","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","yk","supportsFiber","inject","createPortal","findDOMNode","flushSync","unmountComponentAtNode","unstable_batchedUpdates","unstable_createPortal","unstable_renderSubtreeIntoContainer","Fragment","StrictMode","Profiler","Suspense","__self","__source","_status","_result","default","IsSomeRendererActing","only","PureComponent","_currentValue2","_threadCount","createRef","lazy","MessageChannel","unstable_forceFrameRate","port2","port1","onmessage","postMessage","sortIndex","startTime","expirationTime","priorityLevel","unstable_Profiling","unstable_continueExecution","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","delay","unstable_wrapCallback","jsx","jsxs","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","propFullName","secret","getShim","ReactPropTypes","bigint","any","arrayOf","instanceOf","objectOf","shape","checkPropTypes","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Lazy","Portal","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","Axios","mergeConfig","createInstance","defaultConfig","axios","instanceConfig","CancelToken","isCancel","spread","InterceptorManager","dispatchRequest","validator","validators","interceptors","assertOptions","boolean","requestInterceptorChain","synchronousRequestInterceptors","interceptor","runWhen","synchronous","responseInterceptorChain","chain","newConfig","onFulfilled","onRejected","getUri","use","eject","transformData","throwIfCancellationRequested","throwIfRequested","fns","normalizedName","write","toGMTString","isAbsoluteURL","combineURLs","requestedURL","relativeURL","ignoreDuplicateOf","parsed","line","originURL","msie","urlParsingNode","resolveURL","protocol","host","hostname","port","requestURL","pkg","thing","deprecatedWarnings","currentVerArr","isOlderVersion","thanVersion","pkgVersionArr","destVer","isDeprecated","formatMessage","schema","allowUnknown","executor","resolvePromise","normalizeArray","allowAboveRoot","xs","resolvedPath","resolvedAbsolute","trailingSlash","relative","samePartsLength","outputParts","dirname","hasRoot","matchedSlash","ext","startDot","startPart","preDotState","Timeout","clearFn","_clearFn","close","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","active","_onTimeout","registerImmediate","nextHandle","tasksByHandle","currentlyRunningATask","attachTo","runIfPresent","importScripts","postMessageIsAsynchronous","oldOnMessage","canUsePostMessage","messagePrefix","onGlobalMessage","installPostMessageImplementation","channel","installMessageChannelImplementation","script","installReadyStateChangeImplementation","task","concatStyleSetsWithProps","allStyles","mergeCssSets","classNameSet","concatenatedStyleSet","registrations","styleSetArea","DefaultFields","baseStyles","getProps","pure","Wrapped","customizedStyles","additionalProps","__cachedInputs__","propStyles","concatenatedStyles","__noStyleOverride__","pureComponent","_memoizedClassNames","styleCalcCount","getClassNamesCount","currentMemoizedClassNames","useStaticStyles","disableCaching","_traverseMap","enableClassNameCacheFullWarning","trace","_traverseEdge","_normalizeValue","inputs","createResolver","local","newRefs","mergedCallback","tagsToIgnore","modalize","targetDocument","affectedNodes","originalValue","unmodalize","memoizer","innerMemoizer","innerProps","outerProps","concatStyles","_onSettingChanged","ComponentWithInjectedProps","_styleCache","mergedStyles","merged","nativeElementMap","audio","video","ol","textarea","table","colGroup","iframe","DefaultSpacing","s2","s1","l1","l2","baseTheme","DefaultPalette","DefaultEffects","DefaultFontStyles","spacing","DirectionalKeyCodes","mountCounters","setMountCounters","currValue","useFocusRects","rootRef","disableFocusRects","methodNames","_makeSafe","_makeAllSafe","BaseComponent","_updateComponentRef","__disposables","_disposables","disposable","__className","__async","__events","refName","__resolves","currentProps","mutuallyExclusiveMap","_skipComponentRefResolution","classMethod","prototypeMethod","themeSecondary","themeTertiary","themeLighterAlt","blackTranslucent40","neutralPrimaryAlt","whiteTranslucent40","yellowDark","yellow","yellowLight","orange","orangeLight","orangeLighter","redDark","red","magentaDark","magenta","magentaLight","purpleDark","purple","purpleLight","blueDark","blueMid","blue","blueLight","tealDark","teal","tealLight","greenDark","green","greenLight","timeline","rulesArray","useControllableValue","controlledValue","defaultUncontrolledValue","isControlled","valueRef","onChangeRef","setValueOrCallOnChange","FORMAT_ARGS_REGEX","FORMAT_REGEX","replaceFunc","providedId","focusZoneStyles","IS_FOCUSABLE_ATTRIBUTE","FOCUSZONE_ID_ATTRIBUTE","TABINDEX","NO_VERTICAL_WRAP","NO_HORIZONTAL_WRAP","LARGE_DISTANCE_FROM_CENTER","LARGE_NEGATIVE_DISTANCE_FROM_CENTER","raiseClickFromKeyboardEvent","MouseEvent","initMouseEvent","_allInstances","_outerZones","ALLOWED_INPUT_TYPES","ALLOW_VIRTUAL_ELEMENTS","_portalContainsElement","newActiveElement","onActiveElementChanged","doNotAllowFocusEventToPropagate","stopFocusPropagation","onFocusNotification","shouldFocusInnerElementWhenReceivedFocus","defaultTabbableElement","isImmediateDescendant","_isImmediateDescendantOfZone","maybeElementToFocus","_activeElement","initialElementFocused","_setFocusAlignment","_updateTabIndexes","_setParkedFocus","_setActiveElement","isInnerZoneKeystroke","pagingSupportDisabled","shouldEnterInnerZone","_getDocument","_isInnerZone","innerZone","_getFirstInnerZone","focusElement","_shouldRaiseClicksOnSpace","_tryInvokeClickForFocusable","_preventDefaultWhenHandled","_moveFocusLeft","_moveFocusRight","_moveFocusUp","_moveFocusDown","_moveFocusPaging","allowTabKey","_isElementInput","focusChanged","_processingTabKey","_shouldWrapFocus","shouldResetActiveElementWhenTabFromZone","_isContentEditableElement","_shouldInputLoseFocus","_shouldRaiseClicksOnEnter","isForward","activeRect","targetRect","leftAlignment","_focusAlignment","targetRectTop","activeRectBottom","targetRectBottom","activeRectTop","shouldRaiseClicksFallback","shouldRaiseClicks","shouldRaiseClicksOnEnter","shouldRaiseClicksOnSpace","zone","_windowElement","_onKeyDownCapture","_onBlur","defaultActiveElement","_defaultFocusElement","preventFocusRestoration","_lastIndexPath","_evaluateFocusBeforeRender","_onFocus","onMouseDownCapture","ownerZoneElement","_getOwnerZone","ownerZone","forceAlignment","onBeforeFocus","shouldReceiveFocus","point","focusedElement","shouldRestoreFocus","isParked","_isParked","_parkedTabIndex","preventDefaultWhenHandled","getDistanceFromCenter","useDefaultWrap","candidateDistance","candidateElement","changedFocus","isBidirectional","bidirectional","elementDistance","targetTop","_moveFocus","distance","shouldWrap","toFixed","targetBottom","pagesize","_getHorizontalDistanceFromCenter","isHorizontal","isVertical","rect","top_1","childIndex","isRangeSelected","isReadonly","readOnly","shouldInputLoseFocusOnArrowKey","isRendered","_timeoutId","previousTargetProp","currentDoc","defaultFocusRestorer","Popup","enableAriaHiddenSiblings","mergedRootRef","shouldHideSiblings","useHideSiblingNodes","originalFocusedElement","useRestoreFocus","needsVerticalScrollBar","needsVerticalScrollBarState","setNeedsVerticalScrollBar","rootHeight","firstChildHeight","useScrollbarAsync","useUnmount","unmountRef","overrideResponsiveMode","lastResponsiveMode","setLastResponsiveMode","onResize","newResponsiveMode","componentAsMemoizer","Outer","Inner","isMacResult","ariaAttributes","mergedAttribute","ResultComponent","_getCustomizations","stateReducer","_resolveTokens","_resolveStyles","viewProps","statics","allTokens","currentTokens","PrimaryButton","useBoolean","initialState","setTrue","setFalse","UNWANTED_ENCLOSURES_REGEX","UNWANTED_CHARS_REGEX","PHONENUMBER_REGEX","MULTIPLE_WHITESPACES_REGEX","UNSUPPORTED_TEXT_REGEX","getInitials","isRtl","allowPhoneInitials","cleanupDisplayName","initials","splits","getInitialsLatin","onItemsChanged","getKey","_getKey","defaultGetKey","_changeEventSuppressionCount","_exemptedCount","_anchoredIndex","_unselectableCount","_onItemsChanged","_canSelectItem","_keyToIndexMap","_isModal","isEnabled","suppressChange","_hasChanged","_change","setChangeEvents","shouldClear","newKeyToIndexMap","newUnselectableIndices","hasSelectionChanged","haveItemsChanged","_setAllSelected","newExemptedIndicies","newExemptedCount","indexProperty","_exemptedIndices","exemptKey","_items","newIndex","_isAllSelected","_unselectableIndices","_selectedItems","_updateCount","_selectedIndices","endIndex","selectableCount","shouldAnchor","isExempt","clearSelection","selectToIndex","anchorIndex","setKeySelected","isKeySelected","preserveModalState","setModal","SELECTION_INDEX_ATTRIBUTE_NAME","SELECTION_TOGGLE_ATTRIBUTE_NAME","SELECTION_INVOKE_ATTRIBUTE_NAME","SELECTALL_TOGGLE_ALL_ATTRIBUTE_NAME","_handleNextFocus","_hasAttribute","ignoreNextFocus","isToggleModifierPressed","_isCtrlPressed","_isMetaPressed","_getSelectionMode","_shouldHandleFocus","isToggle","itemRoot","_findItemRoot","_getItemIndex","enterModalOnTouch","_isTouch","_setIsTouch","isSelectedOnFocus","_onItemSurfaceClick","_updateModifiers","_isSelectionDisabled","_shouldAutoSelect","_isShiftPressed","toggleWithoutModifierPressed","_onInvokeMouseDown","disableAutoSelectOnInputElements","enableTouchInvocationTarget","isSelectionDisabled","_onToggleAllClick","_onToggleClick","_onInvokeClick","onItemContextMenu","getItems","onItemInvoked","_isInputElement","selectionClearedOnEscapePress","isSelectAllKey","isClearSelectionKey","_findScrollParentAndTryClearOnEmptyClick","_onTouchStartCapture","_onSelectionChange","onKeyDownCapture","onDoubleClick","_onDoubleClick","onContextMenu","_onContextMenu","_onMouseDownCapture","toggleAllSelected","toggleIndexSelected","_isTabPressed","_clearAndSelectIndex","scrollParent","_tryClearOnEmptyClick","Node","selectionPreservedOnEmptyClick","_isNonHandledClick","selectionClearedOnSurfaceClick","indexValue","handleFocus","_shouldHandleFocusTimeoutId","isTouch","_isTouchTimeoutId","CookiesProvider","I18nextProvider","i18n","DEFAULT_DATE_FORMATTING","formatDay","getDate","formatMonth","strings","months","getMonth","formatYear","getFullYear","formatMonthDayYear","formatMonthYear","DEFAULT_CALENDAR_STRINGS","shortMonths","days","shortDays","goToToday","weekNumberFormatString","prevMonthAriaLabel","nextMonthAriaLabel","prevYearAriaLabel","nextYearAriaLabel","prevYearRangeAriaLabel","nextYearRangeAriaLabel","closeButtonAriaLabel","selectedDateFormatString","todayDateFormatString","monthPickerHeaderAriaLabel","yearPickerHeaderAriaLabel","dayMarkedAriaLabel","TimeConstants","addDays","setDate","addWeeks","weeks","addMonths","newMonth","setMonth","addYears","years","setFullYear","getMonthStart","getMonthEnd","compareDates","date1","date2","compareDatePart","getDatePartHashValue","getDateRangeArray","dateRangeType","firstDayOfWeek","workWeekDays","daysToSelectInDayView","startDate","datesArray","endDate","Monday","Tuesday","Wednesday","Thursday","Friday","Day","getDatePart","Week","WorkWeek","daysOffset","getDay","getStartDateOfWeek","Month","nextDate","isInDateRangeArray","dateRange","getWeekNumbersInMonth","weeksInMonth","firstWeekOfYear","navigatedDate","selectedYear","selectedMonth","dayOfMonth","fistDayOfMonth","endOfFirstWeek","dateWeekDay","Sunday","adjustWeekDay","endOfWeekRange","weeksArray","getWeekNumber","FirstFullWeek","getWeekOfYearFullDays","FirstFourDayWeek","num","getDayOfYear","num3","getFirstDayWeekOfYear","numberOfFullDays","dayOfYear","daysInYear","December","num2","year","daysUntilDate","daysInMonth","getDateRangeTypeToUse","isSingleWeek","daySet","amountOfNoNeighbors","nextDay","isContiguous","getBoundedDateRange","minDate","maxDate","boundedDateRange","isBeforeMinDate","isAfterMaxDate","isRestrictedDate","restrictedDates","CalendarMonthHeaderRow","showWeekNumbers","allFocusable","weeksToShow","dayLabels","firstOfMonthIndex","day","originalDate","firstOfMonthIndexOffset","dayCell","weekDayLabelCell","findAvailableDate","targetDate","initialDate","restrictedDateOptions","availableDate","CalendarGridDayCell","dateTimeFormatter","activeDescendantId","navigatedDayRef","calculateRoundedStyles","dayIndex","weekIndex","weekCorners","customDayCellRef","onSelectDate","onNavigateDate","getDayInfosInRangeOfDay","getRefsFromDayInfos","cornerStyle","isNavigatedDate","isMarked","daySelected","isInBounds","dayOutsideBounds","isInMonth","dayOutsideNavigatedMonth","setRef","onSelected","onMouseOver","dayInfos","dayRefs","dayRef","bottomLeftCornerDate","bottomRightCornerDate","topLeftCornerDate","topRightCornerDate","classNamesToAdd","onMouseOut","findAvailableDateOptions","dayToCompare","navigateMonthEdge","dayButton","isToday","dayIsToday","dayMarker","CalendarGridRow","rowClassName","ariaRole","weekNumbers","titleString","weekNumberCell","useWeeks","getSetRefCallback","weeksGrid","selectedDate","today","markedDays","todaysDate","isAllDaysOfWeekOutOfMonth","selectedDateRangeType","selectedDates","shouldGetWeeks","dayInfo","markedDay","getDayGrid","firstVisibleDay","lastVisibleDay","getMarkedDays","CalendarDayGridBase","daysRef","dayKey","useDayRefs","restrictedDatesOptions","animateBackwards","previousNavigatedDate","useAnimateBackwards","above","below","roundedTopRight","roundedBottomLeft","roundedBottomRight","calculateBorderStyles","datesAbove","datesBelow","datesRight","datesLeft","isInSameHoverRange","date1Selected","date2Selected","initialWeeks","weekCornersStyled","useWeekCornerStyles","getWeekCornerStyles","labelledBy","lightenDaysOutsideNavigatedMonth","animationDirection","partialWeekProps","dateRangeHoverType","sortedWWDays","sort","accumulatedValue","currentWeek","weekDay","dayInfosInRange","firstTransitionWeek","weekRow","lastTransitionWeek","AnimationDirection","hoverStyle","pressedStyle","dayIsTodayStyle","daySelectedStyle","transitionRowDisappearance","CalendarDayGrid","rowAnimationStyle","Horizontal","firstTransitionRowAnimationStyle","lastTransitionRowAnimationStyle","disabledStyle","borderCollapse","borderSpacing","tableLayout","span","borderTopLeftRadius","borderBottomLeftRadius","CalendarDayBase","dayGrid","onHeaderSelect","showSixWeeksByDefault","monthAndYearId","headerIsClickable","monthAndYear","HeaderButtonComponentType","headerAriaLabel","onButtonKeyDown","CalendarDayNavigationButtons","navigationIcons","showCloseButton","onSelectNextMonth","onSelectPrevMonth","leftNavigationIcon","leftNavigation","rightNavigationIcon","rightNavigation","closeNavigationIcon","closeIcon","prevMonthInBounds","nextMonthInBounds","monthComponents","headerIconButton","CalendarDay","hasHeaderClickCallback","highlightCurrent","highlightSelected","animationStyle","headerAnimationStyle","headerContainer","currentItemButton","navigationButtonsContainer","navigationButton","gridContainer","buttonRow","getPickerStyles","defaultCalendarStrings","defaultCalendarNavigationIcons","CELL_COUNT","DefaultCalendarYearStrings","prevRangeAriaLabel","nextRangeAriaLabel","CalendarYearGridCell","highlightCurrentYear","highlightSelectedYear","onSelectYear","onRenderYear","buttonRef","CalendarYearNavDirection","CalendarYearGrid","fromYear","toYear","minYear","maxYear","selectedCellRef","currentCellRef","renderCell","yearToRender","gridAriaLabel","cells","cellRow","CalendarYearNavArrow","onSelectPrev","onSelectNext","Previous","newRangeOffset","ariaLabelString","onNavigate","isLeftNavigation","Next","CalendarYearNav","CalendarYearTitle","rangeAriaLabel","headerAriaLabelFormatString","currentDateRange","NavigationDirection","CalendarYearHeader","onRenderTitle","CalendarYearBase","navigatedYear","rangeYear","previousFromYear","useYearRangeState","onNavNext","onNavPrevious","gridRef","CalendarYear","yearPickerHidden","CalendarMonthBase","navigatedMonthRef","calendarYearRef","focusOnUpdate","useFocusLogic","focusOnNextUpdate","isYearPickerVisible","setIsYearPickerVisible","currentYear","previousYear","highlightCurrentMonth","highlightSelectedMonth","selectMonthCallback","onSelectMonth","onSelectNextYear","onSelectPrevYear","dateFormatter","isPrevYearInBounds","isNextYearInBounds","getYearEnd","yearToString","yearFormattingDate","yearRangeToString","yearRange","yearRangeToNextDecadeLabel","yearRangeToPrevDecadeLabel","getYearStrings","yearStrings","newNavigationDate","rowIndexes","yearString","rowNum","monthsForRow","monthIndex","indexedMonth","isNavigatedMonth","isSelectedMonth","isSelectedYear","isCurrentMonth","CalendarMonth","defaultWorkWeekDays","isMonthPickerVisible","isDayPickerVisible","showMonthPickerAsOverlay","showGoToToday","FirstDay","CalendarBase","setSelectedDate","navigatedDay","setNavigatedDay","navigatedMonth","setNavigatedMonth","lastSelectedDate","setLastSelectedDate","selectedDateRangeArray","useDateState","onDateSelected","navigateDay","navigateMonth","getShowMonthPickerAsOverlay","setIsMonthPickerVisible","setIsDayPickerVisible","useVisibilityState","toggleDayMonthPickerVisibility","dayPicker","monthPicker","renderGoToTodayButton","goTodayEnabled","goTodayButton","onGotoToday","calendarDayProps","calendarMonthProps","monthPickerOnly","overlaidWithButton","overlayedWithButton","todayDateString","selectedDateString","selectionAndTodayString","liveRegion","focusOnNavigatedDay","monthPickerWrapper","totalWidth","flexDirection","defaultDatePickerStrings","isRequiredErrorMessage","invalidInputErrorMessage","isResetStatusMessage","allowTextInput","formatDate","toDateString","parseDateFromString","dateStr","initialPickerDate","borderless","pickerAriaLabel","underlined","DatePickerBase","calendarProps","textFieldProps","CalendarType","disableAutoFocus","calloutId","calendar","datePickerDiv","textFieldRef","preventFocusOpeningPicker","preventNextFocusOpeningPicker","isCalendarShown","setIsCalendarShown","useCalendarVisibility","setSelectedDateState","formattedDate","setFormattedDate","newDate","useSelectedDate","errorMessage","setErrorMessage","statusMessage","setStatusMessage","isDateOutOfBounds","isOutOfBoundsErrorMessage","selectedText","useErrorMessage","validateTextInput","showDatePickerPopup","dismissDatePickerPopup","newlySelectedDate","calendarDismissed","handleEscKey","isDatePickerShown","textFieldId","TextField","textField","openOnClick","onRenderInput","readOnlyTextField","readOnlyPlaceholder","onPositioned","FocusTrapZone","isClickableOutsideFocusTrap","disableFirstFocus","withLabel","withoutLabel","DatePicker","DatePickerIcon","TEXTFIELD_HEIGHT","SelectAllVisibility","_selection","_dragEnterCounts","_activeTargets","_lastId","_initialized","DragDropHelper","dragDropOptions","_onDocumentMouseUp","isDroppable","activeTarget","updateDropState_1","dragDropTarget","_isDraggable","_isDroppable","isHandled","_onDragEnd","_isDragging","setData","_dragData","dropTarget","_isChild","eventTarget","dragTarget","_onMouseMove","_onMouseLeave","childElement","dragContext","defaultOnRenderHeader","isIconOnly","columnProps","tooltipHostProps","hostClassName","onColumnClick","columnActionsMode","_updateHeaderDragInfo","borderWhileDragging","noBorderWhileDragging","setDraggedItemIndex","updateDragInfo","onColumnContextMenu","DetailsColumnBase","parentId","onRenderColumnHeaderTooltip","_onRenderColumnHeaderTooltip","headerClassName","isActionable","isIconVisible","isSorted","isGrouped","isFiltered","transitionDurationDrag","transitionDurationDrop","onRenderFilterIcon","_onRenderFilterIcon","onRenderHeader","hasInnerButton","accNameDescription","_hasAccessibleDescription","isSortedDescending","gripperBarVerticalStyle","cellTooltip","setAriaDescribedBy","_onColumnContextMenu","_onColumnClick","hasDropdown","isMenuOpen","nearIcon","showSortIconWhenUnsorted","sortIcon","_renderAccessibleDescription","_addDragDropHandling","isDropped","borderAfterDropping","noBorderAfterDropping","TRANSITION_DURATION_DROP","columnIndex","_onDragStart","filterAriaLabel","sortAscendingAriaLabel","sortDescendingAriaLabel","groupAriaLabel","sortableAriaLabel","_getColumnDragDropOptions","_onRootMouseDown","DetailsColumn","dropdownChevronForegroundColor","nearIconStyle","borderAfterDragOrDrop","alignContent","_draggedColumnIndex","_resetDropHints","_computeDropHintToBeShown","columnReorderProps","_getColumnReorderProps","targetIndex","_currentDropHintIndex","isValidDrop","_isValidCurrentDropHintIndex","_onDropIndexInfo","sourceIndex","onColumnDrop","dragDropDetails","draggedIndex","handleColumnReorder","_dropHintDetails","_isCheckboxColumnHidden","_getDropHintPositions","onColumnDragStart","onColumnDragEnd","columnDragEndLocation","_isEventOnHeader","dropLocation","prevRef","prevX","prevMid","frozenColumnCountFromStart","frozenColumnCountFromEnd","_rootElement","dropHintElement","offsetLeft","newMid","originX","startX","endX","dropHintElementRef","eventXRelativePosition","currentDropHintIndex","_liesBetween","lastValidColumn","indexToUpdate","_isBefore","_isAfter","middleIndex","_updateDropHintElement","columnResizeDetails","isResizable","_stopPropagation","_onSizerBlur","_onSizerDoubleClick","columnIndexAttr","columnMinWidth","onColumnResized","increment","onColumnIsSizingChanged","movement","_onSizerMouseUp","onToggleCollapseAll","newCollapsed","_dragDropHelper","minimumPixelsForDrag","DetailsHeaderBase","_onRootKeyDown","_subscriptionObject","_getHeaderDragDropOptions","previousColumns","ariaLabelForToggleAllGroupsButton","ariaLabelForSelectAllCheckbox","selectAllVisibility","ariaLabelForSelectionColumn","isCheckboxHidden","isCheckboxAlwaysVisible","showGroupExpander","columnIndexOffset","_rootComponent","_onRootMouseMove","_onSelectAllClicked","_onToggleCollapseAll","_renderDropHint","_updateDragInfo","_renderColumnDivider","Layer","_onSizerMouseMove","columnReorderOptions","_onDrop","_onDragOver","displayProperty","clientRect","onRenderDivider","_renderColumnSizer","dropHintIndex","onColumnAutoResized","DetailsHeader","listCell","beziers","dropIcon","expand","iconTag","onToggleCollapse","isGroupLoading","newLoadingVisible","isLoadingVisible","onGroupHeaderKeyUp","shouldOpen","_toggleCollapse","onToggleSelectGroup","onGroupHeaderClick","ariaColSpan","headerCount","hasMoreData","GroupHeaderBase","groupLevel","viewport","_onRenderTitle","onRenderGroupHeaderCheckbox","isCollapsedGroupSelectVisible","expandButtonProps","expandButtonIcon","selectAllButtonProps","ariaPosInSet","ariaRowIndex","canSelectGroup","isSelectionCheckVisible","currentlySelected","_onHeaderClick","groupHeaderContainer","_onToggleSelectGroupClick","expandIsCollapsed","GroupHeader","finalRowHeight","checkExpandResetStyles","transitionDelay","EXPAND_BUTTON_WIDTH","GroupShowAll","showAllLinkText","onToggleSummarize","memoizedOnClick","GroupFooter","footerText","ScrollToMode","SPACER_KEY_PREFIX","EMPTY_RECT","_measurePageRect","_measureSurfaceRect","_measureScrollRect","renderCount","_resetRequiredWindows","_requiredRect","_measureVersion","_invalidatePageCache","_updatePages","surfaceElement","surfaceRef","pageElements","pageProps","onRenderCell","cellRole","itemKey","ignoreScrollingState","isScrolling","pages","_getDerivedStateFromProps","_estimatedPageHeight","_totalEstimates","_requiredWindowsAhead","_requiredWindowsBehind","_onAsyncScroll","_onAsyncIdle","_onAsyncResize","_onScrollingDone","_cachedPageHeights","_focusedIndex","_pageCache","_pageRefs","measureItem","scrollToMode","_getRenderCount","allowedRect","_allowedRect","itemsPerPage","pageSpecification","_getPageSpecification","pageHeight","_scrollElement","scrollRect","scrollWindow","itemPositionWithinPage","itemIndexInPage","scrollBottom","page","isSpacer","_scrollTop","totalRowHeight","_onScroll","finalState","pagesVersion","getPageHeight","_updatePageMeasurements","_materializedRect","_hasCompletedFirstRender","onPagesUpdated","newState","oldPages","newPages","oldPage","newPage","_updateRenderRects","_surfaceRect","onRenderSurface","onRenderRoot","_renderPage","finalOnRenderSurface","_onRenderSurface","_onRenderRoot","_surface","onShouldVirtualize","cachedPage","usePageCache","pageElement","pageStyle","_getPageStyle","onRenderPage","_onRenderPage","newRef","getPageStyle","indexString","innerRect","outerRect","renderedWindowsAhead","renderedWindowsBehind","requiredWindowsAhead","requiredWindowsBehind","windowsAhead","windowsBehind","newListState","_buildPages","oldListPages","_notifyPageChanges","onPageAdded","onPageRemoved","renderedIndexes","_onPageAdded","_onPageRemoved","heightChanged","_shouldVirtualize","_measurePage","hasChangedHeight","cachedHeight","measureVersion","newClientRect","round","materializedRect","pageTop","currentSpacer","focusedIndex","shouldVirtualize","isFirstRender","this_1","pageData","newRect","pageBottom","isPageRendered","isPageInAllowedRange","isPageInRequiredRange","itemsInPage","_createPage","_visibleRect","visibleRect","getPageSpecification","_getItemCountForPage","_getPageHeight","visibileRect","getItemCountForPage","pageKey","surfaceRect","_scrollHeight","visibleTop","innerHeight","_expandRect","pagesBefore","pagesAfter","subGroup","subGroupIndex","eventsToRegister","getGroupItemLimit","headerProps","showAllProps","footerProps","listProps","onRenderGroupHeader","onRenderGroupShowAll","onRenderGroupFooter","nestingDepth","level","showEmptyGroups","GroupedListSection","_subGroupRefs","_getGroupKey","groupIndex","isGroup","newIsDropping","_droppingClassName","_getGroupDragDropOptions","_onRenderGroupHeader","_onRenderGroupShowAll","_onRenderGroupFooter","groupedListClassNames","isShowAllVisible","isShowingAll","hasNestedGroups","dividerProps","ariaControlsProps","groupedListId","groupHeaderProps","groupShowAllProps","groupFooterProps","canDragGroups","_getDroppingClassName","_list","_renderSubGroup","_returnOne","_onRenderGroup","forceListUpdate","subGroupCount","pageRefs","_onRenderGroupCell","groupIsDropping","ROW_HEIGHT","COMPACT_ROW_HEIGHT","_onToggleSelectGroup","_onToggleCollapse","_onToggleSummarize","_getGroupNestingDepth","finalListProps","onRenderShowAll","onRenderFooter","_getDefaultGroupItemLimit","_getGroupItemLimit","getGroupHeight","_getGroupHeight","pageGroup","_updateIsSomeGroupExpanded","toggleRangeSelected","_isSomeGroupExpanded","_computeIsSomeGroupExpanded","GroupedListBase","listVersion","shouldForceUpdates","scrollToIndex","getStartItemIndexInView","isAllGroupsCollapsed","_setGroupsCollapsedState","rootListProps","_isInnerZoneKeystroke","_renderGroup","_forceListUpdates","allCollapsed","groupsInLevel","onGroupExpandStateChanged","newIsSomeGroupExpanded","isHeaderVisible","GroupedList","getRect","withViewport","_viewportResizeObserver","ResizeObserver","disconnect","withForceUpdate","viewportElement","_resizeAttempts","_updateViewport","WithViewportComponent","delayFirstMeasure","disableResizeObserver","skipViewportMeasures","_isResizeObserverAvailable","_registerResizeObserver","previousSkipViewportMeasures","_unregisterResizeObserver","newViewport","MIN_COLUMN_WIDTH","DetailsListInner","ariaLabelForListHeader","constrainMode","isPlaceholderData","layoutMode","onColumnHeaderClick","onColumnHeaderContextMenu","selectionZoneProps","ariaLabelForGrid","rowElementEventMap","shouldApplyApplicationRole","adjustedColumns","isSomeGroupExpanded","listRef","focusZoneRef","groupedListRef","headerRef","onRowDidMount","onRowWillUnmount","disableSelectionZone","onActiveRowChanged","onRenderMissingItem","checkButtonGroupAriaLabel","enterModalSelectionOnTouch","onRenderDefaultRow","selectionZoneRef","rowId","getGroupNestingDepth","groupedDetailsListIndexMap","indexMap","rowCount","numGroupHeaders","numOfGroupHeadersBeforeItem","totalRowCount","useGroupedDetailsListIndexMap","additionalListProps","defaultOnRenderDetailsHeader","detailsHeaderProps","defaultOnRenderDetailsFooter","propsOnRenderDetailsHeader","onRenderDetailsHeader","propsOnRenderDetailsFooter","onRenderDetailsFooter","detailsFooterProps","columnReorderOnDragEnd","finalDropLocation","outside","surface","total","remainingGroups","currentGroup","GetGroupCount","colCount","isFixed","fixedColumns","isHorizontalConstrained","horizontalConstrained","onRenderDetailsGroupFooter","finalOnRenderDetailsGroupFooter","onRenderDetailsGroupHeader","finalOnRenderDetailsGroupHeader","groupKey","ariaRowCount","finalGroupProps","sumColumnWidths","memoize","finalOnRenderRow","onRenderRow","rowProps","onRenderListCell","isRightArrow","focusZoneInnerProps","focusZone","onHeaderKeyDown","onContentKeyDown","headerWrapper","contentWrapper","setKey","newViewportWidth","oldViewportWidth","shouldResetSelection","_initialFocusedIndex","initialFocusedIndex","focusedItemIndex","_adjustColumns","row","_getItemKey","_activeRows","_setFocusToRowIfPending","collapsed","_groupedList","toggleCollapseAll","resizingColumn","resizingColumnIndex","newCalculatedWidth","onColumnResize","_rememberCalculatedWidth","totalCount","measureCell","_onColumnResized","onActiveItemChanged","_columnOverrides","lastWidth","_getAdjustedColumns","DetailsListBase","_setFocusToRow","newColumnIndex","isCheckboxColumnHidden","_notifyColumnsResized","onDidUpdate","_header","_selectionZone","_onGroupExpandStateChanged","_onColumnIsSizingChanged","_onRowDidMount","_onRowWillUnmount","_onColumnAutoResized","_onActiveRowChanged","_onRenderRow","currentWidth","viewportWidth","newColumns","lastSelectionMode","canResizeColumns","sortedColumnKey","groupedColumnKey","firstItem","isCollapsable","isCollapsible","clickable","buildColumns","_getFixedColumns","_getJustifiedColumns","_getColumnOverride","flexMargin","remainingWidth","sumProportionalWidth","getPaddedWidth","rowCheckWidth","CHECKBOX_WIDTH","groupExpandWidth","GROUP_EXPAND_WIDTH","widthFraction","newColumn","fullWidth","shrinkWidth","MAX_VALUE","minimumWidth","availableWidth","baseColumn","overflowWidth","originalWidth","isLast","overrides","spaceLeft","justified","onHover","paddingOnly","DetailsList","WebkitOverflowScrolling","PortalCompatContext","mergeSettings","oldSettings","newSettings","mergeSettingsWith","_isSettingsFunction","_settingsMergeWith","mergeScopedSettings","scopedSettingsFromProps","oldScopedSettings","newScopedSettings","_scopedSettingsMergeWith","Customizer","_onCustomizationChange","contextTransform","parentContext","newContext","mergeCustomizations","getFabricTheme","FabricBase","applyTheme","applyThemeToBody","bodyThemed","currentDoc_1","useApplyThemeToBody","contextDir","pageDir","componentDir","rootDir","needsTheme","getDir","renderedContent","useRenderedContent","inheritFont","Fabric","_layersByHostId","_layerHostsById","defaultHostId","_defaultHostSelector","filteredEventProps","LayerBase","registerPortalEl","mergedRef","layerRef","needRaiseLayerMount","setNeedRaiseLayerMount","eventBubblingEnabled","hostId","onLayerDidMount","onLayerMounted","onLayerWillUnmount","insertFirst","isNotHost","getHost","layerHost","layerHosts","getLayerHost","getElementById","defaultHostSelector","cssText","createDefaultLayerHost","removeLayerElement","createLayerElement","virtualChild","virtualParent","oldParent","setVirtualParent","notifyLayersChanged","registerLayer","unregisterPortalEl","layers","unregisterLayer","ReactDOM","onFilterEvent","getFilteredEvents","BUBBLING_PHASE","rootNoHost","registerPersistedKeytips","keytipsToRegister","registeredPersistedKeytips","unregisterPersistedKeytips","OverflowButton","overflowItems","itemSubMenuProvider","onRenderOverflowButton","getSubMenuForItem","newKeytipsToRegister","newOverflowItems","overflowItem","persistedKeytip","hasDynamicChildren","onExecute","menuExecute","hasOverflowSubMenu","newOverflowItem","modifiedOverflowItems","prevPersistedKeytips","useKeytipRegistrations","OverflowSetBase","divContainer","focusSucceeded","useComponentRef","overflowSide","showOverflow","overflowButton","ResizeGroupDirection","overflowItemStyle","OverflowSet","getNextResizeGroupStateProvider","measurementCache","measurementsCache","getCachedMeasurement","addMeasurementToCache","measurement","getMeasurementCache","_containerDimension","_measurementCache","_getMeasuredDimension","measuredData","getElementToMeasureDimension","cachedDimension","measuredDimension","_shrinkContentsUntilTheyFit","onReduceData","dataToMeasure","nextMeasuredData","renderedData","resizeDirection","getNextState","currentState","newContainerDimension","newDimension","fullDimensionData","onGrowData","measureContainer","_updateContainerDimension","_growDataUntilItDoesNotFit","shouldRenderDataForMeasurement","getInitialResizeGroupState","MeasuredContext","isMeasured","hiddenDivStyles","hiddenParentStyles","resizeDataReducer","useResizingBehavior","nextResizeGroupStateProvider","initialHiddenDiv","updateHiddenDiv","hasRenderedContent","initialStateData","resizeData","dispatchResizeDataAction","stateRef","useResizeState","updateResizeState","remeasure","dataDidRender","containerDimension","boundingRect","refToMeasure","measuredBoundingRect","dataNeedsMeasuring","isInitialMeasure","measuredContextValue","ResizeGroupBase","onRenderData","ResizeGroup","focusInset","focusColor","baseSplitButtonStyles","commandButtonStyles","CommandBarButton","getCommandButtonStyles","rootStyles","labelStyles","restCustomStyles","primaryGroupAriaLabel","farItemsGroupAriaLabel","hasSecondSet","farItems","_overflowSet","primarySet","primaryItems","_onRenderItem","_onRenderOverflowButton","secondarySet","itemText","commandButtonProps","buttonStyles","iconOnly","_onButtonClick","TooltipHost","_commandButton","ButtonAs","buttonAs","CommandBarButtonAs","commandBarButtonAs","Type","overflowButtonProps","combinedOverflowItems","overflowProps","OverflowButtonType","overflowButtonAs","shiftOnReduce","onDataReduced","movedItem","renderedInOverflow","newData","_computeCacheKey","onDataGrown","minimumOverflowItems","CommandBarBase","_onReduceData","_onGrowData","ResizeGroupAs","commandBarData","_resizeGroup","_onRenderData","overflowSet","inactive","CommandBar","SelectableOptionMenuItemType","PanelType","_size","DropdownSizePosCache","displayOnlyOptionsCache","DropdownMenuItemType","_displayOnlyOptionsCache","_cachedOptions","PanelVisibilityState","onRenderNavigation","onRenderNavigationContent","elt","_allowTouchBodyScroll","_scrollableContent","hasCloseButton","_onRenderNavigationContent","navigation","_onRenderHeader","iconButtonStyles","_hasCustomNavigation","_headerTextId","_onPanelClick","headerTextId","headerTextProps","onRenderFooterContent","footer","footerInner","newVisibilityState","onOpen","_animationCallback","_onTransitionComplete","_updateFooterPosition","onOpened","closed","onDismissed","allowTouchBodyScroll","ignoreExternalFocusing","forceFocusInsideTrap","firstFocusableSelector","isFooterSticky","PanelBase","isOpen","animatingClosed","animatingOpen","_shouldListenForOuterClick","_dismissOnOuterClick","shouldListenOnOuterClick","previousShouldListenOnOuterClick","_clearExistingAnimationTimer","_animateTo","elementToFocusOnDismiss","focusTrapZoneProps","isBlocking","isFooterAtBottom","isLightDismiss","isHiddenOnDismiss","layerProps","overlayProps","popupProps","customWidth","onLightDismissClick","_onRenderNavigation","onRenderBody","_onRenderBody","_onRenderFooter","isLeft","smallFixedNear","customNear","isOnRightSide","customWidthStyles","custom","isAnimating","focusTrapZoneClassName","hasCustomNavigation","overlay","Overlay","isDarkThemed","hiddenPanel","_panel","contentInner","_allowScrollOnPanel","scrollableContent","commands","innerHeight_1","panel","onOuterClick","smallFixedFar","smallFluid","largeFixed","extraLarge","panelWidth","panelMargin","smallPanelSelectors","mediumPanelSelectors","largePanelSelectors","largeFixedPanelSelectors","extraLargePanelSelectors","getPanelBreakpoints","sharedPaddingStyles","Panel","isCustomPanel","elevation64","hyphens","borderTopColor","getAllSelectedOptions","DropdownBase","selectedKeyPropToUse","defaultSelectedKeys","selectedKeys","defaultSelectedKey","selectedKey","multiSelect","oldOptions","setSelectedIndices","didOptionsChange","oldSelectedKeyProp","getAllSelectedIndices","getSelectedIndex","searchKey","getSelectedIndexes","useSelectedItemsState","DropdownInternal","activeTimeouts","safeRequestAnimationFrame","onChanged","changedOpt","_dropDown","placeHolder","_unused","multiSelectDelimiter","_getTitle","_getPlaceholder","panelProps","dropdownWidth","isSmall","firstFocusableTarget","_listId","panelStyles","calloutWidth","calloutMinWidth","_onDismiss","_renderFocusableList","_onPositioned","caretDown","renderedList","emptyQueue","newGroup","placeRenderedOptionIntoQueue","_renderSeparator","_renderHeader","_renderOption","onRenderOption","_onRenderOption","isItemSelected","dropdownItemHidden","dropdownItemSelectedAndDisabled","dropdownItemSelected","dropdownItemDisabled","dropdownItem","multiSelectItemStyles","multiSelectItem","Checkbox","_onMouseItemLeave","onRenderLabel","_onRenderItemLabel","_sizePosCache","positionInSet","optionSetSize","dropdownOptionText","positions","_requestAnimationFrame","_hasBeenPositioned","calloutRenderEdge","targetEdge","setSelectedIndex","_isScrollIdle","_scrollIdleTimeoutId","_scrollIdleDelay","_shouldIgnoreMouseEvent","_host","_isDisabled","_lastKeyDownWasAltOrMeta","_isAltOrMeta","containsExpandCollapseModifier","_moveIndex","_shouldHandleKeyUp","document_1","_shouldOpenOnFocus","_isFocusedByClick","_optionId","updateOptions","_gotMouseMove","onRenderContainer","_onRenderContainer","onRenderCaretDown","_onRenderCaretDown","_onRenderLabel","onRenderPlaceholder","onRenderPlaceHolder","cachedOptions","errorMessageId","ariaActiveDescendant","hasError","hasLabel","isRenderingPlaceholder","panelClassName","calloutClassName","hasErrorMessage","dropdown","_onDropdownBlur","_onDropdownKeyDown","_onDropdownKeyUp","_onDropdownClick","_onDropdownMouseDown","_onRenderPlaceholder","caretDownWrapper","shouldOpenOnFocus","notifyOnReselect","newIndexes","_copyArray","_onChange","newArray","stepValue","stepCounter","onRenderList","_onRenderList","dropdownItemsWrapper","_onZoneKeyDown","_onZoneKeyUp","dropdownItems","separatorClassName","dropdownDividerHidden","dropdownDivider","dropdownItemHeaderHidden","dropdownItemHeader","openOnKeyboardFocus","titleIsPlaceHolder","titleHasError","highContrastAdjustMixin","highContrastItemAndTitleStateMixin","highContrastBorderState","MinimumScreenSelector","Dropdown","globalClassnames","rootHoverFocusActiveSelectorNeutralDarkMixin","rootHoverFocusActiveSelectorNeutralPrimaryMixin","borderColorError","dropdownItemStyle","dropdownHeaderStyle","selectedItemBackgroundColor","itemSelectors","titleOpenBorderRadius","calloutOpenBorderRadius","borderWidth","borderStyle","DROPDOWN_HEIGHT","outlineOffset","personaSize","personaPresenceSize","sizeBoolean","isSize8","size8","isSize10","size10","isSize16","size16","isSize24","size24","extraExtraSmall","isSize28","size28","extraSmall","isSize32","size32","isSize40","size40","isSize48","size48","isSize56","size56","isSize72","size72","isSize100","size100","isSize120","size120","sizeToPixels","presenceBoolean","presence","isAvailable","online","isAway","away","blocked","isBusy","busy","isDoNotDisturb","dnd","isOffline","offline","PersonaPresenceBase","coinSize","isOutOfOffice","presenceTitle","presenceColors","renderIcon","presenceHeightWidth","presenceMaxSize","coinSizeWithPresenceIconStyle","presenceFontMaxSize","coinSizeWithPresenceStyle","PersonaPresenceEnum","presenceIcon","determineIcon","oofIcon","makeOpenCircleIconStyle","makeBeforeBorderStyle","borderSize","makeSizeStyle","presenceColorAvailable","available","presenceColorAway","presenceColorBusy","presenceColorDnd","presenceColorOffline","presenceColorOof","oof","presenceColorBackground","isOpenCirclePresence","size12","backgroundClip","size6","size20","COLOR_SWATCHES_LOOKUP","lightBlue","darkBlue","darkGreen","lightPink","pink","lightRed","darkRed","violet","gold","burgundy","warmGray","cyan","rust","coolGray","COLOR_SWATCHES_NUM_ENTRIES","getPersonaInitialsColor","initialsColor","personaInitialsColor","lightGreen","transparent","gray","personaInitialsColorToHexCode","hashCode","iLen","getInitialsColorFromName","getInitialsStyles","initialsTextColor","showUnknownPersonaCoin","imageAlt","PersonaCoinBase","onPhotoLoadingStateChange","imageUrl","imageLoadState","setImageLoadstate","useImageLoadState","renderCoin","getCoinRenderer","coinProps","onRenderCoin","onRenderPersonaCoin","onRenderInitials","renderPersonaCoinInitials","showInitialsUntilImageLoads","divCoinProps","coinSizeStyle","hideImage","personaPresenceProps","shouldRenderInitials","coin","imageArea","size10WithoutPresenceIcon","imageShouldFadeIn","imageShouldStartVisible","dimension","imageInitials","PersonaCoin","perspective","showOverflowTooltip","PersonaBase","getText","renderElement","elementClassNames","renderFunction","defaultRenderFunction","tooltip","overflowMode","Parent","onInternalRenderPrimaryText","onInternalRenderSecondaryText","onInternalRenderTertiaryText","tertiaryText","onInternalRenderOptionalText","optionalText","hidePersonaDetails","onRenderOptionalText","onRenderPrimaryText","onRenderSecondaryText","onRenderTertiaryText","providedCoinProps","showSecondaryText","personaCoinProps","personaDetails","details","doNotDisturb","Persona","showSecondaryTextDefaultHeight","sharedTextStyles","TooltipDelay","subText","TooltipBase","Tooltip","tooltipGapSpace","sqrt","devicePixelRatio","_toggleTooltip","_hideTooltip","_tooltipHost","Self","_ignoreNextFocusEvent","_onTooltipMouseEnter","TooltipHostBase","_currentVisibleTooltip","overflowElement","_getTargetElement","scrollWidth","hasHorizontalOverflow","hasVerticalOverflow","_clearDismissTimer","_clearOpenTimer","delayTime","_getDelayTime","_openTimerId","closeDelay","_dismissTimerId","isTooltipVisible","onTooltipToggle","long","isAriaPlaceholderRendered","tooltipProps","tooltipId","_defaultTooltipId","isContentPresent","showTooltip","_onTooltipFocus","onBlurCapture","_onTooltipBlur","_onTooltipMouseLeave","_onTooltipKeyDown","ariaPlaceholder","_seed","mergeStylesRenderer","renderStyles","styleSet","renderFontFace","mergeFontFace","renderKeyframes","mergeKeyframes","useThemeProviderStyles","styleOrFunction","graph","allWindows","cleanupMapEntries","winId","contextualTheme","graphNode","windowId","classMap","graphGet","refCount","graphRef","graphDeref","isStyleFunction","windowNode","idNode","graphSet","makeStyles","useThemeProviderClasses","applyTo","classesToApply","applyToBody","classToApply","useApplyClassToBody","renderThemeProvider","customizerContext","as","themeToIdMap","useThemeProviderState","draftState","userTheme","parentTheme","themes","ids","getThemeId","components","ThemeProvider","useThemeProvider","Rectangle","_createPositionData","alignmentEdge","isAuto","DirectionalDictionary","_isRectangleWithinBounds","_getOutOfBoundsEdges","outOfBounds","_getEdgeValue","edge","_setEdgeValue","_getCenterValue","edges","_getFlankingEdges","positiveEdge","negativeEdge","_getRelativeEdgeValue","_getRelativeRectEdgeValue","_getRelativeEdgeDifference","hostRect","_moveEdge","maintainSize","difference","returnRect","_alignEdges","gap","_isEdgeInBounds","_getOutOfBoundsDegree","_adjustFitWithinBounds","bounding","positionData","elementEstimate","elementRectangle","directions","oobDegree","currentEstimate","currentEdge","currentAlignment","bestEdge","bestAlignment","currentOOBDegree","_estimatePosition","_flipToFit","fixedEdge","flippedElementEstimate","oppositeEdge","_flipAlignmentEdge","_alignOutOfBoundsEdges","outOfBoundsEdges","preserveEdge","edgeAttempt","forcedInBounds","_centerEdgeToPoint","elementToPosition","estimatedElementPosition","elementEdge","adjustedGap","_alignOppositeEdges","_finalizeReturnEdge","returnEdge","_finalizeElementPosition","doNotFinalizeReturnEdge","forceWithinBounds","_getRectangleFromElement","_isEdgeOnBounds","_calculateActualBeakWidthInPixels","_getPositionData","previousPositions","positionInformation","getClosestEdge","targetCenter","boundingCenter","_positionElementWithinBounds","_finalizeBeakPosition","elementPosition","positionedBeak","showBeak","targetRectangle","closestEdge","hideBeak","_positionBeak","beakTargetPoint","elementBounds","beakPosition","_getRectangleFromIRect","_positionElementRelative","rectOrPoint","_getTargetRect","_getAlignmentData","positionedElement","_finalizePositionData","_positionCallout","positionProps","finalizedBeakPosition","positionCard","_positionCard","ANIMATIONS","BEAK_ORIGIN_POSITION","OFF_SCREEN_STYLE","ARIA_ROLE_ATTRIBUTES","preventDismissOnLostFocus","preventDismissOnScroll","preventDismissOnResize","minPagePadding","usePositions","calloutElement","getBounds","setPositions","positionAttempts","previousTarget","finalHeight","calloutMaxHeight","timerId_1","prevElementPositions","newElementPosition","dupeCalloutElement","cloneNode","newPositions","positionCallout","comparePositions","CalloutContentBase","calloutMaxWidth","hideOverflow","setCalloutElement","calloutCallback","calloutEl","targetWindowResized","setTargetWindowResized","cachedBounds","currentBounds","segments","getWindowSegments","_getBoundsFromTargetWindow","getBoundsFromTargetWindow","useBounds","setMaxHeight","topBounds","bottomBounds","useMaxHeight","dismissOnTargetClick","shouldDismissOnWindowFocus","preventDismissOnEvent","isMouseDownOnPopup","mouseDownHandlers","positionsExists","dismissOnScroll","dismissOnClickOrScroll","dismissOnResize","dismissOnLostFocus","eventPaths","composedPath","isEventTargetOutsideCallout","dismissOnTargetWindowBlur","disposablesPromise","disposables_1","useDismissHandlers","mouseDownOnPopup","mouseUpOnPopup","isForcedInBounds","cssPositions","hasPositions","timerId_2","useAutoFocus","overflowYHidden","beakVisible","overflowStyle","visibilityStyle","beak","getBeakPosition","beakCurtain","calloutMain","beakPositionStyle","newElementPositions","oldPositionEdge","newPositionEdge","getBeakStyle","CalloutContent","elevation16","globalClassNames","layer","isDragging","touchAction","eventMapping","move","_currentEventType","_onDragStop","onTouchEnd","handleSelector","_matchesSelector","preventDragSelector","_touchId","_getTouchId","_getControlPosition","dragData","_createDragDataFromPosition","onStart","lastPosition","_onDrag","updatedData","_createUpdatedDragData","updatedPosition","onDragChange","baseDragData","onStop","DraggableZone","statePosition","_onTouchEnd","touchObj","_getActiveTouch","eventToGetOffset","_findTouchInTouchList","touch","identifier","matchesSelectorFn","webkitMatchesSelector","msMatchesSelector","touchList","useSetTimeout","timeoutIds","ZERO","isDarkOverlay","containerClassName","ModalBase","scrollableContentClassName","disableRestoreFocus","isAlert","titleAriaId","subtitleAriaId","topOffsetFixed","isModeless","dragOptions","focusTrapZone","focusTrapZoneRef","focusTrapZoneElm","modalResponsiveMode","focusTrapZoneId","isModalOpen","setIsModalOpen","setIsVisible","coordinates","setCoordinates","modalRectangleTop","setModalRectangleTop","isModalMenuOpen","toggleModalMenuOpen","setModalMenuClose","internalState","onModalCloseTimer","lastSetCoordinates","keepInBounds","isAlertRole","layerClassName","hasBeenOpened","windowInnerHeight","isDefaultDragHandle","dragHandleSelector","mergedLayerProps","allowScrollOnModal","registerInitialModalPosition","dialogMain","modalRectangle","minPosition","maxPosition","getClampedAxis","axis","handleModalClose","isInKeyboardMoveMode","disposeOnKeyUp","handleDragStart","handleDrag","handleDragStop","handleKeyUp","registerForKeyUp","modalContent","focusPreviouslyFocusedInnerElement","disposeOnKeyDown","keyboardMoveIconContainer","keyboardMoveIconProps","keyboardMoveIcon","menu","moveMenuItemText","handleKeyDown","newLocal","handledEvent","delta_1","getMoveDelta","closeMenuItemText","Modal","DialogFooterType","DialogContentBase","subTextContent","subTextId","titleProps","draggableHeaderClassName","isLargeHeader","largeHeader","isClose","groupings","_groupChildren","topButton","topButtonsProps","innerContent","contents","footers","contentLgHeader","headerLg","DialogContent","DefaultModalProps","DefaultDialogContentProps","normal","ariaDescribedById","modalProps","dialogContentProps","_defaultSubTextId","ariaLabelledById","_defaultTitleTextId","DialogBase","dialogDraggableClassName","contentClassName","mergedModalProps","dialogDefaultMinWidth","dialogDefaultMaxWidth","_getSubTextId","_getTitleTextId","Dialog","__browserNeedsRevealButton","validateOnFocusIn","_validate","validateOnFocusOut","htmlFor","isRevealingPassword","previousValue","_getValue","_lastChangeValue","_isControlled","uncontrolledValue","_fallbackId","_prefixId","_suffixId","_warnControlledUsage","_delayedValidate","deferredValidationTime","_lastValidation","TextFieldBase","_adjustInputHeight","validateOnLoad","snapshot","multiline","_shouldValidateAllChanges","resizable","autoAdjustHeight","canRevealPassword","revealPasswordAriaLabel","onRenderPrefix","_onRenderPrefix","onRenderSuffix","_onRenderSuffix","_errorMessage","isInvalid","hasRevealButton","isEdge","_browserNeedsRevealButton","focused","hasIcon","fieldGroup","_renderTextArea","_renderInput","revealButton","_onRevealButtonClick","revealSpan","revealIcon","_isDescriptionAvailable","_renderErrorMessage","_textElement","blur","_hasWarnedNullValue","valueProp","textAreaProps","_onInputChange","labelIds","updatedInputProps","_latestValidateValue","onGetErrorMessage","currentValidation_1","_notifyAfterValidate","onNotifyValidationResult","unresizable","getLabelStyles","fieldPrefixSuffix","borderBottomColor","resize","itemContent","removeButton","PeoplePickerItem","itemId","warning","personaStyles","persona","personaCoinStyles","personaCoin","personaPrimaryTextStyles","personaSecondaryTextStyles","personaCoinInitialsStyles","personaWrapper","PeoplePickerItemSuggestion","personaProps","textSelectorsStyles","NormalPeoplePickerBase","BasePeoplePicker","CompactPeoplePickerBase","ListPeoplePickerBase","MemberListPeoplePicker","currentValidationState","personaToConvert","NormalPeoplePicker","TagItem","enableTagFocusInDisabledPicker","disabledAttrs","tabindex","suggestionTextOverflow","TagItemSuggestion","TagPickerBase","TagPicker","precisionRound","precision","exp","pow","KeyboardSpinDirection","getDisabledStyles","SpinButtonTextColorDisabled","SpinButtonBackgroundColorDisabled","getArrowButtonStyles","isUpArrow","customSpecificArrowStyles","ArrowButtonTextColor","ArrowButtonTextColorHovered","ArrowButtonTextColorPressed","ArrowButtonBackgroundHovered","ArrowButtonBackgroundPressed","defaultArrowButtonStyles","labelPosition","incrementButtonIcon","decrementButtonIcon","noOp","clampValue","SpinButtonBase","valueFromProps","precisionFromProps","incrementButtonAriaLabel","decrementButtonAriaLabel","customUpArrowButtonStyles","customDownArrowButtonStyles","ariaValueNow","ariaValueText","onDecrement","onIncrement","iconButtonProps","onValidate","inputId","labelId","setIsFocused","notSpinning","keyboardSpinDirection","setKeyboardSpinDirection","calculatePrecision","intermediateValue","setIntermediateValue","stepTimeoutHandle","latestValue","latestIntermediateValue","previousValueFromProps","enteredValue","spinningByMouse","stepFunction","wasSpinning","handleIncrement","numericValue","handleDecrement","handleIncrementMouseDown","handleDecrementMouseDown","useDebugWarnings","valueIsNumber","labelContent","labelWrapper","spinButtonWrapper","spinDirection","arrowButtonsContainer","SpinButton","SpinButtonRootBorderColor","SpinButtonRootBackgroundColor","SpinButtonRootBorderColorHovered","SpinButtonRootBorderColorFocused","SpinButtonInputTextColor","SpinButtonInputTextColorSelected","SpinButtonInputBackgroundColorSelected","SpinButtonIconDisabledColor","float","DEFAULT_MIN_WIDTH","SpinnerSize","SpinnerType","SpinnerBase","ariaLive","styleSize","spinAnimation","OverlayBase","isDark","rootDark","CheckboxBase","checkmarkIconProps","boxSide","mergedRootRefs","setIsChecked","indeterminate","defaultIndeterminate","isIndeterminate","setIsIndeterminate","checkBoxRef","reversed","isUsingCustomLabelRender","defaultLabelRenderer","ariaChecked","mergedInputProps","checkbox","checkmark","MS_CHECKBOX_LABEL_SIZE","MS_CHECKBOX_TRANSITION_DURATION","MS_CHECKBOX_TRANSITION_TIMING","checkmarkFontColor","checkmarkFontColorHovered","checkboxBorderColor","checkboxBorderIndeterminateColor","checkboxBorderColorChecked","checkboxBorderColorDisabled","checkboxBorderHoveredColor","checkboxBorderIndeterminateHoveredColor","checkboxBackgroundChecked","checkboxBackgroundCheckedHovered","checkboxBorderColorCheckedHovered","checkboxHoveredTextColor","checkboxBackgroundDisabledChecked","checkboxTextColor","checkboxTextColorDisabled","indeterminateDotStyles","transitionProperty","transitionDuration","transitionTimingFunction","_r","_t","_getThemedSpacing","_getValueUnitGap","numericalPart","numericalValue","numericalString","parsePadding","paddingValues","padding1","padding2","nameMap","StackStatics","Stack","stackChildren","defaultItemProps","horizontalAlign","childrenGap","rowGap","columnGap","splitGap","calculatedGap","parseGap","horizontalMargin","verticalMargin","childStyles","commonSelectors","ToggleBase","controlledChecked","inlineLabel","offAriaLabel","offText","onAriaLabel","onToggleClick","onText","setChecked","onOffMissing","badAriaLabel","stateTextId","stateText","toggleNativeProps","labelledById","toggleButton","pill","thumb","toggleButtonRef","Toggle","pillUncheckedBackground","pillCheckedBackground","pillCheckedHoveredBackground","thumbUncheckedHoveredBackground","pillCheckedDisabledBackground","thumbBackground","thumbCheckedBackground","thumbDisabledBackground","thumbCheckedDisabledBackground","pillBorderColor","pillBorderHoveredColor","pillBorderDisabledColor","textDisabledColor","DEFAULT_PILL_HEIGHT","DEFAULT_THUMB_SIZE","_urlResolver","linkText","compositeLink","chevronButton","chevronIcon","navItem","navItems","groupContent","_renderGroupHeader","_isGroupExpanded","onHeaderClick","isCollapsing","_onGroupHeaderClicked","_renderLinks","links","expandButtonAriaLabel","collapseAriaLabel","expandAriaLabel","isGroupCollapsed","isLinkExpandStateChanged","initialSelectedKey","NavBase","isOnTop","groupElements","linkIndex","nestingLevel","isLinkWithIcon","isSelectedLink","_isLinkSelected","isButtonEntry","forceAnchor","leftPadding","LinkAs","linkAs","onRenderLink","_onRenderLink","_onNavButtonLinkClicked","_onNavAnchorLinkClicked","isLink","finalExpandBtnAriaLabel","_onLinkExpandClicked","_renderNavLink","_renderCompositeLink","linkElements","_renderLink","_toggleCollapsed","onLinkExpandClick","_preventBounce","onLinkClick","collapseByDefault","newGroupCollapsed","Nav","navHeight","leftPaddingExpanded","rightPadding","SeparatorBase","Separator","alignStart","alignCenter","alignEnd","ICON_MAP","severeWarning","success","getAnnouncementPriority","messageBarType","getRole","MessageBarBase","expandSingleLine","toggleExpandSingleLine","overflowButtonAriaLabel","dismissIconProps","truncated","dismissButtonAriaLabel","messageBarIconProps","delayedRender","expandIconProps","regionProps","actionsDiv","dismissButton","dismissal","iconContainer","innerText","dismissSingleLine","singleline","dismissalSingleLine","expandingSingleLine","actionsSingleline","highContrastBackgroundColor","MessageBar","SmallScreenSelector","dismissalAndExpandIconStyle","dismissalAndExpandStyle","adjustPropsForRootType","restProps","LinkBase","underline","rootType","useLink","_language","STORAGE_KEY","persistenceType","savedLanguage","getLanguage","_registerFontFace","localFontName","localFontSrc","fontDisplay","_registerFontFaceSet","cdnFolder","cdnFontName","urlBase","light","semilight","bold","fontUrl","registerDefaultFontFaces","_getFontBaseUrl","useCookies","initialCookies","allCookies","setCookies","previousCookiesRef","newCookies","oldCookies","dependencies_1","dependency","shouldUpdate","alreadyWarned","warnOnce","loadNamespaces","initialized","oldI18nextHasLoadedNamespace","isNewerI18next","ignore","useTranslation","i18nFromProps","i18nFromContext","defaultNSFromContext","reportNamespaces","notReadyT","retNotReady","ready","addUsedNamespaces","getT","getFixedT","nsMode","_useState","_useState2","setT","joinedNS","previousJoinedNS","boundReset","isInitial","useEventCallback","firstBumper","lastBumper","focusStackId","bumperProps","focusElementAsync","focusFTZ","previouslyFocusedElementInTrapZone","firstFocusableChild","focusSelector","focusBumper","isFirstBumper","nextFocusable","returnFocusToInitiator","focusStack","forceFocusOrClickInTrap","disposables","previouslyFocusedElement","Depths","depth4","depth8","depth16","depth64","roundedCorner4","roundedCorner6"],"mappings":"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WACA,UACA,WACA,SACA,UACA,YACA,mBACA,aACA,UACA,UACA,YACA,mBACA,mBACA,YACA,cACA,UACA,eACA,mBACA,cACA,UACA,SACA,YACA,aACA,eACA,WACA,YACA,YACA,YACA,eACA,iBACA,YACA,UACA,iBACA,gBACA,gBACA,SACA,YACA,cACA,aACA,cACA,aACA,cACA,SACA,cACA,qBACA,eACA,eACA,cACA,aACA,cACA,YACA,mBACA,WACA,gBACA,aACA,cACA,eACA,WACA,UACA,kBACA,gBACA,iBACA,iBACA,gBACA,eACA,gBACA,cACA,sBACA,yBAQWG,EAAwBH,EAAY,CAC/C,YACA,WACA,YACA,kBACA,MACA,YACA,SACA,UACA,KACA,OACA,MACA,OACA,QACA,WACA,QACA,YACA,aACA,SAQWI,EAAwBJ,EAAYG,EAAuBD,GAO3DG,EAAkBL,EAAYI,EAAuB,CAChE,SAQWE,EAAkBN,EAAYI,EAAuB,CAChE,SACA,OACA,QACA,UACA,MACA,UAQWG,EAAkBP,EAAYM,EAAiB,CAC1D,WAQWE,EAAeR,EAAYI,EAAuB,CAC7D,UAQWK,EAAeT,EAAYI,EAAuB,CAC7D,UAQWM,EAAmBV,EAAYI,EAAuB,CACjE,WACA,OACA,WACA,QACA,MACA,SACA,SAQWO,EAAmBX,EAAYI,EAAuB,CACjE,YACA,WACA,OACA,aACA,cACA,aACA,iBACA,aACA,OACA,UAQWQ,EAAkBZ,EAAYW,EAAkB,CAC3D,SACA,MACA,iBACA,eACA,UACA,UACA,OACA,SACA,YACA,OACA,MACA,YACA,MACA,YACA,WACA,UACA,cACA,WACA,WACA,MACA,OACA,OACA,OACA,QACA,UAQWE,EAAqBb,EAAYW,EAAkB,CAC9D,iBACA,OACA,UACA,OACA,YACA,YACA,cACA,WACA,WACA,OACA,SAQWG,EAAmBd,EAAYW,EAAkB,CAC5D,OACA,WACA,aAGWI,EAAmBf,EAAYI,EAAuB,CACjE,WACA,UAQWY,EAAkBhB,EAAYI,EAAuB,CAChE,cACA,gBAQWa,EAAeb,EAOfc,EAAelB,EAAYI,EAAuB,CA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","file":"static/js/2.ed6f6462.chunk.js","sourcesContent":["'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","import { keyframes } from '@fluentui/merge-styles';\nimport type { IAnimationStyles, IAnimationVariables } from '../types/IAnimationStyles';\nimport type { IRawStyle } from '@fluentui/merge-styles';\n\n/* Register the keyframes */\n\nconst EASING_FUNCTION_1 = 'cubic-bezier(.1,.9,.2,1)';\nconst EASING_FUNCTION_2 = 'cubic-bezier(.1,.25,.75,.9)';\nconst DURATION_1 = '0.167s';\nconst DURATION_2 = '0.267s';\nconst DURATION_3 = '0.367s';\nconst DURATION_4 = '0.467s';\n\nconst FADE_IN: string = keyframes({\n from: { opacity: 0 },\n to: { opacity: 1 },\n});\n\nconst FADE_OUT: string = keyframes({\n from: { opacity: 1 },\n to: { opacity: 0, visibility: 'hidden' },\n});\n\nconst SLIDE_RIGHT_IN10: string = _createSlideInX(-10);\nconst SLIDE_RIGHT_IN20: string = _createSlideInX(-20);\nconst SLIDE_RIGHT_IN40: string = _createSlideInX(-40);\nconst SLIDE_RIGHT_IN400: string = _createSlideInX(-400);\nconst SLIDE_LEFT_IN10: string = _createSlideInX(10);\nconst SLIDE_LEFT_IN20: string = _createSlideInX(20);\nconst SLIDE_LEFT_IN40: string = _createSlideInX(40);\nconst SLIDE_LEFT_IN400: string = _createSlideInX(400);\nconst SLIDE_UP_IN10: string = _createSlideInY(10);\nconst SLIDE_UP_IN20: string = _createSlideInY(20);\nconst SLIDE_DOWN_IN10: string = _createSlideInY(-10);\nconst SLIDE_DOWN_IN20: string = _createSlideInY(-20);\n\nconst SLIDE_RIGHT_OUT10: string = _createSlideOutX(10);\nconst SLIDE_RIGHT_OUT20: string = _createSlideOutX(20);\nconst SLIDE_RIGHT_OUT40: string = _createSlideOutX(40);\nconst SLIDE_RIGHT_OUT400: string = _createSlideOutX(400);\nconst SLIDE_LEFT_OUT10: string = _createSlideOutX(-10);\nconst SLIDE_LEFT_OUT20: string = _createSlideOutX(-20);\nconst SLIDE_LEFT_OUT40: string = _createSlideOutX(-40);\nconst SLIDE_LEFT_OUT400: string = _createSlideOutX(-400);\nconst SLIDE_UP_OUT10: string = _createSlideOutY(-10);\nconst SLIDE_UP_OUT20: string = _createSlideOutY(-20);\nconst SLIDE_DOWN_OUT10: string = _createSlideOutY(10);\nconst SLIDE_DOWN_OUT20: string = _createSlideOutY(20);\n\nconst SCALE_UP100: string = keyframes({\n from: { transform: 'scale3d(.98,.98,1)' },\n to: { transform: 'scale3d(1,1,1)' },\n});\n\nconst SCALE_DOWN98: string = keyframes({\n from: { transform: 'scale3d(1,1,1)' },\n to: { transform: 'scale3d(.98,.98,1)' },\n});\n\nconst SCALE_DOWN100: string = keyframes({\n from: { transform: 'scale3d(1.03,1.03,1)' },\n to: { transform: 'scale3d(1,1,1)' },\n});\n\nconst SCALE_UP103: string = keyframes({\n from: { transform: 'scale3d(1,1,1)' },\n to: { transform: 'scale3d(1.03,1.03,1)' },\n});\n\nconst ROTATE90: string = keyframes({\n from: { transform: 'rotateZ(0deg)' },\n to: { transform: 'rotateZ(90deg)' },\n});\n\nconst ROTATE_N90: string = keyframes({\n from: { transform: 'rotateZ(0deg)' },\n to: { transform: 'rotateZ(-90deg)' },\n});\n\n/**\n * Exporting raw duraction values and easing functions to be used in custom animations\n */\nexport const AnimationVariables: IAnimationVariables = {\n easeFunction1: EASING_FUNCTION_1,\n easeFunction2: EASING_FUNCTION_2,\n durationValue1: DURATION_1,\n durationValue2: DURATION_2,\n durationValue3: DURATION_3,\n durationValue4: DURATION_4,\n};\n\n/**\n * All Fabric standard animations, exposed as json objects referencing predefined\n * keyframes. These objects can be mixed in with other class definitions.\n */\nexport const AnimationStyles: IAnimationStyles = {\n slideRightIn10: _createAnimation(`${FADE_IN},${SLIDE_RIGHT_IN10}`, DURATION_3, EASING_FUNCTION_1),\n slideRightIn20: _createAnimation(`${FADE_IN},${SLIDE_RIGHT_IN20}`, DURATION_3, EASING_FUNCTION_1),\n slideRightIn40: _createAnimation(`${FADE_IN},${SLIDE_RIGHT_IN40}`, DURATION_3, EASING_FUNCTION_1),\n slideRightIn400: _createAnimation(`${FADE_IN},${SLIDE_RIGHT_IN400}`, DURATION_3, EASING_FUNCTION_1),\n slideLeftIn10: _createAnimation(`${FADE_IN},${SLIDE_LEFT_IN10}`, DURATION_3, EASING_FUNCTION_1),\n slideLeftIn20: _createAnimation(`${FADE_IN},${SLIDE_LEFT_IN20}`, DURATION_3, EASING_FUNCTION_1),\n slideLeftIn40: _createAnimation(`${FADE_IN},${SLIDE_LEFT_IN40}`, DURATION_3, EASING_FUNCTION_1),\n slideLeftIn400: _createAnimation(`${FADE_IN},${SLIDE_LEFT_IN400}`, DURATION_3, EASING_FUNCTION_1),\n slideUpIn10: _createAnimation(`${FADE_IN},${SLIDE_UP_IN10}`, DURATION_3, EASING_FUNCTION_1),\n slideUpIn20: _createAnimation(`${FADE_IN},${SLIDE_UP_IN20}`, DURATION_3, EASING_FUNCTION_1),\n slideDownIn10: _createAnimation(`${FADE_IN},${SLIDE_DOWN_IN10}`, DURATION_3, EASING_FUNCTION_1),\n slideDownIn20: _createAnimation(`${FADE_IN},${SLIDE_DOWN_IN20}`, DURATION_3, EASING_FUNCTION_1),\n\n slideRightOut10: _createAnimation(`${FADE_OUT},${SLIDE_RIGHT_OUT10}`, DURATION_3, EASING_FUNCTION_1),\n slideRightOut20: _createAnimation(`${FADE_OUT},${SLIDE_RIGHT_OUT20}`, DURATION_3, EASING_FUNCTION_1),\n slideRightOut40: _createAnimation(`${FADE_OUT},${SLIDE_RIGHT_OUT40}`, DURATION_3, EASING_FUNCTION_1),\n slideRightOut400: _createAnimation(`${FADE_OUT},${SLIDE_RIGHT_OUT400}`, DURATION_3, EASING_FUNCTION_1),\n slideLeftOut10: _createAnimation(`${FADE_OUT},${SLIDE_LEFT_OUT10}`, DURATION_3, EASING_FUNCTION_1),\n slideLeftOut20: _createAnimation(`${FADE_OUT},${SLIDE_LEFT_OUT20}`, DURATION_3, EASING_FUNCTION_1),\n slideLeftOut40: _createAnimation(`${FADE_OUT},${SLIDE_LEFT_OUT40}`, DURATION_3, EASING_FUNCTION_1),\n slideLeftOut400: _createAnimation(`${FADE_OUT},${SLIDE_LEFT_OUT400}`, DURATION_3, EASING_FUNCTION_1),\n slideUpOut10: _createAnimation(`${FADE_OUT},${SLIDE_UP_OUT10}`, DURATION_3, EASING_FUNCTION_1),\n slideUpOut20: _createAnimation(`${FADE_OUT},${SLIDE_UP_OUT20}`, DURATION_3, EASING_FUNCTION_1),\n slideDownOut10: _createAnimation(`${FADE_OUT},${SLIDE_DOWN_OUT10}`, DURATION_3, EASING_FUNCTION_1),\n slideDownOut20: _createAnimation(`${FADE_OUT},${SLIDE_DOWN_OUT20}`, DURATION_3, EASING_FUNCTION_1),\n\n scaleUpIn100: _createAnimation(`${FADE_IN},${SCALE_UP100}`, DURATION_3, EASING_FUNCTION_1),\n scaleDownIn100: _createAnimation(`${FADE_IN},${SCALE_DOWN100}`, DURATION_3, EASING_FUNCTION_1),\n scaleUpOut103: _createAnimation(`${FADE_OUT},${SCALE_UP103}`, DURATION_1, EASING_FUNCTION_2),\n scaleDownOut98: _createAnimation(`${FADE_OUT},${SCALE_DOWN98}`, DURATION_1, EASING_FUNCTION_2),\n\n fadeIn100: _createAnimation(FADE_IN, DURATION_1, EASING_FUNCTION_2),\n fadeIn200: _createAnimation(FADE_IN, DURATION_2, EASING_FUNCTION_2),\n fadeIn400: _createAnimation(FADE_IN, DURATION_3, EASING_FUNCTION_2),\n fadeIn500: _createAnimation(FADE_IN, DURATION_4, EASING_FUNCTION_2),\n\n fadeOut100: _createAnimation(FADE_OUT, DURATION_1, EASING_FUNCTION_2),\n fadeOut200: _createAnimation(FADE_OUT, DURATION_2, EASING_FUNCTION_2),\n fadeOut400: _createAnimation(FADE_OUT, DURATION_3, EASING_FUNCTION_2),\n fadeOut500: _createAnimation(FADE_OUT, DURATION_4, EASING_FUNCTION_2),\n\n rotate90deg: _createAnimation(ROTATE90, '0.1s', EASING_FUNCTION_2),\n rotateN90deg: _createAnimation(ROTATE_N90, '0.1s', EASING_FUNCTION_2),\n\n // expandCollapse 100/200/400, delay 100/200\n};\n\nfunction _createAnimation(\n animationName: string,\n animationDuration: string,\n animationTimingFunction: string,\n): IRawStyle {\n return {\n animationName,\n animationDuration,\n animationTimingFunction,\n animationFillMode: 'both',\n };\n}\n\nfunction _createSlideInX(fromX: number): string {\n return keyframes({\n from: { transform: `translate3d(${fromX}px,0,0)`, pointerEvents: 'none' },\n to: { transform: `translate3d(0,0,0)`, pointerEvents: 'auto' },\n });\n}\n\nfunction _createSlideInY(fromY: number): string {\n return keyframes({\n from: { transform: `translate3d(0,${fromY}px,0)`, pointerEvents: 'none' },\n to: { transform: `translate3d(0,0,0)`, pointerEvents: 'auto' },\n });\n}\n\nfunction _createSlideOutX(toX: number): string {\n return keyframes({\n from: { transform: `translate3d(0,0,0)` },\n to: { transform: `translate3d(${toX}px,0,0)` },\n });\n}\n\nfunction _createSlideOutY(toY: number): string {\n return keyframes({\n from: { transform: `translate3d(0,0,0)` },\n to: { transform: `translate3d(0,${toY}px,0)` },\n });\n}\n","import { buildClassMap } from '../utilities/index';\nimport { AnimationStyles } from '../styles/index';\nimport type { IAnimationStyles } from '../interfaces/index';\n\n/**\n * {@docCategory AnimationClassNames}\n */\nexport const AnimationClassNames: { [key in keyof IAnimationStyles]?: string } = buildClassMap(AnimationStyles);\n","import { mergeStyles } from '../MergeStyles';\n\n/**\n * Builds a class names object from a given map.\n *\n * @param styles - Map of unprocessed styles.\n * @returns Map of property name to class name.\n */\nexport function buildClassMap(styles: T): { [key in keyof T]?: string } {\n let classes: { [key in keyof T]?: string } = {};\n\n for (let styleName in styles) {\n if (styles.hasOwnProperty(styleName)) {\n let className: string;\n\n Object.defineProperty(classes, styleName, {\n get: (): string => {\n if (className === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n className = mergeStyles(styles[styleName] as any).toString();\n }\n return className;\n },\n enumerable: true,\n configurable: true,\n });\n }\n }\n\n return classes;\n}\n","import type { IRawStyle } from '../MergeStyles';\n\nexport const HighContrastSelector =\n '@media screen and (-ms-high-contrast: active), @media screen and (forced-colors: active)';\nexport const HighContrastSelectorWhite =\n // eslint-disable-next-line @fluentui/max-len\n '@media screen and (-ms-high-contrast: black-on-white), @media screen and (forced-colors: active) and (prefers-color-scheme: light)';\nexport const HighContrastSelectorBlack =\n // eslint-disable-next-line @fluentui/max-len\n '@media screen and (-ms-high-contrast: white-on-black), @media screen and (forced-colors: active) and (prefers-color-scheme: dark)';\n/**\n * @deprecated Use `HighContrastSelector`\n */\nexport const EdgeChromiumHighContrastSelector =\n '@media screen and (-ms-high-contrast: active), @media screen and (forced-colors: active)';\n\nexport const ScreenWidthMinSmall = 320;\nexport const ScreenWidthMinMedium = 480;\nexport const ScreenWidthMinLarge = 640;\nexport const ScreenWidthMinXLarge = 1024;\nexport const ScreenWidthMinXXLarge = 1366;\nexport const ScreenWidthMinXXXLarge = 1920;\nexport const ScreenWidthMaxSmall = ScreenWidthMinMedium - 1;\nexport const ScreenWidthMaxMedium = ScreenWidthMinLarge - 1;\nexport const ScreenWidthMaxLarge = ScreenWidthMinXLarge - 1;\nexport const ScreenWidthMaxXLarge = ScreenWidthMinXXLarge - 1;\nexport const ScreenWidthMaxXXLarge = ScreenWidthMinXXXLarge - 1;\n\nexport const ScreenWidthMinUhfMobile = 768;\n\nexport function getScreenSelector(min: number | undefined, max: number | undefined): string {\n const minSelector = typeof min === 'number' ? ` and (min-width: ${min}px)` : '';\n const maxSelector = typeof max === 'number' ? ` and (max-width: ${max}px)` : '';\n return `@media only screen${minSelector}${maxSelector}`;\n}\n\n/**\n * The style which turns off high contrast adjustment in browsers.\n */\nexport function getHighContrastNoAdjustStyle(): IRawStyle {\n return {\n forcedColorAdjust: 'none',\n MsHighContrastAdjust: 'none',\n };\n}\n\n/**\n * The style which turns off high contrast adjustment in (only) Edge Chromium browser.\n * @deprecated Use `getHighContrastNoAdjustStyle`\n */\n// eslint-disable-next-line deprecation/deprecation\nexport function getEdgeChromiumNoHighContrastAdjustSelector(): { [EdgeChromiumHighContrastSelector]: IRawStyle } {\n return {\n // eslint-disable-next-line deprecation/deprecation\n [EdgeChromiumHighContrastSelector]: {\n forcedColorAdjust: 'none',\n MsHighContrastAdjust: 'none',\n },\n };\n}\n","export namespace ZIndexes {\n export const Nav: number = 1;\n /**\n * @deprecated Do not use\n */\n export const ScrollablePane: number = 1;\n export const FocusStyle: number = 1;\n export const Coachmark: number = 1000;\n export const Layer: number = 1000000;\n export const KeytipLayer: number = 1000001;\n}\n","import { HighContrastSelector } from './CommonStyles';\nimport { IsFocusVisibleClassName } from '@fluentui/utilities';\nimport { ZIndexes } from './zIndexes';\nimport type { IRawStyle } from '@fluentui/merge-styles';\nimport type { IGetFocusStylesOptions, ITheme } from '../interfaces/index';\n\n/**\n * Generates a focus style which can be used to define an :after focus border.\n *\n * @param theme - The theme object to use.\n * @param options - Options to customize the focus border.\n * @returns The style object.\n */\nexport function getFocusStyle(theme: ITheme, options?: IGetFocusStylesOptions): IRawStyle;\n/**\n * Generates a focus style which can be used to define an :after focus border.\n *\n * @param theme - The theme object to use.\n * @param inset - The number of pixels to inset the border.\n * @param position - The positioning applied to the container. Must\n * be 'relative' or 'absolute' so that the focus border can live around it.\n * @param highContrastStyle - Style for high contrast mode.\n * @param borderColor - Color of the border.\n * @param outlineColor - Color of the outline.\n * @param isFocusedOnly - If the styles should apply on focus or not.\n * @returns The style object.\n * @deprecated Use the object parameter version instead.\n */\nexport function getFocusStyle(\n theme: ITheme,\n inset?: number,\n position?: 'relative' | 'absolute',\n highContrastStyle?: IRawStyle | undefined,\n borderColor?: string,\n outlineColor?: string,\n isFocusedOnly?: boolean,\n): IRawStyle;\nexport function getFocusStyle(\n theme: ITheme,\n insetOrOptions?: number | IGetFocusStylesOptions,\n position?: 'relative' | 'absolute',\n highContrastStyle?: IRawStyle,\n borderColor?: string,\n outlineColor?: string,\n isFocusedOnly?: boolean,\n): IRawStyle {\n if (typeof insetOrOptions === 'number' || !insetOrOptions) {\n return _getFocusStyleInternal(theme, {\n inset: insetOrOptions,\n position,\n highContrastStyle,\n borderColor,\n outlineColor,\n isFocusedOnly,\n });\n } else {\n return _getFocusStyleInternal(theme, insetOrOptions);\n }\n}\n\nfunction _getFocusStyleInternal(theme: ITheme, options: IGetFocusStylesOptions = {}): IRawStyle {\n const {\n inset = 0,\n width = 1,\n position = 'relative',\n highContrastStyle,\n borderColor = theme.palette.white,\n outlineColor = theme.palette.neutralSecondary,\n isFocusedOnly = true,\n } = options;\n\n return {\n // Clear browser-specific focus styles and use 'transparent' as placeholder for focus style.\n outline: 'transparent',\n // Requirement because pseudo-element is absolutely positioned.\n position,\n\n selectors: {\n // Clear the focus border in Firefox.\n // Reference: http://stackoverflow.com/a/199319/1436671\n '::-moz-focus-inner': {\n border: '0',\n },\n\n // When the element that uses this mixin is in a :focus state, add a pseudo-element to\n // create a border.\n [`.${IsFocusVisibleClassName} &${isFocusedOnly ? ':focus' : ''}:after`]: {\n content: '\"\"',\n position: 'absolute',\n left: inset + 1,\n top: inset + 1,\n bottom: inset + 1,\n right: inset + 1,\n border: `${width}px solid ${borderColor}`,\n outline: `${width}px solid ${outlineColor}`,\n zIndex: ZIndexes.FocusStyle,\n selectors: {\n [HighContrastSelector]: highContrastStyle,\n },\n },\n },\n };\n}\n\n/**\n * Generates style to clear browser specific focus styles.\n */\nexport function focusClear(): IRawStyle {\n return {\n selectors: {\n '&::-moz-focus-inner': {\n // Clear the focus border in Firefox. Reference: http://stackoverflow.com/a/199319/1436671\n border: 0,\n },\n '&': {\n // Clear browser specific focus styles and use transparent as placeholder for focus style\n outline: 'transparent',\n },\n },\n };\n}\n\n/**\n * Generates a style which can be used to set a border on focus.\n *\n * @param theme - The theme object to use.\n * @param inset - The number of pixels to inset the border (default 0)\n * @param width - The border width in pixels (default 1)\n * @param color - Color of the outline (default `theme.palette.neutralSecondary`)\n * @returns The style object.\n */\nexport function getFocusOutlineStyle(theme: ITheme, inset: number = 0, width: number = 1, color?: string): IRawStyle {\n return {\n selectors: {\n [`:global(${IsFocusVisibleClassName}) &:focus`]: {\n outline: `${width} solid ${color || theme.palette.neutralSecondary}`,\n outlineOffset: `${-inset}px`,\n },\n },\n };\n}\n\n/**\n * Generates text input border styles on focus.\n *\n * @param borderColor - Color of the border.\n * @param borderRadius - Radius of the border.\n * @param borderType - Type of the border.\n * @param borderPosition - Position of the border relative to the input element (default to -1\n * as it's the most common border width of the input element)\n * @returns The style object.\n */\nexport const getInputFocusStyle = (\n borderColor: string,\n borderRadius: string | number,\n borderType: 'border' | 'borderBottom' = 'border',\n borderPosition: number = -1,\n): IRawStyle => {\n const isBorderBottom = borderType === 'borderBottom';\n\n return {\n borderColor,\n selectors: {\n ':after': {\n pointerEvents: 'none',\n content: \"''\",\n position: 'absolute',\n left: isBorderBottom ? 0 : borderPosition,\n top: borderPosition,\n bottom: borderPosition,\n right: isBorderBottom ? 0 : borderPosition,\n [borderType]: `2px solid ${borderColor}`,\n borderRadius,\n width: borderType === 'borderBottom' ? '100%' : undefined,\n selectors: {\n [HighContrastSelector]: {\n [borderType === 'border' ? 'borderColor' : 'borderBottomColor']: 'Highlight',\n },\n },\n },\n },\n };\n};\n","import type { IRawStyle } from '@fluentui/merge-styles';\n\nexport const hiddenContentStyle: IRawStyle = {\n position: 'absolute',\n width: 1,\n height: 1,\n margin: -1,\n padding: 0,\n border: 0,\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n};\n","import { Stylesheet } from '@fluentui/merge-styles';\nimport { memoizeFunction } from '@fluentui/utilities';\nimport type { ITheme } from '../interfaces/index';\n\nexport type GlobalClassNames = Record;\n\n/**\n * Internal memoized function which simply takes in the class map and the\n * disable boolean. These immutable values can be memoized.\n */\nconst _getGlobalClassNames = memoizeFunction(\n (classNames: GlobalClassNames, disableGlobalClassNames?: boolean): GlobalClassNames => {\n const styleSheet = Stylesheet.getInstance();\n\n if (disableGlobalClassNames) {\n // disable global classnames\n return (Object.keys(classNames) as (keyof T)[]).reduce((acc, className) => {\n acc[className] = styleSheet.getClassName(classNames[className]);\n return acc;\n }, {} as GlobalClassNames);\n }\n\n // use global classnames\n return classNames;\n },\n);\n\n/**\n * Checks for the `disableGlobalClassNames` property on the `theme` to determine if it should return `classNames`\n * Note that calls to this function are memoized.\n *\n * @param classNames - The collection of global class names that apply when the flag is false. Make sure to pass in\n * the same instance on each call to benefit from memoization.\n * @param theme - The theme to check the flag on\n * @param disableGlobalClassNames - Optional. Explicitly opt in/out of disabling global classnames. Defaults to false.\n */\nexport function getGlobalClassNames(\n classNames: GlobalClassNames,\n theme: ITheme,\n disableGlobalClassNames?: boolean,\n): GlobalClassNames {\n return _getGlobalClassNames(\n classNames,\n disableGlobalClassNames !== undefined ? disableGlobalClassNames : theme.disableGlobalClassNames,\n );\n}\n","import { Customizations, getWindow } from '@fluentui/utilities';\nimport { loadTheme as legacyLoadTheme } from '@microsoft/load-themed-styles';\nimport { createTheme } from '@fluentui/theme';\nimport type { ITheme, IPartialTheme, IFontStyles } from '../interfaces/index';\nimport type { IRawStyle } from '@fluentui/merge-styles';\n\nexport { createTheme } from '@fluentui/theme';\n\nlet _theme: ITheme = createTheme({});\nlet _onThemeChangeCallbacks: Array<(theme: ITheme) => void> = [];\n\nexport const ThemeSettingName = 'theme';\n\nexport function initializeThemeInCustomizations(): void {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const win: any = getWindow();\n\n if (win?.FabricConfig?.legacyTheme) {\n // does everything the `else` clause does and more, such as invoke legacy theming\n loadTheme(win.FabricConfig.legacyTheme);\n } else if (!Customizations.getSettings([ThemeSettingName]).theme) {\n if (win?.FabricConfig?.theme) {\n _theme = createTheme(win.FabricConfig.theme);\n }\n\n // Set the default theme.\n Customizations.applySettings({ [ThemeSettingName]: _theme });\n }\n}\n\ninitializeThemeInCustomizations();\n\n/**\n * Gets the theme object\n * @param depComments - Whether to include deprecated tags as comments for deprecated slots.\n */\nexport function getTheme(depComments: boolean = false): ITheme {\n if (depComments === true) {\n _theme = createTheme({}, depComments);\n }\n return _theme;\n}\n\n/**\n * Registers a callback that gets called whenever the theme changes.\n * This should only be used when the component cannot automatically get theme changes through its state.\n * This will not register duplicate callbacks.\n */\nexport function registerOnThemeChangeCallback(callback: (theme: ITheme) => void): void {\n if (_onThemeChangeCallbacks.indexOf(callback) === -1) {\n _onThemeChangeCallbacks.push(callback);\n }\n}\n\n/**\n * See registerOnThemeChangeCallback().\n * Removes previously registered callbacks.\n */\nexport function removeOnThemeChangeCallback(callback: (theme: ITheme) => void): void {\n const i = _onThemeChangeCallbacks.indexOf(callback);\n if (i === -1) {\n return;\n }\n\n _onThemeChangeCallbacks.splice(i, 1);\n}\n\n/**\n * Applies the theme, while filling in missing slots.\n * @param theme - Partial theme object.\n * @param depComments - Whether to include deprecated tags as comments for deprecated slots.\n */\nexport function loadTheme(theme: IPartialTheme, depComments: boolean = false): ITheme {\n _theme = createTheme(theme, depComments);\n\n // Invoke the legacy method of theming the page as well.\n legacyLoadTheme({ ..._theme.palette, ..._theme.semanticColors, ..._theme.effects, ..._loadFonts(_theme) });\n\n Customizations.applySettings({ [ThemeSettingName]: _theme });\n\n _onThemeChangeCallbacks.forEach((callback: (theme: ITheme) => void) => {\n try {\n callback(_theme);\n } catch (e) {\n // don't let a bad callback break everything else\n }\n });\n\n return _theme;\n}\n\n/**\n * Loads font variables into a JSON object.\n * @param theme - The theme object\n */\nfunction _loadFonts(theme: ITheme): { [name: string]: string } {\n const lines: { [key: string]: string } = {};\n\n for (const fontName of Object.keys(theme.fonts)) {\n const font: IRawStyle = theme.fonts[fontName as keyof IFontStyles];\n\n for (const propName of Object.keys(font)) {\n const name: string = fontName + propName.charAt(0).toUpperCase() + propName.slice(1);\n let value = font[propName as keyof IRawStyle] as string;\n\n if (propName === 'fontSize' && typeof value === 'number') {\n // if it's a number, convert it to px by default like our theming system does\n value = value + 'px';\n }\n lines[name] = value;\n }\n }\n return lines;\n}\n","import type { IRawStyle } from '@fluentui/merge-styles';\n\n// This file mimics styles and mixins from _General.Mixins.scss\nexport const normalize: IRawStyle = {\n boxShadow: 'none',\n margin: 0,\n padding: 0,\n boxSizing: 'border-box',\n};\n\nexport const noWrap: IRawStyle = {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n};\n","import type { IStyle } from '@fluentui/merge-styles';\n\n/**\n * Generates placeholder style for each of the browsers supported by `@fluentui/react`.\n * @param styles - The style to use.\n * @returns The placeholder style object for each browser depending on the placeholder directive it uses.\n */\nexport function getPlaceholderStyles(styles: IStyle): IStyle {\n return {\n selectors: {\n '::placeholder': styles, // Chrome, Safari, Opera, Firefox\n ':-ms-input-placeholder': styles, // IE 10+\n '::-ms-input-placeholder': styles, // Edge\n },\n };\n}\n","import { GlobalSettings, warn } from '@fluentui/utilities';\nimport { fontFace, mergeStyles, Stylesheet } from '@fluentui/merge-styles';\nimport type { IRawStyle, IFontFace } from '@fluentui/merge-styles';\n\nexport interface IIconSubset {\n fontFace?: IFontFace;\n icons: {\n [key: string]: string | JSX.Element;\n };\n\n style?: IRawStyle;\n /**\n * Indicates to the icon renderer that it is safe to merge any props on the original `Icon` element\n * onto the child content element registered for the icon which are valid for HTML images.\n */\n mergeImageProps?: boolean;\n}\n\nexport interface IIconSubsetRecord extends IIconSubset {\n isRegistered?: boolean;\n className?: string;\n}\n\nexport interface IIconRecord {\n code: string | undefined;\n subset: IIconSubsetRecord;\n}\n\nexport interface IIconOptions {\n /**\n * By default, registering the same set of icons will generate a console warning per duplicate icon\n * registered, because this scenario can create unexpected consequences.\n *\n * Some scenarios include:\n *\n * Icon set was previously registered using a different base url.\n * Icon set was previously registered but a different version was provided.\n * Icons in a previous registered set overlap with a new set.\n *\n * To simply ignore previously registered icons, you can specify to disable warnings. This means\n * that if an icon which was previous registered is registered again, it will be silently ignored.\n * However, consider whether the problems listed above will cause issues.\n **/\n disableWarnings: boolean;\n\n /**\n * @deprecated Use `disableWarnings` instead.\n */\n warnOnMissingIcons?: boolean;\n}\n\nexport interface IIconRecords {\n __options: IIconOptions;\n __remapped: { [key: string]: string };\n [key: string]: IIconRecord | {};\n}\n\nconst ICON_SETTING_NAME = 'icons';\n\nconst _iconSettings = GlobalSettings.getValue(ICON_SETTING_NAME, {\n __options: {\n disableWarnings: false,\n warnOnMissingIcons: true,\n },\n __remapped: {},\n});\n\n// Reset icon registration on stylesheet resets.\nconst stylesheet = Stylesheet.getInstance();\n\nif (stylesheet && stylesheet.onReset) {\n stylesheet.onReset(() => {\n for (const name in _iconSettings) {\n if (_iconSettings.hasOwnProperty(name) && !!(_iconSettings[name] as IIconRecord).subset) {\n (_iconSettings[name] as IIconRecord).subset.className = undefined;\n }\n }\n });\n}\n\n/**\n * Normalizes an icon name for consistent mapping.\n * Current implementation is to convert the icon name to lower case.\n *\n * @param name - Icon name to normalize.\n * @returns {string} Normalized icon name to use for indexing and mapping.\n */\nconst normalizeIconName = (name: string): string => name.toLowerCase();\n\n/**\n * Registers a given subset of icons.\n *\n * @param iconSubset - the icon subset definition.\n */\nexport function registerIcons(iconSubset: IIconSubset, options?: Partial): void {\n let subset = {\n ...iconSubset,\n isRegistered: false,\n className: undefined,\n };\n let { icons } = iconSubset;\n\n // Grab options, optionally mix user provided ones on top.\n options = options ? { ..._iconSettings.__options, ...options } : _iconSettings.__options;\n\n for (const iconName in icons) {\n if (icons.hasOwnProperty(iconName)) {\n const code = icons[iconName];\n const normalizedIconName = normalizeIconName(iconName);\n\n if (_iconSettings[normalizedIconName]) {\n _warnDuplicateIcon(iconName);\n } else {\n _iconSettings[normalizedIconName] = {\n code,\n subset,\n } as IIconRecord;\n }\n }\n }\n}\n\n/**\n * Unregisters icons by name.\n *\n * @param iconNames - List of icons to unregister.\n */\nexport function unregisterIcons(iconNames: string[]): void {\n const options = _iconSettings.__options;\n\n for (const iconName of iconNames) {\n const normalizedIconName = normalizeIconName(iconName);\n if (_iconSettings[normalizedIconName]) {\n delete _iconSettings[normalizedIconName];\n } else {\n // Warn that we are trying to delete an icon that doesn't exist\n if (!options.disableWarnings) {\n warn(`The icon \"${iconName}\" tried to unregister but was not registered.`);\n }\n }\n\n // Delete any aliases for this iconName\n if (_iconSettings.__remapped[normalizedIconName]) {\n delete _iconSettings.__remapped[normalizedIconName];\n }\n\n // Delete any items that were an alias for this iconName\n Object.keys(_iconSettings.__remapped).forEach((key: string) => {\n if (_iconSettings.__remapped[key] === normalizedIconName) {\n delete _iconSettings.__remapped[key];\n }\n });\n }\n}\n\n/**\n * Remaps one icon name to another.\n */\nexport function registerIconAlias(iconName: string, mappedToName: string): void {\n _iconSettings.__remapped[normalizeIconName(iconName)] = normalizeIconName(mappedToName);\n}\n\n/**\n * Gets an icon definition. If an icon is requested but the subset has yet to be registered,\n * it will get registered immediately.\n *\n * @public\n * @param name - Name of icon.\n */\nexport function getIcon(name?: string): IIconRecord | undefined {\n let icon: IIconRecord | undefined = undefined;\n const options = _iconSettings.__options;\n\n name = name ? normalizeIconName(name) : '';\n name = _iconSettings.__remapped[name] || name;\n\n if (name) {\n icon = _iconSettings[name!] as IIconRecord;\n\n if (icon) {\n let { subset } = icon;\n if (subset && subset.fontFace) {\n if (!subset.isRegistered) {\n fontFace(subset.fontFace);\n subset.isRegistered = true;\n }\n\n if (!subset.className) {\n subset.className = mergeStyles(subset.style, {\n fontFamily: subset.fontFace.fontFamily,\n fontWeight: subset.fontFace.fontWeight || 'normal',\n fontStyle: subset.fontFace.fontStyle || 'normal',\n });\n }\n }\n } else {\n // eslint-disable-next-line deprecation/deprecation\n if (!options.disableWarnings && options.warnOnMissingIcons) {\n warn(\n `The icon \"${name}\" was used but not registered. See https://github.com/microsoft/fluentui/wiki/Using-icons for more information.`,\n );\n }\n }\n }\n\n return icon;\n}\n\n/**\n * Sets the icon options.\n *\n * @public\n */\nexport function setIconOptions(options: Partial): void {\n _iconSettings.__options = {\n ..._iconSettings.__options,\n ...options,\n };\n}\n\nlet _missingIcons: string[] = [];\nlet _missingIconsTimer: number | undefined = undefined;\n\nfunction _warnDuplicateIcon(iconName: string): void {\n const options = _iconSettings.__options;\n const warningDelay = 2000;\n const maxIconsInMessage = 10;\n\n if (!options.disableWarnings) {\n _missingIcons.push(iconName);\n if (_missingIconsTimer === undefined) {\n _missingIconsTimer = setTimeout(() => {\n warn(\n `Some icons were re-registered. Applications should only call registerIcons for any given ` +\n `icon once. Redefining what an icon is may have unintended consequences. Duplicates ` +\n `include: \\n` +\n _missingIcons.slice(0, maxIconsInMessage).join(', ') +\n (_missingIcons.length > maxIconsInMessage ? ` (+ ${_missingIcons.length - maxIconsInMessage} more)` : ''),\n );\n _missingIconsTimer = undefined;\n _missingIcons = [];\n }, warningDelay);\n }\n }\n}\n","// Do not modify this file; it is generated as part of publish.\n// The checked in version is a placeholder only and will not be updated.\nimport { setVersion } from '@fluentui/set-version';\nsetVersion('@fluentui/font-icons-mdl2', '8.4.1');","import { initializeIcons as i } from './fabric-icons';\nimport { initializeIcons as i0 } from './fabric-icons-0';\nimport { initializeIcons as i1 } from './fabric-icons-1';\nimport { initializeIcons as i2 } from './fabric-icons-2';\nimport { initializeIcons as i3 } from './fabric-icons-3';\nimport { initializeIcons as i4 } from './fabric-icons-4';\nimport { initializeIcons as i5 } from './fabric-icons-5';\nimport { initializeIcons as i6 } from './fabric-icons-6';\nimport { initializeIcons as i7 } from './fabric-icons-7';\nimport { initializeIcons as i8 } from './fabric-icons-8';\nimport { initializeIcons as i9 } from './fabric-icons-9';\nimport { initializeIcons as i10 } from './fabric-icons-10';\nimport { initializeIcons as i11 } from './fabric-icons-11';\nimport { initializeIcons as i12 } from './fabric-icons-12';\nimport { initializeIcons as i13 } from './fabric-icons-13';\nimport { initializeIcons as i14 } from './fabric-icons-14';\nimport { initializeIcons as i15 } from './fabric-icons-15';\nimport { initializeIcons as i16 } from './fabric-icons-16';\nimport { initializeIcons as i17 } from './fabric-icons-17';\n\nimport { IIconOptions } from '@fluentui/style-utilities';\nimport { registerIconAliases } from './iconAliases';\nimport { getWindow } from '@fluentui/utilities';\nconst DEFAULT_BASE_URL = 'https://spoppe-b.azureedge.net/files/fabric-cdn-prod_20210407.001/assets/icons/';\n\n/*\n * The Window variable has the iconBaseUrl prop in order to allow for users to redirect icon font downloads to a new\n * URL. The config can be burned on the page to ensure there are no race conditions which might load resources on\n * script load.\n */\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n interface Window {\n /**\n * The FabricConfig options can be burned on the page prior to script load to provide\n * alternative defaults at script load time. This helps avoid race conditions by calling\n * `initializeIcons` too late, or in cases where you can't control the `initializeIcons` call,\n * such as using the pre-created Fluent bundle.\n */\n FabricConfig?: {\n /**\n * Controls the base url of the font files. This is useful for scenarios where the fonts\n * are stored on a private CDN other than the default SharePoint CDN.\n */\n fontBaseUrl?: string;\n\n /**\n * Controls the base url of the icon font files. This is useful for scenarios where the icons\n * are stored on a private CDN other than the default SharePoint CDN. Note that in prior\n * iterations, `fontBaseUrl` was used to control both font and icon base urls. While you can\n * still use `fontBaseUrl` to provide a single base url for both, the `iconBaseUrl` will be\n * used first if available.\n */\n iconBaseUrl?: string;\n };\n }\n}\n\nconst win = getWindow();\n\nexport function initializeIcons(\n baseUrl: string = win?.FabricConfig?.iconBaseUrl || win?.FabricConfig?.fontBaseUrl || DEFAULT_BASE_URL,\n options?: IIconOptions,\n): void {\n [\n i,\n i0,\n i1,\n i2,\n i3,\n i4,\n i5,\n i6,\n i7,\n i8,\n i9,\n i10,\n i11,\n i12,\n i13,\n i14,\n i15,\n i16,\n i17,\n ].forEach((initialize: (url: string, options?: IIconOptions) => void) => initialize(baseUrl, options));\n\n registerIconAliases();\n}\n\n// eslint-disable-next-line deprecation/deprecation\nexport { IconNames } from './IconNames';\n\nimport './version';\n","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import * as React from 'react';\nimport { ImageLoadState } from '../../Image';\nimport type { IRefObject, IRenderFunction, IStyleFunctionOrObject } from '../../Utilities';\nimport type { IStyle, ITheme } from '../../Styling';\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersona {}\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersonaSharedProps extends React.HTMLAttributes, React.RefAttributes {\n /**\n * Primary text to display, usually the name of the person.\n */\n text?: string;\n\n /**\n * Decides the size of the control.\n * @defaultvalue PersonaSize.size48\n */\n size?: PersonaSize;\n\n /**\n * Optional custom renderer for the coin\n * @deprecated Use `onRenderPersonaCoin` for custom rendering instead\n */\n onRenderCoin?: IRenderFunction;\n\n /**\n * Optional custom renderer for the coin\n */\n onRenderPersonaCoin?: IRenderFunction;\n\n /**\n * If true, adds the css class 'is-fadeIn' to the image.\n */\n imageShouldFadeIn?: boolean;\n\n /**\n * If true, the image starts as visible and is hidden on error. Otherwise, the image is hidden until\n * it is successfully loaded. This disables imageShouldFadeIn.\n * @defaultvalue false\n */\n imageShouldStartVisible?: boolean;\n\n /**\n * Url to the image to use, should be a square aspect ratio and big enough to fit in the image area.\n */\n imageUrl?: string;\n\n /**\n * Alt text for the image to use.\n * @default `''` (empty string)\n */\n imageAlt?: string;\n\n /**\n * The user's initials to display in the image area when there is no image.\n * @defaultvalue Derived from `text`\n */\n imageInitials?: string;\n\n /**\n * Whether initials are calculated for phone numbers and number sequences.\n * Example: Set property to true to get initials for project names consisting of numbers only.\n * @defaultvalue false\n */\n allowPhoneInitials?: boolean;\n\n /**\n * Optional custom renderer for the initials\n */\n onRenderInitials?: IRenderFunction;\n\n /**\n * Optional callback for when loading state of the photo changes\n */\n onPhotoLoadingStateChange?: (newImageLoadState: ImageLoadState) => void;\n\n /**\n * The background color when the user's initials are displayed.\n * @defaultvalue Derived from `text`\n */\n initialsColor?: PersonaInitialsColor | string;\n\n /**\n * The text color when the user's initials are displayed\n */\n initialsTextColor?: string;\n\n /** The colors to be used for the presence-icon and it's background */\n presenceColors?: {\n available: string;\n away: string;\n busy: string;\n dnd: string;\n offline: string;\n oof: string;\n background: string;\n };\n\n /**\n * Presence of the person to display - will not display presence if undefined.\n * @defaultvalue PersonaPresence.none\n */\n presence?: PersonaPresence;\n\n /**\n * Presence title to be shown as a tooltip on hover over the presence icon.\n */\n presenceTitle?: string;\n\n /**\n * This flag can be used to signal the persona is out of office.\n * This will change the way the presence icon looks for statuses that support dual-presence.\n */\n isOutOfOffice?: boolean;\n\n /**\n * Secondary text to display, usually the role of the user.\n */\n secondaryText?: string;\n\n /**\n * Controls whether clipped overflow text should render in a tooltip\n * @defaultvalue true\n */\n showOverflowTooltip?: boolean;\n\n /**\n * Tertiary text to display, usually the status of the user.\n * The tertiary text will only be shown when using size72 or size100.\n */\n tertiaryText?: string;\n\n /**\n * Optional text to display, usually a custom message set. The optional text will only be shown when using size100.\n */\n optionalText?: string;\n\n /**\n * Whether to not render persona details, and just render the persona image/initials.\n */\n hidePersonaDetails?: boolean;\n\n /*\n * If true, show the secondary text line regardless of the size of the persona\n */\n showSecondaryText?: boolean;\n\n /**\n * If true, show the special coin for unknown persona.\n * It has '?' in place of initials, with static font and background colors\n */\n showUnknownPersonaCoin?: boolean;\n\n /**\n * If true renders the initials while the image is loading.\n * This only applies when an imageUrl is provided.\n * @defaultvalue false\n */\n showInitialsUntilImageLoads?: boolean;\n\n /**\n * Optional custom persona coin size in pixel.\n */\n coinSize?: number;\n\n /**\n * Optional HTML element props for Persona coin.\n */\n coinProps?: IPersonaCoinProps;\n\n /**\n * Theme provided by High-Order Component.\n */\n theme?: ITheme;\n\n /**\n * Primary text to display, usually the name of the person.\n * @deprecated Use `text` instead.\n */\n primaryText?: string;\n}\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersonaProps extends IPersonaSharedProps {\n /**\n * Optional callback to access the IPersona interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject;\n\n /**\n * Additional CSS class(es) to apply to the Persona\n */\n className?: string;\n\n /**\n * Call to provide customized styling that will layer on top of variant rules\n */\n styles?: IStyleFunctionOrObject;\n\n /**\n * Optional custom renderer for the primary text.\n */\n onRenderPrimaryText?: IRenderFunction;\n\n /**\n * Optional custom renderer for the secondary text.\n */\n onRenderSecondaryText?: IRenderFunction;\n\n /**\n * Optional custom renderer for the tertiary text.\n */\n onRenderTertiaryText?: IRenderFunction;\n\n /**\n * Optional custom renderer for the optional text.\n */\n onRenderOptionalText?: IRenderFunction;\n}\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersonaStyleProps {\n /**\n * Theme provided by High-Order Component.\n */\n theme: ITheme;\n\n /**\n * Custom class name.\n */\n className?: string;\n\n /**\n * Optional custom persona coin size in pixel.\n */\n coinSize?: number;\n\n /**\n * Decides the size of the control.\n * @defaultvalue PersonaSize.size48\n */\n size?: PersonaSize;\n\n /**\n * Presence of the person to display - will not display presence if undefined.\n * @defaultvalue PersonaPresence.none\n */\n presence?: PersonaPresence;\n\n /*\n * If true, show the secondary text line regardless of the size of the persona\n */\n showSecondaryText?: boolean;\n}\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersonaStyles {\n root: IStyle;\n details: IStyle;\n primaryText: IStyle;\n secondaryText: IStyle;\n tertiaryText: IStyle;\n optionalText: IStyle;\n textContent: IStyle;\n}\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersonaCoinProps extends IPersonaSharedProps {\n /**\n * Gets the component ref.\n */\n componentRef?: IRefObject<{}>;\n\n /**\n * Call to provide customized styling that will layer on top of the variant rules\n */\n styles?: IStyleFunctionOrObject;\n\n /**\n * Additional css class to apply to the PersonaCoin\n * @defaultvalue undefined\n */\n className?: string;\n}\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersonaCoinStyleProps {\n /**\n * Theme provided by High-Order Component.\n */\n theme: ITheme;\n\n /**\n * Custom class name.\n */\n className?: string;\n\n /**\n * Decides the size of the control.\n * @defaultvalue PersonaSize.size48\n */\n size?: PersonaSize;\n\n /**\n * Optional custom persona coin size in pixel.\n */\n coinSize?: number;\n\n /**\n * Decides whether to display coin for unknown persona\n */\n showUnknownPersonaCoin?: boolean;\n}\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersonaCoinStyles {\n coin: IStyle;\n imageArea: IStyle;\n image: IStyle;\n initials: IStyle;\n size10WithoutPresenceIcon: IStyle;\n}\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersonaPresenceProps extends IPersonaSharedProps {\n /**\n * Gets the component ref.\n */\n componentRef?: IRefObject<{}>;\n\n /**\n * Call to provide customized styling that will layer on top of the variant rules\n */\n styles?: IStyleFunctionOrObject;\n}\n\n/**\n * {@docCategory Persona}\n */\nexport type IPersonaPresenceStyleProps = Required> &\n Pick &\n Pick;\n\n/**\n * {@docCategory Persona}\n */\nexport interface IPersonaPresenceStyles {\n presence: IStyle;\n presenceIcon: IStyle;\n}\n\n/**\n * {@docCategory Persona}\n */\nexport enum PersonaSize {\n /**\n * Deprecated in favor of standardized numeric sizing.\n * @deprecated Use `size8` instead.\n */\n tiny = 0,\n\n /**\n * Deprecated in favor of standardized numeric sizing.\n * @deprecated Use `size24` instead.\n */\n extraExtraSmall = 1,\n\n /**\n * Deprecated in favor of standardized numeric sizing.\n * @deprecated Use `size32` instead.\n */\n extraSmall = 2,\n\n /**\n * Deprecated in favor of standardized numeric sizing.\n * @deprecated Use `size40` instead.\n */\n small = 3,\n\n /**\n * Deprecated in favor of standardized numeric sizing.\n * @deprecated Use `size48` instead.\n */\n regular = 4,\n\n /**\n * Deprecated in favor of standardized numeric sizing.\n * @deprecated Use `size72` instead.\n */\n large = 5,\n\n /**\n * Deprecated in favor of standardized numeric sizing.\n * @deprecated Use `size100` instead.\n */\n extraLarge = 6,\n\n /**\n * No `PersonaCoin` is rendered.\n */\n size8 = 17,\n\n /**\n * No `PersonaCoin` is rendered. Deprecated to align with design specifications.\n * @deprecated Use `size8` instead.\n */\n size10 = 9,\n\n /**\n * Renders a 16px `PersonaCoin`.\n * @deprecated Deprecated due to not being in the design specification.\n */\n size16 = 8,\n\n /**\n * Renders a 24px `PersonaCoin`.\n */\n size24 = 10,\n\n /**\n * Renders a 28px `PersonaCoin`.\n * @deprecated Deprecated due to not being in the design specification.\n */\n size28 = 7,\n\n /**\n * Renders a 32px `PersonaCoin`.\n */\n size32 = 11,\n\n /**\n * Renders a 40px `PersonaCoin`.\n */\n size40 = 12,\n\n /**\n * Renders a 48px `PersonaCoin`.\n */\n size48 = 13,\n\n /**\n * Renders a 56px `PersonaCoin`.\n */\n size56 = 16,\n\n /**\n * Renders a 72px `PersonaCoin`.\n */\n size72 = 14,\n\n /**\n * Renders a 100px `PersonaCoin`.\n */\n size100 = 15,\n\n /**\n * Renders a 120px `PersonaCoin`.\n */\n size120 = 18,\n}\n\n/**\n * {@docCategory Persona}\n */\nexport enum PersonaPresence {\n none = 0,\n offline = 1,\n online = 2,\n away = 3,\n dnd = 4,\n blocked = 5,\n busy = 6,\n}\n\n/**\n * {@docCategory Persona}\n */\nexport enum PersonaInitialsColor {\n lightBlue = 0,\n blue = 1,\n darkBlue = 2,\n teal = 3,\n lightGreen = 4,\n green = 5,\n darkGreen = 6,\n lightPink = 7,\n pink = 8,\n magenta = 9,\n purple = 10,\n /**\n * @deprecated `black` is a color that can result in offensive persona coins with some initials combinations,\n * so it can only be set with overrides. Will be removed in a future major release.\n */\n black = 11,\n orange = 12,\n /**\n * @deprecated `red` is a color that often has a special meaning, so it is considered a reserved color and\n * can only be set with overrides. Will be removed in a future major release.\n */\n red = 13,\n darkRed = 14,\n /**\n * Transparent is not intended to be used with typical initials due to accessibility issues.\n * Its primary use is for overflow buttons, so it is considered a reserved color and can only be set with overrides.\n */\n transparent = 15,\n violet = 16,\n lightRed = 17,\n gold = 18,\n burgundy = 19,\n warmGray = 20,\n coolGray = 21,\n /**\n * `gray` is a color that can result in offensive persona coins with some initials combinations,\n * so it can only be set with overrides.\n */\n gray = 22,\n cyan = 23,\n rust = 24,\n}\n","import defineProperty from \"./defineProperty.js\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}","import type { IFontWeight } from '@fluentui/merge-styles';\n\n// Font face names to be registered.\nexport namespace LocalizedFontNames {\n export const Arabic = 'Segoe UI Web (Arabic)';\n export const Cyrillic = 'Segoe UI Web (Cyrillic)';\n export const EastEuropean = 'Segoe UI Web (East European)';\n export const Greek = 'Segoe UI Web (Greek)';\n export const Hebrew = 'Segoe UI Web (Hebrew)';\n export const Thai = 'Leelawadee UI Web';\n export const Vietnamese = 'Segoe UI Web (Vietnamese)';\n export const WestEuropean = 'Segoe UI Web (West European)';\n export const Selawik = 'Selawik Web';\n export const Armenian = 'Segoe UI Web (Armenian)';\n export const Georgian = 'Segoe UI Web (Georgian)';\n}\n\n// Font families with fallbacks, for the general regions.\nexport namespace LocalizedFontFamilies {\n export const Arabic = `'${LocalizedFontNames.Arabic}'`;\n export const ChineseSimplified = `'Microsoft Yahei UI', Verdana, Simsun`;\n export const ChineseTraditional = `'Microsoft Jhenghei UI', Pmingliu`;\n export const Cyrillic = `'${LocalizedFontNames.Cyrillic}'`;\n export const EastEuropean = `'${LocalizedFontNames.EastEuropean}'`;\n export const Greek = `'${LocalizedFontNames.Greek}'`;\n export const Hebrew = `'${LocalizedFontNames.Hebrew}'`;\n export const Hindi = `'Nirmala UI'`;\n export const Japanese = `'Yu Gothic UI', 'Meiryo UI', Meiryo, 'MS Pgothic', Osaka`;\n export const Korean = `'Malgun Gothic', Gulim`;\n export const Selawik = `'${LocalizedFontNames.Selawik}'`;\n export const Thai = `'Leelawadee UI Web', 'Kmer UI'`;\n export const Vietnamese = `'${LocalizedFontNames.Vietnamese}'`;\n export const WestEuropean = `'${LocalizedFontNames.WestEuropean}'`;\n export const Armenian = `'${LocalizedFontNames.Armenian}'`;\n export const Georgian = `'${LocalizedFontNames.Georgian}'`;\n}\n\n// Standard font sizes.\nexport namespace FontSizes {\n export const size10 = '10px';\n export const size12 = '12px';\n export const size14 = '14px';\n export const size16 = '16px';\n export const size18 = '18px';\n export const size20 = '20px';\n export const size24 = '24px';\n export const size28 = '28px';\n export const size32 = '32px';\n export const size42 = '42px';\n export const size68 = '68px';\n\n export const mini: string = '10px';\n export const xSmall: string = '10px';\n export const small: string = '12px';\n export const smallPlus: string = '12px';\n export const medium: string = '14px';\n export const mediumPlus: string = '16px';\n export const icon: string = '16px';\n export const large: string = '18px';\n export const xLarge: string = '20px';\n export const xLargePlus: string = '24px';\n export const xxLarge: string = '28px';\n export const xxLargePlus: string = '32px';\n export const superLarge: string = '42px';\n export const mega: string = '68px';\n}\n\n// Standard font weights.\nexport namespace FontWeights {\n export const light: IFontWeight = 100;\n export const semilight: IFontWeight = 300;\n export const regular: IFontWeight = 400;\n export const semibold: IFontWeight = 600;\n export const bold: IFontWeight = 700;\n}\n\n// Standard Icon Sizes.\nexport namespace IconFontSizes {\n export const xSmall: string = '10px';\n export const small: string = '12px';\n export const medium: string = '16px';\n export const large: string = '20px';\n}\n","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import { DirectionalHint } from '../../common/DirectionalHint';\nimport type { IRectangle, Point } from '../../Utilities';\n\nexport enum RectangleEdge {\n top = 1,\n bottom = -1,\n left = 2,\n right = -2,\n}\n\nexport enum Position {\n top = 0,\n bottom = 1,\n start = 2,\n end = 3,\n}\n\n/**\n * Window with typings for experimental features regarding Dual Screen devices.\n */\nexport interface IWindowWithSegments extends Window {\n getWindowSegments?: () => DOMRect[];\n}\n\nexport interface IPositionProps {\n target?: Element | MouseEvent | Point;\n /** how the element should be positioned */\n directionalHint?: DirectionalHint;\n /**\n * How the element should be positioned in RTL layouts.\n * If not specified, a mirror of `directionalHint` will be used instead\n */\n directionalHintForRTL?: DirectionalHint;\n /** The gap between the callout and the target */\n gapSpace?: number;\n /**\n * The bounding rectangle for which the contextual menu can appear in.\n */\n bounds?: IRectangle;\n /**\n * If true the position returned will have the menu element cover the target.\n * If false then it will position next to the target;\n */\n coverTarget?: boolean;\n /**\n * If true the position will not change edges in an attempt to fit the rectangle within bounds.\n * It will still attempt to align it to whatever bounds are given.\n * @defaultvalue false\n */\n directionalHintFixed?: boolean;\n\n /**\n * If true the positioning logic will prefer flipping edges over nudging the rectangle to fit within bounds,\n * thus making sure the element align perfectly with target.\n */\n alignTargetEdge?: boolean;\n}\n\nexport interface ICalloutPositionProps extends IPositionProps {\n /**\n * The width of the beak.\n */\n beakWidth?: number;\n\n /**\n * Whether or not the beak is visible\n */\n isBeakVisible?: boolean;\n}\n\nexport interface IPositionedData {\n /**\n * The new position of the element.\n */\n elementPosition: IPosition;\n /**\n * The finalized target edge that element is aligning to. For instance RectangleEdge.bottom would mean\n * that the bottom edge of the target is being aligned to by the RectangleEdge.top of the element\n * that is being positioned.\n */\n targetEdge: RectangleEdge;\n /**\n * The finalized alignment edge that the element is aligning too. For instance, RectangleEdge.left means\n * that the left edge of the target should be in line with the left edge of the element being positioned.\n */\n alignmentEdge?: RectangleEdge;\n}\n\nexport interface ICalloutPositionedInfo extends IPositionedData {\n beakPosition: ICalloutBeakPositionedInfo;\n}\n\nexport interface ICalloutBeakPositionedInfo extends IPositionedData {\n closestEdge: RectangleEdge;\n hideBeak?: boolean;\n}\n\n/**\n * Gives the position of some element on the page. Only a pair of vertical and horizontal edges need to be\n * given. So top/left or bottom/left is sufficient.\n * The number given is the distance in pixels from whatever host was given..\n * So bottom: 100 would be 100px up from the bottom of the host while top: 100px from the top.\n */\nexport interface IPosition {\n top?: number;\n left?: number;\n bottom?: number;\n right?: number;\n [key: string]: number | undefined;\n}\n\nexport interface IPositionDirectionalHintData {\n targetEdge: RectangleEdge;\n alignmentEdge?: RectangleEdge;\n isAuto?: boolean;\n alignTargetEdge?: boolean;\n}\n\nexport interface IRelativePositions {\n calloutPosition: IPosition;\n beakPosition: { position: IPosition | undefined; display: 'block' };\n directionalClassName: string;\n submenuDirection: DirectionalHint;\n}\n\n// eslint-disable-next-line deprecation/deprecation\nexport type { Point, IPoint } from '../../Utilities';\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","// TODO: Replace with React.createContext once we can assume React 16+\nimport createContext from \"mini-create-react-context\";\n\nconst createNamedContext = name => {\n const context = createContext();\n context.displayName = name;\n\n return context;\n};\n\nexport default createNamedContext;\n","import createNamedContext from \"./createNamedContext\";\n\nconst historyContext = /*#__PURE__*/ createNamedContext(\"Router-History\");\nexport default historyContext;\n","import createNamedContext from \"./createNamedContext\";\n\nconst context = /*#__PURE__*/ createNamedContext(\"Router\");\nexport default context;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\nimport HistoryContext from \"./HistoryContext.js\";\nimport RouterContext from \"./RouterContext.js\";\n\n/**\n * The public API for putting history on context.\n */\nclass Router extends React.Component {\n static computeRootMatch(pathname) {\n return { path: \"/\", url: \"/\", params: {}, isExact: pathname === \"/\" };\n }\n\n constructor(props) {\n super(props);\n\n this.state = {\n location: props.history.location\n };\n\n // This is a bit of a hack. We have to start listening for location\n // changes here in the constructor in case there are any s\n // on the initial render. If there are, they will replace/push when\n // they mount and since cDM fires in children before parents, we may\n // get a new location before the is mounted.\n this._isMounted = false;\n this._pendingLocation = null;\n\n if (!props.staticContext) {\n this.unlisten = props.history.listen(location => {\n this._pendingLocation = location;\n });\n }\n }\n\n componentDidMount() {\n this._isMounted = true;\n\n if (this.unlisten) {\n // Any pre-mount location changes have been captured at\n // this point, so unregister the listener.\n this.unlisten();\n }\n if (!this.props.staticContext) {\n this.unlisten = this.props.history.listen(location => {\n if (this._isMounted) {\n this.setState({ location });\n }\n });\n }\n if (this._pendingLocation) {\n this.setState({ location: this._pendingLocation });\n }\n }\n\n componentWillUnmount() {\n if (this.unlisten) {\n this.unlisten();\n this._isMounted = false;\n this._pendingLocation = null;\n }\n }\n\n render() {\n return (\n \n \n \n );\n }\n}\n\nif (__DEV__) {\n Router.propTypes = {\n children: PropTypes.node,\n history: PropTypes.object.isRequired,\n staticContext: PropTypes.object\n };\n\n Router.prototype.componentDidUpdate = function(prevProps) {\n warning(\n prevProps.history === this.props.history,\n \"You cannot change \"\n );\n };\n}\n\nexport default Router;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { createMemoryHistory as createHistory } from \"history\";\nimport warning from \"tiny-warning\";\n\nimport Router from \"./Router.js\";\n\n/**\n * The public API for a that stores location in memory.\n */\nclass MemoryRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return ;\n }\n}\n\nif (__DEV__) {\n MemoryRouter.propTypes = {\n initialEntries: PropTypes.array,\n initialIndex: PropTypes.number,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number,\n children: PropTypes.node\n };\n\n MemoryRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \" ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { MemoryRouter as Router }`.\"\n );\n };\n}\n\nexport default MemoryRouter;\n","import React from \"react\";\n\nclass Lifecycle extends React.Component {\n componentDidMount() {\n if (this.props.onMount) this.props.onMount.call(this, this);\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.onUpdate) this.props.onUpdate.call(this, this, prevProps);\n }\n\n componentWillUnmount() {\n if (this.props.onUnmount) this.props.onUnmount.call(this, this);\n }\n\n render() {\n return null;\n }\n}\n\nexport default Lifecycle;\n","import pathToRegexp from \"path-to-regexp\";\n\nconst cache = {};\nconst cacheLimit = 10000;\nlet cacheCount = 0;\n\nfunction compilePath(path) {\n if (cache[path]) return cache[path];\n\n const generator = pathToRegexp.compile(path);\n\n if (cacheCount < cacheLimit) {\n cache[path] = generator;\n cacheCount++;\n }\n\n return generator;\n}\n\n/**\n * Public API for generating a URL pathname from a path and parameters.\n */\nfunction generatePath(path = \"/\", params = {}) {\n return path === \"/\" ? path : compilePath(path)(params, { pretty: true });\n}\n\nexport default generatePath;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { createLocation, locationsAreEqual } from \"history\";\nimport invariant from \"tiny-invariant\";\n\nimport Lifecycle from \"./Lifecycle.js\";\nimport RouterContext from \"./RouterContext.js\";\nimport generatePath from \"./generatePath.js\";\n\n/**\n * The public API for navigating programmatically with a component.\n */\nfunction Redirect({ computedMatch, to, push = false }) {\n return (\n \n {context => {\n invariant(context, \"You should not use outside a \");\n\n const { history, staticContext } = context;\n\n const method = push ? history.push : history.replace;\n const location = createLocation(\n computedMatch\n ? typeof to === \"string\"\n ? generatePath(to, computedMatch.params)\n : {\n ...to,\n pathname: generatePath(to.pathname, computedMatch.params)\n }\n : to\n );\n\n // When rendering in a static context,\n // set the new location immediately.\n if (staticContext) {\n method(location);\n return null;\n }\n\n return (\n {\n method(location);\n }}\n onUpdate={(self, prevProps) => {\n const prevLocation = createLocation(prevProps.to);\n if (\n !locationsAreEqual(prevLocation, {\n ...location,\n key: prevLocation.key\n })\n ) {\n method(location);\n }\n }}\n to={to}\n />\n );\n }}\n \n );\n}\n\nif (__DEV__) {\n Redirect.propTypes = {\n push: PropTypes.bool,\n from: PropTypes.string,\n to: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired\n };\n}\n\nexport default Redirect;\n","import pathToRegexp from \"path-to-regexp\";\n\nconst cache = {};\nconst cacheLimit = 10000;\nlet cacheCount = 0;\n\nfunction compilePath(path, options) {\n const cacheKey = `${options.end}${options.strict}${options.sensitive}`;\n const pathCache = cache[cacheKey] || (cache[cacheKey] = {});\n\n if (pathCache[path]) return pathCache[path];\n\n const keys = [];\n const regexp = pathToRegexp(path, keys, options);\n const result = { regexp, keys };\n\n if (cacheCount < cacheLimit) {\n pathCache[path] = result;\n cacheCount++;\n }\n\n return result;\n}\n\n/**\n * Public API for matching a URL pathname to a path.\n */\nfunction matchPath(pathname, options = {}) {\n if (typeof options === \"string\" || Array.isArray(options)) {\n options = { path: options };\n }\n\n const { path, exact = false, strict = false, sensitive = false } = options;\n\n const paths = [].concat(path);\n\n return paths.reduce((matched, path) => {\n if (!path && path !== \"\") return null;\n if (matched) return matched;\n\n const { regexp, keys } = compilePath(path, {\n end: exact,\n strict,\n sensitive\n });\n const match = regexp.exec(pathname);\n\n if (!match) return null;\n\n const [url, ...values] = match;\n const isExact = pathname === url;\n\n if (exact && !isExact) return null;\n\n return {\n path, // the path used to match\n url: path === \"/\" && url === \"\" ? \"/\" : url, // the matched portion of the URL\n isExact, // whether or not we matched exactly\n params: keys.reduce((memo, key, index) => {\n memo[key.name] = values[index];\n return memo;\n }, {})\n };\n }, null);\n}\n\nexport default matchPath;\n","import React from \"react\";\nimport { isValidElementType } from \"react-is\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\n\nimport RouterContext from \"./RouterContext.js\";\nimport matchPath from \"./matchPath.js\";\n\nfunction isEmptyChildren(children) {\n return React.Children.count(children) === 0;\n}\n\nfunction evalChildrenDev(children, props, path) {\n const value = children(props);\n\n warning(\n value !== undefined,\n \"You returned `undefined` from the `children` function of \" +\n `, but you ` +\n \"should have returned a React element or `null`\"\n );\n\n return value || null;\n}\n\n/**\n * The public API for matching a single path and rendering.\n */\nclass Route extends React.Component {\n render() {\n return (\n \n {context => {\n invariant(context, \"You should not use outside a \");\n\n const location = this.props.location || context.location;\n const match = this.props.computedMatch\n ? this.props.computedMatch // already computed the match for us\n : this.props.path\n ? matchPath(location.pathname, this.props)\n : context.match;\n\n const props = { ...context, location, match };\n\n let { children, component, render } = this.props;\n\n // Preact uses an empty array as children by\n // default, so use null if that's the case.\n if (Array.isArray(children) && isEmptyChildren(children)) {\n children = null;\n }\n\n return (\n \n {props.match\n ? children\n ? typeof children === \"function\"\n ? __DEV__\n ? evalChildrenDev(children, props, this.props.path)\n : children(props)\n : children\n : component\n ? React.createElement(component, props)\n : render\n ? render(props)\n : null\n : typeof children === \"function\"\n ? __DEV__\n ? evalChildrenDev(children, props, this.props.path)\n : children(props)\n : null}\n \n );\n }}\n \n );\n }\n}\n\nif (__DEV__) {\n Route.propTypes = {\n children: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n component: (props, propName) => {\n if (props[propName] && !isValidElementType(props[propName])) {\n return new Error(\n `Invalid prop 'component' supplied to 'Route': the prop is not a valid React component`\n );\n }\n },\n exact: PropTypes.bool,\n location: PropTypes.object,\n path: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string)\n ]),\n render: PropTypes.func,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool\n };\n\n Route.prototype.componentDidMount = function() {\n warning(\n !(\n this.props.children &&\n !isEmptyChildren(this.props.children) &&\n this.props.component\n ),\n \"You should not use and in the same route; will be ignored\"\n );\n\n warning(\n !(\n this.props.children &&\n !isEmptyChildren(this.props.children) &&\n this.props.render\n ),\n \"You should not use and in the same route; will be ignored\"\n );\n\n warning(\n !(this.props.component && this.props.render),\n \"You should not use and in the same route; will be ignored\"\n );\n };\n\n Route.prototype.componentDidUpdate = function(prevProps) {\n warning(\n !(this.props.location && !prevProps.location),\n ' elements should not change from uncontrolled to controlled (or vice versa). You initially used no \"location\" prop and then provided one on a subsequent render.'\n );\n\n warning(\n !(!this.props.location && prevProps.location),\n ' elements should not change from controlled to uncontrolled (or vice versa). You provided a \"location\" prop initially but omitted it on a subsequent render.'\n );\n };\n}\n\nexport default Route;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { createLocation, createPath } from \"history\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\n\nimport Router from \"./Router.js\";\n\nfunction addLeadingSlash(path) {\n return path.charAt(0) === \"/\" ? path : \"/\" + path;\n}\n\nfunction addBasename(basename, location) {\n if (!basename) return location;\n\n return {\n ...location,\n pathname: addLeadingSlash(basename) + location.pathname\n };\n}\n\nfunction stripBasename(basename, location) {\n if (!basename) return location;\n\n const base = addLeadingSlash(basename);\n\n if (location.pathname.indexOf(base) !== 0) return location;\n\n return {\n ...location,\n pathname: location.pathname.substr(base.length)\n };\n}\n\nfunction createURL(location) {\n return typeof location === \"string\" ? location : createPath(location);\n}\n\nfunction staticHandler(methodName) {\n return () => {\n invariant(false, \"You cannot %s with \", methodName);\n };\n}\n\nfunction noop() {}\n\n/**\n * The public top-level API for a \"static\" , so-called because it\n * can't actually change the current location. Instead, it just records\n * location changes in a context object. Useful mainly in testing and\n * server-rendering scenarios.\n */\nclass StaticRouter extends React.Component {\n navigateTo(location, action) {\n const { basename = \"\", context = {} } = this.props;\n context.action = action;\n context.location = addBasename(basename, createLocation(location));\n context.url = createURL(context.location);\n }\n\n handlePush = location => this.navigateTo(location, \"PUSH\");\n handleReplace = location => this.navigateTo(location, \"REPLACE\");\n handleListen = () => noop;\n handleBlock = () => noop;\n\n render() {\n const { basename = \"\", context = {}, location = \"/\", ...rest } = this.props;\n\n const history = {\n createHref: path => addLeadingSlash(basename + createURL(path)),\n action: \"POP\",\n location: stripBasename(basename, createLocation(location)),\n push: this.handlePush,\n replace: this.handleReplace,\n go: staticHandler(\"go\"),\n goBack: staticHandler(\"goBack\"),\n goForward: staticHandler(\"goForward\"),\n listen: this.handleListen,\n block: this.handleBlock\n };\n\n return ;\n }\n}\n\nif (__DEV__) {\n StaticRouter.propTypes = {\n basename: PropTypes.string,\n context: PropTypes.object,\n location: PropTypes.oneOfType([PropTypes.string, PropTypes.object])\n };\n\n StaticRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \" ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { StaticRouter as Router }`.\"\n );\n };\n}\n\nexport default StaticRouter;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\n\nimport RouterContext from \"./RouterContext.js\";\nimport matchPath from \"./matchPath.js\";\n\n/**\n * The public API for rendering the first that matches.\n */\nclass Switch extends React.Component {\n render() {\n return (\n \n {context => {\n invariant(context, \"You should not use outside a \");\n\n const location = this.props.location || context.location;\n\n let element, match;\n\n // We use React.Children.forEach instead of React.Children.toArray().find()\n // here because toArray adds keys to all child elements and we do not want\n // to trigger an unmount/remount for two s that render the same\n // component at different URLs.\n React.Children.forEach(this.props.children, child => {\n if (match == null && React.isValidElement(child)) {\n element = child;\n\n const path = child.props.path || child.props.from;\n\n match = path\n ? matchPath(location.pathname, { ...child.props, path })\n : context.match;\n }\n });\n\n return match\n ? React.cloneElement(element, { location, computedMatch: match })\n : null;\n }}\n \n );\n }\n}\n\nif (__DEV__) {\n Switch.propTypes = {\n children: PropTypes.node,\n location: PropTypes.object\n };\n\n Switch.prototype.componentDidUpdate = function(prevProps) {\n warning(\n !(this.props.location && !prevProps.location),\n ' elements should not change from uncontrolled to controlled (or vice versa). You initially used no \"location\" prop and then provided one on a subsequent render.'\n );\n\n warning(\n !(!this.props.location && prevProps.location),\n ' elements should not change from controlled to uncontrolled (or vice versa). You provided a \"location\" prop initially but omitted it on a subsequent render.'\n );\n };\n}\n\nexport default Switch;\n","import React from \"react\";\nimport invariant from \"tiny-invariant\";\n\nimport RouterContext from \"./RouterContext.js\";\nimport HistoryContext from \"./HistoryContext.js\";\nimport matchPath from \"./matchPath.js\";\n\nconst useContext = React.useContext;\n\nexport function useHistory() {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useHistory()\"\n );\n }\n\n return useContext(HistoryContext);\n}\n\nexport function useLocation() {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useLocation()\"\n );\n }\n\n return useContext(RouterContext).location;\n}\n\nexport function useParams() {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useParams()\"\n );\n }\n\n const match = useContext(RouterContext).match;\n return match ? match.params : {};\n}\n\nexport function useRouteMatch(path) {\n if (__DEV__) {\n invariant(\n typeof useContext === \"function\",\n \"You must use React >= 16.8 in order to use useRouteMatch()\"\n );\n }\n\n const location = useLocation();\n const match = useContext(RouterContext).match;\n return path ? matchPath(location.pathname, path) : match;\n}\n","import * as React from 'react';\nimport { BaseButton, Button, IButtonProps } from '../../Button';\nimport type { ITheme, IStyle } from '../../Styling';\nimport type { IRefObject, IStyleFunctionOrObject } from '../../Utilities';\nimport type { IIconProps } from '../../Icon';\n\n/**\n * {@docCategory MessageBar}\n */\nexport interface IMessageBar {}\n\n/**\n * {@docCategory MessageBar}\n */\nexport interface IMessageBarProps extends React.HTMLAttributes, React.RefAttributes {\n /**\n * Optional callback to access the IMessageBar interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject;\n\n /**\n * The type of MessageBar to render.\n * @defaultvalue MessageBarType.info\n */\n messageBarType?: MessageBarType;\n\n /**\n * The actions you want to show on the other side.\n */\n actions?: JSX.Element;\n\n /**\n * A description of the message bar for the benefit of screen readers.\n * @deprecated Use native prop `aria-label` instead.\n */\n ariaLabel?: string;\n\n /**\n * Whether the message bar has a dismiss button and its callback.\n * If null, we don't show a dismiss button.\n * @defaultvalue null\n */\n // eslint-disable-next-line deprecation/deprecation\n onDismiss?: (ev?: React.MouseEvent) => any;\n\n /**\n * Determines if the message bar is multi lined.\n * If false, and the text overflows over buttons or to another line, it is clipped.\n * @defaultvalue true\n */\n isMultiline?: boolean;\n\n /**\n * Aria label on dismiss button if onDismiss is defined.\n */\n dismissButtonAriaLabel?: string;\n\n /**\n * Determines if the message bar text is truncated.\n * If true, a button will render to toggle between a single line view and multiline view.\n * This prop is for single line message bars with no buttons only in a limited space scenario.\n * @defaultvalue false\n */\n truncated?: boolean;\n\n /**\n * Aria label on overflow button if truncated is defined.\n * @deprecated Use `expandButtonProps` instead.\n */\n overflowButtonAriaLabel?: string;\n\n /**\n * Additional CSS class(es) to apply to the MessageBar.\n */\n className?: string;\n\n /**\n * Theme (provided through customization.)\n */\n theme?: ITheme;\n\n /**\n * Call to provide customized styling that will layer on top of the variant rules.\n */\n styles?: IStyleFunctionOrObject;\n\n /**\n * Custom icon prop to replace the dismiss icon.\n * If unset, default will be the Fabric Clear icon.\n */\n dismissIconProps?: IIconProps;\n\n /**\n * Custom icon prop to replace the message bar icon.\n * If unset, default will be the icon set by messageBarType.\n */\n messageBarIconProps?: IIconProps;\n\n /**\n * Button props that can be applied to the expand button of the MessageBar.\n */\n expandButtonProps?: IButtonProps;\n\n /**\n * Custom role to apply to the MessageBar.\n * @defaultvalue `alert` if `messageBarType` is `error`, `blocked`, or `severeWarning`;\n * or `status` otherwise\n */\n role?: 'alert' | 'status' | 'none';\n\n /**\n * By default, MessageBar delay-renders its content within an internal live region to help ensure\n * it's announced by screen readers. You can disable that behavior by setting this prop to `false`.\n *\n * If you set this prop to `false`, to ensure proper announcement you should either:\n * - If appropriate, ensure that the `role` prop is set to `alert` (this will be done by default\n * if `messageBarType` is `error`, `blocked`, or `severeWarning`), OR\n * - Set the `role` prop to `none` (to avoid nested `status` regions), wrap the whole MessageBar\n * in a `
` which is always rendered, and ensure that the MessageBar is\n * rendered either conditionally or with a delay.\n * @default true\n */\n delayedRender?: boolean;\n}\n\n/**\n * {@docCategory MessageBar}\n */\nexport interface IMessageBarStyleProps {\n /**\n * Theme (provided through customization).\n */\n theme: ITheme;\n\n /**\n * Additional CSS class(es).\n */\n className?: string;\n\n /**\n * Type of the MessageBar.\n */\n messageBarType?: MessageBarType;\n\n /**\n * Whether the MessageBar contains a dismiss button.\n */\n onDismiss?: boolean;\n\n /**\n * Whether the text is truncated.\n */\n truncated?: boolean;\n\n /**\n * Whether the MessageBar is rendered in multi line (as opposed to single line) mode.\n */\n isMultiline?: boolean;\n\n /**\n * Whether the single line MessageBar is being expanded.\n */\n expandSingleLine?: boolean;\n\n /**\n * Whether the MessageBar contains any action elements.\n */\n actions?: boolean;\n}\n\n/**\n * {@docCategory MessageBar}\n */\nexport interface IMessageBarStyles {\n /**\n * Style set for the root element.\n */\n root?: IStyle;\n\n /**\n * Style set for the element containing the icon, text, and optional dismiss button.\n */\n content?: IStyle;\n\n /**\n * Style set for the element containing the icon.\n */\n iconContainer?: IStyle;\n\n /**\n * Style set for the icon.\n */\n icon?: IStyle;\n\n /**\n * Style set for the element containing the text.\n */\n text?: IStyle;\n\n /**\n * Style set for the text.\n */\n innerText?: IStyle;\n\n /**\n * Style set for the optional dismiss button.\n */\n dismissal?: IStyle;\n\n /**\n * Style set for the icon used to expand and collapse the MessageBar.\n */\n expand?: IStyle;\n\n /**\n * Style set for the element containing the dismiss button.\n */\n dismissSingleLine?: IStyle;\n\n /**\n * Style set for the element containing the expand icon.\n */\n expandSingleLine?: IStyle;\n\n /**\n * Style set for the optional element containing the action elements.\n */\n actions?: IStyle;\n}\n\n/**\n * {@docCategory MessageBar}\n */\nexport enum MessageBarType {\n /** Info styled MessageBar */\n info = 0,\n /** Error styled MessageBar */\n error = 1,\n /** Blocked styled MessageBar */\n blocked = 2,\n /** SevereWarning styled MessageBar */\n severeWarning = 3,\n /** Success styled MessageBar */\n success = 4,\n /** Warning styled MessageBar */\n warning = 5,\n}\n","import { _isSSR } from './setSSR';\n\nlet _window: Window | undefined = undefined;\n\n// Note: Accessing \"window\" in IE11 is somewhat expensive, and calling \"typeof window\"\n// hits a memory leak, whereas aliasing it and calling \"typeof _window\" does not.\n// Caching the window value at the file scope lets us minimize the impact.\ntry {\n _window = window;\n} catch (e) {\n /* no-op */\n}\n\n/**\n * Helper to get the window object. The helper will make sure to use a cached variable\n * of \"window\", to avoid overhead and memory leaks in IE11. Note that in popup scenarios the\n * window object won't match the \"global\" window object, and for these scenarios, you should\n * pass in an element hosted within the popup.\n *\n * @public\n */\nexport function getWindow(rootElement?: Element | null): Window | undefined {\n if (_isSSR || typeof _window === 'undefined') {\n return undefined;\n } else {\n const el = rootElement as Element;\n\n return el && el.ownerDocument && el.ownerDocument.defaultView ? el.ownerDocument.defaultView : _window;\n }\n}\n","export const DirectionalHint = {\n /**\n * Appear above the target element, with the left edges of the callout and target aligning.\n */\n topLeftEdge: 0 as 0,\n\n /**\n * Appear above the target element, with the centers of the callout and target aligning.\n */\n topCenter: 1 as 1,\n\n /**\n * Appear above the target element, with the right edges of the callout and target aligning.\n */\n topRightEdge: 2 as 2,\n\n /**\n * Appear above the target element, aligning with the target element such that the callout tends toward\n * the center of the screen.\n */\n topAutoEdge: 3 as 3,\n\n /**\n * Appear below the target element, with the left edges of the callout and target aligning.\n */\n bottomLeftEdge: 4 as 4,\n\n /**\n * Appear below the target element, with the centers of the callout and target aligning.\n */\n bottomCenter: 5 as 5,\n\n /**\n * Appear below the target element, with the right edges of the callout and target aligning.\n */\n bottomRightEdge: 6 as 6,\n\n /**\n * Appear below the target element, aligning with the target element such that the callout tends toward\n * the center of the screen.\n */\n bottomAutoEdge: 7 as 7,\n\n /**\n * Appear to the left of the target element, with the top edges of the callout and target aligning.\n */\n leftTopEdge: 8 as 8,\n\n /**\n * Appear to the left of the target element, with the centers of the callout and target aligning.\n */\n leftCenter: 9 as 9,\n\n /**\n * Appear to the left of the target element, with the bottom edges of the callout and target aligning.\n */\n leftBottomEdge: 10 as 10,\n\n /**\n * Appear to the right of the target element, with the top edges of the callout and target aligning.\n */\n rightTopEdge: 11 as 11,\n\n /**\n * Appear to the right of the target element, with the centers of the callout and target aligning.\n */\n rightCenter: 12 as 12,\n\n /**\n * Appear to the right of the target element, with the bottom edges of the callout and target aligning.\n */\n rightBottomEdge: 13 as 13,\n};\n\nexport type DirectionalHint = typeof DirectionalHint[keyof typeof DirectionalHint];\n","import * as React from 'react';\nimport { DetailsListBase } from './DetailsList.base';\nimport { SelectionMode } from '../../Selection';\nimport { ScrollToMode } from '../../List';\nimport type { ISelection, ISelectionZoneProps } from '../../Selection';\nimport type { IRefObject, IBaseProps, IRenderFunction, IStyleFunctionOrObject } from '../../Utilities';\nimport type { IDragDropEvents, IDragDropContext, IDragDropHelper, IDragDropOptions } from '../../DragDrop';\nimport type { IGroup, IGroupRenderProps, IGroupDividerProps, IGroupedListProps } from '../GroupedList/index';\nimport type { IDetailsRowProps, IDetailsRowBaseProps } from '../DetailsList/DetailsRow';\nimport type { IDetailsHeaderProps, IDetailsHeaderBaseProps } from './DetailsHeader';\nimport type { IDetailsFooterProps, IDetailsFooterBaseProps } from './DetailsFooter.types';\nimport type { IWithViewportProps, IViewport } from '../../utilities/decorators/withViewport';\nimport type { IList, IListProps } from '../../List';\nimport type { ITheme, IStyle } from '../../Styling';\nimport type { ICellStyleProps, IDetailsItemProps } from './DetailsRow.types';\nimport type { IDetailsCheckboxProps } from './DetailsRowCheck.types';\nimport type {\n IDetailsColumnStyleProps,\n IDetailsColumnProps,\n IDetailsColumnStyles,\n IDetailsColumnFilterIconProps,\n IDetailsColumnFieldProps,\n} from './DetailsColumn.types';\nimport { IFocusZoneProps } from '../../FocusZone';\n\n/**\n * {@docCategory DetailsList}\n */\nexport interface IDetailsList extends IList {\n /**\n * Ensures that the list content is updated. Call this in cases where the list prop updates don't change, but the list\n * still needs to be re-evaluated. For example, if a sizer bar is adjusted and causes the list width to change,\n * you can call this to force a re-evaluation. Be aware that this can be an expensive operation and should be\n * done sparingly.\n */\n forceUpdate: () => void;\n\n /**\n * Scroll to and focus the item at the given index. focusIndex will call scrollToIndex on the specified index.\n *\n * @param index - Index of item to scroll to\n * @param forceIntoFirstElement - If true, focus will be set to the first focusable child element of the item rather\n * than the item itself.\n * @param measureItem - Optional callback to measure the height of an individual item\n * @param scrollToMode - Optional setting to determine where in the window the item should be scrolled to\n * when focused.\n */\n focusIndex: (\n index: number,\n forceIntoFirstElement?: boolean,\n measureItem?: (itemIndex: number) => number,\n scrollToMode?: ScrollToMode,\n ) => void;\n\n /**\n * Get the start index of the page that is currently in view\n */\n getStartItemIndexInView: () => number;\n\n /**\n * Use to programatically resize and/or reorder columns in the DetailsList.\n * @param column - column to resize/reorder.\n * @param options - includes width which is desired width in pixels the column should be resized\n * to and newColumnIndex which is desired index position where the column should be moved to.\n */\n updateColumn: (column: IColumn, options: { width?: number; newColumnIndex?: number }) => void;\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport interface IDetailsListProps extends IBaseProps, IWithViewportProps {\n /** Theme provided by a higher-order component. */\n theme?: ITheme;\n\n /** Custom overrides to the themed or default styles. */\n styles?: IStyleFunctionOrObject;\n\n /**\n * Callback to access the IDetailsList interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject;\n\n /** A key that uniquely identifies the given items. If provided, the selection will be reset when the key changes. */\n setKey?: string;\n\n /** The items to render. */\n items: any[];\n\n /** Set this to true to indicate that the items being displayed are placeholder data. */\n isPlaceholderData?: boolean;\n\n /** Properties to pass through to the List components being rendered. */\n listProps?: IListProps;\n\n /** Default index to set focus to once the items have rendered and the index exists. */\n initialFocusedIndex?: number;\n\n /** Class name to add to the root element. */\n className?: string;\n\n /** Grouping instructions. */\n groups?: IGroup[];\n\n /** Override properties to render groups. */\n groupProps?: IDetailsGroupRenderProps;\n\n /** Override for the indent width used for group nesting. */\n indentWidth?: number;\n\n /** Selection model to track selection state. */\n selection?: ISelection;\n\n /** Controls how/if the details list manages selection. Options include none, single, multiple */\n selectionMode?: SelectionMode;\n\n /**\n * By default, selection is cleared when clicking on an empty (non-focusable) section of the screen.\n * Setting this value to true overrides that behavior and maintains selection.\n * @defaultvalue false\n **/\n selectionPreservedOnEmptyClick?: boolean;\n\n /**\n * Additional props to pass through to the SelectionZone created by default.\n */\n selectionZoneProps?: ISelectionZoneProps;\n\n /** Controls how the columns are adjusted. */\n layoutMode?: DetailsListLayoutMode;\n\n /**\n * Controls the visibility of selection check box.\n * @defaultvalue CheckboxVisibility.onHover\n */\n checkboxVisibility?: CheckboxVisibility;\n\n /**\n * Controls the visibility of the header.\n * @defaultvalue true\n */\n isHeaderVisible?: boolean;\n\n /** Column definitions. If none are provided, default columns will be created based on the items' properties. */\n columns?: IColumn[];\n\n /** Controls how the list constrains overflow. */\n constrainMode?: ConstrainMode;\n\n /** Event names and corresponding callbacks that will be registered to rendered row elements. */\n rowElementEventMap?: { eventName: string; callback: (context: IDragDropContext, event?: any) => void }[];\n\n /** Callback for when the list has been updated. Useful for telemetry tracking externally. */\n onDidUpdate?: (detailsList?: DetailsListBase) => void;\n\n /**\n * Callback for when a given row has been mounted. Useful for identifying when a row has been rendered on the page.\n */\n onRowDidMount?: (item?: any, index?: number) => void;\n\n /**\n * Callback for when a given row has been unmounted.\n * Useful for identifying when a row has been removed from the page.\n */\n onRowWillUnmount?: (item?: any, index?: number) => void;\n\n /** Callback for when the user clicks on the column header. */\n onColumnHeaderClick?: (ev?: React.MouseEvent, column?: IColumn) => void;\n\n /** Callback for when the user asks for a contextual menu (usually via right click) from a column header. */\n onColumnHeaderContextMenu?: (column?: IColumn, ev?: React.MouseEvent) => void;\n\n /** Callback fired on column resize */\n onColumnResize?: (column?: IColumn, newWidth?: number, columnIndex?: number) => void;\n\n /** Callback for when a given row has been invoked (by pressing enter while it is selected.) */\n onItemInvoked?: (item?: any, index?: number, ev?: Event) => void;\n\n /**\n * Callback for when the context menu of an item has been accessed.\n * If undefined or false is returned, `ev.preventDefault()` will be called.\n */\n onItemContextMenu?: (item?: any, index?: number, ev?: Event) => void | boolean;\n\n /**\n * Callback to override the default row rendering.\n */\n onRenderRow?: IRenderFunction;\n\n /**\n * If provided, will be the \"default\" item column renderer method.\n * This affects cells within the rows, not the rows themselves.\n * If a column definition provides its own `onRender` method, that will be used instead of this.\n */\n onRenderItemColumn?: (item?: any, index?: number, column?: IColumn) => React.ReactNode;\n\n /**\n * Render function which is composed around rendering every cell.\n */\n onRenderField?: IRenderFunction;\n\n /**\n * If provided, will be the \"default\" item column cell value return.\n * A column's `getValueKey` can override `getCellValueKey`.\n */\n getCellValueKey?: (item?: any, index?: number, column?: IColumn) => string;\n\n /** Map of callback functions related to row drag and drop functionality. */\n dragDropEvents?: IDragDropEvents;\n\n /** Callback for what to render when the item is missing. */\n onRenderMissingItem?: (index?: number, rowProps?: IDetailsRowProps) => React.ReactNode;\n\n /** An override to render the details header. */\n onRenderDetailsHeader?: IRenderFunction;\n\n /** An override to render the details footer. */\n onRenderDetailsFooter?: IRenderFunction;\n\n /** If provided, can be used to render a custom checkbox. */\n onRenderCheckbox?: IRenderFunction;\n\n /** Viewport info, provided by the `withViewport` decorator. */\n viewport?: IViewport;\n\n /**\n * Callback for when an item in the list becomes active by clicking anywhere inside the row or navigating to it\n * with the keyboard.\n */\n onActiveItemChanged?: (item?: any, index?: number, ev?: React.FocusEvent) => void;\n\n /** Accessible label for the list header. */\n ariaLabelForListHeader?: string;\n\n /** Accessible label for the select all checkbox. */\n ariaLabelForSelectAllCheckbox?: string;\n\n /** Accessible label for the name of the selection column. */\n ariaLabelForSelectionColumn?: string;\n\n /** Callback to get the aria-label string for a given item. */\n getRowAriaLabel?: (item: any) => string;\n\n /** Callback to get the aria-describedby IDs (space-separated strings) of elements that describe the item. */\n getRowAriaDescribedBy?: (item: any) => string;\n\n /**\n * Callback to get the item key, to be used in the selection and on render.\n * Must be provided if sorting or filtering is enabled.\n */\n getKey?: (item: any, index?: number) => string;\n\n /**\n * Accessible label describing or summarizing the list.\n * @deprecated use `ariaLabelForGrid`\n */\n ariaLabel?: string;\n\n /** Accessible label for the row check button, e.g. \"select row\". */\n checkButtonAriaLabel?: string;\n\n /** Accessible label for the group header check button, e.g. \"select section\". */\n checkButtonGroupAriaLabel?: string;\n\n /** Accessible label for the grid within the list. */\n ariaLabelForGrid?: string;\n\n /** An optional margin for proportional columns, to e.g. account for scrollbars when laying out width. */\n flexMargin?: number;\n\n /**\n * Whether the role `application` should be applied to the list.\n * @defaultvalue false\n * @deprecated using the application role in this case is an antipattern, and heavily discouraged.\n */\n shouldApplyApplicationRole?: boolean;\n\n /**\n * The minimum mouse move distance to interpret the action as drag event.\n * @defaultvalue 5\n */\n minimumPixelsForDrag?: number;\n\n /**\n * Whether to render in compact mode.\n * @defaultvalue false\n */\n compact?: boolean;\n\n /**\n * Whether to enable render page caching. This is an experimental performance optimization that is off by default.\n * @defaultvalue false\n */\n usePageCache?: boolean;\n\n /**\n * Callback to determine whether the list should be rendered in full, or virtualized.\n *\n * Virtualization will add and remove pages of items as the user scrolls them into the visible range.\n * This benefits larger list scenarios by reducing the DOM on the screen, but can negatively affect performance\n * for smaller lists.\n *\n * The default implementation will virtualize when this callback is not provided.\n */\n onShouldVirtualize?: (props: IListProps) => boolean;\n\n /** Class name to add to the cell of a checkbox. */\n checkboxCellClassName?: string;\n\n /** Whether the selection zone should enter modal state on touch. */\n enterModalSelectionOnTouch?: boolean;\n\n /** Options for column reordering using drag and drop. */\n columnReorderOptions?: IColumnReorderOptions;\n\n /** Callback to override default group height calculation used by list virtualization. */\n getGroupHeight?: IGroupedListProps['getGroupHeight'];\n\n /**\n * Whether to re-render a row only when props changed. Might cause regression when depending on external updates.\n * @defaultvalue false\n */\n useReducedRowRenderer?: boolean;\n\n /**\n * Props impacting the render style of cells. Since these have an impact on calculated column widths, they are\n * handled separately from normal theme styling, but they are passed to the styling system.\n */\n cellStyleProps?: ICellStyleProps;\n\n /** Whether to disable the built-in SelectionZone, so the host component can provide its own. */\n disableSelectionZone?: boolean;\n\n /**\n * Determines if an item is selected on focus.\n *\n * @defaultvalue true\n */\n isSelectedOnFocus?: boolean;\n\n /** Whether to animate updates */\n enableUpdateAnimations?: boolean;\n\n /**\n * Whether to use fast icon and check components. The icons can't be targeted by customization\n * but are still customizable via class names.\n * @defaultvalue true\n */\n useFastIcons?: boolean;\n\n /** Role for the list. */\n role?: string;\n\n /**\n * Properties to pass through to the FocusZone.\n */\n focusZoneProps?: IFocusZoneProps;\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport interface IColumn {\n /** A unique key for identifying the column. */\n key: string;\n\n /** Name to render on the column header. */\n name: string;\n\n /**\n * The field to pull the text value from for the column.\n * Can be unset if a custom `onRender` method is provided.\n */\n fieldName?: string;\n\n /**\n * If specified, the width of the column is a portion of the available space equal to this value divided by the sum\n * of all proportional column widths in the list. For example, if there is a list with two proportional columns that\n * have widths of 1 and 3, they will respectively occupy (1/4) = 25% and (3/4) = 75% of the remaining space. Note that\n * this relies on viewport measures and will not work well with skipViewportMeasures.\n */\n flexGrow?: number;\n\n /** Class name to apply to the column cell within each row. */\n className?: string;\n\n /** Custom overrides to the themed or default styles. */\n styles?: IStyleFunctionOrObject;\n\n /** Minimum width for the column. */\n minWidth: number;\n\n /**\n * If specified, the width of the column is a portion of the available space equal to this value divided by the sum\n * of all proportional column widths in the list. For example, if there is a list with two proportional columns that\n * have widths of 1 and 3, they will respectively occupy (1/4) = 25% and (2/4) = 75% of the remaining space. Note that\n * this relies on viewport measures and will not work well with skipViewportMeasures.\n */\n targetWidthProportion?: number;\n\n /**\n * Accessible label for the column. The column name will still be used as the primary label,\n * but this text (if specified) will be used as the column description.\n * WARNING: grid column descriptions are often ignored by screen readers, so any necessary information\n * should go directly in the column content\n */\n ariaLabel?: string;\n\n /** Whether the column is a header for the given row. There should be only one column with this set to true. */\n isRowHeader?: boolean;\n\n /** Maximum width for the column, if stretching is allowed in justified scenarios. */\n maxWidth?: number;\n\n /**\n * Defines how the column's header should render.\n * @defaultvalue ColumnActionsMode.clickable\n */\n columnActionsMode?: ColumnActionsMode;\n\n /** Custom icon to use in the column header. */\n iconName?: string;\n\n /**\n * Whether only the icon should be displayed in the column header.\n * If true, the column name and dropdown chevron will not be displayed.\n */\n isIconOnly?: boolean;\n\n /** Class name for the icon within the header. */\n iconClassName?: string;\n\n /**\n * If true, allow the column to be collapsed when rendered in justified layout.\n * @deprecated Use `isCollapsible`\n */\n isCollapsable?: boolean;\n\n /** If true, allow the column to be collapsed when rendered in justified layout. */\n isCollapsible?: boolean;\n\n /** If true, column header will render an icon indicating column is sortable while unsorted */\n showSortIconWhenUnsorted?: boolean;\n\n /** Determines if the column is currently sorted. Renders a sort arrow in the column header. */\n isSorted?: boolean;\n\n /** Determines if the sort arrow is pointed down (descending) or up. */\n isSortedDescending?: boolean;\n\n /** Determines if the column can be resized. */\n isResizable?: boolean;\n\n /** Determines if the column can render multi-line text. */\n isMultiline?: boolean;\n\n /** Custom renderer for cell content, instead of the default text rendering. */\n onRender?: (item?: any, index?: number, column?: IColumn) => any;\n\n /** Custom override for the parent list's `getCellValueKey`. */\n getValueKey?: (item?: any, index?: number, column?: IColumn) => string;\n\n onRenderField?: IRenderFunction;\n\n /** Custom renderer for column header divider. */\n onRenderDivider?: IRenderFunction;\n\n /** Custom renderer for filter icon. */\n onRenderFilterIcon?: IRenderFunction;\n\n /** Custom renderer for column header content, instead of the default text rendering. */\n onRenderHeader?: IRenderFunction;\n\n /** Whether the list is filtered by this column. If true, shows a filter icon next to this column's name. */\n isFiltered?: boolean;\n\n /** Callback for when the user clicks on the column header. */\n onColumnClick?: (ev: React.MouseEvent, column: IColumn) => void;\n\n /** Callback for when the user opens the column header context menu. */\n onColumnContextMenu?: (column?: IColumn, ev?: React.MouseEvent) => void;\n\n /**\n * Callback for when the column is resized (`width` is the current width).\n *\n * Prefer this over `DetailsList`'s `onColumnResize` if you require the `IColumn` to report its width\n * after every resize event. Consider debouncing the callback if resize events occur frequently.\n */\n onColumnResize?: (width?: number) => void;\n\n /** Whether the list is grouped by this column. If true, shows a grouped icon next to this column's name. */\n isGrouped?: boolean;\n\n /** Arbitrary data passthrough which can be used by the caller. */\n data?: any;\n\n /** Internal only value. */\n calculatedWidth?: number;\n\n /**\n * Internal only value.\n * Remembers the actual width of the column in any case.\n * `calculatedWidth` is only saved when it's defined by user, not for justified calculations.\n */\n currentWidth?: number;\n\n /** Class name to apply to the column header cell. */\n headerClassName?: string;\n\n /** If true, add additional LTR padding-right to column and cells. */\n isPadded?: boolean;\n\n /**\n * Accessible label for indicating that the list is sorted by this column in ascending order.\n * This will be read after the main column header label.\n */\n sortAscendingAriaLabel?: string;\n\n /**\n * Accessible label for indicating that the list is sorted by this column in descending order.\n * This will be read after the main column header label.\n */\n sortDescendingAriaLabel?: string;\n\n /**\n * Accessible label for indicating that the list could be sorted by this column but isn't currently.\n * This will be read after the main column header label.\n */\n sortableAriaLabel?: string;\n\n /** Accessible label for the status of this column when grouped. */\n groupAriaLabel?: string;\n\n /** Accessible label for the status of this column when filtered. */\n filterAriaLabel?: string;\n\n /** Whether a dropdown menu is open so that the appropriate ARIA attributes are rendered. */\n isMenuOpen?: boolean;\n}\n\n/**\n * Enum to describe how a particular column header behaves.\n * This is used to to specify the property `IColumn.columnActionsMode`.\n * If `IColumn.columnActionsMode` is undefined, it's equivalent to `ColumnActionsMode.clickable`.\n * {@docCategory DetailsList}\n */\nexport enum ColumnActionsMode {\n /** Renders the column header as disabled. */\n disabled = 0,\n\n /** Renders the column header as clickable. Default value. */\n clickable = 1,\n\n /** Renders the column header as clickable and displays the dropdown chevron. */\n hasDropdown = 2,\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport enum ConstrainMode {\n /** Lets the content grow which allows the page to manage scrolling. */\n unconstrained = 0,\n\n /** Constrains the list to the given layout space. */\n horizontalConstrained = 1,\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport interface IColumnReorderOptions {\n /**\n * Specifies the number fixed columns from left\n * @defaultvalue 0\n */\n frozenColumnCountFromStart?: number;\n\n /**\n * Specifies the number fixed columns from right\n * @defaultvalue 0\n */\n frozenColumnCountFromEnd?: number;\n\n /**\n * Callback to handle when dragging on this column's DetailsHeader has started.\n */\n onColumnDragStart?: (dragStarted: boolean) => void;\n\n /**\n * Callback to handle column reordering.\n * `draggedIndex` is the source column index, which should be placed at `targetIndex`.\n * @deprecated Use `onColumnDrop` instead.\n */\n handleColumnReorder?: (draggedIndex: number, targetIndex: number) => void;\n\n /**\n * Callback to handle column reordering.\n * `draggedIndex` is the source column index, which should be placed at `targetIndex`.\n */\n onColumnDrop?: (dragDropDetails: IColumnDragDropDetails) => void;\n\n /**\n * Callback to handle when dragging on this column's DetailsHeader has finished.\n */\n onDragEnd?: (columnDropLocationDetails: ColumnDragEndLocation) => void;\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport interface IColumnDragDropDetails {\n /**\n * Specifies the source column index\n * @defaultvalue -1\n */\n draggedIndex: number;\n\n /**\n * Specifies the target column index\n * @defaultvalue -1\n */\n targetIndex: number;\n}\n\n/**\n * Enum to describe where the column has been dropped, after starting the drag\n * {@docCategory DetailsList}\n */\nexport enum ColumnDragEndLocation {\n /** Drag ended outside of current list */\n outside = 0,\n\n /** Drag ended within current list */\n surface = 1,\n\n /** Drag ended on header */\n header = 2,\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport enum DetailsListLayoutMode {\n /**\n * Lets the user resize columns and makes not attempt to fit them.\n */\n fixedColumns = 0,\n\n /**\n * Manages which columns are visible, tries to size them according to their min/max rules and drops\n * off columns that can't fit and have isCollapsible set.\n */\n justified = 1,\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport enum CheckboxVisibility {\n /** Visible on hover. */\n onHover = 0,\n\n /** Visible always. */\n always = 1,\n\n /** Hide checkboxes. */\n hidden = 2,\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport type IDetailsListStyleProps = Required> &\n Pick & {\n /** Whether the list is horizontally constrained */\n isHorizontalConstrained?: boolean;\n\n /** Whether the list is in compact mode */\n compact?: boolean;\n\n /** Whether the list is fixed in size */\n isFixed?: boolean;\n };\n\n/**\n * {@docCategory DetailsList}\n */\nexport interface IDetailsListStyles {\n root: IStyle;\n focusZone: IStyle;\n headerWrapper: IStyle;\n contentWrapper: IStyle;\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport interface IDetailsGroupRenderProps extends IGroupRenderProps {\n onRenderFooter?: IRenderFunction;\n onRenderHeader?: IRenderFunction;\n}\n\n/**\n * {@docCategory DetailsList}\n */\nexport interface IDetailsGroupDividerProps extends IGroupDividerProps, IDetailsItemProps {}\n\nexport interface IDetailsListCheckboxProps extends IDetailsCheckboxProps {}\n\nexport type {\n IDetailsHeaderProps,\n IDetailsRowBaseProps,\n IDetailsHeaderBaseProps,\n IDetailsFooterBaseProps,\n IDragDropContext,\n IDragDropEvents,\n IDragDropHelper,\n IDragDropOptions,\n IViewport,\n IWithViewportProps,\n};\n","/**\n * Simulated enum for keycodes. These will get inlined by uglify when used much like an enum\n *\n * @public\n * {@docCategory KeyCodes}\n */\nexport const KeyCodes = {\n backspace: 8 as 8,\n tab: 9 as 9,\n enter: 13 as 13,\n shift: 16 as 16,\n ctrl: 17 as 17,\n alt: 18 as 18,\n pauseBreak: 19 as 19,\n capslock: 20 as 20,\n escape: 27 as 27,\n space: 32 as 32,\n pageUp: 33 as 33,\n pageDown: 34 as 34,\n end: 35 as 35,\n home: 36 as 36,\n left: 37 as 37,\n up: 38 as 38,\n right: 39 as 39,\n down: 40 as 40,\n insert: 45 as 45,\n del: 46 as 46,\n zero: 48 as 48,\n one: 49 as 49,\n two: 50 as 50,\n three: 51 as 51,\n four: 52 as 52,\n five: 53 as 53,\n six: 54 as 54,\n seven: 55 as 55,\n eight: 56 as 56,\n nine: 57 as 57,\n colon: 58 as 58,\n a: 65 as 65,\n b: 66 as 66,\n c: 67 as 67,\n d: 68 as 68,\n e: 69 as 69,\n f: 70 as 70,\n g: 71 as 71,\n h: 72 as 72,\n i: 73 as 73,\n j: 74 as 74,\n k: 75 as 75,\n l: 76 as 76,\n m: 77 as 77,\n n: 78 as 78,\n o: 79 as 79,\n p: 80 as 80,\n q: 81 as 81,\n r: 82 as 82,\n s: 83 as 83,\n t: 84 as 84,\n u: 85 as 85,\n v: 86 as 86,\n w: 87 as 87,\n x: 88 as 88,\n y: 89 as 89,\n z: 90 as 90,\n leftWindow: 91 as 91,\n rightWindow: 92 as 92,\n select: 93 as 93,\n /* eslint-disable @typescript-eslint/naming-convention */\n zero_numpad: 96 as 96,\n one_numpad: 97 as 97,\n two_numpad: 98 as 98,\n three_numpad: 99 as 99,\n four_numpad: 100 as 100,\n five_numpad: 101 as 101,\n six_numpad: 102 as 102,\n seven_numpad: 103 as 103,\n eight_numpad: 104 as 104,\n nine_numpad: 105 as 105,\n /* eslint-enable @typescript-eslint/naming-convention */\n multiply: 106 as 106,\n add: 107 as 107,\n subtract: 109 as 109,\n decimalPoint: 110 as 110,\n divide: 111 as 111,\n f1: 112 as 112,\n f2: 113 as 113,\n f3: 114 as 114,\n f4: 115 as 115,\n f5: 116 as 116,\n f6: 117 as 117,\n f7: 118 as 118,\n f8: 119 as 119,\n f9: 120 as 120,\n f10: 121 as 121,\n f11: 122 as 122,\n f12: 123 as 123,\n numlock: 144 as 144,\n scrollLock: 145 as 145,\n semicolon: 186 as 186,\n equalSign: 187 as 187,\n comma: 188 as 188,\n dash: 189 as 189,\n period: 190 as 190,\n forwardSlash: 191 as 191,\n graveAccent: 192 as 192,\n openBracket: 219 as 219,\n backSlash: 220 as 220,\n closeBracket: 221 as 221,\n singleQuote: 222 as 222,\n};\nexport type KeyCodes = number;\n","import _typeof from \"./typeof.js\";\nexport default function _regeneratorRuntime() {\n \"use strict\";\n /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n\n _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n };\n\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return generator._invoke = function (innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }(innerFn, self, context), generator;\n }\n\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n\n exports.wrap = wrap;\n var ContinueSentinel = {};\n\n function Generator() {}\n\n function GeneratorFunction() {}\n\n function GeneratorFunctionPrototype() {}\n\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n\n reject(record.arg);\n }\n\n var previousPromise;\n\n this._invoke = function (method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n };\n }\n\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n\n if (undefined === method) {\n if (context.delegate = null, \"throw\" === context.method) {\n if (delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method)) return ContinueSentinel;\n context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) {\n if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n }\n\n return next.value = undefined, next.done = !0, next;\n };\n\n return next.next = next;\n }\n }\n\n return {\n next: doneResult\n };\n }\n\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, \"constructor\", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (object) {\n var keys = [];\n\n for (var key in object) {\n keys.push(key);\n }\n\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) {\n \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n }\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n\n return thrown;\n }\n }\n\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}","import { FieldElement } from '../types';\n\nexport default (element: FieldElement): element is HTMLInputElement =>\n element.type === 'checkbox';\n","export default (value: unknown): value is Date => value instanceof Date;\n","export default (value: unknown): value is null | undefined => value == null;\n","import isDateObject from './isDateObject';\nimport isNullOrUndefined from './isNullOrUndefined';\n\nexport const isObjectType = (value: unknown) => typeof value === 'object';\n\nexport default (value: unknown): value is T =>\n !isNullOrUndefined(value) &&\n !Array.isArray(value) &&\n isObjectType(value) &&\n !isDateObject(value);\n","import isCheckBoxInput from '../utils/isCheckBoxInput';\nimport isObject from '../utils/isObject';\n\ntype Event = { target: any };\n\nexport default (event: unknown) =>\n isObject(event) && (event as Event).target\n ? isCheckBoxInput((event as Event).target)\n ? (event as Event).target.checked\n : (event as Event).target.value\n : event;\n","import { InternalFieldName } from '../types';\n\nimport getNodeParentName from './getNodeParentName';\n\nexport default (names: Set, name: InternalFieldName) =>\n names.has(getNodeParentName(name));\n","export default (name: string) =>\n name.substring(0, name.search(/\\.\\d+(\\.|$)/)) || name;\n","export default (value: TValue[]) =>\n Array.isArray(value) ? value.filter(Boolean) : [];\n","export default (val: unknown): val is undefined => val === undefined;\n","import compact from './compact';\nimport isNullOrUndefined from './isNullOrUndefined';\nimport isObject from './isObject';\nimport isUndefined from './isUndefined';\n\nexport default (obj: T, path: string, defaultValue?: unknown): any => {\n if (!path || !isObject(obj)) {\n return defaultValue;\n }\n\n const result = compact(path.split(/[,[\\].]+?/)).reduce(\n (result, key) =>\n isNullOrUndefined(result) ? result : result[key as keyof {}],\n obj,\n );\n\n return isUndefined(result) || result === obj\n ? isUndefined(obj[path as keyof T])\n ? defaultValue\n : obj[path as keyof T]\n : result;\n};\n","import { ValidationMode } from './types';\n\nexport const EVENTS = {\n BLUR: 'blur',\n FOCUS_OUT: 'focusout',\n CHANGE: 'change',\n};\n\nexport const VALIDATION_MODE: ValidationMode = {\n onBlur: 'onBlur',\n onChange: 'onChange',\n onSubmit: 'onSubmit',\n onTouched: 'onTouched',\n all: 'all',\n};\n\nexport const INPUT_VALIDATION_RULES = {\n max: 'max',\n min: 'min',\n maxLength: 'maxLength',\n minLength: 'minLength',\n pattern: 'pattern',\n required: 'required',\n validate: 'validate',\n};\n","import React from 'react';\n\nimport { FieldValues, FormProviderProps, UseFormReturn } from './types';\n\nconst HookFormContext = React.createContext(null);\n\n/**\n * This custom hook allows you to access the form context. useFormContext is intended to be used in deeply nested structures, where it would become inconvenient to pass the context as a prop. To be used with {@link FormProvider}.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/useformcontext) • [Demo](https://codesandbox.io/s/react-hook-form-v7-form-context-ytudi)\n *\n * @returns return all useForm methods\n *\n * @example\n * ```tsx\n * function App() {\n * const methods = useForm();\n * const onSubmit = data => console.log(data);\n *\n * return (\n * \n *
\n * \n * \n * \n *
\n * );\n * }\n *\n * function NestedInput() {\n * const { register } = useFormContext(); // retrieve all hook methods\n * return ;\n * }\n * ```\n */\nexport const useFormContext = <\n TFieldValues extends FieldValues,\n>(): UseFormReturn =>\n React.useContext(HookFormContext) as unknown as UseFormReturn;\n\n/**\n * A provider component that propagates the `useForm` methods to all children components via [React Context](https://reactjs.org/docs/context.html) API. To be used with {@link useFormContext}.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/useformcontext) • [Demo](https://codesandbox.io/s/react-hook-form-v7-form-context-ytudi)\n *\n * @param props - all useFrom methods\n *\n * @example\n * ```tsx\n * function App() {\n * const methods = useForm();\n * const onSubmit = data => console.log(data);\n *\n * return (\n * \n *
\n * \n * \n * \n *
\n * );\n * }\n *\n * function NestedInput() {\n * const { register } = useFormContext(); // retrieve all hook methods\n * return ;\n * }\n * ```\n */\nexport const FormProvider = (\n props: FormProviderProps,\n) => {\n const { children, ...data } = props;\n return (\n \n {props.children}\n \n );\n};\n","import { VALIDATION_MODE } from '../constants';\nimport { FieldValues, FormState, ReadFormState } from '../types';\n\nexport default (\n formState: FormState,\n _proxyFormState: ReadFormState,\n localProxyFormState?: ReadFormState,\n isRoot = true,\n) => {\n const result = {} as typeof formState;\n\n for (const key in formState) {\n Object.defineProperty(result, key, {\n get: () => {\n const _key = key as keyof FormState & keyof ReadFormState;\n\n if (_proxyFormState[_key] !== VALIDATION_MODE.all) {\n _proxyFormState[_key] = !isRoot || VALIDATION_MODE.all;\n }\n\n localProxyFormState && (localProxyFormState[_key] = true);\n return formState[_key];\n },\n });\n }\n\n return result;\n};\n","import { EmptyObject } from '../types';\n\nimport isObject from './isObject';\n\nexport default (value: unknown): value is EmptyObject =>\n isObject(value) && !Object.keys(value).length;\n","import { VALIDATION_MODE } from '../constants';\nimport { ReadFormState } from '../types';\nimport isEmptyObject from '../utils/isEmptyObject';\n\nexport default , K extends ReadFormState>(\n formStateData: T,\n _proxyFormState: K,\n isRoot?: boolean,\n) => {\n const { name, ...formState } = formStateData;\n\n return (\n isEmptyObject(formState) ||\n Object.keys(formState).length >= Object.keys(_proxyFormState).length ||\n Object.keys(formState).find(\n (key) =>\n _proxyFormState[key as keyof ReadFormState] ===\n (!isRoot || VALIDATION_MODE.all),\n )\n );\n};\n","export default (value: T) => (Array.isArray(value) ? value : [value]);\n","import convertToArrayPayload from '../utils/convertToArrayPayload';\n\nexport default (\n name?: T,\n signalName?: string,\n exact?: boolean,\n) =>\n exact && signalName\n ? name === signalName\n : !name ||\n !signalName ||\n name === signalName ||\n convertToArrayPayload(name).some(\n (currentName) =>\n currentName &&\n (currentName.startsWith(signalName) ||\n signalName.startsWith(currentName)),\n );\n","import React from 'react';\n\nimport { Subject, Subscription } from './utils/createSubject';\n\ntype Props = {\n disabled?: boolean;\n subject: Subject;\n callback: (value: T) => void;\n};\n\nexport function useSubscribe(props: Props) {\n const _props = React.useRef(props);\n _props.current = props;\n\n React.useEffect(() => {\n const tearDown = (subscription: Subscription | false) => {\n if (subscription) {\n subscription.unsubscribe();\n }\n };\n\n const subscription =\n !props.disabled &&\n _props.current.subject.subscribe({\n next: _props.current.callback,\n });\n\n return () => tearDown(subscription);\n }, [props.disabled]);\n}\n","export default (value: unknown): value is string => typeof value === 'string';\n","import { FieldValues, InternalFieldName, Names } from '../types';\nimport get from '../utils/get';\nimport isString from '../utils/isString';\n\nexport default (\n names: string | string[] | undefined,\n _names: Names,\n formValues?: FieldValues,\n isGlobal?: boolean,\n) => {\n const isArray = Array.isArray(names);\n if (isString(names)) {\n isGlobal && _names.watch.add(names as InternalFieldName);\n return get(formValues, names as InternalFieldName);\n }\n\n if (isArray) {\n return names.map(\n (fieldName) => (\n isGlobal && _names.watch.add(fieldName as InternalFieldName),\n get(formValues, fieldName as InternalFieldName)\n ),\n );\n }\n\n isGlobal && (_names.watchAll = true);\n return formValues;\n};\n","export default (value: unknown): value is Function =>\n typeof value === 'function';\n","import isFunction from './isFunction';\n\nexport default (data: T): boolean => {\n for (const key in data) {\n if (isFunction(data[key])) {\n return true;\n }\n }\n return false;\n};\n","import React from 'react';\n\nimport getEventValue from './logic/getEventValue';\nimport isNameInFieldArray from './logic/isNameInFieldArray';\nimport get from './utils/get';\nimport { EVENTS } from './constants';\nimport {\n ControllerFieldState,\n Field,\n FieldPath,\n FieldPathValue,\n FieldValues,\n InternalFieldName,\n UnpackNestedValue,\n UseControllerProps,\n UseControllerReturn,\n} from './types';\nimport { useFormContext } from './useFormContext';\nimport { useFormState } from './useFormState';\nimport { useWatch } from './useWatch';\n\n/**\n * Custom hook to work with controlled component, this function provide you with both form and field level state. Re-render is isolated at the hook level.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/usecontroller) • [Demo](https://codesandbox.io/s/usecontroller-0o8px)\n *\n * @param props - the path name to the form field value, and validation rules.\n *\n * @returns field properties, field and form state. {@link UseControllerReturn}\n *\n * @example\n * ```tsx\n * function Input(props) {\n * const { field, fieldState, formState } = useController(props);\n * return (\n *
\n * \n *

{fieldState.isTouched && \"Touched\"}

\n *

{formState.isSubmitted ? \"submitted\" : \"\"}

\n *
\n * );\n * }\n * ```\n */\nexport function useController<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath = FieldPath,\n>(\n props: UseControllerProps,\n): UseControllerReturn {\n const methods = useFormContext();\n const { name, control = methods.control, shouldUnregister } = props;\n const isArrayField = isNameInFieldArray(control._names.array, name);\n const value = useWatch({\n control,\n name,\n defaultValue: get(\n control._formValues,\n name,\n get(control._defaultValues, name, props.defaultValue),\n ),\n exact: true,\n }) as UnpackNestedValue>;\n const formState = useFormState({\n control,\n name,\n });\n\n const _registerProps = React.useRef(\n control.register(name, {\n ...props.rules,\n value,\n }),\n );\n\n React.useEffect(() => {\n const updateMounted = (name: InternalFieldName, value: boolean) => {\n const field: Field = get(control._fields, name);\n\n if (field) {\n field._f.mount = value;\n }\n };\n\n updateMounted(name, true);\n\n return () => {\n const _shouldUnregisterField =\n control._options.shouldUnregister || shouldUnregister;\n\n (\n isArrayField\n ? _shouldUnregisterField && !control._stateFlags.action\n : _shouldUnregisterField\n )\n ? control.unregister(name)\n : updateMounted(name, false);\n };\n }, [name, control, isArrayField, shouldUnregister]);\n\n return {\n field: {\n name,\n value,\n onChange: React.useCallback(\n (event) => {\n _registerProps.current.onChange({\n target: {\n value: getEventValue(event),\n name: name as InternalFieldName,\n },\n type: EVENTS.CHANGE,\n });\n },\n [name],\n ),\n onBlur: React.useCallback(() => {\n _registerProps.current.onBlur({\n target: {\n value: get(control._formValues, name),\n name: name as InternalFieldName,\n },\n type: EVENTS.BLUR,\n });\n }, [name, control]),\n ref: React.useCallback(\n (elm) => {\n const field = get(control._fields, name);\n\n if (elm && field && elm.focus) {\n field._f.ref = {\n focus: () => elm.focus(),\n setCustomValidity: (message: string) =>\n elm.setCustomValidity(message),\n reportValidity: () => elm.reportValidity(),\n };\n }\n },\n [name, control._fields],\n ),\n },\n formState,\n fieldState: Object.defineProperties(\n {},\n {\n invalid: {\n get: () => !!get(formState.errors, name),\n },\n isDirty: {\n get: () => !!get(formState.dirtyFields, name),\n },\n isTouched: {\n get: () => !!get(formState.touchedFields, name),\n },\n error: {\n get: () => get(formState.errors, name),\n },\n },\n ) as ControllerFieldState,\n };\n}\n","import React from 'react';\n\nimport generateWatchOutput from './logic/generateWatchOutput';\nimport shouldSubscribeByName from './logic/shouldSubscribeByName';\nimport isObject from './utils/isObject';\nimport isUndefined from './utils/isUndefined';\nimport objectHasFunction from './utils/objectHasFunction';\nimport {\n Control,\n DeepPartialSkipArrayKey,\n FieldPath,\n FieldPathValue,\n FieldPathValues,\n FieldValues,\n InternalFieldName,\n UnpackNestedValue,\n UseWatchProps,\n} from './types';\nimport { useFormContext } from './useFormContext';\nimport { useSubscribe } from './useSubscribe';\n\n/**\n * Subscribe to the entire form values change and re-render at the hook level.\n *\n * @remarks\n *\n * [API](https://react-hook-form.com/api/usewatch) • [Demo](https://codesandbox.io/s/react-hook-form-v7-ts-usewatch-h9i5e)\n *\n * @param props - defaultValue, disable subscription and match exact name.\n *\n * @example\n * ```tsx\n * const { watch } = useForm();\n * const values = useWatch({\n * control,\n * defaultValue: {\n * name: \"data\"\n * },\n * exact: false,\n * })\n * ```\n */\nexport function useWatch<\n TFieldValues extends FieldValues = FieldValues,\n>(props: {\n defaultValue?: UnpackNestedValue>;\n control?: Control;\n disabled?: boolean;\n exact?: boolean;\n}): UnpackNestedValue>;\n/**\n * Custom hook to subscribe to field change and isolate re-rendering at the component level.\n *\n * @remarks\n *\n * [API](https://react-hook-form.com/api/usewatch) • [Demo](https://codesandbox.io/s/react-hook-form-v7-ts-usewatch-h9i5e)\n *\n * @param props - defaultValue, disable subscription and match exact name.\n *\n * @example\n * ```tsx\n * const { watch } = useForm();\n * const values = useWatch({\n * control,\n * name: \"fieldA\",\n * defaultValue: \"default value\",\n * exact: false,\n * })\n * ```\n */\nexport function useWatch<\n TFieldValues extends FieldValues = FieldValues,\n TFieldName extends FieldPath = FieldPath,\n>(props: {\n name: TFieldName;\n defaultValue?: FieldPathValue;\n control?: Control;\n disabled?: boolean;\n exact?: boolean;\n}): FieldPathValue;\n/**\n * Custom hook to subscribe to field change and isolate re-rendering at the component level.\n *\n * @remarks\n *\n * [API](https://react-hook-form.com/api/usewatch) • [Demo](https://codesandbox.io/s/react-hook-form-v7-ts-usewatch-h9i5e)\n *\n * @param props - defaultValue, disable subscription and match exact name.\n *\n * @example\n * ```tsx\n * const { watch } = useForm();\n * const values = useWatch({\n * control,\n * name: [\"fieldA\", \"fieldB\"],\n * defaultValue: {\n * fieldA: \"data\",\n * fieldB: \"data\"\n * },\n * exact: false,\n * })\n * ```\n */\nexport function useWatch<\n TFieldValues extends FieldValues = FieldValues,\n TFieldNames extends readonly FieldPath[] = readonly FieldPath[],\n>(props: {\n name: readonly [...TFieldNames];\n defaultValue?: UnpackNestedValue>;\n control?: Control;\n disabled?: boolean;\n exact?: boolean;\n}): FieldPathValues;\n/**\n * Custom hook to subscribe to field change and isolate re-rendering at the component level.\n *\n * @remarks\n *\n * [API](https://react-hook-form.com/api/usewatch) • [Demo](https://codesandbox.io/s/react-hook-form-v7-ts-usewatch-h9i5e)\n *\n * @example\n * ```tsx\n * // can skip passing down the control into useWatch if the form is wrapped with the FormProvider\n * const values = useWatch()\n * ```\n */\nexport function useWatch<\n TFieldValues extends FieldValues = FieldValues,\n TFieldNames extends FieldPath[] = FieldPath[],\n>(): FieldPathValues;\n/**\n * Custom hook to subscribe to field change and isolate re-rendering at the component level.\n *\n * @remarks\n *\n * [API](https://react-hook-form.com/api/usewatch) • [Demo](https://codesandbox.io/s/react-hook-form-v7-ts-usewatch-h9i5e)\n *\n * @example\n * ```tsx\n * const { watch } = useForm();\n * const values = useWatch({\n * name: \"fieldName\"\n * control,\n * })\n * ```\n */\nexport function useWatch(\n props?: UseWatchProps,\n) {\n const methods = useFormContext();\n const {\n control = methods.control,\n name,\n defaultValue,\n disabled,\n exact,\n } = props || {};\n const _name = React.useRef(name);\n\n _name.current = name;\n\n const callback = React.useCallback(\n (formState) => {\n if (\n shouldSubscribeByName(\n _name.current as InternalFieldName,\n formState.name,\n exact,\n )\n ) {\n const fieldValues = generateWatchOutput(\n _name.current as InternalFieldName | InternalFieldName[],\n control._names,\n formState.values || control._formValues,\n );\n\n updateValue(\n isUndefined(_name.current) ||\n (isObject(fieldValues) && !objectHasFunction(fieldValues))\n ? { ...fieldValues }\n : Array.isArray(fieldValues)\n ? [...fieldValues]\n : isUndefined(fieldValues)\n ? defaultValue\n : fieldValues,\n );\n }\n },\n [control, exact, defaultValue],\n );\n\n useSubscribe({\n disabled,\n subject: control._subjects.watch,\n callback,\n });\n\n const [value, updateValue] = React.useState(\n isUndefined(defaultValue)\n ? control._getWatch(name as InternalFieldName)\n : defaultValue,\n );\n\n React.useEffect(() => {\n control._removeUnmounted();\n });\n\n return value;\n}\n","import React from 'react';\n\nimport getProxyFormState from './logic/getProxyFormState';\nimport shouldRenderFormState from './logic/shouldRenderFormState';\nimport shouldSubscribeByName from './logic/shouldSubscribeByName';\nimport {\n FieldValues,\n InternalFieldName,\n UseFormStateProps,\n UseFormStateReturn,\n} from './types';\nimport { useFormContext } from './useFormContext';\nimport { useSubscribe } from './useSubscribe';\n\n/**\n * This custom hook allows you to subscribe to each form state, and isolate the re-render at the custom hook level. It has its scope in terms of form state subscription, so it would not affect other useFormState and useForm. Using this hook can reduce the re-render impact on large and complex form application.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/useformstate) • [Demo](https://codesandbox.io/s/useformstate-75xly)\n *\n * @param props - include options on specify fields to subscribe. {@link UseFormStateReturn}\n *\n * @example\n * ```tsx\n * function App() {\n * const { register, handleSubmit, control } = useForm({\n * defaultValues: {\n * firstName: \"firstName\"\n * }});\n * const { dirtyFields } = useFormState({\n * control\n * });\n * const onSubmit = (data) => console.log(data);\n *\n * return (\n *
\n * \n * {dirtyFields.firstName &&

Field is dirty.

}\n * \n *
\n * );\n * }\n * ```\n */\nfunction useFormState(\n props?: UseFormStateProps,\n): UseFormStateReturn {\n const methods = useFormContext();\n const { control = methods.control, disabled, name, exact } = props || {};\n const [formState, updateFormState] = React.useState(control._formState);\n const _localProxyFormState = React.useRef({\n isDirty: false,\n dirtyFields: false,\n touchedFields: false,\n isValidating: false,\n isValid: false,\n errors: false,\n });\n const _name = React.useRef(name);\n const _mounted = React.useRef(true);\n\n _name.current = name;\n\n const callback = React.useCallback(\n (value) =>\n _mounted.current &&\n shouldSubscribeByName(\n _name.current as InternalFieldName,\n value.name,\n exact,\n ) &&\n shouldRenderFormState(value, _localProxyFormState.current) &&\n updateFormState({\n ...control._formState,\n ...value,\n }),\n [control, exact],\n );\n\n useSubscribe({\n disabled,\n callback,\n subject: control._subjects.state,\n });\n\n React.useEffect(() => {\n _mounted.current = true;\n return () => {\n _mounted.current = false;\n };\n }, []);\n\n return getProxyFormState(\n formState,\n control._proxyFormState,\n _localProxyFormState.current,\n false,\n );\n}\n\nexport { useFormState };\n","import { ControllerProps, FieldPath, FieldValues } from './types';\nimport { useController } from './useController';\n\n/**\n * Component based on `useController` hook to work with controlled component.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/usecontroller/controller) • [Demo](https://codesandbox.io/s/react-hook-form-v6-controller-ts-jwyzw) • [Video](https://www.youtube.com/watch?v=N2UNk_UCVyA)\n *\n * @param props - the path name to the form field value, and validation rules.\n *\n * @returns provide field handler functions, field and form state.\n *\n * @example\n * ```tsx\n * function App() {\n * const { control } = useForm({\n * defaultValues: {\n * test: \"\"\n * }\n * });\n *\n * return (\n *
\n * (\n * <>\n * \n *

{formState.isSubmitted ? \"submitted\" : \"\"}

\n *

{fieldState.isTouched ? \"touched\" : \"\"}

\n * \n * )}\n * />\n * \n * );\n * }\n * ```\n */\nconst Controller = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath = FieldPath,\n>(\n props: ControllerProps,\n) => props.render(useController(props));\n\nexport { Controller };\n","import {\n InternalFieldErrors,\n InternalFieldName,\n ValidateResult,\n} from '../types';\n\nexport default (\n name: InternalFieldName,\n validateAllFieldCriteria: boolean,\n errors: InternalFieldErrors,\n type: string,\n message: ValidateResult,\n) =>\n validateAllFieldCriteria\n ? {\n ...errors[name],\n types: {\n ...(errors[name] && errors[name]!.types ? errors[name]!.types : {}),\n [type]: message || true,\n },\n }\n : {};\n","export default (value: string) => /^\\w*$/.test(value);\n","import compact from './compact';\n\nexport default (input: string): string[] =>\n compact(input.replace(/[\"|']|\\]/g, '').split(/\\.|\\[/));\n","import { FieldValues } from '../types';\n\nimport isKey from './isKey';\nimport isObject from './isObject';\nimport stringToPath from './stringToPath';\n\nexport default function set(\n object: FieldValues,\n path: string,\n value?: unknown,\n) {\n let index = -1;\n const tempPath = isKey(path) ? [path] : stringToPath(path);\n const length = tempPath.length;\n const lastIndex = length - 1;\n\n while (++index < length) {\n const key = tempPath[index];\n let newValue = value;\n\n if (index !== lastIndex) {\n const objValue = object[key];\n newValue =\n isObject(objValue) || Array.isArray(objValue)\n ? objValue\n : !isNaN(+tempPath[index + 1])\n ? []\n : {};\n }\n object[key] = newValue;\n object = object[key];\n }\n return object;\n}\n","import { FieldRefs, InternalFieldName } from '../types';\nimport { get } from '../utils';\nimport isObject from '../utils/isObject';\nimport isUndefined from '../utils/isUndefined';\n\nconst focusFieldBy = (\n fields: FieldRefs,\n callback: (name: string) => boolean,\n fieldsNames?: Set | InternalFieldName[],\n) => {\n for (const key of fieldsNames || Object.keys(fields)) {\n const field = get(fields, key);\n\n if (field) {\n const { _f, ...currentField } = field;\n\n if (_f && callback(_f.name)) {\n if (_f.ref.focus && isUndefined(_f.ref.focus())) {\n break;\n } else if (_f.refs) {\n _f.refs[0].focus();\n break;\n }\n } else if (isObject(currentField)) {\n focusFieldBy(currentField, callback);\n }\n }\n }\n};\n\nexport default focusFieldBy;\n","import { InternalFieldName, Names } from '../types';\n\nexport default (\n name: InternalFieldName,\n _names: Names,\n isBlurEvent?: boolean,\n) =>\n !isBlurEvent &&\n (_names.watchAll ||\n _names.watch.has(name) ||\n [..._names.watch].some(\n (watchName) =>\n name.startsWith(watchName) &&\n /^\\.\\w+/.test(name.slice(watchName.length)),\n ));\n","export default typeof window !== 'undefined' &&\n typeof window.HTMLElement !== 'undefined' &&\n typeof document !== 'undefined';\n","import isFunction from './isFunction';\nimport isObject from './isObject';\nimport isWeb from './isWeb';\n\nexport default function cloneObject(data: T): T {\n let copy: any;\n const isArray = Array.isArray(data);\n\n if (data instanceof Date) {\n copy = new Date(data);\n } else if (data instanceof Set) {\n copy = new Set(data);\n } else if (\n !(isWeb && (data instanceof Blob || data instanceof FileList)) &&\n (isArray || isObject(data))\n ) {\n copy = isArray ? [] : {};\n for (const key in data) {\n if (isFunction(data[key])) {\n copy = data;\n break;\n }\n copy[key] = cloneObject(data[key]);\n }\n } else {\n return data;\n }\n\n return copy;\n}\n","import isEmptyObject from './isEmptyObject';\nimport isKey from './isKey';\nimport isObject from './isObject';\nimport isUndefined from './isUndefined';\nimport stringToPath from './stringToPath';\n\nfunction baseGet(object: any, updatePath: (string | number)[]) {\n const length = updatePath.slice(0, -1).length;\n let index = 0;\n\n while (index < length) {\n object = isUndefined(object) ? index++ : object[updatePath[index++]];\n }\n\n return object;\n}\n\nexport default function unset(object: any, path: string) {\n const updatePath = isKey(path) ? [path] : stringToPath(path);\n const childObject =\n updatePath.length == 1 ? object : baseGet(object, updatePath);\n const key = updatePath[updatePath.length - 1];\n let previousObjRef;\n\n if (childObject) {\n delete childObject[key];\n }\n\n for (let k = 0; k < updatePath.slice(0, -1).length; k++) {\n let index = -1;\n let objectRef;\n const currentPaths = updatePath.slice(0, -(k + 1));\n const currentPathsLength = currentPaths.length - 1;\n\n if (k > 0) {\n previousObjRef = object;\n }\n\n while (++index < currentPaths.length) {\n const item = currentPaths[index];\n objectRef = objectRef ? objectRef[item] : object[item];\n\n if (\n currentPathsLength === index &&\n ((isObject(objectRef) && isEmptyObject(objectRef)) ||\n (Array.isArray(objectRef) &&\n !objectRef.filter((data) => !isUndefined(data)).length))\n ) {\n previousObjRef ? delete previousObjRef[item] : delete object[item];\n }\n\n previousObjRef = objectRef;\n }\n }\n\n return object;\n}\n","import { Noop } from '../types';\n\nexport type Observer = {\n next: (value: T) => void;\n};\n\nexport type Subscription = {\n unsubscribe: Noop;\n};\n\nexport type Subject = {\n readonly observers: Observer[];\n subscribe: (value: Observer) => Subscription;\n unsubscribe: Noop;\n} & Observer;\n\nexport default function createSubject(): Subject {\n let _observers: Observer[] = [];\n\n const next = (value: T) => {\n for (const observer of _observers) {\n observer.next(value);\n }\n };\n\n const subscribe = (observer: Observer): Subscription => {\n _observers.push(observer);\n return {\n unsubscribe: () => {\n _observers = _observers.filter((o) => o !== observer);\n },\n };\n };\n\n const unsubscribe = () => {\n _observers = [];\n };\n\n return {\n get observers() {\n return _observers;\n },\n next,\n subscribe,\n unsubscribe,\n };\n}\n","import { Primitive } from '../types';\n\nimport isNullOrUndefined from './isNullOrUndefined';\nimport { isObjectType } from './isObject';\n\nexport default (value: unknown): value is Primitive =>\n isNullOrUndefined(value) || !isObjectType(value);\n","import isObject from '../utils/isObject';\n\nimport isDateObject from './isDateObject';\nimport isPrimitive from './isPrimitive';\n\nexport default function deepEqual(object1: any, object2: any) {\n if (isPrimitive(object1) || isPrimitive(object2)) {\n return object1 === object2;\n }\n\n if (isDateObject(object1) && isDateObject(object2)) {\n return object1.getTime() === object2.getTime();\n }\n\n const keys1 = Object.keys(object1);\n const keys2 = Object.keys(object2);\n\n if (keys1.length !== keys2.length) {\n return false;\n }\n\n for (const key of keys1) {\n const val1 = object1[key];\n\n if (!keys2.includes(key)) {\n return false;\n }\n\n if (key !== 'ref') {\n const val2 = object2[key];\n\n if (\n (isDateObject(val1) && isDateObject(val2)) ||\n (isObject(val1) && isObject(val2)) ||\n (Array.isArray(val1) && Array.isArray(val2))\n ? !deepEqual(val1, val2)\n : val1 !== val2\n ) {\n return false;\n }\n }\n }\n\n return true;\n}\n","import { VALIDATION_MODE } from '../constants';\nimport { Mode } from '../types';\n\nexport default (\n mode?: Mode,\n): {\n isOnSubmit: boolean;\n isOnBlur: boolean;\n isOnChange: boolean;\n isOnAll: boolean;\n isOnTouch: boolean;\n} => ({\n isOnSubmit: !mode || mode === VALIDATION_MODE.onSubmit,\n isOnBlur: mode === VALIDATION_MODE.onBlur,\n isOnChange: mode === VALIDATION_MODE.onChange,\n isOnAll: mode === VALIDATION_MODE.all,\n isOnTouch: mode === VALIDATION_MODE.onTouched,\n});\n","export default (value: unknown): value is boolean => typeof value === 'boolean';\n","import { FieldElement } from '../types';\n\nexport default (element: FieldElement): element is HTMLInputElement =>\n element.type === 'file';\n","export default (value: unknown): value is HTMLElement => {\n const owner = value ? ((value as HTMLElement).ownerDocument as Document) : 0;\n const ElementClass =\n owner && owner.defaultView ? owner.defaultView.HTMLElement : HTMLElement;\n return value instanceof ElementClass;\n};\n","import { FieldElement } from '../types';\n\nexport default (element: FieldElement): element is HTMLSelectElement =>\n element.type === `select-multiple`;\n","import { FieldElement } from '../types';\n\nexport default (element: FieldElement): element is HTMLInputElement =>\n element.type === 'radio';\n","import { FieldElement } from '../types';\n\nimport isCheckBoxInput from './isCheckBoxInput';\nimport isRadioInput from './isRadioInput';\n\nexport default (ref: FieldElement): ref is HTMLInputElement =>\n isRadioInput(ref) || isCheckBoxInput(ref);\n","import { Ref } from '../types';\n\nimport isHTMLElement from './isHTMLElement';\n\nexport default (ref: Ref) => isHTMLElement(ref) && ref.isConnected;\n","import deepEqual from '../utils/deepEqual';\nimport isNullOrUndefined from '../utils/isNullOrUndefined';\nimport isObject from '../utils/isObject';\nimport isPrimitive from '../utils/isPrimitive';\nimport isUndefined from '../utils/isUndefined';\nimport objectHasFunction from '../utils/objectHasFunction';\n\nfunction markFieldsDirty(data: U, fields: Record = {}) {\n const isParentNodeArray = Array.isArray(data);\n\n if (isObject(data) || isParentNodeArray) {\n for (const key in data) {\n if (\n Array.isArray(data[key]) ||\n (isObject(data[key]) && !objectHasFunction(data[key]))\n ) {\n fields[key] = Array.isArray(data[key]) ? [] : {};\n markFieldsDirty(data[key], fields[key]);\n } else if (!isNullOrUndefined(data[key])) {\n fields[key] = true;\n }\n }\n }\n\n return fields;\n}\n\nfunction getDirtyFieldsFromDefaultValues(\n data: T,\n formValues: T,\n dirtyFieldsFromValues: any,\n) {\n const isParentNodeArray = Array.isArray(data);\n\n if (isObject(data) || isParentNodeArray) {\n for (const key in data) {\n if (\n Array.isArray(data[key]) ||\n (isObject(data[key]) && !objectHasFunction(data[key]))\n ) {\n if (\n isUndefined(formValues) ||\n isPrimitive(dirtyFieldsFromValues[key])\n ) {\n dirtyFieldsFromValues[key] = Array.isArray(data[key])\n ? markFieldsDirty(data[key], [])\n : { ...markFieldsDirty(data[key]) };\n } else {\n getDirtyFieldsFromDefaultValues(\n data[key],\n isNullOrUndefined(formValues) ? {} : formValues[key],\n dirtyFieldsFromValues[key],\n );\n }\n } else {\n dirtyFieldsFromValues[key] = !deepEqual(data[key], formValues[key]);\n }\n }\n }\n\n return dirtyFieldsFromValues;\n}\n\nexport default (defaultValues: T, formValues: T) =>\n getDirtyFieldsFromDefaultValues(\n defaultValues,\n formValues,\n markFieldsDirty(formValues),\n );\n","import isUndefined from '../utils/isUndefined';\n\ntype CheckboxFieldResult = {\n isValid: boolean;\n value: string | string[] | boolean | undefined;\n};\n\nconst defaultResult: CheckboxFieldResult = {\n value: false,\n isValid: false,\n};\n\nconst validResult = { value: true, isValid: true };\n\nexport default (options?: HTMLInputElement[]): CheckboxFieldResult => {\n if (Array.isArray(options)) {\n if (options.length > 1) {\n const values = options\n .filter((option) => option && option.checked && !option.disabled)\n .map((option) => option.value);\n return { value: values, isValid: !!values.length };\n }\n\n return options[0].checked && !options[0].disabled\n ? // @ts-expect-error expected to work in the browser\n options[0].attributes && !isUndefined(options[0].attributes.value)\n ? isUndefined(options[0].value) || options[0].value === ''\n ? validResult\n : { value: options[0].value, isValid: true }\n : validResult\n : defaultResult;\n }\n\n return defaultResult;\n};\n","import { Field, NativeFieldValue } from '../types';\nimport isNullOrUndefined from '../utils/isNullOrUndefined';\nimport isString from '../utils/isString';\nimport isUndefined from '../utils/isUndefined';\n\nexport default (\n value: T,\n { valueAsNumber, valueAsDate, setValueAs }: Field['_f'],\n) =>\n isUndefined(value)\n ? value\n : valueAsNumber\n ? value === '' || isNullOrUndefined(value)\n ? NaN\n : +value\n : valueAsDate && isString(value)\n ? new Date(value)\n : setValueAs\n ? setValueAs(value)\n : value;\n","type RadioFieldResult = {\n isValid: boolean;\n value: number | string | null;\n};\n\nconst defaultReturn: RadioFieldResult = {\n isValid: false,\n value: null,\n};\n\nexport default (options?: HTMLInputElement[]): RadioFieldResult =>\n Array.isArray(options)\n ? options.reduce(\n (previous, option): RadioFieldResult =>\n option && option.checked && !option.disabled\n ? {\n isValid: true,\n value: option.value,\n }\n : previous,\n defaultReturn,\n )\n : defaultReturn;\n","import { Field } from '../types';\nimport isCheckBox from '../utils/isCheckBoxInput';\nimport isFileInput from '../utils/isFileInput';\nimport isMultipleSelect from '../utils/isMultipleSelect';\nimport isRadioInput from '../utils/isRadioInput';\nimport isUndefined from '../utils/isUndefined';\n\nimport getCheckboxValue from './getCheckboxValue';\nimport getFieldValueAs from './getFieldValueAs';\nimport getRadioValue from './getRadioValue';\n\nexport default function getFieldValue(_f: Field['_f']) {\n const ref = _f.ref;\n\n if (_f.refs ? _f.refs.every((ref) => ref.disabled) : ref.disabled) {\n return;\n }\n\n if (isFileInput(ref)) {\n return ref.files;\n }\n\n if (isRadioInput(ref)) {\n return getRadioValue(_f.refs).value;\n }\n\n if (isMultipleSelect(ref)) {\n return [...ref.selectedOptions].map(({ value }) => value);\n }\n\n if (isCheckBox(ref)) {\n return getCheckboxValue(_f.refs).value;\n }\n\n return getFieldValueAs(isUndefined(ref.value) ? _f.ref.value : ref.value, _f);\n}\n","import {\n CriteriaMode,\n Field,\n FieldName,\n FieldRefs,\n FieldValues,\n InternalFieldName,\n} from '../types';\nimport { get } from '../utils';\nimport set from '../utils/set';\n\nexport default (\n fieldsNames: Set | InternalFieldName[],\n _fields: FieldRefs,\n criteriaMode?: CriteriaMode,\n shouldUseNativeValidation?: boolean | undefined,\n) => {\n const fields: Record = {};\n\n for (const name of fieldsNames) {\n const field: Field = get(_fields, name);\n\n field && set(fields, name, field._f);\n }\n\n return {\n criteriaMode,\n names: [...fieldsNames] as FieldName[],\n fields,\n shouldUseNativeValidation,\n };\n};\n","export default (value: unknown): value is RegExp => value instanceof RegExp;\n","import {\n ValidationRule,\n ValidationValue,\n ValidationValueMessage,\n} from '../types';\nimport isObject from '../utils/isObject';\nimport isRegex from '../utils/isRegex';\nimport isUndefined from '../utils/isUndefined';\n\nexport default (\n rule?: ValidationRule | ValidationValueMessage,\n) =>\n isUndefined(rule)\n ? undefined\n : isRegex(rule)\n ? rule.source\n : isObject(rule)\n ? isRegex(rule.value)\n ? rule.value.source\n : rule.value\n : rule;\n","import { Field } from '../types';\n\nexport default (options: Field['_f']) =>\n options.mount &&\n (options.required ||\n options.min ||\n options.max ||\n options.maxLength ||\n options.minLength ||\n options.pattern ||\n options.validate);\n","import { FieldError, FieldErrors, FieldValues } from '../types';\nimport get from '../utils/get';\nimport isKey from '../utils/isKey';\n\nexport default function schemaErrorLookup(\n errors: FieldErrors,\n _fields: FieldValues,\n name: string,\n): {\n error?: FieldError;\n name: string;\n} {\n const error = get(errors, name);\n\n if (error || isKey(name)) {\n return {\n error,\n name,\n };\n }\n\n const names = name.split('.');\n\n while (names.length) {\n const fieldName = names.join('.');\n const field = get(_fields, fieldName);\n const foundError = get(errors, fieldName);\n\n if (field && !Array.isArray(field) && name !== fieldName) {\n return { name };\n }\n\n if (foundError && foundError.type) {\n return {\n name: fieldName,\n error: foundError,\n };\n }\n\n names.pop();\n }\n\n return {\n name,\n };\n}\n","export default (\n isBlurEvent: boolean,\n isTouched: boolean,\n isSubmitted: boolean,\n reValidateMode: {\n isOnBlur: boolean;\n isOnChange: boolean;\n },\n mode: Partial<{\n isOnSubmit: boolean;\n isOnBlur: boolean;\n isOnChange: boolean;\n isOnTouch: boolean;\n isOnAll: boolean;\n }>,\n) => {\n if (mode.isOnAll) {\n return false;\n } else if (!isSubmitted && mode.isOnTouch) {\n return !(isTouched || isBlurEvent);\n } else if (isSubmitted ? reValidateMode.isOnBlur : mode.isOnBlur) {\n return !isBlurEvent;\n } else if (isSubmitted ? reValidateMode.isOnChange : mode.isOnChange) {\n return isBlurEvent;\n }\n return true;\n};\n","import compact from '../utils/compact';\nimport get from '../utils/get';\nimport unset from '../utils/unset';\n\nexport default (ref: T, name: string) =>\n !compact(get(ref, name)).length && unset(ref, name);\n","import React from 'react';\n\nimport { Message } from '../types';\nimport isString from '../utils/isString';\n\nexport default (value: unknown): value is Message =>\n isString(value) || React.isValidElement(value as JSX.Element);\n","import { FieldError, Ref, ValidateResult } from '../types';\nimport isBoolean from '../utils/isBoolean';\nimport isMessage from '../utils/isMessage';\n\nexport default function getValidateError(\n result: ValidateResult,\n ref: Ref,\n type = 'validate',\n): FieldError | void {\n if (\n isMessage(result) ||\n (Array.isArray(result) && result.every(isMessage)) ||\n (isBoolean(result) && !result)\n ) {\n return {\n type,\n message: isMessage(result) ? result : '',\n ref,\n };\n }\n}\n","import { ValidationRule } from '../types';\nimport isObject from '../utils/isObject';\nimport isRegex from '../utils/isRegex';\n\nexport default (validationData?: ValidationRule) =>\n isObject(validationData) && !isRegex(validationData)\n ? validationData\n : {\n value: validationData,\n message: '',\n };\n","import { INPUT_VALIDATION_RULES } from '../constants';\nimport {\n Field,\n FieldError,\n InternalFieldErrors,\n Message,\n NativeFieldValue,\n} from '../types';\nimport isBoolean from '../utils/isBoolean';\nimport isCheckBoxInput from '../utils/isCheckBoxInput';\nimport isEmptyObject from '../utils/isEmptyObject';\nimport isFileInput from '../utils/isFileInput';\nimport isFunction from '../utils/isFunction';\nimport isMessage from '../utils/isMessage';\nimport isNullOrUndefined from '../utils/isNullOrUndefined';\nimport isObject from '../utils/isObject';\nimport isRadioInput from '../utils/isRadioInput';\nimport isRegex from '../utils/isRegex';\nimport isString from '../utils/isString';\n\nimport appendErrors from './appendErrors';\nimport getCheckboxValue from './getCheckboxValue';\nimport getRadioValue from './getRadioValue';\nimport getValidateError from './getValidateError';\nimport getValueAndMessage from './getValueAndMessage';\n\nexport default async (\n field: Field,\n inputValue: T,\n validateAllFieldCriteria: boolean,\n shouldUseNativeValidation?: boolean,\n): Promise => {\n const {\n ref,\n refs,\n required,\n maxLength,\n minLength,\n min,\n max,\n pattern,\n validate,\n name,\n valueAsNumber,\n mount,\n disabled,\n } = field._f;\n if (!mount || disabled) {\n return {};\n }\n const inputRef: HTMLInputElement = refs ? refs[0] : (ref as HTMLInputElement);\n const setCustomValidity = (message?: string | boolean) => {\n if (shouldUseNativeValidation && inputRef.reportValidity) {\n inputRef.setCustomValidity(isBoolean(message) ? '' : message || ' ');\n inputRef.reportValidity();\n }\n };\n const error: InternalFieldErrors = {};\n const isRadio = isRadioInput(ref);\n const isCheckBox = isCheckBoxInput(ref);\n const isRadioOrCheckbox = isRadio || isCheckBox;\n const isEmpty =\n ((valueAsNumber || isFileInput(ref)) && !ref.value) ||\n inputValue === '' ||\n (Array.isArray(inputValue) && !inputValue.length);\n const appendErrorsCurry = appendErrors.bind(\n null,\n name,\n validateAllFieldCriteria,\n error,\n );\n const getMinMaxMessage = (\n exceedMax: boolean,\n maxLengthMessage: Message,\n minLengthMessage: Message,\n maxType = INPUT_VALIDATION_RULES.maxLength,\n minType = INPUT_VALIDATION_RULES.minLength,\n ) => {\n const message = exceedMax ? maxLengthMessage : minLengthMessage;\n error[name] = {\n type: exceedMax ? maxType : minType,\n message,\n ref,\n ...appendErrorsCurry(exceedMax ? maxType : minType, message),\n };\n };\n\n if (\n required &&\n ((!isRadioOrCheckbox && (isEmpty || isNullOrUndefined(inputValue))) ||\n (isBoolean(inputValue) && !inputValue) ||\n (isCheckBox && !getCheckboxValue(refs).isValid) ||\n (isRadio && !getRadioValue(refs).isValid))\n ) {\n const { value, message } = isMessage(required)\n ? { value: !!required, message: required }\n : getValueAndMessage(required);\n\n if (value) {\n error[name] = {\n type: INPUT_VALIDATION_RULES.required,\n message,\n ref: inputRef,\n ...appendErrorsCurry(INPUT_VALIDATION_RULES.required, message),\n };\n if (!validateAllFieldCriteria) {\n setCustomValidity(message);\n return error;\n }\n }\n }\n\n if (!isEmpty && (!isNullOrUndefined(min) || !isNullOrUndefined(max))) {\n let exceedMax;\n let exceedMin;\n const maxOutput = getValueAndMessage(max);\n const minOutput = getValueAndMessage(min);\n\n if (!isNullOrUndefined(inputValue) && !isNaN(inputValue as number)) {\n const valueNumber =\n (ref as HTMLInputElement).valueAsNumber || +inputValue;\n if (!isNullOrUndefined(maxOutput.value)) {\n exceedMax = valueNumber > maxOutput.value;\n }\n if (!isNullOrUndefined(minOutput.value)) {\n exceedMin = valueNumber < minOutput.value;\n }\n } else {\n const valueDate =\n (ref as HTMLInputElement).valueAsDate || new Date(inputValue as string);\n if (isString(maxOutput.value)) {\n exceedMax = valueDate > new Date(maxOutput.value);\n }\n if (isString(minOutput.value)) {\n exceedMin = valueDate < new Date(minOutput.value);\n }\n }\n\n if (exceedMax || exceedMin) {\n getMinMaxMessage(\n !!exceedMax,\n maxOutput.message,\n minOutput.message,\n INPUT_VALIDATION_RULES.max,\n INPUT_VALIDATION_RULES.min,\n );\n if (!validateAllFieldCriteria) {\n setCustomValidity(error[name]!.message);\n return error;\n }\n }\n }\n\n if ((maxLength || minLength) && !isEmpty && isString(inputValue)) {\n const maxLengthOutput = getValueAndMessage(maxLength);\n const minLengthOutput = getValueAndMessage(minLength);\n const exceedMax =\n !isNullOrUndefined(maxLengthOutput.value) &&\n inputValue.length > maxLengthOutput.value;\n const exceedMin =\n !isNullOrUndefined(minLengthOutput.value) &&\n inputValue.length < minLengthOutput.value;\n\n if (exceedMax || exceedMin) {\n getMinMaxMessage(\n exceedMax,\n maxLengthOutput.message,\n minLengthOutput.message,\n );\n if (!validateAllFieldCriteria) {\n setCustomValidity(error[name]!.message);\n return error;\n }\n }\n }\n\n if (pattern && !isEmpty && isString(inputValue)) {\n const { value: patternValue, message } = getValueAndMessage(pattern);\n\n if (isRegex(patternValue) && !inputValue.match(patternValue)) {\n error[name] = {\n type: INPUT_VALIDATION_RULES.pattern,\n message,\n ref,\n ...appendErrorsCurry(INPUT_VALIDATION_RULES.pattern, message),\n };\n if (!validateAllFieldCriteria) {\n setCustomValidity(message);\n return error;\n }\n }\n }\n\n if (validate) {\n if (isFunction(validate)) {\n const result = await validate(inputValue);\n const validateError = getValidateError(result, inputRef);\n\n if (validateError) {\n error[name] = {\n ...validateError,\n ...appendErrorsCurry(\n INPUT_VALIDATION_RULES.validate,\n validateError.message,\n ),\n };\n if (!validateAllFieldCriteria) {\n setCustomValidity(validateError.message);\n return error;\n }\n }\n } else if (isObject(validate)) {\n let validationResult = {} as FieldError;\n\n for (const key in validate) {\n if (!isEmptyObject(validationResult) && !validateAllFieldCriteria) {\n break;\n }\n\n const validateError = getValidateError(\n await validate[key](inputValue),\n inputRef,\n key,\n );\n\n if (validateError) {\n validationResult = {\n ...validateError,\n ...appendErrorsCurry(key, validateError.message),\n };\n\n setCustomValidity(validateError.message);\n\n if (validateAllFieldCriteria) {\n error[name] = validationResult;\n }\n }\n }\n\n if (!isEmptyObject(validationResult)) {\n error[name] = {\n ref: inputRef,\n ...validationResult,\n };\n if (!validateAllFieldCriteria) {\n return error;\n }\n }\n }\n }\n\n setCustomValidity(true);\n return error;\n};\n","import { EVENTS, VALIDATION_MODE } from '../constants';\nimport {\n BatchFieldArrayUpdate,\n ChangeHandler,\n DeepPartial,\n DelayCallback,\n EventType,\n Field,\n FieldError,\n FieldErrors,\n FieldNamesMarkedBoolean,\n FieldPath,\n FieldRefs,\n FieldValues,\n FormState,\n GetIsDirty,\n InternalFieldName,\n Names,\n Path,\n Ref,\n ResolverResult,\n SetFieldValue,\n SetValueConfig,\n Subjects,\n UnpackNestedValue,\n UseFormClearErrors,\n UseFormGetFieldState,\n UseFormGetValues,\n UseFormHandleSubmit,\n UseFormProps,\n UseFormRegister,\n UseFormReset,\n UseFormResetField,\n UseFormReturn,\n UseFormSetError,\n UseFormSetFocus,\n UseFormSetValue,\n UseFormTrigger,\n UseFormUnregister,\n UseFormWatch,\n WatchInternal,\n WatchObserver,\n} from '../types';\nimport cloneObject from '../utils/cloneObject';\nimport compact from '../utils/compact';\nimport convertToArrayPayload from '../utils/convertToArrayPayload';\nimport createSubject from '../utils/createSubject';\nimport deepEqual from '../utils/deepEqual';\nimport get from '../utils/get';\nimport getValidationModes from '../utils/getValidationModes';\nimport isBoolean from '../utils/isBoolean';\nimport isCheckBoxInput from '../utils/isCheckBoxInput';\nimport isDateObject from '../utils/isDateObject';\nimport isEmptyObject from '../utils/isEmptyObject';\nimport isFileInput from '../utils/isFileInput';\nimport isFunction from '../utils/isFunction';\nimport isHTMLElement from '../utils/isHTMLElement';\nimport isMultipleSelect from '../utils/isMultipleSelect';\nimport isNullOrUndefined from '../utils/isNullOrUndefined';\nimport isPrimitive from '../utils/isPrimitive';\nimport isRadioOrCheckbox from '../utils/isRadioOrCheckbox';\nimport isString from '../utils/isString';\nimport isUndefined from '../utils/isUndefined';\nimport isWeb from '../utils/isWeb';\nimport live from '../utils/live';\nimport set from '../utils/set';\nimport unset from '../utils/unset';\n\nimport focusFieldBy from './focusFieldBy';\nimport generateWatchOutput from './generateWatchOutput';\nimport getDirtyFields from './getDirtyFields';\nimport getEventValue from './getEventValue';\nimport getFieldValue from './getFieldValue';\nimport getFieldValueAs from './getFieldValueAs';\nimport getResolverOptions from './getResolverOptions';\nimport getRuleValue from './getRuleValue';\nimport hasValidation from './hasValidation';\nimport isNameInFieldArray from './isNameInFieldArray';\nimport isWatched from './isWatched';\nimport schemaErrorLookup from './schemaErrorLookup';\nimport skipValidation from './skipValidation';\nimport unsetEmptyArray from './unsetEmptyArray';\nimport validateField from './validateField';\n\nconst defaultOptions = {\n mode: VALIDATION_MODE.onSubmit,\n reValidateMode: VALIDATION_MODE.onChange,\n shouldFocusError: true,\n} as const;\n\nexport function createFormControl<\n TFieldValues extends FieldValues = FieldValues,\n TContext = any,\n>(\n props: UseFormProps = {},\n): Omit, 'formState'> {\n let _options = {\n ...defaultOptions,\n ...props,\n };\n let _formState: FormState = {\n isDirty: false,\n isValidating: false,\n dirtyFields: {} as FieldNamesMarkedBoolean,\n isSubmitted: false,\n submitCount: 0,\n touchedFields: {} as FieldNamesMarkedBoolean,\n isSubmitting: false,\n isSubmitSuccessful: false,\n isValid: false,\n errors: {} as FieldErrors,\n };\n let _fields = {};\n let _defaultValues = cloneObject(_options.defaultValues) || {};\n let _formValues = _options.shouldUnregister\n ? {}\n : cloneObject(_defaultValues);\n let _stateFlags = {\n action: false,\n mount: false,\n watch: false,\n };\n let _names: Names = {\n mount: new Set(),\n unMount: new Set(),\n array: new Set(),\n watch: new Set(),\n } as Names;\n let delayErrorCallback: DelayCallback | null;\n let timer = 0;\n let validateFields: Record = {};\n const _proxyFormState = {\n isDirty: false,\n dirtyFields: false,\n touchedFields: false,\n isValidating: false,\n isValid: false,\n errors: false,\n };\n const _subjects: Subjects = {\n watch: createSubject(),\n array: createSubject(),\n state: createSubject(),\n };\n\n const validationModeBeforeSubmit = getValidationModes(_options.mode);\n const validationModeAfterSubmit = getValidationModes(_options.reValidateMode);\n const shouldDisplayAllAssociatedErrors =\n _options.criteriaMode === VALIDATION_MODE.all;\n\n const debounce =\n (callback: T) =>\n (wait: number) => {\n clearTimeout(timer);\n timer = window.setTimeout(callback, wait);\n };\n\n const _updateValid = async (shouldSkipRender?: boolean) => {\n let isValid = false;\n\n if (_proxyFormState.isValid) {\n isValid = _options.resolver\n ? isEmptyObject((await _executeSchema()).errors)\n : await executeBuildInValidation(_fields, true);\n\n if (!shouldSkipRender && isValid !== _formState.isValid) {\n _formState.isValid = isValid;\n _subjects.state.next({\n isValid,\n });\n }\n }\n\n return isValid;\n };\n\n const _updateFieldArray: BatchFieldArrayUpdate = (\n name,\n values = [],\n method,\n args,\n shouldSetValues = true,\n shouldUpdateFieldsAndState = true,\n ) => {\n if (args && method) {\n _stateFlags.action = true;\n if (shouldUpdateFieldsAndState && Array.isArray(get(_fields, name))) {\n const fieldValues = method(get(_fields, name), args.argA, args.argB);\n shouldSetValues && set(_fields, name, fieldValues);\n }\n\n if (\n _proxyFormState.errors &&\n shouldUpdateFieldsAndState &&\n Array.isArray(get(_formState.errors, name))\n ) {\n const errors = method(\n get(_formState.errors, name),\n args.argA,\n args.argB,\n );\n shouldSetValues && set(_formState.errors, name, errors);\n unsetEmptyArray(_formState.errors, name);\n }\n\n if (\n _proxyFormState.touchedFields &&\n shouldUpdateFieldsAndState &&\n Array.isArray(get(_formState.touchedFields, name))\n ) {\n const touchedFields = method(\n get(_formState.touchedFields, name),\n args.argA,\n args.argB,\n );\n shouldSetValues && set(_formState.touchedFields, name, touchedFields);\n }\n\n if (_proxyFormState.dirtyFields) {\n _formState.dirtyFields = getDirtyFields(_defaultValues, _formValues);\n }\n\n _subjects.state.next({\n isDirty: _getDirty(name, values),\n dirtyFields: _formState.dirtyFields,\n errors: _formState.errors,\n isValid: _formState.isValid,\n });\n } else {\n set(_formValues, name, values);\n }\n };\n\n const updateErrors = (name: InternalFieldName, error: FieldError) => {\n set(_formState.errors, name, error);\n _subjects.state.next({\n errors: _formState.errors,\n });\n };\n\n const updateValidAndValue = (\n name: InternalFieldName,\n shouldSkipSetValueAs: boolean,\n value?: unknown,\n ref?: Ref,\n ) => {\n const field: Field = get(_fields, name);\n\n if (field) {\n const defaultValue = get(\n _formValues,\n name,\n isUndefined(value) ? get(_defaultValues, name) : value,\n );\n\n isUndefined(defaultValue) ||\n (ref && (ref as HTMLInputElement).defaultChecked) ||\n shouldSkipSetValueAs\n ? set(\n _formValues,\n name,\n shouldSkipSetValueAs ? defaultValue : getFieldValue(field._f),\n )\n : setFieldValue(name, defaultValue);\n\n _stateFlags.mount && _updateValid();\n }\n };\n\n const updateTouchAndDirty = (\n name: InternalFieldName,\n fieldValue: unknown,\n isBlurEvent?: boolean,\n shouldDirty?: boolean,\n shouldRender?: boolean,\n ): Partial<\n Pick, 'dirtyFields' | 'isDirty' | 'touchedFields'>\n > => {\n let isFieldDirty = false;\n const output: Partial> & { name: string } = {\n name,\n };\n const isPreviousFieldTouched = get(_formState.touchedFields, name);\n\n if (_proxyFormState.isDirty) {\n const isPreviousFormDirty = _formState.isDirty;\n\n _formState.isDirty = output.isDirty = _getDirty();\n isFieldDirty = isPreviousFormDirty !== output.isDirty;\n }\n\n if (_proxyFormState.dirtyFields && (!isBlurEvent || shouldDirty)) {\n const isPreviousFieldDirty = get(_formState.dirtyFields, name);\n const isCurrentFieldPristine = deepEqual(\n get(_defaultValues, name),\n fieldValue,\n );\n\n isCurrentFieldPristine\n ? unset(_formState.dirtyFields, name)\n : set(_formState.dirtyFields as TFieldValues, name, true);\n output.dirtyFields = _formState.dirtyFields;\n isFieldDirty =\n isFieldDirty ||\n isPreviousFieldDirty !== get(_formState.dirtyFields, name);\n }\n\n if (isBlurEvent && !isPreviousFieldTouched) {\n set(_formState.touchedFields as TFieldValues, name, isBlurEvent);\n output.touchedFields = _formState.touchedFields;\n isFieldDirty =\n isFieldDirty ||\n (_proxyFormState.touchedFields &&\n isPreviousFieldTouched !== isBlurEvent);\n }\n\n isFieldDirty && shouldRender && _subjects.state.next(output);\n\n return isFieldDirty ? output : {};\n };\n\n const shouldRenderByError = async (\n name: InternalFieldName,\n isValid: boolean,\n error?: FieldError,\n fieldState?: {\n dirty?: FieldNamesMarkedBoolean;\n isDirty?: boolean;\n touched?: FieldNamesMarkedBoolean;\n },\n ): Promise => {\n const previousFieldError = get(_formState.errors, name);\n const shouldUpdateValid =\n _proxyFormState.isValid && _formState.isValid !== isValid;\n\n if (props.delayError && error) {\n delayErrorCallback = debounce(() => updateErrors(name, error));\n delayErrorCallback(props.delayError);\n } else {\n clearTimeout(timer);\n delayErrorCallback = null;\n error\n ? set(_formState.errors, name, error)\n : unset(_formState.errors, name);\n }\n\n if (\n (error ? !deepEqual(previousFieldError, error) : previousFieldError) ||\n !isEmptyObject(fieldState) ||\n shouldUpdateValid\n ) {\n const updatedFormState = {\n ...fieldState,\n ...(shouldUpdateValid ? { isValid } : {}),\n errors: _formState.errors,\n name,\n };\n\n _formState = {\n ..._formState,\n ...updatedFormState,\n };\n\n _subjects.state.next(updatedFormState);\n }\n\n validateFields[name]--;\n\n if (\n _proxyFormState.isValidating &&\n !Object.values(validateFields).some((v) => v)\n ) {\n _subjects.state.next({\n isValidating: false,\n });\n validateFields = {};\n }\n };\n\n const _executeSchema = async (name?: InternalFieldName[]) =>\n _options.resolver\n ? await _options.resolver(\n { ..._formValues } as UnpackNestedValue,\n _options.context,\n getResolverOptions(\n name || _names.mount,\n _fields,\n _options.criteriaMode,\n _options.shouldUseNativeValidation,\n ),\n )\n : ({} as ResolverResult);\n\n const executeSchemaAndUpdateState = async (names?: InternalFieldName[]) => {\n const { errors } = await _executeSchema();\n\n if (names) {\n for (const name of names) {\n const error = get(errors, name);\n error\n ? set(_formState.errors, name, error)\n : unset(_formState.errors, name);\n }\n } else {\n _formState.errors = errors as FieldErrors;\n }\n\n return errors;\n };\n\n const executeBuildInValidation = async (\n fields: FieldRefs,\n shouldOnlyCheckValid?: boolean,\n context = {\n valid: true,\n },\n ) => {\n for (const name in fields) {\n const field = fields[name];\n\n if (field) {\n const { _f: fieldReference, ...fieldValue } = field;\n\n if (fieldReference) {\n const fieldError = await validateField(\n field,\n get(_formValues, fieldReference.name),\n shouldDisplayAllAssociatedErrors,\n _options.shouldUseNativeValidation,\n );\n\n if (fieldError[fieldReference.name]) {\n context.valid = false;\n\n if (shouldOnlyCheckValid) {\n break;\n }\n }\n\n if (!shouldOnlyCheckValid) {\n fieldError[fieldReference.name]\n ? set(\n _formState.errors,\n fieldReference.name,\n fieldError[fieldReference.name],\n )\n : unset(_formState.errors, fieldReference.name);\n }\n }\n\n fieldValue &&\n (await executeBuildInValidation(\n fieldValue,\n shouldOnlyCheckValid,\n context,\n ));\n }\n }\n\n return context.valid;\n };\n\n const _removeUnmounted = () => {\n for (const name of _names.unMount) {\n const field: Field = get(_fields, name);\n\n field &&\n (field._f.refs\n ? field._f.refs.every((ref) => !live(ref))\n : !live(field._f.ref)) &&\n unregister(name as FieldPath);\n }\n\n _names.unMount = new Set();\n };\n\n const _getDirty: GetIsDirty = (name, data) => (\n name && data && set(_formValues, name, data),\n !deepEqual(getValues(), _defaultValues)\n );\n\n const _getWatch: WatchInternal = (\n names,\n defaultValue,\n isGlobal,\n ) => {\n const fieldValues = {\n ...(_stateFlags.mount\n ? _formValues\n : isUndefined(defaultValue)\n ? _defaultValues\n : isString(names)\n ? { [names]: defaultValue }\n : defaultValue),\n };\n\n return generateWatchOutput(names, _names, fieldValues, isGlobal);\n };\n\n const _getFieldArray = (\n name: InternalFieldName,\n ): Partial[] =>\n compact(\n get(\n _stateFlags.mount ? _formValues : _defaultValues,\n name,\n props.shouldUnregister ? get(_defaultValues, name, []) : [],\n ),\n );\n\n const setFieldValue = (\n name: InternalFieldName,\n value: SetFieldValue,\n options: SetValueConfig = {},\n ) => {\n const field: Field = get(_fields, name);\n let fieldValue: unknown = value;\n\n if (field) {\n const fieldReference = field._f;\n\n if (fieldReference) {\n !fieldReference.disabled &&\n set(_formValues, name, getFieldValueAs(value, fieldReference));\n\n fieldValue =\n isWeb && isHTMLElement(fieldReference.ref) && isNullOrUndefined(value)\n ? ''\n : value;\n\n if (isMultipleSelect(fieldReference.ref)) {\n [...fieldReference.ref.options].forEach(\n (selectRef) =>\n (selectRef.selected = (\n fieldValue as InternalFieldName[]\n ).includes(selectRef.value)),\n );\n } else if (fieldReference.refs) {\n if (isCheckBoxInput(fieldReference.ref)) {\n fieldReference.refs.length > 1\n ? fieldReference.refs.forEach(\n (checkboxRef) =>\n !checkboxRef.disabled &&\n (checkboxRef.checked = Array.isArray(fieldValue)\n ? !!(fieldValue as []).find(\n (data: string) => data === checkboxRef.value,\n )\n : fieldValue === checkboxRef.value),\n )\n : fieldReference.refs[0] &&\n (fieldReference.refs[0].checked = !!fieldValue);\n } else {\n fieldReference.refs.forEach(\n (radioRef: HTMLInputElement) =>\n (radioRef.checked = radioRef.value === fieldValue),\n );\n }\n } else if (isFileInput(fieldReference.ref)) {\n fieldReference.ref.value = '';\n } else {\n fieldReference.ref.value = fieldValue;\n\n if (!fieldReference.ref.type) {\n _subjects.watch.next({\n name,\n });\n }\n }\n }\n }\n\n (options.shouldDirty || options.shouldTouch) &&\n updateTouchAndDirty(\n name,\n fieldValue,\n options.shouldTouch,\n options.shouldDirty,\n true,\n );\n\n options.shouldValidate && trigger(name as Path);\n };\n\n const setValues = <\n T extends InternalFieldName,\n K extends SetFieldValue,\n U extends SetValueConfig,\n >(\n name: T,\n value: K,\n options: U,\n ) => {\n for (const fieldKey in value) {\n const fieldValue = value[fieldKey];\n const fieldName = `${name}.${fieldKey}` as Path;\n const field = get(_fields, fieldName);\n\n (_names.array.has(name) ||\n !isPrimitive(fieldValue) ||\n (field && !field._f)) &&\n !isDateObject(fieldValue)\n ? setValues(fieldName, fieldValue, options)\n : setFieldValue(fieldName, fieldValue, options);\n }\n };\n\n const setValue: UseFormSetValue = (\n name,\n value,\n options = {},\n ) => {\n const field = get(_fields, name);\n const isFieldArray = _names.array.has(name);\n const cloneValue = cloneObject(value);\n\n set(_formValues, name, cloneValue);\n\n if (isFieldArray) {\n _subjects.array.next({\n name,\n values: _formValues,\n });\n\n if (\n (_proxyFormState.isDirty || _proxyFormState.dirtyFields) &&\n options.shouldDirty\n ) {\n _formState.dirtyFields = getDirtyFields(_defaultValues, _formValues);\n\n _subjects.state.next({\n name,\n dirtyFields: _formState.dirtyFields,\n isDirty: _getDirty(name, cloneValue),\n });\n }\n } else {\n field && !field._f && !isNullOrUndefined(cloneValue)\n ? setValues(name, cloneValue, options)\n : setFieldValue(name, cloneValue, options);\n }\n\n isWatched(name, _names) && _subjects.state.next({});\n _subjects.watch.next({\n name,\n });\n };\n\n const onChange: ChangeHandler = async (event) => {\n const target = event.target;\n let name = target.name;\n const field: Field = get(_fields, name);\n\n if (field) {\n let error;\n let isValid;\n const fieldValue = target.type\n ? getFieldValue(field._f)\n : getEventValue(event);\n const isBlurEvent =\n event.type === EVENTS.BLUR || event.type === EVENTS.FOCUS_OUT;\n const shouldSkipValidation =\n (!hasValidation(field._f) &&\n !_options.resolver &&\n !get(_formState.errors, name) &&\n !field._f.deps) ||\n skipValidation(\n isBlurEvent,\n get(_formState.touchedFields, name),\n _formState.isSubmitted,\n validationModeAfterSubmit,\n validationModeBeforeSubmit,\n );\n const watched = isWatched(name, _names, isBlurEvent);\n\n set(_formValues, name, fieldValue);\n\n if (isBlurEvent) {\n field._f.onBlur && field._f.onBlur(event);\n delayErrorCallback && delayErrorCallback(0);\n } else if (field._f.onChange) {\n field._f.onChange(event);\n }\n\n const fieldState = updateTouchAndDirty(\n name,\n fieldValue,\n isBlurEvent,\n false,\n );\n\n const shouldRender = !isEmptyObject(fieldState) || watched;\n\n !isBlurEvent &&\n _subjects.watch.next({\n name,\n type: event.type,\n });\n\n if (shouldSkipValidation) {\n return (\n shouldRender &&\n _subjects.state.next({ name, ...(watched ? {} : fieldState) })\n );\n }\n\n !isBlurEvent && watched && _subjects.state.next({});\n\n validateFields[name] = validateFields[name] ? +1 : 1;\n\n _subjects.state.next({\n isValidating: true,\n });\n\n if (_options.resolver) {\n const { errors } = await _executeSchema([name]);\n const previousErrorLookupResult = schemaErrorLookup(\n _formState.errors,\n _fields,\n name,\n );\n const errorLookupResult = schemaErrorLookup(\n errors,\n _fields,\n previousErrorLookupResult.name || name,\n );\n\n error = errorLookupResult.error;\n name = errorLookupResult.name;\n\n isValid = isEmptyObject(errors);\n } else {\n error = (\n await validateField(\n field,\n get(_formValues, name),\n shouldDisplayAllAssociatedErrors,\n _options.shouldUseNativeValidation,\n )\n )[name];\n\n isValid = await _updateValid(true);\n }\n\n field._f.deps &&\n trigger(\n field._f.deps as FieldPath | FieldPath[],\n );\n\n shouldRenderByError(name, isValid, error, fieldState);\n }\n };\n\n const trigger: UseFormTrigger = async (name, options = {}) => {\n let isValid;\n let validationResult;\n const fieldNames = convertToArrayPayload(name) as InternalFieldName[];\n\n _subjects.state.next({\n isValidating: true,\n });\n\n if (_options.resolver) {\n const errors = await executeSchemaAndUpdateState(\n isUndefined(name) ? name : fieldNames,\n );\n\n isValid = isEmptyObject(errors);\n validationResult = name\n ? !fieldNames.some((name) => get(errors, name))\n : isValid;\n } else if (name) {\n validationResult = (\n await Promise.all(\n fieldNames.map(async (fieldName) => {\n const field = get(_fields, fieldName);\n return await executeBuildInValidation(\n field && field._f ? { [fieldName]: field } : field,\n );\n }),\n )\n ).every(Boolean);\n !(!validationResult && !_formState.isValid) && _updateValid();\n } else {\n validationResult = isValid = await executeBuildInValidation(_fields);\n }\n\n _subjects.state.next({\n ...(!isString(name) ||\n (_proxyFormState.isValid && isValid !== _formState.isValid)\n ? {}\n : { name }),\n ...(_options.resolver ? { isValid } : {}),\n errors: _formState.errors,\n isValidating: false,\n });\n\n options.shouldFocus &&\n !validationResult &&\n focusFieldBy(\n _fields,\n (key) => get(_formState.errors, key),\n name ? fieldNames : _names.mount,\n );\n\n return validationResult;\n };\n\n const getValues: UseFormGetValues = (\n fieldNames?:\n | FieldPath\n | ReadonlyArray>,\n ) => {\n const values = {\n ..._defaultValues,\n ...(_stateFlags.mount ? _formValues : {}),\n };\n\n return isUndefined(fieldNames)\n ? values\n : isString(fieldNames)\n ? get(values, fieldNames as InternalFieldName)\n : fieldNames.map((name) => get(values, name as InternalFieldName));\n };\n\n const getFieldState: UseFormGetFieldState = (\n name,\n formState,\n ) => ({\n invalid: !!get((formState || _formState).errors, name),\n isDirty: !!get((formState || _formState).dirtyFields, name),\n isTouched: !!get((formState || _formState).touchedFields, name),\n error: get((formState || _formState).errors, name),\n });\n\n const clearErrors: UseFormClearErrors = (name) => {\n name\n ? convertToArrayPayload(name).forEach((inputName) =>\n unset(_formState.errors, inputName),\n )\n : (_formState.errors = {} as FieldErrors);\n\n _subjects.state.next({\n errors: _formState.errors,\n });\n };\n\n const setError: UseFormSetError = (name, error, options) => {\n const ref = ((get(_fields, name, { _f: {} }) as Field)._f || {}).ref;\n\n set(_formState.errors, name, {\n ...error,\n ref,\n });\n\n _subjects.state.next({\n name,\n errors: _formState.errors,\n isValid: false,\n });\n\n options && options.shouldFocus && ref && ref.focus && ref.focus();\n };\n\n const watch: UseFormWatch = (\n name?:\n | FieldPath\n | ReadonlyArray>\n | WatchObserver,\n defaultValue?: unknown,\n ) =>\n isFunction(name)\n ? _subjects.watch.subscribe({\n next: (info) =>\n name(\n _getWatch(\n undefined,\n defaultValue as UnpackNestedValue>,\n ),\n info as {\n name?: FieldPath;\n type?: EventType;\n value?: unknown;\n },\n ),\n })\n : _getWatch(\n name as InternalFieldName | InternalFieldName[],\n defaultValue as UnpackNestedValue>,\n true,\n );\n\n const unregister: UseFormUnregister = (name, options = {}) => {\n for (const fieldName of name ? convertToArrayPayload(name) : _names.mount) {\n _names.mount.delete(fieldName);\n _names.array.delete(fieldName);\n\n if (get(_fields, fieldName)) {\n if (!options.keepValue) {\n unset(_fields, fieldName);\n unset(_formValues, fieldName);\n }\n\n !options.keepError && unset(_formState.errors, fieldName);\n !options.keepDirty && unset(_formState.dirtyFields, fieldName);\n !options.keepTouched && unset(_formState.touchedFields, fieldName);\n !_options.shouldUnregister &&\n !options.keepDefaultValue &&\n unset(_defaultValues, fieldName);\n }\n }\n\n _subjects.watch.next({});\n\n _subjects.state.next({\n ..._formState,\n ...(!options.keepDirty ? {} : { isDirty: _getDirty() }),\n });\n\n !options.keepIsValid && _updateValid();\n };\n\n const register: UseFormRegister = (name, options = {}) => {\n let field = get(_fields, name);\n const disabledIsDefined = isBoolean(options.disabled);\n\n set(_fields, name, {\n _f: {\n ...(field && field._f ? field._f : { ref: { name } }),\n name,\n mount: true,\n ...options,\n },\n });\n _names.mount.add(name);\n\n field\n ? disabledIsDefined &&\n set(\n _formValues,\n name,\n options.disabled\n ? undefined\n : get(_formValues, name, getFieldValue(field._f)),\n )\n : updateValidAndValue(name, true, options.value);\n\n return {\n ...(disabledIsDefined ? { disabled: options.disabled } : {}),\n ...(_options.shouldUseNativeValidation\n ? {\n required: !!options.required,\n min: getRuleValue(options.min),\n max: getRuleValue(options.max),\n minLength: getRuleValue(options.minLength) as number,\n maxLength: getRuleValue(options.maxLength) as number,\n pattern: getRuleValue(options.pattern) as string,\n }\n : {}),\n name,\n onChange,\n onBlur: onChange,\n ref: (ref: HTMLInputElement | null): void => {\n if (ref) {\n register(name, options);\n field = get(_fields, name);\n\n const fieldRef = isUndefined(ref.value)\n ? ref.querySelectorAll\n ? (ref.querySelectorAll('input,select,textarea')[0] as Ref) || ref\n : ref\n : ref;\n const radioOrCheckbox = isRadioOrCheckbox(fieldRef);\n const refs = field._f.refs || [];\n\n if (\n radioOrCheckbox\n ? refs.find((option: Ref) => option === fieldRef)\n : fieldRef === field._f.ref\n ) {\n return;\n }\n\n set(_fields, name, {\n _f: {\n ...field._f,\n ...(radioOrCheckbox\n ? {\n refs: [\n ...refs.filter(live),\n fieldRef,\n ...(!!Array.isArray(get(_defaultValues, name))\n ? [{}]\n : []),\n ],\n ref: { type: fieldRef.type, name },\n }\n : { ref: fieldRef }),\n },\n });\n\n updateValidAndValue(name, false, undefined, fieldRef);\n } else {\n field = get(_fields, name, {});\n\n if (field._f) {\n field._f.mount = false;\n }\n\n (_options.shouldUnregister || options.shouldUnregister) &&\n !(isNameInFieldArray(_names.array, name) && _stateFlags.action) &&\n _names.unMount.add(name);\n }\n },\n };\n };\n\n const handleSubmit: UseFormHandleSubmit =\n (onValid, onInvalid) => async (e) => {\n if (e) {\n e.preventDefault && e.preventDefault();\n e.persist && e.persist();\n }\n let hasNoPromiseError = true;\n let fieldValues: any = cloneObject(_formValues);\n\n _subjects.state.next({\n isSubmitting: true,\n });\n\n try {\n if (_options.resolver) {\n const { errors, values } = await _executeSchema();\n _formState.errors = errors as FieldErrors;\n fieldValues = values;\n } else {\n await executeBuildInValidation(_fields);\n }\n\n if (isEmptyObject(_formState.errors)) {\n _subjects.state.next({\n errors: {} as FieldErrors,\n isSubmitting: true,\n });\n await onValid(fieldValues, e);\n } else {\n if (onInvalid) {\n await onInvalid({ ..._formState.errors }, e);\n }\n\n _options.shouldFocusError &&\n focusFieldBy(\n _fields,\n (key) => get(_formState.errors, key),\n _names.mount,\n );\n }\n } catch (err) {\n hasNoPromiseError = false;\n throw err;\n } finally {\n _formState.isSubmitted = true;\n _subjects.state.next({\n isSubmitted: true,\n isSubmitting: false,\n isSubmitSuccessful:\n isEmptyObject(_formState.errors) && hasNoPromiseError,\n submitCount: _formState.submitCount + 1,\n errors: _formState.errors,\n });\n }\n };\n\n const resetField: UseFormResetField = (name, options = {}) => {\n if (get(_fields, name)) {\n if (isUndefined(options.defaultValue)) {\n setValue(name, get(_defaultValues, name));\n } else {\n setValue(name, options.defaultValue);\n set(_defaultValues, name, options.defaultValue);\n }\n\n if (!options.keepTouched) {\n unset(_formState.touchedFields, name);\n }\n\n if (!options.keepDirty) {\n unset(_formState.dirtyFields, name);\n _formState.isDirty = options.defaultValue\n ? _getDirty(name, get(_defaultValues, name))\n : _getDirty();\n }\n\n if (!options.keepError) {\n unset(_formState.errors, name);\n _proxyFormState.isValid && _updateValid();\n }\n\n _subjects.state.next({ ..._formState });\n }\n };\n\n const reset: UseFormReset = (\n formValues,\n keepStateOptions = {},\n ) => {\n const updatedValues = formValues || _defaultValues;\n const cloneUpdatedValues = cloneObject(updatedValues);\n const values =\n formValues && !isEmptyObject(formValues)\n ? cloneUpdatedValues\n : _defaultValues;\n\n if (!keepStateOptions.keepDefaultValues) {\n _defaultValues = updatedValues;\n }\n\n if (!keepStateOptions.keepValues) {\n if (keepStateOptions.keepDirtyValues) {\n for (const fieldName of _names.mount) {\n get(_formState.dirtyFields, fieldName)\n ? set(values, fieldName, get(_formValues, fieldName))\n : setValue(\n fieldName as FieldPath,\n get(values, fieldName),\n );\n }\n } else {\n if (isWeb && isUndefined(formValues)) {\n for (const name of _names.mount) {\n const field = get(_fields, name);\n if (field && field._f) {\n const fieldReference = Array.isArray(field._f.refs)\n ? field._f.refs[0]\n : field._f.ref;\n\n try {\n isHTMLElement(fieldReference) &&\n fieldReference.closest('form')!.reset();\n break;\n } catch {}\n }\n }\n }\n\n _fields = {};\n }\n\n _formValues = props.shouldUnregister\n ? keepStateOptions.keepDefaultValues\n ? cloneObject(_defaultValues)\n : {}\n : cloneUpdatedValues;\n\n _subjects.array.next({\n values,\n });\n\n _subjects.watch.next({\n values,\n });\n }\n\n _names = {\n mount: new Set(),\n unMount: new Set(),\n array: new Set(),\n watch: new Set(),\n watchAll: false,\n focus: '',\n };\n\n _stateFlags.mount =\n !_proxyFormState.isValid || !!keepStateOptions.keepIsValid;\n\n _stateFlags.watch = !!props.shouldUnregister;\n\n _subjects.state.next({\n submitCount: keepStateOptions.keepSubmitCount\n ? _formState.submitCount\n : 0,\n isDirty:\n keepStateOptions.keepDirty || keepStateOptions.keepDirtyValues\n ? _formState.isDirty\n : !!(\n keepStateOptions.keepDefaultValues &&\n !deepEqual(formValues, _defaultValues)\n ),\n isSubmitted: keepStateOptions.keepIsSubmitted\n ? _formState.isSubmitted\n : false,\n dirtyFields:\n keepStateOptions.keepDirty || keepStateOptions.keepDirtyValues\n ? _formState.dirtyFields\n : keepStateOptions.keepDefaultValues && formValues\n ? getDirtyFields(_defaultValues, formValues)\n : {},\n touchedFields: keepStateOptions.keepTouched\n ? _formState.touchedFields\n : ({} as FieldNamesMarkedBoolean),\n errors: keepStateOptions.keepErrors\n ? _formState.errors\n : ({} as FieldErrors),\n isSubmitting: false,\n isSubmitSuccessful: false,\n });\n };\n\n const setFocus: UseFormSetFocus = (name, options = {}) => {\n const field = get(_fields, name)._f;\n const fieldRef = field.refs ? field.refs[0] : field.ref;\n options.shouldSelect ? fieldRef.select() : fieldRef.focus();\n };\n\n return {\n control: {\n register,\n unregister,\n getFieldState,\n _executeSchema,\n _getWatch,\n _getDirty,\n _updateValid,\n _removeUnmounted,\n _updateFieldArray,\n _getFieldArray,\n _subjects,\n _proxyFormState,\n get _fields() {\n return _fields;\n },\n get _formValues() {\n return _formValues;\n },\n get _stateFlags() {\n return _stateFlags;\n },\n set _stateFlags(value) {\n _stateFlags = value;\n },\n get _defaultValues() {\n return _defaultValues;\n },\n get _names() {\n return _names;\n },\n set _names(value) {\n _names = value;\n },\n get _formState() {\n return _formState;\n },\n set _formState(value) {\n _formState = value;\n },\n get _options() {\n return _options;\n },\n set _options(value) {\n _options = {\n ..._options,\n ...value,\n };\n },\n },\n trigger,\n register,\n handleSubmit,\n watch,\n setValue,\n getValues,\n reset,\n resetField,\n clearErrors,\n unregister,\n setError,\n setFocus,\n getFieldState,\n };\n}\n","import React from 'react';\n\nimport { createFormControl } from './logic/createFormControl';\nimport getProxyFormState from './logic/getProxyFormState';\nimport shouldRenderFormState from './logic/shouldRenderFormState';\nimport {\n FieldErrors,\n FieldNamesMarkedBoolean,\n FieldValues,\n FormState,\n UseFormProps,\n UseFormReturn,\n} from './types';\nimport { useSubscribe } from './useSubscribe';\n\n/**\n * Custom hook to mange the entire form.\n *\n * @remarks\n * [API](https://react-hook-form.com/api/useform) • [Demo](https://codesandbox.io/s/react-hook-form-get-started-ts-5ksmm) • [Video](https://www.youtube.com/watch?v=RkXv4AXXC_4)\n *\n * @param props - form configuration and validation parameters.\n *\n * @returns methods - individual functions to manage the form state. {@link UseFormReturn}\n *\n * @example\n * ```tsx\n * function App() {\n * const { register, handleSubmit, watch, formState: { errors } } = useForm();\n * const onSubmit = data => console.log(data);\n *\n * console.log(watch(\"example\"));\n *\n * return (\n *
\n * \n * \n * {errors.exampleRequired && This field is required}\n * \n *
\n * );\n * }\n * ```\n */\nexport function useForm<\n TFieldValues extends FieldValues = FieldValues,\n TContext = any,\n>(\n props: UseFormProps = {},\n): UseFormReturn {\n const _formControl = React.useRef<\n UseFormReturn | undefined\n >();\n const [formState, updateFormState] = React.useState>({\n isDirty: false,\n isValidating: false,\n dirtyFields: {} as FieldNamesMarkedBoolean,\n isSubmitted: false,\n submitCount: 0,\n touchedFields: {} as FieldNamesMarkedBoolean,\n isSubmitting: false,\n isSubmitSuccessful: false,\n isValid: false,\n errors: {} as FieldErrors,\n });\n\n if (_formControl.current) {\n _formControl.current.control._options = props;\n } else {\n _formControl.current = {\n ...createFormControl(props),\n formState,\n };\n }\n\n const control = _formControl.current.control;\n\n const callback = React.useCallback(\n (value) => {\n if (shouldRenderFormState(value, control._proxyFormState, true)) {\n control._formState = {\n ...control._formState,\n ...value,\n };\n\n updateFormState({ ...control._formState });\n }\n },\n [control],\n );\n\n useSubscribe({\n subject: control._subjects.state,\n callback,\n });\n\n React.useEffect(() => {\n if (!control._stateFlags.mount) {\n control._proxyFormState.isValid && control._updateValid();\n control._stateFlags.mount = true;\n }\n if (control._stateFlags.watch) {\n control._stateFlags.watch = false;\n control._subjects.state.next({});\n }\n control._removeUnmounted();\n });\n\n _formControl.current.formState = getProxyFormState(\n formState,\n control._proxyFormState,\n );\n\n return _formControl.current;\n}\n","import { elementContainsAttribute } from './dom/elementContainsAttribute';\nimport { elementContains } from './dom/elementContains';\nimport { getParent } from './dom/getParent';\nimport { getWindow } from './dom/getWindow';\nimport { getDocument } from './dom/getDocument';\n\nconst IS_FOCUSABLE_ATTRIBUTE = 'data-is-focusable';\nconst IS_VISIBLE_ATTRIBUTE = 'data-is-visible';\nconst FOCUSZONE_ID_ATTRIBUTE = 'data-focuszone-id';\nconst FOCUSZONE_SUB_ATTRIBUTE = 'data-is-sub-focuszone';\n\n/**\n * Gets the first focusable element.\n *\n * @public\n */\nexport function getFirstFocusable(\n rootElement: HTMLElement,\n currentElement: HTMLElement,\n includeElementsInFocusZones?: boolean,\n): HTMLElement | null {\n return getNextElement(\n rootElement,\n currentElement,\n true /*checkNode*/,\n false /*suppressParentTraversal*/,\n false /*suppressChildTraversal*/,\n includeElementsInFocusZones,\n );\n}\n\n/**\n * Gets the last focusable element.\n *\n * @public\n */\nexport function getLastFocusable(\n rootElement: HTMLElement,\n currentElement: HTMLElement,\n includeElementsInFocusZones?: boolean,\n): HTMLElement | null {\n return getPreviousElement(\n rootElement,\n currentElement,\n true /*checkNode*/,\n false /*suppressParentTraversal*/,\n true /*traverseChildren*/,\n includeElementsInFocusZones,\n );\n}\n\n/**\n * Gets the first tabbable element. (The difference between focusable and tabbable is that tabbable elements are\n * focusable elements that also have tabIndex != -1.)\n * @param rootElement - The parent element to search beneath.\n * @param currentElement - The descendant of rootElement to start the search at. This element is the first one checked,\n * and iteration continues forward. Typical use passes rootElement.firstChild.\n * @param includeElementsInFocusZones - true if traversal should go into FocusZone descendants.\n * @param checkNode - Include currentElement in search when true. Defaults to true.\n * @public\n */\nexport function getFirstTabbable(\n rootElement: HTMLElement,\n currentElement: HTMLElement,\n includeElementsInFocusZones?: boolean,\n checkNode: boolean = true,\n): HTMLElement | null {\n return getNextElement(\n rootElement,\n currentElement,\n checkNode,\n false /*suppressParentTraversal*/,\n false /*suppressChildTraversal*/,\n includeElementsInFocusZones,\n false /*allowFocusRoot*/,\n true /*tabbable*/,\n );\n}\n\n/**\n * Gets the last tabbable element. (The difference between focusable and tabbable is that tabbable elements are\n * focusable elements that also have tabIndex != -1.)\n * @param rootElement - The parent element to search beneath.\n * @param currentElement - The descendant of rootElement to start the search at. This element is the first one checked,\n * and iteration continues in reverse. Typical use passes rootElement.lastChild.\n * @param includeElementsInFocusZones - true if traversal should go into FocusZone descendants.\n * @param checkNode - Include currentElement in search when true. Defaults to true.\n * @public\n */\nexport function getLastTabbable(\n rootElement: HTMLElement,\n currentElement: HTMLElement,\n includeElementsInFocusZones?: boolean,\n checkNode: boolean = true,\n): HTMLElement | null {\n return getPreviousElement(\n rootElement,\n currentElement,\n checkNode,\n false /*suppressParentTraversal*/,\n true /*traverseChildren*/,\n includeElementsInFocusZones,\n false /*allowFocusRoot*/,\n true /*tabbable*/,\n );\n}\n\n/**\n * Attempts to focus the first focusable element that is a child or child's child of the rootElement.\n *\n * @public\n * @param rootElement - Element to start the search for a focusable child.\n * @returns True if focus was set, false if it was not.\n */\nexport function focusFirstChild(rootElement: HTMLElement): boolean {\n let element: HTMLElement | null = getNextElement(rootElement, rootElement, true, false, false, true);\n\n if (element) {\n focusAsync(element);\n return true;\n }\n return false;\n}\n\n/**\n * Traverse to find the previous element.\n * If tabbable is true, the element must have tabIndex != -1.\n *\n * @public\n */\nexport function getPreviousElement(\n rootElement: HTMLElement,\n currentElement: HTMLElement | null,\n checkNode?: boolean,\n suppressParentTraversal?: boolean,\n traverseChildren?: boolean,\n includeElementsInFocusZones?: boolean,\n allowFocusRoot?: boolean,\n tabbable?: boolean,\n): HTMLElement | null {\n if (!currentElement || (!allowFocusRoot && currentElement === rootElement)) {\n return null;\n }\n\n let isCurrentElementVisible = isElementVisible(currentElement);\n\n // Check its children.\n if (\n traverseChildren &&\n isCurrentElementVisible &&\n (includeElementsInFocusZones || !(isElementFocusZone(currentElement) || isElementFocusSubZone(currentElement)))\n ) {\n const childMatch = getPreviousElement(\n rootElement,\n currentElement.lastElementChild as HTMLElement,\n true,\n true,\n true,\n includeElementsInFocusZones,\n allowFocusRoot,\n tabbable,\n );\n\n if (childMatch) {\n if ((tabbable && isElementTabbable(childMatch, true)) || !tabbable) {\n return childMatch;\n }\n\n const childMatchSiblingMatch = getPreviousElement(\n rootElement,\n childMatch.previousElementSibling as HTMLElement,\n true,\n true,\n true,\n includeElementsInFocusZones,\n allowFocusRoot,\n tabbable,\n );\n if (childMatchSiblingMatch) {\n return childMatchSiblingMatch;\n }\n\n let childMatchParent = childMatch.parentElement;\n\n // At this point if we have not found any potential matches\n // start looking at the rest of the subtree under the currentParent.\n // NOTE: We do not want to recurse here because doing so could\n // cause elements to get skipped.\n while (childMatchParent && childMatchParent !== currentElement) {\n const childMatchParentMatch = getPreviousElement(\n rootElement,\n childMatchParent.previousElementSibling as HTMLElement,\n true,\n true,\n true,\n includeElementsInFocusZones,\n allowFocusRoot,\n tabbable,\n );\n\n if (childMatchParentMatch) {\n return childMatchParentMatch;\n }\n\n childMatchParent = childMatchParent.parentElement;\n }\n }\n }\n\n // Check the current node, if it's not the first traversal.\n if (checkNode && isCurrentElementVisible && isElementTabbable(currentElement, tabbable)) {\n return currentElement;\n }\n\n // Check its previous sibling.\n const siblingMatch = getPreviousElement(\n rootElement,\n currentElement.previousElementSibling as HTMLElement,\n true,\n true,\n true,\n includeElementsInFocusZones,\n allowFocusRoot,\n tabbable,\n );\n\n if (siblingMatch) {\n return siblingMatch;\n }\n\n // Check its parent.\n if (!suppressParentTraversal) {\n return getPreviousElement(\n rootElement,\n currentElement.parentElement,\n true,\n false,\n false,\n includeElementsInFocusZones,\n allowFocusRoot,\n tabbable,\n );\n }\n\n return null;\n}\n\n/**\n * Traverse to find the next focusable element.\n * If tabbable is true, the element must have tabIndex != -1.\n *\n * @public\n * @param checkNode - Include currentElement in search when true.\n */\nexport function getNextElement(\n rootElement: HTMLElement,\n currentElement: HTMLElement | null,\n checkNode?: boolean,\n suppressParentTraversal?: boolean,\n suppressChildTraversal?: boolean,\n includeElementsInFocusZones?: boolean,\n allowFocusRoot?: boolean,\n tabbable?: boolean,\n): HTMLElement | null {\n if (!currentElement || (currentElement === rootElement && suppressChildTraversal && !allowFocusRoot)) {\n return null;\n }\n\n let isCurrentElementVisible = isElementVisible(currentElement);\n\n // Check the current node, if it's not the first traversal.\n if (checkNode && isCurrentElementVisible && isElementTabbable(currentElement, tabbable)) {\n return currentElement;\n }\n\n // Check its children.\n if (\n !suppressChildTraversal &&\n isCurrentElementVisible &&\n (includeElementsInFocusZones || !(isElementFocusZone(currentElement) || isElementFocusSubZone(currentElement)))\n ) {\n const childMatch = getNextElement(\n rootElement,\n currentElement.firstElementChild as HTMLElement,\n true,\n true,\n false,\n includeElementsInFocusZones,\n allowFocusRoot,\n tabbable,\n );\n\n if (childMatch) {\n return childMatch;\n }\n }\n\n if (currentElement === rootElement) {\n return null;\n }\n\n // Check its sibling.\n const siblingMatch = getNextElement(\n rootElement,\n currentElement.nextElementSibling as HTMLElement,\n true,\n true,\n false,\n includeElementsInFocusZones,\n allowFocusRoot,\n tabbable,\n );\n\n if (siblingMatch) {\n return siblingMatch;\n }\n\n if (!suppressParentTraversal) {\n return getNextElement(\n rootElement,\n currentElement.parentElement,\n false,\n false,\n true,\n includeElementsInFocusZones,\n allowFocusRoot,\n tabbable,\n );\n }\n\n return null;\n}\n\n/**\n * Determines if an element is visible.\n *\n * @public\n */\nexport function isElementVisible(element: HTMLElement | undefined | null): boolean {\n // If the element is not valid, return false.\n if (!element || !element.getAttribute) {\n return false;\n }\n\n const visibilityAttribute = element.getAttribute(IS_VISIBLE_ATTRIBUTE);\n\n // If the element is explicitly marked with the visibility attribute, return that value as boolean.\n if (visibilityAttribute !== null && visibilityAttribute !== undefined) {\n return visibilityAttribute === 'true';\n }\n\n // Fallback to other methods of determining actual visibility.\n return (\n element.offsetHeight !== 0 ||\n element.offsetParent !== null ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (element as any).isVisible === true\n ); // used as a workaround for testing.\n}\n\n/**\n * Determines if an element is visible and not hidden\n * @param element - Element to check\n * @returns Returns true if the given element is visible and not hidden\n *\n * @public\n */\nexport function isElementVisibleAndNotHidden(element: HTMLElement | undefined | null): boolean {\n return (\n !!element &&\n isElementVisible(element) &&\n !element.hidden &&\n window.getComputedStyle(element).visibility !== 'hidden'\n );\n}\n\n/**\n * Determines if an element can receive focus programmatically or via a mouse click.\n * If checkTabIndex is true, additionally checks to ensure the element can be focused with the tab key,\n * meaning tabIndex != -1.\n *\n * @public\n */\nexport function isElementTabbable(element: HTMLElement, checkTabIndex?: boolean): boolean {\n // If this element is null or is disabled, it is not considered tabbable.\n if (!element || (element as HTMLButtonElement).disabled) {\n return false;\n }\n\n let tabIndex = 0;\n let tabIndexAttributeValue = null;\n\n if (element && element.getAttribute) {\n tabIndexAttributeValue = element.getAttribute('tabIndex');\n\n if (tabIndexAttributeValue) {\n tabIndex = parseInt(tabIndexAttributeValue, 10);\n }\n }\n\n let isFocusableAttribute = element.getAttribute ? element.getAttribute(IS_FOCUSABLE_ATTRIBUTE) : null;\n let isTabIndexSet = tabIndexAttributeValue !== null && tabIndex >= 0;\n\n const result =\n !!element &&\n isFocusableAttribute !== 'false' &&\n (element.tagName === 'A' ||\n element.tagName === 'BUTTON' ||\n element.tagName === 'INPUT' ||\n element.tagName === 'TEXTAREA' ||\n element.tagName === 'SELECT' ||\n isFocusableAttribute === 'true' ||\n isTabIndexSet);\n\n return checkTabIndex ? tabIndex !== -1 && result : result;\n}\n\n/**\n * Determines if a given element is a focus zone.\n *\n * @public\n */\nexport function isElementFocusZone(element?: HTMLElement): boolean {\n return !!(element && element.getAttribute && !!element.getAttribute(FOCUSZONE_ID_ATTRIBUTE));\n}\n\n/**\n * Determines if a given element is a focus sub zone.\n *\n * @public\n */\nexport function isElementFocusSubZone(element?: HTMLElement): boolean {\n return !!(element && element.getAttribute && element.getAttribute(FOCUSZONE_SUB_ATTRIBUTE) === 'true');\n}\n\n/**\n * Determines if an element, or any of its children, contain focus.\n *\n * @public\n */\nexport function doesElementContainFocus(element: HTMLElement): boolean {\n let document = getDocument(element);\n let currentActiveElement: HTMLElement | undefined = document && (document.activeElement as HTMLElement);\n if (currentActiveElement && elementContains(element, currentActiveElement)) {\n return true;\n }\n return false;\n}\n\n/**\n * Determines if an, or any of its ancestors, sepcificies that it doesn't want focus to wrap\n * @param element - element to start searching from\n * @param noWrapDataAttribute - the no wrap data attribute to match (either)\n * @returns true if focus should wrap, false otherwise\n */\nexport function shouldWrapFocus(\n element: HTMLElement,\n noWrapDataAttribute: 'data-no-vertical-wrap' | 'data-no-horizontal-wrap',\n): boolean {\n return elementContainsAttribute(element, noWrapDataAttribute) === 'true' ? false : true;\n}\n\nlet targetToFocusOnNextRepaint: HTMLElement | { focus: () => void } | null | undefined = undefined;\n\n/**\n * Sets focus to an element asynchronously. The focus will be set at the next browser repaint,\n * meaning it won't cause any extra recalculations. If more than one focusAsync is called during one frame,\n * only the latest called focusAsync element will actually be focused\n * @param element - The element to focus\n */\nexport function focusAsync(element: HTMLElement | { focus: () => void } | undefined | null): void {\n if (element) {\n // An element was already queued to be focused, so replace that one with the new element\n if (targetToFocusOnNextRepaint) {\n targetToFocusOnNextRepaint = element;\n return;\n }\n\n targetToFocusOnNextRepaint = element;\n\n const win = getWindow(element as Element);\n\n if (win) {\n // element.focus() is a no-op if the element is no longer in the DOM, meaning this is always safe\n win.requestAnimationFrame(() => {\n targetToFocusOnNextRepaint && targetToFocusOnNextRepaint.focus();\n\n // We are done focusing for this frame, so reset the queued focus element\n targetToFocusOnNextRepaint = undefined;\n });\n }\n }\n}\n\n/**\n * Finds the closest focusable element via an index path from a parent. See\n * `getElementIndexPath` for getting an index path from an element to a child.\n */\nexport function getFocusableByIndexPath(parent: HTMLElement, path: number[]): HTMLElement | undefined {\n let element = parent;\n\n for (const index of path) {\n const nextChild = element.children[Math.min(index, element.children.length - 1)] as HTMLElement;\n\n if (!nextChild) {\n break;\n }\n element = nextChild;\n }\n\n element =\n isElementTabbable(element) && isElementVisible(element)\n ? element\n : getNextElement(parent, element, true) || getPreviousElement(parent, element)!;\n\n return element as HTMLElement;\n}\n\n/**\n * Finds the element index path from a parent element to a child element.\n *\n * If you had this node structure: \"A has children [B, C] and C has child D\",\n * the index path from A to D would be [1, 0], or `parent.chidren[1].children[0]`.\n */\nexport function getElementIndexPath(fromElement: HTMLElement, toElement: HTMLElement): number[] {\n const path: number[] = [];\n\n while (toElement && fromElement && toElement !== fromElement) {\n const parent = getParent(toElement, true);\n\n if (parent === null) {\n return [];\n }\n\n path.unshift(Array.prototype.indexOf.call(parent.children, toElement));\n toElement = parent;\n }\n\n return path;\n}\n","import { findElementRecursive } from './findElementRecursive';\n\n/**\n * Determines if an element, or any of its ancestors, contain the given attribute\n * @param element - element to start searching at\n * @param attribute - the attribute to search for\n * @returns the value of the first instance found\n */\nexport function elementContainsAttribute(element: HTMLElement, attribute: string): string | null {\n const elementMatch = findElementRecursive(element, (testElement: HTMLElement) => testElement.hasAttribute(attribute));\n\n return elementMatch && elementMatch.getAttribute(attribute);\n}\n","import * as React from 'react';\nimport type { IStyle, ITheme } from '../../Styling';\nimport type { IStyleFunctionOrObject } from '../../Utilities';\n\n/**\n * {@docCategory Image}\n */\nexport interface IImage {}\n\n/**\n * {@docCategory Image}\n */\nexport interface IImageProps extends React.ImgHTMLAttributes, React.RefAttributes {\n /**\n * Call to provide customized styling that will layer on top of the variant rules\n */\n styles?: IStyleFunctionOrObject;\n\n /**\n * Theme provided by HOC.\n */\n theme?: ITheme;\n\n /**\n * Additional css class to apply to the Component\n * @defaultvalue undefined\n */\n className?: string;\n\n /**\n * If true, fades the image in when loaded.\n * @defaultvalue true\n */\n shouldFadeIn?: boolean;\n\n /**\n * If true, the image starts as visible and is hidden on error. Otherwise, the image is hidden until\n * it is successfully loaded. This disables shouldFadeIn.\n * @defaultvalue false;\n */\n shouldStartVisible?: boolean;\n\n /**\n * Used to determine how the image is scaled and cropped to fit the frame.\n *\n * @defaultvalue If both dimensions are provided, then the image is fit using `ImageFit.scale`.\n * Otherwise, the image won't be scaled or cropped.\n */\n imageFit?: ImageFit;\n\n /**\n * @deprecated Not used. Use `onLoadingStateChange` and re-render the Image with a different src.\n */\n errorSrc?: string;\n\n /**\n * If true, the image frame will expand to fill its parent container.\n */\n maximizeFrame?: boolean;\n\n /**\n * Optional callback method for when the image load state has changed.\n * The 'loadState' parameter indicates the current state of the Image.\n */\n onLoadingStateChange?: (loadState: ImageLoadState) => void;\n\n /**\n * Specifies the cover style to be used for this image. If not\n * specified, this will be dynamically calculated based on the\n * aspect ratio for the image.\n */\n coverStyle?: ImageCoverStyle;\n\n /**\n * Allows for browser-level image lazy-loading.\n */\n loading?: 'lazy' | 'eager';\n}\n\n/**\n * The possible methods that can be used to fit the image.\n * {@docCategory Image}\n */\nexport enum ImageFit {\n /**\n * The image is not scaled. The image is centered and cropped within the content box.\n */\n center = 0,\n\n /**\n * The image is scaled to maintain its aspect ratio while being fully contained within the frame. The image will\n * be centered horizontally and vertically within the frame. The space in the top and bottom or in the sides of\n * the frame will be empty depending on the difference in aspect ratio between the image and the frame.\n */\n contain = 1,\n\n /**\n * The image is scaled to maintain its aspect ratio while filling the frame. Portions of the image will be cropped\n * from the top and bottom, or the sides, depending on the difference in aspect ratio between the image and the frame.\n */\n cover = 2,\n\n /**\n * Neither the image nor the frame are scaled. If their sizes do not match, the image will either be cropped or the\n * frame will have empty space.\n */\n none = 3,\n\n /**\n * The image will be centered horizontally and vertically within the frame and maintains its aspect ratio. It will\n * behave as ImageFit.center if the image's natural height or width is less than the Image frame's height or width,\n * but if both natural height and width are larger than the frame it will behave as ImageFit.cover.\n */\n centerCover = 4,\n\n /**\n * The image will be centered horizontally and vertically within the frame and maintains its aspect ratio. It will\n * behave as ImageFit.center if the image's natural height and width is less than the Image frame's height and width,\n * but if either natural height or width are larger than the frame it will behave as ImageFit.contain.\n */\n centerContain = 5,\n}\n\n/**\n * The cover style to be used on the image\n * {@docCategory Image}\n */\nexport enum ImageCoverStyle {\n /**\n * The image will be shown at 100% height of container and the width will be scaled accordingly\n */\n landscape = 0,\n\n /**\n * The image will be shown at 100% width of container and the height will be scaled accordingly\n */\n portrait = 1,\n}\n\n/**\n * {@docCategory Image}\n */\nexport enum ImageLoadState {\n /**\n * The image has not yet been loaded, and there is no error yet.\n */\n notLoaded = 0,\n\n /**\n * The image has been loaded successfully.\n */\n loaded = 1,\n\n /**\n * An error has been encountered while loading the image.\n */\n error = 2,\n\n /**\n * @deprecated Not used. Use `onLoadingStateChange` and re-render the Image with a different src.\n */\n errorLoaded = 3,\n}\n\n/**\n * {@docCategory Image}\n */\nexport interface IImageStyleProps {\n /**\n * Accept theme prop.\n */\n theme: ITheme;\n\n /**\n * Accept custom classNames\n */\n className?: string;\n\n /**\n * If true, the image frame will expand to fill its parent container.\n */\n maximizeFrame?: boolean;\n\n /**\n * If true, the image is loaded\n */\n isLoaded?: boolean;\n\n /**\n * If true, fades the image in when loaded.\n * @defaultvalue true\n */\n shouldFadeIn?: boolean;\n\n /**\n * If true, the image starts as visible and is hidden on error. Otherwise, the image is hidden until\n * it is successfully loaded. This disables shouldFadeIn.\n * @defaultvalue false;\n */\n shouldStartVisible?: boolean;\n\n /**\n * If true the image is coverStyle landscape instead of portrait\n */\n isLandscape?: boolean;\n\n /**\n * ImageFit booleans for center, cover, contain, centerContain, centerCover, none\n */\n isCenter?: boolean;\n isContain?: boolean;\n isCover?: boolean;\n isCenterContain?: boolean;\n isCenterCover?: boolean;\n isNone?: boolean;\n\n /**\n * if true image load is in error\n */\n isError?: boolean;\n\n /**\n * if true, imageFit is undefined\n */\n isNotImageFit?: boolean;\n\n /**\n * Image width value\n */\n width?: number | string;\n\n /**\n * Image height value\n */\n height?: number | string;\n}\n\n/**\n * {@docCategory Image}\n */\nexport interface IImageStyles {\n /**\n * Style set for the root div element.\n */\n root: IStyle;\n /**\n * Style set for the img element.\n */\n image: IStyle;\n}\n","const toObjectMap = (...items: (string[] | Record)[]) => {\n const result: Record = {};\n\n for (const item of items) {\n const keys = Array.isArray(item) ? item : Object.keys(item);\n\n for (const key of keys) {\n result[key] = 1;\n }\n }\n\n return result;\n};\n\n/**\n * An array of events that are allowed on every html element type.\n *\n * @public\n */\nexport const baseElementEvents = toObjectMap([\n 'onCopy',\n 'onCut',\n 'onPaste',\n 'onCompositionEnd',\n 'onCompositionStart',\n 'onCompositionUpdate',\n 'onFocus',\n 'onFocusCapture',\n 'onBlur',\n 'onBlurCapture',\n 'onChange',\n 'onInput',\n 'onSubmit',\n 'onLoad',\n 'onError',\n 'onKeyDown',\n 'onKeyDownCapture',\n 'onKeyPress',\n 'onKeyUp',\n 'onAbort',\n 'onCanPlay',\n 'onCanPlayThrough',\n 'onDurationChange',\n 'onEmptied',\n 'onEncrypted',\n 'onEnded',\n 'onLoadedData',\n 'onLoadedMetadata',\n 'onLoadStart',\n 'onPause',\n 'onPlay',\n 'onPlaying',\n 'onProgress',\n 'onRateChange',\n 'onSeeked',\n 'onSeeking',\n 'onStalled',\n 'onSuspend',\n 'onTimeUpdate',\n 'onVolumeChange',\n 'onWaiting',\n 'onClick',\n 'onClickCapture',\n 'onContextMenu',\n 'onDoubleClick',\n 'onDrag',\n 'onDragEnd',\n 'onDragEnter',\n 'onDragExit',\n 'onDragLeave',\n 'onDragOver',\n 'onDragStart',\n 'onDrop',\n 'onMouseDown',\n 'onMouseDownCapture',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n 'onMouseUpCapture',\n 'onSelect',\n 'onTouchCancel',\n 'onTouchEnd',\n 'onTouchMove',\n 'onTouchStart',\n 'onScroll',\n 'onWheel',\n 'onPointerCancel',\n 'onPointerDown',\n 'onPointerEnter',\n 'onPointerLeave',\n 'onPointerMove',\n 'onPointerOut',\n 'onPointerOver',\n 'onPointerUp',\n 'onGotPointerCapture',\n 'onLostPointerCapture',\n]);\n\n/**\n * An array of element attributes which are allowed on every html element type.\n *\n * @public\n */\nexport const baseElementProperties = toObjectMap([\n 'accessKey', // global\n 'children', // global\n 'className', // global\n 'contentEditable', // global\n 'dir', // global\n 'draggable', // global\n 'hidden', // global\n 'htmlFor', // global\n 'id', // global\n 'lang', // global\n 'ref', // global\n 'role', // global\n 'style', // global\n 'tabIndex', // global\n 'title', // global\n 'translate', // global\n 'spellCheck', // global\n 'name', // global\n]);\n\n/**\n * An array of HTML element properties and events.\n *\n * @public\n */\nexport const htmlElementProperties = toObjectMap(baseElementProperties, baseElementEvents);\n\n/**\n * An array of LABEL tag properties and events.\n *\n * @public\n */\nexport const labelProperties = toObjectMap(htmlElementProperties, [\n 'form', // button, fieldset, input, label, meter, object, output, select, textarea\n]);\n\n/**\n * An array of AUDIO tag properties and events.\n\n * @public\n */\nexport const audioProperties = toObjectMap(htmlElementProperties, [\n 'height', // canvas, embed, iframe, img, input, object, video\n 'loop', // audio, video\n 'muted', // audio, video\n 'preload', // audio, video\n 'src', // audio, embed, iframe, img, input, script, source, track, video\n 'width', // canvas, embed, iframe, img, input, object, video\n]);\n\n/**\n * An array of VIDEO tag properties and events.\n *\n * @public\n */\nexport const videoProperties = toObjectMap(audioProperties, [\n 'poster', // video\n]);\n\n/**\n * An array of OL tag properties and events.\n *\n * @public\n */\nexport const olProperties = toObjectMap(htmlElementProperties, [\n 'start', // ol\n]);\n\n/**\n * An array of LI tag properties and events.\n *\n * @public\n */\nexport const liProperties = toObjectMap(htmlElementProperties, [\n 'value', // button, input, li, option, meter, progress, param\n]);\n\n/**\n * An array of A tag properties and events.\n *\n * @public\n */\nexport const anchorProperties = toObjectMap(htmlElementProperties, [\n 'download', // a, area\n 'href', // a, area, base, link\n 'hrefLang', // a, area, link\n 'media', // a, area, link, source, style\n 'rel', // a, area, link\n 'target', // a, area, base, form\n 'type', // a, button, input, link, menu, object, script, source, style\n]);\n\n/**\n * An array of BUTTON tag properties and events.\n *\n * @public\n */\nexport const buttonProperties = toObjectMap(htmlElementProperties, [\n 'autoFocus', // button, input, select, textarea\n 'disabled', // button, fieldset, input, optgroup, option, select, textarea\n 'form', // button, fieldset, input, label, meter, object, output, select, textarea\n 'formAction', // input, button\n 'formEncType', // input, button\n 'formMethod', // input, button\n 'formNoValidate', // input, button\n 'formTarget', // input, button\n 'type', // a, button, input, link, menu, object, script, source, style\n 'value', // button, input, li, option, meter, progress, param,\n]);\n\n/**\n * An array of INPUT tag properties and events.\n *\n * @public\n */\nexport const inputProperties = toObjectMap(buttonProperties, [\n 'accept', // input\n 'alt', // area, img, input\n 'autoCapitalize', // input, textarea\n 'autoComplete', // form, input\n 'checked', // input\n 'dirname', // input, textarea\n 'form', // button, fieldset, input, label, meter, object, output, select, textarea\n 'height', // canvas, embed, iframe, img, input, object, video\n 'inputMode', // input\n 'list', // input\n 'max', // input, meter\n 'maxLength', // input, textarea\n 'min', // input, meter\n 'minLength', // input, textarea\n 'multiple', // input, select\n 'pattern', // input\n 'placeholder', // input, textarea\n 'readOnly', // input, textarea\n 'required', // input, select, textarea\n 'src', // audio, embed, iframe, img, input, script, source, track, video\n 'step', // input\n 'size', // input\n 'type', // a, button, input, link, menu, object, script, source, style\n 'value', // button, input, li, option, meter, progress, param\n 'width', // canvas, embed, iframe, img, input, object, video\n]);\n\n/**\n * An array of TEXTAREA tag properties and events.\n *\n * @public\n */\nexport const textAreaProperties = toObjectMap(buttonProperties, [\n 'autoCapitalize', // input, textarea\n 'cols', // textarea\n 'dirname', // input, textarea\n 'form', // button, fieldset, input, label, meter, object, output, select, textarea\n 'maxLength', // input, textarea\n 'minLength', // input, textarea\n 'placeholder', // input, textarea\n 'readOnly', // input, textarea\n 'required', // input, select, textarea\n 'rows', // textarea\n 'wrap', // textarea\n]);\n\n/**\n * An array of SELECT tag properties and events.\n *\n * @public\n */\nexport const selectProperties = toObjectMap(buttonProperties, [\n 'form', // button, fieldset, input, label, meter, object, output, select, textarea\n 'multiple', // input, select\n 'required', // input, select, textarea\n]);\n\nexport const optionProperties = toObjectMap(htmlElementProperties, [\n 'selected', // option\n 'value', // button, input, li, option, meter, progress, param\n]);\n\n/**\n * An array of TABLE tag properties and events.\n *\n * @public\n */\nexport const tableProperties = toObjectMap(htmlElementProperties, [\n 'cellPadding', // table\n 'cellSpacing', // table\n]);\n\n/**\n * An array of TR tag properties and events.\n *\n * @public\n */\nexport const trProperties = htmlElementProperties;\n\n/**\n * An array of TH tag properties and events.\n *\n * @public\n */\nexport const thProperties = toObjectMap(htmlElementProperties, [\n 'rowSpan', // td, th\n 'scope', // th\n]);\n\n/**\n * An array of TD tag properties and events.\n *\n * @public\n */\nexport const tdProperties = toObjectMap(htmlElementProperties, [\n 'colSpan', // td\n 'headers', // td\n 'rowSpan', // td, th\n 'scope', // th\n]);\n\nexport const colGroupProperties = toObjectMap(htmlElementProperties, [\n 'span', // col, colgroup\n]);\n\nexport const colProperties = toObjectMap(htmlElementProperties, [\n 'span', // col, colgroup\n]);\n\n/**\n * An array of FORM tag properties and events.\n *\n * @public\n */\nexport const formProperties = toObjectMap(htmlElementProperties, [\n 'acceptCharset', // form\n 'action', // form\n 'encType', // form\n 'encType', // form\n 'method', // form\n 'noValidate', // form\n 'target', // form\n]);\n\n/**\n * An array of IFRAME tag properties and events.\n *\n * @public\n */\nexport const iframeProperties = toObjectMap(htmlElementProperties, [\n 'allow', // iframe\n 'allowFullScreen', // iframe\n 'allowPaymentRequest', // iframe\n 'allowTransparency', // iframe\n 'csp', // iframe\n 'height', // canvas, embed, iframe, img, input, object, video\n 'importance', // iframe\n 'referrerPolicy', // iframe\n 'sandbox', // iframe\n 'src', // audio, embed, iframe, img, input, script, source, track, video\n 'srcDoc', // iframe\n 'width', // canvas, embed, iframe, img, input, object, video,\n]);\n\n/**\n * An array of IMAGE tag properties and events.\n *\n * @public\n */\nexport const imgProperties = toObjectMap(htmlElementProperties, [\n 'alt', // area, img, input\n 'crossOrigin', // img\n 'height', // canvas, embed, iframe, img, input, object, video\n 'src', // audio, embed, iframe, img, input, script, source, track, video\n 'srcSet', // img, source\n 'useMap', // img, object,\n 'width', // canvas, embed, iframe, img, input, object, video\n]);\n\n/**\n * @deprecated Use imgProperties for img elements.\n */\nexport const imageProperties = imgProperties;\n\n/**\n * An array of DIV tag properties and events.\n *\n * @public\n */\nexport const divProperties = htmlElementProperties;\n\n/**\n * Gets native supported props for an html element provided the allowance set. Use one of the property\n * sets defined (divProperties, buttonPropertes, etc) to filter out supported properties from a given\n * props set. Note that all data- and aria- prefixed attributes will be allowed.\n * NOTE: getNativeProps should always be applied first when adding props to a react component. The\n * non-native props should be applied second. This will prevent getNativeProps from overriding your custom props.\n * For example, if props passed to getNativeProps has an onClick function and getNativeProps is added to\n * the component after an onClick function is added, then the getNativeProps onClick will override it.\n *\n * @public\n * @param props - The unfiltered input props\n * @param allowedPropsNames - The array or record of allowed prop names.\n * @returns The filtered props\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function getNativeProps>(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n props: Record,\n allowedPropNames: string[] | Record,\n excludedPropNames?: string[],\n): T {\n // It'd be great to properly type this while allowing 'aria-` and 'data-' attributes like TypeScript does for\n // JSX attributes, but that ability is hardcoded into the TS compiler with no analog in TypeScript typings.\n // Then we'd be able to enforce props extends native props (including aria- and data- attributes), and then\n // return native props.\n // We should be able to do this once this PR is merged: https://github.com/microsoft/TypeScript/pull/26797\n\n const isArray = Array.isArray(allowedPropNames);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const result: Record = {};\n const keys = Object.keys(props);\n\n for (const key of keys) {\n const isNativeProp =\n (!isArray && (allowedPropNames as Record)[key]) ||\n (isArray && (allowedPropNames as string[]).indexOf(key) >= 0) ||\n key.indexOf('data-') === 0 ||\n key.indexOf('aria-') === 0;\n\n if (isNativeProp && (!excludedPropNames || excludedPropNames?.indexOf(key) === -1)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n result[key] = props![key] as any;\n }\n }\n\n return result as T;\n}\n","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createBrowserHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a that uses HTML5 history.\n */\nclass BrowserRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return ;\n }\n}\n\nif (__DEV__) {\n BrowserRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n forceRefresh: PropTypes.bool,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number\n };\n\n BrowserRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \" ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { BrowserRouter as Router }`.\"\n );\n };\n}\n\nexport default BrowserRouter;\n","import React from \"react\";\nimport { Router } from \"react-router\";\nimport { createHashHistory as createHistory } from \"history\";\nimport PropTypes from \"prop-types\";\nimport warning from \"tiny-warning\";\n\n/**\n * The public API for a that uses window.location.hash.\n */\nclass HashRouter extends React.Component {\n history = createHistory(this.props);\n\n render() {\n return ;\n }\n}\n\nif (__DEV__) {\n HashRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n getUserConfirmation: PropTypes.func,\n hashType: PropTypes.oneOf([\"hashbang\", \"noslash\", \"slash\"])\n };\n\n HashRouter.prototype.componentDidMount = function() {\n warning(\n !this.props.history,\n \" ignores the history prop. To use a custom history, \" +\n \"use `import { Router }` instead of `import { HashRouter as Router }`.\"\n );\n };\n}\n\nexport default HashRouter;\n","import { createLocation } from \"history\";\n\nexport const resolveToLocation = (to, currentLocation) =>\n typeof to === \"function\" ? to(currentLocation) : to;\n\nexport const normalizeToLocation = (to, currentLocation) => {\n return typeof to === \"string\"\n ? createLocation(to, null, null, currentLocation)\n : to;\n};\n","import React from \"react\";\nimport { __RouterContext as RouterContext } from \"react-router\";\nimport { createPath } from 'history';\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\nconst LinkAnchor = forwardRef(\n (\n {\n innerRef, // TODO: deprecate\n navigate,\n onClick,\n ...rest\n },\n forwardedRef\n ) => {\n const { target } = rest;\n\n let props = {\n ...rest,\n onClick: event => {\n try {\n if (onClick) onClick(event);\n } catch (ex) {\n event.preventDefault();\n throw ex;\n }\n\n if (\n !event.defaultPrevented && // onClick prevented default\n event.button === 0 && // ignore everything but left clicks\n (!target || target === \"_self\") && // let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // ignore clicks with modifier keys\n ) {\n event.preventDefault();\n navigate();\n }\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.ref = innerRef;\n }\n\n /* eslint-disable-next-line jsx-a11y/anchor-has-content */\n return ;\n }\n);\n\nif (__DEV__) {\n LinkAnchor.displayName = \"LinkAnchor\";\n}\n\n/**\n * The public API for rendering a history-aware .\n */\nconst Link = forwardRef(\n (\n {\n component = LinkAnchor,\n replace,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n \n {context => {\n invariant(context, \"You should not use outside a \");\n\n const { history } = context;\n\n const location = normalizeToLocation(\n resolveToLocation(to, context.location),\n context.location\n );\n\n const href = location ? history.createHref(location) : \"\";\n const props = {\n ...rest,\n href,\n navigate() {\n const location = resolveToLocation(to, context.location);\n const isDuplicateNavigation = createPath(context.location) === createPath(normalizeToLocation(location));\n const method = (replace || isDuplicateNavigation) ? history.replace : history.push;\n\n method(location);\n }\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return React.createElement(component, props);\n }}\n \n );\n }\n);\n\nif (__DEV__) {\n const toType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.func\n ]);\n const refType = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.shape({ current: PropTypes.any })\n ]);\n\n Link.displayName = \"Link\";\n\n Link.propTypes = {\n innerRef: refType,\n onClick: PropTypes.func,\n replace: PropTypes.bool,\n target: PropTypes.string,\n to: toType.isRequired\n };\n}\n\nexport default Link;\n","import React from \"react\";\nimport { __RouterContext as RouterContext, matchPath } from \"react-router\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"tiny-invariant\";\nimport Link from \"./Link.js\";\nimport {\n resolveToLocation,\n normalizeToLocation\n} from \"./utils/locationUtils.js\";\n\n// React 15 compat\nconst forwardRefShim = C => C;\nlet { forwardRef } = React;\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction joinClassnames(...classnames) {\n return classnames.filter(i => i).join(\" \");\n}\n\n/**\n * A wrapper that knows if it's \"active\" or not.\n */\nconst NavLink = forwardRef(\n (\n {\n \"aria-current\": ariaCurrent = \"page\",\n activeClassName = \"active\", // TODO: deprecate\n activeStyle, // TODO: deprecate\n className: classNameProp,\n exact,\n isActive: isActiveProp,\n location: locationProp,\n sensitive,\n strict,\n style: styleProp,\n to,\n innerRef, // TODO: deprecate\n ...rest\n },\n forwardedRef\n ) => {\n return (\n \n {context => {\n invariant(context, \"You should not use outside a \");\n\n const currentLocation = locationProp || context.location;\n const toLocation = normalizeToLocation(\n resolveToLocation(to, currentLocation),\n currentLocation\n );\n const { pathname: path } = toLocation;\n // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n const escapedPath =\n path && path.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n\n const match = escapedPath\n ? matchPath(currentLocation.pathname, {\n path: escapedPath,\n exact,\n sensitive,\n strict\n })\n : null;\n const isActive = !!(isActiveProp\n ? isActiveProp(match, currentLocation)\n : match);\n\n let className =\n typeof classNameProp === \"function\"\n ? classNameProp(isActive)\n : classNameProp;\n\n let style =\n typeof styleProp === \"function\" ? styleProp(isActive) : styleProp;\n\n if (isActive) {\n className = joinClassnames(className, activeClassName);\n style = { ...style, ...activeStyle };\n }\n\n const props = {\n \"aria-current\": (isActive && ariaCurrent) || null,\n className,\n style,\n to: toLocation,\n ...rest\n };\n\n // React 15 compat\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return ;\n }}\n \n );\n }\n);\n\nif (__DEV__) {\n NavLink.displayName = \"NavLink\";\n\n const ariaCurrentType = PropTypes.oneOf([\n \"page\",\n \"step\",\n \"location\",\n \"date\",\n \"time\",\n \"true\",\n \"false\"\n ]);\n\n NavLink.propTypes = {\n ...Link.propTypes,\n \"aria-current\": ariaCurrentType,\n activeClassName: PropTypes.string,\n activeStyle: PropTypes.object,\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n exact: PropTypes.bool,\n isActive: PropTypes.func,\n location: PropTypes.object,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool,\n style: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n };\n}\n\nexport default NavLink;\n","/**\n * {@docCategory Selection}\n */\nexport interface IObjectWithKey {\n key?: string | number;\n}\n\nexport const SELECTION_CHANGE = 'change';\nexport const SELECTION_ITEMS_CHANGE = 'items-change';\n\n/**\n * {@docCategory Selection}\n */\nexport enum SelectionMode {\n none = 0,\n single = 1,\n multiple = 2,\n}\n\n/**\n * {@docCategory Selection}\n */\nexport interface ISelection {\n count: number;\n mode: SelectionMode;\n\n canSelectItem: (item: TItem, index?: number) => boolean;\n\n // Obesrvable methods.\n setChangeEvents(isEnabled: boolean, suppressChange?: boolean): void;\n\n // Initialization methods.\n\n setItems(items: TItem[], shouldClear: boolean): void;\n getItems(): TItem[];\n\n // Item utility methods.\n getItemIndex?(key: string): number;\n\n // Read selection methods.\n\n getSelection(): TItem[];\n getSelectedIndices(): number[];\n getSelectedCount(): number;\n isRangeSelected(fromIndex: number, count: number): boolean;\n\n isAllSelected(): boolean;\n isKeySelected(key: string): boolean;\n isIndexSelected(index: number): boolean;\n\n isModal?(): boolean;\n\n // Write selection methods.\n\n setAllSelected(isAllSelected: boolean): void;\n setKeySelected(key: string, isSelected: boolean, shouldAnchor: boolean): void;\n setIndexSelected(index: number, isSelected: boolean, shouldAnchor: boolean): void;\n\n setModal?(isModal: boolean): void; // TODO make non-optional on next breaking change\n\n // Write range selection methods.\n\n selectToKey(key: string, clearSelection?: boolean): void;\n selectToIndex(index: number, clearSelection?: boolean): void;\n\n // Toggle helpers.\n\n toggleAllSelected(): void;\n toggleKeySelected(key: string): void;\n toggleIndexSelected(index: number): void;\n toggleRangeSelected(fromIndex: number, count: number): void;\n}\n\n/**\n * {@docCategory Selection}\n */\nexport enum SelectionDirection {\n horizontal = 0,\n vertical = 1,\n}\n","import {\n AnimationClassNames,\n AnimationStyles,\n HighContrastSelector,\n getFocusStyle,\n getGlobalClassNames,\n FontWeights,\n getHighContrastNoAdjustStyle,\n} from '../../Styling';\nimport { IsFocusVisibleClassName } from '../../Utilities';\nimport { GlobalClassNames as LinkGlobalClassNames } from '../../components/Link/Link.styles';\nimport type { IDetailsRowStyleProps, IDetailsRowStyles, ICellStyleProps } from './DetailsRow.types';\nimport type { IStyle } from '../../Styling';\n\nexport const DetailsRowGlobalClassNames = {\n root: 'ms-DetailsRow',\n // TODO: in Fabric 7.0 lowercase the 'Compact' for consistency across other components.\n compact: 'ms-DetailsList--Compact',\n cell: 'ms-DetailsRow-cell',\n cellAnimation: 'ms-DetailsRow-cellAnimation',\n cellCheck: 'ms-DetailsRow-cellCheck',\n check: 'ms-DetailsRow-check',\n cellMeasurer: 'ms-DetailsRow-cellMeasurer',\n listCellFirstChild: 'ms-List-cell:first-child',\n isContentUnselectable: 'is-contentUnselectable',\n isSelected: 'is-selected',\n isCheckVisible: 'is-check-visible',\n isRowHeader: 'is-row-header',\n fields: 'ms-DetailsRow-fields',\n};\nconst IsFocusableSelector = \"[data-is-focusable='true']\";\n\nexport const DEFAULT_CELL_STYLE_PROPS: ICellStyleProps = {\n cellLeftPadding: 12,\n cellRightPadding: 8,\n cellExtraRightPadding: 24,\n};\n\n// Source of default row heights to share.\nexport const DEFAULT_ROW_HEIGHTS = {\n rowHeight: 42,\n compactRowHeight: 32,\n};\n\n// Constant values\nconst values = {\n ...DEFAULT_ROW_HEIGHTS,\n rowVerticalPadding: 11,\n compactRowVerticalPadding: 6,\n};\n\nexport const getDetailsRowStyles = (props: IDetailsRowStyleProps): IDetailsRowStyles => {\n const {\n theme,\n isSelected,\n canSelect,\n droppingClassName,\n anySelected,\n isCheckVisible,\n checkboxCellClassName,\n compact,\n className,\n cellStyleProps = DEFAULT_CELL_STYLE_PROPS,\n enableUpdateAnimations,\n disabled,\n } = props;\n\n const { palette, fonts } = theme;\n const {\n neutralPrimary,\n white,\n neutralSecondary,\n neutralLighter,\n neutralLight,\n neutralDark,\n neutralQuaternaryAlt,\n } = palette;\n const { focusBorder, linkHovered: focusedLinkColor } = theme.semanticColors;\n\n const classNames = getGlobalClassNames(DetailsRowGlobalClassNames, theme);\n\n const colors = {\n // Default\n defaultHeaderText: neutralPrimary,\n defaultMetaText: neutralSecondary,\n defaultBackground: white,\n\n // Default Hover\n defaultHoverHeaderText: neutralDark,\n defaultHoverMetaText: neutralPrimary,\n defaultHoverBackground: neutralLighter,\n\n // Selected\n selectedHeaderText: neutralDark,\n selectedMetaText: neutralPrimary,\n selectedBackground: neutralLight,\n\n // Selected Hover\n selectedHoverHeaderText: neutralDark,\n selectedHoverMetaText: neutralPrimary,\n selectedHoverBackground: neutralQuaternaryAlt,\n\n // Focus\n focusHeaderText: neutralDark,\n focusMetaText: neutralPrimary,\n focusBackground: neutralLight,\n focusHoverBackground: neutralQuaternaryAlt,\n };\n\n const rowHighContrastFocus = {\n top: 2,\n right: 2,\n bottom: 2,\n left: 2,\n };\n\n // Selected row styles\n const selectedStyles: IStyle = [\n getFocusStyle(theme, {\n inset: -1,\n borderColor: focusBorder,\n outlineColor: white,\n highContrastStyle: rowHighContrastFocus,\n }),\n classNames.isSelected,\n {\n color: colors.selectedMetaText,\n background: colors.selectedBackground,\n borderBottom: `1px solid ${white}`,\n selectors: {\n '&:before': {\n position: 'absolute',\n display: 'block',\n top: -1,\n height: 1,\n bottom: 0,\n left: 0,\n right: 0,\n content: '',\n borderTop: `1px solid ${white}`,\n },\n\n [`.${classNames.cell} > .${LinkGlobalClassNames.root}`]: {\n color: focusedLinkColor,\n selectors: {\n [HighContrastSelector]: {\n color: 'HighlightText',\n },\n },\n },\n\n // Selected State hover\n '&:hover': {\n background: colors.selectedHoverBackground,\n color: colors.selectedHoverMetaText,\n selectors: {\n // Selected State hover meta cell\n [HighContrastSelector]: {\n background: 'Highlight',\n selectors: {\n [`.${classNames.cell}`]: {\n color: 'HighlightText',\n },\n [`.${classNames.cell} > .${LinkGlobalClassNames.root}`]: {\n forcedColorAdjust: 'none',\n color: 'HighlightText',\n },\n },\n },\n\n // Selected State hover Header cell\n [`.${classNames.isRowHeader}`]: {\n color: colors.selectedHoverHeaderText,\n selectors: {\n [HighContrastSelector]: {\n color: 'HighlightText',\n },\n },\n },\n },\n },\n\n // Focus state\n '&:focus': {\n background: colors.focusBackground,\n selectors: {\n // Selected State hover meta cell\n [`.${classNames.cell}`]: {\n color: colors.focusMetaText,\n selectors: {\n [HighContrastSelector]: {\n color: 'HighlightText',\n selectors: {\n '> a': {\n color: 'HighlightText',\n },\n },\n },\n },\n },\n\n // Row header cell\n [`.${classNames.isRowHeader}`]: {\n color: colors.focusHeaderText,\n selectors: {\n [HighContrastSelector]: {\n color: 'HighlightText',\n },\n },\n },\n\n // Ensure high-contrast mode overrides default focus background\n [HighContrastSelector]: {\n background: 'Highlight',\n },\n },\n },\n\n [HighContrastSelector]: {\n background: 'Highlight',\n color: 'HighlightText',\n ...getHighContrastNoAdjustStyle(),\n selectors: {\n a: {\n color: 'HighlightText',\n },\n },\n },\n\n // Focus and hover state\n '&:focus:hover': {\n background: colors.focusHoverBackground,\n },\n },\n },\n ];\n\n const cannotSelectStyles: IStyle = [\n classNames.isContentUnselectable,\n {\n userSelect: 'none',\n cursor: 'default',\n },\n ];\n\n const rootCompactStyles: IStyle = {\n minHeight: values.compactRowHeight,\n border: 0,\n };\n\n const cellCompactStyles: IStyle = {\n minHeight: values.compactRowHeight,\n paddingTop: values.compactRowVerticalPadding,\n paddingBottom: values.compactRowVerticalPadding,\n paddingLeft: `${cellStyleProps.cellLeftPadding}px`,\n };\n\n const defaultCellStyles: IStyle = [\n getFocusStyle(theme, { inset: -1 }),\n classNames.cell,\n {\n display: 'inline-block',\n position: 'relative',\n boxSizing: 'border-box',\n minHeight: values.rowHeight,\n verticalAlign: 'top',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n paddingTop: values.rowVerticalPadding,\n paddingBottom: values.rowVerticalPadding,\n paddingLeft: `${cellStyleProps.cellLeftPadding}px`,\n selectors: {\n '& > button': {\n maxWidth: '100%',\n },\n\n [IsFocusableSelector]: getFocusStyle(theme, { inset: -1, borderColor: neutralSecondary, outlineColor: white }),\n },\n },\n\n isSelected && {\n selectors: {\n [HighContrastSelector]: {\n background: 'Highlight',\n color: 'HighlightText',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n\n compact && cellCompactStyles,\n disabled && { opacity: 0.5 },\n ];\n\n return {\n root: [\n classNames.root,\n AnimationClassNames.fadeIn400,\n droppingClassName,\n theme.fonts.small,\n isCheckVisible && classNames.isCheckVisible,\n getFocusStyle(theme, { borderColor: focusBorder, outlineColor: white }),\n {\n borderBottom: `1px solid ${neutralLighter}`,\n background: colors.defaultBackground,\n color: colors.defaultMetaText,\n // This ensures that the row always tries to consume is minimum width and does not compress.\n display: 'inline-flex',\n minWidth: '100%',\n minHeight: values.rowHeight,\n whiteSpace: 'nowrap',\n padding: 0,\n boxSizing: 'border-box',\n verticalAlign: 'top',\n textAlign: 'left',\n selectors: {\n [`.${classNames.listCellFirstChild} &:before`]: {\n display: 'none',\n },\n\n '&:hover': {\n background: colors.defaultHoverBackground,\n color: colors.defaultHoverMetaText,\n selectors: {\n [`.${classNames.isRowHeader}`]: {\n color: colors.defaultHoverHeaderText,\n },\n\n [`.${classNames.cell} > .${LinkGlobalClassNames.root}`]: {\n color: focusedLinkColor,\n },\n },\n },\n\n [`&:hover .${classNames.check}`]: {\n opacity: 1,\n },\n\n [`.${IsFocusVisibleClassName} &:focus .${classNames.check}`]: {\n opacity: 1,\n },\n\n '.ms-GroupSpacer': {\n flexShrink: 0,\n flexGrow: 0,\n },\n },\n },\n isSelected && selectedStyles,\n !canSelect && cannotSelectStyles,\n compact && rootCompactStyles,\n className,\n ],\n\n cellUnpadded: {\n paddingRight: `${cellStyleProps.cellRightPadding}px`,\n },\n\n cellPadded: {\n paddingRight: `${cellStyleProps.cellExtraRightPadding + cellStyleProps.cellRightPadding}px`,\n selectors: {\n [`&.${classNames.cellCheck}`]: {\n paddingRight: 0,\n },\n },\n },\n\n cell: defaultCellStyles,\n cellAnimation: enableUpdateAnimations && AnimationStyles.slideLeftIn40,\n cellMeasurer: [\n classNames.cellMeasurer,\n {\n overflow: 'visible',\n whiteSpace: 'nowrap',\n },\n ],\n checkCell: [\n defaultCellStyles,\n classNames.cellCheck,\n checkboxCellClassName,\n {\n padding: 0,\n // Ensure that the check cell covers the top border of the cell.\n // This ensures the click target does not leave a spot which would\n // cause other items to be deselected.\n paddingTop: 1,\n marginTop: -1,\n flexShrink: 0,\n },\n ],\n checkCover: {\n position: 'absolute',\n top: -1,\n left: 0,\n bottom: 0,\n right: 0,\n display: anySelected ? 'block' : 'none',\n },\n fields: [\n classNames.fields,\n {\n display: 'flex',\n alignItems: 'stretch',\n },\n ],\n isRowHeader: [\n classNames.isRowHeader,\n {\n color: colors.defaultHeaderText,\n fontSize: fonts.medium.fontSize,\n },\n isSelected && {\n color: colors.selectedHeaderText,\n fontWeight: FontWeights.semibold,\n selectors: {\n [HighContrastSelector]: {\n color: 'HighlightText',\n },\n },\n },\n ],\n isMultiline: [\n defaultCellStyles,\n {\n whiteSpace: 'normal',\n wordBreak: 'break-word',\n textOverflow: 'clip',\n },\n ],\n check: [classNames.check],\n };\n};\n","/**\n * The days of the week\n * {@docCategory DateTimeUtilities}\n */\nexport enum DayOfWeek {\n Sunday = 0,\n Monday = 1,\n Tuesday = 2,\n Wednesday = 3,\n Thursday = 4,\n Friday = 5,\n Saturday = 6,\n}\n\n/**\n * The months\n * {@docCategory DateTimeUtilities}\n */\nexport enum MonthOfYear {\n January = 0,\n February = 1,\n March = 2,\n April = 3,\n May = 4,\n June = 5,\n July = 6,\n August = 7,\n September = 8,\n October = 9,\n November = 10,\n December = 11,\n}\n\n/**\n * First week of the year settings types\n * {@docCategory DateTimeUtilities}\n */\nexport enum FirstWeekOfYear {\n FirstDay = 0,\n FirstFullWeek = 1,\n FirstFourDayWeek = 2,\n}\n\n/**\n * The supported date range types\n * {@docCategory DateTimeUtilities}\n */\nexport enum DateRangeType {\n Day = 0,\n Week = 1,\n Month = 2,\n WorkWeek = 3,\n}\n\nexport const DAYS_IN_WEEK = 7;\n","import { getVirtualParent } from './getVirtualParent';\n/**\n * Gets the element which is the parent of a given element.\n * If `allowVirtuaParents` is `true`, this method prefers the virtual parent over\n * real DOM parent when present.\n *\n * @public\n */\nexport function getParent(child: HTMLElement, allowVirtualParents: boolean = true): HTMLElement | null {\n return (\n child &&\n ((allowVirtualParents && getVirtualParent(child)) || (child.parentNode && (child.parentNode as HTMLElement)))\n );\n}\n","import { isVirtualElement } from './isVirtualElement';\n/**\n * Gets the virtual parent given the child element, if it exists.\n *\n * @public\n */\nexport function getVirtualParent(child: HTMLElement): HTMLElement | undefined {\n let parent: HTMLElement | undefined;\n if (child && isVirtualElement(child)) {\n parent = child._virtual.parent;\n }\n return parent;\n}\n","import { IVirtualElement } from './IVirtualElement';\n/**\n * Determines whether or not an element has the virtual hierarchy extension.\n *\n * @public\n */\nexport function isVirtualElement(element: HTMLElement | IVirtualElement): element is IVirtualElement {\n return element && !!(element)._virtual;\n}\n","import { memoizeFunction } from '../../Utilities';\nimport { getGlobalClassNames, mergeStyleSets } from '../../Styling';\nimport type { ITheme } from '../../Styling';\nimport type { IButtonStyles } from './Button.types';\n\nexport interface IButtonClassNames {\n root?: string;\n flexContainer?: string;\n textContainer?: string;\n icon?: string;\n label?: string;\n menuIcon?: string;\n description?: string;\n screenReaderText?: string;\n}\n\nexport const ButtonGlobalClassNames = {\n msButton: 'ms-Button',\n msButtonHasMenu: 'ms-Button--hasMenu',\n msButtonIcon: 'ms-Button-icon',\n msButtonMenuIcon: 'ms-Button-menuIcon',\n msButtonLabel: 'ms-Button-label',\n msButtonDescription: 'ms-Button-description',\n msButtonScreenReaderText: 'ms-Button-screenReaderText',\n msButtonFlexContainer: 'ms-Button-flexContainer',\n msButtonTextContainer: 'ms-Button-textContainer',\n};\n\nexport const getBaseButtonClassNames = memoizeFunction(\n (\n theme: ITheme,\n styles: IButtonStyles,\n className: string,\n variantClassName: string,\n iconClassName: string | undefined,\n menuIconClassName: string | undefined,\n disabled: boolean,\n hasMenu: boolean,\n checked: boolean,\n expanded: boolean,\n isSplit: boolean | undefined,\n ): IButtonClassNames => {\n const classNames = getGlobalClassNames(ButtonGlobalClassNames, theme || {});\n\n const isExpanded = expanded && !isSplit;\n return mergeStyleSets({\n root: [\n classNames.msButton,\n styles.root,\n variantClassName,\n checked && ['is-checked', styles.rootChecked],\n isExpanded && [\n 'is-expanded',\n styles.rootExpanded,\n {\n selectors: {\n [`:hover .${classNames.msButtonIcon}`]: styles.iconExpandedHovered,\n // menuIcon falls back to rootExpandedHovered to support original behavior\n [`:hover .${classNames.msButtonMenuIcon}`]: styles.menuIconExpandedHovered || styles.rootExpandedHovered,\n ':hover': styles.rootExpandedHovered,\n },\n },\n ],\n hasMenu && [ButtonGlobalClassNames.msButtonHasMenu, styles.rootHasMenu],\n disabled && ['is-disabled', styles.rootDisabled],\n !disabled &&\n !isExpanded &&\n !checked && {\n selectors: {\n ':hover': styles.rootHovered,\n [`:hover .${classNames.msButtonLabel}`]: styles.labelHovered,\n [`:hover .${classNames.msButtonIcon}`]: styles.iconHovered,\n [`:hover .${classNames.msButtonDescription}`]: styles.descriptionHovered,\n [`:hover .${classNames.msButtonMenuIcon}`]: styles.menuIconHovered,\n ':focus': styles.rootFocused,\n ':active': styles.rootPressed,\n [`:active .${classNames.msButtonIcon}`]: styles.iconPressed,\n [`:active .${classNames.msButtonDescription}`]: styles.descriptionPressed,\n [`:active .${classNames.msButtonMenuIcon}`]: styles.menuIconPressed,\n },\n },\n disabled && checked && [styles.rootCheckedDisabled],\n !disabled &&\n checked && {\n selectors: {\n ':hover': styles.rootCheckedHovered,\n ':active': styles.rootCheckedPressed,\n },\n },\n className,\n ],\n flexContainer: [classNames.msButtonFlexContainer, styles.flexContainer],\n textContainer: [classNames.msButtonTextContainer, styles.textContainer],\n icon: [\n classNames.msButtonIcon,\n iconClassName,\n styles.icon,\n isExpanded && styles.iconExpanded,\n checked && styles.iconChecked,\n disabled && styles.iconDisabled,\n ],\n label: [classNames.msButtonLabel, styles.label, checked && styles.labelChecked, disabled && styles.labelDisabled],\n menuIcon: [\n classNames.msButtonMenuIcon,\n menuIconClassName,\n styles.menuIcon,\n checked && styles.menuIconChecked,\n disabled && !isSplit && styles.menuIconDisabled,\n !disabled &&\n !isExpanded &&\n !checked && {\n selectors: {\n ':hover': styles.menuIconHovered,\n ':active': styles.menuIconPressed,\n },\n },\n isExpanded && ['is-expanded', styles.menuIconExpanded],\n ],\n description: [\n classNames.msButtonDescription,\n styles.description,\n checked && styles.descriptionChecked,\n disabled && styles.descriptionDisabled,\n ],\n screenReaderText: [classNames.msButtonScreenReaderText, styles.screenReaderText],\n });\n },\n);\n","import { _isSSR } from './setSSR';\n\n/**\n * Helper to get the document object. Note that in popup window cases, document\n * might be the wrong document, which is why we look at ownerDocument for the\n * truth. Also note that the SSR flag is used to test ssr scenarios even if\n * document is defined (from JSDOM for example.)\n *\n * @public\n */\nexport function getDocument(rootElement?: HTMLElement | null): Document | undefined {\n if (_isSSR || typeof document === 'undefined') {\n return undefined;\n } else {\n const el = rootElement as Element;\n\n return el && el.ownerDocument ? el.ownerDocument : document;\n }\n}\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n return _extends.apply(this, arguments);\n}","import * as React from 'react';\nimport type { IGroupSpacerProps } from './GroupSpacer.types';\n\nexport const SPACER_WIDTH = 36;\n\nexport const GroupSpacer: React.FunctionComponent = props => {\n const { count, indentWidth = SPACER_WIDTH, role = 'presentation' } = props;\n const width = count * indentWidth;\n\n return count > 0 ? (\n \n ) : null;\n};\n","export const KTP_PREFIX = 'ktp';\nexport const KTP_SEPARATOR = '-';\nexport const KTP_FULL_PREFIX = KTP_PREFIX + KTP_SEPARATOR;\nexport const DATAKTP_TARGET = 'data-ktp-target';\nexport const DATAKTP_EXECUTE_TARGET = 'data-ktp-execute-target';\nexport const DATAKTP_ARIA_TARGET = 'data-ktp-aria-target';\nexport const KTP_LAYER_ID = 'ktp-layer-id';\nexport const KTP_ARIA_SEPARATOR = ', ';\n\n// Events\nexport namespace KeytipEvents {\n export const KEYTIP_ADDED = 'keytipAdded';\n export const KEYTIP_REMOVED = 'keytipRemoved';\n export const KEYTIP_UPDATED = 'keytipUpdated';\n export const PERSISTED_KEYTIP_ADDED = 'persistedKeytipAdded';\n export const PERSISTED_KEYTIP_REMOVED = 'persistedKeytipRemoved';\n export const PERSISTED_KEYTIP_EXECUTE = 'persistedKeytipExecute';\n export const ENTER_KEYTIP_MODE = 'enterKeytipMode';\n export const EXIT_KEYTIP_MODE = 'exitKeytipMode';\n}\n","import * as React from 'react';\n\n/**\n * Hook to initialize and return a constant value. Unlike `React.useMemo`, this is guaranteed to\n * always return the same value (and if the initializer is a function, only call it once).\n * This is similar to setting a private member in a class constructor.\n *\n * If the value should ever change based on dependencies, use `React.useMemo` instead.\n *\n * @param initialValue - Initial value, or function to get the initial value. Similar to `useState`,\n * only the value/function passed in the first time this is called is respected.\n * @returns The value. The identity of this value will always be the same.\n */\nexport function useConst(initialValue: T | (() => T)): T {\n // Use useRef to store the value because it's the least expensive built-in hook that works here\n // (we could also use `const [value] = React.useState(initialValue)` but that's more expensive\n // internally due to reducer handling which we don't need)\n const ref = React.useRef<{ value: T }>();\n if (ref.current === undefined) {\n // Box the value in an object so we can tell if it's initialized even if the initializer\n // returns/is undefined\n ref.current = {\n value: typeof initialValue === 'function' ? (initialValue as Function)() : initialValue,\n };\n }\n return ref.current.value;\n}\n","import { IStyle } from './IStyle';\n\nexport const InjectionMode = {\n /**\n * Avoids style injection, use getRules() to read the styles.\n */\n none: 0 as 0,\n\n /**\n * Inserts rules using the insertRule api.\n */\n insertNode: 1 as 1,\n\n /**\n * Appends rules using appendChild.\n */\n appendChild: 2 as 2,\n};\n\nexport type InjectionMode = typeof InjectionMode[keyof typeof InjectionMode];\n\n/**\n * CSP settings for the stylesheet\n */\nexport interface ICSPSettings {\n /**\n * Nonce to inject into script tag\n */\n nonce?: string;\n}\n\n/**\n * Stylesheet config.\n *\n * @public\n */\nexport interface IStyleSheetConfig {\n /**\n * Injection mode for how rules are inserted.\n */\n injectionMode?: InjectionMode;\n\n /**\n * Default 'displayName' to use for a className.\n * @defaultvalue 'css'\n */\n defaultPrefix?: string;\n\n /**\n * Defines the default direction of rules for auto-rtlifying things.\n * While typically this is represented as a DIR attribute in the markup,\n * the DIR is not enough to control whether padding goes on the left or\n * right. Use this to set the default direction when rules are registered.\n */\n rtl?: boolean;\n\n /**\n * Default 'namespace' to attach before the className.\n */\n namespace?: string;\n\n /**\n * CSP settings\n */\n cspSettings?: ICSPSettings;\n\n /**\n * Callback executed when a rule is inserted.\n * @deprecated Use `Stylesheet.onInsertRule` instead.\n */\n onInsertRule?: (rule: string) => void;\n\n /**\n * Initial value for classnames cache. Key is serialized css rules associated with a classname.\n */\n classNameCache?: { [key: string]: string };\n}\n\n/**\n * Representation of Stylesheet used for rehydration.\n */\nexport interface ISerializedStylesheet {\n classNameToArgs: Stylesheet['_classNameToArgs'];\n counter: Stylesheet['_counter'];\n keyToClassName: Stylesheet['_keyToClassName'];\n preservedRules: Stylesheet['_preservedRules'];\n rules: Stylesheet['_rules'];\n}\n\nconst STYLESHEET_SETTING = '__stylesheet__';\n/**\n * MSIE 11 doesn't cascade styles based on DOM ordering, but rather on the order that each style node\n * is created. As such, to maintain consistent priority, IE11 should reuse a single style node.\n */\nconst REUSE_STYLE_NODE = typeof navigator !== 'undefined' && /rv:11.0/.test(navigator.userAgent);\n\nlet _global: (Window | {}) & {\n [STYLESHEET_SETTING]?: Stylesheet;\n FabricConfig?: {\n mergeStyles?: IStyleSheetConfig;\n serializedStylesheet?: ISerializedStylesheet;\n };\n} = {};\n\n// Grab window.\ntry {\n _global = window || {};\n} catch {\n /* leave as blank object */\n}\n\nlet _stylesheet: Stylesheet | undefined;\n\n/**\n * Represents the state of styles registered in the page. Abstracts\n * the surface for adding styles to the stylesheet, exposes helpers\n * for reading the styles registered in server rendered scenarios.\n *\n * @public\n */\nexport class Stylesheet {\n private _lastStyleElement?: HTMLStyleElement;\n private _styleElement?: HTMLStyleElement;\n private _rules: string[] = [];\n private _preservedRules: string[] = [];\n private _config: IStyleSheetConfig;\n private _counter = 0;\n private _keyToClassName: { [key: string]: string } = {};\n private _onInsertRuleCallbacks: Function[] = [];\n private _onResetCallbacks: Function[] = [];\n private _classNameToArgs: { [key: string]: { args: any; rules: string[] } } = {};\n\n /**\n * Gets the singleton instance.\n */\n public static getInstance(): Stylesheet {\n _stylesheet = _global[STYLESHEET_SETTING] as Stylesheet;\n\n if (!_stylesheet || (_stylesheet._lastStyleElement && _stylesheet._lastStyleElement.ownerDocument !== document)) {\n const fabricConfig = _global?.FabricConfig || {};\n\n const stylesheet = new Stylesheet(fabricConfig.mergeStyles, fabricConfig.serializedStylesheet);\n _stylesheet = stylesheet;\n _global[STYLESHEET_SETTING] = stylesheet;\n }\n\n return _stylesheet;\n }\n\n constructor(config?: IStyleSheetConfig, serializedStylesheet?: ISerializedStylesheet) {\n this._config = {\n // If there is no document we won't have an element to inject into.\n injectionMode: typeof document === 'undefined' ? InjectionMode.none : InjectionMode.insertNode,\n defaultPrefix: 'css',\n namespace: undefined,\n cspSettings: undefined,\n ...config,\n };\n\n this._classNameToArgs = serializedStylesheet?.classNameToArgs ?? this._classNameToArgs;\n this._counter = serializedStylesheet?.counter ?? this._counter;\n this._keyToClassName = this._config.classNameCache ?? serializedStylesheet?.keyToClassName ?? this._keyToClassName;\n this._preservedRules = serializedStylesheet?.preservedRules ?? this._preservedRules;\n this._rules = serializedStylesheet?.rules ?? this._rules;\n }\n\n /**\n * Serializes the Stylesheet instance into a format which allows rehydration on creation.\n * @returns string representation of `ISerializedStylesheet` interface.\n */\n public serialize(): string {\n return JSON.stringify({\n classNameToArgs: this._classNameToArgs,\n counter: this._counter,\n keyToClassName: this._keyToClassName,\n preservedRules: this._preservedRules,\n rules: this._rules,\n });\n }\n\n /**\n * Configures the stylesheet.\n */\n public setConfig(config?: IStyleSheetConfig): void {\n this._config = {\n ...this._config,\n ...config,\n };\n }\n\n /**\n * Configures a reset callback.\n *\n * @param callback - A callback which will be called when the Stylesheet is reset.\n * @returns function which when called un-registers provided callback.\n */\n public onReset(callback: Function): Function {\n this._onResetCallbacks.push(callback);\n\n return () => {\n this._onResetCallbacks = this._onResetCallbacks.filter(cb => cb !== callback);\n };\n }\n\n /**\n * Configures an insert rule callback.\n *\n * @param callback - A callback which will be called when a rule is inserted.\n * @returns function which when called un-registers provided callback.\n */\n public onInsertRule(callback: Function): Function {\n this._onInsertRuleCallbacks.push(callback);\n\n return () => {\n this._onInsertRuleCallbacks = this._onInsertRuleCallbacks.filter(cb => cb !== callback);\n };\n }\n\n /**\n * Generates a unique classname.\n *\n * @param displayName - Optional value to use as a prefix.\n */\n public getClassName(displayName?: string): string {\n const { namespace } = this._config;\n const prefix = displayName || this._config.defaultPrefix;\n\n return `${namespace ? namespace + '-' : ''}${prefix}-${this._counter++}`;\n }\n\n /**\n * Used internally to cache information about a class which was\n * registered with the stylesheet.\n */\n public cacheClassName(className: string, key: string, args: IStyle[], rules: string[]): void {\n this._keyToClassName[key] = className;\n this._classNameToArgs[className] = {\n args,\n rules,\n };\n }\n\n /**\n * Gets the appropriate classname given a key which was previously\n * registered using cacheClassName.\n */\n public classNameFromKey(key: string): string | undefined {\n return this._keyToClassName[key];\n }\n\n /**\n * Gets all classnames cache with the stylesheet.\n */\n public getClassNameCache(): { [key: string]: string } {\n return this._keyToClassName;\n }\n\n /**\n * Gets the arguments associated with a given classname which was\n * previously registered using cacheClassName.\n */\n public argsFromClassName(className: string): IStyle[] | undefined {\n const entry = this._classNameToArgs[className];\n\n return entry && entry.args;\n }\n\n /**\n * Gets the rules associated with a given classname which was\n * previously registered using cacheClassName.\n */\n public insertedRulesFromClassName(className: string): string[] | undefined {\n const entry = this._classNameToArgs[className];\n\n return entry && entry.rules;\n }\n\n /**\n * Inserts a css rule into the stylesheet.\n * @param preserve - Preserves the rule beyond a reset boundary.\n */\n public insertRule(rule: string, preserve?: boolean): void {\n const { injectionMode } = this._config;\n const element = injectionMode !== InjectionMode.none ? this._getStyleElement() : undefined;\n\n if (preserve) {\n this._preservedRules.push(rule);\n }\n\n if (element) {\n switch (injectionMode) {\n case InjectionMode.insertNode:\n const { sheet } = element!;\n\n try {\n (sheet as CSSStyleSheet).insertRule(rule, (sheet as CSSStyleSheet).cssRules.length);\n } catch (e) {\n // The browser will throw exceptions on unsupported rules (such as a moz prefix in webkit.)\n // We need to swallow the exceptions for this scenario, otherwise we'd need to filter\n // which could be slower and bulkier.\n }\n break;\n\n case InjectionMode.appendChild:\n element.appendChild(document.createTextNode(rule));\n break;\n }\n } else {\n this._rules.push(rule);\n }\n\n // eslint-disable-next-line deprecation/deprecation\n if (this._config.onInsertRule) {\n // eslint-disable-next-line deprecation/deprecation\n this._config.onInsertRule(rule);\n }\n\n this._onInsertRuleCallbacks.forEach(callback => callback());\n }\n\n /**\n * Gets all rules registered with the stylesheet; only valid when\n * using InsertionMode.none.\n */\n public getRules(includePreservedRules?: boolean): string {\n return (includePreservedRules ? this._preservedRules.join('') : '') + this._rules.join('');\n }\n\n /**\n * Resets the internal state of the stylesheet. Only used in server\n * rendered scenarios where we're using InsertionMode.none.\n */\n public reset(): void {\n this._rules = [];\n this._counter = 0;\n this._classNameToArgs = {};\n this._keyToClassName = {};\n\n this._onResetCallbacks.forEach(callback => callback());\n }\n\n // Forces the regeneration of incoming styles without totally resetting the stylesheet.\n public resetKeys(): void {\n this._keyToClassName = {};\n }\n\n private _getStyleElement(): HTMLStyleElement | undefined {\n if (!this._styleElement && typeof document !== 'undefined') {\n this._styleElement = this._createStyleElement();\n\n if (!REUSE_STYLE_NODE) {\n // Reset the style element on the next frame.\n window.requestAnimationFrame(() => {\n this._styleElement = undefined;\n });\n }\n }\n return this._styleElement;\n }\n\n private _createStyleElement(): HTMLStyleElement {\n const head: HTMLHeadElement = document.head;\n const styleElement = document.createElement('style');\n let nodeToInsertBefore: Node | null = null;\n\n styleElement.setAttribute('data-merge-styles', 'true');\n\n const { cspSettings } = this._config;\n if (cspSettings) {\n if (cspSettings.nonce) {\n styleElement.setAttribute('nonce', cspSettings.nonce);\n }\n }\n if (this._lastStyleElement) {\n // If the `nextElementSibling` is null, then the insertBefore will act as a regular append.\n // https://developer.mozilla.org/en-US/docs/Web/API/Node/insertBefore#Syntax\n nodeToInsertBefore = this._lastStyleElement.nextElementSibling;\n } else {\n const placeholderStyleTag: Element | null = this._findPlaceholderStyleTag();\n\n if (placeholderStyleTag) {\n nodeToInsertBefore = placeholderStyleTag.nextElementSibling;\n } else {\n nodeToInsertBefore = head.childNodes[0];\n }\n }\n\n head!.insertBefore(styleElement, head!.contains(nodeToInsertBefore) ? nodeToInsertBefore : null);\n this._lastStyleElement = styleElement;\n\n return styleElement;\n }\n\n private _findPlaceholderStyleTag(): Element | null {\n const head: HTMLHeadElement = document.head;\n if (head) {\n return head.querySelector('style[data-merge-styles]');\n }\n return null;\n }\n}\n","import { Stylesheet } from '@fluentui/merge-styles';\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\ndeclare class WeakMap {\n public get(key: any): any;\n public set(key: any, value: any): void;\n public has(key: any): boolean;\n}\n\nlet _initializedStylesheetResets = false;\nlet _resetCounter = 0;\nconst _emptyObject = { empty: true };\nconst _dictionary: any = {};\nlet _weakMap = typeof WeakMap === 'undefined' ? null : WeakMap;\n\ninterface IMemoizeNode {\n map: WeakMap | null;\n value?: any;\n}\n\n/**\n * Test utility for providing a custom weakmap.\n *\n * @internal\n * */\nexport function setMemoizeWeakMap(weakMap: any): void {\n _weakMap = weakMap;\n}\n\n/**\n * Reset memoizations.\n */\nexport function resetMemoizations(): void {\n _resetCounter++;\n}\n\n/**\n * Memoize decorator to be used on class methods. WARNING: the `this` reference\n * will be inaccessible within a memoized method, given that a cached method's `this`\n * would not be instance-specific.\n *\n * @public\n */\nexport function memoize(\n _target: any,\n _key: string,\n descriptor: TypedPropertyDescriptor,\n): {\n configurable: boolean;\n get(): T;\n} {\n // We bind to \"null\" to prevent people from inadvertently pulling values from \"this\",\n // rather than passing them in as input values which can be memoized.\n let fn = memoizeFunction(descriptor.value && descriptor.value.bind(null));\n\n return {\n configurable: true,\n get(): T {\n return fn;\n },\n };\n}\n\n/**\n * Memoizes a function; when you pass in the same parameters multiple times, it returns a cached result.\n * Be careful when passing in objects, you need to pass in the same INSTANCE for caching to work. Otherwise\n * it will grow the cache unnecessarily. Also avoid using default values that evaluate functions; passing in\n * undefined for a value and relying on a default function will execute it the first time, but will not\n * re-evaluate subsequent times which may have been unexpected.\n *\n * By default, the cache will reset after 100 permutations, to avoid abuse cases where the function is\n * unintendedly called with unique objects. Without a reset, the cache could grow infinitely, so we safeguard\n * by resetting. To override this behavior, pass a value of 0 to the maxCacheSize parameter.\n *\n * @public\n * @param cb - The function to memoize.\n * @param maxCacheSize - Max results to cache. If the cache exceeds this value, it will reset on the next call.\n * @param ignoreNullOrUndefinedResult - Flag to decide whether to cache callback result if it is undefined/null.\n * If the flag is set to true, the callback result is recomputed every time till the callback result is\n * not undefined/null for the first time, and then the non-undefined/null version gets cached.\n * @returns A memoized version of the function.\n */\nexport function memoizeFunction RetType, RetType>(\n cb: T,\n maxCacheSize: number = 100,\n ignoreNullOrUndefinedResult: boolean = false,\n): T {\n // Avoid breaking scenarios which don't have weak map.\n if (!_weakMap) {\n return cb;\n }\n\n if (!_initializedStylesheetResets) {\n const stylesheet = Stylesheet.getInstance();\n\n if (stylesheet && (stylesheet as { onReset?: unknown }).onReset) {\n Stylesheet.getInstance().onReset(resetMemoizations);\n }\n _initializedStylesheetResets = true;\n }\n\n let rootNode: any;\n let cacheSize = 0;\n let localResetCounter = _resetCounter;\n\n return function memoizedFunction(...args: any[]): RetType {\n let currentNode: any = rootNode;\n\n if (\n rootNode === undefined ||\n localResetCounter !== _resetCounter ||\n (maxCacheSize > 0 && cacheSize > maxCacheSize)\n ) {\n rootNode = _createNode();\n cacheSize = 0;\n localResetCounter = _resetCounter;\n }\n\n currentNode = rootNode;\n\n // Traverse the tree until we find the match.\n for (let i = 0; i < args.length; i++) {\n let arg = _normalizeArg(args[i]);\n\n if (!currentNode.map.has(arg)) {\n currentNode.map.set(arg, _createNode());\n }\n\n currentNode = currentNode.map.get(arg);\n }\n\n if (!currentNode.hasOwnProperty('value')) {\n currentNode.value = cb(...args);\n cacheSize++;\n }\n\n if (ignoreNullOrUndefinedResult && (currentNode.value === null || currentNode.value === undefined)) {\n currentNode.value = cb(...args);\n }\n\n return currentNode.value;\n } as any;\n}\n\n/**\n * Creates a memoizer for a single-value function, backed by a WeakMap.\n * With a WeakMap, the memoized values are only kept as long as the source objects,\n * ensuring that there is no memory leak.\n *\n * This function assumes that the input values passed to the wrapped function will be\n * `function` or `object` types. To memoize functions which accept other inputs, use\n * `memoizeFunction`, which memoizes against arbitrary inputs using a lookup cache.\n *\n * @public\n */\nexport function createMemoizer any>(getValue: F): F {\n if (!_weakMap) {\n // Without a `WeakMap` implementation, memoization is not possible.\n return getValue;\n }\n\n const cache = new _weakMap();\n\n function memoizedGetValue(input: any): any {\n if (!input || (typeof input !== 'function' && typeof input !== 'object')) {\n // A WeakMap can only be used to test against reference values, i.e. 'function' and 'object'.\n // All other inputs cannot be memoized against in this manner.\n return getValue(input);\n }\n\n if (cache.has(input)) {\n return cache.get(input)!;\n }\n\n const value = getValue(input);\n\n cache.set(input, value);\n\n return value;\n }\n\n return memoizedGetValue as F;\n}\n\nfunction _normalizeArg(val: null | undefined): { empty: boolean } | any;\nfunction _normalizeArg(val: object): any;\nfunction _normalizeArg(val: any): any {\n if (!val) {\n return _emptyObject;\n } else if (typeof val === 'object' || typeof val === 'function') {\n return val;\n } else if (!_dictionary[val]) {\n _dictionary[val] = { val };\n }\n\n return _dictionary[val];\n}\n\nfunction _createNode(): IMemoizeNode {\n return {\n map: _weakMap ? new _weakMap() : null,\n };\n}\n","function isAbsolute(pathname) {\n return pathname.charAt(0) === '/';\n}\n\n// About 1.5x faster than the two-arg version of Array#splice()\nfunction spliceOne(list, index) {\n for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) {\n list[i] = list[k];\n }\n\n list.pop();\n}\n\n// This implementation is based heavily on node's url.parse\nfunction resolvePathname(to, from) {\n if (from === undefined) from = '';\n\n var toParts = (to && to.split('/')) || [];\n var fromParts = (from && from.split('/')) || [];\n\n var isToAbs = to && isAbsolute(to);\n var isFromAbs = from && isAbsolute(from);\n var mustEndAbs = isToAbs || isFromAbs;\n\n if (to && isAbsolute(to)) {\n // to is absolute\n fromParts = toParts;\n } else if (toParts.length) {\n // to is relative, drop the filename\n fromParts.pop();\n fromParts = fromParts.concat(toParts);\n }\n\n if (!fromParts.length) return '/';\n\n var hasTrailingSlash;\n if (fromParts.length) {\n var last = fromParts[fromParts.length - 1];\n hasTrailingSlash = last === '.' || last === '..' || last === '';\n } else {\n hasTrailingSlash = false;\n }\n\n var up = 0;\n for (var i = fromParts.length; i >= 0; i--) {\n var part = fromParts[i];\n\n if (part === '.') {\n spliceOne(fromParts, i);\n } else if (part === '..') {\n spliceOne(fromParts, i);\n up++;\n } else if (up) {\n spliceOne(fromParts, i);\n up--;\n }\n }\n\n if (!mustEndAbs) for (; up--; up) fromParts.unshift('..');\n\n if (\n mustEndAbs &&\n fromParts[0] !== '' &&\n (!fromParts[0] || !isAbsolute(fromParts[0]))\n )\n fromParts.unshift('');\n\n var result = fromParts.join('/');\n\n if (hasTrailingSlash && result.substr(-1) !== '/') result += '/';\n\n return result;\n}\n\nexport default resolvePathname;\n","function valueOf(obj) {\n return obj.valueOf ? obj.valueOf() : Object.prototype.valueOf.call(obj);\n}\n\nfunction valueEqual(a, b) {\n // Test for strict equality first.\n if (a === b) return true;\n\n // Otherwise, if either of them == null they are not equal.\n if (a == null || b == null) return false;\n\n if (Array.isArray(a)) {\n return (\n Array.isArray(b) &&\n a.length === b.length &&\n a.every(function(item, index) {\n return valueEqual(item, b[index]);\n })\n );\n }\n\n if (typeof a === 'object' || typeof b === 'object') {\n var aValue = valueOf(a);\n var bValue = valueOf(b);\n\n if (aValue !== a || bValue !== b) return valueEqual(aValue, bValue);\n\n return Object.keys(Object.assign({}, a, b)).every(function(key) {\n return valueEqual(a[key], b[key]);\n });\n }\n\n return false;\n}\n\nexport default valueEqual;\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport resolvePathname from 'resolve-pathname';\nimport valueEqual from 'value-equal';\nimport warning from 'tiny-warning';\nimport invariant from 'tiny-invariant';\n\nfunction addLeadingSlash(path) {\n return path.charAt(0) === '/' ? path : '/' + path;\n}\nfunction stripLeadingSlash(path) {\n return path.charAt(0) === '/' ? path.substr(1) : path;\n}\nfunction hasBasename(path, prefix) {\n return path.toLowerCase().indexOf(prefix.toLowerCase()) === 0 && '/?#'.indexOf(path.charAt(prefix.length)) !== -1;\n}\nfunction stripBasename(path, prefix) {\n return hasBasename(path, prefix) ? path.substr(prefix.length) : path;\n}\nfunction stripTrailingSlash(path) {\n return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;\n}\nfunction parsePath(path) {\n var pathname = path || '/';\n var search = '';\n var hash = '';\n var hashIndex = pathname.indexOf('#');\n\n if (hashIndex !== -1) {\n hash = pathname.substr(hashIndex);\n pathname = pathname.substr(0, hashIndex);\n }\n\n var searchIndex = pathname.indexOf('?');\n\n if (searchIndex !== -1) {\n search = pathname.substr(searchIndex);\n pathname = pathname.substr(0, searchIndex);\n }\n\n return {\n pathname: pathname,\n search: search === '?' ? '' : search,\n hash: hash === '#' ? '' : hash\n };\n}\nfunction createPath(location) {\n var pathname = location.pathname,\n search = location.search,\n hash = location.hash;\n var path = pathname || '/';\n if (search && search !== '?') path += search.charAt(0) === '?' ? search : \"?\" + search;\n if (hash && hash !== '#') path += hash.charAt(0) === '#' ? hash : \"#\" + hash;\n return path;\n}\n\nfunction createLocation(path, state, key, currentLocation) {\n var location;\n\n if (typeof path === 'string') {\n // Two-arg form: push(path, state)\n location = parsePath(path);\n location.state = state;\n } else {\n // One-arg form: push(location)\n location = _extends({}, path);\n if (location.pathname === undefined) location.pathname = '';\n\n if (location.search) {\n if (location.search.charAt(0) !== '?') location.search = '?' + location.search;\n } else {\n location.search = '';\n }\n\n if (location.hash) {\n if (location.hash.charAt(0) !== '#') location.hash = '#' + location.hash;\n } else {\n location.hash = '';\n }\n\n if (state !== undefined && location.state === undefined) location.state = state;\n }\n\n try {\n location.pathname = decodeURI(location.pathname);\n } catch (e) {\n if (e instanceof URIError) {\n throw new URIError('Pathname \"' + location.pathname + '\" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.');\n } else {\n throw e;\n }\n }\n\n if (key) location.key = key;\n\n if (currentLocation) {\n // Resolve incomplete/relative pathname relative to current location.\n if (!location.pathname) {\n location.pathname = currentLocation.pathname;\n } else if (location.pathname.charAt(0) !== '/') {\n location.pathname = resolvePathname(location.pathname, currentLocation.pathname);\n }\n } else {\n // When there is no prior location and pathname is empty, set it to /\n if (!location.pathname) {\n location.pathname = '/';\n }\n }\n\n return location;\n}\nfunction locationsAreEqual(a, b) {\n return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash && a.key === b.key && valueEqual(a.state, b.state);\n}\n\nfunction createTransitionManager() {\n var prompt = null;\n\n function setPrompt(nextPrompt) {\n process.env.NODE_ENV !== \"production\" ? warning(prompt == null, 'A history supports only one prompt at a time') : void 0;\n prompt = nextPrompt;\n return function () {\n if (prompt === nextPrompt) prompt = null;\n };\n }\n\n function confirmTransitionTo(location, action, getUserConfirmation, callback) {\n // TODO: If another transition starts while we're still confirming\n // the previous one, we may end up in a weird state. Figure out the\n // best way to handle this.\n if (prompt != null) {\n var result = typeof prompt === 'function' ? prompt(location, action) : prompt;\n\n if (typeof result === 'string') {\n if (typeof getUserConfirmation === 'function') {\n getUserConfirmation(result, callback);\n } else {\n process.env.NODE_ENV !== \"production\" ? warning(false, 'A history needs a getUserConfirmation function in order to use a prompt message') : void 0;\n callback(true);\n }\n } else {\n // Return false from a transition hook to cancel the transition.\n callback(result !== false);\n }\n } else {\n callback(true);\n }\n }\n\n var listeners = [];\n\n function appendListener(fn) {\n var isActive = true;\n\n function listener() {\n if (isActive) fn.apply(void 0, arguments);\n }\n\n listeners.push(listener);\n return function () {\n isActive = false;\n listeners = listeners.filter(function (item) {\n return item !== listener;\n });\n };\n }\n\n function notifyListeners() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n listeners.forEach(function (listener) {\n return listener.apply(void 0, args);\n });\n }\n\n return {\n setPrompt: setPrompt,\n confirmTransitionTo: confirmTransitionTo,\n appendListener: appendListener,\n notifyListeners: notifyListeners\n };\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\nfunction getConfirmation(message, callback) {\n callback(window.confirm(message)); // eslint-disable-line no-alert\n}\n/**\n * Returns true if the HTML5 history API is supported. Taken from Modernizr.\n *\n * https://github.com/Modernizr/Modernizr/blob/master/LICENSE\n * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js\n * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586\n */\n\nfunction supportsHistory() {\n var ua = window.navigator.userAgent;\n if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) return false;\n return window.history && 'pushState' in window.history;\n}\n/**\n * Returns true if browser fires popstate on hash change.\n * IE10 and IE11 do not.\n */\n\nfunction supportsPopStateOnHashChange() {\n return window.navigator.userAgent.indexOf('Trident') === -1;\n}\n/**\n * Returns false if using go(n) with hash history causes a full page reload.\n */\n\nfunction supportsGoWithoutReloadUsingHash() {\n return window.navigator.userAgent.indexOf('Firefox') === -1;\n}\n/**\n * Returns true if a given popstate event is an extraneous WebKit event.\n * Accounts for the fact that Chrome on iOS fires real popstate events\n * containing undefined state when pressing the back button.\n */\n\nfunction isExtraneousPopstateEvent(event) {\n return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1;\n}\n\nvar PopStateEvent = 'popstate';\nvar HashChangeEvent = 'hashchange';\n\nfunction getHistoryState() {\n try {\n return window.history.state || {};\n } catch (e) {\n // IE 11 sometimes throws when accessing window.history.state\n // See https://github.com/ReactTraining/history/pull/289\n return {};\n }\n}\n/**\n * Creates a history object that uses the HTML5 history API including\n * pushState, replaceState, and the popstate event.\n */\n\n\nfunction createBrowserHistory(props) {\n if (props === void 0) {\n props = {};\n }\n\n !canUseDOM ? process.env.NODE_ENV !== \"production\" ? invariant(false, 'Browser history needs a DOM') : invariant(false) : void 0;\n var globalHistory = window.history;\n var canUseHistory = supportsHistory();\n var needsHashChangeListener = !supportsPopStateOnHashChange();\n var _props = props,\n _props$forceRefresh = _props.forceRefresh,\n forceRefresh = _props$forceRefresh === void 0 ? false : _props$forceRefresh,\n _props$getUserConfirm = _props.getUserConfirmation,\n getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,\n _props$keyLength = _props.keyLength,\n keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;\n var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';\n\n function getDOMLocation(historyState) {\n var _ref = historyState || {},\n key = _ref.key,\n state = _ref.state;\n\n var _window$location = window.location,\n pathname = _window$location.pathname,\n search = _window$location.search,\n hash = _window$location.hash;\n var path = pathname + search + hash;\n process.env.NODE_ENV !== \"production\" ? warning(!basename || hasBasename(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path \"' + path + '\" to begin with \"' + basename + '\".') : void 0;\n if (basename) path = stripBasename(path, basename);\n return createLocation(path, state, key);\n }\n\n function createKey() {\n return Math.random().toString(36).substr(2, keyLength);\n }\n\n var transitionManager = createTransitionManager();\n\n function setState(nextState) {\n _extends(history, nextState);\n\n history.length = globalHistory.length;\n transitionManager.notifyListeners(history.location, history.action);\n }\n\n function handlePopState(event) {\n // Ignore extraneous popstate events in WebKit.\n if (isExtraneousPopstateEvent(event)) return;\n handlePop(getDOMLocation(event.state));\n }\n\n function handleHashChange() {\n handlePop(getDOMLocation(getHistoryState()));\n }\n\n var forceNextPop = false;\n\n function handlePop(location) {\n if (forceNextPop) {\n forceNextPop = false;\n setState();\n } else {\n var action = 'POP';\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (ok) {\n setState({\n action: action,\n location: location\n });\n } else {\n revertPop(location);\n }\n });\n }\n }\n\n function revertPop(fromLocation) {\n var toLocation = history.location; // TODO: We could probably make this more reliable by\n // keeping a list of keys we've seen in sessionStorage.\n // Instead, we just default to 0 for keys we don't know.\n\n var toIndex = allKeys.indexOf(toLocation.key);\n if (toIndex === -1) toIndex = 0;\n var fromIndex = allKeys.indexOf(fromLocation.key);\n if (fromIndex === -1) fromIndex = 0;\n var delta = toIndex - fromIndex;\n\n if (delta) {\n forceNextPop = true;\n go(delta);\n }\n }\n\n var initialLocation = getDOMLocation(getHistoryState());\n var allKeys = [initialLocation.key]; // Public interface\n\n function createHref(location) {\n return basename + createPath(location);\n }\n\n function push(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to push when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0;\n var action = 'PUSH';\n var location = createLocation(path, state, createKey(), history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var href = createHref(location);\n var key = location.key,\n state = location.state;\n\n if (canUseHistory) {\n globalHistory.pushState({\n key: key,\n state: state\n }, null, href);\n\n if (forceRefresh) {\n window.location.href = href;\n } else {\n var prevIndex = allKeys.indexOf(history.location.key);\n var nextKeys = allKeys.slice(0, prevIndex + 1);\n nextKeys.push(location.key);\n allKeys = nextKeys;\n setState({\n action: action,\n location: location\n });\n }\n } else {\n process.env.NODE_ENV !== \"production\" ? warning(state === undefined, 'Browser history cannot push state in browsers that do not support HTML5 history') : void 0;\n window.location.href = href;\n }\n });\n }\n\n function replace(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to replace when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0;\n var action = 'REPLACE';\n var location = createLocation(path, state, createKey(), history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var href = createHref(location);\n var key = location.key,\n state = location.state;\n\n if (canUseHistory) {\n globalHistory.replaceState({\n key: key,\n state: state\n }, null, href);\n\n if (forceRefresh) {\n window.location.replace(href);\n } else {\n var prevIndex = allKeys.indexOf(history.location.key);\n if (prevIndex !== -1) allKeys[prevIndex] = location.key;\n setState({\n action: action,\n location: location\n });\n }\n } else {\n process.env.NODE_ENV !== \"production\" ? warning(state === undefined, 'Browser history cannot replace state in browsers that do not support HTML5 history') : void 0;\n window.location.replace(href);\n }\n });\n }\n\n function go(n) {\n globalHistory.go(n);\n }\n\n function goBack() {\n go(-1);\n }\n\n function goForward() {\n go(1);\n }\n\n var listenerCount = 0;\n\n function checkDOMListeners(delta) {\n listenerCount += delta;\n\n if (listenerCount === 1 && delta === 1) {\n window.addEventListener(PopStateEvent, handlePopState);\n if (needsHashChangeListener) window.addEventListener(HashChangeEvent, handleHashChange);\n } else if (listenerCount === 0) {\n window.removeEventListener(PopStateEvent, handlePopState);\n if (needsHashChangeListener) window.removeEventListener(HashChangeEvent, handleHashChange);\n }\n }\n\n var isBlocked = false;\n\n function block(prompt) {\n if (prompt === void 0) {\n prompt = false;\n }\n\n var unblock = transitionManager.setPrompt(prompt);\n\n if (!isBlocked) {\n checkDOMListeners(1);\n isBlocked = true;\n }\n\n return function () {\n if (isBlocked) {\n isBlocked = false;\n checkDOMListeners(-1);\n }\n\n return unblock();\n };\n }\n\n function listen(listener) {\n var unlisten = transitionManager.appendListener(listener);\n checkDOMListeners(1);\n return function () {\n checkDOMListeners(-1);\n unlisten();\n };\n }\n\n var history = {\n length: globalHistory.length,\n action: 'POP',\n location: initialLocation,\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n goBack: goBack,\n goForward: goForward,\n block: block,\n listen: listen\n };\n return history;\n}\n\nvar HashChangeEvent$1 = 'hashchange';\nvar HashPathCoders = {\n hashbang: {\n encodePath: function encodePath(path) {\n return path.charAt(0) === '!' ? path : '!/' + stripLeadingSlash(path);\n },\n decodePath: function decodePath(path) {\n return path.charAt(0) === '!' ? path.substr(1) : path;\n }\n },\n noslash: {\n encodePath: stripLeadingSlash,\n decodePath: addLeadingSlash\n },\n slash: {\n encodePath: addLeadingSlash,\n decodePath: addLeadingSlash\n }\n};\n\nfunction stripHash(url) {\n var hashIndex = url.indexOf('#');\n return hashIndex === -1 ? url : url.slice(0, hashIndex);\n}\n\nfunction getHashPath() {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n var href = window.location.href;\n var hashIndex = href.indexOf('#');\n return hashIndex === -1 ? '' : href.substring(hashIndex + 1);\n}\n\nfunction pushHashPath(path) {\n window.location.hash = path;\n}\n\nfunction replaceHashPath(path) {\n window.location.replace(stripHash(window.location.href) + '#' + path);\n}\n\nfunction createHashHistory(props) {\n if (props === void 0) {\n props = {};\n }\n\n !canUseDOM ? process.env.NODE_ENV !== \"production\" ? invariant(false, 'Hash history needs a DOM') : invariant(false) : void 0;\n var globalHistory = window.history;\n var canGoWithoutReload = supportsGoWithoutReloadUsingHash();\n var _props = props,\n _props$getUserConfirm = _props.getUserConfirmation,\n getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,\n _props$hashType = _props.hashType,\n hashType = _props$hashType === void 0 ? 'slash' : _props$hashType;\n var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';\n var _HashPathCoders$hashT = HashPathCoders[hashType],\n encodePath = _HashPathCoders$hashT.encodePath,\n decodePath = _HashPathCoders$hashT.decodePath;\n\n function getDOMLocation() {\n var path = decodePath(getHashPath());\n process.env.NODE_ENV !== \"production\" ? warning(!basename || hasBasename(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path \"' + path + '\" to begin with \"' + basename + '\".') : void 0;\n if (basename) path = stripBasename(path, basename);\n return createLocation(path);\n }\n\n var transitionManager = createTransitionManager();\n\n function setState(nextState) {\n _extends(history, nextState);\n\n history.length = globalHistory.length;\n transitionManager.notifyListeners(history.location, history.action);\n }\n\n var forceNextPop = false;\n var ignorePath = null;\n\n function locationsAreEqual$$1(a, b) {\n return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash;\n }\n\n function handleHashChange() {\n var path = getHashPath();\n var encodedPath = encodePath(path);\n\n if (path !== encodedPath) {\n // Ensure we always have a properly-encoded hash.\n replaceHashPath(encodedPath);\n } else {\n var location = getDOMLocation();\n var prevLocation = history.location;\n if (!forceNextPop && locationsAreEqual$$1(prevLocation, location)) return; // A hashchange doesn't always == location change.\n\n if (ignorePath === createPath(location)) return; // Ignore this change; we already setState in push/replace.\n\n ignorePath = null;\n handlePop(location);\n }\n }\n\n function handlePop(location) {\n if (forceNextPop) {\n forceNextPop = false;\n setState();\n } else {\n var action = 'POP';\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (ok) {\n setState({\n action: action,\n location: location\n });\n } else {\n revertPop(location);\n }\n });\n }\n }\n\n function revertPop(fromLocation) {\n var toLocation = history.location; // TODO: We could probably make this more reliable by\n // keeping a list of paths we've seen in sessionStorage.\n // Instead, we just default to 0 for paths we don't know.\n\n var toIndex = allPaths.lastIndexOf(createPath(toLocation));\n if (toIndex === -1) toIndex = 0;\n var fromIndex = allPaths.lastIndexOf(createPath(fromLocation));\n if (fromIndex === -1) fromIndex = 0;\n var delta = toIndex - fromIndex;\n\n if (delta) {\n forceNextPop = true;\n go(delta);\n }\n } // Ensure the hash is encoded properly before doing anything else.\n\n\n var path = getHashPath();\n var encodedPath = encodePath(path);\n if (path !== encodedPath) replaceHashPath(encodedPath);\n var initialLocation = getDOMLocation();\n var allPaths = [createPath(initialLocation)]; // Public interface\n\n function createHref(location) {\n var baseTag = document.querySelector('base');\n var href = '';\n\n if (baseTag && baseTag.getAttribute('href')) {\n href = stripHash(window.location.href);\n }\n\n return href + '#' + encodePath(basename + createPath(location));\n }\n\n function push(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(state === undefined, 'Hash history cannot push state; it is ignored') : void 0;\n var action = 'PUSH';\n var location = createLocation(path, undefined, undefined, history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var path = createPath(location);\n var encodedPath = encodePath(basename + path);\n var hashChanged = getHashPath() !== encodedPath;\n\n if (hashChanged) {\n // We cannot tell if a hashchange was caused by a PUSH, so we'd\n // rather setState here and ignore the hashchange. The caveat here\n // is that other hash histories in the page will consider it a POP.\n ignorePath = path;\n pushHashPath(encodedPath);\n var prevIndex = allPaths.lastIndexOf(createPath(history.location));\n var nextPaths = allPaths.slice(0, prevIndex + 1);\n nextPaths.push(path);\n allPaths = nextPaths;\n setState({\n action: action,\n location: location\n });\n } else {\n process.env.NODE_ENV !== \"production\" ? warning(false, 'Hash history cannot PUSH the same path; a new entry will not be added to the history stack') : void 0;\n setState();\n }\n });\n }\n\n function replace(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(state === undefined, 'Hash history cannot replace state; it is ignored') : void 0;\n var action = 'REPLACE';\n var location = createLocation(path, undefined, undefined, history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var path = createPath(location);\n var encodedPath = encodePath(basename + path);\n var hashChanged = getHashPath() !== encodedPath;\n\n if (hashChanged) {\n // We cannot tell if a hashchange was caused by a REPLACE, so we'd\n // rather setState here and ignore the hashchange. The caveat here\n // is that other hash histories in the page will consider it a POP.\n ignorePath = path;\n replaceHashPath(encodedPath);\n }\n\n var prevIndex = allPaths.indexOf(createPath(history.location));\n if (prevIndex !== -1) allPaths[prevIndex] = path;\n setState({\n action: action,\n location: location\n });\n });\n }\n\n function go(n) {\n process.env.NODE_ENV !== \"production\" ? warning(canGoWithoutReload, 'Hash history go(n) causes a full page reload in this browser') : void 0;\n globalHistory.go(n);\n }\n\n function goBack() {\n go(-1);\n }\n\n function goForward() {\n go(1);\n }\n\n var listenerCount = 0;\n\n function checkDOMListeners(delta) {\n listenerCount += delta;\n\n if (listenerCount === 1 && delta === 1) {\n window.addEventListener(HashChangeEvent$1, handleHashChange);\n } else if (listenerCount === 0) {\n window.removeEventListener(HashChangeEvent$1, handleHashChange);\n }\n }\n\n var isBlocked = false;\n\n function block(prompt) {\n if (prompt === void 0) {\n prompt = false;\n }\n\n var unblock = transitionManager.setPrompt(prompt);\n\n if (!isBlocked) {\n checkDOMListeners(1);\n isBlocked = true;\n }\n\n return function () {\n if (isBlocked) {\n isBlocked = false;\n checkDOMListeners(-1);\n }\n\n return unblock();\n };\n }\n\n function listen(listener) {\n var unlisten = transitionManager.appendListener(listener);\n checkDOMListeners(1);\n return function () {\n checkDOMListeners(-1);\n unlisten();\n };\n }\n\n var history = {\n length: globalHistory.length,\n action: 'POP',\n location: initialLocation,\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n goBack: goBack,\n goForward: goForward,\n block: block,\n listen: listen\n };\n return history;\n}\n\nfunction clamp(n, lowerBound, upperBound) {\n return Math.min(Math.max(n, lowerBound), upperBound);\n}\n/**\n * Creates a history object that stores locations in memory.\n */\n\n\nfunction createMemoryHistory(props) {\n if (props === void 0) {\n props = {};\n }\n\n var _props = props,\n getUserConfirmation = _props.getUserConfirmation,\n _props$initialEntries = _props.initialEntries,\n initialEntries = _props$initialEntries === void 0 ? ['/'] : _props$initialEntries,\n _props$initialIndex = _props.initialIndex,\n initialIndex = _props$initialIndex === void 0 ? 0 : _props$initialIndex,\n _props$keyLength = _props.keyLength,\n keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;\n var transitionManager = createTransitionManager();\n\n function setState(nextState) {\n _extends(history, nextState);\n\n history.length = history.entries.length;\n transitionManager.notifyListeners(history.location, history.action);\n }\n\n function createKey() {\n return Math.random().toString(36).substr(2, keyLength);\n }\n\n var index = clamp(initialIndex, 0, initialEntries.length - 1);\n var entries = initialEntries.map(function (entry) {\n return typeof entry === 'string' ? createLocation(entry, undefined, createKey()) : createLocation(entry, undefined, entry.key || createKey());\n }); // Public interface\n\n var createHref = createPath;\n\n function push(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to push when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0;\n var action = 'PUSH';\n var location = createLocation(path, state, createKey(), history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var prevIndex = history.index;\n var nextIndex = prevIndex + 1;\n var nextEntries = history.entries.slice(0);\n\n if (nextEntries.length > nextIndex) {\n nextEntries.splice(nextIndex, nextEntries.length - nextIndex, location);\n } else {\n nextEntries.push(location);\n }\n\n setState({\n action: action,\n location: location,\n index: nextIndex,\n entries: nextEntries\n });\n });\n }\n\n function replace(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to replace when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0;\n var action = 'REPLACE';\n var location = createLocation(path, state, createKey(), history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n history.entries[history.index] = location;\n setState({\n action: action,\n location: location\n });\n });\n }\n\n function go(n) {\n var nextIndex = clamp(history.index + n, 0, history.entries.length - 1);\n var action = 'POP';\n var location = history.entries[nextIndex];\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (ok) {\n setState({\n action: action,\n location: location,\n index: nextIndex\n });\n } else {\n // Mimic the behavior of DOM histories by\n // causing a render after a cancelled POP.\n setState();\n }\n });\n }\n\n function goBack() {\n go(-1);\n }\n\n function goForward() {\n go(1);\n }\n\n function canGo(n) {\n var nextIndex = history.index + n;\n return nextIndex >= 0 && nextIndex < history.entries.length;\n }\n\n function block(prompt) {\n if (prompt === void 0) {\n prompt = false;\n }\n\n return transitionManager.setPrompt(prompt);\n }\n\n function listen(listener) {\n return transitionManager.appendListener(listener);\n }\n\n var history = {\n length: entries.length,\n action: 'POP',\n location: entries[index],\n index: index,\n entries: entries,\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n goBack: goBack,\n goForward: goForward,\n canGo: canGo,\n block: block,\n listen: listen\n };\n return history;\n}\n\nexport { createBrowserHistory, createHashHistory, createMemoryHistory, createLocation, locationsAreEqual, parsePath, createPath };\n","'use strict';\n\nvar bind = require('./helpers/bind');\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.trim ? str.trim() : str.replace(/^\\s+|\\s+$/g, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\n","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","var isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed';\nfunction invariant(condition, message) {\n if (condition) {\n return;\n }\n if (isProduction) {\n throw new Error(prefix);\n }\n var provided = typeof message === 'function' ? message() : message;\n var value = provided ? prefix + \": \" + provided : prefix;\n throw new Error(value);\n}\n\nexport { invariant as default };\n","import { assign } from './object';\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\n/**\n * @internal\n */\nexport interface IEventRecord {\n target: any;\n eventName: string;\n parent: any;\n callback: (args?: any) => void;\n elementCallback?: (...args: any[]) => void;\n objectCallback?: (args?: any) => void;\n options?: boolean | AddEventListenerOptions;\n}\n\n/**\n * @internal\n */\nexport interface IEventRecordsByName {\n [eventName: string]: IEventRecordList;\n}\n\n/**\n * @internal\n */\nexport interface IEventRecordList {\n [id: string]: IEventRecord[] | number;\n count: number;\n}\n\n/**\n * @internal\n */\nexport interface IDeclaredEventsByName {\n [eventName: string]: boolean;\n}\n\n/** An instance of EventGroup allows anything with a handle to it to trigger events on it.\n * If the target is an HTMLElement, the event will be attached to the element and can be\n * triggered as usual (like clicking for onClick).\n * The event can be triggered by calling EventGroup.raise() here. If the target is an\n * HTMLElement, the event gets raised and is handled by the browser. Otherwise, it gets\n * handled here in EventGroup, and the handler is called in the context of the parent\n * (which is passed in in the constructor).\n *\n * @public\n * {@docCategory EventGroup}\n */\nexport class EventGroup {\n private static _uniqueId: number = 0;\n private _parent: any;\n private _eventRecords: IEventRecord[];\n private _id: number = EventGroup._uniqueId++;\n private _isDisposed!: boolean;\n\n /** For IE8, bubbleEvent is ignored here and must be dealt with by the handler.\n * Events raised here by default have bubbling set to false and cancelable set to true.\n * This applies also to built-in events being raised manually here on HTMLElements,\n * which may lead to unexpected behavior if it differs from the defaults.\n *\n */\n public static raise(target: any, eventName: string, eventArgs?: any, bubbleEvent?: boolean): boolean | undefined {\n let retVal;\n\n if (EventGroup._isElement(target)) {\n if (typeof document !== 'undefined' && document.createEvent) {\n let ev = document.createEvent('HTMLEvents');\n\n ev.initEvent(eventName, bubbleEvent || false, true);\n\n assign(ev, eventArgs);\n\n retVal = target.dispatchEvent(ev);\n } else if (typeof document !== 'undefined' && (document as any).createEventObject) {\n // IE8\n let evObj = (document as any).createEventObject(eventArgs);\n // cannot set cancelBubble on evObj, fireEvent will overwrite it\n target.fireEvent('on' + eventName, evObj);\n }\n } else {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore -- FIXME: strictBindCallApply error - https://github.com/microsoft/fluentui/issues/17331\n while (target && retVal !== false) {\n let events = target.__events__;\n let eventRecords = events ? events[eventName] : null;\n\n if (eventRecords) {\n for (let id in eventRecords) {\n if (eventRecords.hasOwnProperty(id)) {\n let eventRecordList = eventRecords[id];\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore -- FIXME: strictBindCallApply error - https://github.com/microsoft/fluentui/issues/17331\n for (let listIndex = 0; retVal !== false && listIndex < eventRecordList.length; listIndex++) {\n let record = eventRecordList[listIndex];\n\n if (record.objectCallback) {\n retVal = record.objectCallback.call(record.parent, eventArgs);\n }\n }\n }\n }\n }\n\n // If the target has a parent, bubble the event up.\n target = bubbleEvent ? target.parent : null;\n }\n }\n\n return retVal;\n }\n\n public static isObserved(target: any, eventName: string): boolean {\n let events = target && target.__events__;\n\n return !!events && !!events[eventName];\n }\n\n /** Check to see if the target has declared support of the given event. */\n public static isDeclared(target: any, eventName: string): boolean {\n let declaredEvents = target && target.__declaredEvents;\n\n return !!declaredEvents && !!declaredEvents[eventName];\n }\n\n public static stopPropagation(event: any): void {\n if (event.stopPropagation) {\n event.stopPropagation();\n } else {\n // IE8\n event.cancelBubble = true;\n }\n }\n\n private static _isElement(target: HTMLElement): boolean {\n return (\n !!target && (!!target.addEventListener || (typeof HTMLElement !== 'undefined' && target instanceof HTMLElement))\n );\n }\n\n /** parent: the context in which events attached to non-HTMLElements are called */\n public constructor(parent: any) {\n this._parent = parent;\n this._eventRecords = [];\n }\n\n public dispose(): void {\n if (!this._isDisposed) {\n this._isDisposed = true;\n\n this.off();\n this._parent = null;\n }\n }\n\n /** On the target, attach a set of events, where the events object is a name to function mapping. */\n public onAll(target: any, events: { [key: string]: (args?: any) => void }, useCapture?: boolean): void {\n for (let eventName in events) {\n if (events.hasOwnProperty(eventName)) {\n this.on(target, eventName, events[eventName], useCapture);\n }\n }\n }\n\n /**\n * On the target, attach an event whose handler will be called in the context of the parent\n * of this instance of EventGroup.\n */\n public on(\n target: any,\n eventName: string,\n callback: (args?: any) => void,\n options?: boolean | AddEventListenerOptions,\n ): void {\n if (eventName.indexOf(',') > -1) {\n let events = eventName.split(/[ ,]+/);\n\n for (let i = 0; i < events.length; i++) {\n this.on(target, events[i], callback, options);\n }\n } else {\n let parent = this._parent;\n let eventRecord: IEventRecord = {\n target: target,\n eventName: eventName,\n parent: parent,\n callback: callback,\n options,\n };\n\n // Initialize and wire up the record on the target, so that it can call the callback if the event fires.\n let events = (target.__events__ = target.__events__ || {});\n events[eventName] =\n events[eventName] ||\n {\n count: 0,\n };\n events[eventName][this._id] = events[eventName][this._id] || [];\n (events[eventName][this._id]).push(eventRecord);\n events[eventName].count++;\n\n if (EventGroup._isElement(target)) {\n let processElementEvent = (...args: any[]) => {\n if (this._isDisposed) {\n return;\n }\n\n let result;\n try {\n result = callback.apply(parent, args);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore -- FIXME: strictBindCallApply error - https://github.com/microsoft/fluentui/issues/17331\n if (result === false && args[0]) {\n let e = args[0];\n\n if (e.preventDefault) {\n e.preventDefault();\n }\n\n if (e.stopPropagation) {\n e.stopPropagation();\n }\n\n e.cancelBubble = true;\n }\n } catch (e) {\n // ignore\n }\n\n return result;\n };\n\n eventRecord.elementCallback = processElementEvent;\n\n if (target.addEventListener) {\n (target).addEventListener(eventName, processElementEvent, options);\n } else if (target.attachEvent) {\n // IE8\n target.attachEvent('on' + eventName, processElementEvent);\n }\n } else {\n let processObjectEvent = (...args: any[]) => {\n if (this._isDisposed) {\n return;\n }\n\n return callback.apply(parent, args);\n };\n\n eventRecord.objectCallback = processObjectEvent;\n }\n\n // Remember the record locally, so that it can be removed.\n this._eventRecords.push(eventRecord);\n }\n }\n\n public off(\n target?: any,\n eventName?: string,\n callback?: (args?: any) => void,\n options?: boolean | AddEventListenerOptions,\n ): void {\n for (let i = 0; i < this._eventRecords.length; i++) {\n let eventRecord = this._eventRecords[i];\n if (\n (!target || target === eventRecord.target) &&\n (!eventName || eventName === eventRecord.eventName) &&\n (!callback || callback === eventRecord.callback) &&\n (typeof options !== 'boolean' || options === eventRecord.options)\n ) {\n let events = eventRecord.target.__events__;\n let targetArrayLookup = events[eventRecord.eventName];\n let targetArray = targetArrayLookup ? targetArrayLookup[this._id] : null;\n\n // We may have already target's entries, so check for null.\n if (targetArray) {\n if (targetArray.length === 1 || !callback) {\n targetArrayLookup.count -= targetArray.length;\n delete events[eventRecord.eventName][this._id];\n } else {\n targetArrayLookup.count--;\n targetArray.splice(targetArray.indexOf(eventRecord), 1);\n }\n\n if (!targetArrayLookup.count) {\n delete events[eventRecord.eventName];\n }\n }\n\n if (eventRecord.elementCallback) {\n if (eventRecord.target.removeEventListener) {\n eventRecord.target.removeEventListener(\n eventRecord.eventName,\n eventRecord.elementCallback,\n eventRecord.options,\n );\n } else if (eventRecord.target.detachEvent) {\n // IE8\n eventRecord.target.detachEvent('on' + eventRecord.eventName, eventRecord.elementCallback);\n }\n }\n\n this._eventRecords.splice(i--, 1);\n }\n }\n }\n\n /** Trigger the given event in the context of this instance of EventGroup. */\n public raise(eventName: string, eventArgs?: any, bubbleEvent?: boolean): boolean | undefined {\n return EventGroup.raise(this._parent, eventName, eventArgs, bubbleEvent);\n }\n\n /** Declare an event as being supported by this instance of EventGroup. */\n public declare(event: string | string[]): void {\n let declaredEvents = (this._parent.__declaredEvents = this._parent.__declaredEvents || {});\n\n if (typeof event === 'string') {\n declaredEvents[event] = true;\n } else {\n for (let i = 0; i < event.length; i++) {\n declaredEvents[event[i]] = true;\n }\n }\n }\n}\n","import * as React from 'react';\nimport type { IRefObject, Point } from '@fluentui/utilities';\n\n/**\n * FocusZone component class interface.\n * {@docCategory FocusZone}\n */\nexport interface IFocusZone {\n /**\n * Sets focus to the first tabbable item in the zone.\n * @param forceIntoFirstElement - If true, focus will be forced into the first element, even\n * if focus is already in the focus zone.\n * @returns True if focus could be set to an active element, false if no operation was taken.\n */\n focus(forceIntoFirstElement?: boolean): boolean;\n\n /**\n * Sets focus to the last tabbable item in the zone.\n * @returns True if focus could be set to an active element, false if no operation was taken.\n */\n focusLast(): boolean;\n\n /**\n * Sets focus to a specific child element within the zone. This can be used in conjunction with\n * shouldReceiveFocus to create delayed focus scenarios (like animate the scroll position to the correct\n * location and then focus.)\n * @param childElement - The child element within the zone to focus.\n * @param forceAlignment - If true, focus alignment will be set according to the element provided.\n * @returns True if focus could be set to an active element, false if no operation was taken.\n */\n focusElement(childElement?: HTMLElement, forceAlignment?: boolean): boolean;\n\n /**\n * Forces horizontal alignment in the context of vertical arrowing to use specific point as the reference, rather\n * than a center based on the last horizontal motion.\n * @param point - the new reference point.\n */\n setFocusAlignment(point: Point): void;\n}\n\n/**\n * FocusZone component props.\n * {@docCategory FocusZone}\n */\nexport interface IFocusZoneProps extends React.HTMLAttributes {\n /**\n * Optional callback to access the IFocusZone interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject;\n\n /**\n * Optional callback to access the root DOM element.\n * @deprecated Temporary solution which will be replaced with ref in the V8 release.\n */\n elementRef?: React.Ref;\n\n /**\n * Additional class name to provide on the root element, in addition to the ms-FocusZone class.\n */\n className?: string;\n\n /**\n * Defines which arrows to react to.\n * @defaultvalue FocusZoneDirection.bidirectional\n */\n direction?: FocusZoneDirection;\n\n /**\n * Optionally defines the initial tabbable element inside the FocusZone.\n * If a string is passed then it is treated as a selector for identifying the initial tabbable element.\n * If a function is passed then it uses the root element as a parameter to return the initial tabbable element.\n */\n defaultTabbableElement?: string | ((root: HTMLElement) => HTMLElement);\n\n /**\n * Optionally provide a selector for identifying the initial active element.\n * @deprecated Use `defaultTabbableElement` instead.\n */\n defaultActiveElement?: string;\n\n /**\n * Determines if a default tabbable element should be force focused on FocusZone mount.\n * @default false\n */\n shouldFocusOnMount?: boolean;\n\n /**\n * If set, the FocusZone will not be tabbable and keyboard navigation will be disabled.\n * This does not affect disabled attribute of any child.\n */\n disabled?: boolean;\n\n /**\n * Element type the root element will use. Default is \"div\".\n * @deprecated Use `as` instead.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n elementType?: any /* TODO should be `keyof React.ReactHTML`, tracking with https://github.com/Microsoft/TypeScript/issues/30050 */;\n\n /**\n * A component that should be used as the root element of the FocusZone component.\n */\n as?: React.ElementType;\n\n /**\n * If set, will cycle to the beginning of the targets once the user navigates to the\n * next target while at the end, and to the end when navigate to the previous at the beginning.\n */\n isCircularNavigation?: boolean;\n\n /**\n * If provided, this callback will be executed on keypresses to determine if the user\n * intends to navigate into the inner zone. Returning true will ask the first inner zone to\n * set focus.\n * @deprecated Use `shouldEnterInnerZone` instead.\n */\n isInnerZoneKeystroke?: (ev: React.KeyboardEvent) => boolean;\n\n /**\n * Callback function that will be executed on keypresses to determine if the user intends to navigate into\n * the inner (nested) zone. Returning true will ask the first inner zone to set focus.\n */\n shouldEnterInnerZone?: (ev: React.KeyboardEvent) => boolean;\n\n /**\n * Sets the aria-labelledby attribute.\n * @deprecated Directly use the `aria-labelledby` attribute instead\n */\n ariaLabelledBy?: string;\n\n /**\n * Sets the aria-describedby attribute.\n * @deprecated Directly use the `aria-describedby` attribute instead\n */\n ariaDescribedBy?: string;\n\n /**\n * Callback for when one of immediate children elements gets active by getting focused\n * or by having one of its respective children elements focused.\n */\n onActiveElementChanged?: (element?: HTMLElement, ev?: React.FocusEvent) => void;\n\n /**\n * @deprecated Div props provided to the FocusZone will be mixed into the root element.\n * Deprecated at v1.12.1.\n */\n rootProps?: React.HTMLAttributes;\n\n /**\n * Callback method for determining if focus should indeed be set on the given element.\n * @param element - The child element within the zone to focus.\n * @returns True if focus should be set to the given element, false to avoid setting focus.\n * @deprecated Use `shouldReceiveFocus` instead.\n */\n onBeforeFocus?: (childElement?: HTMLElement) => boolean;\n\n /**\n * Callback method for determining if focus should indeed be set on the given element.\n * @param element - The child element within the zone to focus.\n * @returns True if focus should be set to the given element, false to avoid setting focus.\n */\n shouldReceiveFocus?: (childElement?: HTMLElement) => boolean;\n\n /** Allows focus to park on root when focus is in the `FocusZone` at render time. */\n allowFocusRoot?: boolean;\n\n /**\n * Allows tab key to be handled to tab through a list of items in the focus zone,\n * an unfortunate side effect is that users will not be able to tab out of the focus zone\n * and have to hit escape or some other key.\n * @deprecated Use `handleTabKey` instead.\n *\n */\n allowTabKey?: boolean;\n\n /**\n * Allows tab key to be handled to tab through a list of items in the focus zone,\n * an unfortunate side effect is that users will not be able to tab out of the focus zone\n * and have to hit escape or some other key.\n */\n handleTabKey?: FocusZoneTabbableElements;\n\n /**\n * If true and FocusZone's root element (container) receives focus, the focus will land either on the\n * defaultTabbableElement (if set) or on the first tabbable element of this FocusZone.\n * Usually a case for nested focus zones, when the nested focus zone's container is a focusable element.\n */\n shouldFocusInnerElementWhenReceivedFocus?: boolean;\n\n /**\n * If true and TAB key is not handled by FocusZone, resets current active element to null value.\n * For example, when roving index is not desirable and focus should always reset to the default tabbable element.\n */\n shouldResetActiveElementWhenTabFromZone?: boolean;\n\n /**\n * Determines whether the FocusZone will walk up the DOM trying to invoke click callbacks on focusable elements on\n * Enter and Space keydowns to ensure accessibility for tags that don't guarantee this behavior.\n * @defaultvalue true\n */\n shouldRaiseClicks?: boolean;\n\n /**\n * Relates to `shouldRaiseClicks`.\n * Allows the click event raising for the \"Enter\" key to be set independently from `shouldRaiseClicks`.\n * Inherits the value of `shouldRaiseClicks` if not set explicitly.\n */\n shouldRaiseClicksOnEnter?: boolean;\n\n /**\n * Relates to `shouldRaiseClicks`.\n * Allows the click event raising for the \"Space\" key to be set independently from `shouldRaiseClicks`.\n * Inherits the value of `shouldRaiseClicks` if not set explicitly.\n */\n shouldRaiseClicksOnSpace?: boolean;\n\n /**\n * A callback method to determine if an input or textarea element should lose focus on arrow keys\n * @param inputElement - The input or textarea element which is to lose focus.\n * @returns True if input element should loose focus or false otherwise.\n */\n shouldInputLoseFocusOnArrowKey?: (inputElement: HTMLInputElement | HTMLTextAreaElement) => boolean;\n\n /**\n * Determines whether to disable the paging support for Page Up and Page Down keyboard scenarios.\n * @defaultvalue false\n */\n pagingSupportDisabled?: boolean;\n\n /**\n * Determines whether to check for data-no-horizontal-wrap or data-no-vertical-wrap attributes\n * when determining how to move focus\n * @defaultvalue false\n */\n checkForNoWrap?: boolean;\n\n /**\n * Whether the FocusZone should allow focus events to propagate past the FocusZone.\n * @deprecated Use `stopFocusPropagation` instead.\n */\n doNotAllowFocusEventToPropagate?: boolean;\n\n /**\n * Whether the FocusZone should allow focus events to propagate past the FocusZone.\n */\n stopFocusPropagation?: boolean;\n\n /**\n * Callback to notify creators that focus has been set on the FocusZone\n * @deprecated Use `onFocus` instead.\n */\n onFocusNotification?: () => void;\n\n /**\n * Callback called when \"focus\" event triggered in FocusZone.\n * @param event - React's original FocusEvent.\n */\n onFocus?: (event: React.FocusEvent) => void;\n\n /**\n * If true, FocusZone prevents the default behavior of Keyboard events when changing focus between elements.\n * @defaultvalue false\n */\n preventDefaultWhenHandled?: boolean;\n\n /**\n * If true, prevents the FocusZone from attempting to restore the focus to the inner element when the focus is on the\n * root element after componentDidUpdate.\n * @defaultvalue false\n */\n preventFocusRestoration?: boolean;\n}\n/**\n * {@docCategory FocusZone}\n */\nexport const FocusZoneTabbableElements = {\n /** Tabbing is not allowed */\n none: 0 as 0,\n\n /** All tabbing action is allowed */\n all: 1 as 1,\n\n /** Tabbing is allowed only on input elements */\n inputOnly: 2 as 2,\n};\n\n/**\n * {@docCategory FocusZone}\n */\nexport type FocusZoneTabbableElements = typeof FocusZoneTabbableElements[keyof typeof FocusZoneTabbableElements];\n\n/**\n * {@docCategory FocusZone}\n */\nexport enum FocusZoneDirection {\n /** Only react to up/down arrows. */\n vertical = 0,\n\n /** Only react to left/right arrows. */\n horizontal = 1,\n\n /** React to all arrows. */\n bidirectional = 2,\n\n /**\n * React to all arrows. Navigate next item in DOM on right/down arrow keys and previous - left/up arrow keys.\n * Right and Left arrow keys are swapped in RTL mode.\n */\n domOrder = 3,\n}\n","import { GlobalSettings } from '../GlobalSettings';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type ISettings = { [key: string]: any };\nexport type ISettingsFunction = (settings: ISettings) => ISettings;\n\n/**\n * @deprecated Use ISettings.\n */\nexport type Settings = ISettings;\n\n/**\n * @deprecated Use ISettingsFunction.\n */\nexport type SettingsFunction = ISettingsFunction;\n\nexport interface ICustomizations {\n settings: ISettings;\n scopedSettings: { [key: string]: ISettings };\n inCustomizerContext?: boolean;\n}\n\nconst CustomizationsGlobalKey = 'customizations';\nconst NO_CUSTOMIZATIONS = { settings: {}, scopedSettings: {}, inCustomizerContext: false };\n\nlet _allSettings = GlobalSettings.getValue(CustomizationsGlobalKey, {\n settings: {},\n scopedSettings: {},\n inCustomizerContext: false,\n});\n\nlet _events: (() => void)[] = [];\n\nexport class Customizations {\n private static _suppressUpdates: boolean;\n\n public static reset(): void {\n _allSettings.settings = {};\n _allSettings.scopedSettings = {};\n }\n\n /** Apply global Customization settings.\n * @example Customizations.applySettings(\\{ theme: \\{...\\} \\});\n */\n public static applySettings(settings: ISettings): void {\n _allSettings.settings = { ..._allSettings.settings, ...settings };\n Customizations._raiseChange();\n }\n\n /** Apply Customizations to a particular named scope, like a component.\n * @example Customizations.applyScopedSettings('Nav', \\{ styles: () =\\> \\{\\} \\});\n */\n public static applyScopedSettings(scopeName: string, settings: ISettings): void {\n _allSettings.scopedSettings[scopeName] = { ..._allSettings.scopedSettings[scopeName], ...settings };\n Customizations._raiseChange();\n }\n\n public static getSettings(\n properties: string[],\n scopeName?: string,\n localSettings: ICustomizations = NO_CUSTOMIZATIONS,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): any {\n const settings: ISettings = {};\n const localScopedSettings = (scopeName && localSettings.scopedSettings[scopeName]) || {};\n const globalScopedSettings = (scopeName && _allSettings.scopedSettings[scopeName]) || {};\n\n for (let property of properties) {\n settings[property] =\n localScopedSettings[property] ||\n localSettings.settings[property] ||\n globalScopedSettings[property] ||\n _allSettings.settings[property];\n }\n\n return settings;\n }\n\n /** Used to run some code that sets Customizations without triggering an update until the end.\n * Useful for applying Customizations that don't affect anything currently rendered, or for\n * applying many customizations at once.\n * @param suppressUpdate - Do not raise the change event at the end, preventing all updates\n */\n public static applyBatchedUpdates(code: () => void, suppressUpdate?: boolean): void {\n Customizations._suppressUpdates = true;\n try {\n code();\n } catch {\n /* do nothing */\n }\n Customizations._suppressUpdates = false;\n if (!suppressUpdate) {\n Customizations._raiseChange();\n }\n }\n\n public static observe(onChange: () => void): void {\n _events.push(onChange);\n }\n\n public static unobserve(onChange: () => void): void {\n _events = _events.filter((cb: () => void) => cb !== onChange);\n }\n\n private static _raiseChange(): void {\n if (!Customizations._suppressUpdates) {\n _events.forEach((cb: () => void) => cb());\n }\n }\n}\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import { IStyleOptions } from './IStyleOptions';\n\n/**\n * Sets the current RTL value.\n */\nexport function setRTL(isRTL: boolean): void {\n if (_rtl !== isRTL) {\n _rtl = isRTL;\n }\n}\n\n/**\n * Gets the current RTL value.\n */\nexport function getRTL(): boolean {\n if (_rtl === undefined) {\n _rtl =\n typeof document !== 'undefined' &&\n !!document.documentElement &&\n document.documentElement.getAttribute('dir') === 'rtl';\n }\n return _rtl;\n}\n\n// This has been split into 2 lines because it was working in Fabric due to the code being transpiled to es5, so this\n// was converted to var while not working in Fluent that uses babel to transpile the code to be es6-like. Splitting the\n// logic into two lines, however, allows it to work in both scenarios.\nlet _rtl: boolean;\n_rtl = getRTL();\n\nexport function getStyleOptions(): IStyleOptions {\n return {\n rtl: getRTL(),\n };\n}\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import { mergeStyleSets } from '../../Styling';\nimport type { IIconStyleProps, IIconStyles } from './Icon.types';\n\n/** Class names used in themeable and non-themeable Icon components */\nexport const classNames = mergeStyleSets({\n root: {\n display: 'inline-block',\n },\n placeholder: [\n 'ms-Icon-placeHolder',\n {\n width: '1em',\n },\n ],\n image: [\n 'ms-Icon-imageContainer',\n {\n overflow: 'hidden',\n },\n ],\n});\n/** Class name used only in non-themeable Icon components */\nexport const MS_ICON = 'ms-Icon';\n\nexport const getStyles = (props: IIconStyleProps): IIconStyles => {\n const { className, iconClassName, isPlaceholder, isImage, styles } = props;\n\n return {\n root: [\n isPlaceholder && classNames.placeholder,\n classNames.root,\n isImage && classNames.image,\n iconClassName,\n className,\n styles && styles.root,\n // eslint-disable-next-line deprecation/deprecation\n styles && styles.imageContainer,\n ],\n };\n};\n","import { KeyCodes } from './KeyCodes';\nimport { getDocument } from './dom/getDocument';\nimport { getItem, setItem } from './sessionStorage';\nimport { setRTL as mergeStylesSetRTL } from '@fluentui/merge-styles';\n\nconst RTL_LOCAL_STORAGE_KEY = 'isRTL';\n\n// Default to undefined so that we initialize on first read.\nlet _isRTL: boolean | undefined;\n\n/**\n * Gets the rtl state of the page (returns true if in rtl.)\n */\nexport function getRTL(theme: { rtl?: boolean } = {}): boolean {\n if (theme.rtl !== undefined) {\n return theme.rtl;\n }\n if (_isRTL === undefined) {\n // Fabric supports persisting the RTL setting between page refreshes via session storage\n let savedRTL = getItem(RTL_LOCAL_STORAGE_KEY);\n if (savedRTL !== null) {\n _isRTL = savedRTL === '1';\n setRTL(_isRTL);\n }\n\n let doc = getDocument();\n if (_isRTL === undefined && doc) {\n _isRTL = ((doc.body && doc.body.getAttribute('dir')) || doc.documentElement.getAttribute('dir')) === 'rtl';\n mergeStylesSetRTL(_isRTL);\n }\n }\n\n return !!_isRTL;\n}\n\n/**\n * Sets the rtl state of the page (by adjusting the dir attribute of the html element.)\n */\nexport function setRTL(isRTL: boolean, persistSetting: boolean = false): void {\n let doc = getDocument();\n if (doc) {\n doc.documentElement.setAttribute('dir', isRTL ? 'rtl' : 'ltr');\n }\n\n if (persistSetting) {\n setItem(RTL_LOCAL_STORAGE_KEY, isRTL ? '1' : '0');\n }\n\n _isRTL = isRTL;\n mergeStylesSetRTL(_isRTL);\n}\n\n/**\n * Returns the given key, but flips right/left arrows if necessary.\n */\nexport function getRTLSafeKeyCode(key: number, theme: { rtl?: boolean } = {}): number {\n if (getRTL(theme)) {\n if (key === KeyCodes.left) {\n key = KeyCodes.right;\n } else if (key === KeyCodes.right) {\n key = KeyCodes.left;\n }\n }\n\n return key;\n}\n","import { getGlobalClassNames, getFocusStyle } from '../../Styling';\nimport { DEFAULT_ROW_HEIGHTS } from './DetailsRow.styles';\nimport { HEADER_HEIGHT } from './DetailsHeader.styles';\nimport { CheckGlobalClassNames } from '../../components/Check/Check.styles';\nimport type { IDetailsRowCheckStyleProps, IDetailsRowCheckStyles } from './DetailsRowCheck.types';\n\nconst GlobalClassNames = {\n root: 'ms-DetailsRow-check',\n isDisabled: 'ms-DetailsRow-check--isDisabled',\n isHeader: 'ms-DetailsRow-check--isHeader',\n};\n\nexport const CHECK_CELL_WIDTH = 48;\n\nexport const getDetailsRowCheckStyles = (props: IDetailsRowCheckStyleProps): IDetailsRowCheckStyles => {\n const { theme, className, isHeader, selected, anySelected, canSelect, compact, isVisible } = props;\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n const { rowHeight, compactRowHeight } = DEFAULT_ROW_HEIGHTS;\n\n const height = isHeader ? HEADER_HEIGHT : compact ? compactRowHeight : rowHeight;\n\n const isCheckVisible = isVisible || selected || anySelected;\n\n return {\n root: [classNames.root, className],\n\n check: [\n !canSelect && classNames.isDisabled,\n isHeader && classNames.isHeader,\n getFocusStyle(theme),\n theme.fonts.small,\n CheckGlobalClassNames.checkHost,\n {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n cursor: 'default',\n boxSizing: 'border-box',\n verticalAlign: 'top',\n background: 'none',\n backgroundColor: 'transparent',\n border: 'none',\n opacity: isCheckVisible ? 1 : 0,\n height: height,\n width: CHECK_CELL_WIDTH,\n padding: 0,\n margin: 0,\n },\n ],\n\n isDisabled: [],\n };\n};\n","export interface IVendorSettings {\n isWebkit?: boolean;\n isMoz?: boolean;\n isMs?: boolean;\n isOpera?: boolean;\n}\n\nlet _vendorSettings: IVendorSettings | undefined;\n\nexport function getVendorSettings(): IVendorSettings {\n if (!_vendorSettings) {\n const doc = typeof document !== 'undefined' ? document : undefined;\n const nav = typeof navigator !== 'undefined' ? navigator : undefined;\n const userAgent = nav?.userAgent?.toLowerCase();\n\n if (!doc) {\n _vendorSettings = {\n isWebkit: true,\n isMoz: true,\n isOpera: true,\n isMs: true,\n };\n } else {\n _vendorSettings = {\n isWebkit: !!(doc && 'WebkitAppearance' in doc.documentElement.style),\n isMoz: !!(userAgent && userAgent.indexOf('firefox') > -1),\n isOpera: !!(userAgent && userAgent.indexOf('opera') > -1),\n isMs: !!(nav && (/rv:11.0/i.test(nav.userAgent) || /Edge\\/\\d./i.test(navigator.userAgent))),\n };\n }\n }\n\n return _vendorSettings;\n}\n\n/**\n * Sets the vendor settings for prefixing and vendor specific operations.\n */\nexport function setVendorSettings(vendorSettings?: IVendorSettings): void {\n _vendorSettings = vendorSettings;\n}\n","const rules: { [key: string]: string } = {};\n\nexport function kebabRules(rulePairs: (string | number)[], index: number): void {\n const rule: string = rulePairs[index] as string;\n\n if (rule.charAt(0) !== '-') {\n rulePairs[index] = rules[rule] = rules[rule] || rule.replace(/([A-Z])/g, '-$1').toLowerCase();\n }\n}\n","import { getVendorSettings } from '../getVendorSettings';\n\nconst autoPrefixNames: { [key: string]: number } = {\n 'user-select': 1,\n};\n\nexport function prefixRules(rulePairs: (string | number)[], index: number): void {\n const vendorSettings = getVendorSettings();\n\n const name = rulePairs[index];\n\n if (autoPrefixNames[name]) {\n const value = rulePairs[index + 1];\n\n if (autoPrefixNames[name]) {\n if (vendorSettings.isWebkit) {\n rulePairs.push('-webkit-' + name, value);\n }\n if (vendorSettings.isMoz) {\n rulePairs.push('-moz-' + name, value);\n }\n if (vendorSettings.isMs) {\n rulePairs.push('-ms-' + name, value);\n }\n if (vendorSettings.isOpera) {\n rulePairs.push('-o-' + name, value);\n }\n }\n }\n}\n","const NON_PIXEL_NUMBER_PROPS = [\n 'column-count',\n 'font-weight',\n 'flex',\n 'flex-grow',\n 'flex-shrink',\n 'fill-opacity',\n 'opacity',\n 'order',\n 'z-index',\n 'zoom',\n];\n\nexport function provideUnits(rulePairs: (string | number)[], index: number): void {\n const name = rulePairs[index] as string;\n const value = rulePairs[index + 1];\n\n if (typeof value === 'number') {\n const isNonPixelProp = NON_PIXEL_NUMBER_PROPS.indexOf(name as string) > -1;\n const isVariableOrPrefixed = name.indexOf('--') > -1;\n const unit = isNonPixelProp || isVariableOrPrefixed ? '' : 'px';\n\n rulePairs[index + 1] = `${value}${unit}`;\n }\n}\n","import { IStyleOptions } from '../IStyleOptions';\n\nconst LEFT = 'left';\nconst RIGHT = 'right';\nconst NO_FLIP = '@noflip';\nconst NAME_REPLACEMENTS: { [key: string]: string } = {\n [LEFT]: RIGHT,\n [RIGHT]: LEFT,\n};\nconst VALUE_REPLACEMENTS: { [key: string]: string } = {\n 'w-resize': 'e-resize',\n 'sw-resize': 'se-resize',\n 'nw-resize': 'ne-resize',\n};\n\n/**\n * RTLifies the rulePair in the array at the current index. This mutates the array for performance\n * reasons.\n */\nexport function rtlifyRules(options: IStyleOptions, rulePairs: (string | number)[], index: number): void {\n if (options.rtl) {\n const name = rulePairs[index] as string;\n\n if (!name) {\n return;\n }\n\n const value = rulePairs[index + 1] as string;\n\n if (typeof value === 'string' && value.indexOf(NO_FLIP) >= 0) {\n rulePairs[index + 1] = value.replace(/\\s*(?:\\/\\*\\s*)?\\@noflip\\b(?:\\s*\\*\\/)?\\s*?/g, '');\n } else if (name.indexOf(LEFT) >= 0) {\n rulePairs[index] = name.replace(LEFT, RIGHT);\n } else if (name.indexOf(RIGHT) >= 0) {\n rulePairs[index] = name.replace(RIGHT, LEFT);\n } else if (String(value).indexOf(LEFT) >= 0) {\n rulePairs[index + 1] = value.replace(LEFT, RIGHT);\n } else if (String(value).indexOf(RIGHT) >= 0) {\n rulePairs[index + 1] = value.replace(RIGHT, LEFT);\n } else if (NAME_REPLACEMENTS[name]) {\n rulePairs[index] = NAME_REPLACEMENTS[name];\n } else if (VALUE_REPLACEMENTS[value]) {\n rulePairs[index + 1] = VALUE_REPLACEMENTS[value];\n } else {\n switch (name) {\n case 'margin':\n case 'padding':\n rulePairs[index + 1] = flipQuad(value);\n break;\n case 'box-shadow':\n rulePairs[index + 1] = negateNum(value, 0);\n break;\n }\n }\n }\n}\n\n/**\n * Given a string value in a space delimited format (e.g. \"1 2 3 4\"), negates a particular value.\n */\nfunction negateNum(value: string, partIndex: number): string {\n const parts = value.split(' ');\n const numberVal = parseInt(parts[partIndex], 10);\n\n parts[0] = parts[0].replace(String(numberVal), String(numberVal * -1));\n\n return parts.join(' ');\n}\n\n/**\n * Given a string quad, flips the left and right values.\n */\nfunction flipQuad(value: string): string {\n if (typeof value === 'string') {\n const parts = value.split(' ');\n\n if (parts.length === 4) {\n return `${parts[0]} ${parts[3]} ${parts[2]} ${parts[1]}`;\n }\n }\n\n return value;\n}\n","import { IStyle } from './IStyle';\nimport { IRawStyle } from './IRawStyle';\n\nimport { Stylesheet } from './Stylesheet';\nimport { kebabRules } from './transforms/kebabRules';\nimport { prefixRules } from './transforms/prefixRules';\nimport { provideUnits } from './transforms/provideUnits';\nimport { rtlifyRules } from './transforms/rtlifyRules';\nimport { IStyleOptions } from './IStyleOptions';\nimport { tokenizeWithParentheses } from './tokenizeWithParentheses';\n\nconst DISPLAY_NAME = 'displayName';\n\ntype IDictionary = { [key: string]: any };\n\ninterface IRuleSet {\n __order: string[];\n [key: string]: IDictionary;\n}\n\nfunction getDisplayName(rules?: { [key: string]: IRawStyle }): string | undefined {\n const rootStyle: IStyle = rules && rules['&'];\n\n return rootStyle ? (rootStyle as IRawStyle).displayName : undefined;\n}\n\nconst globalSelectorRegExp = /\\:global\\((.+?)\\)/g;\n\ntype ReplacementInfo = [number, number, string];\n\n/**\n * Finds comma separated selectors in a :global() e.g. \":global(.class1, .class2, .class3)\"\n * and wraps them each in their own global \":global(.class1), :global(.class2), :global(.class3)\"\n *\n * @param selectorWithGlobals The selector to process\n * @returns The updated selector\n */\nfunction expandCommaSeparatedGlobals(selectorWithGlobals: string): string {\n // We the selector does not have a :global() we can shortcut\n if (!globalSelectorRegExp.test(selectorWithGlobals)) {\n return selectorWithGlobals;\n }\n\n const replacementInfo: ReplacementInfo[] = [];\n\n const findGlobal = /\\:global\\((.+?)\\)/g;\n let match = null;\n // Create a result list for global selectors so we can replace them.\n while ((match = findGlobal.exec(selectorWithGlobals))) {\n // Only if the found selector is a comma separated list we'll process it.\n if (match[1].indexOf(',') > -1) {\n replacementInfo.push([\n match.index,\n match.index + match[0].length,\n // Wrap each of the found selectors in :global()\n match[1]\n .split(',')\n .map((v: string) => `:global(${v.trim()})`)\n .join(', '),\n ]);\n }\n }\n\n // Replace the found selectors with their wrapped variants in reverse order\n return replacementInfo\n .reverse()\n .reduce((selector: string, [matchIndex, matchEndIndex, replacement]: ReplacementInfo) => {\n const prefix = selector.slice(0, matchIndex);\n const suffix = selector.slice(matchEndIndex);\n\n return prefix + replacement + suffix;\n }, selectorWithGlobals);\n}\n\nfunction expandSelector(newSelector: string, currentSelector: string): string {\n if (newSelector.indexOf(':global(') >= 0) {\n return newSelector.replace(globalSelectorRegExp, '$1');\n } else if (newSelector.indexOf(':') === 0) {\n return currentSelector + newSelector;\n } else if (newSelector.indexOf('&') < 0) {\n return currentSelector + ' ' + newSelector;\n }\n\n return newSelector;\n}\n\nfunction extractSelector(currentSelector: string, rules: IRuleSet = { __order: [] }, selector: string, value: IStyle) {\n if (selector.indexOf('@') === 0) {\n selector = selector + '{' + currentSelector;\n extractRules([value], rules, selector);\n } else if (selector.indexOf(',') > -1) {\n expandCommaSeparatedGlobals(selector)\n .split(',')\n .map((s: string) => s.trim())\n .forEach((separatedSelector: string) =>\n extractRules([value], rules, expandSelector(separatedSelector, currentSelector)),\n );\n } else {\n extractRules([value], rules, expandSelector(selector, currentSelector));\n }\n}\n\nfunction extractRules(args: IStyle[], rules: IRuleSet = { __order: [] }, currentSelector: string = '&'): IRuleSet {\n const stylesheet = Stylesheet.getInstance();\n let currentRules: IDictionary | undefined = rules[currentSelector] as IDictionary;\n\n if (!currentRules) {\n currentRules = {};\n rules[currentSelector] = currentRules;\n rules.__order.push(currentSelector);\n }\n\n for (const arg of args) {\n // If the arg is a string, we need to look up the class map and merge.\n if (typeof arg === 'string') {\n const expandedRules = stylesheet.argsFromClassName(arg);\n\n if (expandedRules) {\n extractRules(expandedRules, rules, currentSelector);\n }\n // Else if the arg is an array, we need to recurse in.\n } else if (Array.isArray(arg)) {\n extractRules(arg, rules, currentSelector);\n } else {\n for (const prop in arg as any) {\n if ((arg as any).hasOwnProperty(prop)) {\n const propValue = (arg as any)[prop];\n\n if (prop === 'selectors') {\n // every child is a selector.\n const selectors: { [key: string]: IStyle } = (arg as any).selectors;\n\n for (const newSelector in selectors) {\n if (selectors.hasOwnProperty(newSelector)) {\n extractSelector(currentSelector, rules, newSelector, selectors[newSelector]);\n }\n }\n } else if (typeof propValue === 'object') {\n // prop is a selector.\n if (propValue !== null) {\n extractSelector(currentSelector, rules, prop, propValue);\n }\n } else {\n if (propValue !== undefined) {\n // Else, add the rule to the currentSelector.\n if (prop === 'margin' || prop === 'padding') {\n expandQuads(currentRules, prop, propValue);\n } else {\n (currentRules as any)[prop] = propValue;\n }\n }\n }\n }\n }\n }\n }\n\n return rules;\n}\n\nfunction expandQuads(currentRules: IDictionary, name: string, value: string): void {\n let parts = typeof value === 'string' ? tokenizeWithParentheses(value) : [value];\n\n if (parts.length === 0) {\n parts.push(value);\n }\n\n if (parts[parts.length - 1] === '!important') {\n // Remove !important from parts, and append it to each part individually\n parts = parts.slice(0, -1).map(p => p + ' !important');\n }\n\n currentRules[name + 'Top'] = parts[0];\n currentRules[name + 'Right'] = parts[1] || parts[0];\n currentRules[name + 'Bottom'] = parts[2] || parts[0];\n currentRules[name + 'Left'] = parts[3] || parts[1] || parts[0];\n}\n\nfunction getKeyForRules(options: IStyleOptions, rules: IRuleSet): string | undefined {\n const serialized: string[] = [options.rtl ? 'rtl' : 'ltr'];\n let hasProps = false;\n\n for (const selector of rules.__order) {\n serialized.push(selector);\n const rulesForSelector = rules[selector];\n\n for (const propName in rulesForSelector) {\n if (rulesForSelector.hasOwnProperty(propName) && rulesForSelector[propName] !== undefined) {\n hasProps = true;\n serialized.push(propName, rulesForSelector[propName]);\n }\n }\n }\n\n return hasProps ? serialized.join('') : undefined;\n}\n\nfunction repeatString(target: string, count: number): string {\n if (count <= 0) {\n return '';\n }\n\n if (count === 1) {\n return target;\n }\n\n return target + repeatString(target, count - 1);\n}\n\nexport function serializeRuleEntries(options: IStyleOptions, ruleEntries: { [key: string]: string | number }): string {\n if (!ruleEntries) {\n return '';\n }\n\n const allEntries: (string | number)[] = [];\n\n for (const entry in ruleEntries) {\n if (ruleEntries.hasOwnProperty(entry) && entry !== DISPLAY_NAME && ruleEntries[entry] !== undefined) {\n allEntries.push(entry, ruleEntries[entry]);\n }\n }\n\n // Apply transforms.\n for (let i = 0; i < allEntries.length; i += 2) {\n kebabRules(allEntries, i);\n provideUnits(allEntries, i);\n rtlifyRules(options, allEntries, i);\n prefixRules(allEntries, i);\n }\n\n // Apply punctuation.\n for (let i = 1; i < allEntries.length; i += 4) {\n allEntries.splice(i, 1, ':', allEntries[i], ';');\n }\n\n return allEntries.join('');\n}\n\nexport interface IRegistration {\n className: string;\n key: string;\n args: IStyle[];\n rulesToInsert: string[];\n}\n\nexport function styleToRegistration(options: IStyleOptions, ...args: IStyle[]): IRegistration | undefined {\n const rules: IRuleSet = extractRules(args);\n const key = getKeyForRules(options, rules);\n\n if (key) {\n const stylesheet = Stylesheet.getInstance();\n const registration: Partial = {\n className: stylesheet.classNameFromKey(key),\n key,\n args,\n };\n\n if (!registration.className) {\n registration.className = stylesheet.getClassName(getDisplayName(rules));\n const rulesToInsert: string[] = [];\n\n for (const selector of rules.__order) {\n rulesToInsert.push(selector, serializeRuleEntries(options, rules[selector]));\n }\n registration.rulesToInsert = rulesToInsert;\n }\n\n return registration as IRegistration;\n }\n\n return undefined;\n}\n\n/**\n * Insert style to stylesheet.\n * @param registration Style registration.\n * @param specificityMultiplier Number of times classname selector is repeated in the css rule.\n * This is to increase css specificity in case it's needed. Default to 1.\n */\nexport function applyRegistration(registration: IRegistration, specificityMultiplier: number = 1): void {\n const stylesheet = Stylesheet.getInstance();\n const { className, key, args, rulesToInsert } = registration;\n\n if (rulesToInsert) {\n // rulesToInsert is an ordered array of selector/rule pairs.\n for (let i = 0; i < rulesToInsert.length; i += 2) {\n const rules = rulesToInsert[i + 1];\n if (rules) {\n let selector = rulesToInsert[i];\n selector = selector.replace(/&/g, repeatString(`.${registration.className}`, specificityMultiplier));\n\n // Insert. Note if a media query, we must close the query with a final bracket.\n const processedRule = `${selector}{${rules}}${selector.indexOf('@') === 0 ? '}' : ''}`;\n stylesheet.insertRule(processedRule);\n }\n }\n stylesheet.cacheClassName(className!, key!, args!, rulesToInsert);\n }\n}\n\nexport function styleToClassName(options: IStyleOptions, ...args: IStyle[]): string {\n const registration = styleToRegistration(options, ...args);\n if (registration) {\n applyRegistration(registration, options.specificityMultiplier);\n\n return registration.className;\n }\n\n return '';\n}\n","/**\n * Split a string into tokens separated by whitespace, except all text within parentheses\n * is treated as a single token (whitespace is ignored within parentheses).\n *\n * Unlike String.split(' '), multiple consecutive space characters are collapsed and\n * removed from the returned array (including leading and trailing spaces).\n *\n * For example:\n * `tokenizeWithParentheses(\"3px calc(var(--x) / 2) 9px 0 \")`\n * => `[\"3px\", \"calc(var(--x) / 2)\", \"9px\", \"0\"]`\n *\n * @returns The array of tokens. Returns an empty array if the string was empty or contained only whitespace.\n */\nexport function tokenizeWithParentheses(value: string): string[] {\n const parts = [];\n let partStart = 0;\n let parens = 0;\n\n for (let i = 0; i < value.length; i++) {\n switch (value[i]) {\n case '(':\n parens++;\n break;\n case ')':\n if (parens) {\n parens--;\n }\n break;\n case '\\t':\n case ' ':\n if (!parens) {\n // Add the new part if it's not an empty string\n if (i > partStart) {\n parts.push(value.substring(partStart, i));\n }\n partStart = i + 1;\n }\n break;\n }\n }\n\n // Add the last part\n if (partStart < value.length) {\n parts.push(value.substring(partStart));\n }\n\n return parts;\n}\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","import { memoizeFunction } from '../../Utilities';\nimport { HighContrastSelector, getFocusStyle, hiddenContentStyle } from '../../Styling';\nimport type { IButtonStyles } from './Button.types';\nimport type { ITheme, IRawStyle } from '../../Styling';\n\nconst noOutline: IRawStyle = {\n outline: 0,\n};\n\nconst iconStyle = (fontSize?: string | number): IRawStyle => {\n return {\n fontSize: fontSize,\n margin: '0 4px',\n height: '16px',\n lineHeight: '16px',\n textAlign: 'center',\n flexShrink: 0,\n };\n};\n\n/**\n * Gets the base button styles. Note: because it is a base class to be used with the `mergeRules`\n * helper, it should have values for all class names in the interface. This let `mergeRules` optimize\n * mixing class names together.\n */\nexport const getStyles = memoizeFunction(\n (theme: ITheme): IButtonStyles => {\n const { semanticColors, effects, fonts } = theme;\n\n const border = semanticColors.buttonBorder;\n const disabledBackground = semanticColors.disabledBackground;\n const disabledText = semanticColors.disabledText;\n const buttonHighContrastFocus = {\n left: -2,\n top: -2,\n bottom: -2,\n right: -2,\n outlineColor: 'ButtonText',\n };\n\n return {\n root: [\n getFocusStyle(theme, { inset: 1, highContrastStyle: buttonHighContrastFocus, borderColor: 'transparent' }),\n theme.fonts.medium,\n {\n boxSizing: 'border-box',\n border: '1px solid ' + border,\n userSelect: 'none',\n display: 'inline-block',\n textDecoration: 'none',\n textAlign: 'center',\n cursor: 'pointer',\n padding: '0 16px',\n borderRadius: effects.roundedCorner2,\n\n selectors: {\n // IE11 workaround for preventing shift of child elements of a button when active.\n ':active > span': {\n position: 'relative',\n left: 0,\n top: 0,\n },\n },\n },\n ],\n\n rootDisabled: [\n getFocusStyle(theme, { inset: 1, highContrastStyle: buttonHighContrastFocus, borderColor: 'transparent' }),\n {\n backgroundColor: disabledBackground,\n borderColor: disabledBackground,\n color: disabledText,\n cursor: 'default',\n selectors: {\n ':hover': noOutline,\n ':focus': noOutline,\n },\n },\n ],\n\n iconDisabled: {\n color: disabledText,\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n },\n },\n },\n\n menuIconDisabled: {\n color: disabledText,\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n },\n },\n },\n\n flexContainer: {\n display: 'flex',\n height: '100%',\n flexWrap: 'nowrap',\n justifyContent: 'center',\n alignItems: 'center',\n },\n description: {\n display: 'block',\n },\n\n textContainer: {\n flexGrow: 1,\n display: 'block',\n },\n\n icon: iconStyle(fonts.mediumPlus.fontSize),\n\n menuIcon: iconStyle(fonts.small.fontSize),\n\n label: {\n margin: '0 4px',\n lineHeight: '100%',\n display: 'block',\n },\n\n screenReaderText: hiddenContentStyle,\n };\n },\n);\n","import * as React from 'react';\nimport { DirectionalHint } from '../../common/DirectionalHint';\nimport type { IFocusZoneProps } from '../../FocusZone';\nimport type { IIconProps } from '../../Icon';\nimport type { ICalloutProps, ICalloutContentStyleProps } from '../../Callout';\nimport type { ITheme, IStyle } from '../../Styling';\nimport type { IButtonStyles } from '../../Button';\nimport type { IRefObject, IBaseProps, IRectangle, IRenderFunction, IStyleFunctionOrObject } from '../../Utilities';\nimport type { IWithResponsiveModeState } from '../../ResponsiveMode';\nimport type { IContextualMenuClassNames, IMenuItemClassNames } from './ContextualMenu.classNames';\nimport type { IVerticalDividerClassNames } from '../Divider/VerticalDivider.types';\nimport type {\n IContextualMenuItemProps,\n IContextualMenuRenderItem,\n IContextualMenuItemStyleProps,\n IContextualMenuItemRenderFunctions,\n} from './ContextualMenuItem.types';\nimport type { IKeytipProps } from '../../Keytip';\nimport type { Target } from '@fluentui/react-hooks';\nimport type { IPopupRestoreFocusParams } from '../../Popup';\n\nexport { DirectionalHint } from '../../common/DirectionalHint';\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport enum ContextualMenuItemType {\n Normal = 0,\n Divider = 1,\n Header = 2,\n Section = 3,\n}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IContextualMenu {}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IContextualMenuProps\n extends IBaseProps,\n React.RefAttributes,\n // eslint-disable-next-line deprecation/deprecation\n IWithResponsiveModeState {\n /**\n * Optional callback to access the IContextualMenu interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject;\n\n /**\n * Call to provide customized styling that will layer on top of the variant rules.\n */\n styles?: IStyleFunctionOrObject;\n\n /**\n * Theme provided by higher-order component.\n */\n theme?: ITheme;\n\n /**\n * Additional CSS class to apply to the ContextualMenu.\n */\n className?: string;\n\n /**\n * The target that the ContextualMenu should try to position itself based on.\n * It can be either an element, a query selector string resolving to a valid element,\n * or a MouseEvent. If a MouseEvent is given, the origin point of the event will be used.\n */\n target?: Target;\n\n /**\n * How the menu should be positioned\n * @defaultvalue DirectionalHint.bottomAutoEdge\n */\n directionalHint?: DirectionalHint;\n\n /**\n * How the menu should be positioned in RTL layouts.\n * If not specified, a mirror of `directionalHint` will be used.\n */\n directionalHintForRTL?: DirectionalHint;\n\n /**\n * The gap between the ContextualMenu and the target\n * @defaultvalue 0\n */\n gapSpace?: number;\n\n /**\n * The width of the beak.\n * @defaultvalue 16\n */\n beakWidth?: number;\n\n /**\n * If true the context menu will render as the same width as the target element\n * @defaultvalue false\n */\n useTargetWidth?: boolean;\n\n /**\n * If true the context menu will have a minimum width equal to the width of the target element\n * @defaultvalue false\n */\n useTargetAsMinWidth?: boolean;\n\n /**\n * The bounding rectangle (or callback that returns a rectangle) which the contextual menu can appear in.\n */\n bounds?: IRectangle | ((target?: Target, targetWindow?: Window) => IRectangle | undefined);\n\n /**\n * If true then the beak is visible. If false it will not be shown.\n */\n isBeakVisible?: boolean;\n\n /**\n * If true, the menu will be positioned to cover the target.\n * If false, it will be positioned next to the target.\n * @defaultvalue false\n */\n coverTarget?: boolean;\n\n /**\n * If true the positioning logic will prefer to flip edges rather than to nudge the rectangle to fit within bounds,\n * thus making sure the element aligns perfectly with target's alignment edge\n */\n alignTargetEdge?: boolean;\n\n /**\n * Menu items to display.\n */\n items: IContextualMenuItem[];\n\n /**\n * Used as `aria-labelledby` for the menu element inside the callout.\n */\n labelElementId?: string;\n\n /**\n * Whether to focus on the menu when mounted.\n * @defaultvalue true\n */\n shouldFocusOnMount?: boolean;\n\n /**\n * Whether to focus on the contextual menu container (as opposed to the first menu item).\n *\n * Avoid using as it breaks the default focus behaviour when using assistive technologies.\n */\n shouldFocusOnContainer?: boolean;\n\n /**\n * Callback when the ContextualMenu tries to close. If `dismissAll` is true then all\n * submenus will be dismissed.\n */\n onDismiss?: (ev?: Event | React.MouseEvent | React.KeyboardEvent, dismissAll?: boolean) => void;\n\n /**\n * Click handler which is invoked if `onClick` is not passed for individual contextual\n * menu item.\n * Returning true will dismiss the menu even if `ev.preventDefault()` was called.\n */\n onItemClick?: (\n ev?: React.MouseEvent | React.KeyboardEvent,\n item?: IContextualMenuItem,\n ) => boolean | void;\n\n /**\n * Whether this menu is a submenu of another menu.\n */\n isSubMenu?: boolean;\n\n /**\n * ID for the ContextualMenu's root element (inside the callout).\n * Should be used for `aria-owns` and other such uses, rather than direct reference for programmatic purposes.\n */\n id?: string;\n\n /**\n * Accessible label for the ContextualMenu's root element (inside the callout).\n */\n ariaLabel?: string;\n\n /**\n * If true do not render on a new layer. If false render on a new layer.\n * @defaultvalue false\n */\n doNotLayer?: boolean;\n\n /**\n * If true the position will not change sides in an attempt to fit the ContextualMenu within bounds.\n * It will still attempt to align it to whatever bounds are given.\n * @defaultvalue false\n */\n directionalHintFixed?: boolean;\n\n /**\n * Callback for when the menu has been opened.\n */\n onMenuOpened?: (contextualMenu?: IContextualMenuProps) => void;\n\n /**\n * Callback for when the menu is being closed (removing from the DOM).\n */\n onMenuDismissed?: (contextualMenu?: IContextualMenuProps) => void;\n\n /**\n * Additional custom props for the Callout.\n */\n calloutProps?: ICalloutProps;\n\n /**\n * Title to be displayed at the top of the menu, above the items.\n */\n title?: string;\n\n /**\n * Method to provide the classnames to style the contextual menu.\n * @deprecated Use `styles` instead to leverage mergeStyles API.\n */\n // eslint-disable-next-line deprecation/deprecation\n getMenuClassNames?: (theme: ITheme, className?: string) => IContextualMenuClassNames;\n\n /** Custom render function for a submenu. */\n onRenderSubMenu?: IRenderFunction;\n\n /**\n * Method to override the render of the list of menu items.\n */\n onRenderMenuList?: IRenderFunction;\n\n /**\n * Method to wrap menu items. Gives the ability to wrap a custom\n * tooltip to each menu item button.\n */\n onRenderContextualMenuItem?: IRenderFunction;\n\n /**\n * Delay (in milliseconds) to wait before expanding / dismissing a submenu on mouseEnter or mouseLeave\n */\n subMenuHoverDelay?: number;\n\n /**\n * Custom component to use for rendering individual menu items.\n * @defaultvalue ContextualMenuItem\n */\n contextualMenuItemAs?:\n | React.ComponentClass\n | React.FunctionComponent;\n\n /**\n * Props to pass down to the FocusZone.\n * NOTE: the default FocusZoneDirection will be used unless a direction\n * is specified in the focusZoneProps (even if other focusZoneProps are defined)\n * @defaultvalue \\{ direction: FocusZoneDirection.vertical \\}\n */\n focusZoneProps?: IFocusZoneProps;\n\n /**\n * Custom component to use for rendering the focus zone (the root).\n * @defaultValue FocusZone\n */\n focusZoneAs?: React.ComponentClass | React.FunctionComponent;\n\n /**\n * If true, renders the ContextualMenu in a hidden state.\n * Use this flag, rather than rendering a ContextualMenu conditionally based on visibility,\n * to improve rendering performance when it becomes visible.\n * Note: When ContextualMenu is hidden its content will not be rendered. It will only render\n * once the ContextualMenu is visible.\n */\n hidden?: boolean;\n\n /**\n * If true, the menu will be updated even when `hidden=true`. Note that this will consume\n * resources to update even when nothing is being shown to the user. This might be helpful if\n * your updates are small and you want the menu to display quickly when `hidden` is set to false.\n */\n shouldUpdateWhenHidden?: boolean;\n\n /**\n * If true, the contextual menu will not be updated until focus enters the menu via other means.\n * This will only result in different behavior when `shouldFocusOnMount = false`.\n */\n delayUpdateFocusOnHover?: boolean;\n\n /**\n * Called when the component is unmounting, and focus needs to be restored. If this is provided,\n * focus will not be restored automatically, and you'll need to call `params.originalElement.focus()`.\n */\n onRestoreFocus?: (params: IPopupRestoreFocusParams) => void;\n}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IContextualMenuItemRenderProps extends IContextualMenuItem {\n index: number;\n focusableElementIndex: number;\n totalItemCount: number;\n hasCheckmarks: boolean;\n hasIcons: boolean;\n}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IContextualMenuListProps {\n items: IContextualMenuItem[];\n totalItemCount: number;\n hasCheckmarks: boolean;\n hasIcons: boolean;\n defaultMenuItemRenderer: (item: IContextualMenuItemRenderProps) => React.ReactNode;\n ariaLabel?: string;\n labelElementId?: string;\n role?: string;\n}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IContextualMenuItem {\n /**\n * Optional callback to access the IContextualMenuRenderItem interface.\n * This will get passed down to ContextualMenuItem.\n */\n componentRef?: IRefObject;\n\n /**\n * Unique id to identify the item\n */\n key: string;\n\n /**\n * Text of the menu item.\n * If a standard hyphen (-) is passed in, then the item will be rendered as a divider.\n * If a dash must appear as text, use an emdash (—), figuredash (‒), or minus symbol (−) instead.\n */\n text?: string;\n\n /**\n * Secondary description for the menu item to display\n */\n secondaryText?: string;\n\n itemType?: ContextualMenuItemType;\n\n /**\n * Props for an icon to display next to the item.\n */\n iconProps?: IIconProps;\n\n /**\n * Custom render function for the menu item icon.\n * iconProps must be present on at least one item for onRenderIcon to be called.\n */\n onRenderIcon?: IRenderFunction;\n\n /**\n * Props for the Icon used for the chevron.\n */\n submenuIconProps?: IIconProps;\n\n /**\n * Whether the menu item is disabled\n * @defaultvalue false\n */\n disabled?: boolean;\n\n /**\n * If the menu item is a split button, this prop disables purely the primary action of the button.\n * @defaultvalue false\n */\n primaryDisabled?: boolean;\n\n /**\n * @deprecated Not used\n */\n shortCut?: string;\n\n /**\n * Whether or not this menu item can be checked\n * @defaultvalue false\n */\n canCheck?: boolean;\n\n /**\n * Whether or not this menu item is currently checked.\n * @defaultvalue false\n */\n checked?: boolean;\n\n /**\n * Whether or not this menu item is a splitButton.\n * @defaultvalue false\n */\n split?: boolean;\n\n /**\n * Any custom data the developer wishes to associate with the menu item.\n */\n data?: any;\n\n /**\n * Callback for when the menu item is invoked. If `ev.preventDefault()` is called in `onClick`,\n * the click will not close the menu.\n *\n * Only for ContextualMenu items, returning true will dismiss the menu even if `ev.preventDefault()`\n * was called (does not apply for button or CommandBar sub-menu items).\n */\n onClick?: (\n ev?: React.MouseEvent | React.KeyboardEvent,\n item?: IContextualMenuItem,\n ) => boolean | void;\n\n /**\n * Navigate to this URL when the menu item is clicked.\n */\n href?: string;\n\n /**\n * Target window when using `href`.\n */\n target?: string;\n\n /**\n * Link relation setting when using `href`.\n * If `target` is `_blank`, `rel` is defaulted to a value to prevent clickjacking.\n */\n rel?: string;\n\n /**\n * Properties to apply to a submenu to this item.\n *\n * The ContextualMenu will provide default values for `target`, `onDismiss`, `isSubMenu`,\n * `id`, `shouldFocusOnMount`, `directionalHint`, `className`, and `gapSpace`, all of which\n * can be overridden.\n */\n subMenuProps?: IContextualMenuProps;\n\n /**\n * Method to provide the classnames to style the individual items inside a menu.\n * @deprecated Use `styles` prop of `IContextualMenuItemProps` to leverage mergeStyles API.\n */\n getItemClassNames?: (\n theme: ITheme,\n disabled: boolean,\n expanded: boolean,\n checked: boolean,\n isAnchorLink: boolean,\n knownIcon: boolean,\n itemClassName?: string,\n dividerClassName?: string,\n iconClassName?: string,\n subMenuClassName?: string,\n primaryDisabled?: boolean,\n ) => // eslint-disable-next-line deprecation/deprecation\n IMenuItemClassNames;\n\n /**\n * Optional IContextualMenuItemProps overrides to customize behaviors such as item styling via `styles`.\n */\n itemProps?: Partial;\n\n /**\n * Method to provide the classnames to style the Vertical Divider of a split button inside a menu.\n * Default value is the `getSplitButtonVerticalDividerClassNames` func defined in `ContextualMenu.classnames.ts`.\n * @defaultvalue getSplitButtonVerticalDividerClassNames\n */\n // eslint-disable-next-line deprecation/deprecation\n getSplitButtonVerticalDividerClassNames?: (theme: ITheme) => IVerticalDividerClassNames;\n\n /**\n * Properties to apply to render this item as a section.\n * This prop is mutually exclusive with `subMenuProps`.\n */\n sectionProps?: IContextualMenuSection;\n\n /**\n * Additional CSS class to apply to the menu item.\n */\n className?: string;\n\n /**\n * Additional styles to apply to the menu item\n * @deprecated Use `styles` instead to leverage mergeStyles API.\n */\n style?: React.CSSProperties;\n\n /**\n * Custom accessible label for the element.\n * If no override is specified, the `aria-label` attribute will contain the item name.\n */\n ariaLabel?: string;\n\n /**\n * Title (tooltip) text displayed when hovering over an item.\n */\n title?: string;\n\n /**\n * Method to custom render this menu item.\n * For keyboard accessibility, the top-level rendered item should be a focusable element\n * (like an anchor or a button) or have the `data-is-focusable` property set to true.\n *\n * @param item - Item to render. Will typically be of type `IContextualMenuItem`.\n * (When rendering a command bar item, will be `ICommandBarItemProps`.)\n * @param dismissMenu - Function to dismiss the menu. Can be used to ensure that a custom menu\n * item click dismisses the menu. (Will be undefined if rendering a command bar item.)\n */\n onRender?: (item: any, dismissMenu: (ev?: any, dismissAll?: boolean) => void) => React.ReactNode;\n\n /**\n * Method to customize sub-components rendering of this menu item.\n *\n * @param props - Props used to pass into render functions\n * @param defaultRenders - Default render functions that renders default sub-components\n */\n onRenderContent?: (\n props: IContextualMenuItemProps,\n defaultRenders: IContextualMenuItemRenderFunctions,\n ) => React.ReactNode;\n\n /**\n * A function to be executed on mouse down. This is executed before an `onClick` event and can\n * be used to interrupt native on click events as well. The click event should still handle\n * the commands. This should only be used in special cases when react and non-react are mixed.\n */\n onMouseDown?: (item: IContextualMenuItem, event: React.MouseEvent) => void;\n\n /**\n * Optional override for the menu button's role.\n * @default `menuitem` or `menuitemcheckbox`\n */\n role?: string;\n\n /**\n * When rendering a custom menu component that is passed in, the component might also be a list of\n * elements. We want to keep track of the correct index our menu is using based off of\n * the length of the custom list. It is up to the user to increment the count for their list.\n */\n customOnRenderListLength?: number;\n\n /**\n * Keytip for this contextual menu item\n */\n keytipProps?: IKeytipProps;\n\n /**\n * @deprecated Use subMenuProps.items instead.\n */\n items?: IContextualMenuItem[];\n\n /**\n * Any additional properties to use when custom rendering menu items.\n */\n [propertyName: string]: any;\n\n /**\n * Detailed description of the menu item for the benefit of screen readers.\n */\n ariaDescription?: string;\n\n /**\n * ID of the element that contains additional detailed descriptive information for screen readers\n */\n ariaDescribedBy?: string;\n\n /**\n * @deprecated No longer used. All contextual menu items are now focusable when disabled.\n */\n inactive?: boolean;\n\n /**\n * Text of the menu item.\n * @deprecated Use `text` instead.\n */\n name?: string;\n\n /**\n * Flag which indicates that, when the item is clicked, the 'target' for the click event should be\n * overridden to reflect the launch target from the root menu.\n * This avoids a situation where the 'target' of the event may wind up detached from the DOM\n * when the menu is dismissed in response to the click.\n */\n preferMenuTargetAsEventTarget?: boolean;\n}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IContextualMenuSection extends React.ClassAttributes {\n /**\n * The items to include inside the section.\n */\n items: IContextualMenuItem[];\n\n /**\n * The optional section title.\n */\n title?: string | IContextualMenuItem;\n\n /**\n * If set to true, the section will display a divider at the top of the section.\n */\n topDivider?: boolean;\n\n /**\n * If set to true, the section will display a divider at the bottom of the section.\n */\n bottomDivider?: boolean;\n}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IMenuItemStyles extends IButtonStyles {\n /**\n * Styles for a menu item that is an anchor link.\n */\n item?: IStyle;\n\n /**\n * Styles for the content inside the button/link of the menuItem.\n */\n linkContent?: IStyle;\n\n /**\n * Styles for a menu item that is an anchor link.\n */\n anchorLink?: IStyle;\n\n /**\n * Default icon color style for known icons.\n */\n iconColor?: IStyle;\n\n /**\n * Default style for checkmark icons.\n */\n checkmarkIcon?: IStyle;\n\n /**\n * Styles for the submenu icon of a menu item.\n */\n subMenuIcon?: IStyle;\n\n /**\n * Styles for a divider item of a ContextualMenu.\n */\n divider?: IStyle;\n}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IContextualMenuStyleProps {\n theme: ITheme;\n\n className?: string;\n\n // Insert ContextualMenu style props below\n}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IContextualMenuStyles {\n /**\n * Style override for the contextual menu title.\n */\n title: IStyle;\n\n /**\n * Style for the container which parents all menu items.\n */\n container: IStyle;\n\n /**\n * Base styles for the root element of all ContextualMenus.\n */\n root: IStyle;\n\n /**\n * Styles for the header item of a ContextualMenu\n */\n header: IStyle;\n\n /**\n * Styles for the list that contains all menuItems.\n */\n list: IStyle;\n\n /**\n * SubComponent styles.\n */\n subComponentStyles: IContextualMenuSubComponentStyles;\n}\n\n/**\n * {@docCategory ContextualMenu}\n */\nexport interface IContextualMenuSubComponentStyles {\n /** Styles for the callout that hosts the ContextualMenu options. */\n callout: IStyleFunctionOrObject;\n\n /** Styles for each menu item. */\n menuItem: IStyleFunctionOrObject;\n}\n","import * as React from 'react';\nimport { Image } from '../Image/Image';\nimport { css, getNativeProps, htmlElementProperties } from '../../Utilities';\nimport { classNames, MS_ICON } from './Icon.styles';\nimport type { IImageIconProps } from './Icon.types';\n\n/**\n * Fast icon component which only supports images (not font glyphs) and can't be targeted by customizations.\n * To style the icon, use `className` or reference `ms-Icon` in CSS.\n * {@docCategory Icon}\n */\nexport const ImageIcon: React.FunctionComponent = props => {\n const { className, imageProps } = props;\n\n const nativeProps = getNativeProps>(props, htmlElementProperties, [\n 'aria-label',\n 'aria-labelledby',\n 'title',\n 'aria-describedby',\n ]);\n const altText = imageProps.alt || props['aria-label'];\n const hasName =\n altText ||\n props['aria-labelledby'] ||\n props.title ||\n imageProps['aria-label'] ||\n imageProps['aria-labelledby'] ||\n imageProps.title;\n\n // move naming or describing attributes from the container (where they are invalid) to the image\n const imageNameProps = {\n 'aria-labelledby': props['aria-labelledby'],\n 'aria-describedby': props['aria-describedby'],\n title: props.title,\n };\n\n const containerProps = hasName\n ? {}\n : {\n 'aria-hidden': true,\n };\n\n return (\n
\n {hasName\n
\n );\n};\n","import type { IContextualMenuItem } from '../../index';\n\n/**\n * Determines the effective checked state of a menu item.\n *\n * @param item {IContextualMenuItem} to get the check state of.\n * @returns {true} if the item is checked.\n * @returns {false} if the item is unchecked.\n * @returns {null} if the item is not checkable.\n */\nexport function getIsChecked(item: IContextualMenuItem): boolean | null {\n if (item.canCheck) {\n return !!(item.isChecked || item.checked);\n }\n\n if (typeof item.isChecked === 'boolean') {\n return item.isChecked;\n }\n\n if (typeof item.checked === 'boolean') {\n return item.checked;\n }\n\n // Item is not checkable.\n return null;\n}\n\nexport function hasSubmenu(item: IContextualMenuItem): boolean {\n // eslint-disable-next-line deprecation/deprecation\n return !!(item.subMenuProps || item.items);\n}\n\nexport function isItemDisabled(item: IContextualMenuItem): boolean {\n return !!(item.isDisabled || item.disabled);\n}\n\nexport function getMenuItemAriaRole(item: IContextualMenuItem): string {\n const isChecked = getIsChecked(item);\n const canCheck: boolean = isChecked !== null;\n return canCheck ? 'menuitemcheckbox' : 'menuitem';\n}\n","import * as React from 'react';\nimport { hasSubmenu, getIsChecked } from '../../utilities/contextualMenu/index';\nimport { getRTL, initializeComponentRef } from '../../Utilities';\nimport { Icon } from '../../Icon';\nimport type { IContextualMenuItemProps, IContextualMenuItemRenderFunctions } from './ContextualMenuItem.types';\n\nconst defaultIconRenderer = (props: IContextualMenuItemProps) => {\n const { item, classNames } = props;\n const { iconProps } = item;\n return ;\n};\n\nconst renderItemIcon = (props: IContextualMenuItemProps) => {\n const { item, hasIcons } = props;\n if (!hasIcons) {\n return null;\n }\n\n if (item.onRenderIcon) {\n return item.onRenderIcon(props, defaultIconRenderer);\n }\n\n return defaultIconRenderer(props);\n};\n\nconst renderCheckMarkIcon = ({ onCheckmarkClick, item, classNames }: IContextualMenuItemProps) => {\n const isItemChecked = getIsChecked(item);\n if (onCheckmarkClick) {\n // Ensures that the item is passed as the first argument to the checkmark click callback.\n const onClick = (e: React.MouseEvent) => onCheckmarkClick(item, e);\n\n return (\n \n );\n }\n return null;\n};\n\nconst renderItemName = ({ item, classNames }: IContextualMenuItemProps) => {\n /* eslint-disable deprecation/deprecation */\n if (item.text || item.name) {\n return {item.text || item.name};\n }\n /* eslint-enable deprecation/deprecation */\n return null;\n};\n\nconst renderSecondaryText = ({ item, classNames }: IContextualMenuItemProps) => {\n if (item.secondaryText) {\n return {item.secondaryText};\n }\n return null;\n};\n\nconst renderSubMenuIcon = ({ item, classNames, theme }: IContextualMenuItemProps) => {\n if (hasSubmenu(item)) {\n return (\n \n );\n }\n return null;\n};\n\nexport class ContextualMenuItemBase extends React.Component {\n constructor(props: IContextualMenuItemProps) {\n super(props);\n\n initializeComponentRef(this);\n }\n\n public render() {\n const { item, classNames } = this.props;\n const renderContent = item.onRenderContent || this._renderLayout;\n\n return (\n
\n {renderContent(this.props, {\n renderCheckMarkIcon,\n renderItemIcon,\n renderItemName,\n renderSecondaryText,\n renderSubMenuIcon,\n })}\n
\n );\n }\n\n public openSubMenu = (): void => {\n const { item, openSubMenu, getSubmenuTarget } = this.props;\n if (getSubmenuTarget) {\n const submenuTarget = getSubmenuTarget();\n if (hasSubmenu(item) && openSubMenu && submenuTarget) {\n openSubMenu(item, submenuTarget);\n }\n }\n };\n\n public dismissSubMenu = (): void => {\n const { item, dismissSubMenu } = this.props;\n if (hasSubmenu(item) && dismissSubMenu) {\n dismissSubMenu();\n }\n };\n\n public dismissMenu = (dismissAll?: boolean): void => {\n const { dismissMenu } = this.props;\n if (dismissMenu) {\n dismissMenu(undefined /* ev */, dismissAll);\n }\n };\n\n private _renderLayout(props: IContextualMenuItemProps, defaultRenders: IContextualMenuItemRenderFunctions) {\n return (\n <>\n {defaultRenders.renderCheckMarkIcon(props)}\n {defaultRenders.renderItemIcon(props)}\n {defaultRenders.renderItemName(props)}\n {defaultRenders.renderSecondaryText(props)}\n {defaultRenders.renderSubMenuIcon(props)}\n \n );\n }\n}\n","import { memoizeFunction } from '../../Utilities';\nimport { mergeStyleSets } from '../../Styling';\nimport type { ITheme } from '../../Styling';\nimport type { IVerticalDividerClassNames } from './VerticalDivider.types';\n\n/**\n * @deprecated use getStyles exported from VerticalDivider.styles.ts\n */\nexport const getDividerClassNames = memoizeFunction(\n // eslint-disable-next-line deprecation/deprecation\n (theme: ITheme): IVerticalDividerClassNames => {\n return mergeStyleSets({\n wrapper: {\n display: 'inline-flex',\n height: '100%',\n alignItems: 'center',\n },\n divider: {\n width: 1,\n height: '100%',\n backgroundColor: theme.palette.neutralTertiaryAlt,\n },\n });\n },\n);\n","import {\n concatStyleSets,\n getFocusStyle,\n HighContrastSelector,\n getScreenSelector,\n ScreenWidthMaxMedium,\n IconFontSizes,\n getHighContrastNoAdjustStyle,\n} from '../../Styling';\nimport { memoizeFunction } from '../../Utilities';\nimport type { ITheme } from '../../Styling';\nimport type { IMenuItemStyles } from './ContextualMenu.types';\n\nexport const CONTEXTUAL_MENU_ITEM_HEIGHT = 36;\n\nconst MediumScreenSelector = getScreenSelector(0, ScreenWidthMaxMedium);\n\nexport const getMenuItemStyles = memoizeFunction(\n (theme: ITheme): IMenuItemStyles => {\n const { semanticColors, fonts, palette } = theme;\n const ContextualMenuItemBackgroundHoverColor = semanticColors.menuItemBackgroundHovered;\n const ContextualMenuItemTextHoverColor = semanticColors.menuItemTextHovered;\n const ContextualMenuItemBackgroundSelectedColor = semanticColors.menuItemBackgroundPressed;\n const ContextualMenuItemDividerColor = semanticColors.bodyDivider;\n\n const menuItemStyles: IMenuItemStyles = {\n item: [\n fonts.medium,\n {\n color: semanticColors.bodyText,\n position: 'relative',\n boxSizing: 'border-box',\n },\n ],\n divider: {\n display: 'block',\n height: '1px',\n backgroundColor: ContextualMenuItemDividerColor,\n position: 'relative',\n },\n root: [\n getFocusStyle(theme),\n fonts.medium,\n {\n color: semanticColors.bodyText,\n backgroundColor: 'transparent',\n border: 'none',\n width: '100%',\n height: CONTEXTUAL_MENU_ITEM_HEIGHT,\n lineHeight: CONTEXTUAL_MENU_ITEM_HEIGHT,\n display: 'block',\n cursor: 'pointer',\n padding: '0px 8px 0 4px', // inner elements have a margin of 4px (4 + 4 = 8px as on right side)\n textAlign: 'left',\n },\n ],\n rootDisabled: {\n color: semanticColors.disabledBodyText,\n cursor: 'default',\n pointerEvents: 'none',\n selectors: {\n [HighContrastSelector]: {\n // ensure disabled text looks different than enabled\n color: 'GrayText',\n opacity: 1,\n },\n },\n },\n rootHovered: {\n backgroundColor: ContextualMenuItemBackgroundHoverColor,\n color: ContextualMenuItemTextHoverColor,\n selectors: {\n '.ms-ContextualMenu-icon': {\n color: palette.themeDarkAlt,\n },\n '.ms-ContextualMenu-submenuIcon': {\n color: palette.neutralPrimary,\n },\n },\n },\n rootFocused: {\n backgroundColor: palette.white,\n },\n rootChecked: {\n selectors: {\n '.ms-ContextualMenu-checkmarkIcon': {\n color: palette.neutralPrimary,\n },\n },\n },\n rootPressed: {\n backgroundColor: ContextualMenuItemBackgroundSelectedColor,\n selectors: {\n '.ms-ContextualMenu-icon': {\n color: palette.themeDark,\n },\n '.ms-ContextualMenu-submenuIcon': {\n color: palette.neutralPrimary,\n },\n },\n },\n rootExpanded: {\n backgroundColor: ContextualMenuItemBackgroundSelectedColor,\n color: semanticColors.bodyTextChecked,\n selectors: {\n '.ms-ContextualMenu-submenuIcon': {\n [HighContrastSelector]: {\n // icons inside of anchor tags are not properly inheriting color in high contrast\n color: 'inherit',\n },\n },\n [HighContrastSelector]: {\n // allow change in background/text to be visible\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n linkContent: {\n whiteSpace: 'nowrap',\n height: 'inherit',\n display: 'flex',\n alignItems: 'center',\n maxWidth: '100%',\n },\n anchorLink: {\n padding: '0px 8px 0 4px', // inner elements have a margin of 4px (4 + 4 = 8px as on right side)\n textRendering: 'auto',\n color: 'inherit',\n letterSpacing: 'normal',\n wordSpacing: 'normal',\n textTransform: 'none',\n textIndent: '0px',\n textShadow: 'none',\n textDecoration: 'none',\n boxSizing: 'border-box',\n },\n label: {\n margin: '0 4px',\n verticalAlign: 'middle',\n display: 'inline-block',\n flexGrow: '1',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n },\n secondaryText: {\n color: theme.palette.neutralSecondary,\n paddingLeft: '20px',\n textAlign: 'right',\n },\n icon: {\n display: 'inline-block',\n minHeight: '1px',\n maxHeight: CONTEXTUAL_MENU_ITEM_HEIGHT,\n fontSize: IconFontSizes.medium,\n width: IconFontSizes.medium,\n margin: '0 4px',\n verticalAlign: 'middle',\n flexShrink: '0',\n selectors: {\n [MediumScreenSelector]: {\n fontSize: IconFontSizes.large,\n width: IconFontSizes.large,\n },\n },\n },\n iconColor: {\n color: semanticColors.menuIcon,\n },\n iconDisabled: {\n color: semanticColors.disabledBodyText,\n },\n checkmarkIcon: {\n color: semanticColors.bodySubtext,\n },\n subMenuIcon: {\n height: CONTEXTUAL_MENU_ITEM_HEIGHT,\n lineHeight: CONTEXTUAL_MENU_ITEM_HEIGHT,\n color: palette.neutralSecondary,\n textAlign: 'center',\n display: 'inline-block',\n verticalAlign: 'middle',\n flexShrink: '0',\n fontSize: IconFontSizes.small, // 12px\n selectors: {\n ':hover': {\n color: palette.neutralPrimary,\n },\n ':active': {\n color: palette.neutralPrimary,\n },\n [MediumScreenSelector]: {\n fontSize: IconFontSizes.medium, // 16px\n },\n },\n },\n splitButtonFlexContainer: [\n getFocusStyle(theme),\n {\n display: 'flex',\n height: CONTEXTUAL_MENU_ITEM_HEIGHT,\n flexWrap: 'nowrap',\n justifyContent: 'center',\n alignItems: 'flex-start',\n },\n ],\n };\n\n return concatStyleSets(menuItemStyles);\n },\n);\n","import { getDividerClassNames } from '../Divider/VerticalDivider.classNames';\nimport { getMenuItemStyles } from './ContextualMenu.cnstyles';\nimport {\n mergeStyleSets,\n getGlobalClassNames,\n getScreenSelector,\n ScreenWidthMaxMedium,\n hiddenContentStyle,\n} from '../../Styling';\nimport { memoizeFunction, IsFocusVisibleClassName } from '../../Utilities';\nimport type { ITheme } from '../../Styling';\nimport type { IVerticalDividerClassNames } from '../Divider/VerticalDivider.types';\nimport type { IContextualMenuItemStyles, IContextualMenuItemStyleProps } from './ContextualMenuItem.types';\nimport type { IContextualMenuSubComponentStyles } from './ContextualMenu.types';\n\n/**\n * @deprecated Deprecated in favor of mergeStyles API.\n */\nexport interface IContextualMenuClassNames {\n container?: string;\n root?: string;\n list?: string;\n header?: string;\n title?: string;\n subComponentStyles?: IContextualMenuSubComponentStyles;\n}\n\n/**\n * @deprecated Deprecated in favor of mergeStyles API.\n */\nexport interface IMenuItemClassNames {\n item?: string;\n divider?: string;\n root?: string;\n linkContent?: string;\n icon?: string;\n checkmarkIcon?: string;\n subMenuIcon?: string;\n label?: string;\n secondaryText?: string;\n splitContainer?: string;\n splitPrimary?: string;\n splitMenu?: string;\n linkContentMenu?: string;\n screenReaderText?: string;\n}\n\nconst CONTEXTUAL_SPLIT_MENU_MINWIDTH = '28px';\n\nconst MediumScreenSelector = getScreenSelector(0, ScreenWidthMaxMedium);\n\nexport const getSplitButtonVerticalDividerClassNames = memoizeFunction(\n /* eslint-disable deprecation/deprecation */\n (theme: ITheme): IVerticalDividerClassNames => {\n return mergeStyleSets(getDividerClassNames(theme), {\n /* eslint-enable deprecation/deprecation */\n wrapper: {\n position: 'absolute',\n right: 28, // width of the splitMenu based on the padding plus icon fontSize\n selectors: {\n [MediumScreenSelector]: {\n right: 32, // fontSize of the icon increased from 12px to 16px\n },\n },\n },\n divider: {\n height: 16,\n width: 1,\n },\n });\n },\n);\n\nconst GlobalClassNames = {\n item: 'ms-ContextualMenu-item',\n divider: 'ms-ContextualMenu-divider',\n root: 'ms-ContextualMenu-link',\n isChecked: 'is-checked',\n isExpanded: 'is-expanded',\n isDisabled: 'is-disabled',\n linkContent: 'ms-ContextualMenu-linkContent',\n linkContentMenu: 'ms-ContextualMenu-linkContent',\n icon: 'ms-ContextualMenu-icon',\n iconColor: 'ms-ContextualMenu-iconColor',\n checkmarkIcon: 'ms-ContextualMenu-checkmarkIcon',\n subMenuIcon: 'ms-ContextualMenu-submenuIcon',\n label: 'ms-ContextualMenu-itemText',\n secondaryText: 'ms-ContextualMenu-secondaryText',\n splitMenu: 'ms-ContextualMenu-splitMenu',\n screenReaderText: 'ms-ContextualMenu-screenReaderText',\n};\n\n/**\n * @deprecated Will be removed in \\>= 7.0.\n * This is a package-internal method that has been depended on.\n * It is being kept in this form for backwards compatibility.\n * @internal\n */\n// TODO: Audit perf. impact of and potentially remove memoizeFunction.\n// https://github.com/microsoft/fluentui/issues/5534\nexport const getItemClassNames = memoizeFunction(\n (\n theme: ITheme,\n disabled: boolean,\n expanded: boolean,\n checked: boolean,\n isAnchorLink: boolean,\n knownIcon: boolean,\n itemClassName?: string,\n dividerClassName?: string,\n iconClassName?: string,\n subMenuClassName?: string,\n primaryDisabled?: boolean,\n className?: string,\n ): IContextualMenuItemStyles => {\n const styles = getMenuItemStyles(theme);\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n return mergeStyleSets({\n item: [classNames.item, styles.item, itemClassName],\n divider: [classNames.divider, styles.divider, dividerClassName],\n root: [\n classNames.root,\n styles.root,\n checked && [classNames.isChecked, styles.rootChecked],\n isAnchorLink && styles.anchorLink,\n expanded && [classNames.isExpanded, styles.rootExpanded],\n disabled && [classNames.isDisabled, styles.rootDisabled],\n !disabled &&\n !expanded && [\n {\n selectors: {\n ':hover': styles.rootHovered,\n ':active': styles.rootPressed,\n [`.${IsFocusVisibleClassName} &:focus, .${IsFocusVisibleClassName} &:focus:hover`]: styles.rootFocused,\n [`.${IsFocusVisibleClassName} &:hover`]: { background: 'inherit;' },\n },\n },\n ],\n className,\n ],\n splitPrimary: [\n styles.root,\n {\n width: `calc(100% - ${CONTEXTUAL_SPLIT_MENU_MINWIDTH})`,\n },\n checked && ['is-checked', styles.rootChecked],\n (disabled || primaryDisabled) && ['is-disabled', styles.rootDisabled],\n !(disabled || primaryDisabled) &&\n !checked && [\n {\n selectors: {\n ':hover': styles.rootHovered,\n // when hovering over the splitPrimary also affect the splitMenu\n [`:hover ~ .${classNames.splitMenu}`]: styles.rootHovered,\n ':active': styles.rootPressed,\n [`.${IsFocusVisibleClassName} &:focus, .${IsFocusVisibleClassName} &:focus:hover`]: styles.rootFocused,\n [`.${IsFocusVisibleClassName} &:hover`]: { background: 'inherit;' },\n },\n },\n ],\n ],\n splitMenu: [\n classNames.splitMenu,\n styles.root,\n {\n flexBasis: '0',\n padding: '0 8px',\n minWidth: CONTEXTUAL_SPLIT_MENU_MINWIDTH,\n },\n expanded && ['is-expanded', styles.rootExpanded],\n disabled && ['is-disabled', styles.rootDisabled],\n !disabled &&\n !expanded && [\n {\n selectors: {\n ':hover': styles.rootHovered,\n ':active': styles.rootPressed,\n [`.${IsFocusVisibleClassName} &:focus, .${IsFocusVisibleClassName} &:focus:hover`]: styles.rootFocused,\n [`.${IsFocusVisibleClassName} &:hover`]: { background: 'inherit;' },\n },\n },\n ],\n ],\n anchorLink: styles.anchorLink,\n linkContent: [classNames.linkContent, styles.linkContent],\n linkContentMenu: [\n classNames.linkContentMenu,\n styles.linkContent,\n {\n justifyContent: 'center',\n },\n ],\n icon: [\n classNames.icon,\n knownIcon && styles.iconColor,\n styles.icon,\n iconClassName,\n disabled && [classNames.isDisabled, styles.iconDisabled],\n ],\n iconColor: styles.iconColor,\n checkmarkIcon: [classNames.checkmarkIcon, knownIcon && styles.checkmarkIcon, styles.icon, iconClassName],\n subMenuIcon: [\n classNames.subMenuIcon,\n styles.subMenuIcon,\n subMenuClassName,\n expanded && { color: theme.palette.neutralPrimary },\n disabled && [styles.iconDisabled],\n ],\n label: [classNames.label, styles.label],\n secondaryText: [classNames.secondaryText, styles.secondaryText],\n splitContainer: [\n styles.splitButtonFlexContainer,\n !disabled &&\n !checked && [\n {\n selectors: {\n [`.${IsFocusVisibleClassName} &:focus, .${IsFocusVisibleClassName} &:focus:hover`]: styles.rootFocused,\n },\n },\n ],\n ],\n screenReaderText: [\n classNames.screenReaderText,\n styles.screenReaderText,\n hiddenContentStyle,\n { visibility: 'hidden' },\n ],\n });\n },\n);\n\n/**\n * Wrapper function for generating ContextualMenuItem classNames which adheres to\n * the getStyles API, but invokes memoized className generator function with\n * primitive values.\n *\n * @param props the ContextualMenuItem style props used to generate its styles.\n */\nexport const getItemStyles = (props: IContextualMenuItemStyleProps): IContextualMenuItemStyles => {\n const {\n theme,\n disabled,\n expanded,\n checked,\n isAnchorLink,\n knownIcon,\n itemClassName,\n dividerClassName,\n iconClassName,\n subMenuClassName,\n primaryDisabled,\n className,\n } = props;\n\n // eslint-disable-next-line deprecation/deprecation\n return getItemClassNames(\n theme,\n disabled,\n expanded,\n checked,\n isAnchorLink,\n knownIcon,\n itemClassName,\n dividerClassName,\n iconClassName,\n subMenuClassName,\n primaryDisabled,\n className,\n );\n};\n","import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport { ContextualMenuItemBase } from './ContextualMenuItem.base';\nimport { getItemStyles } from './ContextualMenu.classNames';\nimport type {\n IContextualMenuItemProps,\n IContextualMenuItemStyleProps,\n IContextualMenuItemStyles,\n} from './ContextualMenuItem.types';\n\n/**\n * ContextualMenuItem description\n */\nexport const ContextualMenuItem: React.FunctionComponent = styled<\n IContextualMenuItemProps,\n IContextualMenuItemStyleProps,\n IContextualMenuItemStyles\n>(ContextualMenuItemBase, getItemStyles, undefined, { scope: 'ContextualMenuItem' });\n","import * as React from 'react';\nimport { initializeComponentRef, shallowCompare } from '../../../Utilities';\nimport type { IContextualMenuItemWrapperProps } from './ContextualMenuItemWrapper.types';\n\nexport class ContextualMenuItemWrapper extends React.Component {\n constructor(props: IContextualMenuItemWrapperProps) {\n super(props);\n initializeComponentRef(this);\n }\n\n public shouldComponentUpdate(newProps: IContextualMenuItemWrapperProps): boolean {\n return !shallowCompare(newProps, this.props);\n }\n\n protected _onItemMouseEnter = (ev: React.MouseEvent): void => {\n const { item, onItemMouseEnter } = this.props;\n if (onItemMouseEnter) {\n onItemMouseEnter(item, ev, ev.currentTarget as HTMLElement);\n }\n };\n\n protected _onItemClick = (ev: React.MouseEvent): void => {\n const { item, onItemClickBase } = this.props;\n if (onItemClickBase) {\n onItemClickBase(item, ev, ev.currentTarget as HTMLElement);\n }\n };\n\n protected _onItemMouseLeave = (ev: React.MouseEvent): void => {\n const { item, onItemMouseLeave } = this.props;\n if (onItemMouseLeave) {\n onItemMouseLeave(item, ev);\n }\n };\n\n protected _onItemKeyDown = (ev: React.KeyboardEvent): void => {\n const { item, onItemKeyDown } = this.props;\n if (onItemKeyDown) {\n onItemKeyDown(item, ev);\n }\n };\n\n protected _onItemMouseMove = (ev: React.MouseEvent): void => {\n const { item, onItemMouseMove } = this.props;\n if (onItemMouseMove) {\n onItemMouseMove(item, ev, ev.currentTarget as HTMLElement);\n }\n };\n\n protected _getSubmenuTarget = (): HTMLElement | undefined => {\n return undefined;\n };\n}\n","import { KTP_SEPARATOR, KTP_PREFIX, DATAKTP_TARGET, DATAKTP_EXECUTE_TARGET, KTP_LAYER_ID } from './KeytipConstants';\nimport { addElementAtIndex } from '../../Utilities';\n\n/**\n * Converts a whole set of KeySequences into one keytip ID, which will be the ID for the last keytip sequence specified\n * keySequences should not include the initial keytip 'start' sequence.\n *\n * @param keySequences - Full path of IKeySequences for one keytip.\n * @returns String to use for the keytip ID.\n */\nexport function sequencesToID(keySequences: string[]): string {\n return keySequences.reduce((prevValue: string, keySequence: string): string => {\n return prevValue + KTP_SEPARATOR + keySequence.split('').join(KTP_SEPARATOR);\n }, KTP_PREFIX);\n}\n\n/**\n * Merges an overflow sequence with a key sequence.\n *\n * @param keySequences - Full sequence for one keytip.\n * @param overflowKeySequences - Full overflow keytip sequence.\n * @returns Sequence that will be used by the keytip when in the overflow.\n */\nexport function mergeOverflows(keySequences: string[], overflowKeySequences: string[]): string[] {\n const overflowSequenceLen = overflowKeySequences.length;\n const overflowSequence = [...overflowKeySequences].pop();\n const newKeySequences = [...keySequences];\n return addElementAtIndex(newKeySequences, overflowSequenceLen - 1, overflowSequence!);\n}\n\n/**\n * Constructs the data-ktp-target attribute selector from a full key sequence.\n *\n * @param keySequences - Full string[] for a Keytip.\n * @returns String selector to use to query for the keytip target.\n */\nexport function ktpTargetFromSequences(keySequences: string[]): string {\n return '[' + DATAKTP_TARGET + '=\"' + sequencesToID(keySequences) + '\"]';\n}\n\n/**\n * Constructs the data-ktp-execute-target attribute selector from a keytip ID.\n *\n * @param keytipId - ID of the Keytip.\n * @returns String selector to use to query for the keytip execute target.\n */\nexport function ktpTargetFromId(keytipId: string): string {\n return '[' + DATAKTP_EXECUTE_TARGET + '=\"' + keytipId + '\"]';\n}\n\n/**\n * Gets the aria-describedby value to put on the component with this keytip.\n *\n * @param keySequences - KeySequences of the keytip.\n * @returns The aria-describedby value to set on the component with this keytip.\n */\nexport function getAriaDescribedBy(keySequences: string[]): string {\n const describedby = ' ' + KTP_LAYER_ID;\n if (!keySequences.length) {\n // Return just the layer ID\n return describedby;\n }\n\n return describedby + ' ' + sequencesToID(keySequences);\n}\n","import * as React from 'react';\nimport { useConst, useIsomorphicLayoutEffect, usePrevious } from '@fluentui/react-hooks';\nimport { mergeAriaAttributeValues } from '../../Utilities';\nimport { KeytipManager, mergeOverflows, sequencesToID, getAriaDescribedBy } from '../../utilities/keytips/index';\nimport type { KeytipDataOptions } from './KeytipData.types';\nimport type { IKeytipProps } from '../../Keytip';\n\nexport interface IKeytipData {\n ariaDescribedBy: string | undefined;\n keytipId: string | undefined;\n}\n\n/**\n * Hook that creates attributes for components which are enabled with Keytip.\n */\nexport function useKeytipData(options: KeytipDataOptions): IKeytipData {\n const uniqueId = React.useRef();\n const keytipProps: IKeytipProps | undefined = options.keytipProps\n ? {\n disabled: options.disabled,\n ...options.keytipProps,\n }\n : undefined;\n\n const keytipManager = useConst(KeytipManager.getInstance());\n const prevOptions = usePrevious(options);\n\n // useLayoutEffect used to strictly emulate didUpdate/didMount behavior\n useIsomorphicLayoutEffect(() => {\n if (\n uniqueId.current &&\n keytipProps &&\n (prevOptions?.keytipProps !== options.keytipProps || prevOptions?.disabled !== options.disabled)\n ) {\n keytipManager.update(keytipProps, uniqueId.current);\n }\n });\n\n useIsomorphicLayoutEffect(() => {\n // Register Keytip in KeytipManager\n if (keytipProps) {\n uniqueId.current = keytipManager.register(keytipProps);\n }\n\n return () => {\n // Unregister Keytip in KeytipManager\n keytipProps && keytipManager.unregister(keytipProps, uniqueId.current!);\n };\n // this is meant to run only at mount, and updates are handled separately\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n let nativeKeytipProps: IKeytipData = {\n ariaDescribedBy: undefined,\n keytipId: undefined,\n };\n\n if (keytipProps) {\n nativeKeytipProps = getKeytipData(keytipManager, keytipProps, options.ariaDescribedBy);\n }\n\n return nativeKeytipProps;\n}\n\n/**\n * Gets the aria- and data- attributes to attach to the component\n * @param keytipProps - options for Keytip\n * @param describedByPrepend - ariaDescribedBy value to prepend\n */\nfunction getKeytipData(\n keytipManager: KeytipManager,\n keytipProps: IKeytipProps,\n describedByPrepend?: string,\n): IKeytipData {\n // Add the parent overflow sequence if necessary\n const newKeytipProps = keytipManager.addParentOverflow(keytipProps);\n\n // Construct aria-describedby and data-ktp-id attributes\n const ariaDescribedBy = mergeAriaAttributeValues(\n describedByPrepend,\n getAriaDescribedBy(newKeytipProps.keySequences),\n )!;\n\n let keySequences = [...newKeytipProps.keySequences];\n if (newKeytipProps.overflowSetSequence) {\n keySequences = mergeOverflows(keySequences, newKeytipProps.overflowSetSequence);\n }\n const keytipId = sequencesToID(keySequences);\n\n return {\n ariaDescribedBy,\n keytipId,\n };\n}\n","import * as React from 'react';\nimport { DATAKTP_TARGET, DATAKTP_EXECUTE_TARGET } from '../../utilities/keytips/index';\nimport { useKeytipData } from './useKeytipData';\nimport type { IRenderComponent } from '../../Utilities';\nimport type { IKeytipDataProps } from './KeytipData.types';\n\n/**\n * A small element to help the target component correctly read out its aria-describedby for its Keytip\n * {@docCategory Keytips}\n */\nexport const KeytipData: React.FunctionComponent> = props => {\n const { children, ...keytipDataProps } = props;\n const { keytipId, ariaDescribedBy } = useKeytipData(keytipDataProps);\n\n return children({\n [DATAKTP_TARGET]: keytipId,\n [DATAKTP_EXECUTE_TARGET]: keytipId,\n 'aria-describedby': ariaDescribedBy,\n });\n};\n","import * as React from 'react';\nimport { anchorProperties, getNativeProps, memoizeFunction, getId, mergeAriaAttributeValues } from '../../../Utilities';\nimport { ContextualMenuItemWrapper } from './ContextualMenuItemWrapper';\nimport { KeytipData } from '../../../KeytipData';\nimport { isItemDisabled, hasSubmenu } from '../../../utilities/contextualMenu/index';\nimport { ContextualMenuItem } from '../ContextualMenuItem';\nimport type { IKeytipDataProps } from '../../../KeytipData';\nimport type { IKeytipProps } from '../../../Keytip';\n\nexport class ContextualMenuAnchor extends ContextualMenuItemWrapper {\n private _anchor = React.createRef();\n private _ariaDescriptionId: string;\n\n private _getMemoizedMenuButtonKeytipProps = memoizeFunction((keytipProps: IKeytipProps) => {\n return {\n ...keytipProps,\n hasMenu: true,\n };\n });\n\n public render() {\n const {\n item,\n classNames,\n index,\n focusableElementIndex,\n totalItemCount,\n hasCheckmarks,\n hasIcons,\n contextualMenuItemAs: ChildrenRenderer = ContextualMenuItem,\n expandedMenuItemKey,\n onItemClick,\n openSubMenu,\n dismissSubMenu,\n dismissMenu,\n } = this.props;\n\n let anchorRel = item.rel;\n if (item.target && item.target.toLowerCase() === '_blank') {\n anchorRel = anchorRel ? anchorRel : 'nofollow noopener noreferrer'; // Safe default to prevent tabjacking\n }\n\n const itemHasSubmenu = hasSubmenu(item);\n const nativeProps = getNativeProps>(item, anchorProperties);\n const disabled = isItemDisabled(item);\n const { itemProps, ariaDescription } = item;\n\n let { keytipProps } = item;\n if (keytipProps && itemHasSubmenu) {\n keytipProps = this._getMemoizedMenuButtonKeytipProps(keytipProps);\n }\n\n // Check for ariaDescription to set the _ariaDescriptionId and render a hidden span with\n // the description in it to be added to ariaDescribedBy\n if (ariaDescription) {\n this._ariaDescriptionId = getId();\n }\n const ariaDescribedByIds = mergeAriaAttributeValues(\n item.ariaDescribedBy,\n ariaDescription ? this._ariaDescriptionId : undefined,\n nativeProps['aria-describedby'],\n );\n\n const additionalItemProperties = {\n 'aria-describedby': ariaDescribedByIds,\n };\n\n return (\n
\n );\n }\n\n protected _getSubmenuTarget = (): HTMLElement | undefined => {\n return this._anchor.current ? this._anchor.current : undefined;\n };\n\n protected _onItemClick = (ev: React.MouseEvent): void => {\n const { item, onItemClick } = this.props;\n if (onItemClick) {\n onItemClick(item, ev);\n }\n };\n\n protected _renderAriaDescription = (ariaDescription?: string, className?: string) => {\n // If ariaDescription is given, descriptionId will be assigned to ariaDescriptionSpan\n return ariaDescription ? (\n \n {ariaDescription}\n \n ) : null;\n };\n}\n","import * as React from 'react';\nimport { classNamesFunction } from '../../Utilities';\nimport type {\n IVerticalDividerProps,\n IVerticalDividerPropsStyles,\n IVerticalDividerStyles,\n} from './VerticalDivider.types';\n\nconst getClassNames = classNamesFunction();\n\nexport const VerticalDividerBase: React.FunctionComponent = React.forwardRef<\n HTMLDivElement,\n IVerticalDividerProps\n>((props, ref) => {\n // eslint-disable-next-line deprecation/deprecation\n const { styles, theme, getClassNames: deprecatedGetClassNames, className } = props;\n const classNames = getClassNames(styles, { theme: theme, getClassNames: deprecatedGetClassNames, className });\n return (\n \n \n \n );\n});\nVerticalDividerBase.displayName = 'VerticalDividerBase';\n","import * as React from 'react';\nimport { getStyles } from './VerticalDivider.styles';\nimport { VerticalDividerBase } from './VerticalDivider.base';\nimport { styled } from '../../Utilities';\nimport type {\n IVerticalDividerProps,\n IVerticalDividerStyles,\n IVerticalDividerPropsStyles,\n} from './VerticalDivider.types';\n\nexport const VerticalDivider: React.FunctionComponent = styled<\n IVerticalDividerProps,\n IVerticalDividerPropsStyles,\n IVerticalDividerStyles\n>(VerticalDividerBase, getStyles, undefined, {\n scope: 'VerticalDivider',\n});\n","import type { IVerticalDividerPropsStyles, IVerticalDividerStyles } from './VerticalDivider.types';\nimport type { IStyleFunction } from '../../Utilities';\n\nexport const getStyles: IStyleFunction = (\n props: IVerticalDividerPropsStyles,\n): IVerticalDividerStyles => {\n // eslint-disable-next-line deprecation/deprecation\n const { theme, getClassNames, className } = props;\n\n if (!theme) {\n throw new Error('Theme is undefined or null.');\n }\n\n if (getClassNames) {\n const names = getClassNames(theme);\n return {\n wrapper: [names.wrapper],\n divider: [names.divider],\n };\n }\n\n return {\n wrapper: [\n {\n display: 'inline-flex',\n height: '100%',\n alignItems: 'center',\n },\n className,\n ],\n divider: [\n {\n width: 1,\n height: '100%',\n backgroundColor: theme.palette.neutralTertiaryAlt,\n },\n ],\n };\n};\n","import * as React from 'react';\nimport {\n buttonProperties,\n getNativeProps,\n KeyCodes,\n mergeAriaAttributeValues,\n memoizeFunction,\n Async,\n EventGroup,\n getId,\n} from '../../../Utilities';\nimport { ContextualMenuItem } from '../ContextualMenuItem';\nimport { getSplitButtonVerticalDividerClassNames } from '../ContextualMenu.classNames';\nimport { KeytipData } from '../../../KeytipData';\nimport { isItemDisabled, hasSubmenu, getMenuItemAriaRole } from '../../../utilities/contextualMenu/index';\nimport { VerticalDivider } from '../../../Divider';\nimport { ContextualMenuItemWrapper } from './ContextualMenuItemWrapper';\nimport type { IContextualMenuItem } from '../ContextualMenu.types';\nimport type { IMenuItemClassNames } from '../ContextualMenu.classNames';\nimport type { IKeytipProps } from '../../../Keytip';\nimport type { IContextualMenuItemWrapperProps } from './ContextualMenuItemWrapper.types';\n\nexport interface IContextualMenuSplitButtonState {}\n\nconst TouchIdleDelay = 500; /* ms */\n\nexport class ContextualMenuSplitButton extends ContextualMenuItemWrapper {\n private _splitButton: HTMLDivElement;\n private _lastTouchTimeoutId: number | undefined;\n private _processingTouch: boolean;\n private _ariaDescriptionId: string;\n\n private _async: Async;\n private _events: EventGroup;\n\n private _getMemoizedMenuButtonKeytipProps = memoizeFunction((keytipProps: IKeytipProps) => {\n return {\n ...keytipProps,\n hasMenu: true,\n };\n });\n\n constructor(props: IContextualMenuItemWrapperProps) {\n super(props);\n\n this._async = new Async(this);\n this._events = new EventGroup(this);\n }\n\n public componentDidMount() {\n if (this._splitButton && 'onpointerdown' in this._splitButton) {\n this._events.on(this._splitButton, 'pointerdown', this._onPointerDown, true);\n }\n }\n\n public componentWillUnmount(): void {\n this._async.dispose();\n this._events.dispose();\n }\n\n public render(): JSX.Element | null {\n const {\n item,\n classNames,\n index,\n focusableElementIndex,\n totalItemCount,\n hasCheckmarks,\n hasIcons,\n onItemMouseLeave,\n expandedMenuItemKey,\n } = this.props;\n\n const itemHasSubmenu = hasSubmenu(item);\n\n let { keytipProps } = item;\n if (keytipProps) {\n keytipProps = this._getMemoizedMenuButtonKeytipProps(keytipProps);\n }\n\n // Check for ariaDescription to set the _ariaDescriptionId and render a hidden span with\n // the description in it to be added to ariaDescribedBy\n const { ariaDescription } = item;\n if (ariaDescription) {\n this._ariaDescriptionId = getId();\n }\n\n return (\n \n {(keytipAttributes: any): JSX.Element => (\n (this._splitButton = splitButton)}\n role={getMenuItemAriaRole(item)}\n aria-label={item.ariaLabel}\n className={classNames.splitContainer}\n aria-disabled={isItemDisabled(item)}\n aria-expanded={itemHasSubmenu ? item.key === expandedMenuItemKey : undefined}\n aria-haspopup={true}\n aria-describedby={mergeAriaAttributeValues(\n item.ariaDescribedBy,\n ariaDescription ? this._ariaDescriptionId : undefined,\n keytipAttributes['aria-describedby'],\n )}\n aria-checked={item.isChecked || item.checked}\n aria-posinset={focusableElementIndex + 1}\n aria-setsize={totalItemCount}\n onMouseEnter={this._onItemMouseEnterPrimary}\n onMouseLeave={\n onItemMouseLeave ? onItemMouseLeave.bind(this, { ...item, subMenuProps: null, items: null }) : undefined\n }\n onMouseMove={this._onItemMouseMovePrimary}\n onKeyDown={this._onItemKeyDown}\n onClick={this._executeItemClick}\n onTouchStart={this._onTouchStart}\n tabIndex={0}\n data-is-focusable={true}\n aria-roledescription={item['aria-roledescription']}\n >\n {this._renderSplitPrimaryButton(item, classNames, index, hasCheckmarks!, hasIcons!)}\n {this._renderSplitDivider(item)}\n {this._renderSplitIconButton(item, classNames, index, keytipAttributes)}\n {this._renderAriaDescription(ariaDescription, classNames.screenReaderText)}\n
\n )}\n \n );\n }\n\n protected _onItemKeyDown = (ev: React.KeyboardEvent): void => {\n const { item, onItemKeyDown } = this.props;\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter) {\n this._executeItemClick(ev);\n ev.preventDefault();\n ev.stopPropagation();\n } else if (onItemKeyDown) {\n onItemKeyDown(item, ev);\n }\n };\n\n protected _getSubmenuTarget = (): HTMLElement | undefined => {\n return this._splitButton;\n };\n\n protected _renderAriaDescription = (ariaDescription?: string, className?: string) => {\n // If ariaDescription is given, descriptionId will be assigned to ariaDescriptionSpan\n return ariaDescription ? (\n \n {ariaDescription}\n \n ) : null;\n };\n\n private _renderSplitPrimaryButton(\n item: IContextualMenuItem,\n // eslint-disable-next-line deprecation/deprecation\n classNames: IMenuItemClassNames,\n index: number,\n hasCheckmarks: boolean,\n hasIcons: boolean,\n ) {\n const { contextualMenuItemAs: ChildrenRenderer = ContextualMenuItem, onItemClick } = this.props;\n\n const itemProps: IContextualMenuItem = {\n key: item.key,\n disabled: isItemDisabled(item) || item.primaryDisabled,\n /* eslint-disable deprecation/deprecation */\n name: item.name,\n text: item.text || item.name,\n secondaryText: item.secondaryText,\n /* eslint-enable deprecation/deprecation */\n className: classNames.splitPrimary,\n canCheck: item.canCheck,\n isChecked: item.isChecked,\n checked: item.checked,\n iconProps: item.iconProps,\n onRenderIcon: item.onRenderIcon,\n data: item.data,\n 'data-is-focusable': false,\n };\n\n const { itemProps: itemComponentProps } = item;\n\n return (\n \n );\n }\n\n private _renderSplitDivider(item: IContextualMenuItem) {\n const getDividerClassNames =\n item.getSplitButtonVerticalDividerClassNames || getSplitButtonVerticalDividerClassNames;\n return ;\n }\n\n private _renderSplitIconButton(\n item: IContextualMenuItem,\n classNames: IMenuItemClassNames, // eslint-disable-line deprecation/deprecation\n index: number,\n keytipAttributes: any,\n ) {\n const {\n contextualMenuItemAs: ChildrenRenderer = ContextualMenuItem,\n onItemMouseLeave,\n onItemMouseDown,\n openSubMenu,\n dismissSubMenu,\n dismissMenu,\n } = this.props;\n\n const itemProps: IContextualMenuItem = {\n onClick: this._onIconItemClick,\n disabled: isItemDisabled(item),\n className: classNames.splitMenu,\n subMenuProps: item.subMenuProps,\n submenuIconProps: item.submenuIconProps,\n split: true,\n key: item.key,\n };\n\n const buttonProps = {\n ...getNativeProps>(itemProps, buttonProperties),\n ...{\n onMouseEnter: this._onItemMouseEnterIcon,\n onMouseLeave: onItemMouseLeave ? onItemMouseLeave.bind(this, item) : undefined,\n onMouseDown: (ev: React.MouseEvent) =>\n onItemMouseDown ? onItemMouseDown(item, ev) : undefined,\n onMouseMove: this._onItemMouseMoveIcon,\n 'data-is-focusable': false,\n 'data-ktp-execute-target': keytipAttributes['data-ktp-execute-target'],\n 'aria-hidden': true,\n },\n };\n\n const { itemProps: itemComponentProps } = item;\n\n return (\n \n );\n }\n\n private _onItemMouseEnterPrimary = (ev: React.MouseEvent): void => {\n const { item, onItemMouseEnter } = this.props;\n if (onItemMouseEnter) {\n onItemMouseEnter({ ...item, subMenuProps: undefined, items: undefined }, ev, this._splitButton);\n }\n };\n\n private _onItemMouseEnterIcon = (ev: React.MouseEvent): void => {\n const { item, onItemMouseEnter } = this.props;\n if (onItemMouseEnter) {\n onItemMouseEnter(item, ev, this._splitButton);\n }\n };\n\n private _onItemMouseMovePrimary = (ev: React.MouseEvent): void => {\n const { item, onItemMouseMove } = this.props;\n if (onItemMouseMove) {\n onItemMouseMove({ ...item, subMenuProps: undefined, items: undefined }, ev, this._splitButton);\n }\n };\n\n private _onItemMouseMoveIcon = (ev: React.MouseEvent): void => {\n const { item, onItemMouseMove } = this.props;\n if (onItemMouseMove) {\n onItemMouseMove(item, ev, this._splitButton);\n }\n };\n\n private _onIconItemClick = (ev: React.MouseEvent): void => {\n const { item, onItemClickBase } = this.props;\n if (onItemClickBase) {\n onItemClickBase(item, ev, (this._splitButton ? this._splitButton : ev.currentTarget) as HTMLElement);\n }\n };\n\n private _executeItemClick = (ev: React.MouseEvent | React.KeyboardEvent): void => {\n const { item, executeItemClick, onItemClick } = this.props;\n\n if (item.disabled || item.isDisabled) {\n return;\n }\n\n if (this._processingTouch && onItemClick) {\n return onItemClick(item, ev);\n }\n\n if (executeItemClick) {\n executeItemClick(item, ev);\n }\n };\n\n private _onTouchStart = (ev: React.TouchEvent): void => {\n if (this._splitButton && !('onpointerdown' in this._splitButton)) {\n this._handleTouchAndPointerEvent(ev);\n }\n };\n\n private _onPointerDown = (ev: PointerEvent): void => {\n if (ev.pointerType === 'touch') {\n this._handleTouchAndPointerEvent(ev);\n ev.preventDefault();\n ev.stopImmediatePropagation();\n }\n };\n\n private _handleTouchAndPointerEvent(ev: React.TouchEvent | PointerEvent) {\n const { onTap } = this.props;\n\n if (onTap) {\n onTap(ev);\n }\n // If we already have an existing timeout from a previous touch/pointer event\n // cancel that timeout so we can set a new one.\n if (this._lastTouchTimeoutId) {\n this._async.clearTimeout(this._lastTouchTimeoutId);\n this._lastTouchTimeoutId = undefined;\n }\n this._processingTouch = true;\n this._lastTouchTimeoutId = this._async.setTimeout(() => {\n this._processingTouch = false;\n this._lastTouchTimeoutId = undefined;\n }, TouchIdleDelay);\n }\n}\n","import * as React from 'react';\nimport { buttonProperties, getNativeProps, memoizeFunction, getId, mergeAriaAttributeValues } from '../../../Utilities';\nimport { ContextualMenuItemWrapper } from './ContextualMenuItemWrapper';\nimport { KeytipData } from '../../../KeytipData';\nimport { getIsChecked, isItemDisabled, hasSubmenu, getMenuItemAriaRole } from '../../../utilities/contextualMenu/index';\nimport { ContextualMenuItem } from '../ContextualMenuItem';\nimport type { IKeytipDataProps } from '../../../KeytipData';\nimport type { IKeytipProps } from '../../../Keytip';\n\nexport class ContextualMenuButton extends ContextualMenuItemWrapper {\n private _btn = React.createRef();\n private _ariaDescriptionId: string;\n\n private _getMemoizedMenuButtonKeytipProps = memoizeFunction((keytipProps: IKeytipProps) => {\n return {\n ...keytipProps,\n hasMenu: true,\n };\n });\n\n public render() {\n const {\n item,\n classNames,\n index,\n focusableElementIndex,\n totalItemCount,\n hasCheckmarks,\n hasIcons,\n contextualMenuItemAs: ChildrenRenderer = ContextualMenuItem,\n expandedMenuItemKey,\n onItemMouseDown,\n onItemClick,\n openSubMenu,\n dismissSubMenu,\n dismissMenu,\n } = this.props;\n\n const isChecked: boolean | null | undefined = getIsChecked(item);\n const canCheck: boolean = isChecked !== null;\n const defaultRole = getMenuItemAriaRole(item);\n const itemHasSubmenu = hasSubmenu(item);\n const { itemProps, ariaLabel, ariaDescription } = item;\n\n const buttonNativeProperties = getNativeProps>(\n item,\n buttonProperties,\n );\n // Do not add the disabled attribute to the button so that it is focusable\n delete buttonNativeProperties.disabled;\n\n const itemRole = item.role || defaultRole;\n\n // Check for ariaDescription to set the _ariaDescriptionId and render a hidden span with\n // the description in it to be added to ariaDescribedBy\n if (ariaDescription) {\n this._ariaDescriptionId = getId();\n }\n const ariaDescribedByIds = mergeAriaAttributeValues(\n item.ariaDescribedBy,\n ariaDescription ? this._ariaDescriptionId : undefined,\n buttonNativeProperties['aria-describedby'],\n );\n\n const itemButtonProperties = {\n className: classNames.root,\n onClick: this._onItemClick,\n onKeyDown: itemHasSubmenu ? this._onItemKeyDown : undefined,\n onMouseEnter: this._onItemMouseEnter,\n onMouseLeave: this._onItemMouseLeave,\n onMouseDown: (ev: React.MouseEvent) =>\n onItemMouseDown ? onItemMouseDown(item, ev) : undefined,\n onMouseMove: this._onItemMouseMove,\n href: item.href,\n title: item.title,\n 'aria-label': ariaLabel,\n 'aria-describedby': ariaDescribedByIds,\n 'aria-haspopup': itemHasSubmenu || undefined,\n 'aria-expanded': itemHasSubmenu ? item.key === expandedMenuItemKey : undefined,\n 'aria-posinset': focusableElementIndex + 1,\n 'aria-setsize': totalItemCount,\n 'aria-disabled': isItemDisabled(item),\n 'aria-checked':\n (itemRole === 'menuitemcheckbox' || itemRole === 'menuitemradio') && canCheck ? !!isChecked : undefined,\n 'aria-selected': itemRole === 'menuitem' && canCheck ? !!isChecked : undefined,\n role: itemRole,\n // eslint-disable-next-line deprecation/deprecation\n style: item.style,\n };\n\n let { keytipProps } = item;\n if (keytipProps && itemHasSubmenu) {\n keytipProps = this._getMemoizedMenuButtonKeytipProps(keytipProps);\n }\n\n return (\n \n {(keytipAttributes: IKeytipDataProps): JSX.Element => (\n \n )}\n \n );\n }\n\n protected _renderAriaDescription = (ariaDescription?: string, className?: string) => {\n // If ariaDescription is given, descriptionId will be assigned to ariaDescriptionSpan\n return ariaDescription ? (\n \n {ariaDescription}\n \n ) : null;\n };\n\n protected _getSubmenuTarget = (): HTMLElement | undefined => {\n return this._btn.current ? this._btn.current : undefined;\n };\n}\n","import * as React from 'react';\nimport type { MinimalMenuProps } from './types';\n\nexport const MenuContext = React.createContext({});\n\nexport const useMenuContext = () => {\n return React.useContext(MenuContext);\n};\n","import * as React from 'react';\nimport { ContextualMenuItemType } from './ContextualMenu.types';\nimport { DirectionalHint } from '../../common/DirectionalHint';\nimport { FocusZone, FocusZoneDirection, FocusZoneTabbableElements } from '../../FocusZone';\nimport {\n divProperties,\n getNativeProps,\n shallowCompare,\n Async,\n assign,\n classNamesFunction,\n css,\n getFirstFocusable,\n getLastFocusable,\n getRTL,\n KeyCodes,\n shouldWrapFocus,\n isIOS,\n isMac,\n memoizeFunction,\n getPropsWithDefaults,\n getDocument,\n} from '../../Utilities';\nimport { hasSubmenu, getIsChecked, isItemDisabled } from '../../utilities/contextualMenu/index';\nimport { Callout } from '../../Callout';\nimport { ContextualMenuItem } from './ContextualMenuItem';\nimport {\n ContextualMenuSplitButton,\n ContextualMenuButton,\n ContextualMenuAnchor,\n} from './ContextualMenuItemWrapper/index';\nimport { concatStyleSetsWithProps } from '../../Styling';\nimport { getItemStyles } from './ContextualMenu.classNames';\nimport {\n useTarget,\n usePrevious,\n useAsync,\n useWarnings,\n useId,\n Target,\n useIsomorphicLayoutEffect,\n} from '@fluentui/react-hooks';\nimport { useResponsiveMode, ResponsiveMode } from '../../ResponsiveMode';\nimport { MenuContext } from '../../utilities/MenuContext/index';\nimport type {\n IContextualMenuProps,\n IContextualMenuItem,\n IContextualMenuListProps,\n IContextualMenuStyleProps,\n IContextualMenuStyles,\n IContextualMenuItemRenderProps,\n} from './ContextualMenu.types';\nimport type { IFocusZoneProps } from '../../FocusZone';\nimport type { IMenuItemClassNames, IContextualMenuClassNames } from './ContextualMenu.classNames';\nimport type { IRenderFunction, IStyleFunctionOrObject } from '../../Utilities';\nimport type { ICalloutContentStyleProps, ICalloutContentStyles } from '../../Callout';\nimport type { IProcessedStyleSet } from '../../Styling';\nimport type { IContextualMenuItemStyleProps, IContextualMenuItemStyles } from './ContextualMenuItem.types';\nimport type { IPopupRestoreFocusParams } from '../../Popup';\n\nconst getClassNames = classNamesFunction();\nconst getContextualMenuItemClassNames = classNamesFunction();\n\n// The default ContextualMenu properties have no items and beak, the default submenu direction is right and top.\nconst DEFAULT_PROPS: Partial = {\n items: [],\n shouldFocusOnMount: true,\n gapSpace: 0,\n directionalHint: DirectionalHint.bottomAutoEdge,\n beakWidth: 16,\n};\n\nexport function getSubmenuItems(\n item: IContextualMenuItem,\n options?: {\n target?: Target;\n },\n): IContextualMenuItem[] | undefined {\n const target = options?.target;\n\n // eslint-disable-next-line deprecation/deprecation\n const items = item.subMenuProps ? item.subMenuProps.items : item.items;\n\n if (items) {\n const overrideItems: typeof items = [];\n\n for (const subItem of items) {\n if (subItem.preferMenuTargetAsEventTarget) {\n // For sub-items which need an overridden target, intercept `onClick`\n const { onClick, ...contextItem } = subItem;\n\n overrideItems.push({\n ...contextItem,\n onClick: getOnClickWithOverrideTarget(onClick, target),\n });\n } else {\n overrideItems.push(subItem);\n }\n }\n\n return overrideItems;\n }\n}\n\n/**\n * Returns true if a list of menu items can contain a checkbox\n */\nexport function canAnyMenuItemsCheck(items: IContextualMenuItem[]): boolean {\n return items.some(item => {\n if (item.canCheck) {\n return true;\n }\n\n // If the item is a section, check if any of the items in the section can check.\n if (item.sectionProps && item.sectionProps.items.some(submenuItem => submenuItem.canCheck === true)) {\n return true;\n }\n\n return false;\n });\n}\n\nconst NavigationIdleDelay = 250; /* ms */\n\nconst COMPONENT_NAME = 'ContextualMenu';\n\nconst _getMenuItemStylesFunction = memoizeFunction(\n (\n ...styles: (IStyleFunctionOrObject | undefined)[]\n ): IStyleFunctionOrObject => {\n return (styleProps: IContextualMenuItemStyleProps) =>\n concatStyleSetsWithProps(styleProps, getItemStyles, ...styles);\n },\n);\n\n//#region Custom hooks\nfunction useVisibility(props: IContextualMenuProps, targetWindow: Window | undefined) {\n const { hidden = false, onMenuDismissed, onMenuOpened } = props;\n const previousHidden = usePrevious(hidden);\n\n const onMenuOpenedRef = React.useRef(onMenuOpened);\n const onMenuClosedRef = React.useRef(onMenuDismissed);\n const propsRef = React.useRef(props);\n\n onMenuOpenedRef.current = onMenuOpened;\n onMenuClosedRef.current = onMenuDismissed;\n propsRef.current = props;\n\n React.useEffect(() => {\n // Don't issue dismissed callbacks on initial mount\n if (hidden && previousHidden === false) {\n onMenuClosedRef.current?.(propsRef.current);\n } else if (!hidden && previousHidden !== false) {\n onMenuOpenedRef.current?.(propsRef.current);\n }\n }, [hidden, previousHidden]);\n\n // Issue onDismissedCallback on unmount\n React.useEffect(() => () => onMenuClosedRef.current?.(propsRef.current), []);\n}\n\nfunction useSubMenuState(\n { hidden, items, theme, className, id, target: menuTarget }: IContextualMenuProps,\n dismiss: () => void,\n) {\n const [expandedMenuItemKey, setExpandedMenuItemKey] = React.useState();\n const [submenuTarget, setSubmenuTarget] = React.useState();\n /** True if the menu was expanded by mouse click OR hover (as opposed to by keyboard) */\n const [shouldFocusOnContainer, setShouldFocusOnContainer] = React.useState();\n const subMenuId = useId(COMPONENT_NAME, id);\n\n const closeSubMenu = React.useCallback(() => {\n setShouldFocusOnContainer(undefined);\n setExpandedMenuItemKey(undefined);\n setSubmenuTarget(undefined);\n }, []);\n\n const openSubMenu = React.useCallback(\n ({ key: submenuItemKey }: IContextualMenuItem, target: HTMLElement, focusContainer?: boolean) => {\n if (expandedMenuItemKey === submenuItemKey) {\n return;\n }\n\n target.focus();\n\n setShouldFocusOnContainer(focusContainer);\n setExpandedMenuItemKey(submenuItemKey);\n setSubmenuTarget(target);\n },\n [expandedMenuItemKey],\n );\n\n React.useEffect(() => {\n if (hidden) {\n closeSubMenu();\n }\n }, [hidden, closeSubMenu]);\n\n const onSubMenuDismiss = useOnSubmenuDismiss(dismiss, closeSubMenu);\n\n const getSubmenuProps = (): IContextualMenuProps | null => {\n const item = findItemByKeyFromItems(expandedMenuItemKey!, items);\n let submenuProps: IContextualMenuProps | null = null;\n\n if (item) {\n submenuProps = {\n items: getSubmenuItems(item, { target: menuTarget })!,\n target: submenuTarget,\n onDismiss: onSubMenuDismiss,\n isSubMenu: true,\n id: subMenuId,\n shouldFocusOnMount: true,\n shouldFocusOnContainer,\n directionalHint: getRTL(theme) ? DirectionalHint.leftTopEdge : DirectionalHint.rightTopEdge,\n className,\n gapSpace: 0,\n isBeakVisible: false,\n };\n\n if (item.subMenuProps) {\n assign(submenuProps, item.subMenuProps);\n }\n\n if (item.preferMenuTargetAsEventTarget) {\n const { onItemClick } = item;\n\n submenuProps.onItemClick = getOnClickWithOverrideTarget(onItemClick, menuTarget);\n }\n }\n return submenuProps;\n };\n\n return [expandedMenuItemKey, openSubMenu, getSubmenuProps, onSubMenuDismiss] as const;\n}\n\nfunction useShouldUpdateFocusOnMouseMove({ delayUpdateFocusOnHover, hidden }: IContextualMenuProps) {\n const shouldUpdateFocusOnMouseEvent = React.useRef(!delayUpdateFocusOnHover);\n const gotMouseMove = React.useRef(false);\n\n React.useEffect(() => {\n shouldUpdateFocusOnMouseEvent.current = !delayUpdateFocusOnHover;\n gotMouseMove.current = hidden ? false : !delayUpdateFocusOnHover && gotMouseMove.current;\n }, [delayUpdateFocusOnHover, hidden]);\n\n const onMenuFocusCapture = React.useCallback(() => {\n if (delayUpdateFocusOnHover) {\n shouldUpdateFocusOnMouseEvent.current = false;\n }\n }, [delayUpdateFocusOnHover]);\n\n return [shouldUpdateFocusOnMouseEvent, gotMouseMove, onMenuFocusCapture] as const;\n}\n\nfunction usePreviousActiveElement({ hidden, onRestoreFocus }: IContextualMenuProps, targetWindow: Window | undefined) {\n const previousActiveElement = React.useRef();\n\n const tryFocusPreviousActiveElement = React.useCallback(\n (options: IPopupRestoreFocusParams) => {\n if (onRestoreFocus) {\n onRestoreFocus(options);\n } else if (options?.documentContainsFocus) {\n // Make sure that the focus method actually exists\n // In some cases the object might exist but not be a real element.\n // This is primarily for IE 11 and should be removed once IE 11 is no longer in use.\n previousActiveElement.current?.focus?.();\n }\n },\n [onRestoreFocus],\n );\n\n useIsomorphicLayoutEffect(() => {\n if (!hidden) {\n previousActiveElement.current = targetWindow?.document.activeElement as HTMLElement;\n } else if (previousActiveElement.current) {\n tryFocusPreviousActiveElement({\n originalElement: previousActiveElement.current,\n containsFocus: true,\n documentContainsFocus: getDocument()?.hasFocus() || false,\n });\n\n previousActiveElement.current = undefined;\n }\n }, [hidden, targetWindow?.document.activeElement, tryFocusPreviousActiveElement]);\n\n return [tryFocusPreviousActiveElement] as const;\n}\n\nfunction useKeyHandlers(\n {\n theme,\n isSubMenu,\n focusZoneProps: { checkForNoWrap, direction: focusZoneDirection = FocusZoneDirection.vertical } = {},\n }: IContextualMenuProps,\n dismiss: (ev?: any, dismissAll?: boolean | undefined) => void | undefined,\n hostElement: React.RefObject,\n openSubMenu: (submenuItemKey: IContextualMenuItem, target: HTMLElement) => void,\n) {\n /** True if the most recent keydown event was for alt (option) or meta (command). */\n const lastKeyDownWasAltOrMeta = React.useRef();\n\n /**\n * Calls `shouldHandleKey` to determine whether the keyboard event should be handled;\n * if so, stops event propagation and dismisses menu(s).\n * @param ev - The keyboard event.\n * @param shouldHandleKey - Returns whether we should handle this keyboard event.\n * @param dismissAllMenus - If true, dismiss all menus. Otherwise, dismiss only the current menu.\n * Only does anything if `shouldHandleKey` returns true.\n * @returns Whether the event was handled.\n */\n const keyHandler = (\n ev: React.KeyboardEvent,\n shouldHandleKey: (ev: React.KeyboardEvent) => boolean,\n dismissAllMenus?: boolean,\n ): boolean => {\n let handled = false;\n\n if (shouldHandleKey(ev)) {\n dismiss(ev, dismissAllMenus);\n ev.preventDefault();\n ev.stopPropagation();\n handled = true;\n }\n\n return handled;\n };\n\n /**\n * Checks if the submenu should be closed\n */\n const shouldCloseSubMenu = (ev: React.KeyboardEvent): boolean => {\n const submenuCloseKey = getRTL(theme) ? KeyCodes.right : KeyCodes.left;\n\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which !== submenuCloseKey || !isSubMenu) {\n return false;\n }\n\n return !!(\n focusZoneDirection === FocusZoneDirection.vertical ||\n (checkForNoWrap && !shouldWrapFocus(ev.target as HTMLElement, 'data-no-horizontal-wrap'))\n );\n };\n\n const shouldHandleKeyDown = (ev: React.KeyboardEvent) => {\n return (\n // eslint-disable-next-line deprecation/deprecation\n ev.which === KeyCodes.escape ||\n shouldCloseSubMenu(ev) ||\n // eslint-disable-next-line deprecation/deprecation\n (ev.which === KeyCodes.up && (ev.altKey || ev.metaKey))\n );\n };\n\n const onKeyDown = (ev: React.KeyboardEvent): boolean => {\n // Take note if we are processing an alt (option) or meta (command) keydown.\n // See comment in shouldHandleKeyUp for reasoning.\n lastKeyDownWasAltOrMeta.current = isAltOrMeta(ev);\n\n // On Mac, pressing escape dismisses all levels of native context menus\n // eslint-disable-next-line deprecation/deprecation\n const dismissAllMenus = ev.which === KeyCodes.escape && (isMac() || isIOS());\n\n return keyHandler(ev, shouldHandleKeyDown, dismissAllMenus);\n };\n\n /**\n * We close the menu on key up only if ALL of the following are true:\n * - Most recent key down was alt or meta (command)\n * - The alt/meta key down was NOT followed by some other key (such as down/up arrow to\n * expand/collapse the menu)\n * - We're not on a Mac (or iOS)\n *\n * This is because on Windows, pressing alt moves focus to the application menu bar or similar,\n * closing any open context menus. There is not a similar behavior on Macs.\n */\n const shouldHandleKeyUp = (ev: React.KeyboardEvent) => {\n const keyPressIsAltOrMetaAlone = lastKeyDownWasAltOrMeta.current && isAltOrMeta(ev);\n lastKeyDownWasAltOrMeta.current = false;\n return !!keyPressIsAltOrMetaAlone && !(isIOS() || isMac());\n };\n\n const onKeyUp = (ev: React.KeyboardEvent): boolean => {\n return keyHandler(ev, shouldHandleKeyUp, true /* dismissAllMenus */);\n };\n\n const onMenuKeyDown = (ev: React.KeyboardEvent) => {\n // Mark as handled if onKeyDown returns true (for handling collapse cases)\n // or if we are attempting to expand a submenu\n const handled = onKeyDown(ev);\n\n if (handled || !hostElement.current) {\n return;\n }\n\n // If we have a modifier key being pressed, we do not want to move focus.\n // Otherwise, handle up and down keys.\n const hasModifier = !!(ev.altKey || ev.metaKey);\n // eslint-disable-next-line deprecation/deprecation\n const isUp = ev.which === KeyCodes.up;\n // eslint-disable-next-line deprecation/deprecation\n const isDown = ev.which === KeyCodes.down;\n if (!hasModifier && (isUp || isDown)) {\n const elementToFocus = isUp\n ? getLastFocusable(hostElement.current, hostElement.current.lastChild as HTMLElement, true)\n : getFirstFocusable(hostElement.current, hostElement.current.firstChild as HTMLElement, true);\n\n if (elementToFocus) {\n elementToFocus.focus();\n ev.preventDefault();\n ev.stopPropagation();\n }\n }\n };\n\n const onItemKeyDown = (item: any, ev: React.KeyboardEvent): void => {\n const openKey = getRTL(theme) ? KeyCodes.left : KeyCodes.right;\n\n if (\n !item.disabled &&\n // eslint-disable-next-line deprecation/deprecation\n (ev.which === openKey || ev.which === KeyCodes.enter || (ev.which === KeyCodes.down && (ev.altKey || ev.metaKey)))\n ) {\n openSubMenu(item, ev.currentTarget as HTMLElement);\n ev.preventDefault();\n }\n };\n\n return [onKeyDown, onKeyUp, onMenuKeyDown, onItemKeyDown] as const;\n}\n\nfunction useScrollHandler(asyncTracker: Async) {\n const isScrollIdle = React.useRef(true);\n const scrollIdleTimeoutId = React.useRef();\n\n /**\n * Scroll handler for the callout to make sure the mouse events\n * for updating focus are not interacting during scroll\n */\n const onScroll = (): void => {\n if (!isScrollIdle.current && scrollIdleTimeoutId.current !== undefined) {\n asyncTracker.clearTimeout(scrollIdleTimeoutId.current);\n scrollIdleTimeoutId.current = undefined;\n } else {\n isScrollIdle.current = false;\n }\n\n scrollIdleTimeoutId.current = asyncTracker.setTimeout(() => {\n isScrollIdle.current = true;\n }, NavigationIdleDelay);\n };\n\n return [onScroll, isScrollIdle] as const;\n}\n\nfunction useOnSubmenuDismiss(dismiss: (ev?: any, dismissAll?: boolean) => void, closeSubMenu: () => void) {\n const isMountedRef = React.useRef(false);\n React.useEffect(() => {\n isMountedRef.current = true;\n return () => {\n isMountedRef.current = false;\n };\n }, []);\n\n /**\n * This function is called ASYNCHRONOUSLY, and so there is a chance it is called\n * after the component is unmounted. The isMountedRef is added to prevent\n * from calling setState() after unmount. Do NOT copy this pattern in synchronous\n * code.\n */\n const onSubMenuDismiss = (ev?: any, dismissAll?: boolean): void => {\n if (dismissAll) {\n dismiss(ev, dismissAll);\n } else if (isMountedRef.current) {\n closeSubMenu();\n }\n };\n\n return onSubMenuDismiss;\n}\n\nfunction useSubmenuEnterTimer({ subMenuHoverDelay = NavigationIdleDelay }: IContextualMenuProps, asyncTracker: Async) {\n const enterTimerRef = React.useRef(undefined);\n\n const cancelSubMenuTimer = () => {\n if (enterTimerRef.current !== undefined) {\n asyncTracker.clearTimeout(enterTimerRef.current);\n enterTimerRef.current = undefined;\n }\n };\n\n const startSubmenuTimer = (onTimerExpired: () => void) => {\n enterTimerRef.current = asyncTracker.setTimeout(() => {\n onTimerExpired();\n cancelSubMenuTimer();\n }, subMenuHoverDelay);\n };\n\n return [cancelSubMenuTimer, startSubmenuTimer, enterTimerRef as React.RefObject] as const;\n}\n\nfunction useMouseHandlers(\n props: IContextualMenuProps,\n isScrollIdle: React.MutableRefObject,\n subMenuEntryTimer: React.RefObject,\n targetWindow: Window | undefined,\n shouldUpdateFocusOnMouseEvent: React.MutableRefObject,\n gotMouseMove: React.MutableRefObject,\n expandedMenuItemKey: string | undefined,\n hostElement: React.RefObject,\n startSubmenuTimer: (onTimerExpired: () => void) => void,\n cancelSubMenuTimer: () => void,\n openSubMenu: (submenuItemKey: IContextualMenuItem, target: HTMLElement, openedByMouseClick?: boolean) => void,\n onSubMenuDismiss: (ev?: any, dismissAll?: boolean) => void,\n dismiss: (ev?: any, dismissAll?: boolean) => void,\n) {\n const { target: menuTarget } = props;\n\n const onItemMouseEnterBase = (item: any, ev: React.MouseEvent, target?: HTMLElement): void => {\n if (shouldUpdateFocusOnMouseEvent.current) {\n gotMouseMove.current = true;\n }\n\n if (shouldIgnoreMouseEvent()) {\n return;\n }\n\n updateFocusOnMouseEvent(item, ev, target);\n };\n\n const onItemMouseMoveBase = (item: any, ev: React.MouseEvent, target: HTMLElement): void => {\n const targetElement = ev.currentTarget as HTMLElement;\n\n // Always do this check to make sure we record a mouseMove if needed (even if we are timed out)\n if (shouldUpdateFocusOnMouseEvent.current) {\n gotMouseMove.current = true;\n } else {\n return;\n }\n\n if (\n !isScrollIdle.current ||\n subMenuEntryTimer.current !== undefined ||\n targetElement === (targetWindow?.document.activeElement as HTMLElement)\n ) {\n return;\n }\n\n updateFocusOnMouseEvent(item, ev, target);\n };\n\n const shouldIgnoreMouseEvent = (): boolean => {\n return !isScrollIdle.current || !gotMouseMove.current;\n };\n\n const onMouseItemLeave = (item: any, ev: React.MouseEvent): void => {\n if (shouldIgnoreMouseEvent()) {\n return;\n }\n\n cancelSubMenuTimer();\n\n if (expandedMenuItemKey !== undefined) {\n return;\n }\n\n /**\n * IE11 focus() method forces parents to scroll to top of element.\n * Edge and IE expose a setActive() function for focusable divs that\n * sets the page focus but does not scroll the parent element.\n */\n if ((hostElement.current as any).setActive) {\n try {\n (hostElement.current as any).setActive();\n } catch (e) {\n /* no-op */\n }\n } else {\n hostElement.current?.focus();\n }\n };\n\n /**\n * Handles updating focus when mouseEnter or mouseMove fire.\n * As part of updating focus, This function will also update\n * the expand/collapse state accordingly.\n */\n const updateFocusOnMouseEvent = (\n item: IContextualMenuItem,\n ev: React.MouseEvent,\n target?: HTMLElement,\n ) => {\n const targetElement = target ? target : (ev.currentTarget as HTMLElement);\n\n if (item.key === expandedMenuItemKey) {\n return;\n }\n\n cancelSubMenuTimer();\n\n // If the menu is not expanded we can update focus without any delay\n if (expandedMenuItemKey === undefined) {\n targetElement.focus();\n }\n\n // Delay updating expanding/dismissing the submenu\n // and only set focus if we have not already done so\n if (hasSubmenu(item)) {\n ev.stopPropagation();\n startSubmenuTimer(() => {\n targetElement.focus();\n openSubMenu(item, targetElement, true);\n });\n } else {\n startSubmenuTimer(() => {\n onSubMenuDismiss(ev);\n targetElement.focus();\n });\n }\n };\n\n const onItemClick = (\n item: IContextualMenuItem,\n ev: React.MouseEvent | React.KeyboardEvent,\n ): void => {\n onItemClickBase(item, ev, ev.currentTarget as HTMLElement);\n };\n\n const onItemClickBase = (\n item: IContextualMenuItem,\n ev: React.MouseEvent | React.KeyboardEvent,\n target: HTMLElement,\n ): void => {\n const items = getSubmenuItems(item, { target: menuTarget });\n\n // Cancel an async menu item hover timeout action from being taken and instead\n // just trigger the click event instead.\n cancelSubMenuTimer();\n\n if (!hasSubmenu(item) && (!items || !items.length)) {\n // This is an item without a menu. Click it.\n executeItemClick(item, ev);\n } else {\n if (item.key !== expandedMenuItemKey) {\n // This has a collapsed sub menu. Expand it.\n\n // focus on the container by default when the menu is opened with a click event\n // this differentiates from a keyboard interaction triggering the click event\n const shouldFocusOnContainer =\n typeof props.shouldFocusOnContainer === 'boolean'\n ? props.shouldFocusOnContainer\n : (ev.nativeEvent as PointerEvent).pointerType === 'mouse';\n openSubMenu(item, target, shouldFocusOnContainer);\n }\n }\n\n ev.stopPropagation();\n ev.preventDefault();\n };\n\n const onAnchorClick = (item: IContextualMenuItem, ev: React.MouseEvent) => {\n executeItemClick(item, ev);\n ev.stopPropagation();\n };\n\n const executeItemClick = (\n item: IContextualMenuItem,\n ev: React.MouseEvent | React.KeyboardEvent,\n ): void => {\n if (item.disabled || item.isDisabled) {\n return;\n }\n\n if (item.preferMenuTargetAsEventTarget) {\n overrideTarget(ev, menuTarget);\n }\n\n let shouldDismiss = false;\n if (item.onClick) {\n shouldDismiss = !!item.onClick(ev, item);\n } else if (props.onItemClick) {\n shouldDismiss = !!props.onItemClick(ev, item);\n }\n\n if (shouldDismiss || !ev.defaultPrevented) {\n dismiss(ev, true);\n }\n };\n\n return [\n onItemMouseEnterBase,\n onItemMouseMoveBase,\n onMouseItemLeave,\n onItemClick,\n onAnchorClick,\n executeItemClick,\n onItemClickBase,\n ] as const;\n}\n//#endregion\n\nexport const ContextualMenuBase: React.FunctionComponent = React.memo(\n React.forwardRef((propsWithoutDefaults, forwardedRef) => {\n const { ref, ...props } = getPropsWithDefaults(DEFAULT_PROPS, propsWithoutDefaults);\n const hostElement = React.useRef(null);\n const asyncTracker = useAsync();\n const menuId = useId(COMPONENT_NAME, props.id);\n\n useWarnings({\n name: COMPONENT_NAME,\n props,\n deprecations: {\n getMenuClassNames: 'styles',\n },\n });\n\n const dismiss = (ev?: any, dismissAll?: boolean) => props.onDismiss?.(ev, dismissAll);\n const [targetRef, targetWindow] = useTarget(props.target, hostElement);\n const [tryFocusPreviousActiveElement] = usePreviousActiveElement(props, targetWindow);\n const [expandedMenuItemKey, openSubMenu, getSubmenuProps, onSubMenuDismiss] = useSubMenuState(props, dismiss);\n const [shouldUpdateFocusOnMouseEvent, gotMouseMove, onMenuFocusCapture] = useShouldUpdateFocusOnMouseMove(props);\n const [onScroll, isScrollIdle] = useScrollHandler(asyncTracker);\n const [cancelSubMenuTimer, startSubmenuTimer, subMenuEntryTimer] = useSubmenuEnterTimer(props, asyncTracker);\n\n const responsiveMode = useResponsiveMode(hostElement, props.responsiveMode);\n\n useVisibility(props, targetWindow);\n\n const [onKeyDown, onKeyUp, onMenuKeyDown, onItemKeyDown] = useKeyHandlers(props, dismiss, hostElement, openSubMenu);\n const [\n onItemMouseEnterBase,\n onItemMouseMoveBase,\n onMouseItemLeave,\n onItemClick,\n onAnchorClick,\n executeItemClick,\n onItemClickBase,\n ] = useMouseHandlers(\n props,\n isScrollIdle,\n subMenuEntryTimer,\n targetWindow,\n shouldUpdateFocusOnMouseEvent,\n gotMouseMove,\n expandedMenuItemKey,\n hostElement,\n startSubmenuTimer,\n cancelSubMenuTimer,\n openSubMenu,\n onSubMenuDismiss,\n dismiss,\n );\n\n //#region Render helpers\n\n const onDefaultRenderMenuList = (\n menuListProps: IContextualMenuListProps,\n // eslint-disable-next-line deprecation/deprecation\n menuClassNames: IProcessedStyleSet | IContextualMenuClassNames,\n defaultRender?: IRenderFunction,\n ): JSX.Element => {\n let indexCorrection = 0;\n const { items, totalItemCount, hasCheckmarks, hasIcons } = menuListProps;\n\n return (\n
    \n {items.map((item, index) => {\n const menuItem = renderMenuItem(\n item,\n index,\n indexCorrection,\n totalItemCount,\n hasCheckmarks,\n hasIcons,\n menuClassNames,\n );\n if (item.itemType !== ContextualMenuItemType.Divider && item.itemType !== ContextualMenuItemType.Header) {\n const indexIncrease = item.customOnRenderListLength ? item.customOnRenderListLength : 1;\n indexCorrection += indexIncrease;\n }\n return menuItem;\n })}\n
\n );\n };\n\n const renderFocusZone = (children: JSX.Element | null, adjustedFocusZoneProps: IFocusZoneProps): JSX.Element => {\n const { focusZoneAs: ChildrenRenderer = FocusZone } = props;\n return {children};\n };\n\n /**\n * !!!IMPORTANT!!! Avoid mutating `item: IContextualMenuItem` argument. It will\n * cause the menu items to always re-render because the component update is based on shallow comparison.\n */\n const renderMenuItem = (\n item: IContextualMenuItem,\n index: number,\n focusableElementIndex: number,\n totalItemCount: number,\n hasCheckmarks: boolean,\n hasIcons: boolean,\n // eslint-disable-next-line deprecation/deprecation\n menuClassNames: IProcessedStyleSet | IContextualMenuClassNames,\n ): JSX.Element => {\n const renderedItems: React.ReactNode[] = [];\n const iconProps = item.iconProps || { iconName: 'None' };\n const {\n getItemClassNames, // eslint-disable-line deprecation/deprecation\n itemProps,\n } = item;\n const styles = itemProps ? itemProps.styles : undefined;\n\n // We only send a dividerClassName when the item to be rendered is a divider.\n // For all other cases, the default divider style is used.\n const dividerClassName = item.itemType === ContextualMenuItemType.Divider ? item.className : undefined;\n const subMenuIconClassName = item.submenuIconProps ? item.submenuIconProps.className : '';\n\n // eslint-disable-next-line deprecation/deprecation\n let itemClassNames: IMenuItemClassNames;\n\n // IContextualMenuItem#getItemClassNames for backwards compatibility\n // otherwise uses mergeStyles for class names.\n if (getItemClassNames) {\n itemClassNames = getItemClassNames(\n props.theme!,\n isItemDisabled(item),\n expandedMenuItemKey === item.key,\n !!getIsChecked(item),\n !!item.href,\n iconProps.iconName !== 'None',\n item.className,\n dividerClassName,\n iconProps.className,\n subMenuIconClassName,\n item.primaryDisabled,\n );\n } else {\n const itemStyleProps: IContextualMenuItemStyleProps = {\n theme: props.theme!,\n disabled: isItemDisabled(item),\n expanded: expandedMenuItemKey === item.key,\n checked: !!getIsChecked(item),\n isAnchorLink: !!item.href,\n knownIcon: iconProps.iconName !== 'None',\n itemClassName: item.className,\n dividerClassName,\n iconClassName: iconProps.className,\n subMenuClassName: subMenuIconClassName,\n primaryDisabled: item.primaryDisabled,\n };\n\n // We need to generate default styles then override if styles are provided\n // since the ContextualMenu currently handles item classNames.\n itemClassNames = getContextualMenuItemClassNames(\n _getMenuItemStylesFunction(menuClassNames.subComponentStyles?.menuItem, styles),\n itemStyleProps,\n );\n }\n\n // eslint-disable-next-line deprecation/deprecation\n if (item.text === '-' || item.name === '-') {\n item.itemType = ContextualMenuItemType.Divider;\n }\n switch (item.itemType) {\n case ContextualMenuItemType.Divider:\n renderedItems.push(renderSeparator(index, itemClassNames));\n break;\n case ContextualMenuItemType.Header:\n renderedItems.push(renderSeparator(index, itemClassNames));\n const headerItem = renderHeaderMenuItem(item, itemClassNames, menuClassNames, index, hasCheckmarks, hasIcons);\n renderedItems.push(renderListItem(headerItem, item.key || index, itemClassNames, item.title));\n break;\n case ContextualMenuItemType.Section:\n renderedItems.push(renderSectionItem(item, itemClassNames, menuClassNames, index, hasCheckmarks, hasIcons));\n break;\n default:\n const defaultRenderNormalItem = () =>\n renderNormalItem(\n item,\n itemClassNames,\n index,\n focusableElementIndex,\n totalItemCount,\n hasCheckmarks,\n hasIcons,\n ) as JSX.Element;\n\n const menuItem = props.onRenderContextualMenuItem\n ? props.onRenderContextualMenuItem(item, defaultRenderNormalItem)\n : defaultRenderNormalItem();\n renderedItems.push(renderListItem(menuItem, item.key || index, itemClassNames, item.title));\n break;\n }\n\n // Since multiple nodes *could* be rendered, wrap them all in a fragment with this item's key.\n // This ensures the reconciler handles multi-item output per-node correctly and does not re-mount content.\n return {renderedItems};\n };\n\n const defaultMenuItemRenderer = (\n item: IContextualMenuItemRenderProps,\n // eslint-disable-next-line deprecation/deprecation\n menuClassNames: IProcessedStyleSet | IContextualMenuClassNames,\n ): React.ReactNode => {\n const { index, focusableElementIndex, totalItemCount, hasCheckmarks, hasIcons } = item;\n return renderMenuItem(\n item,\n index,\n focusableElementIndex,\n totalItemCount,\n hasCheckmarks,\n hasIcons,\n menuClassNames,\n );\n };\n\n const renderSectionItem = (\n sectionItem: IContextualMenuItem,\n // eslint-disable-next-line deprecation/deprecation\n itemClassNames: IMenuItemClassNames,\n // eslint-disable-next-line deprecation/deprecation\n menuClassNames: IProcessedStyleSet | IContextualMenuClassNames,\n index: number,\n hasCheckmarks: boolean,\n hasIcons: boolean,\n ) => {\n const sectionProps = sectionItem.sectionProps;\n if (!sectionProps) {\n return;\n }\n\n let headerItem;\n let groupProps;\n if (sectionProps.title) {\n let headerContextualMenuItem: IContextualMenuItem | undefined = undefined;\n let ariaLabelledby = '';\n if (typeof sectionProps.title === 'string') {\n // Since title is a user-facing string, it needs to be stripped\n // of whitespace in order to build a valid element ID\n const id = menuId + sectionProps.title.replace(/\\s/g, '');\n headerContextualMenuItem = {\n key: `section-${sectionProps.title}-title`,\n itemType: ContextualMenuItemType.Header,\n text: sectionProps.title,\n id: id,\n };\n ariaLabelledby = id;\n } else {\n const id = sectionProps.title.id || menuId + sectionProps.title.key.replace(/\\s/g, '');\n headerContextualMenuItem = { ...sectionProps.title, id };\n ariaLabelledby = id;\n }\n\n if (headerContextualMenuItem) {\n groupProps = {\n role: 'group',\n 'aria-labelledby': ariaLabelledby,\n };\n headerItem = renderHeaderMenuItem(\n headerContextualMenuItem,\n itemClassNames,\n menuClassNames,\n index,\n hasCheckmarks,\n hasIcons,\n );\n }\n }\n\n if (sectionProps.items && sectionProps.items.length > 0) {\n return (\n
  • \n
    \n
      \n {sectionProps.topDivider && renderSeparator(index, itemClassNames, true, true)}\n {headerItem && renderListItem(headerItem, sectionItem.key || index, itemClassNames, sectionItem.title)}\n {sectionProps.items.map((contextualMenuItem, itemsIndex) =>\n renderMenuItem(\n contextualMenuItem,\n itemsIndex,\n itemsIndex,\n sectionProps.items.length,\n hasCheckmarks,\n hasIcons,\n menuClassNames,\n ),\n )}\n {sectionProps.bottomDivider && renderSeparator(index, itemClassNames, false, true)}\n
    \n
    \n
  • \n );\n }\n };\n\n const renderListItem = (\n content: React.ReactNode,\n key: string | number,\n classNames: IMenuItemClassNames, // eslint-disable-line deprecation/deprecation\n title?: string,\n ) => {\n return (\n
  • \n {content}\n
  • \n );\n };\n\n const renderSeparator = (\n index: number,\n classNames: IMenuItemClassNames, // eslint-disable-line deprecation/deprecation\n top?: boolean,\n fromSection?: boolean,\n ): React.ReactNode => {\n if (fromSection || index > 0) {\n return (\n \n );\n }\n return null;\n };\n\n const renderNormalItem = (\n item: IContextualMenuItem,\n classNames: IMenuItemClassNames, // eslint-disable-line deprecation/deprecation\n index: number,\n focusableElementIndex: number,\n totalItemCount: number,\n hasCheckmarks: boolean,\n hasIcons: boolean,\n ): React.ReactNode => {\n if (item.onRender) {\n return item.onRender(\n { 'aria-posinset': focusableElementIndex + 1, 'aria-setsize': totalItemCount, ...item },\n dismiss,\n );\n }\n\n const { contextualMenuItemAs } = props;\n\n const commonProps = {\n item,\n classNames,\n index,\n focusableElementIndex,\n totalItemCount,\n hasCheckmarks,\n hasIcons,\n contextualMenuItemAs,\n onItemMouseEnter: onItemMouseEnterBase,\n onItemMouseLeave: onMouseItemLeave,\n onItemMouseMove: onItemMouseMoveBase,\n onItemMouseDown: onItemMouseDown,\n executeItemClick: executeItemClick,\n onItemKeyDown: onItemKeyDown,\n expandedMenuItemKey,\n openSubMenu,\n dismissSubMenu: onSubMenuDismiss,\n dismissMenu: dismiss,\n } as const;\n\n if (item.href) {\n return ;\n }\n\n if (item.split && hasSubmenu(item)) {\n return (\n \n );\n }\n\n return ;\n };\n\n const renderHeaderMenuItem = (\n item: IContextualMenuItem,\n // eslint-disable-next-line deprecation/deprecation\n itemClassNames: IMenuItemClassNames,\n // eslint-disable-next-line deprecation/deprecation\n menuClassNames: IProcessedStyleSet | IContextualMenuClassNames,\n index: number,\n hasCheckmarks: boolean,\n hasIcons: boolean,\n ): React.ReactNode => {\n const { contextualMenuItemAs: ChildrenRenderer = ContextualMenuItem } = props;\n const { itemProps, id } = item;\n const divHtmlProperties =\n itemProps && getNativeProps>(itemProps, divProperties);\n return (\n // eslint-disable-next-line deprecation/deprecation\n
    \n \n
    \n );\n };\n //#endregion\n\n //#region Main render\n let { isBeakVisible } = props;\n\n const {\n items,\n labelElementId,\n id,\n className,\n beakWidth,\n directionalHint,\n directionalHintForRTL,\n alignTargetEdge,\n gapSpace,\n coverTarget,\n ariaLabel,\n doNotLayer,\n target,\n bounds,\n useTargetWidth,\n useTargetAsMinWidth,\n directionalHintFixed,\n shouldFocusOnMount,\n shouldFocusOnContainer,\n title,\n styles,\n theme,\n calloutProps,\n onRenderSubMenu = onDefaultRenderSubMenu,\n onRenderMenuList = (\n menuListProps: IContextualMenuListProps,\n defaultRender?: IRenderFunction,\n ) => onDefaultRenderMenuList(menuListProps, classNames, defaultRender),\n focusZoneProps,\n // eslint-disable-next-line deprecation/deprecation\n getMenuClassNames,\n } = props;\n\n const classNames = getMenuClassNames\n ? getMenuClassNames(theme!, className)\n : getClassNames(styles, {\n theme: theme!,\n className: className,\n });\n\n const hasIcons = itemsHaveIcons(items);\n\n function itemsHaveIcons(contextualMenuItems: IContextualMenuItem[]): boolean {\n for (const item of contextualMenuItems) {\n if (item.iconProps) {\n return true;\n }\n\n if (\n item.itemType === ContextualMenuItemType.Section &&\n item.sectionProps &&\n itemsHaveIcons(item.sectionProps.items)\n ) {\n return true;\n }\n }\n\n return false;\n }\n\n const adjustedFocusZoneProps = {\n direction: FocusZoneDirection.vertical,\n handleTabKey: FocusZoneTabbableElements.all,\n isCircularNavigation: true,\n ...focusZoneProps,\n className: css(classNames.root, props.focusZoneProps?.className),\n };\n\n const hasCheckmarks = canAnyMenuItemsCheck(items);\n const submenuProps = expandedMenuItemKey && props.hidden !== true ? getSubmenuProps() : null;\n\n isBeakVisible = isBeakVisible === undefined ? responsiveMode! <= ResponsiveMode.medium : isBeakVisible;\n /**\n * When useTargetWidth is true, get the width of the target element and apply it for the context menu container\n */\n let contextMenuStyle: React.CSSProperties;\n const targetAsHtmlElement = targetRef.current as HTMLElement;\n if ((useTargetWidth || useTargetAsMinWidth) && targetAsHtmlElement && targetAsHtmlElement.offsetWidth) {\n const targetBoundingRect = targetAsHtmlElement.getBoundingClientRect();\n const targetWidth = targetBoundingRect.width - 2; /* Accounts for 1px border */\n\n if (useTargetWidth) {\n contextMenuStyle = {\n width: targetWidth,\n };\n } else if (useTargetAsMinWidth) {\n contextMenuStyle = {\n minWidth: targetWidth,\n };\n }\n }\n\n // The menu should only return if items were provided, if no items were provided then it should not appear.\n if (items && items.length > 0) {\n let totalItemCount = 0;\n for (const item of items) {\n if (item.itemType !== ContextualMenuItemType.Divider && item.itemType !== ContextualMenuItemType.Header) {\n const itemCount = item.customOnRenderListLength ? item.customOnRenderListLength : 1;\n totalItemCount += itemCount;\n }\n }\n\n const calloutStyles = classNames.subComponentStyles\n ? (classNames.subComponentStyles.callout as IStyleFunctionOrObject<\n ICalloutContentStyleProps,\n ICalloutContentStyles\n >)\n : undefined;\n\n return (\n \n {menuContext => (\n \n );\n } else {\n return null;\n }\n //#endregion\n }),\n (prevProps, newProps) => {\n if (!newProps.shouldUpdateWhenHidden && prevProps.hidden && newProps.hidden) {\n // Do not update when hidden.\n return true;\n }\n\n return shallowCompare(prevProps, newProps);\n },\n);\nContextualMenuBase.displayName = 'ContextualMenuBase';\n\n/**\n * Returns true if the key for the event is alt (Mac option) or meta (Mac command).\n */\nfunction isAltOrMeta(ev: React.KeyboardEvent): boolean {\n // eslint-disable-next-line deprecation/deprecation\n return ev.which === KeyCodes.alt || ev.key === 'Meta';\n}\n\nfunction onItemMouseDown(item: IContextualMenuItem, ev: React.MouseEvent): void {\n item.onMouseDown?.(item, ev);\n}\n\nfunction onDefaultRenderSubMenu(\n subMenuProps: IContextualMenuProps,\n defaultRender?: IRenderFunction,\n): JSX.Element {\n throw Error(\n 'ContextualMenuBase: onRenderSubMenu callback is null or undefined. ' +\n 'Please ensure to set `onRenderSubMenu` property either manually or with `styled` helper.',\n );\n}\n\n/**\n * Returns the item that matches a given key if any.\n * @param key - The key of the item to match\n * @param items - The items to look for the key\n */\nfunction findItemByKeyFromItems(key: string, items: IContextualMenuItem[]): IContextualMenuItem | undefined {\n for (const item of items) {\n if (item.itemType === ContextualMenuItemType.Section && item.sectionProps) {\n const match = findItemByKeyFromItems(key, item.sectionProps.items);\n if (match) {\n return match;\n }\n } else if (item.key && item.key === key) {\n return item;\n }\n }\n}\n\nfunction getOnClickWithOverrideTarget(\n onClick:\n | ((\n ev?: React.MouseEvent | React.KeyboardEvent | undefined,\n item?: IContextualMenuItem | undefined,\n ) => boolean | void)\n | undefined,\n target: Target | undefined,\n) {\n return onClick\n ? (\n ev?: React.MouseEvent | React.KeyboardEvent | undefined,\n item?: IContextualMenuItem | undefined,\n ) => {\n overrideTarget(ev, target);\n\n return onClick(ev, item);\n }\n : onClick;\n}\n\nfunction overrideTarget(\n ev?: React.MouseEvent | React.KeyboardEvent | undefined,\n target?: Target,\n): void {\n if (ev && target) {\n ev.persist();\n\n if (target instanceof Event) {\n ev.target = target.target as HTMLElement;\n } else if (target instanceof Element) {\n ev.target = target;\n }\n }\n}\n","import { getGlobalClassNames, FontWeights } from '../../Styling';\nimport { CONTEXTUAL_MENU_ITEM_HEIGHT } from './ContextualMenu.cnstyles';\nimport type { IContextualMenuStyleProps, IContextualMenuStyles } from './ContextualMenu.types';\n\nconst GlobalClassNames = {\n root: 'ms-ContextualMenu',\n container: 'ms-ContextualMenu-container',\n list: 'ms-ContextualMenu-list',\n header: 'ms-ContextualMenu-header',\n title: 'ms-ContextualMenu-title',\n isopen: 'is-open',\n};\n\nexport const getStyles = (props: IContextualMenuStyleProps): IContextualMenuStyles => {\n const { className, theme } = props;\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n const { fonts, semanticColors, effects } = theme;\n\n return {\n root: [\n theme.fonts.medium,\n classNames.root,\n classNames.isopen,\n {\n backgroundColor: semanticColors.menuBackground,\n minWidth: '180px',\n },\n className,\n ],\n container: [\n classNames.container,\n {\n selectors: {\n ':focus': { outline: 0 },\n },\n },\n ],\n list: [\n classNames.list,\n classNames.isopen,\n {\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n },\n ],\n header: [\n classNames.header,\n fonts.small,\n {\n fontWeight: FontWeights.semibold,\n color: semanticColors.menuHeader,\n background: 'none',\n backgroundColor: 'transparent',\n border: 'none',\n height: CONTEXTUAL_MENU_ITEM_HEIGHT,\n lineHeight: CONTEXTUAL_MENU_ITEM_HEIGHT,\n cursor: 'default',\n padding: '0px 6px',\n userSelect: 'none',\n textAlign: 'left',\n },\n ],\n title: [\n classNames.title,\n {\n fontSize: fonts.mediumPlus.fontSize,\n paddingRight: '14px',\n paddingLeft: '14px',\n paddingBottom: '5px',\n paddingTop: '5px',\n backgroundColor: semanticColors.menuItemBackgroundPressed,\n },\n ],\n subComponentStyles: {\n callout: {\n root: {\n boxShadow: effects.elevation8,\n },\n },\n menuItem: {},\n },\n };\n};\n","import * as React from 'react';\nimport { styled, composeRenderFunction } from '../../Utilities';\nimport { ContextualMenuBase } from './ContextualMenu.base';\nimport { getStyles } from './ContextualMenu.styles';\nimport type { IContextualMenuProps, IContextualMenuStyleProps, IContextualMenuStyles } from './ContextualMenu.types';\n\nfunction onRenderSubMenu(subMenuProps: IContextualMenuProps) {\n return ;\n}\n\n// This is to prevent cyclic import with ContextualMenu.base.tsx.\nconst LocalContextualMenu: React.FunctionComponent = styled<\n IContextualMenuProps,\n IContextualMenuStyleProps,\n IContextualMenuStyles\n>(\n ContextualMenuBase,\n getStyles,\n (props: IContextualMenuProps) => ({\n onRenderSubMenu: props.onRenderSubMenu\n ? composeRenderFunction(props.onRenderSubMenu, onRenderSubMenu)\n : onRenderSubMenu,\n }),\n { scope: 'ContextualMenu' },\n);\n\n/**\n * ContextualMenu description\n */\nexport const ContextualMenu: React.FunctionComponent = LocalContextualMenu;\nContextualMenu.displayName = 'ContextualMenu';\n","import { memoizeFunction } from '../../../Utilities';\nimport { mergeStyles } from '../../../Styling';\nimport type { IButtonStyles } from '../Button.types';\n\nexport interface ISplitButtonClassNames {\n root?: string;\n icon?: string;\n splitButtonContainer?: string;\n flexContainer?: string;\n divider?: string;\n}\n\nexport const getSplitButtonClassNames = memoizeFunction(\n (\n styles: IButtonStyles,\n disabled: boolean,\n expanded: boolean,\n checked: boolean,\n primaryDisabled?: boolean,\n ): ISplitButtonClassNames => {\n return {\n root: mergeStyles(\n styles.splitButtonMenuButton,\n expanded && [styles.splitButtonMenuButtonExpanded],\n disabled && [styles.splitButtonMenuButtonDisabled],\n checked && !disabled && [styles.splitButtonMenuButtonChecked],\n primaryDisabled &&\n !disabled && [\n {\n selectors: {\n ':focus': styles.splitButtonMenuFocused,\n },\n },\n ],\n ),\n\n splitButtonContainer: mergeStyles(\n styles.splitButtonContainer,\n !disabled &&\n checked && [\n styles.splitButtonContainerChecked,\n {\n selectors: {\n ':hover': styles.splitButtonContainerCheckedHovered,\n },\n },\n ],\n !disabled &&\n !checked && [\n {\n selectors: {\n ':hover': styles.splitButtonContainerHovered,\n ':focus': styles.splitButtonContainerFocused,\n },\n },\n ],\n disabled && styles.splitButtonContainerDisabled,\n ),\n\n icon: mergeStyles(\n styles.splitButtonMenuIcon,\n disabled && styles.splitButtonMenuIconDisabled,\n !disabled && primaryDisabled && styles.splitButtonMenuIcon,\n ),\n\n flexContainer: mergeStyles(styles.splitButtonFlexContainer),\n\n divider: mergeStyles(\n styles.splitButtonDivider,\n (primaryDisabled || disabled) && styles.splitButtonDividerDisabled,\n ),\n };\n },\n);\n","import * as React from 'react';\nimport {\n anchorProperties,\n assign,\n buttonProperties,\n createMergedRef,\n css,\n getId,\n getNativeProps,\n initializeComponentRef,\n memoizeFunction,\n mergeAriaAttributeValues,\n nullRender,\n portalContainsElement,\n setFocusVisibility,\n warnConditionallyRequiredProps,\n warnDeprecations,\n Async,\n EventGroup,\n FocusRects,\n KeyCodes,\n} from '../../Utilities';\nimport { Icon, FontIcon, ImageIcon } from '../../Icon';\nimport { DirectionalHint } from '../../common/DirectionalHint';\nimport { ContextualMenu } from '../../ContextualMenu';\nimport { getBaseButtonClassNames } from './BaseButton.classNames';\nimport { getSplitButtonClassNames as getBaseSplitButtonClassNames } from './SplitButton/SplitButton.classNames';\nimport { KeytipData } from '../../KeytipData';\nimport type { IRenderFunction } from '../../Utilities';\nimport type { IContextualMenuProps } from '../../ContextualMenu';\nimport type { IButtonProps, IButton } from './Button.types';\nimport type { IButtonClassNames } from './BaseButton.classNames';\nimport type { ISplitButtonClassNames } from './SplitButton/SplitButton.classNames';\nimport type { IKeytipProps } from '../../Keytip';\nimport { composeComponentAs } from '../../Utilities';\n\n/**\n * {@docCategory Button}\n */\nexport interface IBaseButtonProps extends IButtonProps {\n baseClassName?: string;\n variantClassName?: string;\n}\n\n/**\n * {@docCategory Button}\n */\nexport interface IBaseButtonState {\n menuHidden: boolean;\n}\n\nconst TouchIdleDelay = 500; /* ms */\nconst COMPONENT_NAME = 'BaseButton';\n\n/**\n * {@docCategory Button}\n */\nexport class BaseButton extends React.Component implements IButton {\n private get _isSplitButton(): boolean {\n return !!this.props.menuProps && !!this.props.onClick && this.props.split === true;\n }\n\n public static defaultProps: Partial = {\n baseClassName: 'ms-Button',\n styles: {},\n split: false,\n };\n\n private _async: Async;\n private _events: EventGroup;\n private _buttonElement = React.createRef();\n private _splitButtonContainer = React.createRef();\n private _mergedRef = createMergedRef();\n private _labelId: string;\n private _descriptionId: string;\n private _ariaDescriptionId: string;\n private _classNames: IButtonClassNames;\n private _processingTouch: boolean;\n private _lastTouchTimeoutId: number | undefined;\n private _renderedVisibleMenu: boolean = false;\n\n // These fields will be used to set corresponding props on the menu.\n private _menuShouldFocusOnContainer: boolean | undefined;\n private _menuShouldFocusOnMount: boolean | undefined;\n\n private _getMemoizedMenuButtonKeytipProps = memoizeFunction((keytipProps: IKeytipProps) => {\n return {\n ...keytipProps,\n hasMenu: true,\n };\n });\n\n constructor(props: IBaseButtonProps) {\n super(props);\n\n initializeComponentRef(this);\n this._async = new Async(this);\n this._events = new EventGroup(this);\n\n warnConditionallyRequiredProps(COMPONENT_NAME, props, ['menuProps', 'onClick'], 'split', this.props.split!);\n\n warnDeprecations(COMPONENT_NAME, props, {\n rootProps: undefined,\n description: 'secondaryText',\n toggled: 'checked',\n });\n this._labelId = getId();\n this._descriptionId = getId();\n this._ariaDescriptionId = getId();\n\n this.state = {\n menuHidden: true,\n };\n }\n\n public render(): JSX.Element {\n const {\n ariaDescription,\n ariaLabel,\n ariaHidden,\n className,\n disabled,\n allowDisabledFocus,\n primaryDisabled,\n // eslint-disable-next-line deprecation/deprecation\n secondaryText = this.props.description,\n href,\n iconProps,\n menuIconProps,\n styles,\n checked,\n variantClassName,\n theme,\n toggle,\n getClassNames,\n role,\n } = this.props;\n\n const { menuHidden } = this.state;\n\n // Button is disabled if the whole button (in case of splitButton is disabled) or if the primary action is disabled\n const isPrimaryButtonDisabled = disabled || primaryDisabled;\n\n this._classNames = getClassNames\n ? getClassNames(\n theme!,\n className!,\n variantClassName!,\n iconProps && iconProps.className,\n menuIconProps && menuIconProps.className,\n isPrimaryButtonDisabled!,\n checked!,\n !menuHidden,\n !!this.props.menuProps,\n this.props.split,\n !!allowDisabledFocus,\n )\n : getBaseButtonClassNames(\n theme!,\n styles!,\n className!,\n variantClassName!,\n iconProps && iconProps.className,\n menuIconProps && menuIconProps.className,\n isPrimaryButtonDisabled!,\n !!this.props.menuProps,\n checked!,\n !menuHidden,\n this.props.split,\n );\n\n const { _ariaDescriptionId, _labelId, _descriptionId } = this;\n // Anchor tag cannot be disabled hence in disabled state rendering\n // anchor button as normal button\n const renderAsAnchor: boolean = !isPrimaryButtonDisabled && !!href;\n const tag = renderAsAnchor ? 'a' : 'button';\n\n const nativeProps = getNativeProps(\n // eslint-disable-next-line deprecation/deprecation\n assign(renderAsAnchor ? {} : { type: 'button' }, this.props.rootProps, this.props),\n renderAsAnchor ? anchorProperties : buttonProperties,\n [\n 'disabled', // let disabled buttons be focused and styled as disabled.\n ],\n );\n\n // Check for ariaLabel passed in via Button props, and fall back to aria-label passed in via native props\n const resolvedAriaLabel = ariaLabel || (nativeProps as any)['aria-label'];\n\n // Check for ariaDescription, secondaryText or aria-describedby in the native props to determine source of\n // aria-describedby. Otherwise default to undefined so property does not appear in output.\n let ariaDescribedBy = undefined;\n if (ariaDescription) {\n ariaDescribedBy = _ariaDescriptionId;\n } else if (secondaryText && this.props.onRenderDescription !== nullRender) {\n // for buttons like CompoundButton with a valid onRenderDescription, we need to set an ariaDescribedBy\n // for buttons that do not render anything (via nullRender), we should not set an ariaDescribedBy\n ariaDescribedBy = _descriptionId;\n } else if ((nativeProps as any)['aria-describedby']) {\n ariaDescribedBy = (nativeProps as any)['aria-describedby'];\n }\n\n // If an explicit aria-labelledby is given, use that and we're done.\n // If any kind of description is given (which will end up as an aria-describedby attribute)\n // and no ariaLabel is specified, set the labelledby element.\n // Otherwise, the button is labeled implicitly by the descendent text on the button (if it exists).\n let ariaLabelledBy = undefined;\n if ((nativeProps as any)['aria-labelledby']) {\n ariaLabelledBy = (nativeProps as any)['aria-labelledby'];\n } else if (ariaDescribedBy && !resolvedAriaLabel) {\n ariaLabelledBy = this._hasText() ? _labelId : undefined;\n }\n\n const dataIsFocusable =\n (this.props as any)['data-is-focusable'] === false || (disabled && !allowDisabledFocus) || this._isSplitButton\n ? false\n : true;\n\n const isCheckboxTypeRole = role === 'menuitemcheckbox' || role === 'checkbox';\n // if isCheckboxTypeRole, always return a checked value.\n // Otherwise only return checked value if toggle is set to true.\n // This is because role=\"checkbox\" always needs to have an aria-checked value\n // but our checked prop only sets aria-pressed if we mark the button as a toggle=\"true\"\n const checkedOrPressedValue = isCheckboxTypeRole ? !!checked : toggle === true ? !!checked : undefined;\n\n const buttonProps = assign(nativeProps, {\n className: this._classNames.root,\n // eslint-disable-next-line deprecation/deprecation\n ref: this._mergedRef(this.props.elementRef, this._buttonElement),\n disabled: isPrimaryButtonDisabled && !allowDisabledFocus,\n onKeyDown: this._onKeyDown,\n onKeyPress: this._onKeyPress,\n onKeyUp: this._onKeyUp,\n onMouseDown: this._onMouseDown,\n onMouseUp: this._onMouseUp,\n onClick: this._onClick,\n 'aria-label': resolvedAriaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n 'aria-disabled': isPrimaryButtonDisabled,\n 'data-is-focusable': dataIsFocusable,\n // aria-pressed attribute should only be present for toggle buttons\n // aria-checked attribute should only be present for toggle buttons with checkbox type role\n [isCheckboxTypeRole ? 'aria-checked' : 'aria-pressed']: checkedOrPressedValue,\n });\n\n if (ariaHidden) {\n buttonProps['aria-hidden'] = true;\n }\n\n if (this._isSplitButton) {\n return this._onRenderSplitButtonContent(tag, buttonProps);\n } else if (this.props.menuProps) {\n const { id = `${this._labelId}-menu` } = this.props.menuProps;\n assign(buttonProps, {\n 'aria-expanded': !menuHidden,\n 'aria-controls': !menuHidden ? id : null,\n 'aria-haspopup': true,\n });\n }\n\n return this._onRenderContent(tag, buttonProps);\n }\n\n public componentDidMount() {\n // For split buttons, touching anywhere in the button should drop the dropdown, which should contain the\n // primary action. This gives more hit target space for touch environments. We're setting the onpointerdown here,\n // because React does not support Pointer events yet.\n if (this._isSplitButton && this._splitButtonContainer.current) {\n if ('onpointerdown' in this._splitButtonContainer.current) {\n this._events.on(this._splitButtonContainer.current, 'pointerdown', this._onPointerDown, true);\n }\n if ('onpointerup' in this._splitButtonContainer.current && this.props.onPointerUp) {\n this._events.on(this._splitButtonContainer.current, 'pointerup', this.props.onPointerUp, true);\n }\n }\n }\n\n public componentDidUpdate(prevProps: IBaseButtonProps, prevState: IBaseButtonState) {\n // If Button's menu was closed, run onAfterMenuDismiss.\n if (this.props.onAfterMenuDismiss && !prevState.menuHidden && this.state.menuHidden) {\n this.props.onAfterMenuDismiss();\n }\n }\n\n public componentWillUnmount(): void {\n this._async.dispose();\n this._events.dispose();\n }\n\n public focus(): void {\n if (this._isSplitButton && this._splitButtonContainer.current) {\n setFocusVisibility(true);\n this._splitButtonContainer.current.focus();\n } else if (this._buttonElement.current) {\n setFocusVisibility(true);\n this._buttonElement.current.focus();\n }\n }\n\n public dismissMenu(): void {\n this._dismissMenu();\n }\n\n public openMenu(shouldFocusOnContainer?: boolean, shouldFocusOnMount?: boolean): void {\n this._openMenu(shouldFocusOnContainer, shouldFocusOnMount);\n }\n\n private _onRenderContent(tag: any, buttonProps: IButtonProps): JSX.Element {\n const props = this.props;\n const Tag = tag;\n const {\n menuIconProps,\n menuProps,\n onRenderIcon = this._onRenderIcon,\n onRenderAriaDescription = this._onRenderAriaDescription,\n onRenderChildren = this._onRenderChildren,\n // eslint-disable-next-line deprecation/deprecation\n onRenderMenu = this._onRenderMenu,\n onRenderMenuIcon = this._onRenderMenuIcon,\n disabled,\n } = props;\n let { keytipProps } = props;\n if (keytipProps && menuProps) {\n keytipProps = this._getMemoizedMenuButtonKeytipProps(keytipProps);\n }\n\n const Button = (keytipAttributes?: any): JSX.Element => (\n \n \n {onRenderIcon(props, this._onRenderIcon)}\n {this._onRenderTextContents()}\n {onRenderAriaDescription(props, this._onRenderAriaDescription)}\n {onRenderChildren(props, this._onRenderChildren)}\n {!this._isSplitButton &&\n (menuProps || menuIconProps || this.props.onRenderMenuIcon) &&\n onRenderMenuIcon(this.props, this._onRenderMenuIcon)}\n {menuProps &&\n !menuProps.doNotLayer &&\n this._shouldRenderMenu() &&\n onRenderMenu(this._getMenuProps(menuProps), this._onRenderMenu)}\n \n \n );\n\n const Content = keytipProps ? (\n // If we're making a split button, we won't put the keytip here\n \n {(keytipAttributes: any): JSX.Element => Button(keytipAttributes)}\n \n ) : (\n Button()\n );\n\n if (menuProps && menuProps.doNotLayer) {\n return (\n <>\n {Content}\n {this._shouldRenderMenu() && onRenderMenu(this._getMenuProps(menuProps), this._onRenderMenu)}\n \n );\n }\n\n return (\n <>\n {Content}\n \n \n );\n }\n\n /**\n * Method to help determine if the menu's component tree should\n * be rendered. It takes into account whether the menu is expanded,\n * whether it is a persisted menu and whether it has been shown to the user.\n */\n private _shouldRenderMenu() {\n const { menuHidden } = this.state;\n // eslint-disable-next-line deprecation/deprecation\n const { persistMenu, renderPersistedMenuHiddenOnMount } = this.props;\n\n if (!menuHidden) {\n // Always should render a menu when it is expanded\n return true;\n } else if (persistMenu && (this._renderedVisibleMenu || renderPersistedMenuHiddenOnMount)) {\n // _renderedVisibleMenu ensures that the first rendering of\n // the menu happens on-screen, as edge's scrollbar calculations are off if done while hidden.\n return true;\n }\n\n return false;\n }\n\n private _onRenderIcon = (\n buttonProps?: IButtonProps,\n defaultRender?: IRenderFunction,\n ): JSX.Element | null => {\n const { iconProps } = this.props;\n\n if (iconProps && (iconProps.iconName !== undefined || iconProps.imageProps)) {\n const { className, imageProps, ...rest } = iconProps;\n\n // If the styles prop is specified as part of iconProps, fall back to regular Icon as FontIcon and ImageIcon\n // do not have this prop.\n if (iconProps.styles) {\n return ;\n }\n if (iconProps.iconName) {\n return ;\n }\n if (imageProps) {\n return ;\n }\n }\n return null;\n };\n\n private _onRenderTextContents = (): JSX.Element | (JSX.Element | null)[] => {\n const {\n text,\n children,\n // eslint-disable-next-line deprecation/deprecation\n secondaryText = this.props.description,\n onRenderText = this._onRenderText,\n onRenderDescription = this._onRenderDescription,\n } = this.props;\n\n if (text || typeof children === 'string' || secondaryText) {\n return (\n \n {onRenderText(this.props, this._onRenderText)}\n {onRenderDescription(this.props, this._onRenderDescription)}\n \n );\n }\n return [onRenderText(this.props, this._onRenderText), onRenderDescription(this.props, this._onRenderDescription)];\n };\n\n private _onRenderText = (): JSX.Element | null => {\n let { text } = this.props;\n const { children } = this.props;\n\n // For backwards compat, we should continue to take in the text content from children.\n if (text === undefined && typeof children === 'string') {\n text = children;\n }\n\n if (this._hasText()) {\n return (\n \n {text}\n \n );\n }\n\n return null;\n };\n\n private _hasText(): boolean {\n // _onRenderTextContents and _onRenderText do not perform the same checks. Below is parity with what _onRenderText\n // used to have before the refactor that introduced this function. _onRenderTextContents does not require props.\n // text to be undefined in order for props.children to be used as a fallback.\n // Purely a code maintainability/reuse issue, but logged as Issue #4979.\n return this.props.text !== null && (this.props.text !== undefined || typeof this.props.children === 'string');\n }\n\n private _onRenderChildren = (): JSX.Element | null => {\n const { children } = this.props;\n\n // If children is just a string, either it or the text will be rendered via onRenderLabel\n // If children is another component, it will be rendered after text\n if (typeof children === 'string') {\n return null;\n }\n\n return children as any;\n };\n\n private _onRenderDescription = (props: IButtonProps) => {\n // eslint-disable-next-line deprecation/deprecation\n const { secondaryText = this.props.description } = props;\n\n // ms-Button-description is only shown when the button type is compound.\n // In other cases it will not be displayed.\n return secondaryText ? (\n \n {secondaryText}\n \n ) : null;\n };\n\n private _onRenderAriaDescription = () => {\n const { ariaDescription } = this.props;\n\n // If ariaDescription is given, descriptionId will be assigned to ariaDescriptionSpan,\n // otherwise it will be assigned to descriptionSpan.\n return ariaDescription ? (\n \n {ariaDescription}\n \n ) : null;\n };\n\n private _onRenderMenuIcon = (props: IButtonProps): JSX.Element | null => {\n const { menuIconProps } = this.props;\n\n return ;\n };\n\n private _getMenuProps(menuProps: IContextualMenuProps): IContextualMenuProps {\n const { persistMenu } = this.props;\n const { menuHidden } = this.state;\n\n // the accessible menu label (accessible name) has a relationship to the button.\n // If the menu props do not specify an explicit value for aria-label or aria-labelledBy,\n // AND the button has text, we'll set the menu aria-labelledBy to the text element id.\n if (!menuProps.ariaLabel && !menuProps.labelElementId && this._hasText()) {\n menuProps = { ...menuProps, labelElementId: this._labelId };\n }\n\n return {\n id: this._labelId + '-menu',\n directionalHint: DirectionalHint.bottomLeftEdge,\n ...menuProps,\n shouldFocusOnContainer: this._menuShouldFocusOnContainer,\n shouldFocusOnMount: this._menuShouldFocusOnMount,\n hidden: persistMenu ? menuHidden : undefined,\n className: css('ms-BaseButton-menuhost', menuProps.className),\n target: this._isSplitButton ? this._splitButtonContainer.current : this._buttonElement.current,\n onDismiss: this._onDismissMenu,\n };\n }\n\n private _onRenderMenu = (menuProps: IContextualMenuProps): JSX.Element => {\n const MenuType = this.props.menuAs ? composeComponentAs(this.props.menuAs, ContextualMenu) : ContextualMenu;\n\n return ;\n };\n\n private _onDismissMenu: IContextualMenuProps['onDismiss'] = ev => {\n const { menuProps } = this.props;\n\n if (menuProps && menuProps.onDismiss) {\n menuProps.onDismiss(ev);\n }\n if (!ev || !ev.defaultPrevented) {\n this._dismissMenu();\n }\n };\n\n private _dismissMenu = (): void => {\n this._menuShouldFocusOnMount = undefined;\n this._menuShouldFocusOnContainer = undefined;\n this.setState({ menuHidden: true });\n };\n\n private _openMenu = (shouldFocusOnContainer?: boolean, shouldFocusOnMount: boolean = true): void => {\n if (this.props.menuProps) {\n this._menuShouldFocusOnContainer = shouldFocusOnContainer;\n this._menuShouldFocusOnMount = shouldFocusOnMount;\n this._renderedVisibleMenu = true;\n this.setState({ menuHidden: false });\n }\n };\n\n private _onToggleMenu = (shouldFocusOnContainer: boolean): void => {\n let shouldFocusOnMount = true;\n if (this.props.menuProps && this.props.menuProps.shouldFocusOnMount === false) {\n shouldFocusOnMount = false;\n }\n\n this.state.menuHidden ? this._openMenu(shouldFocusOnContainer, shouldFocusOnMount) : this._dismissMenu();\n };\n\n private _onRenderSplitButtonContent(tag: any, buttonProps: IButtonProps): JSX.Element {\n const {\n styles = {},\n disabled,\n allowDisabledFocus,\n checked,\n getSplitButtonClassNames,\n primaryDisabled,\n menuProps,\n toggle,\n role,\n primaryActionButtonProps,\n } = this.props;\n let { keytipProps } = this.props;\n const { menuHidden } = this.state;\n\n const classNames = getSplitButtonClassNames\n ? getSplitButtonClassNames(!!disabled, !menuHidden, !!checked, !!allowDisabledFocus)\n : styles && getBaseSplitButtonClassNames(styles!, !!disabled, !menuHidden, !!checked, !!primaryDisabled);\n\n assign(buttonProps, {\n onClick: undefined,\n onPointerDown: undefined,\n onPointerUp: undefined,\n tabIndex: -1,\n 'data-is-focusable': false,\n });\n\n if (keytipProps && menuProps) {\n keytipProps = this._getMemoizedMenuButtonKeytipProps(keytipProps);\n }\n\n const containerProps = getNativeProps>(buttonProps, [], ['disabled']);\n\n // Add additional props to apply on primary action button\n if (primaryActionButtonProps) {\n assign(buttonProps, primaryActionButtonProps);\n }\n\n const SplitButton = (keytipAttributes?: any): JSX.Element => (\n \n \n {this._onRenderContent(tag, buttonProps)}\n {this._onRenderSplitButtonMenuButton(classNames, keytipAttributes)}\n {this._onRenderSplitButtonDivider(classNames)}\n \n \n );\n\n return keytipProps ? (\n \n {(keytipAttributes: any): JSX.Element => SplitButton(keytipAttributes)}\n \n ) : (\n SplitButton()\n );\n }\n\n private _onSplitContainerFocusCapture = (ev: React.FocusEvent) => {\n const container = this._splitButtonContainer.current;\n\n // If the target is coming from the portal we do not need to set focus on the container.\n if (!container || (ev.target && portalContainsElement(ev.target, container))) {\n return;\n }\n\n // We should never be able to focus the individual buttons in a split button. Focus\n // should always remain on the container.\n container.focus();\n };\n\n private _onSplitButtonPrimaryClick = (ev: React.MouseEvent) => {\n if (!this.state.menuHidden) {\n this._dismissMenu();\n }\n\n if (!this._processingTouch && this.props.onClick) {\n this.props.onClick(ev);\n } else if (this._processingTouch) {\n this._onMenuClick(ev);\n }\n };\n\n private _onRenderSplitButtonDivider(classNames: ISplitButtonClassNames | undefined): JSX.Element | null {\n if (classNames && classNames.divider) {\n const onClick = (ev: React.MouseEvent) => {\n ev.stopPropagation();\n };\n return ;\n }\n return null;\n }\n\n private _onRenderSplitButtonMenuButton(\n classNames: ISplitButtonClassNames | undefined,\n keytipAttributes: any,\n ): JSX.Element {\n const {\n allowDisabledFocus,\n checked,\n disabled,\n splitButtonMenuProps,\n splitButtonAriaLabel,\n primaryDisabled,\n } = this.props;\n const { menuHidden } = this.state;\n let menuIconProps = this.props.menuIconProps;\n\n if (menuIconProps === undefined) {\n menuIconProps = {\n iconName: 'ChevronDown',\n };\n }\n\n const splitButtonProps = {\n ...splitButtonMenuProps,\n styles: classNames,\n checked: checked,\n disabled: disabled,\n allowDisabledFocus: allowDisabledFocus,\n onClick: this._onMenuClick,\n menuProps: undefined,\n iconProps: { ...menuIconProps, className: this._classNames.menuIcon },\n ariaLabel: splitButtonAriaLabel,\n 'aria-haspopup': true,\n 'aria-expanded': !menuHidden,\n 'data-is-focusable': false,\n };\n\n // Add data-ktp-execute-target to the split button if the keytip is defined\n return (\n \n );\n }\n\n private _onKeyDown = (ev: React.KeyboardEvent) => {\n // explicity cancelling event so click won't fire after this\n // eslint-disable-next-line deprecation/deprecation\n if (this.props.disabled && (ev.which === KeyCodes.enter || ev.which === KeyCodes.space)) {\n ev.preventDefault();\n ev.stopPropagation();\n } else if (!this.props.disabled) {\n if (this.props.menuProps) {\n this._onMenuKeyDown(ev);\n } else if (this.props.onKeyDown !== undefined) {\n this.props.onKeyDown(ev); // not cancelling event because it's not disabled\n }\n }\n };\n\n private _onKeyUp = (\n ev: React.KeyboardEvent,\n ) => {\n if (!this.props.disabled && this.props.onKeyUp !== undefined) {\n this.props.onKeyUp(ev); // not cancelling event because it's not disabled\n }\n };\n\n private _onKeyPress = (\n ev: React.KeyboardEvent,\n ) => {\n if (!this.props.disabled && this.props.onKeyPress !== undefined) {\n this.props.onKeyPress(ev); // not cancelling event because it's not disabled\n }\n };\n\n private _onMouseUp = (\n ev: React.MouseEvent,\n ) => {\n if (!this.props.disabled && this.props.onMouseUp !== undefined) {\n this.props.onMouseUp(ev); // not cancelling event because it's not disabled\n }\n };\n\n private _onMouseDown = (\n ev: React.MouseEvent,\n ) => {\n if (!this.props.disabled && this.props.onMouseDown !== undefined) {\n this.props.onMouseDown(ev); // not cancelling event because it's not disabled\n }\n };\n\n private _onClick = (\n ev: React.MouseEvent,\n ) => {\n if (!this.props.disabled) {\n if (this.props.menuProps) {\n this._onMenuClick(ev);\n } else if (this.props.onClick !== undefined) {\n this.props.onClick(ev); // not cancelling event because it's not disabled\n }\n }\n };\n\n private _onSplitButtonContainerKeyDown = (ev: React.KeyboardEvent) => {\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter || ev.which === KeyCodes.space) {\n if (this._buttonElement.current) {\n this._buttonElement.current.click();\n ev.preventDefault();\n ev.stopPropagation();\n }\n } else {\n this._onMenuKeyDown(ev);\n }\n };\n\n private _onMenuKeyDown = (ev: React.KeyboardEvent) => {\n if (this.props.disabled) {\n return;\n }\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(ev);\n }\n\n // eslint-disable-next-line deprecation/deprecation\n const isUp = ev.which === KeyCodes.up;\n // eslint-disable-next-line deprecation/deprecation\n const isDown = ev.which === KeyCodes.down;\n\n if (!ev.defaultPrevented && this._isValidMenuOpenKey(ev)) {\n const { onMenuClick } = this.props;\n if (onMenuClick) {\n onMenuClick(ev, this.props);\n }\n\n this._onToggleMenu(false);\n ev.preventDefault();\n ev.stopPropagation();\n }\n\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter || ev.which === KeyCodes.space) {\n // We manually set the focus visibility to true if opening via Enter or Space to account for the scenario where\n // a user clicks on the button, closes the menu and then opens it via keyboard. In this scenario our default logic\n // for setting focus visibility is not triggered since there is no keyboard navigation present beforehand.\n setFocusVisibility(true, ev.target as Element);\n }\n\n if (!(ev.altKey || ev.metaKey) && (isUp || isDown)) {\n // Suppose a menu, with shouldFocusOnMount: false, is open, and user wants to keyboard to the menu items\n // We need to re-render the menu with shouldFocusOnMount as true.\n\n if (!this.state.menuHidden && this.props.menuProps) {\n const currentShouldFocusOnMount =\n this._menuShouldFocusOnMount !== undefined\n ? this._menuShouldFocusOnMount\n : this.props.menuProps.shouldFocusOnMount;\n if (!currentShouldFocusOnMount) {\n ev.preventDefault();\n ev.stopPropagation();\n this._menuShouldFocusOnMount = true;\n this.forceUpdate();\n }\n }\n }\n };\n\n private _onTouchStart: () => void = () => {\n if (\n this._isSplitButton &&\n this._splitButtonContainer.current &&\n !('onpointerdown' in this._splitButtonContainer.current)\n ) {\n this._handleTouchAndPointerEvent();\n }\n };\n\n private _onPointerDown(\n ev: PointerEvent &\n React.PointerEvent,\n ) {\n const { onPointerDown } = this.props;\n if (onPointerDown) {\n onPointerDown(ev);\n }\n\n if (ev.pointerType === 'touch') {\n this._handleTouchAndPointerEvent();\n\n ev.preventDefault();\n ev.stopImmediatePropagation();\n }\n }\n\n private _handleTouchAndPointerEvent() {\n // If we already have an existing timeout from a previous touch and pointer event\n // cancel that timeout so we can set a new one.\n if (this._lastTouchTimeoutId !== undefined) {\n this._async.clearTimeout(this._lastTouchTimeoutId);\n this._lastTouchTimeoutId = undefined;\n }\n this._processingTouch = true;\n\n this._lastTouchTimeoutId = this._async.setTimeout(() => {\n this._processingTouch = false;\n this._lastTouchTimeoutId = undefined;\n\n // Touch and pointer events don't focus the button naturally,\n // so adding an imperative focus call to guarantee this behavior.\n this.focus();\n }, TouchIdleDelay);\n }\n\n /**\n * Returns if the user hits a valid keyboard key to open the menu\n * @param ev - the keyboard event\n * @returns True if user clicks on custom trigger key if enabled or alt + down arrow if not. False otherwise.\n */\n private _isValidMenuOpenKey(\n ev: React.KeyboardEvent,\n ): boolean {\n if (this.props.menuTriggerKeyCode) {\n // eslint-disable-next-line deprecation/deprecation\n return ev.which === this.props.menuTriggerKeyCode;\n } else if (this.props.menuProps) {\n // eslint-disable-next-line deprecation/deprecation\n return ev.which === KeyCodes.down && (ev.altKey || ev.metaKey);\n }\n\n // Note: When enter is pressed, we will let the event continue to propagate\n // to trigger the onClick event on the button\n return false;\n }\n\n private _onMenuClick = (\n ev: React.MouseEvent,\n ) => {\n const { onMenuClick, menuProps } = this.props;\n if (onMenuClick) {\n onMenuClick(ev, this.props);\n }\n\n // focus on the container by default when the menu is opened with a click event\n // this differentiates from a keyboard interaction triggering the click event\n const shouldFocusOnContainer =\n typeof menuProps?.shouldFocusOnContainer === 'boolean'\n ? menuProps.shouldFocusOnContainer\n : (ev.nativeEvent as PointerEvent).pointerType === 'mouse';\n\n if (!ev.defaultPrevented) {\n this._onToggleMenu(shouldFocusOnContainer);\n ev.preventDefault();\n ev.stopPropagation();\n }\n };\n}\n","import * as React from 'react';\nimport type { ICustomizations } from './Customizations';\n\nexport interface ICustomizerContext {\n customizations: ICustomizations;\n}\n\nexport const CustomizerContext = React.createContext({\n customizations: {\n inCustomizerContext: false,\n settings: {},\n scopedSettings: {},\n },\n});\n","import { getWindow } from './dom/getWindow';\nexport const IsFocusVisibleClassName = 'ms-Fabric--isFocusVisible';\nexport const IsFocusHiddenClassName = 'ms-Fabric--isFocusHidden';\n\n/**\n * Sets the visibility of focus styling.\n *\n * By default, focus styles (the box surrounding a focused Button, for example) only show up when navigational\n * keypresses occur (through Tab, arrows, PgUp/PgDn, Home and End), and are hidden when mouse interactions occur.\n * This API provides an imperative way to turn them on/off.\n *\n * A use case might be when you have a keypress like ctrl-f6 navigate to a particular region on the page,\n * and want focus to show up.\n *\n * @param enabled - whether to remove or add focus\n * @param target - optional target\n */\nexport function setFocusVisibility(enabled: boolean, target?: Element): void {\n const win = target ? getWindow(target) : getWindow();\n\n if (win) {\n const { classList } = win.document.body;\n classList.add(enabled ? IsFocusVisibleClassName : IsFocusHiddenClassName);\n classList.remove(enabled ? IsFocusHiddenClassName : IsFocusVisibleClassName);\n }\n}\n","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nimport React from 'react';\nvar defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true\n};\nvar i18nInstance;\nexport var I18nContext = React.createContext();\nexport function setDefaults() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n defaultOptions = _objectSpread(_objectSpread({}, defaultOptions), options);\n}\nexport function getDefaults() {\n return defaultOptions;\n}\nexport var ReportNamespaces = function () {\n function ReportNamespaces() {\n _classCallCheck(this, ReportNamespaces);\n\n this.usedNamespaces = {};\n }\n\n _createClass(ReportNamespaces, [{\n key: \"addUsedNamespaces\",\n value: function addUsedNamespaces(namespaces) {\n var _this = this;\n\n namespaces.forEach(function (ns) {\n if (!_this.usedNamespaces[ns]) _this.usedNamespaces[ns] = true;\n });\n }\n }, {\n key: \"getUsedNamespaces\",\n value: function getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n }]);\n\n return ReportNamespaces;\n}();\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}\nexport var initReactI18next = {\n type: '3rdParty',\n init: function init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};\nexport function composeInitialProps(ForComponent) {\n return function (ctx) {\n return new Promise(function (resolve) {\n var i18nInitialProps = getInitialProps();\n\n if (ForComponent.getInitialProps) {\n ForComponent.getInitialProps(ctx).then(function (componentsInitialProps) {\n resolve(_objectSpread(_objectSpread({}, componentsInitialProps), i18nInitialProps));\n });\n } else {\n resolve(i18nInitialProps);\n }\n });\n };\n}\nexport function getInitialProps() {\n var i18n = getI18n();\n var namespaces = i18n.reportNamespaces ? i18n.reportNamespaces.getUsedNamespaces() : [];\n var ret = {};\n var initialI18nStore = {};\n i18n.languages.forEach(function (l) {\n initialI18nStore[l] = {};\n namespaces.forEach(function (ns) {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n}","import * as React from 'react';\nimport { DialogContentBase } from './DialogContent.base';\nimport { ResponsiveMode } from '../../ResponsiveMode';\nimport type { IButtonProps } from '../../Button';\nimport type { IStyle, ITheme } from '../../Styling';\nimport type { IRefObject, IStyleFunctionOrObject } from '../../Utilities';\n\n/**\n * {@docCategory Dialog}\n */\nexport interface IDialogContent {}\n\n/**\n * {@docCategory Dialog}\n */\nexport interface IDialogContentProps extends React.ClassAttributes {\n /**\n * Optional callback to access the IDialogContent interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject;\n\n /**\n * Call to provide customized styling that will layer on top of the variant rules\n */\n styles?: IStyleFunctionOrObject;\n\n /**\n * Theme provided by HOC.\n */\n theme?: ITheme;\n\n /**\n * Is inside a multiline wrapper\n */\n isMultiline?: boolean;\n\n /**\n * Show an 'x' close button in the upper-right corner\n */\n showCloseButton?: boolean;\n\n /**\n * Other top buttons that will show up next to the close button\n */\n topButtonsProps?: IButtonProps[];\n\n /**\n * Optional override class name\n */\n className?: string;\n\n /**\n * Callback for when the Dialog is dismissed from the close button or light dismiss, before the animation completes.\n */\n onDismiss?: (ev?: React.MouseEvent) => any;\n\n /**\n * The Id for subText container\n */\n subTextId?: string;\n\n /**\n * The subtext to display in the dialog\n */\n subText?: string;\n\n /**\n * The Id for title container\n *\n * @deprecated use the `id` attribute in `titleProps` instead.\n */\n titleId?: string;\n\n /**\n * The title text to display at the top of the dialog.\n */\n title?: string | JSX.Element;\n\n /**\n * The props for title container.\n */\n titleProps?: React.HTMLAttributes;\n\n /**\n * Responsive mode passed in from decorator.\n */\n responsiveMode?: ResponsiveMode;\n\n /**\n * Label to be passed to to aria-label of close button\n * @defaultvalue Close\n */\n closeButtonAriaLabel?: string;\n\n /**\n * The type of Dialog to display.\n * @defaultvalue DialogType.normal\n */\n type?: DialogType;\n\n /**\n * The classname for when the header is draggable\n */\n draggableHeaderClassName?: string;\n}\n\n/**\n * {@docCategory Dialog}\n */\nexport enum DialogType {\n /** Standard dialog */\n normal = 0,\n /** Dialog with large header banner */\n largeHeader = 1,\n /** Dialog with an 'x' close button in the upper-right corner */\n close = 2,\n}\n\n/**\n * {@docCategory Dialog}\n */\nexport interface IDialogContentStyleProps {\n /**\n * Accept theme prop.\n */\n theme: ITheme;\n\n /**\n * Accept custom classNames\n */\n className?: string;\n\n isLargeHeader?: boolean;\n isClose?: boolean;\n hidden?: boolean;\n\n /**\n * Is inside a multiline wrapper\n */\n isMultiline?: boolean;\n\n /**\n * The classname for when the header is draggable\n */\n draggableHeaderClassName?: string;\n}\n\n/**\n * {@docCategory Dialog}\n */\nexport interface IDialogContentStyles {\n /**\n * Style for the content element.\n */\n content: IStyle;\n subText: IStyle;\n header: IStyle;\n button: IStyle;\n inner: IStyle;\n innerContent: IStyle;\n title: IStyle;\n topButton: IStyle;\n}\n","import { getParent } from './getParent';\n/**\n * Determines whether or not a parent element contains a given child element.\n * If `allowVirtualParents` is true, this method may return `true` if the child\n * has the parent in its virtual element hierarchy.\n *\n * @public\n */\nexport function elementContains(\n parent: HTMLElement | null,\n child: HTMLElement | null,\n allowVirtualParents: boolean = true,\n): boolean {\n let isContained = false;\n\n if (parent && child) {\n if (allowVirtualParents) {\n if (parent === child) {\n isContained = true;\n } else {\n isContained = false;\n\n while (child) {\n const nextParent: HTMLElement | null = getParent(child);\n\n if (nextParent === parent) {\n isContained = true;\n break;\n }\n\n child = nextParent;\n }\n }\n } else if (parent.contains) {\n isContained = parent.contains(child);\n }\n }\n\n return isContained;\n}\n","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export let _isSSR = false;\n\n/**\n * Helper to set ssr mode to simulate no window object returned from getWindow helper.\n *\n * @public\n */\nexport function setSSR(isEnabled: boolean): void {\n _isSSR = isEnabled;\n}\n","import { HighContrastSelector, concatStyleSets, getFocusStyle, getHighContrastNoAdjustStyle } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nimport type { IButtonStyles } from '../Button.types';\nimport type { ITheme, IStyle } from '../../../Styling';\n\nexport const getStyles = memoizeFunction(\n (theme: ITheme, customStyles?: IButtonStyles): IButtonStyles => {\n const { effects, palette, semanticColors } = theme;\n\n const buttonHighContrastFocus = {\n left: -2,\n top: -2,\n bottom: -2,\n right: -2,\n border: 'none',\n };\n\n const splitButtonDividerBaseStyles: IStyle = {\n position: 'absolute',\n width: 1,\n right: 31,\n top: 8,\n bottom: 8,\n };\n\n const splitButtonStyles: IButtonStyles = {\n splitButtonContainer: [\n getFocusStyle(theme, { highContrastStyle: buttonHighContrastFocus, inset: 2 }),\n {\n display: 'inline-flex',\n selectors: {\n '.ms-Button--default': {\n borderTopRightRadius: '0',\n borderBottomRightRadius: '0',\n borderRight: 'none',\n flexGrow: '1',\n },\n '.ms-Button--primary': {\n borderTopRightRadius: '0',\n borderBottomRightRadius: '0',\n border: 'none',\n flexGrow: '1',\n\n selectors: {\n [HighContrastSelector]: {\n color: 'WindowText',\n backgroundColor: 'Window',\n border: '1px solid WindowText',\n borderRightWidth: '0',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n '.ms-Button--primary + .ms-Button': {\n border: 'none',\n selectors: {\n [HighContrastSelector]: {\n border: '1px solid WindowText',\n borderLeftWidth: '0',\n },\n },\n },\n },\n },\n ],\n splitButtonContainerHovered: {\n selectors: {\n '.ms-Button--primary': {\n selectors: {\n [HighContrastSelector]: {\n color: 'Window',\n backgroundColor: 'Highlight',\n },\n },\n },\n '.ms-Button.is-disabled': {\n color: semanticColors.buttonTextDisabled,\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n borderColor: 'GrayText',\n backgroundColor: 'Window',\n },\n },\n },\n },\n },\n splitButtonContainerChecked: {\n selectors: {\n '.ms-Button--primary': {\n selectors: {\n [HighContrastSelector]: {\n color: 'Window',\n backgroundColor: 'WindowText',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n },\n },\n splitButtonContainerCheckedHovered: {\n selectors: {\n '.ms-Button--primary': {\n selectors: {\n [HighContrastSelector]: {\n color: 'Window',\n backgroundColor: 'WindowText',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n },\n },\n splitButtonContainerFocused: {\n outline: 'none!important',\n },\n splitButtonMenuButton: {\n padding: 6,\n height: 'auto',\n boxSizing: 'border-box',\n borderRadius: 0,\n borderTopRightRadius: effects.roundedCorner2,\n borderBottomRightRadius: effects.roundedCorner2,\n border: `1px solid ${palette.neutralSecondaryAlt}`,\n borderLeft: 'none',\n outline: 'transparent',\n userSelect: 'none',\n display: 'inline-block',\n textDecoration: 'none',\n textAlign: 'center',\n cursor: 'pointer',\n verticalAlign: 'top',\n width: 32,\n marginLeft: -1,\n marginTop: 0,\n marginRight: 0,\n marginBottom: 0,\n [HighContrastSelector]: {\n '.ms-Button-menuIcon': {\n color: 'WindowText',\n },\n },\n },\n splitButtonDivider: {\n ...splitButtonDividerBaseStyles,\n selectors: {\n [HighContrastSelector]: {\n backgroundColor: 'WindowText',\n },\n },\n },\n splitButtonDividerDisabled: {\n ...splitButtonDividerBaseStyles,\n selectors: {\n [HighContrastSelector]: {\n backgroundColor: 'GrayText',\n },\n },\n },\n splitButtonMenuButtonDisabled: {\n pointerEvents: 'none',\n border: 'none',\n selectors: {\n ':hover': {\n cursor: 'default',\n },\n\n '.ms-Button--primary': {\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n borderColor: 'GrayText',\n backgroundColor: 'Window',\n },\n },\n },\n '.ms-Button-menuIcon': {\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n },\n },\n },\n [HighContrastSelector]: {\n color: 'GrayText',\n border: '1px solid GrayText',\n backgroundColor: 'Window',\n },\n },\n },\n\n splitButtonFlexContainer: {\n display: 'flex',\n height: '100%',\n flexWrap: 'nowrap',\n justifyContent: 'center',\n alignItems: 'center',\n },\n\n splitButtonContainerDisabled: {\n outline: 'none',\n border: 'none',\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n borderColor: 'GrayText',\n backgroundColor: 'Window',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n splitButtonMenuFocused: {\n ...getFocusStyle(theme, { highContrastStyle: buttonHighContrastFocus, inset: 2 }),\n },\n };\n\n return concatStyleSets(splitButtonStyles, customStyles)!;\n },\n);\n","import * as React from 'react';\nimport { Autofill } from '../../Autofill';\nimport type { IPickerItemProps } from './PickerItem.types';\nimport type { IRefObject, IStyleFunctionOrObject } from '../../Utilities';\nimport type { ISuggestionModel, ISuggestionsProps } from './Suggestions/Suggestions.types';\nimport type { ICalloutProps } from '../../Callout';\nimport type { ITheme, IStyle } from '../../Styling';\nimport type { ISuggestionItemProps } from '../pickers/Suggestions/SuggestionsItem.types';\nimport { IIconProps } from '../Icon/Icon.types';\n\n/**\n * BasePicker component.\n * {@docCategory Pickers}\n */\nexport interface IBasePicker {\n /** Gets the current value of the input. */\n items: T[] | undefined;\n\n /** Sets focus to the focus zone. */\n focus: () => void;\n\n /** Set focus to the input */\n focusInput: () => void;\n\n /**\n * When called, will take the currently selected suggestion and complete it.\n * If called with forceComplete true, it will attempt to force the current suggestion\n * to complete, must provide both createGenericSuggestion, so the text can be turned into\n * an object in the right shape, and onValidateInput, so the object knows if it's correct or not.\n */\n completeSuggestion: (forceComplete?: boolean) => void;\n}\n\n/**\n * Type T is the type of the item that is displayed\n * and searched for by the picker. For example, if the picker is\n * displaying persona's then type T could either be of Persona or IPersona props\n * {@docCategory Pickers}\n */\n// eslint-disable-next-line deprecation/deprecation\nexport interface IBasePickerProps extends React.Props {\n /**\n * Optional callback to access the IBasePicker interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject>;\n\n /**\n * Function that specifies how the selected item will appear.\n */\n onRenderItem?: (props: IPickerItemProps) => JSX.Element;\n\n /**\n * Function that specifies how an individual suggestion item will appear.\n */\n onRenderSuggestionsItem?: (props: T, itemProps: ISuggestionItemProps) => JSX.Element;\n\n /**\n * A callback for what should happen when a person types text into the input.\n * Returns the already selected items so the resolver can filter them out.\n * If used in conjunction with resolveDelay this will only kick off after the delay throttle.\n */\n onResolveSuggestions: (filter: string, selectedItems?: T[]) => T[] | PromiseLike;\n\n /**\n * The delay time in ms before resolving suggestions, which is kicked off when input has been changed.\n * e.g. If a second input change happens within the resolveDelay time, the timer will start over.\n * Only until after the timer completes will onResolveSuggestions be called.\n */\n resolveDelay?: number;\n\n /**\n * A callback for what should happen when a user clicks within the input area.\n * @deprecated Please use `onEmptyResolveSuggestions` instead, as the suggestions aren't about\n * setting focus as they are about resolving suggestions when there is no input.\n */\n onEmptyInputFocus?: (selectedItems?: T[]) => T[] | PromiseLike;\n\n /**\n * A callback for what should happen when suggestions are shown without\n * input provided.\n * Returns the already selected items so the resolver can filter them out.\n * If used in conjunction with resolveDelay this will only kick off after the delay throttle.\n */\n onEmptyResolveSuggestions?: (selectedItems?: T[]) => T[] | PromiseLike;\n\n /**\n * Initial items that have already been selected and should appear in the people picker.\n */\n defaultSelectedItems?: T[];\n\n /**\n * A callback for when the selected list of items changes.\n */\n onChange?: (items?: T[]) => void;\n\n /**\n * A callback for when the user put focus on the picker\n * @deprecated Use `inputProps.onFocus` instead\n */\n onFocus?: React.FocusEventHandler;\n\n /**\n * A callback for when the user moves the focus away from the picker\n */\n onBlur?: React.FocusEventHandler;\n\n /**\n * A callback to get text from an item. Used to autofill text in the pickers.\n */\n getTextFromItem?: (item: T, currentValue?: string) => string;\n\n /**\n * A callback that gets the rest of the results when a user clicks get more results.\n */\n onGetMoreResults?: (filter: string, selectedItems?: T[]) => T[] | PromiseLike;\n\n /**\n * ClassName for the picker.\n */\n className?: string;\n\n /**\n * The properties that will get passed to the Suggestions component.\n */\n pickerSuggestionsProps?: IBasePickerSuggestionsProps;\n\n /**\n * The properties that will get passed to the Callout component.\n */\n pickerCalloutProps?: ICalloutProps;\n\n /**\n * AutoFill input native props\n * @defaultvalue undefined\n */\n inputProps?: IInputProps;\n\n /**\n * A callback for when an item is removed from the suggestion list\n */\n onRemoveSuggestion?: (item: T) => void;\n\n /**\n * A function used to validate if raw text entered into the well can be added into the selected items list\n */\n onValidateInput?: (input: string) => ValidationState;\n\n /**\n * The text to display while searching for more results in a limited suggestions list\n */\n searchingText?: ((props: { input: string }) => string) | string;\n\n /**\n * Flag for disabling the picker.\n * @defaultvalue false\n */\n disabled?: boolean;\n\n /**\n * Restrict the amount of selectable items.\n * @defaultvalue undefined\n */\n itemLimit?: number;\n\n /**\n * Function that specifies how arbitrary text entered into the well is handled.\n */\n createGenericItem?: (input: string, ValidationState: ValidationState) => ISuggestionModel | T;\n\n /**\n * Aria label for the \"X\" button in the selected item component.\n * @defaultvalue ''\n */\n removeButtonAriaLabel?: string;\n\n /**\n * The text that will be announced when a suggestion is removed. A default value is only provided for English.\n * @default 'removed \\{0\\}'\n */\n suggestionRemovedText?: string;\n\n /**\n * Optional aria-label that will be placed on the element that has the role \"combobox\"\n * attached. Additionally aria-labelled by will get added to the supporting input element contained\n * with in the combobox container\n */\n ['aria-label']?: string;\n\n /**\n * A callback to process a selection after the user selects something from the picker. If the callback returns null,\n * the item will not be added to the picker.\n */\n onItemSelected?: (selectedItem?: T) => T | PromiseLike | null;\n\n /**\n * The items that the base picker should currently display as selected.\n * If this is provided then the picker will act as a controlled component.\n */\n selectedItems?: T[];\n\n /**\n * Aria label for the displayed selection. A good value would be something like \"Selected Contacts\".\n * @defaultvalue ''\n */\n selectionAriaLabel?: string;\n\n /**\n * Override the role used for the element containing selected items.\n * Update this if onRenderItem does not return elements with role=\"listitem\".\n * A good alternative would be 'group'.\n * @defaultvalue 'list'\n */\n selectionRole?: string;\n\n /**\n * A callback used to modify the input string.\n */\n onInputChange?: (input: string) => string;\n\n /**\n * A callback to override the default behavior of adding the selected suggestion on dismiss. If it returns true or\n * nothing, the selected item will be added on dismiss. If false, the selected item will not be added on dismiss.\n *\n */\n onDismiss?: (ev?: any, selectedItem?: T) => boolean | void;\n\n /**\n * Adds an additional alert for the currently selected suggestion. This prop should be set to true for IE11 and below,\n * as it enables proper screen reader behavior for each suggestion (since aria-activedescendant does not work\n * with IE11). It should not be set for modern browsers (Edge, Chrome).\n * @defaultvalue false\n */\n enableSelectedSuggestionAlert?: boolean;\n\n /**\n * Call to provide customized styling that will layer on top of the variant rules.\n */\n styles?: IStyleFunctionOrObject;\n\n /**\n * Theme provided by styled() function.\n */\n theme?: ITheme;\n\n /**\n * Props for the icon used in the item's remove button.\n * @defaultvalue `{ iconName:'Cancel' }`\n */\n removeButtonIconProps?: IIconProps;\n}\n\n/**\n * Subset of picker options that may be legally passed through a picker to its\n * internal Suggestions component.\n * {@docCategory Pickers}\n */\nexport interface IBasePickerSuggestionsProps\n extends Pick<\n ISuggestionsProps,\n | 'onRenderNoResultFound'\n | 'suggestionsHeaderText'\n | 'mostRecentlyUsedHeaderText'\n | 'noResultsFoundText'\n | 'className'\n | 'suggestionsClassName'\n | 'suggestionsItemClassName'\n | 'searchForMoreIcon'\n | 'searchForMoreText'\n | 'forceResolveText'\n | 'loadingText'\n | 'searchingText'\n | 'resultsFooterFull'\n | 'resultsFooter'\n | 'resultsMaximumNumber'\n | 'showRemoveButtons'\n | 'suggestionsAvailableAlertText'\n | 'suggestionsContainerAriaLabel'\n | 'showForceResolve'\n | 'removeButtonIconProps'\n > {}\n\n/**\n * Validation state of the user's input.\n * {@docCategory Pickers}\n */\nexport enum ValidationState {\n /** User input is valid. */\n valid,\n\n /** User input could be valid or invalid, its state is not known yet. */\n warning,\n\n /** User input is invalid. */\n invalid,\n}\n\n/**\n * Pickers' input props interface\n * {@docCategory Pickers}\n */\nexport interface IInputProps extends React.InputHTMLAttributes {\n /**\n * Screen reader label to apply to an input element.\n */\n 'aria-label'?: string;\n\n /**\n * The default value to be visible when the autofill first created.\n * This is different than placeholder text because the placeholder text will disappear and re-appear. This\n * text persists until deleted or changed.\n */\n defaultVisibleValue?: string;\n}\n\n/**\n * The props needed to construct styles.\n * {@docCategory Pickers}\n */\nexport type IBasePickerStyleProps = Pick, 'theme' | 'className' | 'disabled'> & {\n /** Whether text style area is focused */\n isFocused?: boolean;\n\n /** Optional pickerInput className */\n inputClassName?: string;\n};\n\n/**\n * Represents the stylable areas of the control.\n * {@docCategory Pickers}\n */\nexport interface IBasePickerStyles {\n /** Root element of any picker extending from BasePicker (wraps all the elements). */\n root: IStyle;\n\n /**\n * Refers to the elements already selected (picked) wrapped by `itemsWrapper` along with the input to type\n * a new selection.\n */\n text: IStyle;\n\n /** Refers to the items already selected (picked). */\n itemsWrapper: IStyle;\n\n /** Refers to the input were to type new selections (picks). */\n input: IStyle;\n\n /** Refers to helper element used for accessibility tools (hidden from view on screen). */\n screenReaderText: IStyle;\n}\n","import {\n getFocusStyle,\n focusClear,\n getGlobalClassNames,\n HighContrastSelector,\n hiddenContentStyle,\n getHighContrastNoAdjustStyle,\n} from '../../Styling';\nimport { getRTL, IsFocusVisibleClassName } from '../../Utilities';\nimport { DEFAULT_CELL_STYLE_PROPS } from './DetailsRow.styles';\n// For every group level there is a GroupSpacer added. Importing this const to have the source value in one place.\nimport { SPACER_WIDTH as GROUP_EXPANDER_WIDTH } from '../GroupedList/GroupSpacer';\nimport type { IDetailsHeaderStyleProps, IDetailsHeaderStyles } from './DetailsHeader.types';\nimport type { IStyle, ITheme } from '../../Styling';\nimport type { ICellStyleProps } from './DetailsRow.types';\n\nconst GlobalClassNames = {\n tooltipHost: 'ms-TooltipHost',\n root: 'ms-DetailsHeader',\n cell: 'ms-DetailsHeader-cell',\n cellIsCheck: 'ms-DetailsHeader-cellIsCheck',\n collapseButton: 'ms-DetailsHeader-collapseButton',\n isCollapsed: 'is-collapsed',\n isAllSelected: 'is-allSelected',\n isSelectAllHidden: 'is-selectAllHidden',\n isResizingColumn: 'is-resizingColumn',\n cellSizer: 'ms-DetailsHeader-cellSizer',\n isResizing: 'is-resizing',\n dropHintCircleStyle: 'ms-DetailsHeader-dropHintCircleStyle',\n dropHintCaretStyle: 'ms-DetailsHeader-dropHintCaretStyle',\n dropHintLineStyle: 'ms-DetailsHeader-dropHintLineStyle',\n cellTitle: 'ms-DetailsHeader-cellTitle',\n cellName: 'ms-DetailsHeader-cellName',\n filterChevron: 'ms-DetailsHeader-filterChevron',\n gripperBarVertical: 'ms-DetailsColumn-gripperBarVertical',\n checkTooltip: 'ms-DetailsHeader-checkTooltip',\n check: 'ms-DetailsHeader-check',\n};\n\nexport const HEADER_HEIGHT = 42;\n\nexport const getCellStyles = (props: { theme: ITheme; cellStyleProps?: ICellStyleProps }): IStyle => {\n const { theme, cellStyleProps = DEFAULT_CELL_STYLE_PROPS } = props;\n const { semanticColors } = theme;\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n return [\n classNames.cell,\n getFocusStyle(theme),\n {\n color: semanticColors.bodyText,\n position: 'relative',\n display: 'inline-block',\n boxSizing: 'border-box',\n padding: `0 ${cellStyleProps.cellRightPadding}px 0 ${cellStyleProps.cellLeftPadding}px`,\n lineHeight: 'inherit',\n margin: '0',\n height: HEADER_HEIGHT,\n verticalAlign: 'top',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n textAlign: 'left',\n },\n ];\n};\n\nexport const getDetailsHeaderStyles = (props: IDetailsHeaderStyleProps): IDetailsHeaderStyles => {\n const {\n theme,\n className,\n isAllSelected,\n isResizingColumn,\n isSizing,\n isAllCollapsed,\n cellStyleProps = DEFAULT_CELL_STYLE_PROPS,\n } = props;\n\n const { semanticColors, palette, fonts } = theme;\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n const colors = {\n iconForegroundColor: semanticColors.bodySubtext,\n headerForegroundColor: semanticColors.bodyText,\n headerBackgroundColor: semanticColors.bodyBackground,\n resizerColor: palette.neutralTertiaryAlt,\n };\n\n const cellSizerFadeInStyles: IStyle = {\n opacity: 1,\n transition: 'opacity 0.3s linear',\n };\n\n const cellStyles = getCellStyles(props);\n\n return {\n root: [\n classNames.root,\n fonts.small,\n {\n display: 'inline-block',\n background: colors.headerBackgroundColor,\n position: 'relative',\n minWidth: '100%',\n verticalAlign: 'top',\n height: HEADER_HEIGHT,\n lineHeight: HEADER_HEIGHT,\n whiteSpace: 'nowrap',\n boxSizing: 'content-box',\n paddingBottom: '1px',\n paddingTop: '16px',\n borderBottom: `1px solid ${semanticColors.bodyDivider}`,\n cursor: 'default',\n userSelect: 'none',\n selectors: {\n [`&:hover .${classNames.check}`]: {\n opacity: 1,\n },\n [`& .${classNames.tooltipHost} .${classNames.checkTooltip}`]: {\n display: 'block',\n },\n },\n },\n isAllSelected && classNames.isAllSelected,\n isResizingColumn && classNames.isResizingColumn,\n className,\n ],\n\n check: [\n classNames.check,\n {\n height: HEADER_HEIGHT,\n },\n {\n selectors: {\n [`.${IsFocusVisibleClassName} &:focus`]: {\n opacity: 1,\n },\n },\n },\n ],\n\n cellWrapperPadded: {\n paddingRight: cellStyleProps.cellExtraRightPadding + cellStyleProps.cellRightPadding,\n },\n\n cellIsCheck: [\n cellStyles,\n classNames.cellIsCheck,\n {\n position: 'relative',\n padding: 0,\n margin: 0,\n display: 'inline-flex',\n alignItems: 'center',\n border: 'none',\n },\n isAllSelected && {\n opacity: 1,\n },\n ],\n\n cellIsGroupExpander: [\n cellStyles,\n {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n fontSize: fonts.small.fontSize,\n padding: 0,\n border: 'none',\n width: GROUP_EXPANDER_WIDTH, // align with GroupedList's first expandIcon cell width.\n color: palette.neutralSecondary,\n selectors: {\n ':hover': {\n backgroundColor: palette.neutralLighter,\n },\n ':active': {\n backgroundColor: palette.neutralLight,\n },\n },\n },\n ],\n\n cellIsActionable: {\n selectors: {\n ':hover': {\n color: semanticColors.bodyText,\n background: semanticColors.listHeaderBackgroundHovered,\n },\n ':active': {\n background: semanticColors.listHeaderBackgroundPressed,\n },\n },\n },\n cellIsEmpty: {\n textOverflow: 'clip',\n },\n\n cellSizer: [\n classNames.cellSizer,\n focusClear(),\n {\n display: 'inline-block',\n position: 'relative',\n cursor: 'ew-resize',\n bottom: 0,\n top: 0,\n overflow: 'hidden',\n height: 'inherit',\n background: 'transparent',\n zIndex: 1,\n width: 16,\n selectors: {\n ':after': {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n bottom: 0,\n width: 1,\n background: colors.resizerColor,\n opacity: 0,\n left: '50%',\n },\n ':focus:after': cellSizerFadeInStyles,\n ':hover:after': cellSizerFadeInStyles,\n [`&.${classNames.isResizing}:after`]: [\n cellSizerFadeInStyles,\n {\n boxShadow: '0 0 5px 0 rgba(0, 0, 0, 0.4)',\n },\n ],\n },\n },\n ],\n\n cellIsResizing: classNames.isResizing,\n\n cellSizerStart: {\n margin: '0 -8px',\n },\n\n cellSizerEnd: {\n margin: 0,\n marginLeft: -16,\n },\n\n collapseButton: [\n classNames.collapseButton,\n {\n transformOrigin: '50% 50%',\n transition: 'transform .1s linear',\n },\n isAllCollapsed\n ? [\n classNames.isCollapsed,\n {\n transform: 'rotate(0deg)',\n },\n ]\n : {\n transform: getRTL(theme) ? 'rotate(-90deg)' : 'rotate(90deg)',\n },\n ],\n\n checkTooltip: classNames.checkTooltip,\n\n sizingOverlay: isSizing && {\n position: 'absolute',\n left: 0,\n top: 0,\n right: 0,\n bottom: 0,\n cursor: 'ew-resize',\n background: 'rgba(255, 255, 255, 0)',\n selectors: {\n [HighContrastSelector]: {\n background: 'transparent',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n\n accessibleLabel: hiddenContentStyle,\n\n dropHintCircleStyle: [\n classNames.dropHintCircleStyle,\n {\n display: 'inline-block',\n visibility: 'hidden',\n position: 'absolute',\n bottom: 0,\n height: 9,\n width: 9,\n borderRadius: '50%',\n marginLeft: -5,\n top: 34,\n overflow: 'visible',\n zIndex: 10,\n border: `1px solid ${palette.themePrimary}`,\n background: palette.white,\n },\n ],\n\n dropHintCaretStyle: [\n classNames.dropHintCaretStyle,\n {\n display: 'none',\n position: 'absolute',\n top: -28,\n left: -6.5,\n fontSize: fonts.medium.fontSize,\n color: palette.themePrimary,\n overflow: 'visible',\n zIndex: 10,\n },\n ],\n\n dropHintLineStyle: [\n classNames.dropHintLineStyle,\n {\n display: 'none',\n position: 'absolute',\n bottom: 0,\n top: 0,\n overflow: 'hidden',\n height: 42,\n width: 1,\n background: palette.themePrimary,\n zIndex: 10,\n },\n ],\n\n dropHintStyle: {\n display: 'inline-block',\n position: 'absolute',\n },\n };\n};\n","import { getWindow } from './dom/getWindow';\n\n/**\n * Fetches an item from session storage without throwing an exception\n * @param key The key of the item to fetch from session storage\n */\nexport function getItem(key: string): string | null {\n let result = null;\n try {\n const win = getWindow();\n result = win ? win.sessionStorage.getItem(key) : null;\n } catch (e) {\n /* Eat the exception */\n }\n return result;\n}\n\n/**\n * Inserts an item into session storage without throwing an exception\n * @param key The key of the item to add to session storage\n * @param data The data to put into session storage\n */\nexport function setItem(key: string, data: string): void {\n try {\n getWindow()?.sessionStorage.setItem(key, data);\n } catch (e) {\n /* Eat the exception */\n }\n}\n","/*!\n * cookie\n * Copyright(c) 2012-2014 Roman Shtylman\n * Copyright(c) 2015 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module exports.\n * @public\n */\n\nexports.parse = parse;\nexports.serialize = serialize;\n\n/**\n * Module variables.\n * @private\n */\n\nvar decode = decodeURIComponent;\nvar encode = encodeURIComponent;\n\n/**\n * RegExp to match field-content in RFC 7230 sec 3.2\n *\n * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]\n * field-vchar = VCHAR / obs-text\n * obs-text = %x80-FF\n */\n\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\n\n/**\n * Parse a cookie header.\n *\n * Parse the given cookie header string into an object\n * The object has the various cookies as keys(names) => values\n *\n * @param {string} str\n * @param {object} [options]\n * @return {object}\n * @public\n */\n\nfunction parse(str, options) {\n if (typeof str !== 'string') {\n throw new TypeError('argument str must be a string');\n }\n\n var obj = {}\n var opt = options || {};\n var pairs = str.split(';')\n var dec = opt.decode || decode;\n\n for (var i = 0; i < pairs.length; i++) {\n var pair = pairs[i];\n var index = pair.indexOf('=')\n\n // skip things that don't look like key=value\n if (index < 0) {\n continue;\n }\n\n var key = pair.substring(0, index).trim()\n\n // only assign once\n if (undefined == obj[key]) {\n var val = pair.substring(index + 1, pair.length).trim()\n\n // quoted values\n if (val[0] === '\"') {\n val = val.slice(1, -1)\n }\n\n obj[key] = tryDecode(val, dec);\n }\n }\n\n return obj;\n}\n\n/**\n * Serialize data into a cookie header.\n *\n * Serialize the a name value pair into a cookie string suitable for\n * http headers. An optional options object specified cookie parameters.\n *\n * serialize('foo', 'bar', { httpOnly: true })\n * => \"foo=bar; httpOnly\"\n *\n * @param {string} name\n * @param {string} val\n * @param {object} [options]\n * @return {string}\n * @public\n */\n\nfunction serialize(name, val, options) {\n var opt = options || {};\n var enc = opt.encode || encode;\n\n if (typeof enc !== 'function') {\n throw new TypeError('option encode is invalid');\n }\n\n if (!fieldContentRegExp.test(name)) {\n throw new TypeError('argument name is invalid');\n }\n\n var value = enc(val);\n\n if (value && !fieldContentRegExp.test(value)) {\n throw new TypeError('argument val is invalid');\n }\n\n var str = name + '=' + value;\n\n if (null != opt.maxAge) {\n var maxAge = opt.maxAge - 0;\n\n if (isNaN(maxAge) || !isFinite(maxAge)) {\n throw new TypeError('option maxAge is invalid')\n }\n\n str += '; Max-Age=' + Math.floor(maxAge);\n }\n\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n\n str += '; Domain=' + opt.domain;\n }\n\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n\n str += '; Path=' + opt.path;\n }\n\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n\n str += '; Expires=' + opt.expires.toUTCString();\n }\n\n if (opt.httpOnly) {\n str += '; HttpOnly';\n }\n\n if (opt.secure) {\n str += '; Secure';\n }\n\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string'\n ? opt.sameSite.toLowerCase() : opt.sameSite;\n\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n case 'lax':\n str += '; SameSite=Lax';\n break;\n case 'strict':\n str += '; SameSite=Strict';\n break;\n case 'none':\n str += '; SameSite=None';\n break;\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n\n return str;\n}\n\n/**\n * Try decoding a string using a decoding function.\n *\n * @param {string} str\n * @param {function} decode\n * @private\n */\n\nfunction tryDecode(str, decode) {\n try {\n return decode(str);\n } catch (e) {\n return str;\n }\n}\n","import {\n getGlobalClassNames,\n getInputFocusStyle,\n getPlaceholderStyles,\n hiddenContentStyle,\n HighContrastSelector,\n} from '../../Styling';\nimport type { IBasePickerStyleProps, IBasePickerStyles } from './BasePicker.types';\nimport type { IStyle } from '../../Styling';\n\nconst GlobalClassNames = {\n root: 'ms-BasePicker',\n text: 'ms-BasePicker-text',\n itemsWrapper: 'ms-BasePicker-itemsWrapper',\n input: 'ms-BasePicker-input',\n};\n\nexport function getStyles(props: IBasePickerStyleProps): IBasePickerStyles {\n const { className, theme, isFocused, inputClassName, disabled } = props;\n\n if (!theme) {\n throw new Error('theme is undefined or null in base BasePicker getStyles function.');\n }\n const { semanticColors, effects, fonts } = theme;\n const { inputBorder, inputBorderHovered, inputFocusBorderAlt } = semanticColors;\n\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n // placeholder style constants\n const placeholderStyles: IStyle = [\n fonts.medium,\n {\n color: semanticColors.inputPlaceholderText,\n opacity: 1,\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n },\n },\n },\n ];\n\n const disabledPlaceholderStyles: IStyle = {\n color: semanticColors.disabledText,\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n },\n },\n };\n\n // The following lines are to create a semi-transparent color overlay for the disabled state with designer's approval.\n // @todo: investigate the performance cost of the calculation below and apply if negligible.\n // Replacing with a static color for now.\n // const rgbColor: IRGB | undefined = cssColor(palette.neutralQuaternaryAlt);\n // const disabledOverlayColor = rgbColor ? `rgba(${rgbColor.r}, ${rgbColor.g}, ${rgbColor.b}, 0.29)` : 'transparent';\n const disabledOverlayColor = 'rgba(218, 218, 218, 0.29)';\n\n return {\n root: [classNames.root, className],\n text: [\n classNames.text,\n {\n display: 'flex',\n position: 'relative',\n flexWrap: 'wrap',\n alignItems: 'center',\n boxSizing: 'border-box',\n minWidth: 180,\n minHeight: 30,\n border: `1px solid ${inputBorder}`,\n borderRadius: effects.roundedCorner2,\n },\n !isFocused &&\n !disabled && {\n selectors: {\n ':hover': {\n borderColor: inputBorderHovered,\n },\n },\n },\n isFocused && !disabled && getInputFocusStyle(inputFocusBorderAlt, effects.roundedCorner2),\n disabled && {\n borderColor: disabledOverlayColor,\n selectors: {\n ':after': {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n background: disabledOverlayColor,\n },\n [HighContrastSelector]: {\n borderColor: 'GrayText',\n selectors: {\n ':after': {\n background: 'none',\n },\n },\n },\n },\n },\n ],\n itemsWrapper: [\n classNames.itemsWrapper,\n {\n display: 'flex',\n flexWrap: 'wrap',\n maxWidth: '100%',\n },\n ],\n input: [\n classNames.input,\n fonts.medium,\n {\n height: 30,\n border: 'none',\n flexGrow: 1,\n outline: 'none',\n padding: '0 6px 0',\n alignSelf: 'flex-end',\n borderRadius: effects.roundedCorner2,\n backgroundColor: 'transparent',\n color: semanticColors.inputText,\n selectors: {\n '::-ms-clear': {\n display: 'none',\n },\n },\n },\n getPlaceholderStyles(placeholderStyles),\n disabled && getPlaceholderStyles(disabledPlaceholderStyles),\n inputClassName,\n ],\n screenReaderText: hiddenContentStyle,\n };\n}\n","import { getGlobalClassNames, HighContrastSelector } from '@fluentui/style-utilities';\nimport type { ILinkStyleProps, ILinkStyles } from './Link.types';\n\nexport const GlobalClassNames = {\n root: 'ms-Link',\n};\n\nexport const getStyles = (props: ILinkStyleProps): ILinkStyles => {\n const { className, isButton, isDisabled, isUnderlined, theme } = props;\n const { semanticColors } = theme;\n\n // Tokens\n const linkColor = semanticColors.link;\n const linkInteractedColor = semanticColors.linkHovered;\n const linkDisabledColor = semanticColors.disabledText;\n const focusBorderColor = semanticColors.focusBorder;\n\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n return {\n root: [\n classNames.root,\n theme.fonts.medium,\n {\n color: linkColor,\n outline: 'none',\n fontSize: 'inherit',\n fontWeight: 'inherit',\n textDecoration: isUnderlined ? 'underline' : 'none',\n\n selectors: {\n '.ms-Fabric--isFocusVisible &:focus': {\n // Can't use getFocusStyle because it doesn't support wrapping links\n // https://github.com/microsoft/fluentui/issues/4883#issuecomment-406743543\n // Using box-shadow and outline allows the focus rect to wrap links that span multiple lines\n // and helps the focus rect avoid getting clipped.\n boxShadow: `0 0 0 1px ${focusBorderColor} inset`,\n outline: `1px auto ${focusBorderColor}`,\n selectors: {\n [HighContrastSelector]: {\n outline: '1px solid WindowText',\n },\n },\n },\n [HighContrastSelector]: {\n // For IE high contrast mode\n borderBottom: 'none',\n },\n },\n },\n isButton && {\n background: 'none',\n backgroundColor: 'transparent',\n border: 'none',\n cursor: 'pointer',\n display: 'inline',\n margin: 0,\n overflow: 'inherit',\n padding: 0,\n textAlign: 'left',\n textOverflow: 'inherit',\n userSelect: 'text',\n borderBottom: '1px solid transparent', // For Firefox high contrast mode\n selectors: {\n [HighContrastSelector]: {\n color: 'LinkText',\n forcedColorAdjust: 'none',\n },\n },\n },\n !isButton && {\n selectors: {\n [HighContrastSelector]: {\n // This is mainly for MessageBar, which sets MsHighContrastAdjust: none by default\n MsHighContrastAdjust: 'auto',\n forcedColorAdjust: 'auto',\n },\n },\n },\n\n isDisabled && [\n 'is-disabled',\n {\n color: linkDisabledColor,\n cursor: 'default',\n },\n {\n selectors: {\n '&:link, &:visited': {\n pointerEvents: 'none',\n },\n },\n },\n ],\n !isDisabled && {\n selectors: {\n '&:active, &:hover, &:active:hover': {\n color: linkInteractedColor,\n textDecoration: 'underline',\n\n selectors: {\n [HighContrastSelector]: {\n color: 'LinkText',\n },\n },\n },\n '&:focus': {\n color: linkColor,\n\n selectors: {\n [HighContrastSelector]: {\n color: 'LinkText',\n },\n },\n },\n },\n },\n classNames.root,\n className,\n ],\n };\n};\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/* eslint-disable no-console */\n\nlet _warningCallback: ((message: string) => void) | undefined = undefined;\n\nexport type ISettingsMap = { [P in keyof T]?: string };\n\n/**\n * Sends a warning to console, if the api is present.\n *\n * @public\n * @param message - Warning message.\n */\nexport function warn(message: string): void {\n if (_warningCallback && process.env.NODE_ENV !== 'production') {\n _warningCallback(message);\n } else if (console && console.warn) {\n console.warn(message);\n }\n}\n\n/**\n * Configures the warning callback. Passing in undefined will reset it to use the default\n * console.warn function.\n *\n * @public\n * @param warningCallback - Callback to override the generated warnings.\n */\nexport function setWarningCallback(warningCallback?: (message: string) => void): void {\n _warningCallback = warningCallback;\n}\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import { IStyleSet, IConcatenatedStyleSet } from './IStyleSet';\nimport { IStyleBase, IStyle } from './IStyle';\nimport { IStyleFunctionOrObject } from './IStyleFunction';\nimport { ObjectOnly } from './ObjectOnly';\n\n/**\n * Combine a set of styles together (but does not register css classes).\n * @param styleSet - The first style set to be concatenated.\n */\nexport function concatStyleSets(\n styleSet: TStyleSet | false | null | undefined,\n): IConcatenatedStyleSet>;\n\n/**\n * Combine a set of styles together (but does not register css classes).\n * @param styleSet1 - The first style set to be concatenated.\n * @param styleSet2 - The second style set to be concatenated.\n */\nexport function concatStyleSets(\n styleSet1: TStyleSet1 | false | null | undefined,\n styleSet2: TStyleSet2 | false | null | undefined,\n): IConcatenatedStyleSet & ObjectOnly>;\n\n/**\n * Combine a set of styles together (but does not register css classes).\n * @param styleSet1 - The first style set to be concatenated.\n * @param styleSet2 - The second style set to be concatenated.\n * @param styleSet3 - The third style set to be concatenated.\n */\nexport function concatStyleSets(\n styleSet1: TStyleSet1 | false | null | undefined,\n styleSet2: TStyleSet2 | false | null | undefined,\n styleSet3: TStyleSet3 | false | null | undefined,\n): IConcatenatedStyleSet & ObjectOnly & ObjectOnly>;\n\n/**\n * Combine a set of styles together (but does not register css classes).\n * @param styleSet1 - The first style set to be concatenated.\n * @param styleSet2 - The second style set to be concatenated.\n * @param styleSet3 - The third style set to be concatenated.\n * @param styleSet4 - The fourth style set to be concatenated.\n */\nexport function concatStyleSets(\n styleSet1: TStyleSet1 | false | null | undefined,\n styleSet2: TStyleSet2 | false | null | undefined,\n styleSet3: TStyleSet3 | false | null | undefined,\n styleSet4: TStyleSet4 | false | null | undefined,\n): IConcatenatedStyleSet<\n ObjectOnly & ObjectOnly & ObjectOnly & ObjectOnly\n>;\n\n/**\n * Combine a set of styles together (but does not register css classes).\n * @param styleSet1 - The first style set to be concatenated.\n * @param styleSet2 - The second style set to be concatenated.\n * @param styleSet3 - The third style set to be concatenated.\n * @param styleSet4 - The fourth style set to be concatenated.\n * @param styleSet5 - The fifth set to be concatenated.\n */\nexport function concatStyleSets(\n styleSet1: TStyleSet1 | false | null | undefined,\n styleSet2: TStyleSet2 | false | null | undefined,\n styleSet3: TStyleSet3 | false | null | undefined,\n styleSet4: TStyleSet4 | false | null | undefined,\n styleSet5: TStyleSet5 | false | null | undefined,\n): IConcatenatedStyleSet<\n ObjectOnly &\n ObjectOnly &\n ObjectOnly &\n ObjectOnly &\n ObjectOnly\n>;\n\n/**\n * Combine a set of styles together (but does not register css classes).\n * @param styleSet1 - The first style set to be concatenated.\n * @param styleSet2 - The second style set to be concatenated.\n * @param styleSet3 - The third style set to be concatenated.\n * @param styleSet4 - The fourth style set to be concatenated.\n * @param styleSet5 - The fifth set to be concatenated.\n * @param styleSet6 - The sixth set to be concatenated.\n */\nexport function concatStyleSets(\n styleSet1: TStyleSet1 | false | null | undefined,\n styleSet2: TStyleSet2 | false | null | undefined,\n styleSet3: TStyleSet3 | false | null | undefined,\n styleSet4: TStyleSet4 | false | null | undefined,\n styleSet5: TStyleSet5 | false | null | undefined,\n styleSet6: TStyleSet6 | false | null | undefined,\n): IConcatenatedStyleSet<\n ObjectOnly &\n ObjectOnly &\n ObjectOnly &\n ObjectOnly &\n ObjectOnly &\n ObjectOnly\n>;\n\n/**\n * Combine a set of styles together (but does not register css classes).\n * @param styleSets - One or more stylesets to be merged (each param can also be falsy).\n */\nexport function concatStyleSets(...styleSets: (IStyleSet | false | null | undefined)[]): IConcatenatedStyleSet;\n\n/**\n * Combine a set of styles together (but does not register css classes).\n * @param styleSets - One or more stylesets to be merged (each param can also be falsy).\n */\nexport function concatStyleSets(...styleSets: (IStyleSet | false | null | undefined)[]): IConcatenatedStyleSet {\n if (styleSets && styleSets.length === 1 && styleSets[0] && !(styleSets[0] as IStyleSet).subComponentStyles) {\n return styleSets[0] as IConcatenatedStyleSet;\n }\n\n const mergedSet: IConcatenatedStyleSet = {};\n\n // We process sub component styles in two phases. First we collect them, then we combine them into 1 style function.\n const workingSubcomponentStyles: { [key: string]: Array> } = {};\n\n for (const currentSet of styleSets) {\n if (currentSet) {\n for (const prop in currentSet) {\n if (currentSet.hasOwnProperty(prop)) {\n if (prop === 'subComponentStyles' && currentSet.subComponentStyles !== undefined) {\n // subcomponent styles - style functions or objects\n\n const currentComponentStyles = currentSet.subComponentStyles;\n for (const subCompProp in currentComponentStyles) {\n if (currentComponentStyles.hasOwnProperty(subCompProp)) {\n if (workingSubcomponentStyles.hasOwnProperty(subCompProp)) {\n workingSubcomponentStyles[subCompProp].push(currentComponentStyles[subCompProp]);\n } else {\n workingSubcomponentStyles[subCompProp] = [currentComponentStyles[subCompProp]];\n }\n }\n }\n\n continue;\n }\n\n // the as any casts below is a workaround for ts 2.8.\n // todo: remove cast to any in ts 2.9.\n const mergedValue: IStyle = (mergedSet as any)[prop];\n const currentValue = (currentSet as any)[prop];\n\n if (mergedValue === undefined) {\n (mergedSet as any)[prop] = currentValue;\n } else {\n (mergedSet as any)[prop] = [\n // https://github.com/Microsoft/TypeScript/issues/25474\n ...(Array.isArray(mergedValue) ? mergedValue : [mergedValue as IStyleBase]),\n ...(Array.isArray(currentValue) ? currentValue : [currentValue as IStyleBase]),\n ];\n }\n }\n }\n }\n }\n\n if (Object.keys(workingSubcomponentStyles).length > 0) {\n mergedSet.subComponentStyles = {};\n const mergedSubStyles = mergedSet.subComponentStyles;\n\n // now we process the subcomponent styles if there are any\n for (const subCompProp in workingSubcomponentStyles) {\n if (workingSubcomponentStyles.hasOwnProperty(subCompProp)) {\n const workingSet = workingSubcomponentStyles[subCompProp];\n mergedSubStyles[subCompProp] = (styleProps: any) => {\n return concatStyleSets(\n ...workingSet.map((styleFunctionOrObject: IStyleFunctionOrObject) =>\n typeof styleFunctionOrObject === 'function' ? styleFunctionOrObject(styleProps) : styleFunctionOrObject,\n ),\n );\n };\n }\n }\n }\n\n return mergedSet;\n}\n","import { __assign } from 'tslib';\nexport const assign = __assign;\n","import * as React from 'react';\n\nimport { KeyCodes } from '../../../Utilities';\nimport type { IRefObject, IRenderFunction, IStyleFunctionOrObject } from '../../../Utilities';\nimport type { IPersonaProps } from '../../Persona/Persona.types';\nimport type { IStyle, ITheme } from '../../../Styling';\nimport type { ISpinnerStyleProps } from '../../Spinner/Spinner.types';\nimport type { ISuggestionItemProps } from './SuggestionsItem.types';\nimport { IIconProps } from '../../Icon/Icon.types';\n/**\n * Suggestions component.\n * {@docCategory Pickers}\n */\nexport interface ISuggestions {\n /** Execute the action selected. Can be SearchMore or ForceResolve actions. */\n executeSelectedAction: () => void;\n\n /** Focus on the ForceResolve action above the suggestions. If not available then focus on SearchMore action. */\n focusAboveSuggestions: () => void;\n\n /** Focus on the SearchMore action below the suggestions. If not available then focus on ForceResolve action. */\n focusBelowSuggestions: () => void;\n\n /** Focus the SearchMore action button. */\n focusSearchForMoreButton: () => void;\n\n /** Whether it has any suggested actions like ForceResolve or SearchMore. */\n hasSuggestedAction: () => boolean;\n\n /** Whether any of the suggested actions (ForceResolve or SearchMore) is selected. */\n hasSuggestedActionSelected: () => boolean;\n\n /** Returns true if the event was handled, false otherwise. */\n tryHandleKeyDown: (keyCode: number, currentSuggestionIndex: number) => boolean;\n}\n\n/**\n * Suggestions props interface. Refers to the entire container holding all the suggestions.\n * Type T is the type of the items that are displayed.\n * {@docCategory Pickers}\n */\n// eslint-disable-next-line deprecation/deprecation\nexport interface ISuggestionsProps extends React.Props {\n /**\n * Optional callback to access the ISuggestions interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject>;\n\n /**\n * How the suggestion should look in the suggestion list.\n */\n onRenderSuggestion: (props: T, suggestionItemProps: ISuggestionItemProps) => JSX.Element;\n\n /**\n * What should occur when a suggestion is clicked\n */\n onSuggestionClick: (ev?: React.MouseEvent, item?: any, index?: number) => void;\n\n /**\n * The list of Suggestions that will be displayed\n */\n suggestions: ISuggestionModel[];\n\n /**\n * How the \"no result found\" should look in the suggestion list.\n */\n onRenderNoResultFound?: IRenderFunction;\n\n /**\n * The text that appears at the top of the suggestions list.\n */\n suggestionsHeaderText?: string;\n\n /**\n * The text that should appear at the top of the most recently used box.\n */\n mostRecentlyUsedHeaderText?: string;\n\n /**\n * The icon that appears indicating to the user that they can search for more results.\n */\n searchForMoreIcon?: IIconProps;\n\n /**\n * The text that appears indicating to the user that they can search for more results.\n */\n searchForMoreText?: string;\n\n /**\n * The callback that should be called when the user attempts to get more results\n */\n onGetMoreResults?: () => void;\n\n /**\n * The text that appears indicating to the use to force resolve the input\n */\n forceResolveText?: string;\n\n /**\n * The callback that should be called to see if the force resolve command should be shown\n */\n showForceResolve?: () => boolean;\n\n /**\n * The callback that should be called when the user attempts to use the input text as as item\n */\n createGenericItem?: () => void;\n\n /**\n * The CSS className of the suggestions root.\n */\n className?: string;\n\n /**\n * The CSS className of the suggestions list\n */\n suggestionsClassName?: string;\n\n /**\n * The text that should appear if there is a search error.\n *\n * @deprecated Use noResultsFoundText instead.\n */\n searchErrorText?: string;\n\n /**\n * The text that should appear if no results are found when searching.\n */\n noResultsFoundText?: string;\n\n /**\n * The className of the suggestion item.\n */\n suggestionsItemClassName?: string;\n\n /**\n * Used to indicate whether or not the user can request more suggestions.\n * Dictates whether or not the searchForMore button is displayed.\n */\n moreSuggestionsAvailable?: boolean;\n\n /**\n * Used to indicate whether or not the suggestions are loading.\n */\n isLoading?: boolean;\n\n /**\n * Used to indicate whether or not the component is searching for more results.\n */\n isSearching?: boolean;\n\n /**\n * The text to display while the results are loading.\n */\n loadingText?: string;\n\n /**\n * The text to display while searching for more results in a limited suggestions list.\n */\n searchingText?: string;\n\n /**\n * Indicates if a short list of recent suggestions should be shown.\n */\n isMostRecentlyUsedVisible?: boolean;\n\n /**\n * Function to fire when one of the optional remove buttons on a suggestion is clicked.\n *\n * TODO (adjective-object) remove IPersonaprops before the next major version bump\n */\n onSuggestionRemove?: (ev?: React.MouseEvent, item?: T | IPersonaProps, index?: number) => void;\n\n /**\n * Indicates if the text in resultsFooter or resultsFooterFull should be shown at the end of the suggestion list.\n * @defaultvalue true\n */\n isResultsFooterVisible?: boolean;\n\n /**\n * Maximum number of suggestions to show in the full suggestion list.\n */\n resultsMaximumNumber?: number;\n\n /**\n * A renderer that adds an element at the end of the suggestions list it has more items than resultsMaximumNumber.\n */\n resultsFooterFull?: (props: ISuggestionsProps) => JSX.Element;\n\n /**\n * A renderer that adds an element at the end of the suggestions list it has fewer items than resultsMaximumNumber.\n */\n resultsFooter?: (props: ISuggestionsProps) => JSX.Element;\n\n /**\n * Indicates whether to show a button with each suggestion to remove that suggestion.\n */\n showRemoveButtons?: boolean;\n\n /**\n * Screen reader message to read when there are suggestions available.\n */\n suggestionsAvailableAlertText?: string;\n\n /**\n * A function that resets focus to the expected item in the suggestion list\n */\n refocusSuggestions?: (keyCode: KeyCodes) => void;\n\n /**\n * An ARIA label for the container that is the parent of the suggestions.\n */\n suggestionsContainerAriaLabel?: string;\n\n /**\n * An ARIA label to use for the buttons to remove individual suggestions.\n */\n removeSuggestionAriaLabel?: string;\n\n /**\n * The string that will be used as the suggestionsListId.\n * Will be used by the BasePicker to keep track of the list for aria.\n */\n suggestionsListId?: string;\n\n /** Call to provide customized styling that will layer on top of the variant rules. */\n styles?: IStyleFunctionOrObject;\n\n /** Theme provided by High-Order Component. */\n theme?: ITheme;\n\n /**\n * Props for the icon used in the item's remove button.\n * @defaultvalue `{ iconName:'Cancel' }`\n */\n removeButtonIconProps?: IIconProps;\n}\n\n/**\n * The props needed to construct Suggestions styles.\n * {@docCategory Pickers}\n */\nexport type ISuggestionsStyleProps = Required, 'theme'>> &\n Pick, 'className' | 'suggestionsClassName'> & {\n /** Whether the forceResolve actionButton is selected. */\n forceResolveButtonSelected?: boolean;\n\n /** Whether the searchForMore actionButton is selected. */\n searchForMoreButtonSelected?: boolean;\n };\n\n/**\n * Represents the stylable areas of the Suggestions.\n * {@docCategory Pickers}\n */\nexport interface ISuggestionsStyles {\n /** Root element of the suggestions outer wrapper. */\n root: IStyle;\n\n /** Refers to the suggestions container. */\n suggestionsContainer: IStyle;\n\n /** Refers to the title rendered for suggestions container header and/or footer (if provided). */\n title: IStyle;\n\n /** Refers to the 'Force resolve' actionButton. */\n forceResolveButton: IStyle;\n\n /** Refers to the 'Search for more' actionButton. */\n searchForMoreButton: IStyle;\n\n /** Refers to the text rendered when no suggestions are found. */\n noSuggestions: IStyle;\n\n /** Refers to the text displaying if more suggestions available. */\n suggestionsAvailable: IStyle;\n\n /** SubComponents (Spinner) styles. */\n subComponentStyles: ISuggestionsSubComponentStyles;\n}\n\n/**\n * Styles interface of the SubComponents rendered within PeoplePickerItemSelected.\n * {@docCategory Pickers}\n */\nexport interface ISuggestionsSubComponentStyles {\n /** Refers to the Spinner rendered within the Suggestions when searching or loading suggestions. */\n spinner: IStyleFunctionOrObject;\n}\n\n/**\n * SuggestionModel interface.\n * Type T is the type of the item that is suggested (Persona, Tag or any other custom picker).\n * {@docCategory Pickers}\n */\nexport interface ISuggestionModel {\n /** The suggested item of the type T */\n item: T;\n\n /** Whether the suggested item is selected or not. */\n selected: boolean;\n\n /** Aria-label string for each suggested item. */\n ariaLabel?: string;\n}\n\n/**\n * Enum to help identify which suggestions action button is selected.\n * {@docCategory Pickers}\n */\nexport enum SuggestionActionType {\n /** None of the actions is selected. */\n none,\n\n /** ForceResolve action is selected. */\n forceResolve,\n\n /** SearchMore action is selected. */\n searchMore,\n}\n","import * as React from 'react';\nimport { DelayedRender, classNamesFunction, getNativeProps, divProperties } from '../../Utilities';\nimport type { IAnnouncedProps, IAnnouncedStyles } from './Announced.types';\n\nconst getClassNames = classNamesFunction<{}, IAnnouncedStyles>();\n\n/**\n * {@docCategory Announced}\n */\nexport class AnnouncedBase extends React.Component {\n public static defaultProps: Partial = {\n 'aria-live': 'polite',\n };\n\n public render(): JSX.Element {\n const { message, styles, as: Root = 'div', className } = this.props;\n\n const classNames = getClassNames(styles, { className });\n\n return (\n \n \n
    {message}
    \n
    \n
    \n );\n }\n}\n","import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport { AnnouncedBase } from './Announced.base';\nimport { getStyles } from './Announced.styles';\nimport type { IAnnouncedProps, IAnnouncedStyles } from './Announced.types';\n\nexport const Announced: React.FunctionComponent = styled(\n AnnouncedBase,\n getStyles,\n);\n","import { hiddenContentStyle } from '../../Styling';\nimport type { IStyleFunction } from '../../Utilities';\nimport type { IAnnouncedStyles, IAnnouncedStyleProps } from './Announced.types';\n\nexport const getStyles: IStyleFunction = props => {\n return {\n root: props.className,\n screenReaderText: hiddenContentStyle,\n };\n};\n","/* eslint-disable */\nimport { loadStyles } from '@microsoft/load-themed-styles';\nloadStyles([{\"rawString\":\".root_8c91000a{min-width:260px}.suggestionsItem_8c91000a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;position:relative;overflow:hidden}.suggestionsItem_8c91000a:hover{background:\"},{\"theme\":\"neutralLighter\",\"defaultValue\":\"#f3f2f1\"},{\"rawString\":\"}.suggestionsItem_8c91000a:hover .closeButton_8c91000a{display:block}.suggestionsItem_8c91000a.suggestionsItemIsSuggested_8c91000a{background:\"},{\"theme\":\"neutralLight\",\"defaultValue\":\"#edebe9\"},{\"rawString\":\"}.suggestionsItem_8c91000a.suggestionsItemIsSuggested_8c91000a:hover{background:\"},{\"theme\":\"neutralTertiaryAlt\",\"defaultValue\":\"#c8c6c4\"},{\"rawString\":\"}@media screen and (-ms-high-contrast:active),screen and (forced-colors:active){.suggestionsItem_8c91000a.suggestionsItemIsSuggested_8c91000a:hover{background:Highlight;color:HighlightText}}@media screen and (-ms-high-contrast:active),screen and (forced-colors:active){.suggestionsItem_8c91000a.suggestionsItemIsSuggested_8c91000a{background:Highlight;color:HighlightText;-ms-high-contrast-adjust:none}}.suggestionsItem_8c91000a.suggestionsItemIsSuggested_8c91000a .closeButton_8c91000a:hover{background:\"},{\"theme\":\"neutralTertiary\",\"defaultValue\":\"#a19f9d\"},{\"rawString\":\";color:\"},{\"theme\":\"neutralPrimary\",\"defaultValue\":\"#323130\"},{\"rawString\":\"}@media screen and (-ms-high-contrast:active),screen and (forced-colors:active){.suggestionsItem_8c91000a.suggestionsItemIsSuggested_8c91000a .itemButton_8c91000a{color:HighlightText}}.suggestionsItem_8c91000a .closeButton_8c91000a{display:none;color:\"},{\"theme\":\"neutralSecondary\",\"defaultValue\":\"#605e5c\"},{\"rawString\":\"}.suggestionsItem_8c91000a .closeButton_8c91000a:hover{background:\"},{\"theme\":\"neutralLight\",\"defaultValue\":\"#edebe9\"},{\"rawString\":\"}.actionButton_8c91000a{background-color:transparent;border:0;cursor:pointer;margin:0;position:relative;border-top:1px solid \"},{\"theme\":\"neutralLight\",\"defaultValue\":\"#edebe9\"},{\"rawString\":\";height:40px;width:100%;font-size:12px}[dir=ltr] .actionButton_8c91000a{padding-left:8px}[dir=rtl] .actionButton_8c91000a{padding-right:8px}html[dir=ltr] .actionButton_8c91000a{text-align:left}html[dir=rtl] .actionButton_8c91000a{text-align:right}.actionButton_8c91000a:hover{background-color:\"},{\"theme\":\"neutralLight\",\"defaultValue\":\"#edebe9\"},{\"rawString\":\";cursor:pointer}.actionButton_8c91000a:active,.actionButton_8c91000a:focus{background-color:\"},{\"theme\":\"themeLight\",\"defaultValue\":\"#c7e0f4\"},{\"rawString\":\"}.actionButton_8c91000a .ms-Button-icon{font-size:16px;width:25px}.actionButton_8c91000a .ms-Button-label{margin:0 4px 0 9px}html[dir=rtl] .actionButton_8c91000a .ms-Button-label{margin:0 9px 0 4px}.buttonSelected_8c91000a{background-color:\"},{\"theme\":\"themeLight\",\"defaultValue\":\"#c7e0f4\"},{\"rawString\":\"}.suggestionsTitle_8c91000a{padding:0 12px;color:\"},{\"theme\":\"themePrimary\",\"defaultValue\":\"#0078d4\"},{\"rawString\":\";font-size:12px;line-height:40px;border-bottom:1px solid \"},{\"theme\":\"neutralLight\",\"defaultValue\":\"#edebe9\"},{\"rawString\":\"}.suggestionsContainer_8c91000a{overflow-y:auto;overflow-x:hidden;max-height:300px;border-bottom:1px solid \"},{\"theme\":\"neutralLight\",\"defaultValue\":\"#edebe9\"},{\"rawString\":\"}.suggestionsNone_8c91000a{text-align:center;color:#797775;font-size:12px;line-height:30px}.suggestionsSpinner_8c91000a{margin:5px 0;white-space:nowrap;line-height:20px;font-size:12px}html[dir=ltr] .suggestionsSpinner_8c91000a{padding-left:14px}html[dir=rtl] .suggestionsSpinner_8c91000a{padding-right:14px}html[dir=ltr] .suggestionsSpinner_8c91000a{text-align:left}html[dir=rtl] .suggestionsSpinner_8c91000a{text-align:right}.suggestionsSpinner_8c91000a .ms-Spinner-circle{display:inline-block;vertical-align:middle}.suggestionsSpinner_8c91000a .ms-Spinner-label{display:inline-block;margin:0 10px 0 16px;vertical-align:middle}html[dir=rtl] .suggestionsSpinner_8c91000a .ms-Spinner-label{margin:0 16px 0 10px}.itemButton_8c91000a.itemButton_8c91000a{width:100%;padding:0;min-width:0;height:100%}@media screen and (-ms-high-contrast:active),screen and (forced-colors:active){.itemButton_8c91000a.itemButton_8c91000a{color:WindowText}}.itemButton_8c91000a.itemButton_8c91000a:hover{color:\"},{\"theme\":\"neutralDark\",\"defaultValue\":\"#201f1e\"},{\"rawString\":\"}.closeButton_8c91000a.closeButton_8c91000a{padding:0 4px;height:auto;width:32px}@media screen and (-ms-high-contrast:active),screen and (forced-colors:active){.closeButton_8c91000a.closeButton_8c91000a{color:WindowText}}.closeButton_8c91000a.closeButton_8c91000a:hover{background:\"},{\"theme\":\"neutralTertiaryAlt\",\"defaultValue\":\"#c8c6c4\"},{\"rawString\":\";color:\"},{\"theme\":\"neutralDark\",\"defaultValue\":\"#201f1e\"},{\"rawString\":\"}.suggestionsAvailable_8c91000a{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}\"}]);\nexport const root = \"root_8c91000a\";\nexport const suggestionsItem = \"suggestionsItem_8c91000a\";\nexport const closeButton = \"closeButton_8c91000a\";\nexport const suggestionsItemIsSuggested = \"suggestionsItemIsSuggested_8c91000a\";\nexport const itemButton = \"itemButton_8c91000a\";\nexport const actionButton = \"actionButton_8c91000a\";\nexport const buttonSelected = \"buttonSelected_8c91000a\";\nexport const suggestionsTitle = \"suggestionsTitle_8c91000a\";\nexport const suggestionsContainer = \"suggestionsContainer_8c91000a\";\nexport const suggestionsNone = \"suggestionsNone_8c91000a\";\nexport const suggestionsSpinner = \"suggestionsSpinner_8c91000a\";\nexport const suggestionsAvailable = \"suggestionsAvailable_8c91000a\";","import * as React from 'react';\n\nimport { classNamesFunction, css, initializeComponentRef } from '../../../Utilities';\nimport { CommandButton, IconButton } from '../../../Button';\nimport * as stylesImport from './Suggestions.scss';\nimport type { IProcessedStyleSet } from '../../../Styling';\nimport type { ISuggestionItemProps, ISuggestionsItemStyleProps, ISuggestionsItemStyles } from './SuggestionsItem.types';\n\nconst legacyStyles: any = stylesImport;\n\nconst getClassNames = classNamesFunction();\n\n/**\n * {@docCategory Pickers}\n */\nexport class SuggestionsItem extends React.Component, {}> {\n constructor(props: ISuggestionItemProps) {\n super(props);\n\n initializeComponentRef(this);\n }\n\n public render(): JSX.Element {\n const {\n suggestionModel,\n RenderSuggestion,\n onClick,\n className,\n id,\n onRemoveItem,\n isSelectedOverride,\n removeButtonAriaLabel,\n styles,\n theme,\n removeButtonIconProps,\n } = this.props;\n\n // TODO\n // Clean this up by leaving only the first part after removing support for SASS.\n // Currently we can not remove the SASS styles from SuggestionsItem class because it\n // might be used by consumers separately from pickers extending from BasePicker\n // and have not used the new 'styles' prop. Because it's expecting a type parameter,\n // we can not use the 'styled' function without adding some helpers which can break\n // downstream consumers who did not use the new helpers.\n // We check for 'styles' prop which is going to be injected by the 'styled' HOC\n // in Suggestions when the typed SuggestionsItem class is ready to be rendered. If the\n // check passes we can use the CSS-in-JS styles. If the check fails (ex: custom picker),\n // then we just use the old SASS styles instead.\n const classNames: Partial> = styles\n ? getClassNames(styles, {\n theme: theme!,\n className,\n suggested: suggestionModel.selected || isSelectedOverride,\n })\n : {\n root: css(\n 'ms-Suggestions-item',\n legacyStyles.suggestionsItem,\n {\n ['is-suggested ' + legacyStyles.suggestionsItemIsSuggested]:\n suggestionModel.selected || isSelectedOverride,\n },\n className,\n ),\n itemButton: css('ms-Suggestions-itemButton', legacyStyles.itemButton),\n closeButton: css('ms-Suggestions-closeButton', legacyStyles.closeButton),\n };\n\n return (\n
    \n \n {RenderSuggestion(suggestionModel.item, this.props)}\n \n {this.props.showRemoveButton ? (\n \n ) : null}\n
    \n );\n }\n}\n","import * as React from 'react';\n\nimport { initializeComponentRef, KeyCodes, classNamesFunction, css, styled } from '../../../Utilities';\nimport { CommandButton } from '../../../Button';\nimport { Spinner } from '../../../Spinner';\nimport { Announced } from '../../../Announced';\nimport { SuggestionActionType } from './Suggestions.types';\nimport { SuggestionsItem } from './SuggestionsItem';\nimport { getStyles as suggestionsItemStyles } from './SuggestionsItem.styles';\nimport * as stylesImport from './Suggestions.scss';\nimport type { IStyleFunctionOrObject } from '../../../Utilities';\nimport type { IProcessedStyleSet } from '../../../Styling';\nimport type { IButton } from '../../../Button';\nimport type { ISpinnerStyleProps, ISpinnerStyles } from '../../../Spinner';\nimport type { ISuggestionsProps, ISuggestionsStyleProps, ISuggestionsStyles } from './Suggestions.types';\nimport type { ISuggestionItemProps, ISuggestionsItemStyleProps, ISuggestionsItemStyles } from './SuggestionsItem.types';\n\nconst legacyStyles: any = stylesImport;\n\nconst getClassNames = classNamesFunction();\n\nexport interface ISuggestionsState {\n selectedActionType: SuggestionActionType;\n}\n\nconst StyledSuggestionsItem = styled, ISuggestionsItemStyleProps, ISuggestionsItemStyles>(\n SuggestionsItem,\n suggestionsItemStyles,\n undefined,\n {\n scope: 'SuggestionItem',\n },\n);\n\n/**\n * {@docCategory Pickers}\n */\nexport class Suggestions extends React.Component, ISuggestionsState> {\n protected _forceResolveButton = React.createRef();\n protected _searchForMoreButton = React.createRef();\n protected _selectedElement = React.createRef();\n protected _scrollContainer = React.createRef();\n private activeSelectedElement: HTMLDivElement | null;\n private _classNames: Partial>;\n\n constructor(suggestionsProps: ISuggestionsProps) {\n super(suggestionsProps);\n\n initializeComponentRef(this);\n\n this.state = {\n selectedActionType: SuggestionActionType.none,\n };\n }\n\n public componentDidMount(): void {\n this.scrollSelected();\n this.activeSelectedElement = this._selectedElement ? this._selectedElement.current : null;\n }\n\n public componentDidUpdate(): void {\n // Only scroll to selected element if the selected element has changed. Otherwise do nothing.\n // This prevents some odd behavior where scrolling the active element out of view and clicking on a selected element\n // will trigger a focus event and not give the clicked element the click.\n if (this._selectedElement.current && this.activeSelectedElement !== this._selectedElement.current) {\n this.scrollSelected();\n this.activeSelectedElement = this._selectedElement.current;\n }\n }\n\n public render(): JSX.Element {\n const {\n forceResolveText,\n mostRecentlyUsedHeaderText,\n searchForMoreIcon,\n searchForMoreText,\n className,\n moreSuggestionsAvailable,\n noResultsFoundText,\n suggestions,\n isLoading,\n isSearching,\n loadingText,\n onRenderNoResultFound,\n searchingText,\n isMostRecentlyUsedVisible,\n resultsMaximumNumber,\n resultsFooterFull,\n resultsFooter,\n isResultsFooterVisible = true,\n suggestionsHeaderText,\n suggestionsClassName,\n theme,\n styles,\n suggestionsListId,\n suggestionsContainerAriaLabel,\n } = this.props;\n\n // TODO\n // Clean this up by leaving only the first part after removing support for SASS.\n // Currently we can not remove the SASS styles from Suggestions class because it\n // might be used by consumers separately from pickers extending from BasePicker\n // and have not used the new 'styles' prop. Because it's expecting a type parameter,\n // we can not use the 'styled' function without adding some helpers which can break\n // downstream consumers who did not use the new helpers.\n // We check for 'styles' prop which is going to be injected by the 'styled' HOC\n // in BasePicker when the typed Suggestions class is ready to be rendered. If the check\n // passes we can use the CSS-in-JS styles. If the check fails (ex: custom picker),\n // then we just use the old SASS styles instead.\n this._classNames = styles\n ? getClassNames(styles, {\n theme: theme!,\n className,\n suggestionsClassName,\n forceResolveButtonSelected: this.state.selectedActionType === SuggestionActionType.forceResolve,\n searchForMoreButtonSelected: this.state.selectedActionType === SuggestionActionType.searchMore,\n })\n : {\n root: css('ms-Suggestions', className, legacyStyles.root),\n title: css('ms-Suggestions-title', legacyStyles.suggestionsTitle),\n searchForMoreButton: css('ms-SearchMore-button', legacyStyles.actionButton, {\n ['is-selected ' + legacyStyles.buttonSelected]:\n this.state.selectedActionType === SuggestionActionType.searchMore,\n }),\n forceResolveButton: css('ms-forceResolve-button', legacyStyles.actionButton, {\n ['is-selected ' + legacyStyles.buttonSelected]:\n this.state.selectedActionType === SuggestionActionType.forceResolve,\n }),\n suggestionsAvailable: css('ms-Suggestions-suggestionsAvailable', legacyStyles.suggestionsAvailable),\n suggestionsContainer: css(\n 'ms-Suggestions-container',\n legacyStyles.suggestionsContainer,\n suggestionsClassName,\n ),\n noSuggestions: css('ms-Suggestions-none', legacyStyles.suggestionsNone),\n };\n\n const spinnerStyles = this._classNames.subComponentStyles\n ? (this._classNames.subComponentStyles.spinner as IStyleFunctionOrObject)\n : undefined;\n\n // TODO: cleanup after refactor of pickers to composition pattern and remove SASS support.\n const spinnerClassNameOrStyles = styles\n ? { styles: spinnerStyles }\n : {\n className: css('ms-Suggestions-spinner', legacyStyles.suggestionsSpinner),\n };\n\n const noResults = () => (\n // This ID can be used by the parent to set aria-activedescendant to this\n
    \n {onRenderNoResultFound ? (\n onRenderNoResultFound(undefined, noResults)\n ) : (\n
    {noResultsFoundText}
    \n )}\n
    \n );\n\n // MostRecently Used text should supercede the header text if it's there and available.\n let headerText: string | undefined = suggestionsHeaderText;\n if (isMostRecentlyUsedVisible && mostRecentlyUsedHeaderText) {\n headerText = mostRecentlyUsedHeaderText;\n }\n\n let footerTitle: ((props: ISuggestionsProps) => JSX.Element) | undefined = undefined;\n if (isResultsFooterVisible) {\n footerTitle = suggestions.length >= (resultsMaximumNumber as number) ? resultsFooterFull : resultsFooter;\n }\n\n const hasNoSuggestions = (!suggestions || !suggestions.length) && !isLoading;\n\n const forceResolveId =\n this.state.selectedActionType === SuggestionActionType.forceResolve ? 'sug-selectedAction' : undefined;\n const searchForMoreId =\n this.state.selectedActionType === SuggestionActionType.searchMore ? 'sug-selectedAction' : undefined;\n\n return (\n \n \n\n {headerText ?
    {headerText}
    : null}\n {forceResolveText && this._shouldShowForceResolve() && (\n \n {forceResolveText}\n \n )}\n {isLoading && }\n {hasNoSuggestions ? noResults() : this._renderSuggestions()}\n {searchForMoreText && moreSuggestionsAvailable && (\n \n {searchForMoreText}\n \n )}\n {isSearching ? : null}\n {footerTitle && !moreSuggestionsAvailable && !isMostRecentlyUsedVisible && !isSearching ? (\n
    {footerTitle(this.props)}
    \n ) : null}\n \n );\n }\n\n /**\n * Returns true if the event was handled, false otherwise\n */\n public tryHandleKeyDown = (keyCode: number, currentSuggestionIndex: number): boolean => {\n let isEventHandled = false;\n let newSelectedActionType = null;\n const currentSelectedAction = this.state.selectedActionType;\n const suggestionLength = this.props.suggestions.length;\n if (keyCode === KeyCodes.down) {\n switch (currentSelectedAction) {\n case SuggestionActionType.forceResolve:\n if (suggestionLength > 0) {\n this._refocusOnSuggestions(keyCode);\n newSelectedActionType = SuggestionActionType.none;\n } else if (this._searchForMoreButton.current) {\n newSelectedActionType = SuggestionActionType.searchMore;\n } else {\n newSelectedActionType = SuggestionActionType.forceResolve;\n }\n break;\n case SuggestionActionType.searchMore:\n if (this._forceResolveButton.current) {\n newSelectedActionType = SuggestionActionType.forceResolve;\n } else if (suggestionLength > 0) {\n this._refocusOnSuggestions(keyCode);\n newSelectedActionType = SuggestionActionType.none;\n } else {\n newSelectedActionType = SuggestionActionType.searchMore;\n }\n break;\n case SuggestionActionType.none:\n if (currentSuggestionIndex === -1 && this._forceResolveButton.current) {\n newSelectedActionType = SuggestionActionType.forceResolve;\n }\n break;\n }\n } else if (keyCode === KeyCodes.up) {\n switch (currentSelectedAction) {\n case SuggestionActionType.forceResolve:\n if (this._searchForMoreButton.current) {\n newSelectedActionType = SuggestionActionType.searchMore;\n } else if (suggestionLength > 0) {\n this._refocusOnSuggestions(keyCode);\n newSelectedActionType = SuggestionActionType.none;\n }\n break;\n case SuggestionActionType.searchMore:\n if (suggestionLength > 0) {\n this._refocusOnSuggestions(keyCode);\n newSelectedActionType = SuggestionActionType.none;\n } else if (this._forceResolveButton.current) {\n newSelectedActionType = SuggestionActionType.forceResolve;\n }\n break;\n case SuggestionActionType.none:\n if (currentSuggestionIndex === -1 && this._searchForMoreButton.current) {\n newSelectedActionType = SuggestionActionType.searchMore;\n }\n break;\n }\n }\n\n if (newSelectedActionType !== null) {\n this.setState({ selectedActionType: newSelectedActionType });\n isEventHandled = true;\n }\n\n return isEventHandled;\n };\n\n public hasSuggestedAction(): boolean {\n return !!this._searchForMoreButton.current || !!this._forceResolveButton.current;\n }\n\n public hasSuggestedActionSelected(): boolean {\n return this.state.selectedActionType !== SuggestionActionType.none;\n }\n\n public executeSelectedAction(): void {\n switch (this.state.selectedActionType) {\n case SuggestionActionType.forceResolve:\n this._forceResolve();\n break;\n case SuggestionActionType.searchMore:\n this._getMoreResults();\n break;\n }\n }\n\n public focusAboveSuggestions(): void {\n if (this._forceResolveButton.current) {\n this.setState({ selectedActionType: SuggestionActionType.forceResolve });\n } else if (this._searchForMoreButton.current) {\n this.setState({ selectedActionType: SuggestionActionType.searchMore });\n }\n }\n\n public focusBelowSuggestions(): void {\n if (this._searchForMoreButton.current) {\n this.setState({ selectedActionType: SuggestionActionType.searchMore });\n } else if (this._forceResolveButton.current) {\n this.setState({ selectedActionType: SuggestionActionType.forceResolve });\n }\n }\n\n public focusSearchForMoreButton(): void {\n if (this._searchForMoreButton.current) {\n this._searchForMoreButton.current.focus();\n }\n }\n\n public scrollSelected(): void {\n if (\n this._selectedElement.current &&\n this._scrollContainer.current &&\n this._scrollContainer.current.scrollTo !== undefined\n ) {\n const { offsetHeight, offsetTop } = this._selectedElement.current;\n const { offsetHeight: parentOffsetHeight, scrollTop } = this._scrollContainer.current;\n\n const isAbove = offsetTop < scrollTop;\n const isBelow = offsetTop + offsetHeight > scrollTop + parentOffsetHeight;\n\n if (isAbove) {\n this._scrollContainer.current.scrollTo(0, offsetTop);\n } else if (isBelow) {\n this._scrollContainer.current.scrollTo(0, offsetTop - parentOffsetHeight + offsetHeight);\n }\n }\n }\n\n private _getAlertText = () => {\n const { isLoading, isSearching, suggestions, suggestionsAvailableAlertText, noResultsFoundText } = this.props;\n if (!isLoading && !isSearching) {\n if (suggestions.length > 0) {\n return suggestionsAvailableAlertText || '';\n }\n if (noResultsFoundText) {\n return noResultsFoundText;\n }\n }\n return '';\n };\n\n private _renderSuggestions(): JSX.Element | null {\n const {\n onRenderSuggestion,\n removeSuggestionAriaLabel,\n suggestionsItemClassName,\n resultsMaximumNumber,\n showRemoveButtons,\n removeButtonIconProps,\n } = this.props;\n\n let { suggestions } = this.props;\n\n const StyledTypedSuggestionsItem: React.FunctionComponent> = StyledSuggestionsItem;\n\n let selectedIndex = -1;\n suggestions.some((element, index) => {\n if (element.selected) {\n selectedIndex = index;\n return true;\n }\n return false;\n });\n\n if (resultsMaximumNumber) {\n suggestions =\n selectedIndex >= resultsMaximumNumber\n ? suggestions.slice(selectedIndex - resultsMaximumNumber + 1, selectedIndex + 1)\n : suggestions.slice(0, resultsMaximumNumber);\n }\n\n if (suggestions.length === 0) {\n return null;\n }\n\n return (\n
    \n {suggestions.map((suggestion, index) => (\n \n \n
    \n ))}\n \n );\n }\n\n private _getMoreResults = (): void => {\n if (this.props.onGetMoreResults) {\n this.props.onGetMoreResults();\n\n // Reset selected action type as it will be of type SuggestionActionType.none after more results are gotten\n this.setState({ selectedActionType: SuggestionActionType.none });\n }\n };\n\n private _forceResolve = (): void => {\n if (this.props.createGenericItem) {\n this.props.createGenericItem();\n }\n };\n\n private _shouldShowForceResolve = (): boolean => {\n return this.props.showForceResolve ? this.props.showForceResolve() : false;\n };\n\n private _onClickTypedSuggestionsItem = (item: T, index: number): ((ev: React.MouseEvent) => void) => {\n return (ev: React.MouseEvent): void => {\n this.props.onSuggestionClick(ev, item, index);\n };\n };\n\n private _refocusOnSuggestions = (keyCode: number): void => {\n if (typeof this.props.refocusSuggestions === 'function') {\n this.props.refocusSuggestions(keyCode);\n }\n };\n\n private _onRemoveTypedSuggestionsItem = (item: T, index: number): ((ev: React.MouseEvent) => void) => {\n return (ev: React.MouseEvent): void => {\n const onSuggestionRemove = this.props.onSuggestionRemove!;\n onSuggestionRemove(ev, item, index);\n ev.stopPropagation();\n };\n };\n}\n","import {\n getGlobalClassNames,\n getHighContrastNoAdjustStyle,\n HighContrastSelector,\n hiddenContentStyle,\n} from '../../../Styling';\nimport type { IStyle } from '../../../Styling';\nimport type { ISuggestionsStyleProps, ISuggestionsStyles } from './Suggestions.types';\n\nconst GlobalClassNames = {\n root: 'ms-Suggestions',\n suggestionsContainer: 'ms-Suggestions-container',\n title: 'ms-Suggestions-title',\n forceResolveButton: 'ms-forceResolve-button',\n searchForMoreButton: 'ms-SearchMore-button',\n spinner: 'ms-Suggestions-spinner',\n noSuggestions: 'ms-Suggestions-none',\n suggestionsAvailable: 'ms-Suggestions-suggestionsAvailable',\n isSelected: 'is-selected',\n};\n\nexport function getStyles(props: ISuggestionsStyleProps): ISuggestionsStyles {\n const { className, suggestionsClassName, theme, forceResolveButtonSelected, searchForMoreButtonSelected } = props;\n\n const { palette, semanticColors, fonts } = theme;\n\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n const actionButtonStyles: IStyle = {\n backgroundColor: 'transparent',\n border: 0,\n cursor: 'pointer',\n margin: 0,\n paddingLeft: 8,\n position: 'relative',\n borderTop: `1px solid ${palette.neutralLight}`,\n height: 40,\n textAlign: 'left',\n width: '100%',\n fontSize: fonts.small.fontSize,\n selectors: {\n ':hover': {\n backgroundColor: semanticColors.menuItemBackgroundPressed,\n cursor: 'pointer',\n },\n ':focus, :active': {\n backgroundColor: palette.themeLight,\n },\n '.ms-Button-icon': {\n fontSize: fonts.mediumPlus.fontSize,\n width: 25,\n },\n '.ms-Button-label': {\n margin: '0 4px 0 9px',\n },\n },\n };\n\n const actionButtonSelectedStyles: IStyle = {\n backgroundColor: palette.themeLight,\n selectors: {\n [HighContrastSelector]: {\n backgroundColor: 'Highlight',\n borderColor: 'Highlight',\n color: 'HighlightText',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n };\n\n return {\n root: [\n classNames.root,\n {\n minWidth: 260,\n },\n className,\n ],\n suggestionsContainer: [\n classNames.suggestionsContainer,\n {\n overflowY: 'auto',\n overflowX: 'hidden',\n maxHeight: 300,\n transform: 'translate3d(0,0,0)',\n },\n suggestionsClassName,\n ],\n title: [\n classNames.title,\n {\n padding: '0 12px',\n fontSize: fonts.small.fontSize,\n color: palette.themePrimary,\n lineHeight: 40,\n borderBottom: `1px solid ${semanticColors.menuItemBackgroundPressed}`,\n },\n ],\n forceResolveButton: [\n classNames.forceResolveButton,\n actionButtonStyles,\n forceResolveButtonSelected && [classNames.isSelected, actionButtonSelectedStyles],\n ],\n searchForMoreButton: [\n classNames.searchForMoreButton,\n actionButtonStyles,\n searchForMoreButtonSelected && [classNames.isSelected, actionButtonSelectedStyles],\n ],\n noSuggestions: [\n classNames.noSuggestions,\n {\n textAlign: 'center',\n color: palette.neutralSecondary,\n fontSize: fonts.small.fontSize,\n lineHeight: 30,\n },\n ],\n suggestionsAvailable: [classNames.suggestionsAvailable, hiddenContentStyle],\n subComponentStyles: {\n spinner: {\n root: [\n classNames.spinner,\n {\n margin: '5px 0',\n paddingLeft: 14,\n textAlign: 'left',\n whiteSpace: 'nowrap',\n lineHeight: 20,\n fontSize: fonts.small.fontSize,\n },\n ],\n circle: {\n display: 'inline-block',\n verticalAlign: 'middle',\n },\n label: {\n display: 'inline-block',\n verticalAlign: 'middle',\n margin: '0 10px 0 16px',\n },\n },\n },\n };\n}\n","import type { ISuggestionModel } from './Suggestions.types';\n\n/**\n * {@docCategory Pickers}\n */\nexport class SuggestionsController {\n public currentIndex: number;\n public currentSuggestion: ISuggestionModel | undefined;\n public suggestions: ISuggestionModel[];\n\n constructor() {\n this.suggestions = [];\n this.currentIndex = -1;\n }\n\n public updateSuggestions(newSuggestions: T[], selectedIndex?: number): void {\n if (newSuggestions && newSuggestions.length > 0) {\n this.suggestions = this.convertSuggestionsToSuggestionItems(newSuggestions);\n this.currentIndex = selectedIndex ? selectedIndex : 0;\n if (selectedIndex! === -1) {\n this.currentSuggestion = undefined;\n } else if (selectedIndex !== undefined) {\n this.suggestions[selectedIndex].selected = true;\n this.currentSuggestion = this.suggestions[selectedIndex];\n }\n } else {\n this.suggestions = [];\n this.currentIndex = -1;\n this.currentSuggestion = undefined;\n }\n }\n\n /**\n * Increments the suggestion index and gets the next suggestion in the list.\n */\n public nextSuggestion(): boolean {\n if (this.suggestions && this.suggestions.length) {\n if (this.currentIndex < this.suggestions.length - 1) {\n this.setSelectedSuggestion(this.currentIndex + 1);\n return true;\n } else if (this.currentIndex === this.suggestions.length - 1) {\n this.setSelectedSuggestion(0);\n return true;\n }\n }\n\n return false;\n }\n\n /**\n * Decrements the suggestion index and gets the previous suggestion in the list.\n */\n public previousSuggestion(): boolean {\n if (this.suggestions && this.suggestions.length) {\n if (this.currentIndex > 0) {\n this.setSelectedSuggestion(this.currentIndex - 1);\n return true;\n } else if (this.currentIndex === 0) {\n this.setSelectedSuggestion(this.suggestions.length - 1);\n return true;\n }\n }\n\n return false;\n }\n\n public getSuggestions(): ISuggestionModel[] {\n return this.suggestions;\n }\n\n public getCurrentItem(): ISuggestionModel {\n return this.currentSuggestion!;\n }\n\n public getSuggestionAtIndex(index: number): ISuggestionModel {\n return this.suggestions[index];\n }\n\n public hasSelectedSuggestion(): boolean {\n return this.currentSuggestion ? true : false;\n }\n\n public removeSuggestion(index: number): void {\n this.suggestions.splice(index, 1);\n }\n\n public createGenericSuggestion(itemToConvert: ISuggestionModel | T) {\n const itemToAdd = this.convertSuggestionsToSuggestionItems([itemToConvert])[0];\n this.currentSuggestion = itemToAdd;\n }\n\n public convertSuggestionsToSuggestionItems(suggestions: Array | T>): ISuggestionModel[] {\n return Array.isArray(suggestions) ? suggestions.map(this._ensureSuggestionModel) : [];\n }\n\n public deselectAllSuggestions(): void {\n if (this.currentIndex > -1) {\n this.suggestions[this.currentIndex].selected = false;\n this.currentIndex = -1;\n }\n }\n\n public setSelectedSuggestion(index: number): void {\n if (index > this.suggestions.length - 1 || index < 0) {\n this.currentIndex = 0;\n this.currentSuggestion!.selected = false;\n this.currentSuggestion = this.suggestions[0];\n this.currentSuggestion.selected = true;\n } else {\n if (this.currentIndex > -1) {\n this.suggestions[this.currentIndex].selected = false;\n }\n this.suggestions[index].selected = true;\n this.currentIndex = index;\n this.currentSuggestion = this.suggestions[index];\n }\n }\n\n private _isSuggestionModel = (value: ISuggestionModel | T): value is ISuggestionModel => {\n return (>value).item !== undefined;\n };\n\n private _ensureSuggestionModel = (suggestion: ISuggestionModel | T): ISuggestionModel => {\n if (this._isSuggestionModel(suggestion)) {\n return suggestion as ISuggestionModel;\n } else {\n return {\n item: suggestion,\n selected: false,\n ariaLabel: (suggestion).name || (suggestion).primaryText,\n } as ISuggestionModel;\n }\n };\n}\n","import * as React from 'react';\nimport { Async, getNativeProps, initializeComponentRef, inputProperties, isIE11, KeyCodes } from '../../Utilities';\nimport type { IAutofill, IAutofillProps } from './Autofill.types';\n\nexport interface IAutofillState {\n inputValue: string;\n isComposing: boolean;\n}\n\ninterface ICursorLocation {\n start: number;\n end: number;\n dir: 'forward' | 'backward' | 'none' | undefined;\n}\n\nconst SELECTION_FORWARD = 'forward';\nconst SELECTION_BACKWARD = 'backward';\n\n/**\n * {@docCategory Autofill}\n */\nexport class Autofill extends React.Component implements IAutofill {\n public static defaultProps = {\n enableAutofillOnKeyPress: [KeyCodes.down, KeyCodes.up] as KeyCodes[],\n };\n\n private _inputElement = React.createRef();\n private _autoFillEnabled = true;\n private _async: Async;\n\n public static getDerivedStateFromProps(props: IAutofillProps, state: IAutofillState): IAutofillState | null {\n // eslint-disable-next-line deprecation/deprecation\n if (props.updateValueInWillReceiveProps) {\n // eslint-disable-next-line deprecation/deprecation\n const updatedInputValue = props.updateValueInWillReceiveProps();\n // Don't update if we have a null value or the value isn't changing\n // the value should still update if an empty string is passed in\n if (updatedInputValue !== null && updatedInputValue !== state.inputValue && !state.isComposing) {\n return { ...state, inputValue: updatedInputValue };\n }\n }\n return null;\n }\n\n constructor(props: IAutofillProps) {\n super(props);\n\n initializeComponentRef(this);\n this._async = new Async(this);\n\n this.state = {\n inputValue: props.defaultVisibleValue || '',\n isComposing: false,\n };\n }\n\n public get cursorLocation(): number | null {\n if (this._inputElement.current) {\n const inputElement = this._inputElement.current;\n if (inputElement.selectionDirection !== SELECTION_FORWARD) {\n return inputElement.selectionEnd;\n } else {\n return inputElement.selectionStart;\n }\n } else {\n return -1;\n }\n }\n\n public get isValueSelected(): boolean {\n return Boolean(this.inputElement && this.inputElement.selectionStart !== this.inputElement.selectionEnd);\n }\n\n public get value(): string {\n return this._getControlledValue() || this.state.inputValue || '';\n }\n\n public get selectionStart(): number | null {\n return this._inputElement.current ? this._inputElement.current.selectionStart : -1;\n }\n\n public get selectionEnd(): number | null {\n return this._inputElement.current ? this._inputElement.current.selectionEnd : -1;\n }\n\n public get inputElement(): HTMLInputElement | null {\n return this._inputElement.current;\n }\n\n public componentDidUpdate(_: any, _1: any, cursor: ICursorLocation | null) {\n const { suggestedDisplayValue, shouldSelectFullInputValueInComponentDidUpdate, preventValueSelection } = this.props;\n let differenceIndex = 0;\n\n if (preventValueSelection) {\n return;\n }\n\n if (\n this._autoFillEnabled &&\n this.value &&\n suggestedDisplayValue &&\n _doesTextStartWith(suggestedDisplayValue, this.value)\n ) {\n let shouldSelectFullRange = false;\n\n if (shouldSelectFullInputValueInComponentDidUpdate) {\n shouldSelectFullRange = shouldSelectFullInputValueInComponentDidUpdate();\n }\n\n if (shouldSelectFullRange && this._inputElement.current) {\n this._inputElement.current.setSelectionRange(0, suggestedDisplayValue.length, SELECTION_BACKWARD);\n } else {\n while (\n differenceIndex < this.value.length &&\n this.value[differenceIndex].toLocaleLowerCase() === suggestedDisplayValue[differenceIndex].toLocaleLowerCase()\n ) {\n differenceIndex++;\n }\n if (differenceIndex > 0 && this._inputElement.current) {\n this._inputElement.current.setSelectionRange(\n differenceIndex,\n suggestedDisplayValue.length,\n SELECTION_BACKWARD,\n );\n }\n }\n } else if (this._inputElement.current) {\n if (cursor !== null && !this._autoFillEnabled && !this.state.isComposing) {\n this._inputElement.current.setSelectionRange(cursor.start, cursor.end, cursor.dir);\n }\n }\n }\n\n public componentWillUnmount(): void {\n this._async.dispose();\n }\n\n public render(): JSX.Element {\n const nativeProps = getNativeProps>(this.props, inputProperties);\n const style = { ...this.props.style, fontFamily: 'inherit' };\n return (\n \n );\n }\n\n public focus() {\n this._inputElement.current && this._inputElement.current.focus();\n }\n\n public clear() {\n this._autoFillEnabled = true;\n this._updateValue('', false);\n this._inputElement.current && this._inputElement.current.setSelectionRange(0, 0);\n }\n\n public getSnapshotBeforeUpdate(): ICursorLocation | null {\n const inel = this._inputElement.current;\n\n if (inel && inel.selectionStart !== this.value.length) {\n return {\n start: inel.selectionStart ?? inel.value.length,\n end: inel.selectionEnd ?? inel.value.length,\n dir: (inel.selectionDirection as 'forward') || 'backward' || 'none',\n };\n }\n return null;\n }\n\n // Composition events are used when the character/text requires several keystrokes to be completed.\n // Some examples of this are mobile text input and languages like Japanese or Arabic.\n // Find out more at https://developer.mozilla.org/en-US/docs/Web/Events/compositionstart\n private _onCompositionStart = (ev: React.CompositionEvent) => {\n this.setState({ isComposing: true });\n this._autoFillEnabled = false;\n };\n\n // Composition events are used when the character/text requires several keystrokes to be completed.\n // Some examples of this are mobile text input and languages like Japanese or Arabic.\n // Find out more at https://developer.mozilla.org/en-US/docs/Web/Events/compositionstart\n private _onCompositionUpdate = () => {\n if (isIE11()) {\n this._updateValue(this._getCurrentInputValue(), true);\n }\n };\n\n // Composition events are used when the character/text requires several keystrokes to be completed.\n // Some examples of this are mobile text input and languages like Japanese or Arabic.\n // Find out more at https://developer.mozilla.org/en-US/docs/Web/Events/compositionstart\n private _onCompositionEnd = (ev: React.CompositionEvent) => {\n const inputValue = this._getCurrentInputValue();\n this._tryEnableAutofill(inputValue, this.value, false, true);\n this.setState({ isComposing: false });\n\n // Due to timing, this needs to be async, otherwise no text will be selected.\n this._async.setTimeout(() => {\n // it's technically possible that the value of isComposing is reset during this timeout,\n // so explicitly trigger this with composing=true here, since it is supposed to be the\n // update for composition end\n this._updateValue(this._getCurrentInputValue(), false);\n }, 0);\n };\n\n private _onClick = () => {\n if (this.value && this.value !== '' && this._autoFillEnabled) {\n this._autoFillEnabled = false;\n }\n };\n\n private _onKeyDown = (ev: React.KeyboardEvent) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(ev);\n }\n\n // If the event is actively being composed, then don't alert autofill.\n // Right now typing does not have isComposing, once that has been fixed any should be removed.\n\n if (!(ev.nativeEvent as any).isComposing) {\n // eslint-disable-next-line deprecation/deprecation\n switch (ev.which) {\n case KeyCodes.backspace:\n this._autoFillEnabled = false;\n break;\n case KeyCodes.left:\n case KeyCodes.right:\n if (this._autoFillEnabled) {\n this.setState({ inputValue: this.props.suggestedDisplayValue || '' });\n this._autoFillEnabled = false;\n }\n break;\n default:\n if (!this._autoFillEnabled) {\n // eslint-disable-next-line deprecation/deprecation\n if (this.props.enableAutofillOnKeyPress!.indexOf(ev.which) !== -1) {\n this._autoFillEnabled = true;\n }\n }\n break;\n }\n }\n };\n\n private _onInputChanged = (ev: React.FormEvent) => {\n const value: string = this._getCurrentInputValue(ev);\n\n if (!this.state.isComposing) {\n this._tryEnableAutofill(value, this.value, (ev.nativeEvent as any).isComposing);\n }\n\n // If it is not IE11 and currently composing, update the value\n if (!(isIE11() && this.state.isComposing)) {\n const nativeEventComposing = (ev.nativeEvent as any).isComposing;\n const isComposing = nativeEventComposing === undefined ? this.state.isComposing : nativeEventComposing;\n this._updateValue(value, isComposing);\n }\n };\n\n private _onChanged = (): void => {\n // Swallow this event, we don't care about it\n // We must provide it because React PropTypes marks it as required, but onInput serves the correct purpose\n return;\n };\n\n private _getCurrentInputValue(ev?: React.FormEvent): string {\n if (ev && ev.target && (ev.target as HTMLInputElement).value) {\n return (ev.target as HTMLInputElement).value;\n } else if (this.inputElement && this.inputElement.value) {\n return this.inputElement.value;\n } else {\n return '';\n }\n }\n\n /**\n * Attempts to enable autofill. Whether or not autofill is enabled depends on the input value,\n * whether or not any text is selected, and only if the new input value is longer than the old input value.\n * Autofill should never be set to true if the value is composing. Once compositionEnd is called, then\n * it should be completed.\n * See https://developer.mozilla.org/en-US/docs/Web/API/CompositionEvent for more information on composition.\n * @param newValue - new input value\n * @param oldValue - old input value\n * @param isComposing - if true then the text is actively being composed and it has not completed.\n * @param isComposed - if the text is a composed text value.\n */\n private _tryEnableAutofill(newValue: string, oldValue: string, isComposing?: boolean, isComposed?: boolean): void {\n if (\n !isComposing &&\n newValue &&\n this._inputElement.current &&\n this._inputElement.current.selectionStart === newValue.length &&\n !this._autoFillEnabled &&\n (newValue.length > oldValue.length || isComposed)\n ) {\n this._autoFillEnabled = true;\n }\n }\n\n /**\n * Updates the current input value as well as getting a new display value.\n * @param newValue - The new value from the input\n */\n private _updateValue = (newValue: string, composing: boolean) => {\n // Only proceed if the value is nonempty and is different from the old value\n // This is to work around the fact that, in IE 11, inputs with a placeholder fire an onInput event on focus\n if (!newValue && newValue === this.value) {\n return;\n }\n\n // eslint-disable-next-line deprecation/deprecation\n const { onInputChange, onInputValueChange } = this.props;\n if (onInputChange) {\n newValue = onInputChange?.(newValue, composing) || '';\n }\n\n this.setState({ inputValue: newValue }, () => onInputValueChange?.(newValue, composing));\n };\n\n private _getDisplayValue(): string {\n if (this._autoFillEnabled) {\n return _getDisplayValue(this.value, this.props.suggestedDisplayValue);\n }\n\n return this.value;\n }\n\n private _getControlledValue(): string | undefined {\n const { value } = this.props;\n if (value === undefined || typeof value === 'string') {\n return value;\n }\n\n // eslint-disable-next-line no-console\n console.warn(`props.value of Autofill should be a string, but it is ${value} with type of ${typeof value}`);\n\n return value.toString();\n }\n}\n/**\n * Returns a string that should be used as the display value.\n * It evaluates this based on whether or not the suggested value starts with the input value\n * and whether or not autofill is enabled.\n * @param inputValue - the value that the input currently has.\n * @param suggestedDisplayValue - the possible full value\n */\nfunction _getDisplayValue(inputValue: string, suggestedDisplayValue?: string): string {\n let displayValue = inputValue;\n if (suggestedDisplayValue && inputValue && _doesTextStartWith(suggestedDisplayValue, displayValue)) {\n displayValue = suggestedDisplayValue;\n }\n return displayValue;\n}\n\nfunction _doesTextStartWith(text: string, startWith: string): boolean {\n if (!text || !startWith) {\n return false;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n for (const val of [text, startWith]) {\n if (typeof val !== 'string') {\n throw new Error(\n `${\n Autofill.name\n // eslint-disable-next-line @fluentui/max-len\n } received non-string value \"${val}\" of type ${typeof val} from either input's value or suggestedDisplayValue`,\n );\n }\n }\n }\n\n return text.toLocaleLowerCase().indexOf(startWith.toLocaleLowerCase()) === 0;\n}\n","/* eslint-disable */\nimport { loadStyles } from '@microsoft/load-themed-styles';\nloadStyles([{\"rawString\":\".pickerText_a8f91b74{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid \"},{\"theme\":\"neutralTertiary\",\"defaultValue\":\"#a19f9d\"},{\"rawString\":\";min-width:180px;min-height:30px}.pickerText_a8f91b74:hover{border-color:\"},{\"theme\":\"inputBorderHovered\",\"defaultValue\":\"#323130\"},{\"rawString\":\"}.pickerText_a8f91b74.inputFocused_a8f91b74{position:relative;border-color:\"},{\"theme\":\"inputFocusBorderAlt\",\"defaultValue\":\"#0078d4\"},{\"rawString\":\"}.pickerText_a8f91b74.inputFocused_a8f91b74:after{pointer-events:none;content:\\\"\\\";position:absolute;left:-1px;top:-1px;bottom:-1px;right:-1px;border:2px solid \"},{\"theme\":\"inputFocusBorderAlt\",\"defaultValue\":\"#0078d4\"},{\"rawString\":\"}@media screen and (-ms-high-contrast:active),screen and (forced-colors:active){.pickerText_a8f91b74.inputDisabled_a8f91b74{position:relative;border-color:GrayText}.pickerText_a8f91b74.inputDisabled_a8f91b74:after{pointer-events:none;content:\\\"\\\";position:absolute;left:0;top:0;bottom:0;right:0;background-color:Window}}.pickerInput_a8f91b74{height:34px;border:none;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;outline:0;padding:0 6px 0;-ms-flex-item-align:end;align-self:flex-end}.pickerItems_a8f91b74{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;max-width:100%}.screenReaderOnly_a8f91b74{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}\"}]);\nexport const pickerText = \"pickerText_a8f91b74\";\nexport const inputFocused = \"inputFocused_a8f91b74\";\nexport const inputDisabled = \"inputDisabled_a8f91b74\";\nexport const pickerInput = \"pickerInput_a8f91b74\";\nexport const pickerItems = \"pickerItems_a8f91b74\";\nexport const screenReaderOnly = \"screenReaderOnly_a8f91b74\";","import * as React from 'react';\nimport {\n Async,\n KeyCodes,\n css,\n elementContains,\n format,\n getId,\n classNamesFunction,\n styled,\n initializeComponentRef,\n} from '../../Utilities';\nimport { Callout } from '../../Callout';\nimport { Selection, SelectionZone, SelectionMode } from '../../utilities/selection/index';\nimport { DirectionalHint } from '../../common/DirectionalHint';\nimport { Suggestions } from './Suggestions/Suggestions';\nimport { getStyles as suggestionsStyles } from './Suggestions/Suggestions.styles';\nimport { SuggestionsController } from './Suggestions/SuggestionsController';\nimport { ValidationState } from './BasePicker.types';\nimport { Autofill } from '../Autofill/index';\nimport * as stylesImport from './BasePicker.scss';\nimport type { IProcessedStyleSet } from '../../Styling';\nimport type {\n ISuggestions,\n ISuggestionsProps,\n ISuggestionsStyleProps,\n ISuggestionsStyles,\n} from './Suggestions/Suggestions.types';\nimport type { IBasePicker, IBasePickerProps, IBasePickerStyleProps, IBasePickerStyles } from './BasePicker.types';\nimport type { IAutofill } from '../Autofill/index';\nimport type { IPickerItemProps } from './PickerItem.types';\n\nconst legacyStyles: any = stylesImport;\n\nexport interface IBasePickerState {\n items?: any;\n suggestedDisplayValue?: string;\n moreSuggestionsAvailable?: boolean;\n isFocused?: boolean;\n isSearching?: boolean;\n isMostRecentlyUsedVisible?: boolean;\n suggestionsVisible?: boolean;\n suggestionsLoading?: boolean;\n isResultsFooterVisible?: boolean;\n selectedIndices?: number[];\n selectionRemoved?: T;\n}\n\n/**\n * Aria id's for internal picker components\n * {@docCategory Pickers}\n */\nexport type IPickerAriaIds = {\n /**\n * Aria id for selected suggestion alert component\n */\n selectedSuggestionAlert: string;\n /**\n * Aria id for selected items container component\n */\n selectedItems: string;\n /**\n * Aria id for suggestions list component\n */\n suggestionList: string;\n /**\n * Aria id for element with role=combobox\n */\n combobox: string;\n};\n\nconst getClassNames = classNamesFunction();\n\n/**\n * Should be removed once new picker without inheritance is created\n */\nfunction getStyledSuggestions(suggestionsType: new (props: ISuggestionsProps) => Suggestions) {\n return styled, ISuggestionsStyleProps, ISuggestionsStyles>(\n suggestionsType,\n suggestionsStyles,\n undefined,\n {\n scope: 'Suggestions',\n },\n );\n}\n\n/**\n * {@docCategory Pickers}\n */\nexport class BasePicker>\n extends React.Component>\n implements IBasePicker {\n // Refs\n protected root = React.createRef();\n protected input = React.createRef();\n protected suggestionElement = React.createRef>();\n protected selection: Selection;\n protected suggestionStore: SuggestionsController;\n /**\n * @deprecated this is no longer necessary as typescript now supports generic elements\n */\n protected SuggestionOfProperType = Suggestions as new (props: ISuggestionsProps) => Suggestions;\n protected currentPromise: PromiseLike | undefined;\n protected _ariaMap: IPickerAriaIds;\n // eslint-disable-next-line deprecation/deprecation\n private _styledSuggestions = getStyledSuggestions(this.SuggestionOfProperType);\n private _id: string;\n private _async: Async;\n\n public static getDerivedStateFromProps(newProps: IBasePickerProps) {\n if (newProps.selectedItems) {\n return { items: newProps.selectedItems };\n }\n return null;\n }\n\n constructor(basePickerProps: P) {\n super(basePickerProps);\n\n initializeComponentRef(this);\n this._async = new Async(this);\n\n const items: T[] = basePickerProps.selectedItems || basePickerProps.defaultSelectedItems || [];\n\n this._id = getId();\n this._ariaMap = {\n selectedItems: `selected-items-${this._id}`,\n selectedSuggestionAlert: `selected-suggestion-alert-${this._id}`,\n suggestionList: `suggestion-list-${this._id}`,\n combobox: `combobox-${this._id}`,\n };\n this.suggestionStore = new SuggestionsController();\n this.selection = new Selection({ onSelectionChanged: () => this.onSelectionChange() });\n this.selection.setItems(items);\n this.state = {\n items: items,\n suggestedDisplayValue: '',\n isMostRecentlyUsedVisible: false,\n moreSuggestionsAvailable: false,\n isFocused: false,\n isSearching: false,\n selectedIndices: [],\n selectionRemoved: undefined,\n };\n }\n\n public get items(): T[] {\n return this.state.items;\n }\n\n public componentDidMount(): void {\n this.selection.setItems(this.state.items);\n this._onResolveSuggestions = this._async.debounce(this._onResolveSuggestions, this.props.resolveDelay);\n }\n\n public componentDidUpdate(oldProps: P, oldState: IBasePickerState) {\n if (this.state.items && this.state.items !== oldState.items) {\n const currentSelectedIndex = this.selection.getSelectedIndices()[0];\n this.selection.setItems(this.state.items);\n if (this.state.isFocused) {\n // Reset focus and selection so that selected item stays in sync if something\n // has been removed\n if (this.state.items.length < oldState.items.length) {\n this.selection.setIndexSelected(currentSelectedIndex, false, true);\n this.resetFocus(currentSelectedIndex);\n }\n // Reset focus to last item if the input is removed\n else if (this.state.items.length > oldState.items.length && !this.canAddItems()) {\n this.resetFocus(this.state.items.length - 1);\n }\n }\n }\n }\n\n public componentWillUnmount(): void {\n if (this.currentPromise) {\n this.currentPromise = undefined;\n }\n this._async.dispose();\n }\n\n public focus() {\n if (this.input.current) {\n this.input.current.focus();\n }\n }\n\n public focusInput() {\n if (this.input.current) {\n this.input.current.focus();\n }\n }\n\n public dismissSuggestions = (ev?: any): void => {\n const selectItemFunction = () => {\n let addItemOnDismiss: boolean | void = true;\n if (this.props.onDismiss) {\n addItemOnDismiss = this.props.onDismiss(\n ev,\n this.suggestionStore.currentSuggestion ? this.suggestionStore.currentSuggestion.item : undefined,\n );\n }\n\n if (!ev || (ev && !ev.defaultPrevented)) {\n // Select the first suggestion if one is available and permitted by onDismiss when user leaves.\n if (\n addItemOnDismiss !== false &&\n this.canAddItems() &&\n this.suggestionStore.hasSelectedSuggestion() &&\n this.state.suggestedDisplayValue\n ) {\n this.addItemByIndex(0);\n }\n }\n };\n\n if (this.currentPromise) {\n this.currentPromise.then(() => selectItemFunction());\n } else {\n selectItemFunction();\n }\n\n this.setState({ suggestionsVisible: false });\n };\n\n public completeSuggestion(forceComplete?: boolean) {\n if (this.suggestionStore.hasSelectedSuggestion() && this.input.current) {\n this.completeSelection(this.suggestionStore.currentSuggestion!.item);\n } else if (forceComplete) {\n this._completeGenericSuggestion();\n }\n }\n\n public refocusSuggestions = (keyCode: KeyCodes): void => {\n this.resetFocus();\n if (this.suggestionStore.suggestions && this.suggestionStore.suggestions.length > 0) {\n if (keyCode === KeyCodes.up) {\n this.suggestionStore.setSelectedSuggestion(this.suggestionStore.suggestions.length - 1);\n } else if (keyCode === KeyCodes.down) {\n this.suggestionStore.setSelectedSuggestion(0);\n }\n }\n };\n\n public render(): JSX.Element {\n const { suggestedDisplayValue, isFocused, items } = this.state;\n const { className, inputProps, disabled, selectionAriaLabel, selectionRole = 'list', theme, styles } = this.props;\n\n const suggestionsVisible = !!this.state.suggestionsVisible;\n const suggestionsAvailable = suggestionsVisible ? this._ariaMap.suggestionList : undefined;\n // TODO\n // Clean this up by leaving only the first part after removing support for SASS.\n // Currently we can not remove the SASS styles from BasePicker class because it\n // might be used by consumers who created custom pickers from extending from\n // this base class and have not used the new 'styles' prop.\n // We check for 'styles' prop which is going to be injected by the 'styled' HOC\n // for every other already existing picker variant (PeoplePicker, TagPicker)\n // so that we can use the CSS-in-JS styles. If the check fails (ex: custom picker),\n // then we just use the old SASS styles instead.\n const classNames: Partial> = styles\n ? getClassNames(styles, {\n theme,\n className,\n isFocused,\n disabled,\n inputClassName: inputProps && inputProps.className,\n })\n : {\n root: css('ms-BasePicker', className ? className : ''),\n text: css('ms-BasePicker-text', legacyStyles.pickerText, this.state.isFocused && legacyStyles.inputFocused),\n itemsWrapper: legacyStyles.pickerItems,\n input: css('ms-BasePicker-input', legacyStyles.pickerInput, inputProps && inputProps.className),\n screenReaderText: legacyStyles.screenReaderOnly,\n };\n\n const comboLabel = this.props['aria-label'] || inputProps?.['aria-label'];\n\n // selectionAriaLabel is contained in a separate rather than an aria-label on the items list\n // because if the items list has an aria-label, the aria-describedby on the input will only read\n // that label instead of all the selected items. Using aria-labelledby instead fixes this, since\n // aria-describedby and aria-labelledby will not follow a second aria-labelledby\n return (\n \n {this.renderCustomAlert(classNames.screenReaderText)}\n \n \n
    \n {items.length > 0 && (\n \n {this.renderItems()}\n \n )}\n {this.canAddItems() && (\n 0 ? this._ariaMap.selectedItems : undefined}\n aria-expanded={suggestionsVisible}\n aria-haspopup=\"listbox\"\n aria-label={comboLabel}\n role=\"combobox\"\n disabled={disabled}\n onInputChange={this.props.onInputChange}\n />\n )}\n
    \n
    \n {this.renderSuggestions()}\n \n );\n }\n\n protected canAddItems(): boolean {\n const { items } = this.state;\n const { itemLimit } = this.props;\n return itemLimit === undefined || items.length < itemLimit;\n }\n\n protected renderSuggestions(): JSX.Element | null {\n const StyledTypedSuggestions: React.FunctionComponent> = this._styledSuggestions;\n\n return this.state.suggestionsVisible && this.input ? (\n \n \n \n ) : null;\n }\n\n protected renderItems(): JSX.Element[] {\n const { disabled, removeButtonAriaLabel, removeButtonIconProps } = this.props;\n const onRenderItem = this.props.onRenderItem as (props: IPickerItemProps) => JSX.Element;\n\n const { items, selectedIndices } = this.state;\n return items.map((item: any, index: number) =>\n onRenderItem({\n item,\n index,\n key: item.key ? item.key : index,\n selected: selectedIndices!.indexOf(index) !== -1,\n onRemoveItem: () => this.removeItem(item),\n disabled: disabled,\n onItemChange: this.onItemChange,\n removeButtonAriaLabel: removeButtonAriaLabel,\n removeButtonIconProps,\n }),\n );\n }\n\n protected resetFocus(index?: number) {\n const { items } = this.state;\n\n if (items.length && index! >= 0) {\n const newEl: HTMLElement | null =\n this.root.current &&\n (this.root.current.querySelectorAll('[data-selection-index]')[\n Math.min(index!, items.length - 1)\n ] as HTMLElement | null);\n if (newEl) {\n newEl.focus();\n }\n } else if (!this.canAddItems()) {\n this.resetFocus(items.length - 1);\n } else {\n if (this.input.current) {\n this.input.current.focus();\n }\n }\n }\n\n protected onSuggestionSelect() {\n if (this.suggestionStore.currentSuggestion) {\n const currentValue: string = this.input.current ? this.input.current.value : '';\n const itemValue: string = this._getTextFromItem(this.suggestionStore.currentSuggestion.item, currentValue);\n this.setState({ suggestedDisplayValue: itemValue });\n }\n }\n\n protected onSelectionChange() {\n this.setState({\n selectedIndices: this.selection.getSelectedIndices(),\n });\n }\n\n protected updateSuggestions(suggestions: any[]) {\n this.suggestionStore.updateSuggestions(suggestions, 0);\n this.forceUpdate();\n }\n\n /**\n * Only to be called when there is nothing in the input. Checks to see if the consumer has\n * provided a function to resolve suggestions\n */\n protected onEmptyInputFocus() {\n const emptyResolveSuggestions = this.props.onEmptyResolveSuggestions\n ? this.props.onEmptyResolveSuggestions\n : // eslint-disable-next-line deprecation/deprecation\n this.props.onEmptyInputFocus;\n\n // Only attempt to resolve suggestions if it exists\n if (emptyResolveSuggestions) {\n const suggestions = emptyResolveSuggestions(this.state.items);\n\n this.updateSuggestionsList(suggestions);\n\n this.setState({\n isMostRecentlyUsedVisible: true,\n suggestionsVisible: true,\n moreSuggestionsAvailable: false,\n });\n }\n }\n\n protected updateValue(updatedValue: string) {\n this._onResolveSuggestions(updatedValue);\n }\n\n protected updateSuggestionsList(suggestions: T[] | PromiseLike, updatedValue?: string) {\n // Check to see if the returned value is an array, if it is then just pass it into the next function .\n // If the returned value is not an array then check to see if it's a promise or PromiseLike.\n // If it is then resolve it asynchronously.\n if (Array.isArray(suggestions)) {\n this._updateAndResolveValue(updatedValue, suggestions);\n } else if (suggestions && (suggestions as PromiseLike).then) {\n this.setState({\n suggestionsLoading: true,\n });\n\n // Clear suggestions\n this.suggestionStore.updateSuggestions([]);\n\n if (updatedValue !== undefined) {\n this.setState({\n suggestionsVisible: this._getShowSuggestions(),\n });\n } else {\n this.setState({\n suggestionsVisible: this.input.current! && this.input.current!.inputElement === document.activeElement,\n });\n }\n\n // Ensure that the promise will only use the callback if it was the most recent one.\n this.currentPromise = suggestions;\n suggestions.then((newSuggestions: T[]) => {\n if (suggestions === this.currentPromise) {\n this._updateAndResolveValue(updatedValue, newSuggestions);\n }\n });\n }\n }\n\n protected resolveNewValue(updatedValue: string, suggestions: T[]) {\n this.updateSuggestions(suggestions);\n let itemValue: string | undefined = undefined;\n\n if (this.suggestionStore.currentSuggestion) {\n itemValue = this._getTextFromItem(this.suggestionStore.currentSuggestion.item, updatedValue);\n }\n\n // Only set suggestionloading to false after there has been time for the new suggestions to flow\n // to the suggestions list. This is to ensure that the suggestions are available before aria-activedescendant\n // is set so that screen readers will read out the first selected option.\n this.setState(\n {\n suggestedDisplayValue: itemValue,\n suggestionsVisible: this._getShowSuggestions(),\n },\n () => this.setState({ suggestionsLoading: false }),\n );\n }\n\n protected onChange(items?: T[]) {\n if (this.props.onChange) {\n (this.props.onChange as any)(items);\n }\n }\n\n protected onInputChange = (value: string): void => {\n this.updateValue(value);\n this.setState({\n moreSuggestionsAvailable: true,\n isMostRecentlyUsedVisible: false,\n });\n };\n\n protected onSuggestionClick = (ev: React.MouseEvent, item: any, index: number): void => {\n this.addItemByIndex(index);\n };\n\n protected onSuggestionRemove = (ev: React.MouseEvent, item: T, index: number): void => {\n if (this.props.onRemoveSuggestion) {\n this.props.onRemoveSuggestion(item);\n }\n this.suggestionStore.removeSuggestion(index);\n };\n\n protected onInputFocus = (ev: React.FocusEvent): void => {\n this.selection.setAllSelected(false);\n // Only trigger all of the focus if this component isn't already focused.\n // For example when an item is selected or removed from the selected list it should be treated\n // as though the input is still focused.\n if (!this.state.isFocused) {\n this._userTriggeredSuggestions();\n\n if (this.props.inputProps && this.props.inputProps.onFocus) {\n this.props.inputProps.onFocus(ev as React.FocusEvent);\n }\n }\n };\n\n protected onInputBlur = (ev: React.FocusEvent): void => {\n if (this.props.inputProps && this.props.inputProps.onBlur) {\n this.props.inputProps.onBlur(ev as React.FocusEvent);\n }\n };\n\n protected onBlur = (ev: React.FocusEvent): void => {\n if (this.state.isFocused) {\n // Only blur the entire component if an unrelated element gets focus.\n // Otherwise treat it as though it still has focus.\n // Do nothing if the blur is coming from something\n // inside the comboBox root or the comboBox menu since\n // it we are not really bluring from the whole comboBox\n let relatedTarget: EventTarget | null = ev.relatedTarget;\n\n if (ev.relatedTarget === null) {\n // In IE11, due to lack of support, event.relatedTarget is always\n // null making every onBlur call to be \"outside\" of the ComboBox\n // even when it's not. Using document.activeElement is another way\n // for us to be able to get what the relatedTarget without relying\n // on the event\n relatedTarget = document.activeElement;\n }\n if (relatedTarget && !elementContains(this.root.current!, relatedTarget as HTMLElement)) {\n this.setState({ isFocused: false });\n if (this.props.onBlur) {\n this.props.onBlur(ev as React.FocusEvent);\n }\n }\n }\n };\n\n /**\n * Resets focus to last element in wrapper div if clicking back into Picker that has hit item limit\n */\n protected onWrapperClick = (ev: React.MouseEvent): void => {\n if (!this.canAddItems()) {\n this.resetFocus(this.state.items.length - 1);\n }\n };\n\n /**\n * Reveals suggestions any time the user clicks on the input element\n * without shifting focus.\n */\n protected onClick = (ev: React.MouseEvent): void => {\n if (this.props.inputProps !== undefined && this.props.inputProps.onClick !== undefined) {\n this.props.inputProps.onClick(ev);\n }\n\n // Only primary (left) clicks show suggestions.\n if (ev.button === 0) {\n this._userTriggeredSuggestions();\n }\n };\n\n protected onFocus = () => {\n if (!this.state.isFocused) {\n this.setState({ isFocused: true });\n }\n };\n\n protected onKeyDown = (ev: React.KeyboardEvent): void => {\n // eslint-disable-next-line deprecation/deprecation\n const keyCode = ev.which;\n switch (keyCode) {\n case KeyCodes.escape:\n if (this.state.suggestionsVisible) {\n this.setState({ suggestionsVisible: false });\n ev.preventDefault();\n ev.stopPropagation();\n }\n break;\n\n case KeyCodes.tab:\n case KeyCodes.enter:\n if (this.suggestionElement.current && this.suggestionElement.current.hasSuggestedActionSelected()) {\n this.suggestionElement.current.executeSelectedAction();\n } else if (!ev.shiftKey && this.suggestionStore.hasSelectedSuggestion() && this.state.suggestionsVisible) {\n this.completeSuggestion();\n ev.preventDefault();\n ev.stopPropagation();\n } else {\n this._completeGenericSuggestion();\n }\n\n break;\n\n case KeyCodes.backspace:\n if (!this.props.disabled) {\n this.onBackspace(ev);\n }\n ev.stopPropagation();\n break;\n\n case KeyCodes.del:\n if (!this.props.disabled) {\n if (\n this.input.current &&\n ev.target === this.input.current.inputElement &&\n this.state.suggestionsVisible &&\n this.suggestionStore.currentIndex !== -1\n ) {\n if (this.props.onRemoveSuggestion) {\n this.props.onRemoveSuggestion(this.suggestionStore.currentSuggestion!.item);\n }\n this.suggestionStore.removeSuggestion(this.suggestionStore.currentIndex);\n this.forceUpdate();\n } else {\n this.onBackspace(ev);\n }\n }\n ev.stopPropagation();\n break;\n\n case KeyCodes.up:\n if (this.input.current && ev.target === this.input.current.inputElement && this.state.suggestionsVisible) {\n if (\n this.suggestionElement.current &&\n this.suggestionElement.current.tryHandleKeyDown(keyCode, this.suggestionStore.currentIndex)\n ) {\n ev.preventDefault();\n ev.stopPropagation();\n this.forceUpdate();\n } else {\n if (\n this.suggestionElement.current &&\n this.suggestionElement.current.hasSuggestedAction() &&\n this.suggestionStore.currentIndex === 0\n ) {\n ev.preventDefault();\n ev.stopPropagation();\n this.suggestionElement.current.focusAboveSuggestions();\n this.suggestionStore.deselectAllSuggestions();\n this.forceUpdate();\n } else {\n if (this.suggestionStore.previousSuggestion()) {\n ev.preventDefault();\n ev.stopPropagation();\n this.onSuggestionSelect();\n }\n }\n }\n }\n break;\n\n case KeyCodes.down:\n if (this.input.current && ev.target === this.input.current.inputElement && this.state.suggestionsVisible) {\n if (\n this.suggestionElement.current &&\n this.suggestionElement.current.tryHandleKeyDown(keyCode, this.suggestionStore.currentIndex)\n ) {\n ev.preventDefault();\n ev.stopPropagation();\n this.forceUpdate();\n } else {\n if (\n this.suggestionElement.current &&\n this.suggestionElement.current.hasSuggestedAction() &&\n this.suggestionStore.currentIndex + 1 === this.suggestionStore.suggestions.length\n ) {\n ev.preventDefault();\n ev.stopPropagation();\n this.suggestionElement.current.focusBelowSuggestions();\n this.suggestionStore.deselectAllSuggestions();\n this.forceUpdate();\n } else {\n if (this.suggestionStore.nextSuggestion()) {\n ev.preventDefault();\n ev.stopPropagation();\n this.onSuggestionSelect();\n }\n }\n }\n }\n break;\n }\n };\n\n protected onItemChange = (changedItem: T, index: number): void => {\n const { items } = this.state;\n\n if (index >= 0) {\n const newItems: T[] = items;\n newItems[index] = changedItem;\n\n this._updateSelectedItems(newItems);\n }\n };\n\n protected onGetMoreResults = (): void => {\n this.setState(\n {\n isSearching: true,\n },\n () => {\n if (this.props.onGetMoreResults && this.input.current) {\n const suggestions: T[] | PromiseLike = (this.props.onGetMoreResults as any)(\n this.input.current.value,\n this.state.items,\n );\n const suggestionsArray: T[] = suggestions as T[];\n const suggestionsPromiseLike: PromiseLike = suggestions as PromiseLike;\n\n if (Array.isArray(suggestionsArray)) {\n this.updateSuggestions(suggestionsArray);\n this.setState({ isSearching: false });\n } else if (suggestionsPromiseLike.then) {\n suggestionsPromiseLike.then((newSuggestions: T[]) => {\n this.updateSuggestions(newSuggestions);\n this.setState({ isSearching: false });\n });\n }\n } else {\n this.setState({ isSearching: false });\n }\n\n if (this.input.current) {\n this.input.current.focus();\n }\n\n this.setState({\n moreSuggestionsAvailable: false,\n isResultsFooterVisible: true,\n });\n },\n );\n };\n\n protected completeSelection = (item: T) => {\n this.addItem(item);\n this.updateValue('');\n if (this.input.current) {\n this.input.current.clear();\n }\n this.setState({ suggestionsVisible: false });\n };\n\n protected addItemByIndex = (index: number): void => {\n this.completeSelection(this.suggestionStore.getSuggestionAtIndex(index).item);\n };\n\n protected addItem = (item: T): void => {\n const processedItem: T | PromiseLike | null = this.props.onItemSelected\n ? (this.props.onItemSelected as any)(item)\n : item;\n\n if (processedItem === null) {\n return;\n }\n\n const processedItemObject: T = processedItem as T;\n const processedItemPromiseLike: PromiseLike = processedItem as PromiseLike;\n\n if (processedItemPromiseLike && processedItemPromiseLike.then) {\n processedItemPromiseLike.then((resolvedProcessedItem: T) => {\n const newItems: T[] = this.state.items.concat([resolvedProcessedItem]);\n this._updateSelectedItems(newItems);\n });\n } else {\n const newItems: T[] = this.state.items.concat([processedItemObject]);\n this._updateSelectedItems(newItems);\n }\n this.setState({ suggestedDisplayValue: '', selectionRemoved: undefined });\n };\n\n protected removeItem = (item: T): void => {\n const { items } = this.state;\n const index: number = items.indexOf(item);\n\n if (index >= 0) {\n const newItems: T[] = items.slice(0, index).concat(items.slice(index + 1));\n this.setState({ selectionRemoved: item });\n this._updateSelectedItems(newItems);\n }\n };\n\n protected removeItems = (itemsToRemove: any[]): void => {\n const { items } = this.state;\n const newItems: T[] = items.filter((item: any) => itemsToRemove.indexOf(item) === -1);\n\n this._updateSelectedItems(newItems);\n };\n\n // This is protected because we may expect the backspace key to work differently in a different kind of picker.\n // This lets the subclass override it and provide it's own onBackspace. For an example see the BasePickerListBelow\n protected onBackspace(ev: React.KeyboardEvent) {\n if (\n (this.state.items.length && !this.input.current) ||\n (this.input.current && !this.input.current.isValueSelected && this.input.current.cursorLocation === 0)\n ) {\n if (this.selection.getSelectedCount() > 0) {\n this.removeItems(this.selection.getSelection());\n } else {\n this.removeItem(this.state.items[this.state.items.length - 1]);\n }\n }\n }\n\n /**\n * @deprecated this is no longer necessary as focuszone has been removed\n */\n protected _shouldFocusZoneEnterInnerZone = (ev: React.KeyboardEvent): boolean => {\n // If suggestions are shown const up/down keys control them, otherwise allow them through to control the focusZone.\n if (this.state.suggestionsVisible) {\n // eslint-disable-next-line deprecation/deprecation\n switch (ev.which) {\n case KeyCodes.up:\n case KeyCodes.down:\n return true;\n }\n }\n\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter) {\n return true;\n }\n\n return false;\n };\n\n protected getActiveDescendant() {\n if (this.state.suggestionsLoading) {\n return undefined;\n }\n\n const currentIndex = this.suggestionStore.currentIndex;\n\n if (currentIndex < 0) {\n // if the suggestions element has actions and the currentIndex does not point to a suggestion,\n // return the action id\n if (this.suggestionElement.current?.hasSuggestedAction()) {\n return 'sug-selectedAction';\n }\n\n // If there are no suggestions and no action suggested, then return the ID for the no results found.\n if (this.suggestionStore.suggestions.length === 0) {\n return 'sug-noResultsFound';\n }\n\n return undefined;\n } else {\n return `sug-${currentIndex}`;\n }\n }\n\n /** @deprecated use renderCustomAlert instead */\n protected getSuggestionsAlert(suggestionAlertClassName: string = legacyStyles.screenReaderOnly) {\n const currentIndex = this.suggestionStore.currentIndex;\n if (this.props.enableSelectedSuggestionAlert) {\n const selectedSuggestion =\n currentIndex > -1 ? this.suggestionStore.getSuggestionAtIndex(this.suggestionStore.currentIndex) : undefined;\n const selectedSuggestionAlertText = selectedSuggestion ? selectedSuggestion.ariaLabel : undefined;\n // keeping the id/className here for legacy support\n return (\n
    \n {`${selectedSuggestionAlertText} `}\n
    \n );\n }\n }\n\n protected renderCustomAlert(alertClassName: string = legacyStyles.screenReaderOnly) {\n const { suggestionRemovedText = 'removed {0}' } = this.props;\n let removedItemText = '';\n\n if (this.state.selectionRemoved) {\n const itemName = this._getTextFromItem(this.state.selectionRemoved, '');\n removedItemText = format(suggestionRemovedText, itemName);\n }\n\n return (\n
    \n {\n // eslint-disable-next-line deprecation/deprecation\n this.getSuggestionsAlert(alertClassName)\n }\n {removedItemText}\n
    \n );\n }\n\n /**\n * Takes in the current updated value and either resolves it with the new suggestions\n * or if updated value is undefined then it clears out currently suggested items\n */\n private _updateAndResolveValue(updatedValue: string | undefined, newSuggestions: T[]) {\n if (updatedValue !== undefined) {\n this.resolveNewValue(updatedValue, newSuggestions);\n } else {\n this.suggestionStore.updateSuggestions(newSuggestions, -1);\n if (this.state.suggestionsLoading) {\n this.setState({\n suggestionsLoading: false,\n });\n }\n }\n }\n\n /**\n * Controls what happens whenever there is an action that impacts the selected items.\n * If `selectedItems` is provided, this will act as a controlled component and it will not update its own state.\n */\n private _updateSelectedItems(items: T[]): void {\n if (this.props.selectedItems) {\n // If the component is a controlled component then the controlling component will need to add or remove the items.\n this.onChange(items);\n } else {\n this.setState({ items: items }, () => {\n this._onSelectedItemsUpdated(items);\n });\n }\n }\n\n private _onSelectedItemsUpdated(items?: T[]): void {\n this.onChange(items);\n }\n\n /**\n * Suggestions are normally shown after the user updates text and the text\n * is non-empty, but also when the user clicks on the input element.\n * @returns True if suggestions should be shown.\n */\n private _getShowSuggestions(): boolean {\n const areSuggestionsVisible =\n this.input.current !== undefined &&\n this.input.current !== null &&\n this.input.current.inputElement === document.activeElement &&\n this.input.current.value !== '';\n\n return areSuggestionsVisible;\n }\n\n private _onResolveSuggestions = (updatedValue: string): void => {\n const suggestions: T[] | PromiseLike | null = this.props.onResolveSuggestions(updatedValue, this.state.items);\n\n if (suggestions !== null) {\n this.updateSuggestionsList(suggestions, updatedValue);\n }\n };\n\n private _completeGenericSuggestion = (): void => {\n if (\n this.props.onValidateInput &&\n this.input.current &&\n (this.props.onValidateInput as any)(this.input.current.value) !== ValidationState.invalid &&\n this.props.createGenericItem\n ) {\n const itemToConvert = this.props.createGenericItem(\n this.input.current.value,\n this.props.onValidateInput(this.input.current.value),\n );\n this.suggestionStore.createGenericSuggestion(itemToConvert);\n this.completeSuggestion();\n }\n };\n\n private _getTextFromItem(item: T, currentValue?: string): string {\n if (this.props.getTextFromItem) {\n return (this.props.getTextFromItem as any)(item, currentValue);\n } else {\n return '';\n }\n }\n\n /**\n * This should be called when the user does something other than use text entry to trigger suggestions.\n *\n */\n private _userTriggeredSuggestions = () => {\n if (!this.state.suggestionsVisible) {\n const input = this.input.current ? this.input.current.value : '';\n if (!input) {\n this.onEmptyInputFocus();\n } else {\n if (this.suggestionStore.suggestions.length === 0) {\n this._onResolveSuggestions(input);\n } else {\n this.setState({\n isMostRecentlyUsedVisible: false,\n suggestionsVisible: true,\n });\n }\n }\n }\n };\n}\n\nexport class BasePickerListBelow> extends BasePicker {\n public render(): JSX.Element {\n const { suggestedDisplayValue, isFocused } = this.state;\n const { className, inputProps, disabled, selectionAriaLabel, selectionRole = 'list', theme, styles } = this.props;\n\n const suggestionsVisible = !!this.state.suggestionsVisible;\n\n const suggestionsAvailable: string | undefined = suggestionsVisible ? this._ariaMap.suggestionList : undefined;\n // TODO\n // Clean this up by leaving only the first part after removing support for SASS.\n // Currently we can not remove the SASS styles from BasePicker class because it\n // might be used by consumers who created custom pickers from extending from\n // this base class and have not used the new 'styles' prop.\n // We check for 'styles' prop which is going to be injected by the 'styled' HOC\n // for every other already existing picker variant (PeoplePicker, TagPicker)\n // so that we can use the CSS-in-JS styles. If the check fails (ex: custom picker),\n // then we just use the old SASS styles instead.\n const classNames: Partial> = styles\n ? getClassNames(styles, {\n theme,\n className,\n isFocused,\n inputClassName: inputProps && inputProps.className,\n })\n : {\n root: css('ms-BasePicker', className ? className : ''),\n text: css(\n 'ms-BasePicker-text',\n legacyStyles.pickerText,\n this.state.isFocused && legacyStyles.inputFocused,\n disabled && legacyStyles.inputDisabled,\n ),\n itemsWrapper: legacyStyles.pickerItems,\n input: css('ms-BasePicker-input', legacyStyles.pickerInput, inputProps && inputProps.className),\n screenReaderText: legacyStyles.screenReaderOnly,\n };\n\n const comboLabel = this.props['aria-label'] || inputProps?.['aria-label'];\n\n return (\n
    \n
    \n {this.renderCustomAlert(classNames.screenReaderText)}\n
    \n \n
    \n
    \n {this.renderSuggestions()}\n \n \n {this.renderItems()}\n
    \n \n \n );\n }\n\n protected onBackspace(ev: React.KeyboardEvent) {\n // override the existing backspace method to not do anything because the list items appear below.\n }\n}\n","/*!\n * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)\n */\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n var ownKeys = Object.keys(source);\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n\n ownKeys.forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n }\n\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n}\n\nvar noop = function noop() {};\n\nvar _WINDOW = {};\nvar _DOCUMENT = {};\nvar _MUTATION_OBSERVER = null;\nvar _PERFORMANCE = {\n mark: noop,\n measure: noop\n};\n\ntry {\n if (typeof window !== 'undefined') _WINDOW = window;\n if (typeof document !== 'undefined') _DOCUMENT = document;\n if (typeof MutationObserver !== 'undefined') _MUTATION_OBSERVER = MutationObserver;\n if (typeof performance !== 'undefined') _PERFORMANCE = performance;\n} catch (e) {}\n\nvar _ref = _WINDOW.navigator || {},\n _ref$userAgent = _ref.userAgent,\n userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent;\n\nvar WINDOW = _WINDOW;\nvar DOCUMENT = _DOCUMENT;\nvar MUTATION_OBSERVER = _MUTATION_OBSERVER;\nvar PERFORMANCE = _PERFORMANCE;\nvar IS_BROWSER = !!WINDOW.document;\nvar IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';\nvar IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');\n\nvar NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';\nvar UNITS_IN_GRID = 16;\nvar DEFAULT_FAMILY_PREFIX = 'fa';\nvar DEFAULT_REPLACEMENT_CLASS = 'svg-inline--fa';\nvar DATA_FA_I2SVG = 'data-fa-i2svg';\nvar DATA_FA_PSEUDO_ELEMENT = 'data-fa-pseudo-element';\nvar DATA_FA_PSEUDO_ELEMENT_PENDING = 'data-fa-pseudo-element-pending';\nvar DATA_PREFIX = 'data-prefix';\nvar DATA_ICON = 'data-icon';\nvar HTML_CLASS_I2SVG_BASE_CLASS = 'fontawesome-i2svg';\nvar MUTATION_APPROACH_ASYNC = 'async';\nvar TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ['HTML', 'HEAD', 'STYLE', 'SCRIPT'];\nvar PRODUCTION = function () {\n try {\n return process.env.NODE_ENV === 'production';\n } catch (e) {\n return false;\n }\n}();\nvar PREFIX_TO_STYLE = {\n 'fas': 'solid',\n 'far': 'regular',\n 'fal': 'light',\n 'fad': 'duotone',\n 'fab': 'brands',\n 'fak': 'kit',\n 'fa': 'solid'\n};\nvar STYLE_TO_PREFIX = {\n 'solid': 'fas',\n 'regular': 'far',\n 'light': 'fal',\n 'duotone': 'fad',\n 'brands': 'fab',\n 'kit': 'fak'\n};\nvar LAYERS_TEXT_CLASSNAME = 'fa-layers-text';\nvar FONT_FAMILY_PATTERN = /Font Awesome ([5 ]*)(Solid|Regular|Light|Duotone|Brands|Free|Pro|Kit).*/i; // TODO: do we need to handle font-weight for kit SVG pseudo-elements?\n\nvar FONT_WEIGHT_TO_PREFIX = {\n '900': 'fas',\n '400': 'far',\n 'normal': 'far',\n '300': 'fal'\n};\nvar oneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\nvar oneToTwenty = oneToTen.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]);\nvar ATTRIBUTES_WATCHED_FOR_MUTATION = ['class', 'data-prefix', 'data-icon', 'data-fa-transform', 'data-fa-mask'];\nvar DUOTONE_CLASSES = {\n GROUP: 'group',\n SWAP_OPACITY: 'swap-opacity',\n PRIMARY: 'primary',\n SECONDARY: 'secondary'\n};\nvar RESERVED_CLASSES = ['xs', 'sm', 'lg', 'fw', 'ul', 'li', 'border', 'pull-left', 'pull-right', 'spin', 'pulse', 'rotate-90', 'rotate-180', 'rotate-270', 'flip-horizontal', 'flip-vertical', 'flip-both', 'stack', 'stack-1x', 'stack-2x', 'inverse', 'layers', 'layers-text', 'layers-counter', DUOTONE_CLASSES.GROUP, DUOTONE_CLASSES.SWAP_OPACITY, DUOTONE_CLASSES.PRIMARY, DUOTONE_CLASSES.SECONDARY].concat(oneToTen.map(function (n) {\n return \"\".concat(n, \"x\");\n})).concat(oneToTwenty.map(function (n) {\n return \"w-\".concat(n);\n}));\n\nvar initial = WINDOW.FontAwesomeConfig || {};\n\nfunction getAttrConfig(attr) {\n var element = DOCUMENT.querySelector('script[' + attr + ']');\n\n if (element) {\n return element.getAttribute(attr);\n }\n}\n\nfunction coerce(val) {\n // Getting an empty string will occur if the attribute is set on the HTML tag but without a value\n // We'll assume that this is an indication that it should be toggled to true\n // For example \n if (val === '') return true;\n if (val === 'false') return false;\n if (val === 'true') return true;\n return val;\n}\n\nif (DOCUMENT && typeof DOCUMENT.querySelector === 'function') {\n var attrs = [['data-family-prefix', 'familyPrefix'], ['data-replacement-class', 'replacementClass'], ['data-auto-replace-svg', 'autoReplaceSvg'], ['data-auto-add-css', 'autoAddCss'], ['data-auto-a11y', 'autoA11y'], ['data-search-pseudo-elements', 'searchPseudoElements'], ['data-observe-mutations', 'observeMutations'], ['data-mutate-approach', 'mutateApproach'], ['data-keep-original-source', 'keepOriginalSource'], ['data-measure-performance', 'measurePerformance'], ['data-show-missing-icons', 'showMissingIcons']];\n attrs.forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n attr = _ref2[0],\n key = _ref2[1];\n\n var val = coerce(getAttrConfig(attr));\n\n if (val !== undefined && val !== null) {\n initial[key] = val;\n }\n });\n}\n\nvar _default = {\n familyPrefix: DEFAULT_FAMILY_PREFIX,\n replacementClass: DEFAULT_REPLACEMENT_CLASS,\n autoReplaceSvg: true,\n autoAddCss: true,\n autoA11y: true,\n searchPseudoElements: false,\n observeMutations: true,\n mutateApproach: 'async',\n keepOriginalSource: true,\n measurePerformance: false,\n showMissingIcons: true\n};\n\nvar _config = _objectSpread({}, _default, initial);\n\nif (!_config.autoReplaceSvg) _config.observeMutations = false;\n\nvar config = _objectSpread({}, _config);\n\nWINDOW.FontAwesomeConfig = config;\n\nvar w = WINDOW || {};\nif (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};\nif (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};\nif (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};\nif (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];\nvar namespace = w[NAMESPACE_IDENTIFIER];\n\nvar functions = [];\n\nvar listener = function listener() {\n DOCUMENT.removeEventListener('DOMContentLoaded', listener);\n loaded = 1;\n functions.map(function (fn) {\n return fn();\n });\n};\n\nvar loaded = false;\n\nif (IS_DOM) {\n loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);\n if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener);\n}\n\nfunction domready (fn) {\n if (!IS_DOM) return;\n loaded ? setTimeout(fn, 0) : functions.push(fn);\n}\n\nvar PENDING = 'pending';\nvar SETTLED = 'settled';\nvar FULFILLED = 'fulfilled';\nvar REJECTED = 'rejected';\n\nvar NOOP = function NOOP() {};\n\nvar isNode = typeof global !== 'undefined' && typeof global.process !== 'undefined' && typeof global.process.emit === 'function';\nvar asyncSetTimer = typeof setImmediate === 'undefined' ? setTimeout : setImmediate;\nvar asyncQueue = [];\nvar asyncTimer;\n\nfunction asyncFlush() {\n // run promise callbacks\n for (var i = 0; i < asyncQueue.length; i++) {\n asyncQueue[i][0](asyncQueue[i][1]);\n } // reset async asyncQueue\n\n\n asyncQueue = [];\n asyncTimer = false;\n}\n\nfunction asyncCall(callback, arg) {\n asyncQueue.push([callback, arg]);\n\n if (!asyncTimer) {\n asyncTimer = true;\n asyncSetTimer(asyncFlush, 0);\n }\n}\n\nfunction invokeResolver(resolver, promise) {\n function resolvePromise(value) {\n resolve(promise, value);\n }\n\n function rejectPromise(reason) {\n reject(promise, reason);\n }\n\n try {\n resolver(resolvePromise, rejectPromise);\n } catch (e) {\n rejectPromise(e);\n }\n}\n\nfunction invokeCallback(subscriber) {\n var owner = subscriber.owner;\n var settled = owner._state;\n var value = owner._data;\n var callback = subscriber[settled];\n var promise = subscriber.then;\n\n if (typeof callback === 'function') {\n settled = FULFILLED;\n\n try {\n value = callback(value);\n } catch (e) {\n reject(promise, e);\n }\n }\n\n if (!handleThenable(promise, value)) {\n if (settled === FULFILLED) {\n resolve(promise, value);\n }\n\n if (settled === REJECTED) {\n reject(promise, value);\n }\n }\n}\n\nfunction handleThenable(promise, value) {\n var resolved;\n\n try {\n if (promise === value) {\n throw new TypeError('A promises callback cannot return that same promise.');\n }\n\n if (value && (typeof value === 'function' || _typeof(value) === 'object')) {\n // then should be retrieved only once\n var then = value.then;\n\n if (typeof then === 'function') {\n then.call(value, function (val) {\n if (!resolved) {\n resolved = true;\n\n if (value === val) {\n fulfill(promise, val);\n } else {\n resolve(promise, val);\n }\n }\n }, function (reason) {\n if (!resolved) {\n resolved = true;\n reject(promise, reason);\n }\n });\n return true;\n }\n }\n } catch (e) {\n if (!resolved) {\n reject(promise, e);\n }\n\n return true;\n }\n\n return false;\n}\n\nfunction resolve(promise, value) {\n if (promise === value || !handleThenable(promise, value)) {\n fulfill(promise, value);\n }\n}\n\nfunction fulfill(promise, value) {\n if (promise._state === PENDING) {\n promise._state = SETTLED;\n promise._data = value;\n asyncCall(publishFulfillment, promise);\n }\n}\n\nfunction reject(promise, reason) {\n if (promise._state === PENDING) {\n promise._state = SETTLED;\n promise._data = reason;\n asyncCall(publishRejection, promise);\n }\n}\n\nfunction publish(promise) {\n promise._then = promise._then.forEach(invokeCallback);\n}\n\nfunction publishFulfillment(promise) {\n promise._state = FULFILLED;\n publish(promise);\n}\n\nfunction publishRejection(promise) {\n promise._state = REJECTED;\n publish(promise);\n\n if (!promise._handled && isNode) {\n global.process.emit('unhandledRejection', promise._data, promise);\n }\n}\n\nfunction notifyRejectionHandled(promise) {\n global.process.emit('rejectionHandled', promise);\n}\n/**\n * @class\n */\n\n\nfunction P(resolver) {\n if (typeof resolver !== 'function') {\n throw new TypeError('Promise resolver ' + resolver + ' is not a function');\n }\n\n if (this instanceof P === false) {\n throw new TypeError('Failed to construct \\'Promise\\': Please use the \\'new\\' operator, this object constructor cannot be called as a function.');\n }\n\n this._then = [];\n invokeResolver(resolver, this);\n}\n\nP.prototype = {\n constructor: P,\n _state: PENDING,\n _then: null,\n _data: undefined,\n _handled: false,\n then: function then(onFulfillment, onRejection) {\n var subscriber = {\n owner: this,\n then: new this.constructor(NOOP),\n fulfilled: onFulfillment,\n rejected: onRejection\n };\n\n if ((onRejection || onFulfillment) && !this._handled) {\n this._handled = true;\n\n if (this._state === REJECTED && isNode) {\n asyncCall(notifyRejectionHandled, this);\n }\n }\n\n if (this._state === FULFILLED || this._state === REJECTED) {\n // already resolved, call callback async\n asyncCall(invokeCallback, subscriber);\n } else {\n // subscribe\n this._then.push(subscriber);\n }\n\n return subscriber.then;\n },\n catch: function _catch(onRejection) {\n return this.then(null, onRejection);\n }\n};\n\nP.all = function (promises) {\n if (!Array.isArray(promises)) {\n throw new TypeError('You must pass an array to Promise.all().');\n }\n\n return new P(function (resolve, reject) {\n var results = [];\n var remaining = 0;\n\n function resolver(index) {\n remaining++;\n return function (value) {\n results[index] = value;\n\n if (! --remaining) {\n resolve(results);\n }\n };\n }\n\n for (var i = 0, promise; i < promises.length; i++) {\n promise = promises[i];\n\n if (promise && typeof promise.then === 'function') {\n promise.then(resolver(i), reject);\n } else {\n results[i] = promise;\n }\n }\n\n if (!remaining) {\n resolve(results);\n }\n });\n};\n\nP.race = function (promises) {\n if (!Array.isArray(promises)) {\n throw new TypeError('You must pass an array to Promise.race().');\n }\n\n return new P(function (resolve, reject) {\n for (var i = 0, promise; i < promises.length; i++) {\n promise = promises[i];\n\n if (promise && typeof promise.then === 'function') {\n promise.then(resolve, reject);\n } else {\n resolve(promise);\n }\n }\n });\n};\n\nP.resolve = function (value) {\n if (value && _typeof(value) === 'object' && value.constructor === P) {\n return value;\n }\n\n return new P(function (resolve) {\n resolve(value);\n });\n};\n\nP.reject = function (reason) {\n return new P(function (resolve, reject) {\n reject(reason);\n });\n};\n\nvar picked = typeof Promise === 'function' ? Promise : P;\n\nvar d = UNITS_IN_GRID;\nvar meaninglessTransform = {\n size: 16,\n x: 0,\n y: 0,\n rotate: 0,\n flipX: false,\n flipY: false\n};\n\nfunction isReserved(name) {\n return ~RESERVED_CLASSES.indexOf(name);\n}\nfunction insertCss(css) {\n if (!css || !IS_DOM) {\n return;\n }\n\n var style = DOCUMENT.createElement('style');\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n var headChildren = DOCUMENT.head.childNodes;\n var beforeChild = null;\n\n for (var i = headChildren.length - 1; i > -1; i--) {\n var child = headChildren[i];\n var tagName = (child.tagName || '').toUpperCase();\n\n if (['STYLE', 'LINK'].indexOf(tagName) > -1) {\n beforeChild = child;\n }\n }\n\n DOCUMENT.head.insertBefore(style, beforeChild);\n return css;\n}\nvar idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\nfunction nextUniqueId() {\n var size = 12;\n var id = '';\n\n while (size-- > 0) {\n id += idPool[Math.random() * 62 | 0];\n }\n\n return id;\n}\nfunction toArray(obj) {\n var array = [];\n\n for (var i = (obj || []).length >>> 0; i--;) {\n array[i] = obj[i];\n }\n\n return array;\n}\nfunction classArray(node) {\n if (node.classList) {\n return toArray(node.classList);\n } else {\n return (node.getAttribute('class') || '').split(' ').filter(function (i) {\n return i;\n });\n }\n}\nfunction getIconName(familyPrefix, cls) {\n var parts = cls.split('-');\n var prefix = parts[0];\n var iconName = parts.slice(1).join('-');\n\n if (prefix === familyPrefix && iconName !== '' && !isReserved(iconName)) {\n return iconName;\n } else {\n return null;\n }\n}\nfunction htmlEscape(str) {\n return \"\".concat(str).replace(/&/g, '&').replace(/\"/g, '"').replace(/'/g, ''').replace(//g, '>');\n}\nfunction joinAttributes(attributes) {\n return Object.keys(attributes || {}).reduce(function (acc, attributeName) {\n return acc + \"\".concat(attributeName, \"=\\\"\").concat(htmlEscape(attributes[attributeName]), \"\\\" \");\n }, '').trim();\n}\nfunction joinStyles(styles) {\n return Object.keys(styles || {}).reduce(function (acc, styleName) {\n return acc + \"\".concat(styleName, \": \").concat(styles[styleName], \";\");\n }, '');\n}\nfunction transformIsMeaningful(transform) {\n return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;\n}\nfunction transformForSvg(_ref) {\n var transform = _ref.transform,\n containerWidth = _ref.containerWidth,\n iconWidth = _ref.iconWidth;\n var outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n var innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n var innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n var innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n var inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n var path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n return {\n outer: outer,\n inner: inner,\n path: path\n };\n}\nfunction transformForCss(_ref2) {\n var transform = _ref2.transform,\n _ref2$width = _ref2.width,\n width = _ref2$width === void 0 ? UNITS_IN_GRID : _ref2$width,\n _ref2$height = _ref2.height,\n height = _ref2$height === void 0 ? UNITS_IN_GRID : _ref2$height,\n _ref2$startCentered = _ref2.startCentered,\n startCentered = _ref2$startCentered === void 0 ? false : _ref2$startCentered;\n var val = '';\n\n if (startCentered && IS_IE) {\n val += \"translate(\".concat(transform.x / d - width / 2, \"em, \").concat(transform.y / d - height / 2, \"em) \");\n } else if (startCentered) {\n val += \"translate(calc(-50% + \".concat(transform.x / d, \"em), calc(-50% + \").concat(transform.y / d, \"em)) \");\n } else {\n val += \"translate(\".concat(transform.x / d, \"em, \").concat(transform.y / d, \"em) \");\n }\n\n val += \"scale(\".concat(transform.size / d * (transform.flipX ? -1 : 1), \", \").concat(transform.size / d * (transform.flipY ? -1 : 1), \") \");\n val += \"rotate(\".concat(transform.rotate, \"deg) \");\n return val;\n}\n\nvar ALL_SPACE = {\n x: 0,\n y: 0,\n width: '100%',\n height: '100%'\n};\n\nfunction fillBlack(abstract) {\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (abstract.attributes && (abstract.attributes.fill || force)) {\n abstract.attributes.fill = 'black';\n }\n\n return abstract;\n}\n\nfunction deGroup(abstract) {\n if (abstract.tag === 'g') {\n return abstract.children;\n } else {\n return [abstract];\n }\n}\n\nfunction makeIconMasking (_ref) {\n var children = _ref.children,\n attributes = _ref.attributes,\n main = _ref.main,\n mask = _ref.mask,\n explicitMaskId = _ref.maskId,\n transform = _ref.transform;\n var mainWidth = main.width,\n mainPath = main.icon;\n var maskWidth = mask.width,\n maskPath = mask.icon;\n var trans = transformForSvg({\n transform: transform,\n containerWidth: maskWidth,\n iconWidth: mainWidth\n });\n var maskRect = {\n tag: 'rect',\n attributes: _objectSpread({}, ALL_SPACE, {\n fill: 'white'\n })\n };\n var maskInnerGroupChildrenMixin = mainPath.children ? {\n children: mainPath.children.map(fillBlack)\n } : {};\n var maskInnerGroup = {\n tag: 'g',\n attributes: _objectSpread({}, trans.inner),\n children: [fillBlack(_objectSpread({\n tag: mainPath.tag,\n attributes: _objectSpread({}, mainPath.attributes, trans.path)\n }, maskInnerGroupChildrenMixin))]\n };\n var maskOuterGroup = {\n tag: 'g',\n attributes: _objectSpread({}, trans.outer),\n children: [maskInnerGroup]\n };\n var maskId = \"mask-\".concat(explicitMaskId || nextUniqueId());\n var clipId = \"clip-\".concat(explicitMaskId || nextUniqueId());\n var maskTag = {\n tag: 'mask',\n attributes: _objectSpread({}, ALL_SPACE, {\n id: maskId,\n maskUnits: 'userSpaceOnUse',\n maskContentUnits: 'userSpaceOnUse'\n }),\n children: [maskRect, maskOuterGroup]\n };\n var defs = {\n tag: 'defs',\n children: [{\n tag: 'clipPath',\n attributes: {\n id: clipId\n },\n children: deGroup(maskPath)\n }, maskTag]\n };\n children.push(defs, {\n tag: 'rect',\n attributes: _objectSpread({\n fill: 'currentColor',\n 'clip-path': \"url(#\".concat(clipId, \")\"),\n mask: \"url(#\".concat(maskId, \")\")\n }, ALL_SPACE)\n });\n return {\n children: children,\n attributes: attributes\n };\n}\n\nfunction makeIconStandard (_ref) {\n var children = _ref.children,\n attributes = _ref.attributes,\n main = _ref.main,\n transform = _ref.transform,\n styles = _ref.styles;\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n if (transformIsMeaningful(transform)) {\n var trans = transformForSvg({\n transform: transform,\n containerWidth: main.width,\n iconWidth: main.width\n });\n children.push({\n tag: 'g',\n attributes: _objectSpread({}, trans.outer),\n children: [{\n tag: 'g',\n attributes: _objectSpread({}, trans.inner),\n children: [{\n tag: main.icon.tag,\n children: main.icon.children,\n attributes: _objectSpread({}, main.icon.attributes, trans.path)\n }]\n }]\n });\n } else {\n children.push(main.icon);\n }\n\n return {\n children: children,\n attributes: attributes\n };\n}\n\nfunction asIcon (_ref) {\n var children = _ref.children,\n main = _ref.main,\n mask = _ref.mask,\n attributes = _ref.attributes,\n styles = _ref.styles,\n transform = _ref.transform;\n\n if (transformIsMeaningful(transform) && main.found && !mask.found) {\n var width = main.width,\n height = main.height;\n var offset = {\n x: width / height / 2,\n y: 0.5\n };\n attributes['style'] = joinStyles(_objectSpread({}, styles, {\n 'transform-origin': \"\".concat(offset.x + transform.x / 16, \"em \").concat(offset.y + transform.y / 16, \"em\")\n }));\n }\n\n return [{\n tag: 'svg',\n attributes: attributes,\n children: children\n }];\n}\n\nfunction asSymbol (_ref) {\n var prefix = _ref.prefix,\n iconName = _ref.iconName,\n children = _ref.children,\n attributes = _ref.attributes,\n symbol = _ref.symbol;\n var id = symbol === true ? \"\".concat(prefix, \"-\").concat(config.familyPrefix, \"-\").concat(iconName) : symbol;\n return [{\n tag: 'svg',\n attributes: {\n style: 'display: none;'\n },\n children: [{\n tag: 'symbol',\n attributes: _objectSpread({}, attributes, {\n id: id\n }),\n children: children\n }]\n }];\n}\n\nfunction makeInlineSvgAbstract(params) {\n var _params$icons = params.icons,\n main = _params$icons.main,\n mask = _params$icons.mask,\n prefix = params.prefix,\n iconName = params.iconName,\n transform = params.transform,\n symbol = params.symbol,\n title = params.title,\n maskId = params.maskId,\n titleId = params.titleId,\n extra = params.extra,\n _params$watchable = params.watchable,\n watchable = _params$watchable === void 0 ? false : _params$watchable;\n\n var _ref = mask.found ? mask : main,\n width = _ref.width,\n height = _ref.height;\n\n var isUploadedIcon = prefix === 'fak';\n var widthClass = isUploadedIcon ? '' : \"fa-w-\".concat(Math.ceil(width / height * 16));\n var attrClass = [config.replacementClass, iconName ? \"\".concat(config.familyPrefix, \"-\").concat(iconName) : '', widthClass].filter(function (c) {\n return extra.classes.indexOf(c) === -1;\n }).filter(function (c) {\n return c !== '' || !!c;\n }).concat(extra.classes).join(' ');\n var content = {\n children: [],\n attributes: _objectSpread({}, extra.attributes, {\n 'data-prefix': prefix,\n 'data-icon': iconName,\n 'class': attrClass,\n 'role': extra.attributes.role || 'img',\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': \"0 0 \".concat(width, \" \").concat(height)\n })\n };\n var uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf('fa-fw') ? {\n width: \"\".concat(width / height * 16 * 0.0625, \"em\")\n } : {};\n\n if (watchable) {\n content.attributes[DATA_FA_I2SVG] = '';\n }\n\n if (title) content.children.push({\n tag: 'title',\n attributes: {\n id: content.attributes['aria-labelledby'] || \"title-\".concat(titleId || nextUniqueId())\n },\n children: [title]\n });\n\n var args = _objectSpread({}, content, {\n prefix: prefix,\n iconName: iconName,\n main: main,\n mask: mask,\n maskId: maskId,\n transform: transform,\n symbol: symbol,\n styles: _objectSpread({}, uploadedIconWidthStyle, extra.styles)\n });\n\n var _ref2 = mask.found && main.found ? makeIconMasking(args) : makeIconStandard(args),\n children = _ref2.children,\n attributes = _ref2.attributes;\n\n args.children = children;\n args.attributes = attributes;\n\n if (symbol) {\n return asSymbol(args);\n } else {\n return asIcon(args);\n }\n}\nfunction makeLayersTextAbstract(params) {\n var content = params.content,\n width = params.width,\n height = params.height,\n transform = params.transform,\n title = params.title,\n extra = params.extra,\n _params$watchable2 = params.watchable,\n watchable = _params$watchable2 === void 0 ? false : _params$watchable2;\n\n var attributes = _objectSpread({}, extra.attributes, title ? {\n 'title': title\n } : {}, {\n 'class': extra.classes.join(' ')\n });\n\n if (watchable) {\n attributes[DATA_FA_I2SVG] = '';\n }\n\n var styles = _objectSpread({}, extra.styles);\n\n if (transformIsMeaningful(transform)) {\n styles['transform'] = transformForCss({\n transform: transform,\n startCentered: true,\n width: width,\n height: height\n });\n styles['-webkit-transform'] = styles['transform'];\n }\n\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\nfunction makeLayersCounterAbstract(params) {\n var content = params.content,\n title = params.title,\n extra = params.extra;\n\n var attributes = _objectSpread({}, extra.attributes, title ? {\n 'title': title\n } : {}, {\n 'class': extra.classes.join(' ')\n });\n\n var styleString = joinStyles(extra.styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\n\nvar noop$1 = function noop() {};\n\nvar p = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {\n mark: noop$1,\n measure: noop$1\n};\nvar preamble = \"FA \\\"5.15.4\\\"\";\n\nvar begin = function begin(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" begins\"));\n return function () {\n return end(name);\n };\n};\n\nvar end = function end(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" ends\"));\n p.measure(\"\".concat(preamble, \" \").concat(name), \"\".concat(preamble, \" \").concat(name, \" begins\"), \"\".concat(preamble, \" \").concat(name, \" ends\"));\n};\n\nvar perf = {\n begin: begin,\n end: end\n};\n\n/**\n * Internal helper to bind a function known to have 4 arguments\n * to a given context.\n */\n\nvar bindInternal4 = function bindInternal4(func, thisContext) {\n return function (a, b, c, d) {\n return func.call(thisContext, a, b, c, d);\n };\n};\n\n/**\n * # Reduce\n *\n * A fast object `.reduce()` implementation.\n *\n * @param {Object} subject The object to reduce over.\n * @param {Function} fn The reducer function.\n * @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].\n * @param {Object} thisContext The context for the reducer.\n * @return {mixed} The final result.\n */\n\n\nvar reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {\n var keys = Object.keys(subject),\n length = keys.length,\n iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn,\n i,\n key,\n result;\n\n if (initialValue === undefined) {\n i = 1;\n result = subject[keys[0]];\n } else {\n i = 0;\n result = initialValue;\n }\n\n for (; i < length; i++) {\n key = keys[i];\n result = iterator(result, subject[key], key, subject);\n }\n\n return result;\n};\n\nfunction toHex(unicode) {\n var result = '';\n\n for (var i = 0; i < unicode.length; i++) {\n var hex = unicode.charCodeAt(i).toString(16);\n result += ('000' + hex).slice(-4);\n }\n\n return result;\n}\n\nfunction defineIcons(prefix, icons) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var _params$skipHooks = params.skipHooks,\n skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks;\n var normalized = Object.keys(icons).reduce(function (acc, iconName) {\n var icon = icons[iconName];\n var expanded = !!icon.icon;\n\n if (expanded) {\n acc[icon.iconName] = icon.icon;\n } else {\n acc[iconName] = icon;\n }\n\n return acc;\n }, {});\n\n if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {\n namespace.hooks.addPack(prefix, normalized);\n } else {\n namespace.styles[prefix] = _objectSpread({}, namespace.styles[prefix] || {}, normalized);\n }\n /**\n * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction\n * of new styles we needed to differentiate between them. Prefix `fa` is now an alias\n * for `fas` so we'll easy the upgrade process for our users by automatically defining\n * this as well.\n */\n\n\n if (prefix === 'fas') {\n defineIcons('fa', icons);\n }\n}\n\nvar styles = namespace.styles,\n shims = namespace.shims;\nvar _byUnicode = {};\nvar _byLigature = {};\nvar _byOldName = {};\nvar build = function build() {\n var lookup = function lookup(reducer) {\n return reduce(styles, function (o, style, prefix) {\n o[prefix] = reduce(style, reducer, {});\n return o;\n }, {});\n };\n\n _byUnicode = lookup(function (acc, icon, iconName) {\n if (icon[3]) {\n acc[icon[3]] = iconName;\n }\n\n return acc;\n });\n _byLigature = lookup(function (acc, icon, iconName) {\n var ligatures = icon[2];\n acc[iconName] = iconName;\n ligatures.forEach(function (ligature) {\n acc[ligature] = iconName;\n });\n return acc;\n });\n var hasRegular = 'far' in styles;\n _byOldName = reduce(shims, function (acc, shim) {\n var oldName = shim[0];\n var prefix = shim[1];\n var iconName = shim[2];\n\n if (prefix === 'far' && !hasRegular) {\n prefix = 'fas';\n }\n\n acc[oldName] = {\n prefix: prefix,\n iconName: iconName\n };\n return acc;\n }, {});\n};\nbuild();\nfunction byUnicode(prefix, unicode) {\n return (_byUnicode[prefix] || {})[unicode];\n}\nfunction byLigature(prefix, ligature) {\n return (_byLigature[prefix] || {})[ligature];\n}\nfunction byOldName(name) {\n return _byOldName[name] || {\n prefix: null,\n iconName: null\n };\n}\n\nvar styles$1 = namespace.styles;\nvar emptyCanonicalIcon = function emptyCanonicalIcon() {\n return {\n prefix: null,\n iconName: null,\n rest: []\n };\n};\nfunction getCanonicalIcon(values) {\n return values.reduce(function (acc, cls) {\n var iconName = getIconName(config.familyPrefix, cls);\n\n if (styles$1[cls]) {\n acc.prefix = cls;\n } else if (config.autoFetchSvg && Object.keys(PREFIX_TO_STYLE).indexOf(cls) > -1) {\n acc.prefix = cls;\n } else if (iconName) {\n var shim = acc.prefix === 'fa' ? byOldName(iconName) : {};\n acc.iconName = shim.iconName || iconName;\n acc.prefix = shim.prefix || acc.prefix;\n } else if (cls !== config.replacementClass && cls.indexOf('fa-w-') !== 0) {\n acc.rest.push(cls);\n }\n\n return acc;\n }, emptyCanonicalIcon());\n}\nfunction iconFromMapping(mapping, prefix, iconName) {\n if (mapping && mapping[prefix] && mapping[prefix][iconName]) {\n return {\n prefix: prefix,\n iconName: iconName,\n icon: mapping[prefix][iconName]\n };\n }\n}\n\nfunction toHtml(abstractNodes) {\n var tag = abstractNodes.tag,\n _abstractNodes$attrib = abstractNodes.attributes,\n attributes = _abstractNodes$attrib === void 0 ? {} : _abstractNodes$attrib,\n _abstractNodes$childr = abstractNodes.children,\n children = _abstractNodes$childr === void 0 ? [] : _abstractNodes$childr;\n\n if (typeof abstractNodes === 'string') {\n return htmlEscape(abstractNodes);\n } else {\n return \"<\".concat(tag, \" \").concat(joinAttributes(attributes), \">\").concat(children.map(toHtml).join(''), \"\");\n }\n}\n\nvar noop$2 = function noop() {};\n\nfunction isWatched(node) {\n var i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;\n return typeof i2svg === 'string';\n}\n\nfunction getMutator() {\n if (config.autoReplaceSvg === true) {\n return mutators.replace;\n }\n\n var mutator = mutators[config.autoReplaceSvg];\n return mutator || mutators.replace;\n}\n\nvar mutators = {\n replace: function replace(mutation) {\n var node = mutation[0];\n var abstract = mutation[1];\n var newOuterHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n\n if (node.parentNode && node.outerHTML) {\n node.outerHTML = newOuterHTML + (config.keepOriginalSource && node.tagName.toLowerCase() !== 'svg' ? \"\") : '');\n } else if (node.parentNode) {\n var newNode = document.createElement('span');\n node.parentNode.replaceChild(newNode, node);\n newNode.outerHTML = newOuterHTML;\n }\n },\n nest: function nest(mutation) {\n var node = mutation[0];\n var abstract = mutation[1]; // If we already have a replaced node we do not want to continue nesting within it.\n // Short-circuit to the standard replacement\n\n if (~classArray(node).indexOf(config.replacementClass)) {\n return mutators.replace(mutation);\n }\n\n var forSvg = new RegExp(\"\".concat(config.familyPrefix, \"-.*\"));\n delete abstract[0].attributes.style;\n delete abstract[0].attributes.id;\n var splitClasses = abstract[0].attributes.class.split(' ').reduce(function (acc, cls) {\n if (cls === config.replacementClass || cls.match(forSvg)) {\n acc.toSvg.push(cls);\n } else {\n acc.toNode.push(cls);\n }\n\n return acc;\n }, {\n toNode: [],\n toSvg: []\n });\n abstract[0].attributes.class = splitClasses.toSvg.join(' ');\n var newInnerHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n node.setAttribute('class', splitClasses.toNode.join(' '));\n node.setAttribute(DATA_FA_I2SVG, '');\n node.innerHTML = newInnerHTML;\n }\n};\n\nfunction performOperationSync(op) {\n op();\n}\n\nfunction perform(mutations, callback) {\n var callbackFunction = typeof callback === 'function' ? callback : noop$2;\n\n if (mutations.length === 0) {\n callbackFunction();\n } else {\n var frame = performOperationSync;\n\n if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {\n frame = WINDOW.requestAnimationFrame || performOperationSync;\n }\n\n frame(function () {\n var mutator = getMutator();\n var mark = perf.begin('mutate');\n mutations.map(mutator);\n mark();\n callbackFunction();\n });\n }\n}\nvar disabled = false;\nfunction disableObservation() {\n disabled = true;\n}\nfunction enableObservation() {\n disabled = false;\n}\nvar mo = null;\nfunction observe(options) {\n if (!MUTATION_OBSERVER) {\n return;\n }\n\n if (!config.observeMutations) {\n return;\n }\n\n var treeCallback = options.treeCallback,\n nodeCallback = options.nodeCallback,\n pseudoElementsCallback = options.pseudoElementsCallback,\n _options$observeMutat = options.observeMutationsRoot,\n observeMutationsRoot = _options$observeMutat === void 0 ? DOCUMENT : _options$observeMutat;\n mo = new MUTATION_OBSERVER(function (objects) {\n if (disabled) return;\n toArray(objects).forEach(function (mutationRecord) {\n if (mutationRecord.type === 'childList' && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {\n if (config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target);\n }\n\n treeCallback(mutationRecord.target);\n }\n\n if (mutationRecord.type === 'attributes' && mutationRecord.target.parentNode && config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target.parentNode);\n }\n\n if (mutationRecord.type === 'attributes' && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {\n if (mutationRecord.attributeName === 'class') {\n var _getCanonicalIcon = getCanonicalIcon(classArray(mutationRecord.target)),\n prefix = _getCanonicalIcon.prefix,\n iconName = _getCanonicalIcon.iconName;\n\n if (prefix) mutationRecord.target.setAttribute('data-prefix', prefix);\n if (iconName) mutationRecord.target.setAttribute('data-icon', iconName);\n } else {\n nodeCallback(mutationRecord.target);\n }\n }\n });\n });\n if (!IS_DOM) return;\n mo.observe(observeMutationsRoot, {\n childList: true,\n attributes: true,\n characterData: true,\n subtree: true\n });\n}\nfunction disconnect() {\n if (!mo) return;\n mo.disconnect();\n}\n\nfunction styleParser (node) {\n var style = node.getAttribute('style');\n var val = [];\n\n if (style) {\n val = style.split(';').reduce(function (acc, style) {\n var styles = style.split(':');\n var prop = styles[0];\n var value = styles.slice(1);\n\n if (prop && value.length > 0) {\n acc[prop] = value.join(':').trim();\n }\n\n return acc;\n }, {});\n }\n\n return val;\n}\n\nfunction classParser (node) {\n var existingPrefix = node.getAttribute('data-prefix');\n var existingIconName = node.getAttribute('data-icon');\n var innerText = node.innerText !== undefined ? node.innerText.trim() : '';\n var val = getCanonicalIcon(classArray(node));\n\n if (existingPrefix && existingIconName) {\n val.prefix = existingPrefix;\n val.iconName = existingIconName;\n }\n\n if (val.prefix && innerText.length > 1) {\n val.iconName = byLigature(val.prefix, node.innerText);\n } else if (val.prefix && innerText.length === 1) {\n val.iconName = byUnicode(val.prefix, toHex(node.innerText));\n }\n\n return val;\n}\n\nvar parseTransformString = function parseTransformString(transformString) {\n var transform = {\n size: 16,\n x: 0,\n y: 0,\n flipX: false,\n flipY: false,\n rotate: 0\n };\n\n if (!transformString) {\n return transform;\n } else {\n return transformString.toLowerCase().split(' ').reduce(function (acc, n) {\n var parts = n.toLowerCase().split('-');\n var first = parts[0];\n var rest = parts.slice(1).join('-');\n\n if (first && rest === 'h') {\n acc.flipX = true;\n return acc;\n }\n\n if (first && rest === 'v') {\n acc.flipY = true;\n return acc;\n }\n\n rest = parseFloat(rest);\n\n if (isNaN(rest)) {\n return acc;\n }\n\n switch (first) {\n case 'grow':\n acc.size = acc.size + rest;\n break;\n\n case 'shrink':\n acc.size = acc.size - rest;\n break;\n\n case 'left':\n acc.x = acc.x - rest;\n break;\n\n case 'right':\n acc.x = acc.x + rest;\n break;\n\n case 'up':\n acc.y = acc.y - rest;\n break;\n\n case 'down':\n acc.y = acc.y + rest;\n break;\n\n case 'rotate':\n acc.rotate = acc.rotate + rest;\n break;\n }\n\n return acc;\n }, transform);\n }\n};\nfunction transformParser (node) {\n return parseTransformString(node.getAttribute('data-fa-transform'));\n}\n\nfunction symbolParser (node) {\n var symbol = node.getAttribute('data-fa-symbol');\n return symbol === null ? false : symbol === '' ? true : symbol;\n}\n\nfunction attributesParser (node) {\n var extraAttributes = toArray(node.attributes).reduce(function (acc, attr) {\n if (acc.name !== 'class' && acc.name !== 'style') {\n acc[attr.name] = attr.value;\n }\n\n return acc;\n }, {});\n var title = node.getAttribute('title');\n var titleId = node.getAttribute('data-fa-title-id');\n\n if (config.autoA11y) {\n if (title) {\n extraAttributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n extraAttributes['aria-hidden'] = 'true';\n extraAttributes['focusable'] = 'false';\n }\n }\n\n return extraAttributes;\n}\n\nfunction maskParser (node) {\n var mask = node.getAttribute('data-fa-mask');\n\n if (!mask) {\n return emptyCanonicalIcon();\n } else {\n return getCanonicalIcon(mask.split(' ').map(function (i) {\n return i.trim();\n }));\n }\n}\n\nfunction blankMeta() {\n return {\n iconName: null,\n title: null,\n titleId: null,\n prefix: null,\n transform: meaninglessTransform,\n symbol: false,\n mask: null,\n maskId: null,\n extra: {\n classes: [],\n styles: {},\n attributes: {}\n }\n };\n}\nfunction parseMeta(node) {\n var _classParser = classParser(node),\n iconName = _classParser.iconName,\n prefix = _classParser.prefix,\n extraClasses = _classParser.rest;\n\n var extraStyles = styleParser(node);\n var transform = transformParser(node);\n var symbol = symbolParser(node);\n var extraAttributes = attributesParser(node);\n var mask = maskParser(node);\n return {\n iconName: iconName,\n title: node.getAttribute('title'),\n titleId: node.getAttribute('data-fa-title-id'),\n prefix: prefix,\n transform: transform,\n symbol: symbol,\n mask: mask,\n maskId: node.getAttribute('data-fa-mask-id'),\n extra: {\n classes: extraClasses,\n styles: extraStyles,\n attributes: extraAttributes\n }\n };\n}\n\nfunction MissingIcon(error) {\n this.name = 'MissingIcon';\n this.message = error || 'Icon unavailable';\n this.stack = new Error().stack;\n}\nMissingIcon.prototype = Object.create(Error.prototype);\nMissingIcon.prototype.constructor = MissingIcon;\n\nvar FILL = {\n fill: 'currentColor'\n};\nvar ANIMATION_BASE = {\n attributeType: 'XML',\n repeatCount: 'indefinite',\n dur: '2s'\n};\nvar RING = {\n tag: 'path',\n attributes: _objectSpread({}, FILL, {\n d: 'M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z'\n })\n};\n\nvar OPACITY_ANIMATE = _objectSpread({}, ANIMATION_BASE, {\n attributeName: 'opacity'\n});\n\nvar DOT = {\n tag: 'circle',\n attributes: _objectSpread({}, FILL, {\n cx: '256',\n cy: '364',\n r: '28'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread({}, ANIMATION_BASE, {\n attributeName: 'r',\n values: '28;14;28;28;14;28;'\n })\n }, {\n tag: 'animate',\n attributes: _objectSpread({}, OPACITY_ANIMATE, {\n values: '1;0;1;1;0;1;'\n })\n }]\n};\nvar QUESTION = {\n tag: 'path',\n attributes: _objectSpread({}, FILL, {\n opacity: '1',\n d: 'M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread({}, OPACITY_ANIMATE, {\n values: '1;0;0;0;0;1;'\n })\n }]\n};\nvar EXCLAMATION = {\n tag: 'path',\n attributes: _objectSpread({}, FILL, {\n opacity: '0',\n d: 'M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread({}, OPACITY_ANIMATE, {\n values: '0;0;1;1;0;0;'\n })\n }]\n};\nvar missing = {\n tag: 'g',\n children: [RING, DOT, QUESTION, EXCLAMATION]\n};\n\nvar styles$2 = namespace.styles;\nfunction asFoundIcon(icon) {\n var width = icon[0];\n var height = icon[1];\n\n var _icon$slice = icon.slice(4),\n _icon$slice2 = _slicedToArray(_icon$slice, 1),\n vectorData = _icon$slice2[0];\n\n var element = null;\n\n if (Array.isArray(vectorData)) {\n element = {\n tag: 'g',\n attributes: {\n class: \"\".concat(config.familyPrefix, \"-\").concat(DUOTONE_CLASSES.GROUP)\n },\n children: [{\n tag: 'path',\n attributes: {\n class: \"\".concat(config.familyPrefix, \"-\").concat(DUOTONE_CLASSES.SECONDARY),\n fill: 'currentColor',\n d: vectorData[0]\n }\n }, {\n tag: 'path',\n attributes: {\n class: \"\".concat(config.familyPrefix, \"-\").concat(DUOTONE_CLASSES.PRIMARY),\n fill: 'currentColor',\n d: vectorData[1]\n }\n }]\n };\n } else {\n element = {\n tag: 'path',\n attributes: {\n fill: 'currentColor',\n d: vectorData\n }\n };\n }\n\n return {\n found: true,\n width: width,\n height: height,\n icon: element\n };\n}\nfunction findIcon(iconName, prefix) {\n return new picked(function (resolve, reject) {\n var val = {\n found: false,\n width: 512,\n height: 512,\n icon: missing\n };\n\n if (iconName && prefix && styles$2[prefix] && styles$2[prefix][iconName]) {\n var icon = styles$2[prefix][iconName];\n return resolve(asFoundIcon(icon));\n }\n\n if (iconName && prefix && !config.showMissingIcons) {\n reject(new MissingIcon(\"Icon is missing for prefix \".concat(prefix, \" with icon name \").concat(iconName)));\n } else {\n resolve(val);\n }\n });\n}\n\nvar styles$3 = namespace.styles;\n\nfunction generateSvgReplacementMutation(node, nodeMeta) {\n var iconName = nodeMeta.iconName,\n title = nodeMeta.title,\n titleId = nodeMeta.titleId,\n prefix = nodeMeta.prefix,\n transform = nodeMeta.transform,\n symbol = nodeMeta.symbol,\n mask = nodeMeta.mask,\n maskId = nodeMeta.maskId,\n extra = nodeMeta.extra;\n return new picked(function (resolve, reject) {\n picked.all([findIcon(iconName, prefix), findIcon(mask.iconName, mask.prefix)]).then(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n main = _ref2[0],\n mask = _ref2[1];\n\n resolve([node, makeInlineSvgAbstract({\n icons: {\n main: main,\n mask: mask\n },\n prefix: prefix,\n iconName: iconName,\n transform: transform,\n symbol: symbol,\n mask: mask,\n maskId: maskId,\n title: title,\n titleId: titleId,\n extra: extra,\n watchable: true\n })]);\n });\n });\n}\n\nfunction generateLayersText(node, nodeMeta) {\n var title = nodeMeta.title,\n transform = nodeMeta.transform,\n extra = nodeMeta.extra;\n var width = null;\n var height = null;\n\n if (IS_IE) {\n var computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);\n var boundingClientRect = node.getBoundingClientRect();\n width = boundingClientRect.width / computedFontSize;\n height = boundingClientRect.height / computedFontSize;\n }\n\n if (config.autoA11y && !title) {\n extra.attributes['aria-hidden'] = 'true';\n }\n\n return picked.resolve([node, makeLayersTextAbstract({\n content: node.innerHTML,\n width: width,\n height: height,\n transform: transform,\n title: title,\n extra: extra,\n watchable: true\n })]);\n}\n\nfunction generateMutation(node) {\n var nodeMeta = parseMeta(node);\n\n if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {\n return generateLayersText(node, nodeMeta);\n } else {\n return generateSvgReplacementMutation(node, nodeMeta);\n }\n}\n\nfunction onTree(root) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!IS_DOM) return;\n var htmlClassList = DOCUMENT.documentElement.classList;\n\n var hclAdd = function hclAdd(suffix) {\n return htmlClassList.add(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var hclRemove = function hclRemove(suffix) {\n return htmlClassList.remove(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var prefixes = config.autoFetchSvg ? Object.keys(PREFIX_TO_STYLE) : Object.keys(styles$3);\n var prefixesDomQuery = [\".\".concat(LAYERS_TEXT_CLASSNAME, \":not([\").concat(DATA_FA_I2SVG, \"])\")].concat(prefixes.map(function (p) {\n return \".\".concat(p, \":not([\").concat(DATA_FA_I2SVG, \"])\");\n })).join(', ');\n\n if (prefixesDomQuery.length === 0) {\n return;\n }\n\n var candidates = [];\n\n try {\n candidates = toArray(root.querySelectorAll(prefixesDomQuery));\n } catch (e) {// noop\n }\n\n if (candidates.length > 0) {\n hclAdd('pending');\n hclRemove('complete');\n } else {\n return;\n }\n\n var mark = perf.begin('onTree');\n var mutations = candidates.reduce(function (acc, node) {\n try {\n var mutation = generateMutation(node);\n\n if (mutation) {\n acc.push(mutation);\n }\n } catch (e) {\n if (!PRODUCTION) {\n if (e instanceof MissingIcon) {\n console.error(e);\n }\n }\n }\n\n return acc;\n }, []);\n return new picked(function (resolve, reject) {\n picked.all(mutations).then(function (resolvedMutations) {\n perform(resolvedMutations, function () {\n hclAdd('active');\n hclAdd('complete');\n hclRemove('pending');\n if (typeof callback === 'function') callback();\n mark();\n resolve();\n });\n }).catch(function () {\n mark();\n reject();\n });\n });\n}\nfunction onNode(node) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n generateMutation(node).then(function (mutation) {\n if (mutation) {\n perform([mutation], callback);\n }\n });\n}\n\nfunction replaceForPosition(node, position) {\n var pendingAttribute = \"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));\n return new picked(function (resolve, reject) {\n if (node.getAttribute(pendingAttribute) !== null) {\n // This node is already being processed\n return resolve();\n }\n\n var children = toArray(node.children);\n var alreadyProcessedPseudoElement = children.filter(function (c) {\n return c.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position;\n })[0];\n var styles = WINDOW.getComputedStyle(node, position);\n var fontFamily = styles.getPropertyValue('font-family').match(FONT_FAMILY_PATTERN);\n var fontWeight = styles.getPropertyValue('font-weight');\n var content = styles.getPropertyValue('content');\n\n if (alreadyProcessedPseudoElement && !fontFamily) {\n // If we've already processed it but the current computed style does not result in a font-family,\n // that probably means that a class name that was previously present to make the icon has been\n // removed. So we now should delete the icon.\n node.removeChild(alreadyProcessedPseudoElement);\n return resolve();\n } else if (fontFamily && content !== 'none' && content !== '') {\n var _content = styles.getPropertyValue('content');\n\n var prefix = ~['Solid', 'Regular', 'Light', 'Duotone', 'Brands', 'Kit'].indexOf(fontFamily[2]) ? STYLE_TO_PREFIX[fontFamily[2].toLowerCase()] : FONT_WEIGHT_TO_PREFIX[fontWeight];\n var hexValue = toHex(_content.length === 3 ? _content.substr(1, 1) : _content);\n var iconName = byUnicode(prefix, hexValue);\n var iconIdentifier = iconName; // Only convert the pseudo element in this :before/:after position into an icon if we haven't\n // already done so with the same prefix and iconName\n\n if (iconName && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {\n node.setAttribute(pendingAttribute, iconIdentifier);\n\n if (alreadyProcessedPseudoElement) {\n // Delete the old one, since we're replacing it with a new one\n node.removeChild(alreadyProcessedPseudoElement);\n }\n\n var meta = blankMeta();\n var extra = meta.extra;\n extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;\n findIcon(iconName, prefix).then(function (main) {\n var abstract = makeInlineSvgAbstract(_objectSpread({}, meta, {\n icons: {\n main: main,\n mask: emptyCanonicalIcon()\n },\n prefix: prefix,\n iconName: iconIdentifier,\n extra: extra,\n watchable: true\n }));\n var element = DOCUMENT.createElement('svg');\n\n if (position === ':before') {\n node.insertBefore(element, node.firstChild);\n } else {\n node.appendChild(element);\n }\n\n element.outerHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n node.removeAttribute(pendingAttribute);\n resolve();\n }).catch(reject);\n } else {\n resolve();\n }\n } else {\n resolve();\n }\n });\n}\n\nfunction replace(node) {\n return picked.all([replaceForPosition(node, ':before'), replaceForPosition(node, ':after')]);\n}\n\nfunction processable(node) {\n return node.parentNode !== document.head && !~TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS.indexOf(node.tagName.toUpperCase()) && !node.getAttribute(DATA_FA_PSEUDO_ELEMENT) && (!node.parentNode || node.parentNode.tagName !== 'svg');\n}\n\nfunction searchPseudoElements (root) {\n if (!IS_DOM) return;\n return new picked(function (resolve, reject) {\n var operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);\n var end = perf.begin('searchPseudoElements');\n disableObservation();\n picked.all(operations).then(function () {\n end();\n enableObservation();\n resolve();\n }).catch(function () {\n end();\n enableObservation();\n reject();\n });\n });\n}\n\nvar baseStyles = \"svg:not(:root).svg-inline--fa {\\n overflow: visible;\\n}\\n\\n.svg-inline--fa {\\n display: inline-block;\\n font-size: inherit;\\n height: 1em;\\n overflow: visible;\\n vertical-align: -0.125em;\\n}\\n.svg-inline--fa.fa-lg {\\n vertical-align: -0.225em;\\n}\\n.svg-inline--fa.fa-w-1 {\\n width: 0.0625em;\\n}\\n.svg-inline--fa.fa-w-2 {\\n width: 0.125em;\\n}\\n.svg-inline--fa.fa-w-3 {\\n width: 0.1875em;\\n}\\n.svg-inline--fa.fa-w-4 {\\n width: 0.25em;\\n}\\n.svg-inline--fa.fa-w-5 {\\n width: 0.3125em;\\n}\\n.svg-inline--fa.fa-w-6 {\\n width: 0.375em;\\n}\\n.svg-inline--fa.fa-w-7 {\\n width: 0.4375em;\\n}\\n.svg-inline--fa.fa-w-8 {\\n width: 0.5em;\\n}\\n.svg-inline--fa.fa-w-9 {\\n width: 0.5625em;\\n}\\n.svg-inline--fa.fa-w-10 {\\n width: 0.625em;\\n}\\n.svg-inline--fa.fa-w-11 {\\n width: 0.6875em;\\n}\\n.svg-inline--fa.fa-w-12 {\\n width: 0.75em;\\n}\\n.svg-inline--fa.fa-w-13 {\\n width: 0.8125em;\\n}\\n.svg-inline--fa.fa-w-14 {\\n width: 0.875em;\\n}\\n.svg-inline--fa.fa-w-15 {\\n width: 0.9375em;\\n}\\n.svg-inline--fa.fa-w-16 {\\n width: 1em;\\n}\\n.svg-inline--fa.fa-w-17 {\\n width: 1.0625em;\\n}\\n.svg-inline--fa.fa-w-18 {\\n width: 1.125em;\\n}\\n.svg-inline--fa.fa-w-19 {\\n width: 1.1875em;\\n}\\n.svg-inline--fa.fa-w-20 {\\n width: 1.25em;\\n}\\n.svg-inline--fa.fa-pull-left {\\n margin-right: 0.3em;\\n width: auto;\\n}\\n.svg-inline--fa.fa-pull-right {\\n margin-left: 0.3em;\\n width: auto;\\n}\\n.svg-inline--fa.fa-border {\\n height: 1.5em;\\n}\\n.svg-inline--fa.fa-li {\\n width: 2em;\\n}\\n.svg-inline--fa.fa-fw {\\n width: 1.25em;\\n}\\n\\n.fa-layers svg.svg-inline--fa {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n\\n.fa-layers {\\n display: inline-block;\\n height: 1em;\\n position: relative;\\n text-align: center;\\n vertical-align: -0.125em;\\n width: 1em;\\n}\\n.fa-layers svg.svg-inline--fa {\\n -webkit-transform-origin: center center;\\n transform-origin: center center;\\n}\\n\\n.fa-layers-counter, .fa-layers-text {\\n display: inline-block;\\n position: absolute;\\n text-align: center;\\n}\\n\\n.fa-layers-text {\\n left: 50%;\\n top: 50%;\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n -webkit-transform-origin: center center;\\n transform-origin: center center;\\n}\\n\\n.fa-layers-counter {\\n background-color: #ff253a;\\n border-radius: 1em;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n color: #fff;\\n height: 1.5em;\\n line-height: 1;\\n max-width: 5em;\\n min-width: 1.5em;\\n overflow: hidden;\\n padding: 0.25em;\\n right: 0;\\n text-overflow: ellipsis;\\n top: 0;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-bottom-right {\\n bottom: 0;\\n right: 0;\\n top: auto;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: bottom right;\\n transform-origin: bottom right;\\n}\\n\\n.fa-layers-bottom-left {\\n bottom: 0;\\n left: 0;\\n right: auto;\\n top: auto;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: bottom left;\\n transform-origin: bottom left;\\n}\\n\\n.fa-layers-top-right {\\n right: 0;\\n top: 0;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-top-left {\\n left: 0;\\n right: auto;\\n top: 0;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: top left;\\n transform-origin: top left;\\n}\\n\\n.fa-lg {\\n font-size: 1.3333333333em;\\n line-height: 0.75em;\\n vertical-align: -0.0667em;\\n}\\n\\n.fa-xs {\\n font-size: 0.75em;\\n}\\n\\n.fa-sm {\\n font-size: 0.875em;\\n}\\n\\n.fa-1x {\\n font-size: 1em;\\n}\\n\\n.fa-2x {\\n font-size: 2em;\\n}\\n\\n.fa-3x {\\n font-size: 3em;\\n}\\n\\n.fa-4x {\\n font-size: 4em;\\n}\\n\\n.fa-5x {\\n font-size: 5em;\\n}\\n\\n.fa-6x {\\n font-size: 6em;\\n}\\n\\n.fa-7x {\\n font-size: 7em;\\n}\\n\\n.fa-8x {\\n font-size: 8em;\\n}\\n\\n.fa-9x {\\n font-size: 9em;\\n}\\n\\n.fa-10x {\\n font-size: 10em;\\n}\\n\\n.fa-fw {\\n text-align: center;\\n width: 1.25em;\\n}\\n\\n.fa-ul {\\n list-style-type: none;\\n margin-left: 2.5em;\\n padding-left: 0;\\n}\\n.fa-ul > li {\\n position: relative;\\n}\\n\\n.fa-li {\\n left: -2em;\\n position: absolute;\\n text-align: center;\\n width: 2em;\\n line-height: inherit;\\n}\\n\\n.fa-border {\\n border: solid 0.08em #eee;\\n border-radius: 0.1em;\\n padding: 0.2em 0.25em 0.15em;\\n}\\n\\n.fa-pull-left {\\n float: left;\\n}\\n\\n.fa-pull-right {\\n float: right;\\n}\\n\\n.fa.fa-pull-left,\\n.fas.fa-pull-left,\\n.far.fa-pull-left,\\n.fal.fa-pull-left,\\n.fab.fa-pull-left {\\n margin-right: 0.3em;\\n}\\n.fa.fa-pull-right,\\n.fas.fa-pull-right,\\n.far.fa-pull-right,\\n.fal.fa-pull-right,\\n.fab.fa-pull-right {\\n margin-left: 0.3em;\\n}\\n\\n.fa-spin {\\n -webkit-animation: fa-spin 2s infinite linear;\\n animation: fa-spin 2s infinite linear;\\n}\\n\\n.fa-pulse {\\n -webkit-animation: fa-spin 1s infinite steps(8);\\n animation: fa-spin 1s infinite steps(8);\\n}\\n\\n@-webkit-keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n.fa-rotate-90 {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)\\\";\\n -webkit-transform: rotate(90deg);\\n transform: rotate(90deg);\\n}\\n\\n.fa-rotate-180 {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)\\\";\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n\\n.fa-rotate-270 {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)\\\";\\n -webkit-transform: rotate(270deg);\\n transform: rotate(270deg);\\n}\\n\\n.fa-flip-horizontal {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)\\\";\\n -webkit-transform: scale(-1, 1);\\n transform: scale(-1, 1);\\n}\\n\\n.fa-flip-vertical {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)\\\";\\n -webkit-transform: scale(1, -1);\\n transform: scale(1, -1);\\n}\\n\\n.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)\\\";\\n -webkit-transform: scale(-1, -1);\\n transform: scale(-1, -1);\\n}\\n\\n:root .fa-rotate-90,\\n:root .fa-rotate-180,\\n:root .fa-rotate-270,\\n:root .fa-flip-horizontal,\\n:root .fa-flip-vertical,\\n:root .fa-flip-both {\\n -webkit-filter: none;\\n filter: none;\\n}\\n\\n.fa-stack {\\n display: inline-block;\\n height: 2em;\\n position: relative;\\n width: 2.5em;\\n}\\n\\n.fa-stack-1x,\\n.fa-stack-2x {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n\\n.svg-inline--fa.fa-stack-1x {\\n height: 1em;\\n width: 1.25em;\\n}\\n.svg-inline--fa.fa-stack-2x {\\n height: 2em;\\n width: 2.5em;\\n}\\n\\n.fa-inverse {\\n color: #fff;\\n}\\n\\n.sr-only {\\n border: 0;\\n clip: rect(0, 0, 0, 0);\\n height: 1px;\\n margin: -1px;\\n overflow: hidden;\\n padding: 0;\\n position: absolute;\\n width: 1px;\\n}\\n\\n.sr-only-focusable:active, .sr-only-focusable:focus {\\n clip: auto;\\n height: auto;\\n margin: 0;\\n overflow: visible;\\n position: static;\\n width: auto;\\n}\\n\\n.svg-inline--fa .fa-primary {\\n fill: var(--fa-primary-color, currentColor);\\n opacity: 1;\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa .fa-secondary {\\n fill: var(--fa-secondary-color, currentColor);\\n opacity: 0.4;\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-primary {\\n opacity: 0.4;\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\\n opacity: 1;\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa mask .fa-primary,\\n.svg-inline--fa mask .fa-secondary {\\n fill: black;\\n}\\n\\n.fad.fa-inverse {\\n color: #fff;\\n}\";\n\nfunction css () {\n var dfp = DEFAULT_FAMILY_PREFIX;\n var drc = DEFAULT_REPLACEMENT_CLASS;\n var fp = config.familyPrefix;\n var rc = config.replacementClass;\n var s = baseStyles;\n\n if (fp !== dfp || rc !== drc) {\n var dPatt = new RegExp(\"\\\\.\".concat(dfp, \"\\\\-\"), 'g');\n var customPropPatt = new RegExp(\"\\\\--\".concat(dfp, \"\\\\-\"), 'g');\n var rPatt = new RegExp(\"\\\\.\".concat(drc), 'g');\n s = s.replace(dPatt, \".\".concat(fp, \"-\")).replace(customPropPatt, \"--\".concat(fp, \"-\")).replace(rPatt, \".\".concat(rc));\n }\n\n return s;\n}\n\nvar Library =\n/*#__PURE__*/\nfunction () {\n function Library() {\n _classCallCheck(this, Library);\n\n this.definitions = {};\n }\n\n _createClass(Library, [{\n key: \"add\",\n value: function add() {\n var _this = this;\n\n for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {\n definitions[_key] = arguments[_key];\n }\n\n var additions = definitions.reduce(this._pullDefinitions, {});\n Object.keys(additions).forEach(function (key) {\n _this.definitions[key] = _objectSpread({}, _this.definitions[key] || {}, additions[key]);\n defineIcons(key, additions[key]);\n build();\n });\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.definitions = {};\n }\n }, {\n key: \"_pullDefinitions\",\n value: function _pullDefinitions(additions, definition) {\n var normalized = definition.prefix && definition.iconName && definition.icon ? {\n 0: definition\n } : definition;\n Object.keys(normalized).map(function (key) {\n var _normalized$key = normalized[key],\n prefix = _normalized$key.prefix,\n iconName = _normalized$key.iconName,\n icon = _normalized$key.icon;\n if (!additions[prefix]) additions[prefix] = {};\n additions[prefix][iconName] = icon;\n });\n return additions;\n }\n }]);\n\n return Library;\n}();\n\nfunction ensureCss() {\n if (config.autoAddCss && !_cssInserted) {\n insertCss(css());\n\n _cssInserted = true;\n }\n}\n\nfunction apiObject(val, abstractCreator) {\n Object.defineProperty(val, 'abstract', {\n get: abstractCreator\n });\n Object.defineProperty(val, 'html', {\n get: function get() {\n return val.abstract.map(function (a) {\n return toHtml(a);\n });\n }\n });\n Object.defineProperty(val, 'node', {\n get: function get() {\n if (!IS_DOM) return;\n var container = DOCUMENT.createElement('div');\n container.innerHTML = val.html;\n return container.children;\n }\n });\n return val;\n}\n\nfunction findIconDefinition(iconLookup) {\n var _iconLookup$prefix = iconLookup.prefix,\n prefix = _iconLookup$prefix === void 0 ? 'fa' : _iconLookup$prefix,\n iconName = iconLookup.iconName;\n if (!iconName) return;\n return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);\n}\n\nfunction resolveIcons(next) {\n return function (maybeIconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});\n var mask = params.mask;\n\n if (mask) {\n mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});\n }\n\n return next(iconDefinition, _objectSpread({}, params, {\n mask: mask\n }));\n };\n}\n\nvar library = new Library();\nvar noAuto = function noAuto() {\n config.autoReplaceSvg = false;\n config.observeMutations = false;\n disconnect();\n};\nvar _cssInserted = false;\nvar dom = {\n i2svg: function i2svg() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (IS_DOM) {\n ensureCss();\n var _params$node = params.node,\n node = _params$node === void 0 ? DOCUMENT : _params$node,\n _params$callback = params.callback,\n callback = _params$callback === void 0 ? function () {} : _params$callback;\n\n if (config.searchPseudoElements) {\n searchPseudoElements(node);\n }\n\n return onTree(node, callback);\n } else {\n return picked.reject('Operation requires a DOM of some kind.');\n }\n },\n css: css,\n insertCss: function insertCss$$1() {\n if (!_cssInserted) {\n insertCss(css());\n\n _cssInserted = true;\n }\n },\n watch: function watch() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var autoReplaceSvgRoot = params.autoReplaceSvgRoot,\n observeMutationsRoot = params.observeMutationsRoot;\n\n if (config.autoReplaceSvg === false) {\n config.autoReplaceSvg = true;\n }\n\n config.observeMutations = true;\n domready(function () {\n autoReplace({\n autoReplaceSvgRoot: autoReplaceSvgRoot\n });\n observe({\n treeCallback: onTree,\n nodeCallback: onNode,\n pseudoElementsCallback: searchPseudoElements,\n observeMutationsRoot: observeMutationsRoot\n });\n });\n }\n};\nvar parse = {\n transform: function transform(transformString) {\n return parseTransformString(transformString);\n }\n};\nvar icon = resolveIcons(function (iconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform = params.transform,\n transform = _params$transform === void 0 ? meaninglessTransform : _params$transform,\n _params$symbol = params.symbol,\n symbol = _params$symbol === void 0 ? false : _params$symbol,\n _params$mask = params.mask,\n mask = _params$mask === void 0 ? null : _params$mask,\n _params$maskId = params.maskId,\n maskId = _params$maskId === void 0 ? null : _params$maskId,\n _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$titleId = params.titleId,\n titleId = _params$titleId === void 0 ? null : _params$titleId,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n if (!iconDefinition) return;\n var prefix = iconDefinition.prefix,\n iconName = iconDefinition.iconName,\n icon = iconDefinition.icon;\n return apiObject(_objectSpread({\n type: 'icon'\n }, iconDefinition), function () {\n ensureCss();\n\n if (config.autoA11y) {\n if (title) {\n attributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n attributes['aria-hidden'] = 'true';\n attributes['focusable'] = 'false';\n }\n }\n\n return makeInlineSvgAbstract({\n icons: {\n main: asFoundIcon(icon),\n mask: mask ? asFoundIcon(mask.icon) : {\n found: false,\n width: null,\n height: null,\n icon: {}\n }\n },\n prefix: prefix,\n iconName: iconName,\n transform: _objectSpread({}, meaninglessTransform, transform),\n symbol: symbol,\n title: title,\n maskId: maskId,\n titleId: titleId,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: classes\n }\n });\n });\n});\nvar text = function text(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform2 = params.transform,\n transform = _params$transform2 === void 0 ? meaninglessTransform : _params$transform2,\n _params$title2 = params.title,\n title = _params$title2 === void 0 ? null : _params$title2,\n _params$classes2 = params.classes,\n classes = _params$classes2 === void 0 ? [] : _params$classes2,\n _params$attributes2 = params.attributes,\n attributes = _params$attributes2 === void 0 ? {} : _params$attributes2,\n _params$styles2 = params.styles,\n styles = _params$styles2 === void 0 ? {} : _params$styles2;\n return apiObject({\n type: 'text',\n content: content\n }, function () {\n ensureCss();\n return makeLayersTextAbstract({\n content: content,\n transform: _objectSpread({}, meaninglessTransform, transform),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.familyPrefix, \"-layers-text\")].concat(_toConsumableArray(classes))\n }\n });\n });\n};\nvar counter = function counter(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$title3 = params.title,\n title = _params$title3 === void 0 ? null : _params$title3,\n _params$classes3 = params.classes,\n classes = _params$classes3 === void 0 ? [] : _params$classes3,\n _params$attributes3 = params.attributes,\n attributes = _params$attributes3 === void 0 ? {} : _params$attributes3,\n _params$styles3 = params.styles,\n styles = _params$styles3 === void 0 ? {} : _params$styles3;\n return apiObject({\n type: 'counter',\n content: content\n }, function () {\n ensureCss();\n return makeLayersCounterAbstract({\n content: content.toString(),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.familyPrefix, \"-layers-counter\")].concat(_toConsumableArray(classes))\n }\n });\n });\n};\nvar layer = function layer(assembler) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$classes4 = params.classes,\n classes = _params$classes4 === void 0 ? [] : _params$classes4;\n return apiObject({\n type: 'layer'\n }, function () {\n ensureCss();\n var children = [];\n assembler(function (args) {\n Array.isArray(args) ? args.map(function (a) {\n children = children.concat(a.abstract);\n }) : children = children.concat(args.abstract);\n });\n return [{\n tag: 'span',\n attributes: {\n class: [\"\".concat(config.familyPrefix, \"-layers\")].concat(_toConsumableArray(classes)).join(' ')\n },\n children: children\n }];\n });\n};\nvar api = {\n noAuto: noAuto,\n config: config,\n dom: dom,\n library: library,\n parse: parse,\n findIconDefinition: findIconDefinition,\n icon: icon,\n text: text,\n counter: counter,\n layer: layer,\n toHtml: toHtml\n};\n\nvar autoReplace = function autoReplace() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _params$autoReplaceSv = params.autoReplaceSvgRoot,\n autoReplaceSvgRoot = _params$autoReplaceSv === void 0 ? DOCUMENT : _params$autoReplaceSv;\n if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({\n node: autoReplaceSvgRoot\n });\n};\n\nexport { icon, noAuto, config, toHtml, layer, text, counter, library, dom, parse, findIconDefinition };\n","/**\n * Dictionary of booleans.\n *\n * @internal\n */\nexport interface IDictionary {\n [className: string]: boolean;\n}\n\n/**\n * Serializable object.\n *\n * @internal\n */\nexport interface ISerializableObject {\n toString?: () => string;\n}\n\n/**\n * css input type.\n *\n * @internal\n */\nexport type ICssInput = string | ISerializableObject | IDictionary | null | undefined | boolean;\n\n/**\n * Concatination helper, which can merge class names together. Skips over falsey values.\n *\n * @public\n */\nexport function css(...args: ICssInput[]): string {\n let classes = [];\n\n for (let arg of args) {\n if (arg) {\n if (typeof arg === 'string') {\n classes.push(arg);\n } else if (arg.hasOwnProperty('toString') && typeof arg.toString === 'function') {\n classes.push(arg.toString());\n } else {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n for (let key in arg as any) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if ((arg as any)[key]) {\n classes.push(key);\n }\n }\n }\n }\n }\n\n return classes.join(' ');\n}\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.min.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","import { useContext } from 'react';\nimport { useCustomizationSettings } from '@fluentui/utilities';\nimport { createTheme } from '@fluentui/theme';\nimport { ThemeContext } from './ThemeContext';\nimport type { ITheme, Theme } from '@fluentui/theme';\n\n/**\n * Get theme from CustomizerContext or Customizations singleton.\n */\nfunction useCompatTheme(): ITheme | undefined {\n return useCustomizationSettings(['theme']).theme;\n}\n\n/**\n * React hook for programmatically accessing the theme.\n */\nexport const useTheme = (): Theme => {\n const theme = useContext(ThemeContext);\n const legacyTheme = useCompatTheme();\n\n return theme || legacyTheme || createTheme({});\n};\n","import * as React from 'react';\nimport type { Theme } from '@fluentui/theme';\n\nexport const ThemeContext = React.createContext(undefined);\n","import type { IEffects, IPalette, ISemanticColors } from '../types/index';\n\n/** Generates all the semantic slot colors based on the theme so far\n * We'll use these as fallbacks for semantic slots that the passed in theme did not define.\n * The caller must still mix in the customized semantic slots at the end.\n */\nexport function makeSemanticColors(\n p: IPalette,\n e: IEffects,\n s: Partial | undefined,\n isInverted: boolean,\n depComments: boolean = false,\n): ISemanticColors {\n const semanticColors: Partial = {\n primaryButtonBorder: 'transparent',\n\n errorText: !isInverted ? '#a4262c' : '#F1707B',\n\n messageText: !isInverted ? '#323130' : '#F3F2F1',\n messageLink: !isInverted ? '#005A9E' : '#6CB8F6',\n messageLinkHovered: !isInverted ? '#004578' : '#82C7FF',\n\n infoIcon: !isInverted ? '#605e5c' : '#C8C6C4',\n errorIcon: !isInverted ? '#A80000' : '#F1707B',\n blockingIcon: !isInverted ? '#FDE7E9' : '#442726',\n warningIcon: !isInverted ? '#797775' : '#C8C6C4',\n severeWarningIcon: !isInverted ? '#D83B01' : '#FCE100',\n successIcon: !isInverted ? '#107C10' : '#92C353',\n\n infoBackground: !isInverted ? '#f3f2f1' : '#323130',\n errorBackground: !isInverted ? '#FDE7E9' : '#442726',\n blockingBackground: !isInverted ? '#FDE7E9' : '#442726',\n warningBackground: !isInverted ? '#FFF4CE' : '#433519',\n severeWarningBackground: !isInverted ? '#FED9CC' : '#4F2A0F',\n successBackground: !isInverted ? '#DFF6DD' : '#393D1B',\n\n // deprecated\n warningHighlight: !isInverted ? '#ffb900' : '#fff100',\n successText: !isInverted ? '#107C10' : '#92c353',\n\n ...s,\n };\n\n const fullSemanticColors = getSemanticColors(p, e, semanticColors, isInverted);\n return _fixDeprecatedSlots(fullSemanticColors, depComments);\n}\n\n/**\n * Map partial platte and effects to partial semantic colors.\n */\nexport function getSemanticColors>(\n p: Partial | undefined,\n e: Partial | undefined,\n s: Partial | undefined,\n isInverted: boolean,\n depComments: boolean = false,\n): TResult {\n let result: Partial = {};\n\n // map palette\n const {\n white,\n black,\n themePrimary,\n themeDark,\n themeDarker,\n themeDarkAlt,\n themeLighter,\n neutralLight,\n neutralLighter,\n neutralDark,\n neutralQuaternary,\n neutralQuaternaryAlt,\n neutralPrimary,\n neutralSecondary,\n neutralSecondaryAlt,\n neutralTertiary,\n neutralTertiaryAlt,\n neutralLighterAlt,\n accent,\n } = p || {};\n\n if (white) {\n result.bodyBackground = white;\n result.bodyFrameBackground = white;\n result.accentButtonText = white;\n result.buttonBackground = white;\n result.primaryButtonText = white;\n result.primaryButtonTextHovered = white;\n result.primaryButtonTextPressed = white;\n result.inputBackground = white;\n result.inputForegroundChecked = white;\n result.listBackground = white;\n result.menuBackground = white;\n result.cardStandoutBackground = white;\n }\n if (black) {\n result.bodyTextChecked = black;\n result.buttonTextCheckedHovered = black;\n }\n if (themePrimary) {\n result.link = themePrimary;\n result.primaryButtonBackground = themePrimary;\n result.inputBackgroundChecked = themePrimary;\n result.inputIcon = themePrimary;\n result.inputFocusBorderAlt = themePrimary;\n result.menuIcon = themePrimary;\n result.menuHeader = themePrimary;\n result.accentButtonBackground = themePrimary;\n }\n if (themeDark) {\n result.primaryButtonBackgroundPressed = themeDark;\n result.inputBackgroundCheckedHovered = themeDark;\n result.inputIconHovered = themeDark;\n }\n if (themeDarker) {\n result.linkHovered = themeDarker;\n }\n if (themeDarkAlt) {\n result.primaryButtonBackgroundHovered = themeDarkAlt;\n }\n if (themeLighter) {\n result.inputPlaceholderBackgroundChecked = themeLighter;\n }\n if (neutralLight) {\n result.bodyBackgroundChecked = neutralLight;\n result.bodyFrameDivider = neutralLight;\n result.bodyDivider = neutralLight;\n result.variantBorder = neutralLight;\n result.buttonBackgroundCheckedHovered = neutralLight;\n result.buttonBackgroundPressed = neutralLight;\n result.listItemBackgroundChecked = neutralLight;\n result.listHeaderBackgroundPressed = neutralLight;\n result.menuItemBackgroundPressed = neutralLight;\n // eslint-disable-next-line deprecation/deprecation\n result.menuItemBackgroundChecked = neutralLight;\n }\n if (neutralLighter) {\n result.bodyBackgroundHovered = neutralLighter;\n result.buttonBackgroundHovered = neutralLighter;\n result.buttonBackgroundDisabled = neutralLighter;\n result.buttonBorderDisabled = neutralLighter;\n result.primaryButtonBackgroundDisabled = neutralLighter;\n result.disabledBackground = neutralLighter;\n result.listItemBackgroundHovered = neutralLighter;\n result.listHeaderBackgroundHovered = neutralLighter;\n result.menuItemBackgroundHovered = neutralLighter;\n }\n if (neutralQuaternary) {\n result.primaryButtonTextDisabled = neutralQuaternary;\n result.disabledSubtext = neutralQuaternary;\n }\n if (neutralQuaternaryAlt) {\n result.listItemBackgroundCheckedHovered = neutralQuaternaryAlt;\n }\n if (neutralTertiary) {\n result.disabledBodyText = neutralTertiary;\n result.variantBorderHovered = s?.variantBorderHovered || neutralTertiary;\n result.buttonTextDisabled = neutralTertiary;\n result.inputIconDisabled = neutralTertiary;\n result.disabledText = neutralTertiary;\n }\n if (neutralPrimary) {\n result.bodyText = neutralPrimary;\n result.actionLink = neutralPrimary;\n result.buttonText = neutralPrimary;\n result.inputBorderHovered = neutralPrimary;\n result.inputText = neutralPrimary;\n result.listText = neutralPrimary;\n result.menuItemText = neutralPrimary;\n }\n if (neutralLighterAlt) {\n result.bodyStandoutBackground = neutralLighterAlt;\n result.defaultStateBackground = neutralLighterAlt;\n }\n if (neutralDark) {\n result.actionLinkHovered = neutralDark;\n result.buttonTextHovered = neutralDark;\n result.buttonTextChecked = neutralDark;\n result.buttonTextPressed = neutralDark;\n result.inputTextHovered = neutralDark;\n result.menuItemTextHovered = neutralDark;\n }\n if (neutralSecondary) {\n result.bodySubtext = neutralSecondary;\n result.focusBorder = neutralSecondary;\n result.inputBorder = neutralSecondary;\n result.smallInputBorder = neutralSecondary;\n result.inputPlaceholderText = neutralSecondary;\n }\n if (neutralSecondaryAlt) {\n result.buttonBorder = neutralSecondaryAlt;\n }\n if (neutralTertiaryAlt) {\n result.disabledBodySubtext = neutralTertiaryAlt;\n result.disabledBorder = neutralTertiaryAlt;\n result.buttonBackgroundChecked = neutralTertiaryAlt;\n result.menuDivider = neutralTertiaryAlt;\n }\n if (accent) {\n result.accentButtonBackground = accent;\n }\n\n // map effects\n if (e?.elevation4) {\n result.cardShadow = e.elevation4;\n }\n if (!isInverted && e?.elevation8) {\n result.cardShadowHovered = e.elevation8;\n } else if (result.variantBorderHovered) {\n result.cardShadowHovered = '0 0 1px ' + result.variantBorderHovered;\n }\n\n result = {\n ...result,\n // mix in customized semantic slots\n ...s,\n };\n\n return result as TResult;\n}\n\nfunction _fixDeprecatedSlots(s: ISemanticColors, depComments: boolean): ISemanticColors {\n // Add @deprecated tag as comment if enabled\n let dep = '';\n if (depComments === true) {\n dep = ' /* @deprecated */';\n }\n\n /* eslint-disable deprecation/deprecation */\n s.listTextColor = s.listText + dep;\n s.menuItemBackgroundChecked += dep;\n s.warningHighlight += dep;\n s.warningText = s.messageText + dep;\n s.successText += dep;\n /* eslint-enable deprecation/deprecation */\n return s;\n}\n","import { IStyle, IStyleBaseArray } from './IStyle';\nimport { Stylesheet } from './Stylesheet';\n\n/**\n * Separates the classes and style objects. Any classes that are pre-registered\n * args are auto expanded into objects.\n */\nexport function extractStyleParts(\n ...args: (IStyle | IStyle[] | false | null | undefined)[]\n): { classes: string[]; objects: IStyleBaseArray } {\n const classes: string[] = [];\n const objects: {}[] = [];\n const stylesheet = Stylesheet.getInstance();\n\n function _processArgs(argsList: (IStyle | IStyle[])[]): void {\n for (const arg of argsList) {\n if (arg) {\n if (typeof arg === 'string') {\n if (arg.indexOf(' ') >= 0) {\n _processArgs(arg.split(' '));\n } else {\n const translatedArgs = stylesheet.argsFromClassName(arg);\n\n if (translatedArgs) {\n _processArgs(translatedArgs);\n } else {\n // Avoid adding the same class twice.\n if (classes.indexOf(arg) === -1) {\n classes.push(arg);\n }\n }\n }\n } else if (Array.isArray(arg)) {\n _processArgs(arg);\n } else if (typeof arg === 'object') {\n objects.push(arg);\n }\n }\n }\n }\n\n _processArgs(args);\n\n return {\n classes,\n objects,\n };\n}\n","import { getParent } from './getParent';\n/**\n * Finds the first parent element where the matchFunction returns true\n * @param element - element to start searching at\n * @param matchFunction - the function that determines if the element is a match\n * @returns the matched element or null no match was found\n */\nexport function findElementRecursive(\n element: HTMLElement | null,\n matchFunction: (element: HTMLElement) => boolean,\n): HTMLElement | null {\n if (!element || element === document.body) {\n return null;\n }\n return matchFunction(element) ? element : findElementRecursive(getParent(element), matchFunction);\n}\n","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import { getGlobalClassNames, HighContrastSelector, getHighContrastNoAdjustStyle } from '../../../Styling';\nimport { IsFocusVisibleClassName } from '../../../Utilities';\nimport type { ISuggestionsItemStyleProps, ISuggestionsItemStyles } from './SuggestionsItem.types';\n\nexport const SuggestionsItemGlobalClassNames = {\n root: 'ms-Suggestions-item',\n itemButton: 'ms-Suggestions-itemButton',\n closeButton: 'ms-Suggestions-closeButton',\n isSuggested: 'is-suggested',\n};\n\nexport function getStyles(props: ISuggestionsItemStyleProps): ISuggestionsItemStyles {\n const { className, theme, suggested } = props;\n\n const { palette, semanticColors } = theme;\n\n const classNames = getGlobalClassNames(SuggestionsItemGlobalClassNames, theme);\n\n return {\n root: [\n classNames.root,\n {\n display: 'flex',\n alignItems: 'stretch',\n boxSizing: 'border-box',\n width: '100%',\n position: 'relative',\n selectors: {\n '&:hover': {\n background: semanticColors.menuItemBackgroundHovered,\n },\n '&:hover .ms-Suggestions-closeButton': {\n display: 'block',\n },\n },\n },\n suggested && {\n selectors: {\n [`.${IsFocusVisibleClassName} &`]: {\n selectors: {\n [`.${classNames.closeButton}`]: {\n display: 'block',\n background: semanticColors.menuItemBackgroundPressed,\n },\n },\n },\n ':after': {\n pointerEvents: 'none',\n content: '\"\"',\n position: 'absolute',\n left: 0,\n top: 0,\n bottom: 0,\n right: 0,\n border: `1px solid ${theme.semanticColors.focusBorder}`,\n },\n },\n },\n className,\n ],\n itemButton: [\n classNames.itemButton,\n {\n width: '100%',\n padding: 0,\n border: 'none',\n height: '100%',\n // Force the item button to be collapsible so it can always shrink\n // to accommodate the close button as a peer in its flex container.\n minWidth: 0,\n // Require for IE11 to truncate the component.\n overflow: 'hidden',\n selectors: {\n [HighContrastSelector]: {\n color: 'WindowText',\n selectors: {\n ':hover': {\n background: 'Highlight',\n color: 'HighlightText',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n ':hover': {\n color: semanticColors.menuItemTextHovered,\n },\n },\n },\n suggested && [\n classNames.isSuggested,\n {\n background: semanticColors.menuItemBackgroundPressed,\n selectors: {\n ':hover': {\n background: semanticColors.menuDivider,\n },\n [HighContrastSelector]: {\n background: 'Highlight',\n color: 'HighlightText',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n ],\n ],\n closeButton: [\n classNames.closeButton,\n {\n display: 'none',\n color: palette.neutralSecondary,\n padding: '0 4px',\n height: 'auto',\n width: 32,\n selectors: {\n ':hover, :active': {\n background: palette.neutralTertiaryAlt,\n color: palette.neutralDark,\n },\n [HighContrastSelector]: {\n color: 'WindowText',\n },\n },\n },\n suggested && {\n [`.${IsFocusVisibleClassName} &`]: {\n selectors: {\n ':hover, :active': {\n background: palette.neutralTertiary,\n },\n },\n },\n selectors: {\n ':hover, :active': {\n background: palette.neutralTertiary,\n color: palette.neutralPrimary,\n },\n },\n },\n ],\n };\n}\n","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import * as React from 'react';\nimport { css, styled, classNamesFunction, composeRenderFunction, getNativeElementProps } from '../../Utilities';\nimport { Check } from '../../Check';\nimport { getDetailsRowCheckStyles } from './DetailsRowCheck.styles';\nimport { SelectionMode } from '../../Selection';\nimport type {\n IDetailsRowCheckProps,\n IDetailsCheckboxProps,\n IDetailsRowCheckStyleProps,\n IDetailsRowCheckStyles,\n} from './DetailsRowCheck.types';\nimport type { ITheme } from '../../Styling';\n\nconst getClassNames = classNamesFunction();\n\nconst DetailsRowCheckBase: React.FunctionComponent = props => {\n const {\n isVisible = false,\n canSelect = false,\n anySelected = false,\n selected = false,\n selectionMode,\n isHeader = false,\n className,\n checkClassName,\n styles,\n theme,\n compact,\n onRenderDetailsCheckbox,\n useFastIcons = true, // must be removed from buttonProps\n ...buttonProps\n } = props;\n const defaultCheckboxRender = useFastIcons ? _fastDefaultCheckboxRender : _defaultCheckboxRender;\n\n const onRenderCheckbox = onRenderDetailsCheckbox\n ? composeRenderFunction(onRenderDetailsCheckbox, defaultCheckboxRender)\n : defaultCheckboxRender;\n\n const classNames = getClassNames(styles, {\n theme: theme!,\n canSelect,\n selected,\n anySelected,\n className,\n isHeader,\n isVisible,\n compact,\n });\n\n const detailsCheckboxProps: IDetailsCheckboxProps = {\n checked: selected,\n theme,\n };\n\n const divProps = getNativeElementProps('div', buttonProps, ['aria-label', 'aria-labelledby', 'aria-describedby']);\n\n const checkRole = selectionMode === SelectionMode.single ? 'radio' : 'checkbox';\n\n return canSelect ? (\n \n {onRenderCheckbox(detailsCheckboxProps)}\n \n ) : (\n // eslint-disable-next-line deprecation/deprecation\n
    \n );\n};\n\nconst FastCheck = React.memo((props: { theme?: ITheme; checked?: boolean; className?: string }) => {\n return ;\n});\n\nfunction _defaultCheckboxRender(checkboxProps: IDetailsCheckboxProps) {\n return ;\n}\n\nfunction _fastDefaultCheckboxRender(checkboxProps: IDetailsCheckboxProps) {\n return ;\n}\n\nexport const DetailsRowCheck = styled(\n DetailsRowCheckBase,\n getDetailsRowCheckStyles,\n undefined,\n { scope: 'DetailsRowCheck' },\n true,\n);\n","import { HighContrastSelector, getGlobalClassNames, IconFontSizes, getHighContrastNoAdjustStyle } from '../../Styling';\nimport { getRTL } from '../../Utilities';\nimport type { ICheckStyleProps, ICheckStyles } from './Check.types';\nimport type { IStyle } from '../../Styling';\n\nexport const CheckGlobalClassNames = {\n root: 'ms-Check',\n circle: 'ms-Check-circle',\n check: 'ms-Check-check',\n /** Must be manually applied to the parent element of the check. */\n checkHost: 'ms-Check-checkHost',\n};\n\nexport const getStyles = (props: ICheckStyleProps): ICheckStyles => {\n // eslint-disable-next-line deprecation/deprecation\n const { height = props.checkBoxHeight || '18px', checked, className, theme } = props;\n\n const { palette, semanticColors, fonts } = theme;\n const isRTL = getRTL(theme);\n\n const classNames = getGlobalClassNames(CheckGlobalClassNames, theme);\n\n const sharedCircleCheck: IStyle = {\n fontSize: height,\n position: 'absolute',\n left: 0,\n top: 0,\n width: height,\n height: height,\n textAlign: 'center',\n // inline-flex prevents the check from shifting with custom line height styles\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n verticalAlign: 'middle',\n };\n\n return {\n root: [\n classNames.root,\n fonts.medium,\n {\n // lineHeight currently needs to be a string to output without 'px'\n lineHeight: '1',\n width: height,\n height: height,\n verticalAlign: 'top',\n position: 'relative',\n userSelect: 'none',\n\n selectors: {\n ':before': {\n content: '\"\"',\n position: 'absolute',\n top: '1px',\n right: '1px',\n bottom: '1px',\n left: '1px',\n borderRadius: '50%',\n opacity: 1,\n background: semanticColors.bodyBackground,\n },\n\n [`.${classNames.checkHost}:hover &, .${classNames.checkHost}:focus &, &:hover, &:focus`]: {\n opacity: 1,\n },\n },\n },\n\n checked && [\n 'is-checked',\n {\n selectors: {\n ':before': {\n background: palette.themePrimary,\n opacity: 1,\n selectors: {\n [HighContrastSelector]: {\n background: 'Window',\n },\n },\n },\n },\n },\n ],\n className,\n ],\n\n circle: [\n classNames.circle,\n sharedCircleCheck,\n\n {\n color: palette.neutralSecondary,\n\n selectors: {\n [HighContrastSelector]: {\n color: 'WindowText',\n },\n },\n },\n\n checked && {\n color: palette.white,\n },\n ],\n\n check: [\n classNames.check,\n sharedCircleCheck,\n\n {\n opacity: 0,\n color: palette.neutralSecondary,\n fontSize: IconFontSizes.medium,\n left: isRTL ? '-0.5px' : '.5px', // for centering the check icon inside the circle.\n top: '-1px', // the check is slightly lower than center compared to the circle.\n\n selectors: {\n ':hover': {\n opacity: 1,\n },\n\n [HighContrastSelector]: {\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n\n checked && {\n opacity: 1,\n color: palette.white,\n fontWeight: 900,\n\n selectors: {\n [HighContrastSelector]: {\n border: 'none',\n color: 'WindowText',\n },\n },\n },\n ],\n\n checkHost: classNames.checkHost,\n };\n};\n","import defineProperty from \"./defineProperty.js\";\nexport default function _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? Object(arguments[i]) : {};\n var ownKeys = Object.keys(source);\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys.push.apply(ownKeys, Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n\n ownKeys.forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n }\n\n return target;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import _typeof from '@babel/runtime/helpers/esm/typeof';\nimport _objectSpread from '@babel/runtime/helpers/esm/objectSpread';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\n\nvar consoleLogger = {\n type: 'logger',\n log: function log(args) {\n this.output('log', args);\n },\n warn: function warn(args) {\n this.output('warn', args);\n },\n error: function error(args) {\n this.output('error', args);\n },\n output: function output(type, args) {\n if (console && console[type]) console[type].apply(console, args);\n }\n};\n\nvar Logger = function () {\n function Logger(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Logger);\n\n this.init(concreteLogger, options);\n }\n\n _createClass(Logger, [{\n key: \"init\",\n value: function init(concreteLogger) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n }, {\n key: \"setDebug\",\n value: function setDebug(bool) {\n this.debug = bool;\n }\n }, {\n key: \"log\",\n value: function log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return this.forward(args, 'log', '', true);\n }\n }, {\n key: \"warn\",\n value: function warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return this.forward(args, 'warn', '', true);\n }\n }, {\n key: \"error\",\n value: function error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return this.forward(args, 'error', '');\n }\n }, {\n key: \"deprecate\",\n value: function deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n }, {\n key: \"forward\",\n value: function forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (typeof args[0] === 'string') args[0] = \"\".concat(prefix).concat(this.prefix, \" \").concat(args[0]);\n return this.logger[lvl](args);\n }\n }, {\n key: \"create\",\n value: function create(moduleName) {\n return new Logger(this.logger, _objectSpread({}, {\n prefix: \"\".concat(this.prefix, \":\").concat(moduleName, \":\")\n }, this.options));\n }\n }]);\n\n return Logger;\n}();\n\nvar baseLogger = new Logger();\n\nvar EventEmitter = function () {\n function EventEmitter() {\n _classCallCheck(this, EventEmitter);\n\n this.observers = {};\n }\n\n _createClass(EventEmitter, [{\n key: \"on\",\n value: function on(events, listener) {\n var _this = this;\n\n events.split(' ').forEach(function (event) {\n _this.observers[event] = _this.observers[event] || [];\n\n _this.observers[event].push(listener);\n });\n return this;\n }\n }, {\n key: \"off\",\n value: function off(event, listener) {\n if (!this.observers[event]) return;\n\n if (!listener) {\n delete this.observers[event];\n return;\n }\n\n this.observers[event] = this.observers[event].filter(function (l) {\n return l !== listener;\n });\n }\n }, {\n key: \"emit\",\n value: function emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (this.observers[event]) {\n var cloned = [].concat(this.observers[event]);\n cloned.forEach(function (observer) {\n observer.apply(void 0, args);\n });\n }\n\n if (this.observers['*']) {\n var _cloned = [].concat(this.observers['*']);\n\n _cloned.forEach(function (observer) {\n observer.apply(observer, [event].concat(args));\n });\n }\n }\n }]);\n\n return EventEmitter;\n}();\n\nfunction defer() {\n var res;\n var rej;\n var promise = new Promise(function (resolve, reject) {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\nfunction makeString(object) {\n if (object == null) return '';\n return '' + object;\n}\nfunction copy(a, s, t) {\n a.forEach(function (m) {\n if (s[m]) t[m] = s[m];\n });\n}\n\nfunction getLastOfPath(object, path, Empty) {\n function cleanKey(key) {\n return key && key.indexOf('###') > -1 ? key.replace(/###/g, '.') : key;\n }\n\n function canNotTraverseDeeper() {\n return !object || typeof object === 'string';\n }\n\n var stack = typeof path !== 'string' ? [].concat(path) : path.split('.');\n\n while (stack.length > 1) {\n if (canNotTraverseDeeper()) return {};\n var key = cleanKey(stack.shift());\n if (!object[key] && Empty) object[key] = new Empty();\n\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n }\n\n if (canNotTraverseDeeper()) return {};\n return {\n obj: object,\n k: cleanKey(stack.shift())\n };\n}\n\nfunction setPath(object, path, newValue) {\n var _getLastOfPath = getLastOfPath(object, path, Object),\n obj = _getLastOfPath.obj,\n k = _getLastOfPath.k;\n\n obj[k] = newValue;\n}\nfunction pushPath(object, path, newValue, concat) {\n var _getLastOfPath2 = getLastOfPath(object, path, Object),\n obj = _getLastOfPath2.obj,\n k = _getLastOfPath2.k;\n\n obj[k] = obj[k] || [];\n if (concat) obj[k] = obj[k].concat(newValue);\n if (!concat) obj[k].push(newValue);\n}\nfunction getPath(object, path) {\n var _getLastOfPath3 = getLastOfPath(object, path),\n obj = _getLastOfPath3.obj,\n k = _getLastOfPath3.k;\n\n if (!obj) return undefined;\n return obj[k];\n}\nfunction getPathWithDefaults(data, defaultData, key) {\n var value = getPath(data, key);\n\n if (value !== undefined) {\n return value;\n }\n\n return getPath(defaultData, key);\n}\nfunction deepExtend(target, source, overwrite) {\n for (var prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (typeof target[prop] === 'string' || target[prop] instanceof String || typeof source[prop] === 'string' || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n\n return target;\n}\nfunction regexEscape(str) {\n return str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\n}\nvar _entityMap = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/'\n};\nfunction escape(data) {\n if (typeof data === 'string') {\n return data.replace(/[&<>\"'\\/]/g, function (s) {\n return _entityMap[s];\n });\n }\n\n return data;\n}\nvar isIE10 = typeof window !== 'undefined' && window.navigator && window.navigator.userAgent && window.navigator.userAgent.indexOf('MSIE') > -1;\n\nfunction deepFind(obj, path) {\n var keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) return obj[path];\n var paths = path.split(keySeparator);\n var current = obj;\n\n for (var i = 0; i < paths.length; ++i) {\n if (!current) return undefined;\n\n if (typeof current[paths[i]] === 'string' && i + 1 < paths.length) {\n return undefined;\n }\n\n if (current[paths[i]] === undefined) {\n var j = 2;\n var p = paths.slice(i, i + j).join(keySeparator);\n var mix = current[p];\n\n while (mix === undefined && paths.length > i + j) {\n j++;\n p = paths.slice(i, i + j).join(keySeparator);\n mix = current[p];\n }\n\n if (mix === undefined) return undefined;\n if (typeof mix === 'string') return mix;\n if (p && typeof mix[p] === 'string') return mix[p];\n var joinedPath = paths.slice(i + j).join(keySeparator);\n if (joinedPath) return deepFind(mix, joinedPath, keySeparator);\n return undefined;\n }\n\n current = current[paths[i]];\n }\n\n return current;\n}\n\nvar ResourceStore = function (_EventEmitter) {\n _inherits(ResourceStore, _EventEmitter);\n\n function ResourceStore(data) {\n var _this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n\n _classCallCheck(this, ResourceStore);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(ResourceStore).call(this));\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.data = data || {};\n _this.options = options;\n\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n\n if (_this.options.ignoreJSONStructure === undefined) {\n _this.options.ignoreJSONStructure = true;\n }\n\n return _this;\n }\n\n _createClass(ResourceStore, [{\n key: \"addNamespaces\",\n value: function addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n }, {\n key: \"removeNamespaces\",\n value: function removeNamespaces(ns) {\n var index = this.options.ns.indexOf(ns);\n\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n }, {\n key: \"getResource\",\n value: function getResource(lng, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n var path = [lng, ns];\n if (key && typeof key !== 'string') path = path.concat(key);\n if (key && typeof key === 'string') path = path.concat(keySeparator ? key.split(keySeparator) : key);\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n }\n\n var result = getPath(this.data, path);\n if (result || !ignoreJSONStructure || typeof key !== 'string') return result;\n return deepFind(this.data && this.data[lng] && this.data[lng][ns], key, keySeparator);\n }\n }, {\n key: \"addResource\",\n value: function addResource(lng, ns, key, value) {\n var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n var keySeparator = this.options.keySeparator;\n if (keySeparator === undefined) keySeparator = '.';\n var path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n }, {\n key: \"addResources\",\n value: function addResources(lng, ns, resources) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n\n for (var m in resources) {\n if (typeof resources[m] === 'string' || Object.prototype.toString.apply(resources[m]) === '[object Array]') this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"addResourceBundle\",\n value: function addResourceBundle(lng, ns, resources, deep, overwrite) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false\n };\n var path = [lng, ns];\n\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n\n this.addNamespaces(ns);\n var pack = getPath(this.data, path) || {};\n\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = _objectSpread({}, pack, resources);\n }\n\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n }, {\n key: \"removeResourceBundle\",\n value: function removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n }, {\n key: \"hasResourceBundle\",\n value: function hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n }, {\n key: \"getResourceBundle\",\n value: function getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n if (this.options.compatibilityAPI === 'v1') return _objectSpread({}, {}, this.getResource(lng, ns));\n return this.getResource(lng, ns);\n }\n }, {\n key: \"getDataByLanguage\",\n value: function getDataByLanguage(lng) {\n return this.data[lng];\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return this.data;\n }\n }]);\n\n return ResourceStore;\n}(EventEmitter);\n\nvar postProcessor = {\n processors: {},\n addPostProcessor: function addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle: function handle(processors, value, key, options, translator) {\n var _this = this;\n\n processors.forEach(function (processor) {\n if (_this.processors[processor]) value = _this.processors[processor].process(value, key, options, translator);\n });\n return value;\n }\n};\n\nvar checkedLoadedFor = {};\n\nvar Translator = function (_EventEmitter) {\n _inherits(Translator, _EventEmitter);\n\n function Translator(services) {\n var _this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Translator);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(Translator).call(this));\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, _assertThisInitialized(_this));\n _this.options = options;\n\n if (_this.options.keySeparator === undefined) {\n _this.options.keySeparator = '.';\n }\n\n _this.logger = baseLogger.create('translator');\n return _this;\n }\n\n _createClass(Translator, [{\n key: \"changeLanguage\",\n value: function changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n }, {\n key: \"exists\",\n value: function exists(key) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n\n if (key === undefined || key === null) {\n return false;\n }\n\n var resolved = this.resolve(key, options);\n return resolved && resolved.res !== undefined;\n }\n }, {\n key: \"extractFromKey\",\n value: function extractFromKey(key, options) {\n var nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n var namespaces = options.ns || this.options.defaultNS;\n\n if (nsSeparator && key.indexOf(nsSeparator) > -1) {\n var m = key.match(this.interpolator.nestingRegexp);\n\n if (m && m.length > 0) {\n return {\n key: key,\n namespaces: namespaces\n };\n }\n\n var parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n\n if (typeof namespaces === 'string') namespaces = [namespaces];\n return {\n key: key,\n namespaces: namespaces\n };\n }\n }, {\n key: \"translate\",\n value: function translate(keys, options, lastKey) {\n var _this2 = this;\n\n if (_typeof(options) !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n\n if (!options) options = {};\n if (keys === undefined || keys === null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n var keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n\n var _this$extractFromKey = this.extractFromKey(keys[keys.length - 1], options),\n key = _this$extractFromKey.key,\n namespaces = _this$extractFromKey.namespaces;\n\n var namespace = namespaces[namespaces.length - 1];\n var lng = options.lng || this.language;\n var appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n\n if (lng && lng.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n var nsSeparator = options.nsSeparator || this.options.nsSeparator;\n return namespace + nsSeparator + key;\n }\n\n return key;\n }\n\n var resolved = this.resolve(keys, options);\n var res = resolved && resolved.res;\n var resUsedKey = resolved && resolved.usedKey || key;\n var resExactUsedKey = resolved && resolved.exactUsedKey || key;\n var resType = Object.prototype.toString.apply(res);\n var noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n var joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n var handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n var handleAsObject = typeof res !== 'string' && typeof res !== 'boolean' && typeof res !== 'number';\n\n if (handleAsObjectInI18nFormat && res && handleAsObject && noObject.indexOf(resType) < 0 && !(typeof joinArrays === 'string' && resType === '[object Array]')) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n\n return this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, res, _objectSpread({}, options, {\n ns: namespaces\n })) : \"key '\".concat(key, \" (\").concat(this.language, \")' returned an object instead of string.\");\n }\n\n if (keySeparator) {\n var resTypeIsArray = resType === '[object Array]';\n var copy = resTypeIsArray ? [] : {};\n var newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n\n for (var m in res) {\n if (Object.prototype.hasOwnProperty.call(res, m)) {\n var deepKey = \"\".concat(newKeyToUse).concat(keySeparator).concat(m);\n copy[m] = this.translate(deepKey, _objectSpread({}, options, {\n joinArrays: false,\n ns: namespaces\n }));\n if (copy[m] === deepKey) copy[m] = res[m];\n }\n }\n\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && typeof joinArrays === 'string' && resType === '[object Array]') {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n var usedDefault = false;\n var usedKey = false;\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var hasDefaultValue = Translator.hasDefaultValue(options);\n var defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count) : '';\n var defaultValue = options[\"defaultValue\".concat(defaultValueSuffix)] || options.defaultValue;\n\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n\n var missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n var resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n var updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n\n if (keySeparator) {\n var fk = this.resolve(key, _objectSpread({}, options, {\n keySeparator: false\n }));\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n\n var lngs = [];\n var fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (var i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n\n var send = function send(l, k, fallbackValue) {\n if (_this2.options.missingKeyHandler) {\n _this2.options.missingKeyHandler(l, namespace, k, updateMissing ? fallbackValue : resForMissing, updateMissing, options);\n } else if (_this2.backendConnector && _this2.backendConnector.saveMissing) {\n _this2.backendConnector.saveMissing(l, namespace, k, updateMissing ? fallbackValue : resForMissing, updateMissing, options);\n }\n\n _this2.emit('missingKey', l, namespace, k, res);\n };\n\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(function (language) {\n _this2.pluralResolver.getSuffixes(language).forEach(function (suffix) {\n send([language], key + suffix, options[\"defaultValue\".concat(suffix)] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = \"\".concat(namespace, \":\").concat(key);\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) res = this.options.parseMissingKeyHandler(res);\n }\n\n return res;\n }\n }, {\n key: \"extendTranslation\",\n value: function extendTranslation(res, key, options, resolved, lastKey) {\n var _this3 = this;\n\n if (this.i18nFormat && this.i18nFormat.parse) {\n res = this.i18nFormat.parse(res, options, resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved: resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init(_objectSpread({}, options, {\n interpolation: _objectSpread({}, this.options.interpolation, options.interpolation)\n }));\n var skipOnVariables = options.interpolation && options.interpolation.skipOnVariables || this.options.interpolation.skipOnVariables;\n var nestBef;\n\n if (skipOnVariables) {\n var nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n\n var data = options.replace && typeof options.replace !== 'string' ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = _objectSpread({}, this.options.interpolation.defaultVariables, data);\n res = this.interpolator.interpolate(res, data, options.lng || this.language, options);\n\n if (skipOnVariables) {\n var na = res.match(this.interpolator.nestingRegexp);\n var nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (lastKey && lastKey[0] === args[0] && !options.context) {\n _this3.logger.warn(\"It seems you are nesting recursively key: \".concat(args[0], \" in key: \").concat(key[0]));\n\n return null;\n }\n\n return _this3.translate.apply(_this3, args.concat([key]));\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n\n var postProcess = options.postProcess || this.options.postProcess;\n var postProcessorNames = typeof postProcess === 'string' ? [postProcess] : postProcess;\n\n if (res !== undefined && res !== null && postProcessorNames && postProcessorNames.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? _objectSpread({\n i18nResolved: resolved\n }, options) : options, this);\n }\n\n return res;\n }\n }, {\n key: \"resolve\",\n value: function resolve(keys) {\n var _this4 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var found;\n var usedKey;\n var exactUsedKey;\n var usedLng;\n var usedNS;\n if (typeof keys === 'string') keys = [keys];\n keys.forEach(function (k) {\n if (_this4.isValidLookup(found)) return;\n\n var extracted = _this4.extractFromKey(k, options);\n\n var key = extracted.key;\n usedKey = key;\n var namespaces = extracted.namespaces;\n if (_this4.options.fallbackNS) namespaces = namespaces.concat(_this4.options.fallbackNS);\n var needsPluralHandling = options.count !== undefined && typeof options.count !== 'string';\n var needsContextHandling = options.context !== undefined && (typeof options.context === 'string' || typeof options.context === 'number') && options.context !== '';\n var codes = options.lngs ? options.lngs : _this4.languageUtils.toResolveHierarchy(options.lng || _this4.language, options.fallbackLng);\n namespaces.forEach(function (ns) {\n if (_this4.isValidLookup(found)) return;\n usedNS = ns;\n\n if (!checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] && _this4.utils && _this4.utils.hasLoadedNamespace && !_this4.utils.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[\"\".concat(codes[0], \"-\").concat(ns)] = true;\n\n _this4.logger.warn(\"key \\\"\".concat(usedKey, \"\\\" for languages \\\"\").concat(codes.join(', '), \"\\\" won't get resolved as namespace \\\"\").concat(usedNS, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n\n codes.forEach(function (code) {\n if (_this4.isValidLookup(found)) return;\n usedLng = code;\n var finalKey = key;\n var finalKeys = [finalKey];\n\n if (_this4.i18nFormat && _this4.i18nFormat.addLookupKeys) {\n _this4.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n var pluralSuffix;\n if (needsPluralHandling) pluralSuffix = _this4.pluralResolver.getSuffix(code, options.count);\n if (needsPluralHandling && needsContextHandling) finalKeys.push(finalKey + pluralSuffix);\n if (needsContextHandling) finalKeys.push(finalKey += \"\".concat(_this4.options.contextSeparator).concat(options.context));\n if (needsPluralHandling) finalKeys.push(finalKey += pluralSuffix);\n }\n\n var possibleKey;\n\n while (possibleKey = finalKeys.pop()) {\n if (!_this4.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = _this4.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey: usedKey,\n exactUsedKey: exactUsedKey,\n usedLng: usedLng,\n usedNS: usedNS\n };\n }\n }, {\n key: \"isValidLookup\",\n value: function isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n }, {\n key: \"getResource\",\n value: function getResource(code, ns, key) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat && this.i18nFormat.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n }], [{\n key: \"hasDefaultValue\",\n value: function hasDefaultValue(options) {\n var prefix = 'defaultValue';\n\n for (var option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n\n return false;\n }\n }]);\n\n return Translator;\n}(EventEmitter);\n\nfunction capitalize(string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n}\n\nvar LanguageUtil = function () {\n function LanguageUtil(options) {\n _classCallCheck(this, LanguageUtil);\n\n this.options = options;\n this.whitelist = this.options.supportedLngs || false;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n\n _createClass(LanguageUtil, [{\n key: \"getScriptPartFromCode\",\n value: function getScriptPartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return null;\n var p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n }, {\n key: \"getLanguagePartFromCode\",\n value: function getLanguagePartFromCode(code) {\n if (!code || code.indexOf('-') < 0) return code;\n var p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n }, {\n key: \"formatLanguageCode\",\n value: function formatLanguageCode(code) {\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n var specialCases = ['hans', 'hant', 'latn', 'cyrl', 'cans', 'mong', 'arab'];\n var p = code.split('-');\n\n if (this.options.lowerCaseLng) {\n p = p.map(function (part) {\n return part.toLowerCase();\n });\n } else if (p.length === 2) {\n p[0] = p[0].toLowerCase();\n p[1] = p[1].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n } else if (p.length === 3) {\n p[0] = p[0].toLowerCase();\n if (p[1].length === 2) p[1] = p[1].toUpperCase();\n if (p[0] !== 'sgn' && p[2].length === 2) p[2] = p[2].toUpperCase();\n if (specialCases.indexOf(p[1].toLowerCase()) > -1) p[1] = capitalize(p[1].toLowerCase());\n if (specialCases.indexOf(p[2].toLowerCase()) > -1) p[2] = capitalize(p[2].toLowerCase());\n }\n\n return p.join('-');\n }\n\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n }, {\n key: \"isWhitelisted\",\n value: function isWhitelisted(code) {\n this.logger.deprecate('languageUtils.isWhitelisted', 'function \"isWhitelisted\" will be renamed to \"isSupportedCode\" in the next major - please make sure to rename it\\'s usage asap.');\n return this.isSupportedCode(code);\n }\n }, {\n key: \"isSupportedCode\",\n value: function isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n }, {\n key: \"getBestMatchFromCodes\",\n value: function getBestMatchFromCodes(codes) {\n var _this = this;\n\n if (!codes) return null;\n var found;\n codes.forEach(function (code) {\n if (found) return;\n\n var cleanedLng = _this.formatLanguageCode(code);\n\n if (!_this.options.supportedLngs || _this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n\n if (!found && this.options.supportedLngs) {\n codes.forEach(function (code) {\n if (found) return;\n\n var lngOnly = _this.getLanguagePartFromCode(code);\n\n if (_this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = _this.options.supportedLngs.find(function (supportedLng) {\n if (supportedLng.indexOf(lngOnly) === 0) return supportedLng;\n });\n });\n }\n\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n }, {\n key: \"getFallbackCodes\",\n value: function getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (typeof fallbacks === 'string') fallbacks = [fallbacks];\n if (Object.prototype.toString.apply(fallbacks) === '[object Array]') return fallbacks;\n if (!code) return fallbacks[\"default\"] || [];\n var found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks[\"default\"];\n return found || [];\n }\n }, {\n key: \"toResolveHierarchy\",\n value: function toResolveHierarchy(code, fallbackCode) {\n var _this2 = this;\n\n var fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n var codes = [];\n\n var addCode = function addCode(c) {\n if (!c) return;\n\n if (_this2.isSupportedCode(c)) {\n codes.push(c);\n } else {\n _this2.logger.warn(\"rejecting language code not found in supportedLngs: \".concat(c));\n }\n };\n\n if (typeof code === 'string' && code.indexOf('-') > -1) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (typeof code === 'string') {\n addCode(this.formatLanguageCode(code));\n }\n\n fallbackCodes.forEach(function (fc) {\n if (codes.indexOf(fc) < 0) addCode(_this2.formatLanguageCode(fc));\n });\n return codes;\n }\n }]);\n\n return LanguageUtil;\n}();\n\nvar sets = [{\n lngs: ['ach', 'ak', 'am', 'arn', 'br', 'fil', 'gun', 'ln', 'mfe', 'mg', 'mi', 'oc', 'pt', 'pt-BR', 'tg', 'tl', 'ti', 'tr', 'uz', 'wa'],\n nr: [1, 2],\n fc: 1\n}, {\n lngs: ['af', 'an', 'ast', 'az', 'bg', 'bn', 'ca', 'da', 'de', 'dev', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fi', 'fo', 'fur', 'fy', 'gl', 'gu', 'ha', 'hi', 'hu', 'hy', 'ia', 'it', 'kk', 'kn', 'ku', 'lb', 'mai', 'ml', 'mn', 'mr', 'nah', 'nap', 'nb', 'ne', 'nl', 'nn', 'no', 'nso', 'pa', 'pap', 'pms', 'ps', 'pt-PT', 'rm', 'sco', 'se', 'si', 'so', 'son', 'sq', 'sv', 'sw', 'ta', 'te', 'tk', 'ur', 'yo'],\n nr: [1, 2],\n fc: 2\n}, {\n lngs: ['ay', 'bo', 'cgg', 'fa', 'ht', 'id', 'ja', 'jbo', 'ka', 'km', 'ko', 'ky', 'lo', 'ms', 'sah', 'su', 'th', 'tt', 'ug', 'vi', 'wo', 'zh'],\n nr: [1],\n fc: 3\n}, {\n lngs: ['be', 'bs', 'cnr', 'dz', 'hr', 'ru', 'sr', 'uk'],\n nr: [1, 2, 5],\n fc: 4\n}, {\n lngs: ['ar'],\n nr: [0, 1, 2, 3, 11, 100],\n fc: 5\n}, {\n lngs: ['cs', 'sk'],\n nr: [1, 2, 5],\n fc: 6\n}, {\n lngs: ['csb', 'pl'],\n nr: [1, 2, 5],\n fc: 7\n}, {\n lngs: ['cy'],\n nr: [1, 2, 3, 8],\n fc: 8\n}, {\n lngs: ['fr'],\n nr: [1, 2],\n fc: 9\n}, {\n lngs: ['ga'],\n nr: [1, 2, 3, 7, 11],\n fc: 10\n}, {\n lngs: ['gd'],\n nr: [1, 2, 3, 20],\n fc: 11\n}, {\n lngs: ['is'],\n nr: [1, 2],\n fc: 12\n}, {\n lngs: ['jv'],\n nr: [0, 1],\n fc: 13\n}, {\n lngs: ['kw'],\n nr: [1, 2, 3, 4],\n fc: 14\n}, {\n lngs: ['lt'],\n nr: [1, 2, 10],\n fc: 15\n}, {\n lngs: ['lv'],\n nr: [1, 2, 0],\n fc: 16\n}, {\n lngs: ['mk'],\n nr: [1, 2],\n fc: 17\n}, {\n lngs: ['mnk'],\n nr: [0, 1, 2],\n fc: 18\n}, {\n lngs: ['mt'],\n nr: [1, 2, 11, 20],\n fc: 19\n}, {\n lngs: ['or'],\n nr: [2, 1],\n fc: 2\n}, {\n lngs: ['ro'],\n nr: [1, 2, 20],\n fc: 20\n}, {\n lngs: ['sl'],\n nr: [5, 1, 2, 3],\n fc: 21\n}, {\n lngs: ['he', 'iw'],\n nr: [1, 2, 20, 21],\n fc: 22\n}];\nvar _rulesPluralsTypes = {\n 1: function _(n) {\n return Number(n > 1);\n },\n 2: function _(n) {\n return Number(n != 1);\n },\n 3: function _(n) {\n return 0;\n },\n 4: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 5: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : n == 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n },\n 6: function _(n) {\n return Number(n == 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2);\n },\n 7: function _(n) {\n return Number(n == 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 8: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n != 8 && n != 11 ? 2 : 3);\n },\n 9: function _(n) {\n return Number(n >= 2);\n },\n 10: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n },\n 11: function _(n) {\n return Number(n == 1 || n == 11 ? 0 : n == 2 || n == 12 ? 1 : n > 2 && n < 20 ? 2 : 3);\n },\n 12: function _(n) {\n return Number(n % 10 != 1 || n % 100 == 11);\n },\n 13: function _(n) {\n return Number(n !== 0);\n },\n 14: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : n == 3 ? 2 : 3);\n },\n 15: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n },\n 16: function _(n) {\n return Number(n % 10 == 1 && n % 100 != 11 ? 0 : n !== 0 ? 1 : 2);\n },\n 17: function _(n) {\n return Number(n == 1 || n % 10 == 1 && n % 100 != 11 ? 0 : 1);\n },\n 18: function _(n) {\n return Number(n == 0 ? 0 : n == 1 ? 1 : 2);\n },\n 19: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3);\n },\n 20: function _(n) {\n return Number(n == 1 ? 0 : n == 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2);\n },\n 21: function _(n) {\n return Number(n % 100 == 1 ? 1 : n % 100 == 2 ? 2 : n % 100 == 3 || n % 100 == 4 ? 3 : 0);\n },\n 22: function _(n) {\n return Number(n == 1 ? 0 : n == 2 ? 1 : (n < 0 || n > 10) && n % 10 == 0 ? 2 : 3);\n }\n};\n\nfunction createRules() {\n var rules = {};\n sets.forEach(function (set) {\n set.lngs.forEach(function (l) {\n rules[l] = {\n numbers: set.nr,\n plurals: _rulesPluralsTypes[set.fc]\n };\n });\n });\n return rules;\n}\n\nvar PluralResolver = function () {\n function PluralResolver(languageUtils) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, PluralResolver);\n\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n this.rules = createRules();\n }\n\n _createClass(PluralResolver, [{\n key: \"addRule\",\n value: function addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n }, {\n key: \"getRule\",\n value: function getRule(code) {\n return this.rules[code] || this.rules[this.languageUtils.getLanguagePartFromCode(code)];\n }\n }, {\n key: \"needsPlural\",\n value: function needsPlural(code) {\n var rule = this.getRule(code);\n return rule && rule.numbers.length > 1;\n }\n }, {\n key: \"getPluralFormsOfKey\",\n value: function getPluralFormsOfKey(code, key) {\n return this.getSuffixes(code).map(function (suffix) {\n return key + suffix;\n });\n }\n }, {\n key: \"getSuffixes\",\n value: function getSuffixes(code) {\n var _this = this;\n\n var rule = this.getRule(code);\n\n if (!rule) {\n return [];\n }\n\n return rule.numbers.map(function (number) {\n return _this.getSuffix(code, number);\n });\n }\n }, {\n key: \"getSuffix\",\n value: function getSuffix(code, count) {\n var _this2 = this;\n\n var rule = this.getRule(code);\n\n if (rule) {\n var idx = rule.noAbs ? rule.plurals(count) : rule.plurals(Math.abs(count));\n var suffix = rule.numbers[idx];\n\n if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n if (suffix === 2) {\n suffix = 'plural';\n } else if (suffix === 1) {\n suffix = '';\n }\n }\n\n var returnSuffix = function returnSuffix() {\n return _this2.options.prepend && suffix.toString() ? _this2.options.prepend + suffix.toString() : suffix.toString();\n };\n\n if (this.options.compatibilityJSON === 'v1') {\n if (suffix === 1) return '';\n if (typeof suffix === 'number') return \"_plural_\".concat(suffix.toString());\n return returnSuffix();\n } else if (this.options.compatibilityJSON === 'v2') {\n return returnSuffix();\n } else if (this.options.simplifyPluralSuffix && rule.numbers.length === 2 && rule.numbers[0] === 1) {\n return returnSuffix();\n }\n\n return this.options.prepend && idx.toString() ? this.options.prepend + idx.toString() : idx.toString();\n }\n\n this.logger.warn(\"no plural rule found for: \".concat(code));\n return '';\n }\n }]);\n\n return PluralResolver;\n}();\n\nvar Interpolator = function () {\n function Interpolator() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, Interpolator);\n\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n\n this.format = options.interpolation && options.interpolation.format || function (value) {\n return value;\n };\n\n this.init(options);\n }\n\n _createClass(Interpolator, [{\n key: \"init\",\n value: function init() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n var iOpts = options.interpolation;\n this.escape = iOpts.escape !== undefined ? iOpts.escape : escape;\n this.escapeValue = iOpts.escapeValue !== undefined ? iOpts.escapeValue : true;\n this.useRawValueToEscape = iOpts.useRawValueToEscape !== undefined ? iOpts.useRawValueToEscape : false;\n this.prefix = iOpts.prefix ? regexEscape(iOpts.prefix) : iOpts.prefixEscaped || '{{';\n this.suffix = iOpts.suffix ? regexEscape(iOpts.suffix) : iOpts.suffixEscaped || '}}';\n this.formatSeparator = iOpts.formatSeparator ? iOpts.formatSeparator : iOpts.formatSeparator || ',';\n this.unescapePrefix = iOpts.unescapeSuffix ? '' : iOpts.unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : iOpts.unescapeSuffix || '';\n this.nestingPrefix = iOpts.nestingPrefix ? regexEscape(iOpts.nestingPrefix) : iOpts.nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = iOpts.nestingSuffix ? regexEscape(iOpts.nestingSuffix) : iOpts.nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = iOpts.nestingOptionsSeparator ? iOpts.nestingOptionsSeparator : iOpts.nestingOptionsSeparator || ',';\n this.maxReplaces = iOpts.maxReplaces ? iOpts.maxReplaces : 1000;\n this.alwaysFormat = iOpts.alwaysFormat !== undefined ? iOpts.alwaysFormat : false;\n this.resetRegExp();\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this.options) this.init(this.options);\n }\n }, {\n key: \"resetRegExp\",\n value: function resetRegExp() {\n var regexpStr = \"\".concat(this.prefix, \"(.+?)\").concat(this.suffix);\n this.regexp = new RegExp(regexpStr, 'g');\n var regexpUnescapeStr = \"\".concat(this.prefix).concat(this.unescapePrefix, \"(.+?)\").concat(this.unescapeSuffix).concat(this.suffix);\n this.regexpUnescape = new RegExp(regexpUnescapeStr, 'g');\n var nestingRegexpStr = \"\".concat(this.nestingPrefix, \"(.+?)\").concat(this.nestingSuffix);\n this.nestingRegexp = new RegExp(nestingRegexpStr, 'g');\n }\n }, {\n key: \"interpolate\",\n value: function interpolate(str, data, lng, options) {\n var _this = this;\n\n var match;\n var value;\n var replaces;\n var defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n\n function regexSafe(val) {\n return val.replace(/\\$/g, '$$$$');\n }\n\n var handleFormat = function handleFormat(key) {\n if (key.indexOf(_this.formatSeparator) < 0) {\n var path = getPathWithDefaults(data, defaultData, key);\n return _this.alwaysFormat ? _this.format(path, undefined, lng, _objectSpread({}, options, data, {\n interpolationkey: key\n })) : path;\n }\n\n var p = key.split(_this.formatSeparator);\n var k = p.shift().trim();\n var f = p.join(_this.formatSeparator).trim();\n return _this.format(getPathWithDefaults(data, defaultData, k), f, lng, _objectSpread({}, options, data, {\n interpolationkey: k\n }));\n };\n\n this.resetRegExp();\n var missingInterpolationHandler = options && options.missingInterpolationHandler || this.options.missingInterpolationHandler;\n var skipOnVariables = options && options.interpolation && options.interpolation.skipOnVariables || this.options.interpolation.skipOnVariables;\n var todos = [{\n regex: this.regexpUnescape,\n safeValue: function safeValue(val) {\n return regexSafe(val);\n }\n }, {\n regex: this.regexp,\n safeValue: function safeValue(val) {\n return _this.escapeValue ? regexSafe(_this.escape(val)) : regexSafe(val);\n }\n }];\n todos.forEach(function (todo) {\n replaces = 0;\n\n while (match = todo.regex.exec(str)) {\n value = handleFormat(match[1].trim());\n\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n var temp = missingInterpolationHandler(str, match, options);\n value = typeof temp === 'string' ? temp : '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n _this.logger.warn(\"missed to pass in variable \".concat(match[1], \" for interpolating \").concat(str));\n\n value = '';\n }\n } else if (typeof value !== 'string' && !_this.useRawValueToEscape) {\n value = makeString(value);\n }\n\n var safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n\n if (skipOnVariables) {\n todo.regex.lastIndex += safeValue.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n\n replaces++;\n\n if (replaces >= _this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n }, {\n key: \"nest\",\n value: function nest(str, fc) {\n var _this2 = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var match;\n var value;\n\n var clonedOptions = _objectSpread({}, options);\n\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n\n function handleHasOptions(key, inheritedOptions) {\n var sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n var c = key.split(new RegExp(\"\".concat(sep, \"[ ]*{\")));\n var optionsString = \"{\".concat(c[1]);\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n optionsString = optionsString.replace(/'/g, '\"');\n\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = _objectSpread({}, inheritedOptions, clonedOptions);\n } catch (e) {\n this.logger.warn(\"failed parsing options string in nesting for key \".concat(key), e);\n return \"\".concat(key).concat(sep).concat(optionsString);\n }\n\n delete clonedOptions.defaultValue;\n return key;\n }\n\n while (match = this.nestingRegexp.exec(str)) {\n var formatters = [];\n var doReduce = false;\n\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n var r = match[1].split(this.formatSeparator).map(function (elem) {\n return elem.trim();\n });\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && typeof value !== 'string') return value;\n if (typeof value !== 'string') value = makeString(value);\n\n if (!value) {\n this.logger.warn(\"missed to resolve \".concat(match[1], \" for nesting \").concat(str));\n value = '';\n }\n\n if (doReduce) {\n value = formatters.reduce(function (v, f) {\n return _this2.format(v, f, options.lng, _objectSpread({}, options, {\n interpolationkey: match[1].trim()\n }));\n }, value.trim());\n }\n\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n\n return str;\n }\n }]);\n\n return Interpolator;\n}();\n\nfunction remove(arr, what) {\n var found = arr.indexOf(what);\n\n while (found !== -1) {\n arr.splice(found, 1);\n found = arr.indexOf(what);\n }\n}\n\nvar Connector = function (_EventEmitter) {\n _inherits(Connector, _EventEmitter);\n\n function Connector(backend, store, services) {\n var _this;\n\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n _classCallCheck(this, Connector);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(Connector).call(this));\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.backend = backend;\n _this.store = store;\n _this.services = services;\n _this.languageUtils = services.languageUtils;\n _this.options = options;\n _this.logger = baseLogger.create('backendConnector');\n _this.state = {};\n _this.queue = [];\n\n if (_this.backend && _this.backend.init) {\n _this.backend.init(services, options.backend, options);\n }\n\n return _this;\n }\n\n _createClass(Connector, [{\n key: \"queueLoad\",\n value: function queueLoad(languages, namespaces, options, callback) {\n var _this2 = this;\n\n var toLoad = [];\n var pending = [];\n var toLoadLanguages = [];\n var toLoadNamespaces = [];\n languages.forEach(function (lng) {\n var hasAllNamespaces = true;\n namespaces.forEach(function (ns) {\n var name = \"\".concat(lng, \"|\").concat(ns);\n\n if (!options.reload && _this2.store.hasResourceBundle(lng, ns)) {\n _this2.state[name] = 2;\n } else if (_this2.state[name] < 0) ; else if (_this2.state[name] === 1) {\n if (pending.indexOf(name) < 0) pending.push(name);\n } else {\n _this2.state[name] = 1;\n hasAllNamespaces = false;\n if (pending.indexOf(name) < 0) pending.push(name);\n if (toLoad.indexOf(name) < 0) toLoad.push(name);\n if (toLoadNamespaces.indexOf(ns) < 0) toLoadNamespaces.push(ns);\n }\n });\n if (!hasAllNamespaces) toLoadLanguages.push(lng);\n });\n\n if (toLoad.length || pending.length) {\n this.queue.push({\n pending: pending,\n loaded: {},\n errors: [],\n callback: callback\n });\n }\n\n return {\n toLoad: toLoad,\n pending: pending,\n toLoadLanguages: toLoadLanguages,\n toLoadNamespaces: toLoadNamespaces\n };\n }\n }, {\n key: \"loaded\",\n value: function loaded(name, err, data) {\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n\n if (data) {\n this.store.addResourceBundle(lng, ns, data);\n }\n\n this.state[name] = err ? -1 : 2;\n var loaded = {};\n this.queue.forEach(function (q) {\n pushPath(q.loaded, [lng], ns);\n remove(q.pending, name);\n if (err) q.errors.push(err);\n\n if (q.pending.length === 0 && !q.done) {\n Object.keys(q.loaded).forEach(function (l) {\n if (!loaded[l]) loaded[l] = [];\n\n if (q.loaded[l].length) {\n q.loaded[l].forEach(function (ns) {\n if (loaded[l].indexOf(ns) < 0) loaded[l].push(ns);\n });\n }\n });\n q.done = true;\n\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(function (q) {\n return !q.done;\n });\n }\n }, {\n key: \"read\",\n value: function read(lng, ns, fcName) {\n var _this3 = this;\n\n var tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 350;\n var callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n return this.backend[fcName](lng, ns, function (err, data) {\n if (err && data && tried < 5) {\n setTimeout(function () {\n _this3.read.call(_this3, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n\n callback(err, data);\n });\n }\n }, {\n key: \"prepareLoading\",\n value: function prepareLoading(languages, namespaces) {\n var _this4 = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var callback = arguments.length > 3 ? arguments[3] : undefined;\n\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n\n if (typeof languages === 'string') languages = this.languageUtils.toResolveHierarchy(languages);\n if (typeof namespaces === 'string') namespaces = [namespaces];\n var toLoad = this.queueLoad(languages, namespaces, options, callback);\n\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n\n toLoad.toLoad.forEach(function (name) {\n _this4.loadOne(name);\n });\n }\n }, {\n key: \"load\",\n value: function load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n }, {\n key: \"reload\",\n value: function reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n }, {\n key: \"loadOne\",\n value: function loadOne(name) {\n var _this5 = this;\n\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var s = name.split('|');\n var lng = s[0];\n var ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, function (err, data) {\n if (err) _this5.logger.warn(\"\".concat(prefix, \"loading namespace \").concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) _this5.logger.log(\"\".concat(prefix, \"loaded namespace \").concat(ns, \" for language \").concat(lng), data);\n\n _this5.loaded(name, err, data);\n });\n }\n }, {\n key: \"saveMissing\",\n value: function saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n\n if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(namespace)) {\n this.logger.warn(\"did not save key \\\"\".concat(key, \"\\\" as the namespace \\\"\").concat(namespace, \"\\\" was not yet loaded\"), 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n\n if (key === undefined || key === null || key === '') return;\n\n if (this.backend && this.backend.create) {\n this.backend.create(languages, namespace, key, fallbackValue, null, _objectSpread({}, options, {\n isUpdate: isUpdate\n }));\n }\n\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n }]);\n\n return Connector;\n}(EventEmitter);\n\nfunction get() {\n return {\n debug: false,\n initImmediate: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n whitelist: false,\n nonExplicitWhitelist: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: true,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: function handle(args) {\n var ret = {};\n if (_typeof(args[1]) === 'object') ret = args[1];\n if (typeof args[1] === 'string') ret.defaultValue = args[1];\n if (typeof args[2] === 'string') ret.tDescription = args[2];\n\n if (_typeof(args[2]) === 'object' || _typeof(args[3]) === 'object') {\n var options = args[3] || args[2];\n Object.keys(options).forEach(function (key) {\n ret[key] = options[key];\n });\n }\n\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: function format(value, _format, lng, options) {\n return value;\n },\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: false\n }\n };\n}\nfunction transformOptions(options) {\n if (typeof options.ns === 'string') options.ns = [options.ns];\n if (typeof options.fallbackLng === 'string') options.fallbackLng = [options.fallbackLng];\n if (typeof options.fallbackNS === 'string') options.fallbackNS = [options.fallbackNS];\n\n if (options.whitelist) {\n if (options.whitelist && options.whitelist.indexOf('cimode') < 0) {\n options.whitelist = options.whitelist.concat(['cimode']);\n }\n\n options.supportedLngs = options.whitelist;\n }\n\n if (options.nonExplicitWhitelist) {\n options.nonExplicitSupportedLngs = options.nonExplicitWhitelist;\n }\n\n if (options.supportedLngs && options.supportedLngs.indexOf('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n\n return options;\n}\n\nfunction noop() {}\n\nvar I18n = function (_EventEmitter) {\n _inherits(I18n, _EventEmitter);\n\n function I18n() {\n var _this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n\n _classCallCheck(this, I18n);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(I18n).call(this));\n\n if (isIE10) {\n EventEmitter.call(_assertThisInitialized(_this));\n }\n\n _this.options = transformOptions(options);\n _this.services = {};\n _this.logger = baseLogger;\n _this.modules = {\n external: []\n };\n\n if (callback && !_this.isInitialized && !options.isClone) {\n if (!_this.options.initImmediate) {\n _this.init(options, callback);\n\n return _possibleConstructorReturn(_this, _assertThisInitialized(_this));\n }\n\n setTimeout(function () {\n _this.init(options, callback);\n }, 0);\n }\n\n return _this;\n }\n\n _createClass(I18n, [{\n key: \"init\",\n value: function init() {\n var _this2 = this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n\n if (options.whitelist && !options.supportedLngs) {\n this.logger.deprecate('whitelist', 'option \"whitelist\" will be renamed to \"supportedLngs\" in the next major - please make sure to rename this option asap.');\n }\n\n if (options.nonExplicitWhitelist && !options.nonExplicitSupportedLngs) {\n this.logger.deprecate('whitelist', 'options \"nonExplicitWhitelist\" will be renamed to \"nonExplicitSupportedLngs\" in the next major - please make sure to rename this option asap.');\n }\n\n this.options = _objectSpread({}, get(), this.options, transformOptions(options));\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n\n function createClassOnDemand(ClassOrObject) {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n }\n\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n\n var lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n var s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n compatibilityJSON: this.options.compatibilityJSON,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n _this2.emit.apply(_this2, [event].concat(args));\n });\n\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n s.languageDetector.init(s, this.options.detection, this.options);\n }\n\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n _this2.emit.apply(_this2, [event].concat(args));\n });\n this.modules.external.forEach(function (m) {\n if (m.init) m.init(_this2);\n });\n }\n\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n var codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n\n var storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store;\n\n return (_this2$store = _this2.store)[fcName].apply(_this2$store, arguments);\n };\n });\n var storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(function (fcName) {\n _this2[fcName] = function () {\n var _this2$store2;\n\n (_this2$store2 = _this2.store)[fcName].apply(_this2$store2, arguments);\n\n return _this2;\n };\n });\n var deferred = defer();\n\n var load = function load() {\n var finish = function finish(err, t) {\n if (_this2.isInitialized && !_this2.initializedStoreOnce) _this2.logger.warn('init: i18next is already initialized. You should call init just once!');\n _this2.isInitialized = true;\n if (!_this2.options.isClone) _this2.logger.log('initialized', _this2.options);\n\n _this2.emit('initialized', _this2.options);\n\n deferred.resolve(t);\n callback(err, t);\n };\n\n if (_this2.languages && _this2.options.compatibilityAPI !== 'v1' && !_this2.isInitialized) return finish(null, _this2.t.bind(_this2));\n\n _this2.changeLanguage(_this2.options.lng, finish);\n };\n\n if (this.options.resources || !this.options.initImmediate) {\n load();\n } else {\n setTimeout(load, 0);\n }\n\n return deferred;\n }\n }, {\n key: \"loadResources\",\n value: function loadResources(language) {\n var _this3 = this;\n\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n var usedCallback = callback;\n var usedLng = typeof language === 'string' ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng && usedLng.toLowerCase() === 'cimode') return usedCallback();\n var toLoad = [];\n\n var append = function append(lng) {\n if (!lng) return;\n\n var lngs = _this3.services.languageUtils.toResolveHierarchy(lng);\n\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n\n if (!usedLng) {\n var fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(function (l) {\n return append(l);\n });\n } else {\n append(usedLng);\n }\n\n if (this.options.preload) {\n this.options.preload.forEach(function (l) {\n return append(l);\n });\n }\n\n this.services.backendConnector.load(toLoad, this.options.ns, usedCallback);\n } else {\n usedCallback(null);\n }\n }\n }, {\n key: \"reloadResources\",\n value: function reloadResources(lngs, ns, callback) {\n var deferred = defer();\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, function (err) {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n }, {\n key: \"use\",\n value: function use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n\n return this;\n }\n }, {\n key: \"changeLanguage\",\n value: function changeLanguage(lng, callback) {\n var _this4 = this;\n\n this.isLanguageChangingTo = lng;\n var deferred = defer();\n this.emit('languageChanging', lng);\n\n var done = function done(err, l) {\n if (l) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n\n _this4.translator.changeLanguage(l);\n\n _this4.isLanguageChangingTo = undefined;\n\n _this4.emit('languageChanged', l);\n\n _this4.logger.log('languageChanged', l);\n } else {\n _this4.isLanguageChangingTo = undefined;\n }\n\n deferred.resolve(function () {\n return _this4.t.apply(_this4, arguments);\n });\n if (callback) callback(err, function () {\n return _this4.t.apply(_this4, arguments);\n });\n };\n\n var setLng = function setLng(lngs) {\n if (!lng && !lngs && _this4.services.languageDetector) lngs = [];\n var l = typeof lngs === 'string' ? lngs : _this4.services.languageUtils.getBestMatchFromCodes(lngs);\n\n if (l) {\n if (!_this4.language) {\n _this4.language = l;\n _this4.languages = _this4.services.languageUtils.toResolveHierarchy(l);\n }\n\n if (!_this4.translator.language) _this4.translator.changeLanguage(l);\n if (_this4.services.languageDetector) _this4.services.languageDetector.cacheUserLanguage(l);\n }\n\n _this4.loadResources(l, function (err) {\n done(err, l);\n });\n };\n\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n this.services.languageDetector.detect(setLng);\n } else {\n setLng(lng);\n }\n\n return deferred;\n }\n }, {\n key: \"getFixedT\",\n value: function getFixedT(lng, ns, keyPrefix) {\n var _this5 = this;\n\n var fixedT = function fixedT(key, opts) {\n var options;\n\n if (_typeof(opts) !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n\n options = _this5.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = _objectSpread({}, opts);\n }\n\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n var keySeparator = _this5.options.keySeparator || '.';\n var resultKey = keyPrefix ? \"\".concat(keyPrefix).concat(keySeparator).concat(key) : key;\n return _this5.t(resultKey, options);\n };\n\n if (typeof lng === 'string') {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n }, {\n key: \"t\",\n value: function t() {\n var _this$translator;\n\n return this.translator && (_this$translator = this.translator).translate.apply(_this$translator, arguments);\n }\n }, {\n key: \"exists\",\n value: function exists() {\n var _this$translator2;\n\n return this.translator && (_this$translator2 = this.translator).exists.apply(_this$translator2, arguments);\n }\n }, {\n key: \"setDefaultNamespace\",\n value: function setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n }, {\n key: \"hasLoadedNamespace\",\n value: function hasLoadedNamespace(ns) {\n var _this6 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n\n var lng = this.languages[0];\n var fallbackLng = this.options ? this.options.fallbackLng : false;\n var lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n\n var loadNotPending = function loadNotPending(l, n) {\n var loadState = _this6.services.backendConnector.state[\"\".concat(l, \"|\").concat(n)];\n\n return loadState === -1 || loadState === 2;\n };\n\n if (options.precheck) {\n var preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n }, {\n key: \"loadNamespaces\",\n value: function loadNamespaces(ns, callback) {\n var _this7 = this;\n\n var deferred = defer();\n\n if (!this.options.ns) {\n callback && callback();\n return Promise.resolve();\n }\n\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(function (n) {\n if (_this7.options.ns.indexOf(n) < 0) _this7.options.ns.push(n);\n });\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"loadLanguages\",\n value: function loadLanguages(lngs, callback) {\n var deferred = defer();\n if (typeof lngs === 'string') lngs = [lngs];\n var preloaded = this.options.preload || [];\n var newLngs = lngs.filter(function (lng) {\n return preloaded.indexOf(lng) < 0;\n });\n\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(function (err) {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n }, {\n key: \"dir\",\n value: function dir(lng) {\n if (!lng) lng = this.languages && this.languages.length > 0 ? this.languages[0] : this.language;\n if (!lng) return 'rtl';\n var rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam'];\n return rtlLngs.indexOf(this.services.languageUtils.getLanguagePartFromCode(lng)) >= 0 ? 'rtl' : 'ltr';\n }\n }, {\n key: \"createInstance\",\n value: function createInstance() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n }\n }, {\n key: \"cloneInstance\",\n value: function cloneInstance() {\n var _this8 = this;\n\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n\n var mergedOptions = _objectSpread({}, this.options, options, {\n isClone: true\n });\n\n var clone = new I18n(mergedOptions);\n var membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(function (m) {\n clone[m] = _this8[m];\n });\n clone.services = _objectSpread({}, this.services);\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n clone.translator = new Translator(clone.services, clone.options);\n clone.translator.on('*', function (event) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n clone.emit.apply(clone, [event].concat(args));\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = clone.options;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages\n };\n }\n }]);\n\n return I18n;\n}(EventEmitter);\n\nvar i18next = new I18n();\n\nexport default i18next;\n","import * as React from 'react';\nimport { classNamesFunction, getNativeProps, imgProperties } from '../../Utilities';\nimport { ImageCoverStyle, ImageFit, ImageLoadState } from './Image.types';\nimport { useIsomorphicLayoutEffect, useMergedRefs } from '@fluentui/react-hooks';\nimport type { IImageProps, IImageStyleProps, IImageStyles } from './Image.types';\n\nconst getClassNames = classNamesFunction();\n\nexport interface IImageState {\n loadState?: ImageLoadState;\n}\n\nconst SVG_REGEX = /\\.svg$/i;\nconst KEY_PREFIX = 'fabricImage';\n\nfunction useLoadState(\n props: IImageProps,\n imageElement: React.RefObject,\n): readonly [\n ImageLoadState,\n /* onImageLoad */ (ev: React.SyntheticEvent) => void,\n /* onImageError */ (ev: React.SyntheticEvent) => void,\n] {\n const { onLoadingStateChange, onLoad, onError, src } = props;\n\n const [loadState, setLoadState] = React.useState(ImageLoadState.notLoaded);\n\n useIsomorphicLayoutEffect(() => {\n // If the src property changes, reset the load state\n // (does nothing if the load state is already notLoaded)\n setLoadState(ImageLoadState.notLoaded);\n }, [src]);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps -- intended to run every render\n React.useEffect(() => {\n if (loadState === ImageLoadState.notLoaded) {\n // testing if naturalWidth and naturalHeight are greater than zero is better than checking\n // .complete, because .complete will also be set to true if the image breaks. However,\n // for some browsers, SVG images do not have a naturalWidth or naturalHeight, so fall back\n // to checking .complete for these images.\n const isLoaded: boolean = imageElement.current\n ? (src && imageElement.current.naturalWidth > 0 && imageElement.current.naturalHeight > 0) ||\n (imageElement.current.complete && SVG_REGEX.test(src!))\n : false;\n\n if (isLoaded) {\n setLoadState(ImageLoadState.loaded);\n }\n }\n });\n\n React.useEffect(() => {\n onLoadingStateChange?.(loadState);\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only run when loadState changes\n }, [loadState]);\n\n const onImageLoaded = React.useCallback(\n (ev: React.SyntheticEvent) => {\n onLoad?.(ev);\n if (src) {\n setLoadState(ImageLoadState.loaded);\n }\n },\n [src, onLoad],\n );\n\n const onImageError = React.useCallback(\n (ev: React.SyntheticEvent) => {\n onError?.(ev);\n setLoadState(ImageLoadState.error);\n },\n [onError],\n );\n\n return [loadState, onImageLoaded, onImageError] as const;\n}\n\nexport const ImageBase: React.FunctionComponent = React.forwardRef(\n (props, forwardedRef) => {\n const frameElement = React.useRef() as React.RefObject;\n const imageElement = React.useRef() as React.RefObject;\n const [loadState, onImageLoaded, onImageError] = useLoadState(props, imageElement);\n\n const imageProps = getNativeProps>(props, imgProperties, [\n 'width',\n 'height',\n ]);\n const {\n src,\n alt,\n width,\n height,\n shouldFadeIn = true,\n shouldStartVisible,\n className,\n imageFit,\n role,\n maximizeFrame,\n styles,\n theme,\n loading,\n } = props;\n const coverStyle = useCoverStyle(props, loadState, imageElement, frameElement);\n const classNames = getClassNames(styles!, {\n theme: theme!,\n className,\n width,\n height,\n maximizeFrame,\n shouldFadeIn,\n shouldStartVisible,\n isLoaded:\n loadState === ImageLoadState.loaded || (loadState === ImageLoadState.notLoaded && props.shouldStartVisible),\n isLandscape: coverStyle === ImageCoverStyle.landscape,\n isCenter: imageFit === ImageFit.center,\n isCenterContain: imageFit === ImageFit.centerContain,\n isCenterCover: imageFit === ImageFit.centerCover,\n isContain: imageFit === ImageFit.contain,\n isCover: imageFit === ImageFit.cover,\n isNone: imageFit === ImageFit.none,\n isError: loadState === ImageLoadState.error,\n isNotImageFit: imageFit === undefined,\n });\n\n // If image dimensions aren't specified, the natural size of the image is used.\n return (\n
    \n \n
    \n );\n },\n);\nImageBase.displayName = 'ImageBase';\n\nfunction useCoverStyle(\n props: IImageProps,\n loadState: ImageLoadState,\n imageElement: React.RefObject,\n frameElement: React.RefObject,\n) {\n const previousLoadState = React.useRef(loadState);\n const coverStyle = React.useRef();\n\n if (\n coverStyle === undefined ||\n (previousLoadState.current === ImageLoadState.notLoaded && loadState === ImageLoadState.loaded)\n ) {\n coverStyle.current = computeCoverStyle(props, loadState, imageElement, frameElement);\n }\n\n previousLoadState.current = loadState;\n\n return coverStyle.current!;\n}\n\nfunction computeCoverStyle(\n props: IImageProps,\n loadState: ImageLoadState,\n imageElement: React.RefObject,\n frameElement: React.RefObject,\n): ImageCoverStyle {\n const { imageFit, width, height } = props;\n\n // Do not compute cover style if it was already specified in props\n if (props.coverStyle !== undefined) {\n return props.coverStyle;\n } else if (\n loadState === ImageLoadState.loaded &&\n (imageFit === ImageFit.cover ||\n imageFit === ImageFit.contain ||\n imageFit === ImageFit.centerContain ||\n imageFit === ImageFit.centerCover) &&\n imageElement.current &&\n frameElement.current\n ) {\n // Determine the desired ratio using the width and height props.\n // If those props aren't available, measure measure the frame.\n let desiredRatio;\n if (\n typeof width === 'number' &&\n typeof height === 'number' &&\n imageFit !== ImageFit.centerContain &&\n imageFit !== ImageFit.centerCover\n ) {\n desiredRatio = width / height;\n } else {\n desiredRatio = frameElement.current.clientWidth / frameElement.current.clientHeight;\n }\n\n // Examine the source image to determine its original ratio.\n const naturalRatio = imageElement.current.naturalWidth / imageElement.current.naturalHeight;\n\n // Should we crop from the top or the sides?\n if (naturalRatio > desiredRatio) {\n return ImageCoverStyle.landscape;\n }\n }\n return ImageCoverStyle.portrait;\n}\n","import { AnimationClassNames, getGlobalClassNames } from '../../Styling';\nimport { getWindow } from '../../Utilities';\nimport type { IStyle } from '../../Styling';\nimport type { IImageStyleProps, IImageStyles } from './Image.types';\n\nconst GlobalClassNames = {\n root: 'ms-Image',\n rootMaximizeFrame: 'ms-Image--maximizeFrame',\n image: 'ms-Image-image',\n imageCenter: 'ms-Image-image--center',\n imageContain: 'ms-Image-image--contain',\n imageCover: 'ms-Image-image--cover',\n imageCenterContain: 'ms-Image-image--centerContain',\n imageCenterCover: 'ms-Image-image--centerCover',\n imageNone: 'ms-Image-image--none',\n imageLandscape: 'ms-Image-image--landscape',\n imagePortrait: 'ms-Image-image--portrait',\n};\n\nexport const getStyles = (props: IImageStyleProps): IImageStyles => {\n const {\n className,\n width,\n height,\n maximizeFrame,\n isLoaded,\n shouldFadeIn,\n shouldStartVisible,\n isLandscape,\n isCenter,\n isContain,\n isCover,\n isCenterContain,\n isCenterCover,\n isNone,\n isError,\n isNotImageFit,\n theme,\n } = props;\n\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n const ImageFitStyles: IStyle = {\n position: 'absolute',\n left: '50% /* @noflip */',\n top: '50%',\n transform: 'translate(-50%,-50%)', // @todo test RTL renders transform: translate(50%,-50%);\n };\n\n // Cut the mustard using msMaxTouchPoints to detect IE11 which does not support CSS object-fit\n const window: Window | undefined = getWindow();\n const supportsObjectFit: boolean = window !== undefined && window.navigator.msMaxTouchPoints === undefined;\n const fallbackObjectFitStyles =\n (isContain && isLandscape) || (isCover && !isLandscape)\n ? { width: '100%', height: 'auto' }\n : { width: 'auto', height: '100%' };\n\n return {\n root: [\n classNames.root,\n theme.fonts.medium,\n {\n overflow: 'hidden',\n },\n maximizeFrame && [\n classNames.rootMaximizeFrame,\n {\n height: '100%',\n width: '100%',\n },\n ],\n isLoaded && shouldFadeIn && !shouldStartVisible && AnimationClassNames.fadeIn400,\n (isCenter || isContain || isCover || isCenterContain || isCenterCover) && {\n position: 'relative',\n },\n className,\n ],\n image: [\n classNames.image,\n {\n display: 'block',\n opacity: 0,\n },\n isLoaded && [\n 'is-loaded',\n {\n opacity: 1,\n },\n ],\n isCenter && [classNames.imageCenter, ImageFitStyles],\n isContain && [\n classNames.imageContain,\n supportsObjectFit && {\n width: '100%',\n height: '100%',\n objectFit: 'contain',\n },\n !supportsObjectFit && fallbackObjectFitStyles,\n !supportsObjectFit && ImageFitStyles,\n ],\n isCover && [\n classNames.imageCover,\n supportsObjectFit && {\n width: '100%',\n height: '100%',\n objectFit: 'cover',\n },\n !supportsObjectFit && fallbackObjectFitStyles,\n !supportsObjectFit && ImageFitStyles,\n ],\n isCenterContain && [\n classNames.imageCenterContain,\n isLandscape && {\n maxWidth: '100%',\n },\n !isLandscape && {\n maxHeight: '100%',\n },\n ImageFitStyles,\n ],\n isCenterCover && [\n classNames.imageCenterCover,\n isLandscape && {\n maxHeight: '100%',\n },\n !isLandscape && {\n maxWidth: '100%',\n },\n ImageFitStyles,\n ],\n isNone && [\n classNames.imageNone,\n {\n width: 'auto',\n height: 'auto',\n },\n ],\n isNotImageFit && [\n !!width &&\n !height && {\n height: 'auto',\n width: '100%',\n },\n !width &&\n !!height && {\n height: '100%',\n width: 'auto',\n },\n !!width &&\n !!height && {\n height: '100%',\n width: '100%',\n },\n ],\n isLandscape && classNames.imageLandscape,\n !isLandscape && classNames.imagePortrait,\n !isLoaded && 'is-notLoaded',\n shouldFadeIn && 'is-fadeIn',\n isError && 'is-error',\n ],\n };\n};\n","import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport { ImageBase } from './Image.base';\nimport { getStyles } from './Image.styles';\nimport type { IImageProps, IImageStyleProps, IImageStyles } from './Image.types';\n\nexport const Image: React.FunctionComponent = styled(\n ImageBase,\n getStyles,\n undefined,\n {\n scope: 'Image',\n },\n true,\n);\nImage.displayName = 'Image';\n","import * as cookie from 'cookie';\r\nexport function hasDocumentCookie() {\r\n // Can we get/set cookies on document.cookie?\r\n return typeof document === 'object' && typeof document.cookie === 'string';\r\n}\r\nexport function cleanCookies() {\r\n document.cookie.split(';').forEach(function (c) {\r\n document.cookie = c\r\n .replace(/^ +/, '')\r\n .replace(/=.*/, '=;expires=' + new Date().toUTCString() + ';path=/');\r\n });\r\n}\r\nexport function parseCookies(cookies, options) {\r\n if (typeof cookies === 'string') {\r\n return cookie.parse(cookies, options);\r\n }\r\n else if (typeof cookies === 'object' && cookies !== null) {\r\n return cookies;\r\n }\r\n else {\r\n return {};\r\n }\r\n}\r\nexport function isParsingCookie(value, doNotParse) {\r\n if (typeof doNotParse === 'undefined') {\r\n // We guess if the cookie start with { or [, it has been serialized\r\n doNotParse =\r\n !value || (value[0] !== '{' && value[0] !== '[' && value[0] !== '\"');\r\n }\r\n return !doNotParse;\r\n}\r\nexport function readCookie(value, options) {\r\n if (options === void 0) { options = {}; }\r\n var cleanValue = cleanupCookieValue(value);\r\n if (isParsingCookie(cleanValue, options.doNotParse)) {\r\n try {\r\n return JSON.parse(cleanValue);\r\n }\r\n catch (e) {\r\n // At least we tried\r\n }\r\n }\r\n // Ignore clean value if we failed the deserialization\r\n // It is not relevant anymore to trim those values\r\n return value;\r\n}\r\nfunction cleanupCookieValue(value) {\r\n // express prepend j: before serializing a cookie\r\n if (value && value[0] === 'j' && value[1] === ':') {\r\n return value.substr(2);\r\n }\r\n return value;\r\n}\r\n","var __assign = (this && this.__assign) || function () {\r\n __assign = Object.assign || function(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\nimport * as cookie from 'cookie';\r\nimport { hasDocumentCookie, parseCookies, readCookie } from './utils';\r\nvar Cookies = /** @class */ (function () {\r\n function Cookies(cookies, options) {\r\n var _this = this;\r\n this.changeListeners = [];\r\n this.HAS_DOCUMENT_COOKIE = false;\r\n this.cookies = parseCookies(cookies, options);\r\n new Promise(function () {\r\n _this.HAS_DOCUMENT_COOKIE = hasDocumentCookie();\r\n }).catch(function () { });\r\n }\r\n Cookies.prototype._updateBrowserValues = function (parseOptions) {\r\n if (!this.HAS_DOCUMENT_COOKIE) {\r\n return;\r\n }\r\n this.cookies = cookie.parse(document.cookie, parseOptions);\r\n };\r\n Cookies.prototype._emitChange = function (params) {\r\n for (var i = 0; i < this.changeListeners.length; ++i) {\r\n this.changeListeners[i](params);\r\n }\r\n };\r\n Cookies.prototype.get = function (name, options, parseOptions) {\r\n if (options === void 0) { options = {}; }\r\n this._updateBrowserValues(parseOptions);\r\n return readCookie(this.cookies[name], options);\r\n };\r\n Cookies.prototype.getAll = function (options, parseOptions) {\r\n if (options === void 0) { options = {}; }\r\n this._updateBrowserValues(parseOptions);\r\n var result = {};\r\n for (var name_1 in this.cookies) {\r\n result[name_1] = readCookie(this.cookies[name_1], options);\r\n }\r\n return result;\r\n };\r\n Cookies.prototype.set = function (name, value, options) {\r\n var _a;\r\n if (typeof value === 'object') {\r\n value = JSON.stringify(value);\r\n }\r\n this.cookies = __assign(__assign({}, this.cookies), (_a = {}, _a[name] = value, _a));\r\n if (this.HAS_DOCUMENT_COOKIE) {\r\n document.cookie = cookie.serialize(name, value, options);\r\n }\r\n this._emitChange({ name: name, value: value, options: options });\r\n };\r\n Cookies.prototype.remove = function (name, options) {\r\n var finalOptions = (options = __assign(__assign({}, options), { expires: new Date(1970, 1, 1, 0, 0, 1), maxAge: 0 }));\r\n this.cookies = __assign({}, this.cookies);\r\n delete this.cookies[name];\r\n if (this.HAS_DOCUMENT_COOKIE) {\r\n document.cookie = cookie.serialize(name, '', finalOptions);\r\n }\r\n this._emitChange({ name: name, value: undefined, options: options });\r\n };\r\n Cookies.prototype.addChangeListener = function (callback) {\r\n this.changeListeners.push(callback);\r\n };\r\n Cookies.prototype.removeChangeListener = function (callback) {\r\n var idx = this.changeListeners.indexOf(callback);\r\n if (idx >= 0) {\r\n this.changeListeners.splice(idx, 1);\r\n }\r\n };\r\n return Cookies;\r\n}());\r\nexport default Cookies;\r\n","import Cookies from './Cookies';\r\nexport default Cookies;\r\n","// A packages cache that makes sure that we don't inject the same packageName twice in the same bundle -\n// this cache is local to the module closure inside this bundle\nconst packagesCache: { [name: string]: string } = {};\n\n// Cache access to window to avoid IE11 memory leak.\nlet _win: Window | undefined = undefined;\n\ntry {\n _win = window;\n} catch (e) {\n /* no-op */\n}\n\nexport function setVersion(packageName: string, packageVersion: string): void {\n if (typeof _win !== 'undefined') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const packages = ((_win as any).__packages__ = (_win as any).__packages__ || {});\n\n // We allow either the global packages or local packages caches to invalidate so testing can\n // just clear the global to set this state\n if (!packages[packageName] || !packagesCache[packageName]) {\n packagesCache[packageName] = packageVersion;\n const versions = (packages[packageName] = packages[packageName] || []);\n versions.push(packageVersion);\n }\n }\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\n/**\n * Returns a single function which will call each of the given functions in the context of the\n * parent.\n */\nexport function appendFunction(parent: any, ...functions: any[]): () => void {\n if (functions.length < 2) {\n return functions[0] as () => void;\n }\n\n return (...args: any[]): void => {\n functions.forEach((f: () => void) => f && f.apply(parent, args));\n };\n}\n","import * as React from 'react';\nimport { appendFunction } from './appendFunction';\n\n/**\n * Extends a component's lifetime methods by appending new functions to the existing lifetime functions.\n */\nexport function extendComponent(parent: T, methods: { [key in keyof T]?: T[key] }): void {\n for (let name in methods) {\n if (methods.hasOwnProperty(name)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n parent[name] = appendFunction(parent, parent[name], methods[name]) as any;\n }\n }\n}\n","const REACT_LIFECYCLE_EXCLUSIONS = [\n 'setState',\n 'render',\n 'componentWillMount',\n 'UNSAFE_componentWillMount',\n 'componentDidMount',\n 'componentWillReceiveProps',\n 'UNSAFE_componentWillReceiveProps',\n 'shouldComponentUpdate',\n 'componentWillUpdate',\n 'getSnapshotBeforeUpdate',\n 'UNSAFE_componentWillUpdate',\n 'componentDidUpdate',\n 'componentWillUnmount',\n];\n\n/**\n * Allows you to hoist methods, except those in an exclusion set from a source object into a destination object.\n *\n * @public\n * @param destination - The instance of the object to hoist the methods onto.\n * @param source - The instance of the object where the methods are hoisted from.\n * @param exclusions - (Optional) What methods to exclude from being hoisted.\n * @returns An array of names of methods that were hoisted.\n */\nexport function hoistMethods(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n destination: any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n source: any,\n exclusions: string[] = REACT_LIFECYCLE_EXCLUSIONS,\n): string[] {\n let hoisted: string[] = [];\n for (let methodName in source) {\n if (\n typeof source[methodName] === 'function' &&\n destination[methodName] === undefined &&\n (!exclusions || exclusions.indexOf(methodName) === -1)\n ) {\n hoisted.push(methodName);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n destination[methodName] = function (...args: any[]): void {\n source[methodName](...args);\n };\n }\n }\n\n return hoisted;\n}\n\n/**\n * Provides a method for convenience to unhoist hoisted methods.\n *\n * @public\n * @param source - The source object upon which methods were hoisted.\n * @param methodNames - An array of method names to unhoist.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function unhoistMethods(source: any, methodNames: string[]): void {\n methodNames.forEach((methodName: string) => delete source[methodName]);\n}\n","import * as React from 'react';\nimport { hoistMethods, unhoistMethods } from '../../Utilities';\n\nexport class BaseDecorator extends React.Component {\n protected _composedComponentInstance: React.Component;\n\n private _hoisted: string[];\n\n constructor(props: TProps) {\n super(props);\n this._updateComposedComponentRef = this._updateComposedComponentRef.bind(this);\n }\n\n /**\n * Updates the ref to the component composed by the decorator, which will also take care of hoisting\n * (and unhoisting as appropriate) methods from said component.\n *\n * Pass this method as the argument to the 'ref' property of the composed component.\n */\n protected _updateComposedComponentRef(composedComponentInstance: React.Component): void {\n this._composedComponentInstance = composedComponentInstance;\n if (composedComponentInstance) {\n this._hoisted = hoistMethods(this, composedComponentInstance);\n } else if (this._hoisted) {\n unhoistMethods(this, this._hoisted);\n }\n }\n}\n","import Cookies from 'universal-cookie';\r\nexport default Cookies;\r\n","import * as React from 'react';\r\nimport Cookies from './Cookies';\r\nvar CookiesContext = React.createContext(new Cookies());\r\nexport var Provider = CookiesContext.Provider, Consumer = CookiesContext.Consumer;\r\nexport default CookiesContext;\r\n","import { getWindow } from './dom/getWindow';\n\ndeclare function setTimeout(cb: Function, delay: number): number;\ndeclare function setInterval(cb: Function, delay: number): number;\n\n/**\n * Bugs often appear in async code when stuff gets disposed, but async operations don't get canceled.\n * This Async helper class solves these issues by tying async code to the lifetime of a disposable object.\n *\n * Usage: Anything class extending from BaseModel can access this helper via this.async. Otherwise create a\n * new instance of the class and remember to call dispose() during your code's dispose handler.\n *\n * @public\n */\nexport class Async {\n private _timeoutIds: { [id: number]: boolean } | null = null;\n private _immediateIds: { [id: number]: boolean } | null = null;\n private _intervalIds: { [id: number]: boolean } | null = null;\n private _animationFrameIds: { [id: number]: boolean } | null = null;\n private _isDisposed: boolean;\n private _parent: object | null;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _onErrorHandler: ((e: any) => void) | undefined;\n private _noop: () => void;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n constructor(parent?: object, onError?: (e: any) => void) {\n this._isDisposed = false;\n this._parent = parent || null;\n this._onErrorHandler = onError;\n this._noop = () => {\n /* do nothing */\n };\n }\n\n /**\n * Dispose function, clears all async operations.\n */\n public dispose(): void {\n let id;\n\n this._isDisposed = true;\n this._parent = null;\n\n // Clear timeouts.\n if (this._timeoutIds) {\n for (id in this._timeoutIds) {\n if (this._timeoutIds.hasOwnProperty(id)) {\n this.clearTimeout(parseInt(id, 10));\n }\n }\n\n this._timeoutIds = null;\n }\n\n // Clear immediates.\n if (this._immediateIds) {\n for (id in this._immediateIds) {\n if (this._immediateIds.hasOwnProperty(id)) {\n this.clearImmediate(parseInt(id, 10));\n }\n }\n\n this._immediateIds = null;\n }\n\n // Clear intervals.\n if (this._intervalIds) {\n for (id in this._intervalIds) {\n if (this._intervalIds.hasOwnProperty(id)) {\n this.clearInterval(parseInt(id, 10));\n }\n }\n this._intervalIds = null;\n }\n\n // Clear animation frames.\n if (this._animationFrameIds) {\n for (id in this._animationFrameIds) {\n if (this._animationFrameIds.hasOwnProperty(id)) {\n this.cancelAnimationFrame(parseInt(id, 10));\n }\n }\n\n this._animationFrameIds = null;\n }\n }\n\n /**\n * SetTimeout override, which will auto cancel the timeout during dispose.\n * @param callback - Callback to execute.\n * @param duration - Duration in milliseconds.\n * @returns The setTimeout id.\n */\n public setTimeout(callback: () => void, duration: number): number {\n let timeoutId = 0;\n\n if (!this._isDisposed) {\n if (!this._timeoutIds) {\n this._timeoutIds = {};\n }\n\n timeoutId = setTimeout(() => {\n // Time to execute the timeout, enqueue it as a foreground task to be executed.\n\n try {\n // Now delete the record and call the callback.\n if (this._timeoutIds) {\n delete this._timeoutIds[timeoutId];\n }\n callback.apply(this._parent);\n } catch (e) {\n this._logError(e);\n }\n }, duration);\n\n this._timeoutIds[timeoutId] = true;\n }\n\n return timeoutId;\n }\n\n /**\n * Clears the timeout.\n * @param id - Id to cancel.\n */\n public clearTimeout(id: number): void {\n if (this._timeoutIds && this._timeoutIds[id]) {\n clearTimeout(id);\n delete this._timeoutIds[id];\n }\n }\n\n /**\n * SetImmediate override, which will auto cancel the immediate during dispose.\n * @param callback - Callback to execute.\n * @param targetElement - Optional target element to use for identifying the correct window.\n * @returns The setTimeout id.\n */\n public setImmediate(callback: () => void, targetElement?: Element | null): number {\n let immediateId = 0;\n const win = getWindow(targetElement)!;\n\n if (!this._isDisposed) {\n if (!this._immediateIds) {\n this._immediateIds = {};\n }\n\n let setImmediateCallback = () => {\n // Time to execute the timeout, enqueue it as a foreground task to be executed.\n\n try {\n // Now delete the record and call the callback.\n if (this._immediateIds) {\n delete this._immediateIds[immediateId];\n }\n callback.apply(this._parent);\n } catch (e) {\n this._logError(e);\n }\n };\n\n immediateId = win.setTimeout(setImmediateCallback, 0);\n\n this._immediateIds[immediateId] = true;\n }\n\n return immediateId;\n }\n\n /**\n * Clears the immediate.\n * @param id - Id to cancel.\n * @param targetElement - Optional target element to use for identifying the correct window.\n */\n public clearImmediate(id: number, targetElement?: Element | null): void {\n const win = getWindow(targetElement)!;\n\n if (this._immediateIds && this._immediateIds[id]) {\n win.clearTimeout(id);\n delete this._immediateIds[id];\n }\n }\n\n /**\n * SetInterval override, which will auto cancel the timeout during dispose.\n * @param callback - Callback to execute.\n * @param duration - Duration in milliseconds.\n * @returns The setTimeout id.\n */\n public setInterval(callback: () => void, duration: number): number {\n let intervalId = 0;\n\n if (!this._isDisposed) {\n if (!this._intervalIds) {\n this._intervalIds = {};\n }\n\n intervalId = setInterval(() => {\n // Time to execute the interval callback, enqueue it as a foreground task to be executed.\n try {\n callback.apply(this._parent);\n } catch (e) {\n this._logError(e);\n }\n }, duration);\n\n this._intervalIds[intervalId] = true;\n }\n\n return intervalId;\n }\n\n /**\n * Clears the interval.\n * @param id - Id to cancel.\n */\n public clearInterval(id: number): void {\n if (this._intervalIds && this._intervalIds[id]) {\n clearInterval(id);\n delete this._intervalIds[id];\n }\n }\n\n /**\n * Creates a function that, when executed, will only call the func function at most once per\n * every wait milliseconds. Provide an options object to indicate that func should be invoked\n * on the leading and/or trailing edge of the wait timeout. Subsequent calls to the throttled\n * function will return the result of the last func call.\n *\n * Note: If leading and trailing options are true func will be called on the trailing edge of\n * the timeout only if the throttled function is invoked more than once during the wait timeout.\n *\n * @param func - The function to throttle.\n * @param wait - The number of milliseconds to throttle executions to. Defaults to 0.\n * @param options - The options object.\n * @returns The new throttled function.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public throttle any>(\n func: T,\n wait?: number,\n options?: {\n leading?: boolean;\n trailing?: boolean;\n },\n ): T {\n if (this._isDisposed) {\n return this._noop as T;\n }\n\n let waitMS = wait || 0;\n let leading = true;\n let trailing = true;\n let lastExecuteTime = 0;\n let lastResult: T;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let lastArgs: any[];\n let timeoutId: number | null = null;\n\n if (options && typeof options.leading === 'boolean') {\n leading = options.leading;\n }\n\n if (options && typeof options.trailing === 'boolean') {\n trailing = options.trailing;\n }\n\n let callback = (userCall?: boolean) => {\n let now = Date.now();\n let delta = now - lastExecuteTime;\n let waitLength = leading ? waitMS - delta : waitMS;\n if (delta >= waitMS && (!userCall || leading)) {\n lastExecuteTime = now;\n if (timeoutId) {\n this.clearTimeout(timeoutId);\n timeoutId = null;\n }\n lastResult = func.apply(this._parent, lastArgs);\n } else if (timeoutId === null && trailing) {\n timeoutId = this.setTimeout(callback, waitLength);\n }\n\n return lastResult;\n };\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let resultFunction = ((...args: any[]): any => {\n lastArgs = args;\n return callback(true);\n }) as T;\n\n return resultFunction;\n }\n\n /**\n * Creates a function that will delay the execution of func until after wait milliseconds have\n * elapsed since the last time it was invoked. Provide an options object to indicate that func\n * should be invoked on the leading and/or trailing edge of the wait timeout. Subsequent calls\n * to the debounced function will return the result of the last func call.\n *\n * Note: If leading and trailing options are true func will be called on the trailing edge of\n * the timeout only if the debounced function is invoked more than once during the wait\n * timeout.\n *\n * @param func - The function to debounce.\n * @param wait - The number of milliseconds to delay.\n * @param options - The options object.\n * @returns The new debounced function.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public debounce any>(\n func: T,\n wait?: number,\n options?: {\n leading?: boolean;\n maxWait?: number;\n trailing?: boolean;\n },\n ): ICancelable & T {\n if (this._isDisposed) {\n let noOpFunction = (() => {\n /** Do nothing */\n }) as ICancelable & T;\n\n noOpFunction.cancel = () => {\n return;\n };\n noOpFunction.flush = ((() => null) as unknown) as () => ReturnType;\n noOpFunction.pending = () => false;\n\n return noOpFunction;\n }\n\n let waitMS = wait || 0;\n let leading = false;\n let trailing = true;\n let maxWait: number | null = null;\n let lastCallTime = 0;\n let lastExecuteTime = Date.now();\n let lastResult: ReturnType;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let lastArgs: any[];\n let timeoutId: number | null = null;\n\n if (options && typeof options.leading === 'boolean') {\n leading = options.leading;\n }\n\n if (options && typeof options.trailing === 'boolean') {\n trailing = options.trailing;\n }\n\n if (options && typeof options.maxWait === 'number' && !isNaN(options.maxWait)) {\n maxWait = options.maxWait;\n }\n\n let markExecuted = (time: number) => {\n if (timeoutId) {\n this.clearTimeout(timeoutId);\n timeoutId = null;\n }\n lastExecuteTime = time;\n };\n\n let invokeFunction = (time: number) => {\n markExecuted(time);\n lastResult = func.apply(this._parent, lastArgs);\n };\n\n let callback = (userCall?: boolean) => {\n let now = Date.now();\n let executeImmediately = false;\n if (userCall) {\n if (leading && now - lastCallTime >= waitMS) {\n executeImmediately = true;\n }\n lastCallTime = now;\n }\n let delta = now - lastCallTime;\n let waitLength = waitMS - delta;\n let maxWaitDelta = now - lastExecuteTime;\n let maxWaitExpired = false;\n\n if (maxWait !== null) {\n // maxWait only matters when there is a pending callback\n if (maxWaitDelta >= maxWait && timeoutId) {\n maxWaitExpired = true;\n } else {\n waitLength = Math.min(waitLength, maxWait - maxWaitDelta);\n }\n }\n\n if (delta >= waitMS || maxWaitExpired || executeImmediately) {\n invokeFunction(now);\n } else if ((timeoutId === null || !userCall) && trailing) {\n timeoutId = this.setTimeout(callback, waitLength);\n }\n\n return lastResult;\n };\n\n let pending = (): boolean => {\n return !!timeoutId;\n };\n\n let cancel = (): void => {\n if (pending()) {\n // Mark the debounced function as having executed\n markExecuted(Date.now());\n }\n };\n\n let flush = () => {\n if (pending()) {\n invokeFunction(Date.now());\n }\n\n return lastResult;\n };\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let resultFunction = ((...args: any[]) => {\n lastArgs = args;\n return callback(true);\n }) as ICancelable & T;\n\n resultFunction.cancel = cancel;\n resultFunction.flush = flush;\n resultFunction.pending = pending;\n\n return resultFunction;\n }\n\n public requestAnimationFrame(callback: () => void, targetElement?: Element | null): number {\n let animationFrameId = 0;\n const win = getWindow(targetElement)!;\n\n if (!this._isDisposed) {\n if (!this._animationFrameIds) {\n this._animationFrameIds = {};\n }\n\n let animationFrameCallback = () => {\n try {\n // Now delete the record and call the callback.\n if (this._animationFrameIds) {\n delete this._animationFrameIds[animationFrameId];\n }\n\n callback.apply(this._parent);\n } catch (e) {\n this._logError(e);\n }\n };\n\n animationFrameId = win.requestAnimationFrame\n ? win.requestAnimationFrame(animationFrameCallback)\n : win.setTimeout(animationFrameCallback, 0);\n\n this._animationFrameIds[animationFrameId] = true;\n }\n\n return animationFrameId;\n }\n\n public cancelAnimationFrame(id: number, targetElement?: Element | null): void {\n const win = getWindow(targetElement)!;\n\n if (this._animationFrameIds && this._animationFrameIds[id]) {\n win.cancelAnimationFrame ? win.cancelAnimationFrame(id) : win.clearTimeout(id);\n delete this._animationFrameIds[id];\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n protected _logError(e: any): void {\n if (this._onErrorHandler) {\n this._onErrorHandler(e);\n }\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type ICancelable any> = {\n flush: () => ReturnType;\n cancel: () => void;\n pending: () => boolean;\n};\n","import { on } from '@fluentui/utilities';\nimport * as React from 'react';\n\n/**\n * Hook to attach an event handler on mount and handle cleanup.\n * @param element - Element (or ref to an element) to attach the event handler to\n * @param eventName - The event to attach a handler for\n * @param callback - The handler for the event\n * @param useCapture - Whether or not to attach the handler for the capture phase\n */\nexport function useOnEvent(\n element: React.RefObject | TElement | Window | Document | undefined | null,\n eventName: string,\n callback: (ev: TEvent) => void,\n useCapture?: boolean,\n) {\n // Use a ref for the callback to prevent repeatedly attaching/unattaching callbacks that are unstable across renders\n const callbackRef = React.useRef(callback);\n callbackRef.current = callback;\n\n React.useEffect(() => {\n const actualElement = element && 'current' in element ? element.current : element;\n if (!actualElement) {\n return;\n }\n\n const dispose = on(actualElement, eventName, (ev: TEvent) => callbackRef.current(ev), useCapture);\n return dispose;\n }, [element, eventName, useCapture]);\n}\n","import * as React from 'react';\n\n/**\n * Props for the WindowProvider component.\n */\nexport type WindowProviderProps = {\n /**\n * Provide the active window.\n */\n window: Window | undefined;\n};\n\n/**\n * Context for providing the window.\n */\nexport const WindowContext = React.createContext({\n window: typeof window === 'object' ? window : undefined,\n});\n\n/**\n * Hook to access the window object. This can be overridden contextually using the `WindowProvider`.\n */\nexport const useWindow = (): Window | undefined => React.useContext(WindowContext).window;\n\n/**\n * Hook to access the document object. This can be overridden contextually using the `WindowProvider`.\n */\nexport const useDocument = (): Document | undefined => React.useContext(WindowContext).window?.document;\n\n/**\n * Component to provide the window object contextually. This is useful when rendering content to an element\n * contained within a child window or iframe element, where event handlers and styling must be projected\n * to an alternative window or document.\n */\nexport const WindowProvider: React.FunctionComponent = props => {\n return {props.children};\n};\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar enhanceError = require('./core/enhanceError');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n },\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw enhanceError(e, this, 'E_JSON_PARSE');\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","import * as React from 'react';\nimport { Customizations } from './Customizations';\nimport { CustomizerContext } from './CustomizerContext';\nimport type { ISettings } from './Customizations';\n\n/**\n * Hook to get Customizations settings from Customizations singleton or CustomizerContext.\n * It will trigger component state update on settings change observed.\n */\nexport function useCustomizationSettings(properties: string[], scopeName?: string): ISettings {\n const forceUpdate = useForceUpdate();\n const { customizations } = React.useContext(CustomizerContext);\n const { inCustomizerContext } = customizations;\n React.useEffect(() => {\n if (!inCustomizerContext) {\n Customizations.observe(forceUpdate);\n }\n return () => {\n if (!inCustomizerContext) {\n Customizations.unobserve(forceUpdate);\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- exclude forceUpdate\n }, [inCustomizerContext]);\n\n return Customizations.getSettings(properties, scopeName, customizations);\n}\n\nfunction useForceUpdate() {\n const [, setValue] = React.useState(0);\n return () => setValue(value => ++value);\n}\n","export const DATA_PORTAL_ATTRIBUTE = 'data-portal-element';\n\n/**\n * Identify element as a portal by setting an attribute.\n * @param element - Element to mark as a portal.\n */\nexport function setPortalAttribute(element: HTMLElement): void {\n element.setAttribute(DATA_PORTAL_ATTRIBUTE, 'true');\n}\n","import * as React from 'react';\nimport { BaseDecorator } from './BaseDecorator';\nimport { getWindow, hoistStatics, EventGroup } from '../../Utilities';\nimport { WindowContext } from '../../WindowProvider';\n\n/**\n * @deprecated Decorator usage is deprecated. Either call `getResponsiveMode` manually, or\n * use the `useResponsiveMode` hook within a function component.\n */\nexport interface IWithResponsiveModeState {\n responsiveMode?: ResponsiveMode;\n}\n\nexport enum ResponsiveMode {\n /** Width \\<= 479px */\n small = 0,\n /** Width \\> 479px and \\<= 639px */\n medium = 1,\n /** Width \\> 639px and \\<= 1023px */\n large = 2,\n /** Width \\> 1023px and \\<= 1365px */\n xLarge = 3,\n /** Width \\> 1365px and \\<= 1919px */\n xxLarge = 4,\n /** Width \\> 1919px */\n xxxLarge = 5,\n unknown = 999,\n}\n\nconst RESPONSIVE_MAX_CONSTRAINT = [479, 639, 1023, 1365, 1919, 99999999];\n\n/**\n * User specified mode to default to, useful for server side rendering scenarios.\n */\nlet _defaultMode: ResponsiveMode | undefined;\n\n/**\n * Tracking the last mode we successfully rendered, which allows us to\n * paint initial renders with the correct size.\n */\nlet _lastMode: ResponsiveMode | undefined;\n\n/**\n * Allows a server rendered scenario to provide a **default** responsive mode.\n * This WILL NOT trigger any updates to components that have already consumed the responsive mode!\n */\nexport function setResponsiveMode(responsiveMode: ResponsiveMode | undefined): void {\n _defaultMode = responsiveMode;\n}\n\n/**\n * Initializes the responsive mode to the current window size. This can be used to avoid\n * a re-render during first component mount since the window would otherwise not be measured\n * until after mounting.\n *\n * This WILL NOT trigger any updates to components that have already consumed the responsive mode!\n */\nexport function initializeResponsiveMode(element?: HTMLElement): void {\n const currentWindow = getWindow(element);\n\n if (currentWindow) {\n getResponsiveMode(currentWindow);\n }\n}\n\nexport function getInitialResponsiveMode(): ResponsiveMode {\n return _defaultMode ?? _lastMode ?? ResponsiveMode.large;\n}\n\n/**\n * @deprecated Decorator usage is deprecated. Either call `getResponsiveMode` manually, or\n * use the `useResponsiveMode` hook within a function component.\n */\nexport function withResponsiveMode(\n ComposedComponent: new (props: TProps, ...args: any[]) => React.Component,\n): any {\n // eslint-disable-next-line deprecation/deprecation\n const resultClass = class WithResponsiveMode extends BaseDecorator {\n public static contextType = WindowContext;\n public context: React.ContextType;\n\n private _events: EventGroup;\n\n constructor(props: TProps) {\n super(props);\n this._events = new EventGroup(this);\n this._updateComposedComponentRef = this._updateComposedComponentRef.bind(this);\n\n this.state = {\n responsiveMode: getInitialResponsiveMode(),\n };\n }\n\n public componentDidMount(): void {\n this._events.on(this.context.window, 'resize', this._onResize);\n this._onResize();\n }\n\n public componentWillUnmount(): void {\n this._events.dispose();\n }\n\n public render(): JSX.Element | null {\n const { responsiveMode } = this.state;\n\n return responsiveMode === ResponsiveMode.unknown ? null : (\n \n );\n }\n\n private _onResize = () => {\n const responsiveMode = getResponsiveMode(this.context.window);\n\n if (responsiveMode !== this.state.responsiveMode) {\n this.setState({\n responsiveMode,\n });\n }\n };\n };\n return hoistStatics(ComposedComponent, resultClass);\n}\n\nfunction getWidthOfCurrentWindow(currentWindow: Window): number {\n try {\n return currentWindow.document.documentElement.clientWidth;\n } catch (e) {\n return currentWindow.innerWidth;\n }\n}\n\n/**\n * Hook to get the current responsive mode (window size category).\n * @param currentWindow - Use this window when determining the responsive mode.\n */\nexport function getResponsiveMode(currentWindow: Window | undefined): ResponsiveMode {\n let responsiveMode = ResponsiveMode.small;\n\n if (currentWindow) {\n try {\n while (getWidthOfCurrentWindow(currentWindow) > RESPONSIVE_MAX_CONSTRAINT[responsiveMode]) {\n responsiveMode++;\n }\n } catch (e) {\n // Return a best effort result in cases where we're in the browser but it throws on getting innerWidth.\n responsiveMode = getInitialResponsiveMode();\n }\n\n // Tracking last mode just gives us a better default in future renders,\n // which avoids starting with the wrong value if we've measured once.\n _lastMode = responsiveMode;\n } else {\n if (_defaultMode !== undefined) {\n responsiveMode = _defaultMode;\n } else {\n throw new Error(\n 'Content was rendered in a server environment without providing a default responsive mode. ' +\n 'Call setResponsiveMode to define what the responsive mode is.',\n );\n }\n }\n\n return responsiveMode;\n}\n","/**\n * Allows you to hoist static functions in components.\n * Created for the purpose of fixing broken static functions in classes\n * that utilize decorators.\n *\n * @public\n * @param source - The object where the methods are hoisted from.\n * @param dest - The object to hoist the methods onto.\n * @returns The dest object with methods added\n */\n\nexport function hoistStatics(source: TSource, dest: TDest): TDest {\n for (const name in source) {\n if (source.hasOwnProperty(name)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (dest as any)[name] = source[name];\n }\n }\n\n return dest;\n}\n","import * as React from 'react';\nimport { TooltipHostBase } from './TooltipHost.base';\nimport { TooltipDelay } from './Tooltip.types';\nimport { DirectionalHint } from '../../common/DirectionalHint';\nimport type { ITooltipProps } from './Tooltip.types';\nimport type { ICalloutProps } from '../../Callout';\nimport type { IRefObject, IStyleFunctionOrObject } from '../../Utilities';\nimport type { IStyle, ITheme } from '../../Styling';\n\n/**\n * {@docCategory Tooltip}\n */\nexport interface ITooltipHost {\n /**\n * Shows the tooltip.\n */\n show: () => void;\n\n /**\n * Dismisses the tooltip.\n */\n dismiss: () => void;\n}\n\n/**\n * {@docCategory Tooltip}\n */\nexport enum TooltipOverflowMode {\n /** Only show tooltip if parent DOM element is overflowing */\n Parent,\n\n /**\n * Only show tooltip if tooltip host's content is overflowing.\n * Note that this does not check the children for overflow, only the TooltipHost root.\n */\n Self,\n}\n\n/**\n * TooltipHost props. Note that native props (such as `id`, `className`, and `aria-` props) are\n * passed through to the Tooltip itself, rather than being used on the host element.\n * {@docCategory Tooltip}\n */\nexport interface ITooltipHostProps extends React.HTMLAttributes {\n /**\n * Optional callback to access the ITooltipHost interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject;\n\n /**\n * Additional properties to pass through for Callout.\n */\n calloutProps?: ICalloutProps;\n\n /**\n * Number of milliseconds to delay closing the tooltip, so that the user has time to hover over\n * the tooltip and interact with it. Hovering over the tooltip will count as hovering over the\n * host, so that the tooltip will stay open if the user is actively interacting with it.\n */\n closeDelay?: number;\n\n /**\n * Content to display in the Tooltip.\n */\n content?: string | JSX.Element | JSX.Element[];\n\n /**\n * Length of delay before showing the tooltip on hover.\n * @defaultvalue TooltipDelay.medium\n */\n delay?: TooltipDelay;\n\n /**\n * How the tooltip should be anchored to its `targetElement`.\n * @defaultvalue DirectionalHint.topCenter\n */\n directionalHint?: DirectionalHint;\n\n /**\n * How the element should be positioned in RTL layouts.\n * If not specified, a mirror of `directionalHint` will be used.\n */\n directionalHintForRTL?: DirectionalHint;\n\n /**\n * Class name to apply to tooltip host.\n */\n hostClassName?: string;\n\n /**\n * Class name to apply to the *tooltip itself*, not the host.\n * To apply a class to the host, use `hostClassName` or `styles.root`.\n */\n className?: string;\n\n /**\n * If this is unset (the default), the tooltip is always shown even if there's no overflow.\n *\n * If set, only show the tooltip if the specified element (`Self` or `Parent`) has overflow.\n * When set to `Parent`, the parent element is also used as the tooltip's target element.\n *\n * Note that even with `Self` mode, the TooltipHost *does not* check whether any children have overflow.\n */\n overflowMode?: TooltipOverflowMode;\n\n /**\n * Whether or not to mark the TooltipHost root element as described by the tooltip.\n * Since this applies aria-describedby to a generic
    , the description will not be\n * read by screen readers. Instead, the caller should pass an `id` to the TooltipHost\n * (to be passed through to the Tooltip) and mark the appropriate element as `aria-describedby`\n * with the `id`.\n * @defaultvalue true\n * @deprecated use aria-describedby on the appropriate element instead\n */\n setAriaDescribedBy?: boolean;\n\n /**\n * Additional properties to pass through for Tooltip.\n */\n tooltipProps?: ITooltipProps;\n\n /**\n * Optional ID to pass through to the tooltip (not used on the host itself).\n * Auto-generated if not provided.\n */\n id?: string;\n\n /**\n * Call to provide customized styling that will layer on top of the variant rules.\n */\n styles?: IStyleFunctionOrObject;\n\n /**\n * Theme provided by higher-order component.\n */\n theme?: ITheme;\n\n /**\n * Notifies when tooltip becomes visible or hidden, whatever the trigger was.\n */\n onTooltipToggle?(isTooltipVisible: boolean): void;\n}\n\n/**\n * {@docCategory Tooltip}\n */\nexport interface ITooltipHostStyleProps {\n theme: ITheme;\n className?: string;\n}\n\n/**\n * {@docCategory Tooltip}\n */\nexport interface ITooltipHostStyles {\n /**\n * Style for the host wrapper element.\n */\n root: IStyle;\n}\n","var isarray = require('isarray')\n\n/**\n * Expose `pathToRegexp`.\n */\nmodule.exports = pathToRegexp\nmodule.exports.parse = parse\nmodule.exports.compile = compile\nmodule.exports.tokensToFunction = tokensToFunction\nmodule.exports.tokensToRegExp = tokensToRegExp\n\n/**\n * The main path matching regexp utility.\n *\n * @type {RegExp}\n */\nvar PATH_REGEXP = new RegExp([\n // Match escaped characters that would otherwise appear in future matches.\n // This allows the user to escape special characters that won't transform.\n '(\\\\\\\\.)',\n // Match Express-style parameters and un-named parameters with a prefix\n // and optional suffixes. Matches appear as:\n //\n // \"/:test(\\\\d+)?\" => [\"/\", \"test\", \"\\d+\", undefined, \"?\", undefined]\n // \"/route(\\\\d+)\" => [undefined, undefined, undefined, \"\\d+\", undefined, undefined]\n // \"/*\" => [\"/\", undefined, undefined, undefined, undefined, \"*\"]\n '([\\\\/.])?(?:(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?|(\\\\*))'\n].join('|'), 'g')\n\n/**\n * Parse a string for the raw tokens.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!Array}\n */\nfunction parse (str, options) {\n var tokens = []\n var key = 0\n var index = 0\n var path = ''\n var defaultDelimiter = options && options.delimiter || '/'\n var res\n\n while ((res = PATH_REGEXP.exec(str)) != null) {\n var m = res[0]\n var escaped = res[1]\n var offset = res.index\n path += str.slice(index, offset)\n index = offset + m.length\n\n // Ignore already escaped sequences.\n if (escaped) {\n path += escaped[1]\n continue\n }\n\n var next = str[index]\n var prefix = res[2]\n var name = res[3]\n var capture = res[4]\n var group = res[5]\n var modifier = res[6]\n var asterisk = res[7]\n\n // Push the current path onto the tokens.\n if (path) {\n tokens.push(path)\n path = ''\n }\n\n var partial = prefix != null && next != null && next !== prefix\n var repeat = modifier === '+' || modifier === '*'\n var optional = modifier === '?' || modifier === '*'\n var delimiter = res[2] || defaultDelimiter\n var pattern = capture || group\n\n tokens.push({\n name: name || key++,\n prefix: prefix || '',\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n partial: partial,\n asterisk: !!asterisk,\n pattern: pattern ? escapeGroup(pattern) : (asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?')\n })\n }\n\n // Match any characters still remaining.\n if (index < str.length) {\n path += str.substr(index)\n }\n\n // If the path exists, push it onto the end.\n if (path) {\n tokens.push(path)\n }\n\n return tokens\n}\n\n/**\n * Compile a string to a template function for the path.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!function(Object=, Object=)}\n */\nfunction compile (str, options) {\n return tokensToFunction(parse(str, options), options)\n}\n\n/**\n * Prettier encoding of URI path segments.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeURIComponentPretty (str) {\n return encodeURI(str).replace(/[\\/?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeAsterisk (str) {\n return encodeURI(str).replace(/[?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Expose a method for transforming tokens into the path function.\n */\nfunction tokensToFunction (tokens, options) {\n // Compile all the tokens into regexps.\n var matches = new Array(tokens.length)\n\n // Compile all the patterns before compilation.\n for (var i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$', flags(options))\n }\n }\n\n return function (obj, opts) {\n var path = ''\n var data = obj || {}\n var options = opts || {}\n var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i]\n\n if (typeof token === 'string') {\n path += token\n\n continue\n }\n\n var value = data[token.name]\n var segment\n\n if (value == null) {\n if (token.optional) {\n // Prepend partial segment prefixes.\n if (token.partial) {\n path += token.prefix\n }\n\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to be defined')\n }\n }\n\n if (isarray(value)) {\n if (!token.repeat) {\n throw new TypeError('Expected \"' + token.name + '\" to not repeat, but received `' + JSON.stringify(value) + '`')\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to not be empty')\n }\n }\n\n for (var j = 0; j < value.length; j++) {\n segment = encode(value[j])\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected all \"' + token.name + '\" to match \"' + token.pattern + '\", but received `' + JSON.stringify(segment) + '`')\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment\n }\n\n continue\n }\n\n segment = token.asterisk ? encodeAsterisk(value) : encode(value)\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected \"' + token.name + '\" to match \"' + token.pattern + '\", but received \"' + segment + '\"')\n }\n\n path += token.prefix + segment\n }\n\n return path\n }\n}\n\n/**\n * Escape a regular expression string.\n *\n * @param {string} str\n * @return {string}\n */\nfunction escapeString (str) {\n return str.replace(/([.+*?=^!:${}()[\\]|\\/\\\\])/g, '\\\\$1')\n}\n\n/**\n * Escape the capturing group by escaping special characters and meaning.\n *\n * @param {string} group\n * @return {string}\n */\nfunction escapeGroup (group) {\n return group.replace(/([=!:$\\/()])/g, '\\\\$1')\n}\n\n/**\n * Attach the keys as a property of the regexp.\n *\n * @param {!RegExp} re\n * @param {Array} keys\n * @return {!RegExp}\n */\nfunction attachKeys (re, keys) {\n re.keys = keys\n return re\n}\n\n/**\n * Get the flags for a regexp from the options.\n *\n * @param {Object} options\n * @return {string}\n */\nfunction flags (options) {\n return options && options.sensitive ? '' : 'i'\n}\n\n/**\n * Pull out keys from a regexp.\n *\n * @param {!RegExp} path\n * @param {!Array} keys\n * @return {!RegExp}\n */\nfunction regexpToRegexp (path, keys) {\n // Use a negative lookahead to match only capturing groups.\n var groups = path.source.match(/\\((?!\\?)/g)\n\n if (groups) {\n for (var i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n partial: false,\n asterisk: false,\n pattern: null\n })\n }\n }\n\n return attachKeys(path, keys)\n}\n\n/**\n * Transform an array into a regexp.\n *\n * @param {!Array} path\n * @param {Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction arrayToRegexp (path, keys, options) {\n var parts = []\n\n for (var i = 0; i < path.length; i++) {\n parts.push(pathToRegexp(path[i], keys, options).source)\n }\n\n var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options))\n\n return attachKeys(regexp, keys)\n}\n\n/**\n * Create a path regexp from string input.\n *\n * @param {string} path\n * @param {!Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction stringToRegexp (path, keys, options) {\n return tokensToRegExp(parse(path, options), keys, options)\n}\n\n/**\n * Expose a function for taking tokens and returning a RegExp.\n *\n * @param {!Array} tokens\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction tokensToRegExp (tokens, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options)\n keys = []\n }\n\n options = options || {}\n\n var strict = options.strict\n var end = options.end !== false\n var route = ''\n\n // Iterate over the tokens and create our regexp string.\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i]\n\n if (typeof token === 'string') {\n route += escapeString(token)\n } else {\n var prefix = escapeString(token.prefix)\n var capture = '(?:' + token.pattern + ')'\n\n keys.push(token)\n\n if (token.repeat) {\n capture += '(?:' + prefix + capture + ')*'\n }\n\n if (token.optional) {\n if (!token.partial) {\n capture = '(?:' + prefix + '(' + capture + '))?'\n } else {\n capture = prefix + '(' + capture + ')?'\n }\n } else {\n capture = prefix + '(' + capture + ')'\n }\n\n route += capture\n }\n }\n\n var delimiter = escapeString(options.delimiter || '/')\n var endsWithDelimiter = route.slice(-delimiter.length) === delimiter\n\n // In non-strict mode we allow a slash at the end of match. If the path to\n // match already ends with a slash, we remove it for consistency. The slash\n // is valid at the end of a path match, not in the middle. This is important\n // in non-ending mode, where \"/test/\" shouldn't match \"/test//route\".\n if (!strict) {\n route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?'\n }\n\n if (end) {\n route += '$'\n } else {\n // In non-ending mode, we need the capturing groups to match as much as\n // possible by using a positive lookahead to the end or next path segment.\n route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)'\n }\n\n return attachKeys(new RegExp('^' + route, flags(options)), keys)\n}\n\n/**\n * Normalize the given path string, returning a regular expression.\n *\n * An empty array can be passed in for the keys, which will hold the\n * placeholder key descriptions. For example, using `/user/:id`, `keys` will\n * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.\n *\n * @param {(string|RegExp|Array)} path\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction pathToRegexp (path, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options)\n keys = []\n }\n\n options = options || {}\n\n if (path instanceof RegExp) {\n return regexpToRegexp(path, /** @type {!Array} */ (keys))\n }\n\n if (isarray(path)) {\n return arrayToRegexp(/** @type {!Array} */ (path), /** @type {!Array} */ (keys), options)\n }\n\n return stringToRegexp(/** @type {string} */ (path), /** @type {!Array} */ (keys), options)\n}\n","import { parse, icon } from '@fortawesome/fontawesome-svg-core';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\n// Get CSS class list from a props object\nfunction classList(props) {\n var _classes;\n\n var beat = props.beat,\n fade = props.fade,\n beatFade = props.beatFade,\n bounce = props.bounce,\n shake = props.shake,\n flash = props.flash,\n spin = props.spin,\n spinPulse = props.spinPulse,\n spinReverse = props.spinReverse,\n pulse = props.pulse,\n fixedWidth = props.fixedWidth,\n inverse = props.inverse,\n border = props.border,\n listItem = props.listItem,\n flip = props.flip,\n size = props.size,\n rotation = props.rotation,\n pull = props.pull; // map of CSS class names to properties\n\n var classes = (_classes = {\n 'fa-beat': beat,\n 'fa-fade': fade,\n 'fa-beat-fade': beatFade,\n 'fa-bounce': bounce,\n 'fa-shake': shake,\n 'fa-flash': flash,\n 'fa-spin': spin,\n 'fa-spin-reverse': spinReverse,\n 'fa-spin-pulse': spinPulse,\n 'fa-pulse': pulse,\n 'fa-fw': fixedWidth,\n 'fa-inverse': inverse,\n 'fa-border': border,\n 'fa-li': listItem,\n 'fa-flip-horizontal': flip === 'horizontal' || flip === 'both',\n 'fa-flip-vertical': flip === 'vertical' || flip === 'both'\n }, _defineProperty(_classes, \"fa-\".concat(size), typeof size !== 'undefined' && size !== null), _defineProperty(_classes, \"fa-rotate-\".concat(rotation), typeof rotation !== 'undefined' && rotation !== null && rotation !== 0), _defineProperty(_classes, \"fa-pull-\".concat(pull), typeof pull !== 'undefined' && pull !== null), _defineProperty(_classes, 'fa-swap-opacity', props.swapOpacity), _classes); // map over all the keys in the classes object\n // return an array of the keys where the value for the key is not null\n\n return Object.keys(classes).map(function (key) {\n return classes[key] ? key : null;\n }).filter(function (key) {\n return key;\n });\n}\n\n// Camelize taken from humps\n// humps is copyright © 2012+ Dom Christie\n// Released under the MIT license.\n// Performant way to determine if object coerces to a number\nfunction _isNumerical(obj) {\n obj = obj - 0; // eslint-disable-next-line no-self-compare\n\n return obj === obj;\n}\n\nfunction camelize(string) {\n if (_isNumerical(string)) {\n return string;\n } // eslint-disable-next-line no-useless-escape\n\n\n string = string.replace(/[\\-_\\s]+(.)?/g, function (match, chr) {\n return chr ? chr.toUpperCase() : '';\n }); // Ensure 1st char is always lowercase\n\n return string.substr(0, 1).toLowerCase() + string.substr(1);\n}\n\nvar _excluded$1 = [\"style\"];\n\nfunction capitalize(val) {\n return val.charAt(0).toUpperCase() + val.slice(1);\n}\n\nfunction styleToObject(style) {\n return style.split(';').map(function (s) {\n return s.trim();\n }).filter(function (s) {\n return s;\n }).reduce(function (acc, pair) {\n var i = pair.indexOf(':');\n var prop = camelize(pair.slice(0, i));\n var value = pair.slice(i + 1).trim();\n prop.startsWith('webkit') ? acc[capitalize(prop)] = value : acc[prop] = value;\n return acc;\n }, {});\n}\n\nfunction convert(createElement, element) {\n var extraProps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n if (typeof element === 'string') {\n return element;\n }\n\n var children = (element.children || []).map(function (child) {\n return convert(createElement, child);\n });\n /* eslint-disable dot-notation */\n\n var mixins = Object.keys(element.attributes || {}).reduce(function (acc, key) {\n var val = element.attributes[key];\n\n switch (key) {\n case 'class':\n acc.attrs['className'] = val;\n delete element.attributes['class'];\n break;\n\n case 'style':\n acc.attrs['style'] = styleToObject(val);\n break;\n\n default:\n if (key.indexOf('aria-') === 0 || key.indexOf('data-') === 0) {\n acc.attrs[key.toLowerCase()] = val;\n } else {\n acc.attrs[camelize(key)] = val;\n }\n\n }\n\n return acc;\n }, {\n attrs: {}\n });\n\n var _extraProps$style = extraProps.style,\n existingStyle = _extraProps$style === void 0 ? {} : _extraProps$style,\n remaining = _objectWithoutProperties(extraProps, _excluded$1);\n\n mixins.attrs['style'] = _objectSpread2(_objectSpread2({}, mixins.attrs['style']), existingStyle);\n /* eslint-enable */\n\n return createElement.apply(void 0, [element.tag, _objectSpread2(_objectSpread2({}, mixins.attrs), remaining)].concat(_toConsumableArray(children)));\n}\n\nvar PRODUCTION = false;\n\ntry {\n PRODUCTION = process.env.NODE_ENV === 'production';\n} catch (e) {}\n\nfunction log () {\n if (!PRODUCTION && console && typeof console.error === 'function') {\n var _console;\n\n (_console = console).error.apply(_console, arguments);\n }\n}\n\nfunction normalizeIconArgs(icon) {\n // this has everything that it needs to be rendered which means it was probably imported\n // directly from an icon svg package\n if (icon && _typeof(icon) === 'object' && icon.prefix && icon.iconName && icon.icon) {\n return icon;\n }\n\n if (parse.icon) {\n return parse.icon(icon);\n } // if the icon is null, there's nothing to do\n\n\n if (icon === null) {\n return null;\n } // if the icon is an object and has a prefix and an icon name, return it\n\n\n if (icon && _typeof(icon) === 'object' && icon.prefix && icon.iconName) {\n return icon;\n } // if it's an array with length of two\n\n\n if (Array.isArray(icon) && icon.length === 2) {\n // use the first item as prefix, second as icon name\n return {\n prefix: icon[0],\n iconName: icon[1]\n };\n } // if it's a string, use it as the icon name\n\n\n if (typeof icon === 'string') {\n return {\n prefix: 'fas',\n iconName: icon\n };\n }\n}\n\n// creates an object with a key of key\n// and a value of value\n// if certain conditions are met\nfunction objectWithKey(key, value) {\n // if the value is a non-empty array\n // or it's not an array but it is truthy\n // then create the object with the key and the value\n // if not, return an empty array\n return Array.isArray(value) && value.length > 0 || !Array.isArray(value) && value ? _defineProperty({}, key, value) : {};\n}\n\nvar _excluded = [\"forwardedRef\"];\nfunction FontAwesomeIcon(_ref) {\n var forwardedRef = _ref.forwardedRef,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var iconArgs = props.icon,\n maskArgs = props.mask,\n symbol = props.symbol,\n className = props.className,\n title = props.title,\n titleId = props.titleId,\n maskId = props.maskId;\n var iconLookup = normalizeIconArgs(iconArgs);\n var classes = objectWithKey('classes', [].concat(_toConsumableArray(classList(props)), _toConsumableArray(className.split(' '))));\n var transform = objectWithKey('transform', typeof props.transform === 'string' ? parse.transform(props.transform) : props.transform);\n var mask = objectWithKey('mask', normalizeIconArgs(maskArgs));\n var renderedIcon = icon(iconLookup, _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, classes), transform), mask), {}, {\n symbol: symbol,\n title: title,\n titleId: titleId,\n maskId: maskId\n }));\n\n if (!renderedIcon) {\n log('Could not find icon', iconLookup);\n return null;\n }\n\n var abstract = renderedIcon.abstract;\n var extraProps = {\n ref: forwardedRef\n };\n Object.keys(props).forEach(function (key) {\n // eslint-disable-next-line no-prototype-builtins\n if (!FontAwesomeIcon.defaultProps.hasOwnProperty(key)) {\n extraProps[key] = props[key];\n }\n });\n return convertCurry(abstract[0], extraProps);\n}\nFontAwesomeIcon.displayName = 'FontAwesomeIcon';\nFontAwesomeIcon.propTypes = {\n beat: PropTypes.bool,\n border: PropTypes.bool,\n bounce: PropTypes.bool,\n className: PropTypes.string,\n fade: PropTypes.bool,\n flash: PropTypes.bool,\n mask: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),\n maskId: PropTypes.string,\n fixedWidth: PropTypes.bool,\n inverse: PropTypes.bool,\n flip: PropTypes.oneOf(['horizontal', 'vertical', 'both']),\n icon: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),\n listItem: PropTypes.bool,\n pull: PropTypes.oneOf(['right', 'left']),\n pulse: PropTypes.bool,\n rotation: PropTypes.oneOf([0, 90, 180, 270]),\n shake: PropTypes.bool,\n size: PropTypes.oneOf(['2xs', 'xs', 'sm', 'lg', 'xl', '2xl', '1x', '2x', '3x', '4x', '5x', '6x', '7x', '8x', '9x', '10x']),\n spin: PropTypes.bool,\n spinPulse: PropTypes.bool,\n spinReverse: PropTypes.bool,\n symbol: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),\n title: PropTypes.string,\n titleId: PropTypes.string,\n transform: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n swapOpacity: PropTypes.bool\n};\nFontAwesomeIcon.defaultProps = {\n border: false,\n className: '',\n mask: null,\n maskId: null,\n fixedWidth: false,\n inverse: false,\n flip: null,\n icon: null,\n listItem: false,\n pull: null,\n pulse: false,\n rotation: null,\n size: null,\n spin: false,\n beat: false,\n fade: false,\n beatFade: false,\n bounce: false,\n shake: false,\n symbol: false,\n title: '',\n titleId: null,\n transform: null,\n swapOpacity: false\n};\nvar convertCurry = convert.bind(null, React.createElement);\n\nexport { FontAwesomeIcon };\n","/*!\n * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)\n */\nvar prefix = \"fab\";\nvar fa500px = {\n prefix: 'fab',\n iconName: '500px',\n icon: [448, 512, [], \"f26e\", \"M103.3 344.3c-6.5-14.2-6.9-18.3 7.4-23.1 25.6-8 8 9.2 43.2 49.2h.3v-93.9c1.2-50.2 44-92.2 97.7-92.2 53.9 0 97.7 43.5 97.7 96.8 0 63.4-60.8 113.2-128.5 93.3-10.5-4.2-2.1-31.7 8.5-28.6 53 0 89.4-10.1 89.4-64.4 0-61-77.1-89.6-116.9-44.6-23.5 26.4-17.6 42.1-17.6 157.6 50.7 31 118.3 22 160.4-20.1 24.8-24.8 38.5-58 38.5-93 0-35.2-13.8-68.2-38.8-93.3-24.8-24.8-57.8-38.5-93.3-38.5s-68.8 13.8-93.5 38.5c-.3.3-16 16.5-21.2 23.9l-.5.6c-3.3 4.7-6.3 9.1-20.1 6.1-6.9-1.7-14.3-5.8-14.3-11.8V20c0-5 3.9-10.5 10.5-10.5h241.3c8.3 0 8.3 11.6 8.3 15.1 0 3.9 0 15.1-8.3 15.1H130.3v132.9h.3c104.2-109.8 282.8-36 282.8 108.9 0 178.1-244.8 220.3-310.1 62.8zm63.3-260.8c-.5 4.2 4.6 24.5 14.6 20.6C306 56.6 384 144.5 390.6 144.5c4.8 0 22.8-15.3 14.3-22.8-93.2-89-234.5-57-238.3-38.2zM393 414.7C283 524.6 94 475.5 61 310.5c0-12.2-30.4-7.4-28.9 3.3 24 173.4 246 256.9 381.6 121.3 6.9-7.8-12.6-28.4-20.7-20.4zM213.6 306.6c0 4 4.3 7.3 5.5 8.5 3 3 6.1 4.4 8.5 4.4 3.8 0 2.6.2 22.3-19.5 19.6 19.3 19.1 19.5 22.3 19.5 5.4 0 18.5-10.4 10.7-18.2L265.6 284l18.2-18.2c6.3-6.8-10.1-21.8-16.2-15.7L249.7 268c-18.6-18.8-18.4-19.5-21.5-19.5-5 0-18 11.7-12.4 17.3L234 284c-18.1 17.9-20.4 19.2-20.4 22.6z\"]\n};\nvar faAccessibleIcon = {\n prefix: 'fab',\n iconName: 'accessible-icon',\n icon: [448, 512, [], \"f368\", \"M423.9 255.8L411 413.1c-3.3 40.7-63.9 35.1-60.6-4.9l10-122.5-41.1 2.3c10.1 20.7 15.8 43.9 15.8 68.5 0 41.2-16.1 78.7-42.3 106.5l-39.3-39.3c57.9-63.7 13.1-167.2-74-167.2-25.9 0-49.5 9.9-67.2 26L73 243.2c22-20.7 50.1-35.1 81.4-40.2l75.3-85.7-42.6-24.8-51.6 46c-30 26.8-70.6-18.5-40.5-45.4l68-60.7c9.8-8.8 24.1-10.2 35.5-3.6 0 0 139.3 80.9 139.5 81.1 16.2 10.1 20.7 36 6.1 52.6L285.7 229l106.1-5.9c18.5-1.1 33.6 14.4 32.1 32.7zm-64.9-154c28.1 0 50.9-22.8 50.9-50.9C409.9 22.8 387.1 0 359 0c-28.1 0-50.9 22.8-50.9 50.9 0 28.1 22.8 50.9 50.9 50.9zM179.6 456.5c-80.6 0-127.4-90.6-82.7-156.1l-39.7-39.7C36.4 287 24 320.3 24 356.4c0 130.7 150.7 201.4 251.4 122.5l-39.7-39.7c-16 10.9-35.3 17.3-56.1 17.3z\"]\n};\nvar faAccusoft = {\n prefix: 'fab',\n iconName: 'accusoft',\n icon: [640, 512, [], \"f369\", \"M322.1 252v-1l-51.2-65.8s-12 1.6-25 15.1c-9 9.3-242.1 239.1-243.4 240.9-7 10 1.6 6.8 15.7 1.7.8 0 114.5-36.6 114.5-36.6.5-.6-.1-.1.6-.6-.4-5.1-.8-26.2-1-27.7-.6-5.2 2.2-6.9 7-8.9l92.6-33.8c.6-.8 88.5-81.7 90.2-83.3zm160.1 120.1c13.3 16.1 20.7 13.3 30.8 9.3 3.2-1.2 115.4-47.6 117.8-48.9 8-4.3-1.7-16.7-7.2-23.4-2.1-2.5-205.1-245.6-207.2-248.3-9.7-12.2-14.3-12.9-38.4-12.8-10.2 0-106.8.5-116.5.6-19.2.1-32.9-.3-19.2 16.9C250 75 476.5 365.2 482.2 372.1zm152.7 1.6c-2.3-.3-24.6-4.7-38-7.2 0 0-115 50.4-117.5 51.6-16 7.3-26.9-3.2-36.7-14.6l-57.1-74c-5.4-.9-60.4-9.6-65.3-9.3-3.1.2-9.6.8-14.4 2.9-4.9 2.1-145.2 52.8-150.2 54.7-5.1 2-11.4 3.6-11.1 7.6.2 2.5 2 2.6 4.6 3.5 2.7.8 300.9 67.6 308 69.1 15.6 3.3 38.5 10.5 53.6 1.7 2.1-1.2 123.8-76.4 125.8-77.8 5.4-4 4.3-6.8-1.7-8.2z\"]\n};\nvar faAcquisitionsIncorporated = {\n prefix: 'fab',\n iconName: 'acquisitions-incorporated',\n icon: [384, 512, [], \"f6af\", \"M357.45 468.2c-1.2-7.7-1.3-7.6-9.6-7.6-99.8.2-111.8-2.4-112.7-2.6-12.3-1.7-20.6-10.5-21-23.1-.1-1.6-.2-71.6-1-129.1-.1-4.7 1.6-6.4 5.9-7.5 12.5-3 24.9-6.1 37.3-9.7 4.3-1.3 6.8-.2 8.4 3.5 4.5 10.3 8.8 20.6 13.2 30.9 1.6 3.7.1 4.4-3.4 4.4-10-.2-20-.1-30.4-.1v27h116c-1.4-9.5-2.7-18.1-4-27.5-7 0-13.8.4-20.4-.1-22.6-1.6-18.3-4.4-84-158.6-8.8-20.1-27.9-62.1-36.5-89.2-4.4-14 5.5-25.4 18.9-26.6 18.6-1.7 37.5-1.6 56.2-2 20.6-.4 41.2-.4 61.8-.5 3.1 0 4-1.4 4.3-4.3 1.2-9.8 2.7-19.5 4-29.2.8-5.3 1.6-10.7 2.4-16.1L23.75 0c-3.6 0-5.3 1.1-4.6 5.3 2.2 13.2-.8.8 6.4 45.3 63.4 0 71.8.9 101.8.5 12.3-.2 37 3.5 37.7 22.1.4 11.4-1.1 11.3-32.6 87.4-53.8 129.8-50.7 120.3-67.3 161-1.7 4.1-3.6 5.2-7.6 5.2-8.5-.2-17-.3-25.4.1-1.9.1-5.2 1.8-5.5 3.2-1.5 8.1-2.2 16.3-3.2 24.9h114.3v-27.6c-6.9 0-33.5.4-35.3-2.9 5.3-12.3 10.4-24.4 15.7-36.7 16.3 4 31.9 7.8 47.6 11.7 3.4.9 4.6 3 4.6 6.8-.1 42.9.1 85.9.2 128.8 0 10.2-5.5 19.1-14.9 23.1-6.5 2.7-3.3 3.4-121.4 2.4-5.3 0-7.1 2-7.6 6.8-1.5 12.9-2.9 25.9-5 38.8-.8 5 1.3 5.7 5.3 5.7 183.2.6-30.7 0 337.1 0-2.5-15-4.4-29.4-6.6-43.7zm-174.9-205.7c-13.3-4.2-26.6-8.2-39.9-12.5a44.53 44.53 0 0 1-5.8-2.9c17.2-44.3 34.2-88.1 51.3-132.1 7.5 2.4 7.9-.8 9.4 0 9.3 22.5 18.1 60.1 27 82.8 6.6 16.7 13 33.5 19.7 50.9a35.78 35.78 0 0 1-3.9 2.1c-13.1 3.9-26.4 7.5-39.4 11.7a27.66 27.66 0 0 1-18.4 0z\"]\n};\nvar faAdn = {\n prefix: 'fab',\n iconName: 'adn',\n icon: [496, 512, [], \"f170\", \"M248 167.5l64.9 98.8H183.1l64.9-98.8zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-99.8 82.7L248 115.5 99.8 338.7h30.4l33.6-51.7h168.6l33.6 51.7h30.2z\"]\n};\nvar faAdversal = {\n prefix: 'fab',\n iconName: 'adversal',\n icon: [512, 512, [], \"f36a\", \"M482.1 32H28.7C5.8 32 0 37.9 0 60.9v390.2C0 474.4 5.8 480 28.7 480h453.4c24.4 0 29.9-5.2 29.9-29.7V62.2c0-24.6-5.4-30.2-29.9-30.2zM178.4 220.3c-27.5-20.2-72.1-8.7-84.2 23.4-4.3 11.1-9.3 9.5-17.5 8.3-9.7-1.5-17.2-3.2-22.5-5.5-28.8-11.4 8.6-55.3 24.9-64.3 41.1-21.4 83.4-22.2 125.3-4.8 40.9 16.8 34.5 59.2 34.5 128.5 2.7 25.8-4.3 58.3 9.3 88.8 1.9 4.4.4 7.9-2.7 10.7-8.4 6.7-39.3 2.2-46.6-7.4-1.9-2.2-1.8-3.6-3.9-6.2-3.6-3.9-7.3-2.2-11.9 1-57.4 36.4-140.3 21.4-147-43.3-3.1-29.3 12.4-57.1 39.6-71 38.2-19.5 112.2-11.8 114-30.9 1.1-10.2-1.9-20.1-11.3-27.3zm286.7 222c0 15.1-11.1 9.9-17.8 9.9H52.4c-7.4 0-18.2 4.8-17.8-10.7.4-13.9 10.5-9.1 17.1-9.1 132.3-.4 264.5-.4 396.8 0 6.8 0 16.6-4.4 16.6 9.9zm3.8-340.5v291c0 5.7-.7 13.9-8.1 13.9-12.4-.4-27.5 7.1-36.1-5.6-5.8-8.7-7.8-4-12.4-1.2-53.4 29.7-128.1 7.1-144.4-85.2-6.1-33.4-.7-67.1 15.7-100 11.8-23.9 56.9-76.1 136.1-30.5v-71c0-26.2-.1-26.2 26-26.2 3.1 0 6.6.4 9.7 0 10.1-.8 13.6 4.4 13.6 14.3-.1.2-.1.3-.1.5zm-51.5 232.3c-19.5 47.6-72.9 43.3-90 5.2-15.1-33.3-15.5-68.2.4-101.5 16.3-34.1 59.7-35.7 81.5-4.8 20.6 28.8 14.9 84.6 8.1 101.1zm-294.8 35.3c-7.5-1.3-33-3.3-33.7-27.8-.4-13.9 7.8-23 19.8-25.8 24.4-5.9 49.3-9.9 73.7-14.7 8.9-2 7.4 4.4 7.8 9.5 1.4 33-26.1 59.2-67.6 58.8z\"]\n};\nvar faAffiliatetheme = {\n prefix: 'fab',\n iconName: 'affiliatetheme',\n icon: [512, 512, [], \"f36b\", \"M159.7 237.4C108.4 308.3 43.1 348.2 14 326.6-15.2 304.9 2.8 230 54.2 159.1c51.3-70.9 116.6-110.8 145.7-89.2 29.1 21.6 11.1 96.6-40.2 167.5zm351.2-57.3C437.1 303.5 319 367.8 246.4 323.7c-25-15.2-41.3-41.2-49-73.8-33.6 64.8-92.8 113.8-164.1 133.2 49.8 59.3 124.1 96.9 207 96.9 150 0 271.6-123.1 271.6-274.9.1-8.5-.3-16.8-1-25z\"]\n};\nvar faAirbnb = {\n prefix: 'fab',\n iconName: 'airbnb',\n icon: [448, 512, [], \"f834\", \"M224 373.12c-25.24-31.67-40.08-59.43-45-83.18-22.55-88 112.61-88 90.06 0-5.45 24.25-20.29 52-45 83.18zm138.15 73.23c-42.06 18.31-83.67-10.88-119.3-50.47 103.9-130.07 46.11-200-18.85-200-54.92 0-85.16 46.51-73.28 100.5 6.93 29.19 25.23 62.39 54.43 99.5-32.53 36.05-60.55 52.69-85.15 54.92-50 7.43-89.11-41.06-71.3-91.09 15.1-39.16 111.72-231.18 115.87-241.56 15.75-30.07 25.56-57.4 59.38-57.4 32.34 0 43.4 25.94 60.37 59.87 36 70.62 89.35 177.48 114.84 239.09 13.17 33.07-1.37 71.29-37.01 86.64zm47-136.12C280.27 35.93 273.13 32 224 32c-45.52 0-64.87 31.67-84.66 72.79C33.18 317.1 22.89 347.19 22 349.81-3.22 419.14 48.74 480 111.63 480c21.71 0 60.61-6.06 112.37-62.4 58.68 63.78 101.26 62.4 112.37 62.4 62.89.05 114.85-60.86 89.61-130.19.02-3.89-16.82-38.9-16.82-39.58z\"]\n};\nvar faAlgolia = {\n prefix: 'fab',\n iconName: 'algolia',\n icon: [448, 512, [], \"f36c\", \"M229.3 182.6c-49.3 0-89.2 39.9-89.2 89.2 0 49.3 39.9 89.2 89.2 89.2s89.2-39.9 89.2-89.2c0-49.3-40-89.2-89.2-89.2zm62.7 56.6l-58.9 30.6c-1.8.9-3.8-.4-3.8-2.3V201c0-1.5 1.3-2.7 2.7-2.6 26.2 1 48.9 15.7 61.1 37.1.7 1.3.2 3-1.1 3.7zM389.1 32H58.9C26.4 32 0 58.4 0 90.9V421c0 32.6 26.4 59 58.9 59H389c32.6 0 58.9-26.4 58.9-58.9V90.9C448 58.4 421.6 32 389.1 32zm-202.6 84.7c0-10.8 8.7-19.5 19.5-19.5h45.3c10.8 0 19.5 8.7 19.5 19.5v15.4c0 1.8-1.7 3-3.3 2.5-12.3-3.4-25.1-5.1-38.1-5.1-13.5 0-26.7 1.8-39.4 5.5-1.7.5-3.4-.8-3.4-2.5v-15.8zm-84.4 37l9.2-9.2c7.6-7.6 19.9-7.6 27.5 0l7.7 7.7c1.1 1.1 1 3-.3 4-6.2 4.5-12.1 9.4-17.6 14.9-5.4 5.4-10.4 11.3-14.8 17.4-1 1.3-2.9 1.5-4 .3l-7.7-7.7c-7.6-7.5-7.6-19.8 0-27.4zm127.2 244.8c-70 0-126.6-56.7-126.6-126.6s56.7-126.6 126.6-126.6c70 0 126.6 56.6 126.6 126.6 0 69.8-56.7 126.6-126.6 126.6z\"]\n};\nvar faAlipay = {\n prefix: 'fab',\n iconName: 'alipay',\n icon: [448, 512, [], \"f642\", \"M377.74 32H70.26C31.41 32 0 63.41 0 102.26v307.48C0 448.59 31.41 480 70.26 480h307.48c38.52 0 69.76-31.08 70.26-69.6-45.96-25.62-110.59-60.34-171.6-88.44-32.07 43.97-84.14 81-148.62 81-70.59 0-93.73-45.3-97.04-76.37-3.97-39.01 14.88-81.5 99.52-81.5 35.38 0 79.35 10.25 127.13 24.96 16.53-30.09 26.45-60.34 26.45-60.34h-178.2v-16.7h92.08v-31.24H88.28v-19.01h109.44V92.34h50.92v50.42h109.44v19.01H248.63v31.24h88.77s-15.21 46.62-38.35 90.92c48.93 16.7 100.01 36.04 148.62 52.74V102.26C447.83 63.57 416.43 32 377.74 32zM47.28 322.95c.99 20.17 10.25 53.73 69.93 53.73 52.07 0 92.58-39.68 117.87-72.9-44.63-18.68-84.48-31.41-109.44-31.41-67.45 0-79.35 33.06-78.36 50.58z\"]\n};\nvar faAmazon = {\n prefix: 'fab',\n iconName: 'amazon',\n icon: [448, 512, [], \"f270\", \"M257.2 162.7c-48.7 1.8-169.5 15.5-169.5 117.5 0 109.5 138.3 114 183.5 43.2 6.5 10.2 35.4 37.5 45.3 46.8l56.8-56S341 288.9 341 261.4V114.3C341 89 316.5 32 228.7 32 140.7 32 94 87 94 136.3l73.5 6.8c16.3-49.5 54.2-49.5 54.2-49.5 40.7-.1 35.5 29.8 35.5 69.1zm0 86.8c0 80-84.2 68-84.2 17.2 0-47.2 50.5-56.7 84.2-57.8v40.6zm136 163.5c-7.7 10-70 67-174.5 67S34.2 408.5 9.7 379c-6.8-7.7 1-11.3 5.5-8.3C88.5 415.2 203 488.5 387.7 401c7.5-3.7 13.3 2 5.5 12zm39.8 2.2c-6.5 15.8-16 26.8-21.2 31-5.5 4.5-9.5 2.7-6.5-3.8s19.3-46.5 12.7-55c-6.5-8.3-37-4.3-48-3.2-10.8 1-13 2-14-.3-2.3-5.7 21.7-15.5 37.5-17.5 15.7-1.8 41-.8 46 5.7 3.7 5.1 0 27.1-6.5 43.1z\"]\n};\nvar faAmazonPay = {\n prefix: 'fab',\n iconName: 'amazon-pay',\n icon: [640, 512, [], \"f42c\", \"M14 325.3c2.3-4.2 5.2-4.9 9.7-2.5 10.4 5.6 20.6 11.4 31.2 16.7a595.88 595.88 0 0 0 127.4 46.3 616.61 616.61 0 0 0 63.2 11.8 603.33 603.33 0 0 0 95 5.2c17.4-.4 34.8-1.8 52.1-3.8a603.66 603.66 0 0 0 163.3-42.8c2.9-1.2 5.9-2 9.1-1.2 6.7 1.8 9 9 4.1 13.9a70 70 0 0 1-9.6 7.4c-30.7 21.1-64.2 36.4-99.6 47.9a473.31 473.31 0 0 1-75.1 17.6 431 431 0 0 1-53.2 4.8 21.3 21.3 0 0 0-2.5.3H308a21.3 21.3 0 0 0-2.5-.3c-3.6-.2-7.2-.3-10.7-.4a426.3 426.3 0 0 1-50.4-5.3A448.4 448.4 0 0 1 164 420a443.33 443.33 0 0 1-145.6-87c-1.8-1.6-3-3.8-4.4-5.7zM172 65.1l-4.3.6a80.92 80.92 0 0 0-38 15.1c-2.4 1.7-4.6 3.5-7.1 5.4a4.29 4.29 0 0 1-.4-1.4c-.4-2.7-.8-5.5-1.3-8.2-.7-4.6-3-6.6-7.6-6.6h-11.5c-6.9 0-8.2 1.3-8.2 8.2v209.3c0 1 0 2 .1 3 .2 3 2 4.9 4.9 5 7 .1 14.1.1 21.1 0 2.9 0 4.7-2 5-5 .1-1 .1-2 .1-3v-72.4c1.1.9 1.7 1.4 2.2 1.9 17.9 14.9 38.5 19.8 61 15.4 20.4-4 34.6-16.5 43.8-34.9 7-13.9 9.9-28.7 10.3-44.1.5-17.1-1.2-33.9-8.1-49.8-8.5-19.6-22.6-32.5-43.9-36.9-3.2-.7-6.5-1-9.8-1.5-2.8-.1-5.5-.1-8.3-.1zM124.6 107a3.48 3.48 0 0 1 1.7-3.3c13.7-9.5 28.8-14.5 45.6-13.2 14.9 1.1 27.1 8.4 33.5 25.9 3.9 10.7 4.9 21.8 4.9 33 0 10.4-.8 20.6-4 30.6-6.8 21.3-22.4 29.4-42.6 28.5-14-.6-26.2-6-37.4-13.9a3.57 3.57 0 0 1-1.7-3.3c.1-14.1 0-28.1 0-42.2s.1-28 0-42.1zm205.7-41.9c-1 .1-2 .3-2.9.4a148 148 0 0 0-28.9 4.1c-6.1 1.6-12 3.8-17.9 5.8-3.6 1.2-5.4 3.8-5.3 7.7.1 3.3-.1 6.6 0 9.9.1 4.8 2.1 6.1 6.8 4.9 7.8-2 15.6-4.2 23.5-5.7 12.3-2.3 24.7-3.3 37.2-1.4 6.5 1 12.6 2.9 16.8 8.4 3.7 4.8 5.1 10.5 5.3 16.4.3 8.3.2 16.6.3 24.9a7.84 7.84 0 0 1-.2 1.4c-.5-.1-.9 0-1.3-.1a180.56 180.56 0 0 0-32-4.9c-11.3-.6-22.5.1-33.3 3.9-12.9 4.5-23.3 12.3-29.4 24.9-4.7 9.8-5.4 20.2-3.9 30.7 2 14 9 24.8 21.4 31.7 11.9 6.6 24.8 7.4 37.9 5.4 15.1-2.3 28.5-8.7 40.3-18.4a7.36 7.36 0 0 1 1.6-1.1c.6 3.8 1.1 7.4 1.8 11 .6 3.1 2.5 5.1 5.4 5.2 5.4.1 10.9.1 16.3 0a4.84 4.84 0 0 0 4.8-4.7 26.2 26.2 0 0 0 .1-2.8v-106a80 80 0 0 0-.9-12.9c-1.9-12.9-7.4-23.5-19-30.4-6.7-4-14.1-6-21.8-7.1-3.6-.5-7.2-.8-10.8-1.3-3.9.1-7.9.1-11.9.1zm35 127.7a3.33 3.33 0 0 1-1.5 3c-11.2 8.1-23.5 13.5-37.4 14.9-5.7.6-11.4.4-16.8-1.8a20.08 20.08 0 0 1-12.4-13.3 32.9 32.9 0 0 1-.1-19.4c2.5-8.3 8.4-13 16.4-15.6a61.33 61.33 0 0 1 24.8-2.2c8.4.7 16.6 2.3 25 3.4 1.6.2 2.1 1 2.1 2.6-.1 4.8 0 9.5 0 14.3s-.2 9.4-.1 14.1zm259.9 129.4c-1-5-4.8-6.9-9.1-8.3a88.42 88.42 0 0 0-21-3.9 147.32 147.32 0 0 0-39.2 1.9c-14.3 2.7-27.9 7.3-40 15.6a13.75 13.75 0 0 0-3.7 3.5 5.11 5.11 0 0 0-.5 4c.4 1.5 2.1 1.9 3.6 1.8a16.2 16.2 0 0 0 2.2-.1c7.8-.8 15.5-1.7 23.3-2.5 11.4-1.1 22.9-1.8 34.3-.9a71.64 71.64 0 0 1 14.4 2.7c5.1 1.4 7.4 5.2 7.6 10.4.4 8-1.4 15.7-3.5 23.3-4.1 15.4-10 30.3-15.8 45.1a17.6 17.6 0 0 0-1 3c-.5 2.9 1.2 4.8 4.1 4.1a10.56 10.56 0 0 0 4.8-2.5 145.91 145.91 0 0 0 12.7-13.4c12.8-16.4 20.3-35.3 24.7-55.6.8-3.6 1.4-7.3 2.1-10.9v-17.3zM493.1 199q-19.35-53.55-38.7-107.2c-2-5.7-4.2-11.3-6.3-16.9-1.1-2.9-3.2-4.8-6.4-4.8-7.6-.1-15.2-.2-22.9-.1-2.5 0-3.7 2-3.2 4.5a43.1 43.1 0 0 0 1.9 6.1q29.4 72.75 59.1 145.5c1.7 4.1 2.1 7.6.2 11.8-3.3 7.3-5.9 15-9.3 22.3-3 6.5-8 11.4-15.2 13.3a42.13 42.13 0 0 1-15.4 1.1c-2.5-.2-5-.8-7.5-1-3.4-.2-5.1 1.3-5.2 4.8q-.15 5 0 9.9c.1 5.5 2 8 7.4 8.9a108.18 108.18 0 0 0 16.9 2c17.1.4 30.7-6.5 39.5-21.4a131.63 131.63 0 0 0 9.2-18.4q35.55-89.7 70.6-179.6a26.62 26.62 0 0 0 1.6-5.5c.4-2.8-.9-4.4-3.7-4.4-6.6-.1-13.3 0-19.9 0a7.54 7.54 0 0 0-7.7 5.2c-.5 1.4-1.1 2.7-1.6 4.1l-34.8 100c-2.5 7.2-5.1 14.5-7.7 22.2-.4-1.1-.6-1.7-.9-2.4z\"]\n};\nvar faAmilia = {\n prefix: 'fab',\n iconName: 'amilia',\n icon: [448, 512, [], \"f36d\", \"M240.1 32c-61.9 0-131.5 16.9-184.2 55.4-5.1 3.1-9.1 9.2-7.2 19.4 1.1 5.1 5.1 27.4 10.2 39.6 4.1 10.2 14.2 10.2 20.3 6.1 32.5-22.3 96.5-47.7 152.3-47.7 57.9 0 58.9 28.4 58.9 73.1v38.5C203 227.7 78.2 251 46.7 264.2 11.2 280.5 16.3 357.7 16.3 376s15.2 104 124.9 104c47.8 0 113.7-20.7 153.3-42.1v25.4c0 3 2.1 8.2 6.1 9.1 3.1 1 50.7 2 59.9 2s62.5.3 66.5-.7c4.1-1 5.1-6.1 5.1-9.1V168c-.1-80.3-57.9-136-192-136zm50.2 348c-21.4 13.2-48.7 24.4-79.1 24.4-52.8 0-58.9-33.5-59-44.7 0-12.2-3-42.7 18.3-52.9 24.3-13.2 75.1-29.4 119.8-33.5z\"]\n};\nvar faAndroid = {\n prefix: 'fab',\n iconName: 'android',\n icon: [576, 512, [], \"f17b\", \"M420.55,301.93a24,24,0,1,1,24-24,24,24,0,0,1-24,24m-265.1,0a24,24,0,1,1,24-24,24,24,0,0,1-24,24m273.7-144.48,47.94-83a10,10,0,1,0-17.27-10h0l-48.54,84.07a301.25,301.25,0,0,0-246.56,0L116.18,64.45a10,10,0,1,0-17.27,10h0l47.94,83C64.53,202.22,8.24,285.55,0,384H576c-8.24-98.45-64.54-181.78-146.85-226.55\"]\n};\nvar faAngellist = {\n prefix: 'fab',\n iconName: 'angellist',\n icon: [448, 512, [], \"f209\", \"M347.1 215.4c11.7-32.6 45.4-126.9 45.4-157.1 0-26.6-15.7-48.9-43.7-48.9-44.6 0-84.6 131.7-97.1 163.1C242 144 196.6 0 156.6 0c-31.1 0-45.7 22.9-45.7 51.7 0 35.3 34.2 126.8 46.6 162-6.3-2.3-13.1-4.3-20-4.3-23.4 0-48.3 29.1-48.3 52.6 0 8.9 4.9 21.4 8 29.7-36.9 10-51.1 34.6-51.1 71.7C46 435.6 114.4 512 210.6 512c118 0 191.4-88.6 191.4-202.9 0-43.1-6.9-82-54.9-93.7zM311.7 108c4-12.3 21.1-64.3 37.1-64.3 8.6 0 10.9 8.9 10.9 16 0 19.1-38.6 124.6-47.1 148l-34-6 33.1-93.7zM142.3 48.3c0-11.9 14.5-45.7 46.3 47.1l34.6 100.3c-15.6-1.3-27.7-3-35.4 1.4-10.9-28.8-45.5-119.7-45.5-148.8zM140 244c29.3 0 67.1 94.6 67.1 107.4 0 5.1-4.9 11.4-10.6 11.4-20.9 0-76.9-76.9-76.9-97.7.1-7.7 12.7-21.1 20.4-21.1zm184.3 186.3c-29.1 32-66.3 48.6-109.7 48.6-59.4 0-106.3-32.6-128.9-88.3-17.1-43.4 3.8-68.3 20.6-68.3 11.4 0 54.3 60.3 54.3 73.1 0 4.9-7.7 8.3-11.7 8.3-16.1 0-22.4-15.5-51.1-51.4-29.7 29.7 20.5 86.9 58.3 86.9 26.1 0 43.1-24.2 38-42 3.7 0 8.3.3 11.7-.6 1.1 27.1 9.1 59.4 41.7 61.7 0-.9 2-7.1 2-7.4 0-17.4-10.6-32.6-10.6-50.3 0-28.3 21.7-55.7 43.7-71.7 8-6 17.7-9.7 27.1-13.1 9.7-3.7 20-8 27.4-15.4-1.1-11.2-5.7-21.1-16.9-21.1-27.7 0-120.6 4-120.6-39.7 0-6.7.1-13.1 17.4-13.1 32.3 0 114.3 8 138.3 29.1 18.1 16.1 24.3 113.2-31 174.7zm-98.6-126c9.7 3.1 19.7 4 29.7 6-7.4 5.4-14 12-20.3 19.1-2.8-8.5-6.2-16.8-9.4-25.1z\"]\n};\nvar faAngrycreative = {\n prefix: 'fab',\n iconName: 'angrycreative',\n icon: [640, 512, [], \"f36e\", \"M640 238.2l-3.2 28.2-34.5 2.3-2 18.1 34.5-2.3-3.2 28.2-34.4 2.2-2.3 20.1 34.4-2.2-3 26.1-64.7 4.1 12.7-113.2L527 365.2l-31.9 2-23.8-117.8 30.3-2 13.6 79.4 31.7-82.4 93.1-6.2zM426.8 371.5l28.3-1.8L468 249.6l-28.4 1.9-12.8 120zM162 388.1l-19.4-36-3.5 37.4-28.2 1.7 2.7-29.1c-11 18-32 34.3-56.9 35.8C23.9 399.9-3 377 .3 339.7c2.6-29.3 26.7-62.8 67.5-65.4 37.7-2.4 47.6 23.2 51.3 28.8l2.8-30.8 38.9-2.5c20.1-1.3 38.7 3.7 42.5 23.7l2.6-26.6 64.8-4.2-2.7 27.9-36.4 2.4-1.7 17.9 36.4-2.3-2.7 27.9-36.4 2.3-1.9 19.9 36.3-2.3-2.1 20.8 55-117.2 23.8-1.6L370.4 369l8.9-85.6-22.3 1.4 2.9-27.9 75-4.9-3 28-24.3 1.6-9.7 91.9-58 3.7-4.3-15.6-39.4 2.5-8 16.3-126.2 7.7zm-44.3-70.2l-26.4 1.7C84.6 307.2 76.9 303 65 303.8c-19 1.2-33.3 17.5-34.6 33.3-1.4 16 7.3 32.5 28.7 31.2 12.8-.8 21.3-8.6 28.9-18.9l27-1.7 2.7-29.8zm56.1-7.7c1.2-12.9-7.6-13.6-26.1-12.4l-2.7 28.5c14.2-.9 27.5-2.1 28.8-16.1zm21.1 70.8l5.8-60c-5 13.5-14.7 21.1-27.9 26.6l22.1 33.4zm135.4-45l-7.9-37.8-15.8 39.3 23.7-1.5zm-170.1-74.6l-4.3-17.5-39.6 2.6-8.1 18.2-31.9 2.1 57-121.9 23.9-1.6 30.7 102 9.9-104.7 27-1.8 37.8 63.6 6.5-66.6 28.5-1.9-4 41.2c7.4-13.5 22.9-44.7 63.6-47.5 40.5-2.8 52.4 29.3 53.4 30.3l3.3-32 39.3-2.7c12.7-.9 27.8.3 36.3 9.7l-4.4-11.9 32.2-2.2 12.9 43.2 23-45.7 31-2.2-43.6 78.4-4.8 44.3-28.4 1.9 4.8-44.3-15.8-43c1 22.3-9.2 40.1-32 49.6l25.2 38.8-36.4 2.4-19.2-36.8-4 38.3-28.4 1.9 3.3-31.5c-6.7 9.3-19.7 35.4-59.6 38-26.2 1.7-45.6-10.3-55.4-39.2l-4 40.3-25 1.6-37.6-63.3-6.3 66.2-56.8 3.7zm276.6-82.1c10.2-.7 17.5-2.1 21.6-4.3 4.5-2.4 7-6.4 7.6-12.1.6-5.3-.6-8.8-3.4-10.4-3.6-2.1-10.6-2.8-22.9-2l-2.9 28.8zM327.7 214c5.6 5.9 12.7 8.5 21.3 7.9 4.7-.3 9.1-1.8 13.3-4.1 5.5-3 10.6-8 15.1-14.3l-34.2 2.3 2.4-23.9 63.1-4.3 1.2-12-31.2 2.1c-4.1-3.7-7.8-6.6-11.1-8.1-4-1.7-8.1-2.8-12.2-2.5-8 .5-15.3 3.6-22 9.2-7.7 6.4-12 14.5-12.9 24.4-1.1 9.6 1.4 17.3 7.2 23.3zm-201.3 8.2l23.8-1.6-8.3-37.6-15.5 39.2z\"]\n};\nvar faAngular = {\n prefix: 'fab',\n iconName: 'angular',\n icon: [448, 512, [], \"f420\", \"M185.7 268.1h76.2l-38.1-91.6-38.1 91.6zM223.8 32L16 106.4l31.8 275.7 176 97.9 176-97.9 31.8-275.7zM354 373.8h-48.6l-26.2-65.4H168.6l-26.2 65.4H93.7L223.8 81.5z\"]\n};\nvar faAppStore = {\n prefix: 'fab',\n iconName: 'app-store',\n icon: [512, 512, [], \"f36f\", \"M255.9 120.9l9.1-15.7c5.6-9.8 18.1-13.1 27.9-7.5 9.8 5.6 13.1 18.1 7.5 27.9l-87.5 151.5h63.3c20.5 0 32 24.1 23.1 40.8H113.8c-11.3 0-20.4-9.1-20.4-20.4 0-11.3 9.1-20.4 20.4-20.4h52l66.6-115.4-20.8-36.1c-5.6-9.8-2.3-22.2 7.5-27.9 9.8-5.6 22.2-2.3 27.9 7.5l8.9 15.7zm-78.7 218l-19.6 34c-5.6 9.8-18.1 13.1-27.9 7.5-9.8-5.6-13.1-18.1-7.5-27.9l14.6-25.2c16.4-5.1 29.8-1.2 40.4 11.6zm168.9-61.7h53.1c11.3 0 20.4 9.1 20.4 20.4 0 11.3-9.1 20.4-20.4 20.4h-29.5l19.9 34.5c5.6 9.8 2.3 22.2-7.5 27.9-9.8 5.6-22.2 2.3-27.9-7.5-33.5-58.1-58.7-101.6-75.4-130.6-17.1-29.5-4.9-59.1 7.2-69.1 13.4 23 33.4 57.7 60.1 104zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm216 248c0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216z\"]\n};\nvar faAppStoreIos = {\n prefix: 'fab',\n iconName: 'app-store-ios',\n icon: [448, 512, [], \"f370\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM127 384.5c-5.5 9.6-17.8 12.8-27.3 7.3-9.6-5.5-12.8-17.8-7.3-27.3l14.3-24.7c16.1-4.9 29.3-1.1 39.6 11.4L127 384.5zm138.9-53.9H84c-11 0-20-9-20-20s9-20 20-20h51l65.4-113.2-20.5-35.4c-5.5-9.6-2.2-21.8 7.3-27.3 9.6-5.5 21.8-2.2 27.3 7.3l8.9 15.4 8.9-15.4c5.5-9.6 17.8-12.8 27.3-7.3 9.6 5.5 12.8 17.8 7.3 27.3l-85.8 148.6h62.1c20.2 0 31.5 23.7 22.7 40zm98.1 0h-29l19.6 33.9c5.5 9.6 2.2 21.8-7.3 27.3-9.6 5.5-21.8 2.2-27.3-7.3-32.9-56.9-57.5-99.7-74-128.1-16.7-29-4.8-58 7.1-67.8 13.1 22.7 32.7 56.7 58.9 102h52c11 0 20 9 20 20 0 11.1-9 20-20 20z\"]\n};\nvar faApper = {\n prefix: 'fab',\n iconName: 'apper',\n icon: [640, 512, [], \"f371\", \"M42.1 239.1c22.2 0 29 2.8 33.5 14.6h.8v-22.9c0-11.3-4.8-15.4-17.9-15.4-11.3 0-14.4 2.5-15.1 12.8H4.8c.3-13.9 1.5-19.1 5.8-24.4C17.9 195 29.5 192 56.7 192c33 0 47.1 5 53.9 18.9 2 4.3 4 15.6 4 23.7v76.3H76.3l1.3-19.1h-1c-5.3 15.6-13.6 20.4-35.5 20.4-30.3 0-41.1-10.1-41.1-37.3 0-25.2 12.3-35.8 42.1-35.8zm17.1 48.1c13.1 0 16.9-3 16.9-13.4 0-9.1-4.3-11.6-19.6-11.6-13.1 0-17.9 3-17.9 12.1-.1 10.4 3.7 12.9 20.6 12.9zm77.8-94.9h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.2 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3H137v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm57.9-60.7h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.3 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3h-39.5v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm53.8-3.8c0-25.4 3.3-37.8 12.3-45.8 8.8-8.1 22.2-11.3 45.1-11.3 42.8 0 55.7 12.8 55.7 55.7v11.1h-75.3c-.3 2-.3 4-.3 4.8 0 16.9 4.5 21.9 20.1 21.9 13.9 0 17.9-3 17.9-13.9h37.5v2.3c0 9.8-2.5 18.9-6.8 24.7-7.3 9.8-19.6 13.6-44.3 13.6-27.5 0-41.6-3.3-50.6-12.3-8.5-8.5-11.3-21.3-11.3-50.8zm76.4-11.6c-.3-1.8-.3-3.3-.3-3.8 0-12.3-3.3-14.6-19.6-14.6-14.4 0-17.1 3-18.1 15.1l-.3 3.3h38.3zm55.6-45.3h38.3l-1.8 19.9h.7c6.8-14.9 14.4-20.2 29.7-20.2 10.8 0 19.1 3.3 23.4 9.3 5.3 7.3 6.8 14.4 6.8 34 0 1.5 0 5 .2 9.3h-35c.3-1.8.3-3.3.3-4 0-15.4-2-19.4-10.3-19.4-6.3 0-10.8 3.3-13.1 9.3-1 3-1 4.3-1 12.3v68h-38.3V192.3z\"]\n};\nvar faApple = {\n prefix: 'fab',\n iconName: 'apple',\n icon: [384, 512, [], \"f179\", \"M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z\"]\n};\nvar faApplePay = {\n prefix: 'fab',\n iconName: 'apple-pay',\n icon: [640, 512, [], \"f415\", \"M116.9 158.5c-7.5 8.9-19.5 15.9-31.5 14.9-1.5-12 4.4-24.8 11.3-32.6 7.5-9.1 20.6-15.6 31.3-16.1 1.2 12.4-3.7 24.7-11.1 33.8m10.9 17.2c-17.4-1-32.3 9.9-40.5 9.9-8.4 0-21-9.4-34.8-9.1-17.9.3-34.5 10.4-43.6 26.5-18.8 32.3-4.9 80 13.3 106.3 8.9 13 19.5 27.3 33.5 26.8 13.3-.5 18.5-8.6 34.5-8.6 16.1 0 20.8 8.6 34.8 8.4 14.5-.3 23.6-13 32.5-26 10.1-14.8 14.3-29.1 14.5-29.9-.3-.3-28-10.9-28.3-42.9-.3-26.8 21.9-39.5 22.9-40.3-12.5-18.6-32-20.6-38.8-21.1m100.4-36.2v194.9h30.3v-66.6h41.9c38.3 0 65.1-26.3 65.1-64.3s-26.4-64-64.1-64h-73.2zm30.3 25.5h34.9c26.3 0 41.3 14 41.3 38.6s-15 38.8-41.4 38.8h-34.8V165zm162.2 170.9c19 0 36.6-9.6 44.6-24.9h.6v23.4h28v-97c0-28.1-22.5-46.3-57.1-46.3-32.1 0-55.9 18.4-56.8 43.6h27.3c2.3-12 13.4-19.9 28.6-19.9 18.5 0 28.9 8.6 28.9 24.5v10.8l-37.8 2.3c-35.1 2.1-54.1 16.5-54.1 41.5.1 25.2 19.7 42 47.8 42zm8.2-23.1c-16.1 0-26.4-7.8-26.4-19.6 0-12.3 9.9-19.4 28.8-20.5l33.6-2.1v11c0 18.2-15.5 31.2-36 31.2zm102.5 74.6c29.5 0 43.4-11.3 55.5-45.4L640 193h-30.8l-35.6 115.1h-.6L537.4 193h-31.6L557 334.9l-2.8 8.6c-4.6 14.6-12.1 20.3-25.5 20.3-2.4 0-7-.3-8.9-.5v23.4c1.8.4 9.3.7 11.6.7z\"]\n};\nvar faArtstation = {\n prefix: 'fab',\n iconName: 'artstation',\n icon: [512, 512, [], \"f77a\", \"M2 377.4l43 74.3A51.35 51.35 0 0 0 90.9 480h285.4l-59.2-102.6zM501.8 350L335.6 59.3A51.38 51.38 0 0 0 290.2 32h-88.4l257.3 447.6 40.7-70.5c1.9-3.2 21-29.7 2-59.1zM275 304.5l-115.5-200L44 304.5z\"]\n};\nvar faAsymmetrik = {\n prefix: 'fab',\n iconName: 'asymmetrik',\n icon: [576, 512, [], \"f372\", \"M517.5 309.2c38.8-40 58.1-80 58.5-116.1.8-65.5-59.4-118.2-169.4-135C277.9 38.4 118.1 73.6 0 140.5 52 114 110.6 92.3 170.7 82.3c74.5-20.5 153-25.4 221.3-14.8C544.5 91.3 588.8 195 490.8 299.2c-10.2 10.8-22 21.1-35 30.6L304.9 103.4 114.7 388.9c-65.6-29.4-76.5-90.2-19.1-151.2 20.8-22.2 48.3-41.9 79.5-58.1 20-12.2 39.7-22.6 62-30.7-65.1 20.3-122.7 52.9-161.6 92.9-27.7 28.6-41.4 57.1-41.7 82.9-.5 35.1 23.4 65.1 68.4 83l-34.5 51.7h101.6l22-34.4c22.2 1 45.3 0 68.6-2.7l-22.8 37.1h135.5L340 406.3c18.6-5.3 36.9-11.5 54.5-18.7l45.9 71.8H542L468.6 349c18.5-12.1 35-25.5 48.9-39.8zm-187.6 80.5l-25-40.6-32.7 53.3c-23.4 3.5-46.7 5.1-69.2 4.4l101.9-159.3 78.7 123c-17.2 7.4-35.3 13.9-53.7 19.2z\"]\n};\nvar faAtlassian = {\n prefix: 'fab',\n iconName: 'atlassian',\n icon: [512, 512, [], \"f77b\", \"M152.2 236.4c-7.7-8.2-19.7-7.7-24.8 2.8L1.6 490.2c-5 10 2.4 21.7 13.4 21.7h175c5.8.1 11-3.2 13.4-8.4 37.9-77.8 15.1-196.3-51.2-267.1zM244.4 8.1c-122.3 193.4-8.5 348.6 65 495.5 2.5 5.1 7.7 8.4 13.4 8.4H497c11.2 0 18.4-11.8 13.4-21.7 0 0-234.5-470.6-240.4-482.3-5.3-10.6-18.8-10.8-25.6.1z\"]\n};\nvar faAudible = {\n prefix: 'fab',\n iconName: 'audible',\n icon: [640, 512, [], \"f373\", \"M640 199.9v54l-320 200L0 254v-54l320 200 320-200.1zm-194.5 72l47.1-29.4c-37.2-55.8-100.7-92.6-172.7-92.6-72 0-135.5 36.7-172.6 92.4h.3c2.5-2.3 5.1-4.5 7.7-6.7 89.7-74.4 219.4-58.1 290.2 36.3zm-220.1 18.8c16.9-11.9 36.5-18.7 57.4-18.7 34.4 0 65.2 18.4 86.4 47.6l45.4-28.4c-20.9-29.9-55.6-49.5-94.8-49.5-38.9 0-73.4 19.4-94.4 49zM103.6 161.1c131.8-104.3 318.2-76.4 417.5 62.1l.7 1 48.8-30.4C517.1 112.1 424.8 58.1 319.9 58.1c-103.5 0-196.6 53.5-250.5 135.6 9.9-10.5 22.7-23.5 34.2-32.6zm467 32.7z\"]\n};\nvar faAutoprefixer = {\n prefix: 'fab',\n iconName: 'autoprefixer',\n icon: [640, 512, [], \"f41c\", \"M318.4 16l-161 480h77.5l25.4-81.4h119.5L405 496h77.5L318.4 16zm-40.3 341.9l41.2-130.4h1.5l40.9 130.4h-83.6zM640 405l-10-31.4L462.1 358l19.4 56.5L640 405zm-462.1-47L10 373.7 0 405l158.5 9.4 19.4-56.4z\"]\n};\nvar faAvianex = {\n prefix: 'fab',\n iconName: 'avianex',\n icon: [512, 512, [], \"f374\", \"M453.1 32h-312c-38.9 0-76.2 31.2-83.3 69.7L1.2 410.3C-5.9 448.8 19.9 480 58.9 480h312c38.9 0 76.2-31.2 83.3-69.7l56.7-308.5c7-38.6-18.8-69.8-57.8-69.8zm-58.2 347.3l-32 13.5-115.4-110c-14.7 10-29.2 19.5-41.7 27.1l22.1 64.2-17.9 12.7-40.6-61-52.4-48.1 15.7-15.4 58 31.1c9.3-10.5 20.8-22.6 32.8-34.9L203 228.9l-68.8-99.8 18.8-28.9 8.9-4.8L265 207.8l4.9 4.5c19.4-18.8 33.8-32.4 33.8-32.4 7.7-6.5 21.5-2.9 30.7 7.9 9 10.5 10.6 24.7 2.7 31.3-1.8 1.3-15.5 11.4-35.3 25.6l4.5 7.3 94.9 119.4-6.3 7.9z\"]\n};\nvar faAviato = {\n prefix: 'fab',\n iconName: 'aviato',\n icon: [640, 512, [], \"f421\", \"M107.2 283.5l-19-41.8H36.1l-19 41.8H0l62.2-131.4 62.2 131.4h-17.2zm-45-98.1l-19.6 42.5h39.2l-19.6-42.5zm112.7 102.4l-62.2-131.4h17.1l45.1 96 45.1-96h17l-62.1 131.4zm80.6-4.3V156.4H271v127.1h-15.5zm209.1-115.6v115.6h-17.3V167.9h-41.2v-11.5h99.6v11.5h-41.1zM640 218.8c0 9.2-1.7 17.8-5.1 25.8-3.4 8-8.2 15.1-14.2 21.1-6 6-13.1 10.8-21.1 14.2-8 3.4-16.6 5.1-25.8 5.1s-17.8-1.7-25.8-5.1c-8-3.4-15.1-8.2-21.1-14.2-6-6-10.8-13-14.2-21.1-3.4-8-5.1-16.6-5.1-25.8s1.7-17.8 5.1-25.8c3.4-8 8.2-15.1 14.2-21.1 6-6 13-8.4 21.1-11.9 8-3.4 16.6-5.1 25.8-5.1s17.8 1.7 25.8 5.1c8 3.4 15.1 5.8 21.1 11.9 6 6 10.7 13.1 14.2 21.1 3.4 8 5.1 16.6 5.1 25.8zm-15.5 0c0-7.3-1.3-14-3.9-20.3-2.6-6.3-6.2-11.7-10.8-16.3-4.6-4.6-10-8.2-16.2-10.9-6.2-2.7-12.8-4-19.8-4s-13.6 1.3-19.8 4c-6.2 2.7-11.6 6.3-16.2 10.9-4.6 4.6-8.2 10-10.8 16.3-2.6 6.3-3.9 13.1-3.9 20.3 0 7.3 1.3 14 3.9 20.3 2.6 6.3 6.2 11.7 10.8 16.3 4.6 4.6 10 8.2 16.2 10.9 6.2 2.7 12.8 4 19.8 4s13.6-1.3 19.8-4c6.2-2.7 11.6-6.3 16.2-10.9 4.6-4.6 8.2-10 10.8-16.3 2.6-6.3 3.9-13.1 3.9-20.3zm-94.8 96.7v-6.3l88.9-10-242.9 13.4c.6-2.2 1.1-4.6 1.4-7.2.3-2 .5-4.2.6-6.5l64.8-8.1-64.9 1.9c0-.4-.1-.7-.1-1.1-2.8-17.2-25.5-23.7-25.5-23.7l-1.1-26.3h23.8l19 41.8h17.1L348.6 152l-62.2 131.4h17.1l19-41.8h23.6L345 268s-22.7 6.5-25.5 23.7c-.1.3-.1.7-.1 1.1l-64.9-1.9 64.8 8.1c.1 2.3.3 4.4.6 6.5.3 2.6.8 5 1.4 7.2L78.4 299.2l88.9 10v6.3c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4 0-6.2-4.6-11.3-10.5-12.2v-5.8l80.3 9v5.4c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-4.9l28.4 3.2v23.7h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9V323l38.3 4.3c8.1 11.4 19 13.6 19 13.6l-.1 6.7-5.1.2-.1 12.1h4.1l.1-5h5.2l.1 5h4.1l-.1-12.1-5.1-.2-.1-6.7s10.9-2.1 19-13.6l38.3-4.3v23.2h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9v-23.7l28.4-3.2v4.9c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-5.4l80.3-9v5.8c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4-.2-6.3-4.7-11.4-10.7-12.3zm-200.8-87.6l19.6-42.5 19.6 42.5h-17.9l-1.7-40.3-1.7 40.3h-17.9z\"]\n};\nvar faAws = {\n prefix: 'fab',\n iconName: 'aws',\n icon: [640, 512, [], \"f375\", \"M180.41 203.01c-.72 22.65 10.6 32.68 10.88 39.05a8.164 8.164 0 0 1-4.1 6.27l-12.8 8.96a10.66 10.66 0 0 1-5.63 1.92c-.43-.02-8.19 1.83-20.48-25.61a78.608 78.608 0 0 1-62.61 29.45c-16.28.89-60.4-9.24-58.13-56.21-1.59-38.28 34.06-62.06 70.93-60.05 7.1.02 21.6.37 46.99 6.27v-15.62c2.69-26.46-14.7-46.99-44.81-43.91-2.4.01-19.4-.5-45.84 10.11-7.36 3.38-8.3 2.82-10.75 2.82-7.41 0-4.36-21.48-2.94-24.2 5.21-6.4 35.86-18.35 65.94-18.18a76.857 76.857 0 0 1 55.69 17.28 70.285 70.285 0 0 1 17.67 52.36l-.01 69.29zM93.99 235.4c32.43-.47 46.16-19.97 49.29-30.47 2.46-10.05 2.05-16.41 2.05-27.4-9.67-2.32-23.59-4.85-39.56-4.87-15.15-1.14-42.82 5.63-41.74 32.26-1.24 16.79 11.12 31.4 29.96 30.48zm170.92 23.05c-7.86.72-11.52-4.86-12.68-10.37l-49.8-164.65c-.97-2.78-1.61-5.65-1.92-8.58a4.61 4.61 0 0 1 3.86-5.25c.24-.04-2.13 0 22.25 0 8.78-.88 11.64 6.03 12.55 10.37l35.72 140.83 33.16-140.83c.53-3.22 2.94-11.07 12.8-10.24h17.16c2.17-.18 11.11-.5 12.68 10.37l33.42 142.63L420.98 80.1c.48-2.18 2.72-11.37 12.68-10.37h19.72c.85-.13 6.15-.81 5.25 8.58-.43 1.85 3.41-10.66-52.75 169.9-1.15 5.51-4.82 11.09-12.68 10.37h-18.69c-10.94 1.15-12.51-9.66-12.68-10.75L328.67 110.7l-32.78 136.99c-.16 1.09-1.73 11.9-12.68 10.75h-18.3zm273.48 5.63c-5.88.01-33.92-.3-57.36-12.29a12.802 12.802 0 0 1-7.81-11.91v-10.75c0-8.45 6.2-6.9 8.83-5.89 10.04 4.06 16.48 7.14 28.81 9.6 36.65 7.53 52.77-2.3 56.72-4.48 13.15-7.81 14.19-25.68 5.25-34.95-10.48-8.79-15.48-9.12-53.13-21-4.64-1.29-43.7-13.61-43.79-52.36-.61-28.24 25.05-56.18 69.52-55.95 12.67-.01 46.43 4.13 55.57 15.62 1.35 2.09 2.02 4.55 1.92 7.04v10.11c0 4.44-1.62 6.66-4.87 6.66-7.71-.86-21.39-11.17-49.16-10.75-6.89-.36-39.89.91-38.41 24.97-.43 18.96 26.61 26.07 29.7 26.89 36.46 10.97 48.65 12.79 63.12 29.58 17.14 22.25 7.9 48.3 4.35 55.44-19.08 37.49-68.42 34.44-69.26 34.42zm40.2 104.86c-70.03 51.72-171.69 79.25-258.49 79.25A469.127 469.127 0 0 1 2.83 327.46c-6.53-5.89-.77-13.96 7.17-9.47a637.37 637.37 0 0 0 316.88 84.12 630.22 630.22 0 0 0 241.59-49.55c11.78-5 21.77 7.8 10.12 16.38zm29.19-33.29c-8.96-11.52-59.28-5.38-81.81-2.69-6.79.77-7.94-5.12-1.79-9.47 40.07-28.17 105.88-20.1 113.44-10.63 7.55 9.47-2.05 75.41-39.56 106.91-5.76 4.87-11.27 2.3-8.71-4.1 8.44-21.25 27.39-68.49 18.43-80.02z\"]\n};\nvar faBandcamp = {\n prefix: 'fab',\n iconName: 'bandcamp',\n icon: [512, 512, [], \"f2d5\", \"M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm48.2,326.1h-181L207.9,178h181Z\"]\n};\nvar faBattleNet = {\n prefix: 'fab',\n iconName: 'battle-net',\n icon: [512, 512, [], \"f835\", \"M448.61 225.62c26.87.18 35.57-7.43 38.92-12.37 12.47-16.32-7.06-47.6-52.85-71.33 17.76-33.58 30.11-63.68 36.34-85.3 3.38-11.83 1.09-19 .45-20.25-1.72 10.52-15.85 48.46-48.2 100.05-25-11.22-56.52-20.1-93.77-23.8-8.94-16.94-34.88-63.86-60.48-88.93C252.18 7.14 238.7 1.07 228.18.22h-.05c-13.83-1.55-22.67 5.85-27.4 11-17.2 18.53-24.33 48.87-25 84.07-7.24-12.35-17.17-24.63-28.5-25.93h-.18c-20.66-3.48-38.39 29.22-36 81.29-38.36 1.38-71 5.75-93 11.23-9.9 2.45-16.22 7.27-17.76 9.72 1-.38 22.4-9.22 111.56-9.22 5.22 53 29.75 101.82 26 93.19-9.73 15.4-38.24 62.36-47.31 97.7-5.87 22.88-4.37 37.61.15 47.14 5.57 12.75 16.41 16.72 23.2 18.26 25 5.71 55.38-3.63 86.7-21.14-7.53 12.84-13.9 28.51-9.06 39.34 7.31 19.65 44.49 18.66 88.44-9.45 20.18 32.18 40.07 57.94 55.7 74.12a39.79 39.79 0 0 0 8.75 7.09c5.14 3.21 8.58 3.37 8.58 3.37-8.24-6.75-34-38-62.54-91.78 22.22-16 45.65-38.87 67.47-69.27 122.82 4.6 143.29-24.76 148-31.64 14.67-19.88 3.43-57.44-57.32-93.69zm-77.85 106.22c23.81-37.71 30.34-67.77 29.45-92.33 27.86 17.57 47.18 37.58 49.06 58.83 1.14 12.93-8.1 29.12-78.51 33.5zM216.9 387.69c9.76-6.23 19.53-13.12 29.2-20.49 6.68 13.33 13.6 26.1 20.6 38.19-40.6 21.86-68.84 12.76-49.8-17.7zm215-171.35c-10.29-5.34-21.16-10.34-32.38-15.05a722.459 722.459 0 0 0 22.74-36.9c39.06 24.1 45.9 53.18 9.64 51.95zM279.18 398c-5.51-11.35-11-23.5-16.5-36.44 43.25 1.27 62.42-18.73 63.28-20.41 0 .07-25 15.64-62.53 12.25a718.78 718.78 0 0 0 85.06-84q13.06-15.31 24.93-31.11c-.36-.29-1.54-3-16.51-12-51.7 60.27-102.34 98-132.75 115.92-20.59-11.18-40.84-31.78-55.71-61.49-20-39.92-30-82.39-31.57-116.07 12.3.91 25.27 2.17 38.85 3.88-22.29 36.8-14.39 63-13.47 64.23 0-.07-.95-29.17 20.14-59.57a695.23 695.23 0 0 0 44.67 152.84c.93-.38 1.84.88 18.67-8.25-26.33-74.47-33.76-138.17-34-173.43 20-12.42 48.18-19.8 81.63-17.81 44.57 2.67 86.36 15.25 116.32 30.71q-10.69 15.66-23.33 32.47C365.63 152 339.1 145.84 337.5 146c.11 0 25.9 14.07 41.52 47.22a717.63 717.63 0 0 0-115.34-31.71 646.608 646.608 0 0 0-39.39-6.05c-.07.45-1.81 1.85-2.16 20.33C300 190.28 358.78 215.68 389.36 233c.74 23.55-6.95 51.61-25.41 79.57-24.6 37.31-56.39 67.23-84.77 85.43zm27.4-287c-44.56-1.66-73.58 7.43-94.69 20.67 2-52.3 21.31-76.38 38.21-75.28C267 52.15 305 108.55 306.58 111zm-130.65 3.1c.48 12.11 1.59 24.62 3.21 37.28-14.55-.85-28.74-1.25-42.4-1.26-.08 3.24-.12-51 24.67-49.59h.09c5.76 1.09 10.63 6.88 14.43 13.57zm-28.06 162c20.76 39.7 43.3 60.57 65.25 72.31-46.79 24.76-77.53 20-84.92 4.51-.2-.21-11.13-15.3 19.67-76.81zm210.06 74.8\"]\n};\nvar faBehance = {\n prefix: 'fab',\n iconName: 'behance',\n icon: [576, 512, [], \"f1b4\", \"M232 237.2c31.8-15.2 48.4-38.2 48.4-74 0-70.6-52.6-87.8-113.3-87.8H0v354.4h171.8c64.4 0 124.9-30.9 124.9-102.9 0-44.5-21.1-77.4-64.7-89.7zM77.9 135.9H151c28.1 0 53.4 7.9 53.4 40.5 0 30.1-19.7 42.2-47.5 42.2h-79v-82.7zm83.3 233.7H77.9V272h84.9c34.3 0 56 14.3 56 50.6 0 35.8-25.9 47-57.6 47zm358.5-240.7H376V94h143.7v34.9zM576 305.2c0-75.9-44.4-139.2-124.9-139.2-78.2 0-131.3 58.8-131.3 135.8 0 79.9 50.3 134.7 131.3 134.7 61.3 0 101-27.6 120.1-86.3H509c-6.7 21.9-34.3 33.5-55.7 33.5-41.3 0-63-24.2-63-65.3h185.1c.3-4.2.6-8.7.6-13.2zM390.4 274c2.3-33.7 24.7-54.8 58.5-54.8 35.4 0 53.2 20.8 56.2 54.8H390.4z\"]\n};\nvar faBehanceSquare = {\n prefix: 'fab',\n iconName: 'behance-square',\n icon: [448, 512, [], \"f1b5\", \"M186.5 293c0 19.3-14 25.4-31.2 25.4h-45.1v-52.9h46c18.6.1 30.3 7.8 30.3 27.5zm-7.7-82.3c0-17.7-13.7-21.9-28.9-21.9h-39.6v44.8H153c15.1 0 25.8-6.6 25.8-22.9zm132.3 23.2c-18.3 0-30.5 11.4-31.7 29.7h62.2c-1.7-18.5-11.3-29.7-30.5-29.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM271.7 185h77.8v-18.9h-77.8V185zm-43 110.3c0-24.1-11.4-44.9-35-51.6 17.2-8.2 26.2-17.7 26.2-37 0-38.2-28.5-47.5-61.4-47.5H68v192h93.1c34.9-.2 67.6-16.9 67.6-55.9zM380 280.5c0-41.1-24.1-75.4-67.6-75.4-42.4 0-71.1 31.8-71.1 73.6 0 43.3 27.3 73 71.1 73 33.2 0 54.7-14.9 65.1-46.8h-33.7c-3.7 11.9-18.6 18.1-30.2 18.1-22.4 0-34.1-13.1-34.1-35.3h100.2c.1-2.3.3-4.8.3-7.2z\"]\n};\nvar faBimobject = {\n prefix: 'fab',\n iconName: 'bimobject',\n icon: [448, 512, [], \"f378\", \"M416 32H32C14.4 32 0 46.4 0 64v384c0 17.6 14.4 32 32 32h384c17.6 0 32-14.4 32-32V64c0-17.6-14.4-32-32-32zm-64 257.4c0 49.4-11.4 82.6-103.8 82.6h-16.9c-44.1 0-62.4-14.9-70.4-38.8h-.9V368H96V136h64v74.7h1.1c4.6-30.5 39.7-38.8 69.7-38.8h17.3c92.4 0 103.8 33.1 103.8 82.5v35zm-64-28.9v22.9c0 21.7-3.4 33.8-38.4 33.8h-45.3c-28.9 0-44.1-6.5-44.1-35.7v-19c0-29.3 15.2-35.7 44.1-35.7h45.3c35-.2 38.4 12 38.4 33.7z\"]\n};\nvar faBitbucket = {\n prefix: 'fab',\n iconName: 'bitbucket',\n icon: [512, 512, [], \"f171\", \"M22.2 32A16 16 0 0 0 6 47.8a26.35 26.35 0 0 0 .2 2.8l67.9 412.1a21.77 21.77 0 0 0 21.3 18.2h325.7a16 16 0 0 0 16-13.4L505 50.7a16 16 0 0 0-13.2-18.3 24.58 24.58 0 0 0-2.8-.2L22.2 32zm285.9 297.8h-104l-28.1-147h157.3l-25.2 147z\"]\n};\nvar faBitcoin = {\n prefix: 'fab',\n iconName: 'bitcoin',\n icon: [512, 512, [], \"f379\", \"M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zm-141.651-35.33c4.937-32.999-20.191-50.739-54.55-62.573l11.146-44.702-27.213-6.781-10.851 43.524c-7.154-1.783-14.502-3.464-21.803-5.13l10.929-43.81-27.198-6.781-11.153 44.686c-5.922-1.349-11.735-2.682-17.377-4.084l.031-.14-37.53-9.37-7.239 29.062s20.191 4.627 19.765 4.913c11.022 2.751 13.014 10.044 12.68 15.825l-12.696 50.925c.76.194 1.744.473 2.829.907-.907-.225-1.876-.473-2.876-.713l-17.796 71.338c-1.349 3.348-4.767 8.37-12.471 6.464.271.395-19.78-4.937-19.78-4.937l-13.51 31.147 35.414 8.827c6.588 1.651 13.045 3.379 19.4 5.006l-11.262 45.213 27.182 6.781 11.153-44.733a1038.209 1038.209 0 0 0 21.687 5.627l-11.115 44.523 27.213 6.781 11.262-45.128c46.404 8.781 81.299 5.239 95.986-36.727 11.836-33.79-.589-53.281-25.004-65.991 17.78-4.098 31.174-15.792 34.747-39.949zm-62.177 87.179c-8.41 33.79-65.308 15.523-83.755 10.943l14.944-59.899c18.446 4.603 77.6 13.717 68.811 48.956zm8.417-87.667c-7.673 30.736-55.031 15.12-70.393 11.292l13.548-54.327c15.363 3.828 64.836 10.973 56.845 43.035z\"]\n};\nvar faBity = {\n prefix: 'fab',\n iconName: 'bity',\n icon: [496, 512, [], \"f37a\", \"M78.4 67.2C173.8-22 324.5-24 421.5 71c14.3 14.1-6.4 37.1-22.4 21.5-84.8-82.4-215.8-80.3-298.9-3.2-16.3 15.1-36.5-8.3-21.8-22.1zm98.9 418.6c19.3 5.7 29.3-23.6 7.9-30C73 421.9 9.4 306.1 37.7 194.8c5-19.6-24.9-28.1-30.2-7.1-32.1 127.4 41.1 259.8 169.8 298.1zm148.1-2c121.9-40.2 192.9-166.9 164.4-291-4.5-19.7-34.9-13.8-30 7.9 24.2 107.7-37.1 217.9-143.2 253.4-21.2 7-10.4 36 8.8 29.7zm-62.9-79l.2-71.8c0-8.2-6.6-14.8-14.8-14.8-8.2 0-14.8 6.7-14.8 14.8l-.2 71.8c0 8.2 6.6 14.8 14.8 14.8s14.8-6.6 14.8-14.8zm71-269c2.1 90.9 4.7 131.9-85.5 132.5-92.5-.7-86.9-44.3-85.5-132.5 0-21.8-32.5-19.6-32.5 0v71.6c0 69.3 60.7 90.9 118 90.1 57.3.8 118-20.8 118-90.1v-71.6c0-19.6-32.5-21.8-32.5 0z\"]\n};\nvar faBlackTie = {\n prefix: 'fab',\n iconName: 'black-tie',\n icon: [448, 512, [], \"f27e\", \"M0 32v448h448V32H0zm316.5 325.2L224 445.9l-92.5-88.7 64.5-184-64.5-86.6h184.9L252 173.2l64.5 184z\"]\n};\nvar faBlackberry = {\n prefix: 'fab',\n iconName: 'blackberry',\n icon: [512, 512, [], \"f37b\", \"M166 116.9c0 23.4-16.4 49.1-72.5 49.1H23.4l21-88.8h67.8c42.1 0 53.8 23.3 53.8 39.7zm126.2-39.7h-67.8L205.7 166h70.1c53.8 0 70.1-25.7 70.1-49.1.1-16.4-11.6-39.7-53.7-39.7zM88.8 208.1H21L0 296.9h70.1c56.1 0 72.5-23.4 72.5-49.1 0-16.3-11.7-39.7-53.8-39.7zm180.1 0h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1 0-16.3-11.7-39.7-53.7-39.7zm189.3-53.8h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7zm-28 137.9h-67.8L343.7 381h70.1c56.1 0 70.1-23.4 70.1-49.1 0-16.3-11.6-39.7-53.7-39.7zM240.8 346H173l-18.7 88.8h70.1c56.1 0 70.1-25.7 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7z\"]\n};\nvar faBlogger = {\n prefix: 'fab',\n iconName: 'blogger',\n icon: [448, 512, [], \"f37c\", \"M162.4 196c4.8-4.9 6.2-5.1 36.4-5.1 27.2 0 28.1.1 32.1 2.1 5.8 2.9 8.3 7 8.3 13.6 0 5.9-2.4 10-7.6 13.4-2.8 1.8-4.5 1.9-31.1 2.1-16.4.1-29.5-.2-31.5-.8-10.3-2.9-14.1-17.7-6.6-25.3zm61.4 94.5c-53.9 0-55.8.2-60.2 4.1-3.5 3.1-5.7 9.4-5.1 13.9.7 4.7 4.8 10.1 9.2 12 2.2 1 14.1 1.7 56.3 1.2l47.9-.6 9.2-1.5c9-5.1 10.5-17.4 3.1-24.4-5.3-4.7-5-4.7-60.4-4.7zm223.4 130.1c-3.5 28.4-23 50.4-51.1 57.5-7.2 1.8-9.7 1.9-172.9 1.8-157.8 0-165.9-.1-172-1.8-8.4-2.2-15.6-5.5-22.3-10-5.6-3.8-13.9-11.8-17-16.4-3.8-5.6-8.2-15.3-10-22C.1 423 0 420.3 0 256.3 0 93.2 0 89.7 1.8 82.6 8.1 57.9 27.7 39 53 33.4c7.3-1.6 332.1-1.9 340-.3 21.2 4.3 37.9 17.1 47.6 36.4 7.7 15.3 7-1.5 7.3 180.6.2 115.8 0 164.5-.7 170.5zm-85.4-185.2c-1.1-5-4.2-9.6-7.7-11.5-1.1-.6-8-1.3-15.5-1.7-12.4-.6-13.8-.8-17.8-3.1-6.2-3.6-7.9-7.6-8-18.3 0-20.4-8.5-39.4-25.3-56.5-12-12.2-25.3-20.5-40.6-25.1-3.6-1.1-11.8-1.5-39.2-1.8-42.9-.5-52.5.4-67.1 6.2-27 10.7-46.3 33.4-53.4 62.4-1.3 5.4-1.6 14.2-1.9 64.3-.4 62.8 0 72.1 4 84.5 9.7 30.7 37.1 53.4 64.6 58.4 9.2 1.7 122.2 2.1 133.7.5 20.1-2.7 35.9-10.8 50.7-25.9 10.7-10.9 17.4-22.8 21.8-38.5 3.2-10.9 2.9-88.4 1.7-93.9z\"]\n};\nvar faBloggerB = {\n prefix: 'fab',\n iconName: 'blogger-b',\n icon: [448, 512, [], \"f37d\", \"M446.6 222.7c-1.8-8-6.8-15.4-12.5-18.5-1.8-1-13-2.2-25-2.7-20.1-.9-22.3-1.3-28.7-5-10.1-5.9-12.8-12.3-12.9-29.5-.1-33-13.8-63.7-40.9-91.3-19.3-19.7-40.9-33-65.5-40.5-5.9-1.8-19.1-2.4-63.3-2.9-69.4-.8-84.8.6-108.4 10C45.9 59.5 14.7 96.1 3.3 142.9 1.2 151.7.7 165.8.2 246.8c-.6 101.5.1 116.4 6.4 136.5 15.6 49.6 59.9 86.3 104.4 94.3 14.8 2.7 197.3 3.3 216 .8 32.5-4.4 58-17.5 81.9-41.9 17.3-17.7 28.1-36.8 35.2-62.1 4.9-17.6 4.5-142.8 2.5-151.7zm-322.1-63.6c7.8-7.9 10-8.2 58.8-8.2 43.9 0 45.4.1 51.8 3.4 9.3 4.7 13.4 11.3 13.4 21.9 0 9.5-3.8 16.2-12.3 21.6-4.6 2.9-7.3 3.1-50.3 3.3-26.5.2-47.7-.4-50.8-1.2-16.6-4.7-22.8-28.5-10.6-40.8zm191.8 199.8l-14.9 2.4-77.5.9c-68.1.8-87.3-.4-90.9-2-7.1-3.1-13.8-11.7-14.9-19.4-1.1-7.3 2.6-17.3 8.2-22.4 7.1-6.4 10.2-6.6 97.3-6.7 89.6-.1 89.1-.1 97.6 7.8 12.1 11.3 9.5 31.2-4.9 39.4z\"]\n};\nvar faBluetooth = {\n prefix: 'fab',\n iconName: 'bluetooth',\n icon: [448, 512, [], \"f293\", \"M292.6 171.1L249.7 214l-.3-86 43.2 43.1m-43.2 219.8l43.1-43.1-42.9-42.9-.2 86zM416 259.4C416 465 344.1 512 230.9 512S32 465 32 259.4 115.4 0 228.6 0 416 53.9 416 259.4zm-158.5 0l79.4-88.6L211.8 36.5v176.9L138 139.6l-27 26.9 92.7 93-92.7 93 26.9 26.9 73.8-73.8 2.3 170 127.4-127.5-83.9-88.7z\"]\n};\nvar faBluetoothB = {\n prefix: 'fab',\n iconName: 'bluetooth-b',\n icon: [320, 512, [], \"f294\", \"M196.48 260.023l92.626-103.333L143.125 0v206.33l-86.111-86.111-31.406 31.405 108.061 108.399L25.608 368.422l31.406 31.405 86.111-86.111L145.84 512l148.552-148.644-97.912-103.333zm40.86-102.996l-49.977 49.978-.338-100.295 50.315 50.317zM187.363 313.04l49.977 49.978-50.315 50.316.338-100.294z\"]\n};\nvar faBootstrap = {\n prefix: 'fab',\n iconName: 'bootstrap',\n icon: [576, 512, [], \"f836\", \"M333.5,201.4c0-22.1-15.6-34.3-43-34.3h-50.4v71.2h42.5C315.4,238.2,333.5,225,333.5,201.4z M517,188.6 c-9.5-30.9-10.9-68.8-9.8-98.1c1.1-30.5-22.7-58.5-54.7-58.5H123.7c-32.1,0-55.8,28.1-54.7,58.5c1,29.3-0.3,67.2-9.8,98.1 c-9.6,31-25.7,50.6-52.2,53.1v28.5c26.4,2.5,42.6,22.1,52.2,53.1c9.5,30.9,10.9,68.8,9.8,98.1c-1.1,30.5,22.7,58.5,54.7,58.5h328.7 c32.1,0,55.8-28.1,54.7-58.5c-1-29.3,0.3-67.2,9.8-98.1c9.6-31,25.7-50.6,52.1-53.1v-28.5C542.7,239.2,526.5,219.6,517,188.6z M300.2,375.1h-97.9V136.8h97.4c43.3,0,71.7,23.4,71.7,59.4c0,25.3-19.1,47.9-43.5,51.8v1.3c33.2,3.6,55.5,26.6,55.5,58.3 C383.4,349.7,352.1,375.1,300.2,375.1z M290.2,266.4h-50.1v78.4h52.3c34.2,0,52.3-13.7,52.3-39.5 C344.7,279.6,326.1,266.4,290.2,266.4z\"]\n};\nvar faBtc = {\n prefix: 'fab',\n iconName: 'btc',\n icon: [384, 512, [], \"f15a\", \"M310.204 242.638c27.73-14.18 45.377-39.39 41.28-81.3-5.358-57.351-52.458-76.573-114.85-81.929V0h-48.528v77.203c-12.605 0-25.525.315-38.444.63V0h-48.528v79.409c-17.842.539-38.622.276-97.37 0v51.678c38.314-.678 58.417-3.14 63.023 21.427v217.429c-2.925 19.492-18.524 16.685-53.255 16.071L3.765 443.68c88.481 0 97.37.315 97.37.315V512h48.528v-67.06c13.234.315 26.154.315 38.444.315V512h48.528v-68.005c81.299-4.412 135.647-24.894 142.895-101.467 5.671-61.446-23.32-88.862-69.326-99.89zM150.608 134.553c27.415 0 113.126-8.507 113.126 48.528 0 54.515-85.71 48.212-113.126 48.212v-96.74zm0 251.776V279.821c32.772 0 133.127-9.138 133.127 53.255-.001 60.186-100.355 53.253-133.127 53.253z\"]\n};\nvar faBuffer = {\n prefix: 'fab',\n iconName: 'buffer',\n icon: [448, 512, [], \"f837\", \"M427.84 380.67l-196.5 97.82a18.6 18.6 0 0 1-14.67 0L20.16 380.67c-4-2-4-5.28 0-7.29L67.22 350a18.65 18.65 0 0 1 14.69 0l134.76 67a18.51 18.51 0 0 0 14.67 0l134.76-67a18.62 18.62 0 0 1 14.68 0l47.06 23.43c4.05 1.96 4.05 5.24 0 7.24zm0-136.53l-47.06-23.43a18.62 18.62 0 0 0-14.68 0l-134.76 67.08a18.68 18.68 0 0 1-14.67 0L81.91 220.71a18.65 18.65 0 0 0-14.69 0l-47.06 23.43c-4 2-4 5.29 0 7.31l196.51 97.8a18.6 18.6 0 0 0 14.67 0l196.5-97.8c4.05-2.02 4.05-5.3 0-7.31zM20.16 130.42l196.5 90.29a20.08 20.08 0 0 0 14.67 0l196.51-90.29c4-1.86 4-4.89 0-6.74L231.33 33.4a19.88 19.88 0 0 0-14.67 0l-196.5 90.28c-4.05 1.85-4.05 4.88 0 6.74z\"]\n};\nvar faBuromobelexperte = {\n prefix: 'fab',\n iconName: 'buromobelexperte',\n icon: [448, 512, [], \"f37f\", \"M0 32v128h128V32H0zm120 120H8V40h112v112zm40-120v128h128V32H160zm120 120H168V40h112v112zm40-120v128h128V32H320zm120 120H328V40h112v112zM0 192v128h128V192H0zm120 120H8V200h112v112zm40-120v128h128V192H160zm120 120H168V200h112v112zm40-120v128h128V192H320zm120 120H328V200h112v112zM0 352v128h128V352H0zm120 120H8V360h112v112zm40-120v128h128V352H160zm120 120H168V360h112v112zm40-120v128h128V352H320z\"]\n};\nvar faBuyNLarge = {\n prefix: 'fab',\n iconName: 'buy-n-large',\n icon: [576, 512, [], \"f8a6\", \"M288 32C133.27 32 7.79 132.32 7.79 256S133.27 480 288 480s280.21-100.32 280.21-224S442.73 32 288 32zm-85.39 357.19L64.1 390.55l77.25-290.74h133.44c63.15 0 84.93 28.65 78 72.84a60.24 60.24 0 0 1-1.5 6.85 77.39 77.39 0 0 0-17.21-1.93c-42.35 0-76.69 33.88-76.69 75.65 0 37.14 27.14 68 62.93 74.45-18.24 37.16-56.16 60.92-117.71 61.52zM358 207.11h32l-22.16 90.31h-35.41l-11.19-35.63-7.83 35.63h-37.83l26.63-90.31h31.34l15 36.75zm145.86 182.08H306.79L322.63 328a78.8 78.8 0 0 0 11.47.83c42.34 0 76.69-33.87 76.69-75.65 0-32.65-21-60.46-50.38-71.06l21.33-82.35h92.5l-53.05 205.36h103.87zM211.7 269.39H187l-13.8 56.47h24.7c16.14 0 32.11-3.18 37.94-26.65 5.56-22.31-7.99-29.82-24.14-29.82zM233 170h-21.34L200 217.71h21.37c18 0 35.38-14.64 39.21-30.14C265.23 168.71 251.07 170 233 170z\"]\n};\nvar faBuysellads = {\n prefix: 'fab',\n iconName: 'buysellads',\n icon: [448, 512, [], \"f20d\", \"M224 150.7l42.9 160.7h-85.8L224 150.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-65.3 325.3l-94.5-298.7H159.8L65.3 405.3H156l111.7-91.6 24.2 91.6h90.8z\"]\n};\nvar faCanadianMapleLeaf = {\n prefix: 'fab',\n iconName: 'canadian-maple-leaf',\n icon: [512, 512, [], \"f785\", \"M383.8 351.7c2.5-2.5 105.2-92.4 105.2-92.4l-17.5-7.5c-10-4.9-7.4-11.5-5-17.4 2.4-7.6 20.1-67.3 20.1-67.3s-47.7 10-57.7 12.5c-7.5 2.4-10-2.5-12.5-7.5s-15-32.4-15-32.4-52.6 59.9-55.1 62.3c-10 7.5-20.1 0-17.6-10 0-10 27.6-129.6 27.6-129.6s-30.1 17.4-40.1 22.4c-7.5 5-12.6 5-17.6-5C293.5 72.3 255.9 0 255.9 0s-37.5 72.3-42.5 79.8c-5 10-10 10-17.6 5-10-5-40.1-22.4-40.1-22.4S183.3 182 183.3 192c2.5 10-7.5 17.5-17.6 10-2.5-2.5-55.1-62.3-55.1-62.3S98.1 167 95.6 172s-5 9.9-12.5 7.5C73 177 25.4 167 25.4 167s17.6 59.7 20.1 67.3c2.4 6 5 12.5-5 17.4L23 259.3s102.6 89.9 105.2 92.4c5.1 5 10 7.5 5.1 22.5-5.1 15-10.1 35.1-10.1 35.1s95.2-20.1 105.3-22.6c8.7-.9 18.3 2.5 18.3 12.5S241 512 241 512h30s-5.8-102.7-5.8-112.8 9.5-13.4 18.4-12.5c10 2.5 105.2 22.6 105.2 22.6s-5-20.1-10-35.1 0-17.5 5-22.5z\"]\n};\nvar faCcAmazonPay = {\n prefix: 'fab',\n iconName: 'cc-amazon-pay',\n icon: [576, 512, [], \"f42d\", \"M124.7 201.8c.1-11.8 0-23.5 0-35.3v-35.3c0-1.3.4-2 1.4-2.7 11.5-8 24.1-12.1 38.2-11.1 12.5.9 22.7 7 28.1 21.7 3.3 8.9 4.1 18.2 4.1 27.7 0 8.7-.7 17.3-3.4 25.6-5.7 17.8-18.7 24.7-35.7 23.9-11.7-.5-21.9-5-31.4-11.7-.9-.8-1.4-1.6-1.3-2.8zm154.9 14.6c4.6 1.8 9.3 2 14.1 1.5 11.6-1.2 21.9-5.7 31.3-12.5.9-.6 1.3-1.3 1.3-2.5-.1-3.9 0-7.9 0-11.8 0-4-.1-8 0-12 0-1.4-.4-2-1.8-2.2-7-.9-13.9-2.2-20.9-2.9-7-.6-14-.3-20.8 1.9-6.7 2.2-11.7 6.2-13.7 13.1-1.6 5.4-1.6 10.8.1 16.2 1.6 5.5 5.2 9.2 10.4 11.2zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zm-207.5 23.9c.4 1.7.9 3.4 1.6 5.1 16.5 40.6 32.9 81.3 49.5 121.9 1.4 3.5 1.7 6.4.2 9.9-2.8 6.2-4.9 12.6-7.8 18.7-2.6 5.5-6.7 9.5-12.7 11.2-4.2 1.1-8.5 1.3-12.9.9-2.1-.2-4.2-.7-6.3-.8-2.8-.2-4.2 1.1-4.3 4-.1 2.8-.1 5.6 0 8.3.1 4.6 1.6 6.7 6.2 7.5 4.7.8 9.4 1.6 14.2 1.7 14.3.3 25.7-5.4 33.1-17.9 2.9-4.9 5.6-10.1 7.7-15.4 19.8-50.1 39.5-100.3 59.2-150.5.6-1.5 1.1-3 1.3-4.6.4-2.4-.7-3.6-3.1-3.7-5.6-.1-11.1 0-16.7 0-3.1 0-5.3 1.4-6.4 4.3-.4 1.1-.9 2.3-1.3 3.4l-29.1 83.7c-2.1 6.1-4.2 12.1-6.5 18.6-.4-.9-.6-1.4-.8-1.9-10.8-29.9-21.6-59.9-32.4-89.8-1.7-4.7-3.5-9.5-5.3-14.2-.9-2.5-2.7-4-5.4-4-6.4-.1-12.8-.2-19.2-.1-2.2 0-3.3 1.6-2.8 3.7zM242.4 206c1.7 11.7 7.6 20.8 18 26.6 9.9 5.5 20.7 6.2 31.7 4.6 12.7-1.9 23.9-7.3 33.8-15.5.4-.3.8-.6 1.4-1 .5 3.2.9 6.2 1.5 9.2.5 2.6 2.1 4.3 4.5 4.4 4.6.1 9.1.1 13.7 0 2.3-.1 3.8-1.6 4-3.9.1-.8.1-1.6.1-2.3v-88.8c0-3.6-.2-7.2-.7-10.8-1.6-10.8-6.2-19.7-15.9-25.4-5.6-3.3-11.8-5-18.2-5.9-3-.4-6-.7-9.1-1.1h-10c-.8.1-1.6.3-2.5.3-8.2.4-16.3 1.4-24.2 3.5-5.1 1.3-10 3.2-15 4.9-3 1-4.5 3.2-4.4 6.5.1 2.8-.1 5.6 0 8.3.1 4.1 1.8 5.2 5.7 4.1 6.5-1.7 13.1-3.5 19.7-4.8 10.3-1.9 20.7-2.7 31.1-1.2 5.4.8 10.5 2.4 14.1 7 3.1 4 4.2 8.8 4.4 13.7.3 6.9.2 13.9.3 20.8 0 .4-.1.7-.2 1.2-.4 0-.8 0-1.1-.1-8.8-2.1-17.7-3.6-26.8-4.1-9.5-.5-18.9.1-27.9 3.2-10.8 3.8-19.5 10.3-24.6 20.8-4.1 8.3-4.6 17-3.4 25.8zM98.7 106.9v175.3c0 .8 0 1.7.1 2.5.2 2.5 1.7 4.1 4.1 4.2 5.9.1 11.8.1 17.7 0 2.5 0 4-1.7 4.1-4.1.1-.8.1-1.7.1-2.5v-60.7c.9.7 1.4 1.2 1.9 1.6 15 12.5 32.2 16.6 51.1 12.9 17.1-3.4 28.9-13.9 36.7-29.2 5.8-11.6 8.3-24.1 8.7-37 .5-14.3-1-28.4-6.8-41.7-7.1-16.4-18.9-27.3-36.7-30.9-2.7-.6-5.5-.8-8.2-1.2h-7c-1.2.2-2.4.3-3.6.5-11.7 1.4-22.3 5.8-31.8 12.7-2 1.4-3.9 3-5.9 4.5-.1-.5-.3-.8-.4-1.2-.4-2.3-.7-4.6-1.1-6.9-.6-3.9-2.5-5.5-6.4-5.6h-9.7c-5.9-.1-6.9 1-6.9 6.8zM493.6 339c-2.7-.7-5.1 0-7.6 1-43.9 18.4-89.5 30.2-136.8 35.8-14.5 1.7-29.1 2.8-43.7 3.2-26.6.7-53.2-.8-79.6-4.3-17.8-2.4-35.5-5.7-53-9.9-37-8.9-72.7-21.7-106.7-38.8-8.8-4.4-17.4-9.3-26.1-14-3.8-2.1-6.2-1.5-8.2 2.1v1.7c1.2 1.6 2.2 3.4 3.7 4.8 36 32.2 76.6 56.5 122 72.9 21.9 7.9 44.4 13.7 67.3 17.5 14 2.3 28 3.8 42.2 4.5 3 .1 6 .2 9 .4.7 0 1.4.2 2.1.3h17.7c.7-.1 1.4-.3 2.1-.3 14.9-.4 29.8-1.8 44.6-4 21.4-3.2 42.4-8.1 62.9-14.7 29.6-9.6 57.7-22.4 83.4-40.1 2.8-1.9 5.7-3.8 8-6.2 4.3-4.4 2.3-10.4-3.3-11.9zm50.4-27.7c-.8-4.2-4-5.8-7.6-7-5.7-1.9-11.6-2.8-17.6-3.3-11-.9-22-.4-32.8 1.6-12 2.2-23.4 6.1-33.5 13.1-1.2.8-2.4 1.8-3.1 3-.6.9-.7 2.3-.5 3.4.3 1.3 1.7 1.6 3 1.5.6 0 1.2 0 1.8-.1l19.5-2.1c9.6-.9 19.2-1.5 28.8-.8 4.1.3 8.1 1.2 12 2.2 4.3 1.1 6.2 4.4 6.4 8.7.3 6.7-1.2 13.1-2.9 19.5-3.5 12.9-8.3 25.4-13.3 37.8-.3.8-.7 1.7-.8 2.5-.4 2.5 1 4 3.4 3.5 1.4-.3 3-1.1 4-2.1 3.7-3.6 7.5-7.2 10.6-11.2 10.7-13.8 17-29.6 20.7-46.6.7-3 1.2-6.1 1.7-9.1.2-4.7.2-9.6.2-14.5z\"]\n};\nvar faCcAmex = {\n prefix: 'fab',\n iconName: 'cc-amex',\n icon: [576, 512, [], \"f1f3\", \"M325.1 167.8c0-16.4-14.1-18.4-27.4-18.4l-39.1-.3v69.3H275v-25.1h18c18.4 0 14.5 10.3 14.8 25.1h16.6v-13.5c0-9.2-1.5-15.1-11-18.4 7.4-3 11.8-10.7 11.7-18.7zm-29.4 11.3H275v-15.3h21c5.1 0 10.7 1 10.7 7.4 0 6.6-5.3 7.9-11 7.9zM279 268.6h-52.7l-21 22.8-20.5-22.8h-66.5l-.1 69.3h65.4l21.3-23 20.4 23h32.2l.1-23.3c18.9 0 49.3 4.6 49.3-23.3 0-17.3-12.3-22.7-27.9-22.7zm-103.8 54.7h-40.6v-13.8h36.3v-14.1h-36.3v-12.5h41.7l17.9 20.2zm65.8 8.2l-25.3-28.1L241 276zm37.8-31h-21.2v-17.6h21.5c5.6 0 10.2 2.3 10.2 8.4 0 6.4-4.6 9.2-10.5 9.2zm-31.6-136.7v-14.6h-55.5v69.3h55.5v-14.3h-38.9v-13.8h37.8v-14.1h-37.8v-12.5zM576 255.4h-.2zm-194.6 31.9c0-16.4-14.1-18.7-27.1-18.7h-39.4l-.1 69.3h16.6l.1-25.3h17.6c11 0 14.8 2 14.8 13.8l-.1 11.5h16.6l.1-13.8c0-8.9-1.8-15.1-11-18.4 7.7-3.1 11.8-10.8 11.9-18.4zm-29.2 11.2h-20.7v-15.6h21c5.1 0 10.7 1 10.7 7.4 0 6.9-5.4 8.2-11 8.2zm-172.8-80v-69.3h-27.6l-19.7 47-21.7-47H83.3v65.7l-28.1-65.7H30.7L1 218.5h17.9l6.4-15.3h34.5l6.4 15.3H100v-54.2l24 54.2h14.6l24-54.2v54.2zM31.2 188.8l11.2-27.6 11.5 27.6zm477.4 158.9v-4.5c-10.8 5.6-3.9 4.5-156.7 4.5 0-25.2.1-23.9 0-25.2-1.7-.1-3.2-.1-9.4-.1 0 17.9-.1 6.8-.1 25.3h-39.6c0-12.1.1-15.3.1-29.2-10 6-22.8 6.4-34.3 6.2 0 14.7-.1 8.3-.1 23h-48.9c-5.1-5.7-2.7-3.1-15.4-17.4-3.2 3.5-12.8 13.9-16.1 17.4h-82v-92.3h83.1c5 5.6 2.8 3.1 15.5 17.2 3.2-3.5 12.2-13.4 15.7-17.2h58c9.8 0 18 1.9 24.3 5.6v-5.6c54.3 0 64.3-1.4 75.7 5.1v-5.1h78.2v5.2c11.4-6.9 19.6-5.2 64.9-5.2v5c10.3-5.9 16.6-5.2 54.3-5V80c0-26.5-21.5-48-48-48h-480c-26.5 0-48 21.5-48 48v109.8c9.4-21.9 19.7-46 23.1-53.9h39.7c4.3 10.1 1.6 3.7 9 21.1v-21.1h46c2.9 6.2 11.1 24 13.9 30 5.8-13.6 10.1-23.9 12.6-30h103c0-.1 11.5 0 11.6 0 43.7.2 53.6-.8 64.4 5.3v-5.3H363v9.3c7.6-6.1 17.9-9.3 30.7-9.3h27.6c0 .5 1.9.3 2.3.3H456c4.2 9.8 2.6 6 8.8 20.6v-20.6h43.3c4.9 8-1-1.8 11.2 18.4v-18.4h39.9v92h-41.6c-5.4-9-1.4-2.2-13.2-21.9v21.9h-52.8c-6.4-14.8-.1-.3-6.6-15.3h-19c-4.2 10-2.2 5.2-6.4 15.3h-26.8c-12.3 0-22.3-3-29.7-8.9v8.9h-66.5c-.3-13.9-.1-24.8-.1-24.8-1.8-.3-3.4-.2-9.8-.2v25.1H151.2v-11.4c-2.5 5.6-2.7 5.9-5.1 11.4h-29.5c-4-8.9-2.9-6.4-5.1-11.4v11.4H58.6c-4.2-10.1-2.2-5.3-6.4-15.3H33c-4.2 10-2.2 5.2-6.4 15.3H0V432c0 26.5 21.5 48 48 48h480.1c26.5 0 48-21.5 48-48v-90.4c-12.7 8.3-32.7 6.1-67.5 6.1zm36.3-64.5H575v-14.6h-32.9c-12.8 0-23.8 6.6-23.8 20.7 0 33 42.7 12.8 42.7 27.4 0 5.1-4.3 6.4-8.4 6.4h-32l-.1 14.8h32c8.4 0 17.6-1.8 22.5-8.9v-25.8c-10.5-13.8-39.3-1.3-39.3-13.5 0-5.8 4.6-6.5 9.2-6.5zm-57 39.8h-32.2l-.1 14.8h32.2c14.8 0 26.2-5.6 26.2-22 0-33.2-42.9-11.2-42.9-26.3 0-5.6 4.9-6.4 9.2-6.4h30.4v-14.6h-33.2c-12.8 0-23.5 6.6-23.5 20.7 0 33 42.7 12.5 42.7 27.4-.1 5.4-4.7 6.4-8.8 6.4zm-42.2-40.1v-14.3h-55.2l-.1 69.3h55.2l.1-14.3-38.6-.3v-13.8H445v-14.1h-37.8v-12.5zm-56.3-108.1c-.3.2-1.4 2.2-1.4 7.6 0 6 .9 7.7 1.1 7.9.2.1 1.1.5 3.4.5l7.3-16.9c-1.1 0-2.1-.1-3.1-.1-5.6 0-7 .7-7.3 1zm20.4-10.5h-.1zm-16.2-15.2c-23.5 0-34 12-34 35.3 0 22.2 10.2 34 33 34h19.2l6.4-15.3h34.3l6.6 15.3h33.7v-51.9l31.2 51.9h23.6v-69h-16.9v48.1l-29.1-48.1h-25.3v65.4l-27.9-65.4h-24.8l-23.5 54.5h-7.4c-13.3 0-16.1-8.1-16.1-19.9 0-23.8 15.7-20 33.1-19.7v-15.2zm42.1 12.1l11.2 27.6h-22.8zm-101.1-12v69.3h16.9v-69.3z\"]\n};\nvar faCcApplePay = {\n prefix: 'fab',\n iconName: 'cc-apple-pay',\n icon: [576, 512, [], \"f416\", \"M302.2 218.4c0 17.2-10.5 27.1-29 27.1h-24.3v-54.2h24.4c18.4 0 28.9 9.8 28.9 27.1zm47.5 62.6c0 8.3 7.2 13.7 18.5 13.7 14.4 0 25.2-9.1 25.2-21.9v-7.7l-23.5 1.5c-13.3.9-20.2 5.8-20.2 14.4zM576 79v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V79c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM127.8 197.2c8.4.7 16.8-4.2 22.1-10.4 5.2-6.4 8.6-15 7.7-23.7-7.4.3-16.6 4.9-21.9 11.3-4.8 5.5-8.9 14.4-7.9 22.8zm60.6 74.5c-.2-.2-19.6-7.6-19.8-30-.2-18.7 15.3-27.7 16-28.2-8.8-13-22.4-14.4-27.1-14.7-12.2-.7-22.6 6.9-28.4 6.9-5.9 0-14.7-6.6-24.3-6.4-12.5.2-24.2 7.3-30.5 18.6-13.1 22.6-3.4 56 9.3 74.4 6.2 9.1 13.7 19.1 23.5 18.7 9.3-.4 13-6 24.2-6 11.3 0 14.5 6 24.3 5.9 10.2-.2 16.5-9.1 22.8-18.2 6.9-10.4 9.8-20.4 10-21zm135.4-53.4c0-26.6-18.5-44.8-44.9-44.8h-51.2v136.4h21.2v-46.6h29.3c26.8 0 45.6-18.4 45.6-45zm90 23.7c0-19.7-15.8-32.4-40-32.4-22.5 0-39.1 12.9-39.7 30.5h19.1c1.6-8.4 9.4-13.9 20-13.9 13 0 20.2 6 20.2 17.2v7.5l-26.4 1.6c-24.6 1.5-37.9 11.6-37.9 29.1 0 17.7 13.7 29.4 33.4 29.4 13.3 0 25.6-6.7 31.2-17.4h.4V310h19.6v-68zM516 210.9h-21.5l-24.9 80.6h-.4l-24.9-80.6H422l35.9 99.3-1.9 6c-3.2 10.2-8.5 14.2-17.9 14.2-1.7 0-4.9-.2-6.2-.3v16.4c1.2.4 6.5.5 8.1.5 20.7 0 30.4-7.9 38.9-31.8L516 210.9z\"]\n};\nvar faCcDinersClub = {\n prefix: 'fab',\n iconName: 'cc-diners-club',\n icon: [576, 512, [], \"f24c\", \"M239.7 79.9c-96.9 0-175.8 78.6-175.8 175.8 0 96.9 78.9 175.8 175.8 175.8 97.2 0 175.8-78.9 175.8-175.8 0-97.2-78.6-175.8-175.8-175.8zm-39.9 279.6c-41.7-15.9-71.4-56.4-71.4-103.8s29.7-87.9 71.4-104.1v207.9zm79.8.3V151.6c41.7 16.2 71.4 56.7 71.4 104.1s-29.7 87.9-71.4 104.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM329.7 448h-90.3c-106.2 0-193.8-85.5-193.8-190.2C45.6 143.2 133.2 64 239.4 64h90.3c105 0 200.7 79.2 200.7 193.8 0 104.7-95.7 190.2-200.7 190.2z\"]\n};\nvar faCcDiscover = {\n prefix: 'fab',\n iconName: 'cc-discover',\n icon: [576, 512, [], \"f1f2\", \"M520.4 196.1c0-7.9-5.5-12.1-15.6-12.1h-4.9v24.9h4.7c10.3 0 15.8-4.4 15.8-12.8zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-44.1 138.9c22.6 0 52.9-4.1 52.9 24.4 0 12.6-6.6 20.7-18.7 23.2l25.8 34.4h-19.6l-22.2-32.8h-2.2v32.8h-16zm-55.9.1h45.3v14H444v18.2h28.3V217H444v22.2h29.3V253H428zm-68.7 0l21.9 55.2 22.2-55.2h17.5l-35.5 84.2h-8.6l-35-84.2zm-55.9-3c24.7 0 44.6 20 44.6 44.6 0 24.7-20 44.6-44.6 44.6-24.7 0-44.6-20-44.6-44.6 0-24.7 20-44.6 44.6-44.6zm-49.3 6.1v19c-20.1-20.1-46.8-4.7-46.8 19 0 25 27.5 38.5 46.8 19.2v19c-29.7 14.3-63.3-5.7-63.3-38.2 0-31.2 33.1-53 63.3-38zm-97.2 66.3c11.4 0 22.4-15.3-3.3-24.4-15-5.5-20.2-11.4-20.2-22.7 0-23.2 30.6-31.4 49.7-14.3l-8.4 10.8c-10.4-11.6-24.9-6.2-24.9 2.5 0 4.4 2.7 6.9 12.3 10.3 18.2 6.6 23.6 12.5 23.6 25.6 0 29.5-38.8 37.4-56.6 11.3l10.3-9.9c3.7 7.1 9.9 10.8 17.5 10.8zM55.4 253H32v-82h23.4c26.1 0 44.1 17 44.1 41.1 0 18.5-13.2 40.9-44.1 40.9zm67.5 0h-16v-82h16zM544 433c0 8.2-6.8 15-15 15H128c189.6-35.6 382.7-139.2 416-160zM74.1 191.6c-5.2-4.9-11.6-6.6-21.9-6.6H48v54.2h4.2c10.3 0 17-2 21.9-6.4 5.7-5.2 8.9-12.8 8.9-20.7s-3.2-15.5-8.9-20.5z\"]\n};\nvar faCcJcb = {\n prefix: 'fab',\n iconName: 'cc-jcb',\n icon: [576, 512, [], \"f24b\", \"M431.5 244.3V212c41.2 0 38.5.2 38.5.2 7.3 1.3 13.3 7.3 13.3 16 0 8.8-6 14.5-13.3 15.8-1.2.4-3.3.3-38.5.3zm42.8 20.2c-2.8-.7-3.3-.5-42.8-.5v35c39.6 0 40 .2 42.8-.5 7.5-1.5 13.5-8 13.5-17 0-8.7-6-15.5-13.5-17zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM182 192.3h-57c0 67.1 10.7 109.7-35.8 109.7-19.5 0-38.8-5.7-57.2-14.8v28c30 8.3 68 8.3 68 8.3 97.9 0 82-47.7 82-131.2zm178.5 4.5c-63.4-16-165-14.9-165 59.3 0 77.1 108.2 73.6 165 59.2V287C312.9 311.7 253 309 253 256s59.8-55.6 107.5-31.2v-28zM544 286.5c0-18.5-16.5-30.5-38-32v-.8c19.5-2.7 30.3-15.5 30.3-30.2 0-19-15.7-30-37-31 0 0 6.3-.3-120.3-.3v127.5h122.7c24.3.1 42.3-12.9 42.3-33.2z\"]\n};\nvar faCcMastercard = {\n prefix: 'fab',\n iconName: 'cc-mastercard',\n icon: [576, 512, [], \"f1f1\", \"M482.9 410.3c0 6.8-4.6 11.7-11.2 11.7-6.8 0-11.2-5.2-11.2-11.7 0-6.5 4.4-11.7 11.2-11.7 6.6 0 11.2 5.2 11.2 11.7zm-310.8-11.7c-7.1 0-11.2 5.2-11.2 11.7 0 6.5 4.1 11.7 11.2 11.7 6.5 0 10.9-4.9 10.9-11.7-.1-6.5-4.4-11.7-10.9-11.7zm117.5-.3c-5.4 0-8.7 3.5-9.5 8.7h19.1c-.9-5.7-4.4-8.7-9.6-8.7zm107.8.3c-6.8 0-10.9 5.2-10.9 11.7 0 6.5 4.1 11.7 10.9 11.7 6.8 0 11.2-4.9 11.2-11.7 0-6.5-4.4-11.7-11.2-11.7zm105.9 26.1c0 .3.3.5.3 1.1 0 .3-.3.5-.3 1.1-.3.3-.3.5-.5.8-.3.3-.5.5-1.1.5-.3.3-.5.3-1.1.3-.3 0-.5 0-1.1-.3-.3 0-.5-.3-.8-.5-.3-.3-.5-.5-.5-.8-.3-.5-.3-.8-.3-1.1 0-.5 0-.8.3-1.1 0-.5.3-.8.5-1.1.3-.3.5-.3.8-.5.5-.3.8-.3 1.1-.3.5 0 .8 0 1.1.3.5.3.8.3 1.1.5s.2.6.5 1.1zm-2.2 1.4c.5 0 .5-.3.8-.3.3-.3.3-.5.3-.8 0-.3 0-.5-.3-.8-.3 0-.5-.3-1.1-.3h-1.6v3.5h.8V426h.3l1.1 1.4h.8l-1.1-1.3zM576 81v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V81c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM64 220.6c0 76.5 62.1 138.5 138.5 138.5 27.2 0 53.9-8.2 76.5-23.1-72.9-59.3-72.4-171.2 0-230.5-22.6-15-49.3-23.1-76.5-23.1-76.4-.1-138.5 62-138.5 138.2zm224 108.8c70.5-55 70.2-162.2 0-217.5-70.2 55.3-70.5 162.6 0 217.5zm-142.3 76.3c0-8.7-5.7-14.4-14.7-14.7-4.6 0-9.5 1.4-12.8 6.5-2.4-4.1-6.5-6.5-12.2-6.5-3.8 0-7.6 1.4-10.6 5.4V392h-8.2v36.7h8.2c0-18.9-2.5-30.2 9-30.2 10.2 0 8.2 10.2 8.2 30.2h7.9c0-18.3-2.5-30.2 9-30.2 10.2 0 8.2 10 8.2 30.2h8.2v-23zm44.9-13.7h-7.9v4.4c-2.7-3.3-6.5-5.4-11.7-5.4-10.3 0-18.2 8.2-18.2 19.3 0 11.2 7.9 19.3 18.2 19.3 5.2 0 9-1.9 11.7-5.4v4.6h7.9V392zm40.5 25.6c0-15-22.9-8.2-22.9-15.2 0-5.7 11.9-4.8 18.5-1.1l3.3-6.5c-9.4-6.1-30.2-6-30.2 8.2 0 14.3 22.9 8.3 22.9 15 0 6.3-13.5 5.8-20.7.8l-3.5 6.3c11.2 7.6 32.6 6 32.6-7.5zm35.4 9.3l-2.2-6.8c-3.8 2.1-12.2 4.4-12.2-4.1v-16.6h13.1V392h-13.1v-11.2h-8.2V392h-7.6v7.3h7.6V416c0 17.6 17.3 14.4 22.6 10.9zm13.3-13.4h27.5c0-16.2-7.4-22.6-17.4-22.6-10.6 0-18.2 7.9-18.2 19.3 0 20.5 22.6 23.9 33.8 14.2l-3.8-6c-7.8 6.4-19.6 5.8-21.9-4.9zm59.1-21.5c-4.6-2-11.6-1.8-15.2 4.4V392h-8.2v36.7h8.2V408c0-11.6 9.5-10.1 12.8-8.4l2.4-7.6zm10.6 18.3c0-11.4 11.6-15.1 20.7-8.4l3.8-6.5c-11.6-9.1-32.7-4.1-32.7 15 0 19.8 22.4 23.8 32.7 15l-3.8-6.5c-9.2 6.5-20.7 2.6-20.7-8.6zm66.7-18.3H408v4.4c-8.3-11-29.9-4.8-29.9 13.9 0 19.2 22.4 24.7 29.9 13.9v4.6h8.2V392zm33.7 0c-2.4-1.2-11-2.9-15.2 4.4V392h-7.9v36.7h7.9V408c0-11 9-10.3 12.8-8.4l2.4-7.6zm40.3-14.9h-7.9v19.3c-8.2-10.9-29.9-5.1-29.9 13.9 0 19.4 22.5 24.6 29.9 13.9v4.6h7.9v-51.7zm7.6-75.1v4.6h.8V302h1.9v-.8h-4.6v.8h1.9zm6.6 123.8c0-.5 0-1.1-.3-1.6-.3-.3-.5-.8-.8-1.1-.3-.3-.8-.5-1.1-.8-.5 0-1.1-.3-1.6-.3-.3 0-.8.3-1.4.3-.5.3-.8.5-1.1.8-.5.3-.8.8-.8 1.1-.3.5-.3 1.1-.3 1.6 0 .3 0 .8.3 1.4 0 .3.3.8.8 1.1.3.3.5.5 1.1.8.5.3 1.1.3 1.4.3.5 0 1.1 0 1.6-.3.3-.3.8-.5 1.1-.8.3-.3.5-.8.8-1.1.3-.6.3-1.1.3-1.4zm3.2-124.7h-1.4l-1.6 3.5-1.6-3.5h-1.4v5.4h.8v-4.1l1.6 3.5h1.1l1.4-3.5v4.1h1.1v-5.4zm4.4-80.5c0-76.2-62.1-138.3-138.5-138.3-27.2 0-53.9 8.2-76.5 23.1 72.1 59.3 73.2 171.5 0 230.5 22.6 15 49.5 23.1 76.5 23.1 76.4.1 138.5-61.9 138.5-138.4z\"]\n};\nvar faCcPaypal = {\n prefix: 'fab',\n iconName: 'cc-paypal',\n icon: [576, 512, [], \"f1f4\", \"M186.3 258.2c0 12.2-9.7 21.5-22 21.5-9.2 0-16-5.2-16-15 0-12.2 9.5-22 21.7-22 9.3 0 16.3 5.7 16.3 15.5zM80.5 209.7h-4.7c-1.5 0-3 1-3.2 2.7l-4.3 26.7 8.2-.3c11 0 19.5-1.5 21.5-14.2 2.3-13.4-6.2-14.9-17.5-14.9zm284 0H360c-1.8 0-3 1-3.2 2.7l-4.2 26.7 8-.3c13 0 22-3 22-18-.1-10.6-9.6-11.1-18.1-11.1zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM128.3 215.4c0-21-16.2-28-34.7-28h-40c-2.5 0-5 2-5.2 4.7L32 294.2c-.3 2 1.2 4 3.2 4h19c2.7 0 5.2-2.9 5.5-5.7l4.5-26.6c1-7.2 13.2-4.7 18-4.7 28.6 0 46.1-17 46.1-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.2 8.2-5.8-8.5-14.2-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9 0 20.2-4.9 26.5-11.9-.5 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H200c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm40.5 97.9l63.7-92.6c.5-.5.5-1 .5-1.7 0-1.7-1.5-3.5-3.2-3.5h-19.2c-1.7 0-3.5 1-4.5 2.5l-26.5 39-11-37.5c-.8-2.2-3-4-5.5-4h-18.7c-1.7 0-3.2 1.8-3.2 3.5 0 1.2 19.5 56.8 21.2 62.1-2.7 3.8-20.5 28.6-20.5 31.6 0 1.8 1.5 3.2 3.2 3.2h19.2c1.8-.1 3.5-1.1 4.5-2.6zm159.3-106.7c0-21-16.2-28-34.7-28h-39.7c-2.7 0-5.2 2-5.5 4.7l-16.2 102c-.2 2 1.3 4 3.2 4h20.5c2 0 3.5-1.5 4-3.2l4.5-29c1-7.2 13.2-4.7 18-4.7 28.4 0 45.9-17 45.9-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.3 8.2-5.5-8.5-14-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9.3 0 20.5-4.9 26.5-11.9-.3 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H484c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm47.5-33.3c0-2-1.5-3.5-3.2-3.5h-18.5c-1.5 0-3 1.2-3.2 2.7l-16.2 104-.3.5c0 1.8 1.5 3.5 3.5 3.5h16.5c2.5 0 5-2.9 5.2-5.7L544 191.2v-.3zm-90 51.8c-12.2 0-21.7 9.7-21.7 22 0 9.7 7 15 16.2 15 12 0 21.7-9.2 21.7-21.5.1-9.8-6.9-15.5-16.2-15.5z\"]\n};\nvar faCcStripe = {\n prefix: 'fab',\n iconName: 'cc-stripe',\n icon: [576, 512, [], \"f1f5\", \"M492.4 220.8c-8.9 0-18.7 6.7-18.7 22.7h36.7c0-16-9.3-22.7-18-22.7zM375 223.4c-8.2 0-13.3 2.9-17 7l.2 52.8c3.5 3.7 8.5 6.7 16.8 6.7 13.1 0 21.9-14.3 21.9-33.4 0-18.6-9-33.2-21.9-33.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM122.2 281.1c0 25.6-20.3 40.1-49.9 40.3-12.2 0-25.6-2.4-38.8-8.1v-33.9c12 6.4 27.1 11.3 38.9 11.3 7.9 0 13.6-2.1 13.6-8.7 0-17-54-10.6-54-49.9 0-25.2 19.2-40.2 48-40.2 11.8 0 23.5 1.8 35.3 6.5v33.4c-10.8-5.8-24.5-9.1-35.3-9.1-7.5 0-12.1 2.2-12.1 7.7 0 16 54.3 8.4 54.3 50.7zm68.8-56.6h-27V275c0 20.9 22.5 14.4 27 12.6v28.9c-4.7 2.6-13.3 4.7-24.9 4.7-21.1 0-36.9-15.5-36.9-36.5l.2-113.9 34.7-7.4v30.8H191zm74 2.4c-4.5-1.5-18.7-3.6-27.1 7.4v84.4h-35.5V194.2h30.7l2.2 10.5c8.3-15.3 24.9-12.2 29.6-10.5h.1zm44.1 91.8h-35.7V194.2h35.7zm0-142.9l-35.7 7.6v-28.9l35.7-7.6zm74.1 145.5c-12.4 0-20-5.3-25.1-9l-.1 40.2-35.5 7.5V194.2h31.3l1.8 8.8c4.9-4.5 13.9-11.1 27.8-11.1 24.9 0 48.4 22.5 48.4 63.8 0 45.1-23.2 65.5-48.6 65.6zm160.4-51.5h-69.5c1.6 16.6 13.8 21.5 27.6 21.5 14.1 0 25.2-3 34.9-7.9V312c-9.7 5.3-22.4 9.2-39.4 9.2-34.6 0-58.8-21.7-58.8-64.5 0-36.2 20.5-64.9 54.3-64.9 33.7 0 51.3 28.7 51.3 65.1 0 3.5-.3 10.9-.4 12.9z\"]\n};\nvar faCcVisa = {\n prefix: 'fab',\n iconName: 'cc-visa',\n icon: [576, 512, [], \"f1f0\", \"M470.1 231.3s7.6 37.2 9.3 45H446c3.3-8.9 16-43.5 16-43.5-.2.3 3.3-9.1 5.3-14.9l2.8 13.4zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM152.5 331.2L215.7 176h-42.5l-39.3 106-4.3-21.5-14-71.4c-2.3-9.9-9.4-12.7-18.2-13.1H32.7l-.7 3.1c15.8 4 29.9 9.8 42.2 17.1l35.8 135h42.5zm94.4.2L272.1 176h-40.2l-25.1 155.4h40.1zm139.9-50.8c.2-17.7-10.6-31.2-33.7-42.3-14.1-7.1-22.7-11.9-22.7-19.2.2-6.6 7.3-13.4 23.1-13.4 13.1-.3 22.7 2.8 29.9 5.9l3.6 1.7 5.5-33.6c-7.9-3.1-20.5-6.6-36-6.6-39.7 0-67.6 21.2-67.8 51.4-.3 22.3 20 34.7 35.2 42.2 15.5 7.6 20.8 12.6 20.8 19.3-.2 10.4-12.6 15.2-24.1 15.2-16 0-24.6-2.5-37.7-8.3l-5.3-2.5-5.6 34.9c9.4 4.3 26.8 8.1 44.8 8.3 42.2.1 69.7-20.8 70-53zM528 331.4L495.6 176h-31.1c-9.6 0-16.9 2.8-21 12.9l-59.7 142.5H426s6.9-19.2 8.4-23.3H486c1.2 5.5 4.8 23.3 4.8 23.3H528z\"]\n};\nvar faCentercode = {\n prefix: 'fab',\n iconName: 'centercode',\n icon: [512, 512, [], \"f380\", \"M329.2 268.6c-3.8 35.2-35.4 60.6-70.6 56.8-35.2-3.8-60.6-35.4-56.8-70.6 3.8-35.2 35.4-60.6 70.6-56.8 35.1 3.8 60.6 35.4 56.8 70.6zm-85.8 235.1C96.7 496-8.2 365.5 10.1 224.3c11.2-86.6 65.8-156.9 139.1-192 161-77.1 349.7 37.4 354.7 216.6 4.1 147-118.4 262.2-260.5 254.8zm179.9-180c27.9-118-160.5-205.9-237.2-234.2-57.5 56.3-69.1 188.6-33.8 344.4 68.8 15.8 169.1-26.4 271-110.2z\"]\n};\nvar faCentos = {\n prefix: 'fab',\n iconName: 'centos',\n icon: [448, 512, [], \"f789\", \"M289.6 97.5l31.6 31.7-76.3 76.5V97.5zm-162.4 31.7l76.3 76.5V97.5h-44.7zm41.5-41.6h44.7v127.9l10.8 10.8 10.8-10.8V87.6h44.7L224.2 32zm26.2 168.1l-10.8-10.8H55.5v-44.8L0 255.7l55.5 55.6v-44.8h128.6l10.8-10.8zm79.3-20.7h107.9v-44.8l-31.6-31.7zm173.3 20.7L392 200.1v44.8H264.3l-10.8 10.8 10.8 10.8H392v44.8l55.5-55.6zM65.4 176.2l32.5-31.7 90.3 90.5h15.3v-15.3l-90.3-90.5 31.6-31.7H65.4zm316.7-78.7h-78.5l31.6 31.7-90.3 90.5V235h15.3l90.3-90.5 31.6 31.7zM203.5 413.9V305.8l-76.3 76.5 31.6 31.7h44.7zM65.4 235h108.8l-76.3-76.5-32.5 31.7zm316.7 100.2l-31.6 31.7-90.3-90.5h-15.3v15.3l90.3 90.5-31.6 31.7h78.5zm0-58.8H274.2l76.3 76.5 31.6-31.7zm-60.9 105.8l-76.3-76.5v108.1h44.7zM97.9 352.9l76.3-76.5H65.4v44.8zm181.8 70.9H235V295.9l-10.8-10.8-10.8 10.8v127.9h-44.7l55.5 55.6zm-166.5-41.6l90.3-90.5v-15.3h-15.3l-90.3 90.5-32.5-31.7v78.7h79.4z\"]\n};\nvar faChrome = {\n prefix: 'fab',\n iconName: 'chrome',\n icon: [496, 512, [], \"f268\", \"M131.5 217.5L55.1 100.1c47.6-59.2 119-91.8 192-92.1 42.3-.3 85.5 10.5 124.8 33.2 43.4 25.2 76.4 61.4 97.4 103L264 133.4c-58.1-3.4-113.4 29.3-132.5 84.1zm32.9 38.5c0 46.2 37.4 83.6 83.6 83.6s83.6-37.4 83.6-83.6-37.4-83.6-83.6-83.6-83.6 37.3-83.6 83.6zm314.9-89.2L339.6 174c37.9 44.3 38.5 108.2 6.6 157.2L234.1 503.6c46.5 2.5 94.4-7.7 137.8-32.9 107.4-62 150.9-192 107.4-303.9zM133.7 303.6L40.4 120.1C14.9 159.1 0 205.9 0 256c0 124 90.8 226.7 209.5 244.9l63.7-124.8c-57.6 10.8-113.2-20.8-139.5-72.5z\"]\n};\nvar faChromecast = {\n prefix: 'fab',\n iconName: 'chromecast',\n icon: [512, 512, [], \"f838\", \"M447.8,64H64c-23.6,0-42.7,19.1-42.7,42.7v63.9H64v-63.9h383.8v298.6H298.6V448H448c23.6,0,42.7-19.1,42.7-42.7V106.7 C490.7,83.1,471.4,64,447.8,64z M21.3,383.6L21.3,383.6l0,63.9h63.9C85.2,412.2,56.6,383.6,21.3,383.6L21.3,383.6z M21.3,298.6V341 c58.9,0,106.6,48.1,106.6,107h42.7C170.7,365.6,103.7,298.7,21.3,298.6z M213.4,448h42.7c-0.5-129.5-105.3-234.3-234.8-234.6l0,42.4 C127.3,255.6,213.3,342,213.4,448z\"]\n};\nvar faCloudflare = {\n prefix: 'fab',\n iconName: 'cloudflare',\n icon: [640, 512, [], \"e07d\", \"M407.906,319.913l-230.8-2.928a4.58,4.58,0,0,1-3.632-1.926,4.648,4.648,0,0,1-.494-4.147,6.143,6.143,0,0,1,5.361-4.076L411.281,303.9c27.631-1.26,57.546-23.574,68.022-50.784l13.286-34.542a7.944,7.944,0,0,0,.524-2.936,7.735,7.735,0,0,0-.164-1.631A151.91,151.91,0,0,0,201.257,198.4,68.12,68.12,0,0,0,94.2,269.59C41.924,271.106,0,313.728,0,366.12a96.054,96.054,0,0,0,1.029,13.958,4.508,4.508,0,0,0,4.445,3.871l426.1.051c.043,0,.08-.019.122-.02a5.606,5.606,0,0,0,5.271-4l3.273-11.265c3.9-13.4,2.448-25.8-4.1-34.9C430.124,325.423,420.09,320.487,407.906,319.913ZM513.856,221.1c-2.141,0-4.271.062-6.391.164a3.771,3.771,0,0,0-3.324,2.653l-9.077,31.193c-3.9,13.4-2.449,25.786,4.1,34.89,6.02,8.4,16.054,13.323,28.238,13.9l49.2,2.939a4.491,4.491,0,0,1,3.51,1.894,4.64,4.64,0,0,1,.514,4.169,6.153,6.153,0,0,1-5.351,4.075l-51.125,2.939c-27.754,1.27-57.669,23.574-68.145,50.784l-3.695,9.606a2.716,2.716,0,0,0,2.427,3.68c.046,0,.088.017.136.017h175.91a4.69,4.69,0,0,0,4.539-3.37,124.807,124.807,0,0,0,4.682-34C640,277.3,583.524,221.1,513.856,221.1Z\"]\n};\nvar faCloudscale = {\n prefix: 'fab',\n iconName: 'cloudscale',\n icon: [448, 512, [], \"f383\", \"M318.1 154l-9.4 7.6c-22.5-19.3-51.5-33.6-83.3-33.6C153.8 128 96 188.8 96 260.3c0 6.6.4 13.1 1.4 19.4-2-56 41.8-97.4 92.6-97.4 24.2 0 46.2 9.4 62.6 24.7l-25.2 20.4c-8.3-.9-16.8 1.8-23.1 8.1-11.1 11-11.1 28.9 0 40 11.1 11 28.9 11 40 0 6.3-6.3 9-14.9 8.1-23.1l75.2-88.8c6.3-6.5-3.3-15.9-9.5-9.6zm-83.8 111.5c-5.6 5.5-14.6 5.5-20.2 0-5.6-5.6-5.6-14.6 0-20.2s14.6-5.6 20.2 0 5.6 14.7 0 20.2zM224 32C100.5 32 0 132.5 0 256s100.5 224 224 224 224-100.5 224-224S347.5 32 224 32zm0 384c-88.2 0-160-71.8-160-160S135.8 96 224 96s160 71.8 160 160-71.8 160-160 160z\"]\n};\nvar faCloudsmith = {\n prefix: 'fab',\n iconName: 'cloudsmith',\n icon: [332, 512, [], \"f384\", \"M332.5 419.9c0 46.4-37.6 84.1-84 84.1s-84-37.7-84-84.1 37.6-84 84-84 84 37.6 84 84zm-84-243.9c46.4 0 80-37.6 80-84s-33.6-84-80-84-88 37.6-88 84-29.6 76-76 76-84 41.6-84 88 37.6 80 84 80 84-33.6 84-80 33.6-80 80-80z\"]\n};\nvar faCloudversify = {\n prefix: 'fab',\n iconName: 'cloudversify',\n icon: [616, 512, [], \"f385\", \"M148.6 304c8.2 68.5 67.4 115.5 146 111.3 51.2 43.3 136.8 45.8 186.4-5.6 69.2 1.1 118.5-44.6 131.5-99.5 14.8-62.5-18.2-132.5-92.1-155.1-33-88.1-131.4-101.5-186.5-85-57.3 17.3-84.3 53.2-99.3 109.7-7.8 2.7-26.5 8.9-45 24.1 11.7 0 15.2 8.9 15.2 19.5v20.4c0 10.7-8.7 19.5-19.5 19.5h-20.2c-10.7 0-19.5-6-19.5-16.7V240H98.8C95 240 88 244.3 88 251.9v40.4c0 6.4 5.3 11.8 11.7 11.8h48.9zm227.4 8c-10.7 46.3 21.7 72.4 55.3 86.8C324.1 432.6 259.7 348 296 288c-33.2 21.6-33.7 71.2-29.2 92.9-17.9-12.4-53.8-32.4-57.4-79.8-3-39.9 21.5-75.7 57-93.9C297 191.4 369.9 198.7 400 248c-14.1-48-53.8-70.1-101.8-74.8 30.9-30.7 64.4-50.3 114.2-43.7 69.8 9.3 133.2 82.8 67.7 150.5 35-16.3 48.7-54.4 47.5-76.9l10.5 19.6c11.8 22 15.2 47.6 9.4 72-9.2 39-40.6 68.8-79.7 76.5-32.1 6.3-83.1-5.1-91.8-59.2zM128 208H88.2c-8.9 0-16.2-7.3-16.2-16.2v-39.6c0-8.9 7.3-16.2 16.2-16.2H128c8.9 0 16.2 7.3 16.2 16.2v39.6c0 8.9-7.3 16.2-16.2 16.2zM10.1 168C4.5 168 0 163.5 0 157.9v-27.8c0-5.6 4.5-10.1 10.1-10.1h27.7c5.5 0 10.1 4.5 10.1 10.1v27.8c0 5.6-4.5 10.1-10.1 10.1H10.1zM168 142.7v-21.4c0-5.1 4.2-9.3 9.3-9.3h21.4c5.1 0 9.3 4.2 9.3 9.3v21.4c0 5.1-4.2 9.3-9.3 9.3h-21.4c-5.1 0-9.3-4.2-9.3-9.3zM56 235.5v25c0 6.3-5.1 11.5-11.4 11.5H19.4C13.1 272 8 266.8 8 260.5v-25c0-6.3 5.1-11.5 11.4-11.5h25.1c6.4 0 11.5 5.2 11.5 11.5z\"]\n};\nvar faCodepen = {\n prefix: 'fab',\n iconName: 'codepen',\n icon: [512, 512, [], \"f1cb\", \"M502.285 159.704l-234-156c-7.987-4.915-16.511-4.96-24.571 0l-234 156C3.714 163.703 0 170.847 0 177.989v155.999c0 7.143 3.714 14.286 9.715 18.286l234 156.022c7.987 4.915 16.511 4.96 24.571 0l234-156.022c6-3.999 9.715-11.143 9.715-18.286V177.989c-.001-7.142-3.715-14.286-9.716-18.285zM278 63.131l172.286 114.858-76.857 51.429L278 165.703V63.131zm-44 0v102.572l-95.429 63.715-76.857-51.429L234 63.131zM44 219.132l55.143 36.857L44 292.846v-73.714zm190 229.715L61.714 333.989l76.857-51.429L234 346.275v102.572zm22-140.858l-77.715-52 77.715-52 77.715 52-77.715 52zm22 140.858V346.275l95.429-63.715 76.857 51.429L278 448.847zm190-156.001l-55.143-36.857L468 219.132v73.714z\"]\n};\nvar faCodiepie = {\n prefix: 'fab',\n iconName: 'codiepie',\n icon: [472, 512, [], \"f284\", \"M422.5 202.9c30.7 0 33.5 53.1-.3 53.1h-10.8v44.3h-26.6v-97.4h37.7zM472 352.6C429.9 444.5 350.4 504 248 504 111 504 0 393 0 256S111 8 248 8c97.4 0 172.8 53.7 218.2 138.4l-186 108.8L472 352.6zm-38.5 12.5l-60.3-30.7c-27.1 44.3-70.4 71.4-122.4 71.4-82.5 0-149.2-66.7-149.2-148.9 0-82.5 66.7-149.2 149.2-149.2 48.4 0 88.9 23.5 116.9 63.4l59.5-34.6c-40.7-62.6-104.7-100-179.2-100-121.2 0-219.5 98.3-219.5 219.5S126.8 475.5 248 475.5c78.6 0 146.5-42.1 185.5-110.4z\"]\n};\nvar faConfluence = {\n prefix: 'fab',\n iconName: 'confluence',\n icon: [512, 512, [], \"f78d\", \"M2.3 412.2c-4.5 7.6-2.1 17.5 5.5 22.2l105.9 65.2c7.7 4.7 17.7 2.4 22.4-5.3 0-.1.1-.2.1-.2 67.1-112.2 80.5-95.9 280.9-.7 8.1 3.9 17.8.4 21.7-7.7.1-.1.1-.3.2-.4l50.4-114.1c3.6-8.1-.1-17.6-8.1-21.3-22.2-10.4-66.2-31.2-105.9-50.3C127.5 179 44.6 345.3 2.3 412.2zm507.4-312.1c4.5-7.6 2.1-17.5-5.5-22.2L398.4 12.8c-7.5-5-17.6-3.1-22.6 4.4-.2.3-.4.6-.6 1-67.3 112.6-81.1 95.6-280.6.9-8.1-3.9-17.8-.4-21.7 7.7-.1.1-.1.3-.2.4L22.2 141.3c-3.6 8.1.1 17.6 8.1 21.3 22.2 10.4 66.3 31.2 106 50.4 248 120 330.8-45.4 373.4-112.9z\"]\n};\nvar faConnectdevelop = {\n prefix: 'fab',\n iconName: 'connectdevelop',\n icon: [576, 512, [], \"f20e\", \"M550.5 241l-50.089-86.786c1.071-2.142 1.875-4.553 1.875-7.232 0-8.036-6.696-14.733-14.732-15.001l-55.447-95.893c.536-1.607 1.071-3.214 1.071-4.821 0-8.571-6.964-15.268-15.268-15.268-4.821 0-8.839 2.143-11.786 5.625H299.518C296.839 18.143 292.821 16 288 16s-8.839 2.143-11.518 5.625H170.411C167.464 18.143 163.447 16 158.625 16c-8.303 0-15.268 6.696-15.268 15.268 0 1.607.536 3.482 1.072 4.821l-55.983 97.233c-5.356 2.41-9.107 7.5-9.107 13.661 0 .535.268 1.071.268 1.607l-53.304 92.143c-7.232 1.339-12.59 7.5-12.59 15 0 7.232 5.089 13.393 12.054 15l55.179 95.358c-.536 1.607-.804 2.946-.804 4.821 0 7.232 5.089 13.393 12.054 14.732l51.697 89.732c-.536 1.607-1.071 3.482-1.071 5.357 0 8.571 6.964 15.268 15.268 15.268 4.821 0 8.839-2.143 11.518-5.357h106.875C279.161 493.857 283.447 496 288 496s8.839-2.143 11.518-5.357h107.143c2.678 2.946 6.696 4.821 10.982 4.821 8.571 0 15.268-6.964 15.268-15.268 0-1.607-.267-2.946-.803-4.285l51.697-90.268c6.964-1.339 12.054-7.5 12.054-14.732 0-1.607-.268-3.214-.804-4.821l54.911-95.358c6.964-1.339 12.322-7.5 12.322-15-.002-7.232-5.092-13.393-11.788-14.732zM153.535 450.732l-43.66-75.803h43.66v75.803zm0-83.839h-43.66c-.268-1.071-.804-2.142-1.339-3.214l44.999-47.41v50.624zm0-62.411l-50.357 53.304c-1.339-.536-2.679-1.34-4.018-1.607L43.447 259.75c.535-1.339.535-2.679.535-4.018s0-2.41-.268-3.482l51.965-90c2.679-.268 5.357-1.072 7.768-2.679l50.089 51.965v92.946zm0-102.322l-45.803-47.41c1.339-2.143 2.143-4.821 2.143-7.767 0-.268-.268-.804-.268-1.072l43.928-15.804v72.053zm0-80.625l-43.66 15.804 43.66-75.536v59.732zm326.519 39.108l.804 1.339L445.5 329.125l-63.75-67.232 98.036-101.518.268.268zM291.75 355.107l11.518 11.786H280.5l11.25-11.786zm-.268-11.25l-83.303-85.446 79.553-84.375 83.036 87.589-79.286 82.232zm5.357 5.893l79.286-82.232 67.5 71.25-5.892 28.125H313.714l-16.875-17.143zM410.411 44.393c1.071.536 2.142 1.072 3.482 1.34l57.857 100.714v.536c0 2.946.803 5.624 2.143 7.767L376.393 256l-83.035-87.589L410.411 44.393zm-9.107-2.143L287.732 162.518l-57.054-60.268 166.339-60h4.287zm-123.483 0c2.678 2.678 6.16 4.285 10.179 4.285s7.5-1.607 10.179-4.285h75L224.786 95.821 173.893 42.25h103.928zm-116.249 5.625l1.071-2.142a33.834 33.834 0 0 0 2.679-.804l51.161 53.84-54.911 19.821V47.875zm0 79.286l60.803-21.964 59.732 63.214-79.553 84.107-40.982-42.053v-83.304zm0 92.678L198 257.607l-36.428 38.304v-76.072zm0 87.858l42.053-44.464 82.768 85.982-17.143 17.678H161.572v-59.196zm6.964 162.053c-1.607-1.607-3.482-2.678-5.893-3.482l-1.071-1.607v-89.732h99.91l-91.607 94.821h-1.339zm129.911 0c-2.679-2.41-6.428-4.285-10.447-4.285s-7.767 1.875-10.447 4.285h-96.429l91.607-94.821h38.304l91.607 94.821H298.447zm120-11.786l-4.286 7.5c-1.339.268-2.41.803-3.482 1.339l-89.196-91.875h114.376l-17.412 83.036zm12.856-22.232l12.858-60.803h21.964l-34.822 60.803zm34.822-68.839h-20.357l4.553-21.16 17.143 18.214c-.535.803-1.071 1.874-1.339 2.946zm66.161-107.411l-55.447 96.697c-1.339.535-2.679 1.071-4.018 1.874l-20.625-21.964 34.554-163.928 45.803 79.286c-.267 1.339-.803 2.678-.803 4.285 0 1.339.268 2.411.536 3.75z\"]\n};\nvar faContao = {\n prefix: 'fab',\n iconName: 'contao',\n icon: [512, 512, [], \"f26d\", \"M45.4 305c14.4 67.1 26.4 129 68.2 175H34c-18.7 0-34-15.2-34-34V66c0-18.7 15.2-34 34-34h57.7C77.9 44.6 65.6 59.2 54.8 75.6c-45.4 70-27 146.8-9.4 229.4zM478 32h-90.2c21.4 21.4 39.2 49.5 52.7 84.1l-137.1 29.3c-14.9-29-37.8-53.3-82.6-43.9-24.6 5.3-41 19.3-48.3 34.6-8.8 18.7-13.2 39.8 8.2 140.3 21.1 100.2 33.7 117.7 49.5 131.2 12.9 11.1 33.4 17 58.3 11.7 44.5-9.4 55.7-40.7 57.4-73.2l137.4-29.6c3.2 71.5-18.7 125.2-57.4 163.6H478c18.7 0 34-15.2 34-34V66c0-18.8-15.2-34-34-34z\"]\n};\nvar faCottonBureau = {\n prefix: 'fab',\n iconName: 'cotton-bureau',\n icon: [512, 512, [], \"f89e\", \"M474.31 330.41c-23.66 91.85-94.23 144.59-201.9 148.35V429.6c0-48 26.41-74.39 74.39-74.39 62 0 99.2-37.2 99.2-99.21 0-61.37-36.53-98.28-97.38-99.06-33-69.32-146.5-64.65-177.24 0C110.52 157.72 74 194.63 74 256c0 62.13 37.27 99.41 99.4 99.41 48 0 74.55 26.23 74.55 74.39V479c-134.43-5-211.1-85.07-211.1-223 0-141.82 81.35-223.2 223.2-223.2 114.77 0 189.84 53.2 214.69 148.81H500C473.88 71.51 388.22 8 259.82 8 105 8 12 101.19 12 255.82 12 411.14 105.19 504.34 259.82 504c128.27 0 213.87-63.81 239.67-173.59zM357 182.33c41.37 3.45 64.2 29 64.2 73.67 0 48-26.43 74.41-74.4 74.41-28.61 0-49.33-9.59-61.59-27.33 83.06-16.55 75.59-99.67 71.79-120.75zm-81.68 97.36c-2.46-10.34-16.33-87 56.23-97 2.27 10.09 16.52 87.11-56.26 97zM260 132c28.61 0 49 9.67 61.44 27.61-28.36 5.48-49.36 20.59-61.59 43.45-12.23-22.86-33.23-38-61.6-43.45 12.41-17.69 33.27-27.35 61.57-27.35zm-71.52 50.72c73.17 10.57 58.91 86.81 56.49 97-72.41-9.84-59-86.95-56.25-97zM173.2 330.41c-48 0-74.4-26.4-74.4-74.41 0-44.36 22.86-70 64.22-73.67-6.75 37.2-1.38 106.53 71.65 120.75-12.14 17.63-32.84 27.3-61.14 27.3zm53.21 12.39A80.8 80.8 0 0 0 260 309.25c7.77 14.49 19.33 25.54 33.82 33.55a80.28 80.28 0 0 0-33.58 33.83c-8-14.5-19.07-26.23-33.56-33.83z\"]\n};\nvar faCpanel = {\n prefix: 'fab',\n iconName: 'cpanel',\n icon: [640, 512, [], \"f388\", \"M210.3 220.2c-5.6-24.8-26.9-41.2-51-41.2h-37c-7.1 0-12.5 4.5-14.3 10.9L73.1 320l24.7-.1c6.8 0 12.3-4.5 14.2-10.7l25.8-95.7h19.8c8.4 0 16.2 5.6 18.3 14.8 2.5 10.9-5.9 22.6-18.3 22.6h-10.3c-7 0-12.5 4.6-14.3 10.8l-6.4 23.8h32c37.2 0 58.3-36.2 51.7-65.3zm-156.5 28h18.6c6.9 0 12.4-4.4 14.3-10.9l6.2-23.6h-40C30 213.7 9 227.8 1.7 254.8-7 288.6 18.5 320 52 320h12.4l7.1-26.1c1.2-4.4-2.2-8.3-6.4-8.3H53.8c-24.7 0-24.9-37.4 0-37.4zm247.5-34.8h-77.9l-3.5 13.4c-2.4 9.6 4.5 18.5 14.2 18.5h57.5c4 0 2.4 4.3 2.1 5.3l-8.6 31.8c-.4 1.4-.9 5.3-5.5 5.3h-34.9c-5.3 0-5.3-7.9 0-7.9h21.6c6.8 0 12.3-4.6 14.2-10.8l3.5-13.2h-48.4c-39.2 0-43.6 63.8-.7 63.8l57.5.2c11.2 0 20.6-7.2 23.4-17.8l14-51.8c4.8-19.2-9.7-36.8-28.5-36.8zM633.1 179h-18.9c-4.9 0-9.2 3.2-10.4 7.9L568.2 320c20.7 0 39.8-13.8 44.9-34.5l26.5-98.2c1.2-4.3-2-8.3-6.5-8.3zm-236.3 34.7v.1h-48.3l-26.2 98c-1.2 4.4 2.2 8.3 6.4 8.3h18.9c4.8 0 9.2-3 10.4-7.8l17.2-64H395c12.5 0 21.4 11.8 18.1 23.4l-10.6 40c-1.2 4.3 1.9 8.3 6.4 8.3H428c4.6 0 9.1-2.9 10.3-7.8l8.8-33.1c9-33.1-15.9-65.4-50.3-65.4zm98.3 74.6c-3.6 0-6-3.4-5.1-6.7l8-30c.9-3.9 3.7-6 7.8-6h32.9c2.6 0 4.6 2.4 3.9 5.1l-.7 2.6c-.6 2-1.9 3-3.9 3h-21.6c-7 0-12.6 4.6-14.2 10.8l-3.5 13h53.4c10.5 0 20.3-6.6 23.2-17.6l3.2-12c4.9-19.1-9.3-36.8-28.3-36.8h-47.3c-17.9 0-33.8 12-38.6 29.6l-10.8 40c-5 17.7 8.3 36.7 28.3 36.7h66.7c6.8 0 12.3-4.5 14.2-10.7l5.7-21z\"]\n};\nvar faCreativeCommons = {\n prefix: 'fab',\n iconName: 'creative-commons',\n icon: [496, 512, [], \"f25e\", \"M245.83 214.87l-33.22 17.28c-9.43-19.58-25.24-19.93-27.46-19.93-22.13 0-33.22 14.61-33.22 43.84 0 23.57 9.21 43.84 33.22 43.84 14.47 0 24.65-7.09 30.57-21.26l30.55 15.5c-6.17 11.51-25.69 38.98-65.1 38.98-22.6 0-73.96-10.32-73.96-77.05 0-58.69 43-77.06 72.63-77.06 30.72-.01 52.7 11.95 65.99 35.86zm143.05 0l-32.78 17.28c-9.5-19.77-25.72-19.93-27.9-19.93-22.14 0-33.22 14.61-33.22 43.84 0 23.55 9.23 43.84 33.22 43.84 14.45 0 24.65-7.09 30.54-21.26l31 15.5c-2.1 3.75-21.39 38.98-65.09 38.98-22.69 0-73.96-9.87-73.96-77.05 0-58.67 42.97-77.06 72.63-77.06 30.71-.01 52.58 11.95 65.56 35.86zM247.56 8.05C104.74 8.05 0 123.11 0 256.05c0 138.49 113.6 248 247.56 248 129.93 0 248.44-100.87 248.44-248 0-137.87-106.62-248-248.44-248zm.87 450.81c-112.54 0-203.7-93.04-203.7-202.81 0-105.42 85.43-203.27 203.72-203.27 112.53 0 202.82 89.46 202.82 203.26-.01 121.69-99.68 202.82-202.84 202.82z\"]\n};\nvar faCreativeCommonsBy = {\n prefix: 'fab',\n iconName: 'creative-commons-by',\n icon: [496, 512, [], \"f4e7\", \"M314.9 194.4v101.4h-28.3v120.5h-77.1V295.9h-28.3V194.4c0-4.4 1.6-8.2 4.6-11.3 3.1-3.1 6.9-4.7 11.3-4.7H299c4.1 0 7.8 1.6 11.1 4.7 3.1 3.2 4.8 6.9 4.8 11.3zm-101.5-63.7c0-23.3 11.5-35 34.5-35s34.5 11.7 34.5 35c0 23-11.5 34.5-34.5 34.5s-34.5-11.5-34.5-34.5zM247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3z\"]\n};\nvar faCreativeCommonsNc = {\n prefix: 'fab',\n iconName: 'creative-commons-nc',\n icon: [496, 512, [], \"f4e8\", \"M247.6 8C387.4 8 496 115.9 496 256c0 147.2-118.5 248-248.4 248C113.1 504 0 393.2 0 256 0 123.1 104.7 8 247.6 8zM55.8 189.1c-7.4 20.4-11.1 42.7-11.1 66.9 0 110.9 92.1 202.4 203.7 202.4 122.4 0 177.2-101.8 178.5-104.1l-93.4-41.6c-7.7 37.1-41.2 53-68.2 55.4v38.1h-28.8V368c-27.5-.3-52.6-10.2-75.3-29.7l34.1-34.5c31.7 29.4 86.4 31.8 86.4-2.2 0-6.2-2.2-11.2-6.6-15.1-14.2-6-1.8-.1-219.3-97.4zM248.4 52.3c-38.4 0-112.4 8.7-170.5 93l94.8 42.5c10-31.3 40.4-42.9 63.8-44.3v-38.1h28.8v38.1c22.7 1.2 43.4 8.9 62 23L295 199.7c-42.7-29.9-83.5-8-70 11.1 53.4 24.1 43.8 19.8 93 41.6l127.1 56.7c4.1-17.4 6.2-35.1 6.2-53.1 0-57-19.8-105-59.3-143.9-39.3-39.9-87.2-59.8-143.6-59.8z\"]\n};\nvar faCreativeCommonsNcEu = {\n prefix: 'fab',\n iconName: 'creative-commons-nc-eu',\n icon: [496, 512, [], \"f4e9\", \"M247.7 8C103.6 8 0 124.8 0 256c0 136.3 111.7 248 247.7 248C377.9 504 496 403.1 496 256 496 117 388.4 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-23.2 3.7-45.2 10.9-66l65.7 29.1h-4.7v29.5h23.3c0 6.2-.4 3.2-.4 19.5h-22.8v29.5h27c11.4 67 67.2 101.3 124.6 101.3 26.6 0 50.6-7.9 64.8-15.8l-10-46.1c-8.7 4.6-28.2 10.8-47.3 10.8-28.2 0-58.1-10.9-67.3-50.2h90.3l128.3 56.8c-1.5 2.1-56.2 104.3-178.8 104.3zm-16.7-190.6l-.5-.4.9.4h-.4zm77.2-19.5h3.7v-29.5h-70.3l-28.6-12.6c2.5-5.5 5.4-10.5 8.8-14.3 12.9-15.8 31.1-22.4 51.1-22.4 18.3 0 35.3 5.4 46.1 10l11.6-47.3c-15-6.6-37-12.4-62.3-12.4-39 0-72.2 15.8-95.9 42.3-5.3 6.1-9.8 12.9-13.9 20.1l-81.6-36.1c64.6-96.8 157.7-93.6 170.7-93.6 113 0 203 90.2 203 203.4 0 18.7-2.1 36.3-6.3 52.9l-136.1-60.5z\"]\n};\nvar faCreativeCommonsNcJp = {\n prefix: 'fab',\n iconName: 'creative-commons-nc-jp',\n icon: [496, 512, [], \"f4ea\", \"M247.7 8C103.6 8 0 124.8 0 256c0 136.4 111.8 248 247.7 248C377.9 504 496 403.2 496 256 496 117.2 388.5 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-21.1 3-41.2 9-60.3l127 56.5h-27.9v38.6h58.1l5.7 11.8v18.7h-63.8V360h63.8v56h61.7v-56h64.2v-35.7l81 36.1c-1.5 2.2-57.1 98.3-175.2 98.3zm87.6-137.3h-57.6v-18.7l2.9-5.6 54.7 24.3zm6.5-51.4v-17.8h-38.6l63-116H301l-43.4 96-23-10.2-39.6-85.7h-65.8l27.3 51-81.9-36.5c27.8-44.1 82.6-98.1 173.7-98.1 112.8 0 203 90 203 203.4 0 21-2.7 40.6-7.9 59l-101-45.1z\"]\n};\nvar faCreativeCommonsNd = {\n prefix: 'fab',\n iconName: 'creative-commons-nd',\n icon: [496, 512, [], \"f4eb\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm94 144.3v42.5H162.1V197h180.3zm0 79.8v42.5H162.1v-42.5h180.3z\"]\n};\nvar faCreativeCommonsPd = {\n prefix: 'fab',\n iconName: 'creative-commons-pd',\n icon: [496, 512, [], \"f4ec\", \"M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm0 449.5c-139.2 0-235.8-138-190.2-267.9l78.8 35.1c-2.1 10.5-3.3 21.5-3.3 32.9 0 99 73.9 126.9 120.4 126.9 22.9 0 53.5-6.7 79.4-29.5L297 311.1c-5.5 6.3-17.6 16.7-36.3 16.7-37.8 0-53.7-39.9-53.9-71.9 230.4 102.6 216.5 96.5 217.9 96.8-34.3 62.4-100.6 104.8-176.7 104.8zm194.2-150l-224-100c18.8-34 54.9-30.7 74.7-11l40.4-41.6c-27.1-23.3-58-27.5-78.1-27.5-47.4 0-80.9 20.5-100.7 51.6l-74.9-33.4c36.1-54.9 98.1-91.2 168.5-91.2 111.1 0 201.5 90.4 201.5 201.5 0 18-2.4 35.4-6.8 52-.3-.1-.4-.2-.6-.4z\"]\n};\nvar faCreativeCommonsPdAlt = {\n prefix: 'fab',\n iconName: 'creative-commons-pd-alt',\n icon: [496, 512, [], \"f4ed\", \"M247.6 8C104.7 8 0 123.1 0 256c0 138.5 113.6 248 247.6 248C377.5 504 496 403.1 496 256 496 118.1 389.4 8 247.6 8zm.8 450.8c-112.5 0-203.7-93-203.7-202.8 0-105.4 85.5-203.3 203.7-203.3 112.6 0 202.9 89.5 202.8 203.3 0 121.7-99.6 202.8-202.8 202.8zM316.7 186h-53.2v137.2h53.2c21.4 0 70-5.1 70-68.6 0-63.4-48.6-68.6-70-68.6zm.8 108.5h-19.9v-79.7l19.4-.1c3.8 0 35-2.1 35 39.9 0 24.6-10.5 39.9-34.5 39.9zM203.7 186h-68.2v137.3h34.6V279h27c54.1 0 57.1-37.5 57.1-46.5 0-31-16.8-46.5-50.5-46.5zm-4.9 67.3h-29.2v-41.6h28.3c30.9 0 28.8 41.6.9 41.6z\"]\n};\nvar faCreativeCommonsRemix = {\n prefix: 'fab',\n iconName: 'creative-commons-remix',\n icon: [496, 512, [], \"f4ee\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm161.7 207.7l4.9 2.2v70c-7.2 3.6-63.4 27.5-67.3 28.8-6.5-1.8-113.7-46.8-137.3-56.2l-64.2 26.6-63.3-27.5v-63.8l59.3-24.8c-.7-.7-.4 5-.4-70.4l67.3-29.7L361 178.5v61.6l49.1 20.3zm-70.4 81.5v-43.8h-.4v-1.8l-113.8-46.5V295l113.8 46.9v-.4l.4.4zm7.5-57.6l39.9-16.4-36.8-15.5-39 16.4 35.9 15.5zm52.3 38.1v-43L355.2 298v43.4l44.3-19z\"]\n};\nvar faCreativeCommonsSa = {\n prefix: 'fab',\n iconName: 'creative-commons-sa',\n icon: [496, 512, [], \"f4ef\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zM137.7 221c13-83.9 80.5-95.7 108.9-95.7 99.8 0 127.5 82.5 127.5 134.2 0 63.6-41 132.9-128.9 132.9-38.9 0-99.1-20-109.4-97h62.5c1.5 30.1 19.6 45.2 54.5 45.2 23.3 0 58-18.2 58-82.8 0-82.5-49.1-80.6-56.7-80.6-33.1 0-51.7 14.6-55.8 43.8h18.2l-49.2 49.2-49-49.2h19.4z\"]\n};\nvar faCreativeCommonsSampling = {\n prefix: 'fab',\n iconName: 'creative-commons-sampling',\n icon: [496, 512, [], \"f4f0\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm3.6 53.2c2.8-.3 11.5 1 11.5 11.5l6.6 107.2 4.9-59.3c0-6 4.7-10.6 10.6-10.6 5.9 0 10.6 4.7 10.6 10.6 0 2.5-.5-5.7 5.7 81.5l5.8-64.2c.3-2.9 2.9-9.3 10.2-9.3 3.8 0 9.9 2.3 10.6 8.9l11.5 96.5 5.3-12.8c1.8-4.4 5.2-6.6 10.2-6.6h58v21.3h-50.9l-18.2 44.3c-3.9 9.9-19.5 9.1-20.8-3.1l-4-31.9-7.5 92.6c-.3 3-3 9.3-10.2 9.3-3 0-9.8-2.1-10.6-9.3 0-1.9.6 5.8-6.2-77.9l-5.3 72.2c-1.1 4.8-4.8 9.3-10.6 9.3-2.9 0-9.8-2-10.6-9.3 0-1.9.5 6.7-5.8-87.7l-5.8 94.8c0 6.3-3.6 12.4-10.6 12.4-5.2 0-10.6-4.1-10.6-12l-5.8-87.7c-5.8 92.5-5.3 84-5.3 85.9-1.1 4.8-4.8 9.3-10.6 9.3-3 0-9.8-2.1-10.6-9.3 0-.7-.4-1.1-.4-2.6l-6.2-88.6L182 348c-.7 6.5-6.7 9.3-10.6 9.3-5.8 0-9.6-4.1-10.6-8.9L149.7 272c-2 4-3.5 8.4-11.1 8.4H87.2v-21.3H132l13.7-27.9c4.4-9.9 18.2-7.2 19.9 2.7l3.1 20.4 8.4-97.9c0-6 4.8-10.6 10.6-10.6.5 0 10.6-.2 10.6 12.4l4.9 69.1 6.6-92.6c0-10.1 9.5-10.6 10.2-10.6.6 0 10.6.7 10.6 10.6l5.3 80.6 6.2-97.9c.1-1.1-.6-10.3 9.9-11.5z\"]\n};\nvar faCreativeCommonsSamplingPlus = {\n prefix: 'fab',\n iconName: 'creative-commons-sampling-plus',\n icon: [496, 512, [], \"f4f1\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm107 205.6c-4.7 0-9 2.8-10.7 7.2l-4 9.5-11-92.8c-1.7-13.9-22-13.4-23.1.4l-4.3 51.4-5.2-68.8c-1.1-14.3-22.1-14.2-23.2 0l-3.5 44.9-5.9-94.3c-.9-14.5-22.3-14.4-23.2 0l-5.1 83.7-4.3-66.3c-.9-14.4-22.2-14.4-23.2 0l-5.3 80.2-4.1-57c-1.1-14.3-22-14.3-23.2-.2l-7.7 89.8-1.8-12.2c-1.7-11.4-17.1-13.6-22-3.3l-13.2 27.7H87.5v23.2h51.3c4.4 0 8.4-2.5 10.4-6.4l10.7 73.1c2 13.5 21.9 13 23.1-.7l3.8-43.6 5.7 78.3c1.1 14.4 22.3 14.2 23.2-.1l4.6-70.4 4.8 73.3c.9 14.4 22.3 14.4 23.2-.1l4.9-80.5 4.5 71.8c.9 14.3 22.1 14.5 23.2.2l4.6-58.6 4.9 64.4c1.1 14.3 22 14.2 23.1.1l6.8-83 2.7 22.3c1.4 11.8 17.7 14.1 22.3 3.1l18-43.4h50.5V258l-58.4.3zm-78 5.2h-21.9v21.9c0 4.1-3.3 7.5-7.5 7.5-4.1 0-7.5-3.3-7.5-7.5v-21.9h-21.9c-4.1 0-7.5-3.3-7.5-7.5 0-4.1 3.4-7.5 7.5-7.5h21.9v-21.9c0-4.1 3.4-7.5 7.5-7.5s7.5 3.3 7.5 7.5v21.9h21.9c4.1 0 7.5 3.3 7.5 7.5 0 4.1-3.4 7.5-7.5 7.5z\"]\n};\nvar faCreativeCommonsShare = {\n prefix: 'fab',\n iconName: 'creative-commons-share',\n icon: [496, 512, [], \"f4f2\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm101 132.4c7.8 0 13.7 6.1 13.7 13.7v182.5c0 7.7-6.1 13.7-13.7 13.7H214.3c-7.7 0-13.7-6-13.7-13.7v-54h-54c-7.8 0-13.7-6-13.7-13.7V131.1c0-8.2 6.6-12.7 12.4-13.7h136.4c7.7 0 13.7 6 13.7 13.7v54h54zM159.9 300.3h40.7V198.9c0-7.4 5.8-12.6 12-13.7h55.8v-40.3H159.9v155.4zm176.2-88.1H227.6v155.4h108.5V212.2z\"]\n};\nvar faCreativeCommonsZero = {\n prefix: 'fab',\n iconName: 'creative-commons-zero',\n icon: [496, 512, [], \"f4f3\", \"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm-.4 60.5c-81.9 0-102.5 77.3-102.5 142.8 0 65.5 20.6 142.8 102.5 142.8S350.5 321.5 350.5 256c0-65.5-20.6-142.8-102.5-142.8zm0 53.9c3.3 0 6.4.5 9.2 1.2 5.9 5.1 8.8 12.1 3.1 21.9l-54.5 100.2c-1.7-12.7-1.9-25.1-1.9-34.4 0-28.8 2-88.9 44.1-88.9zm40.8 46.2c2.9 15.4 3.3 31.4 3.3 42.7 0 28.9-2 88.9-44.1 88.9-13.5 0-32.6-7.7-20.1-26.4l60.9-105.2z\"]\n};\nvar faCriticalRole = {\n prefix: 'fab',\n iconName: 'critical-role',\n icon: [448, 512, [], \"f6c9\", \"M225.82 0c.26.15 216.57 124.51 217.12 124.72 3 1.18 3.7 3.46 3.7 6.56q-.11 125.17 0 250.36a5.88 5.88 0 0 1-3.38 5.78c-21.37 12-207.86 118.29-218.93 124.58h-3C142 466.34 3.08 386.56 2.93 386.48a3.29 3.29 0 0 1-1.88-3.24c0-.87 0-225.94-.05-253.1a5 5 0 0 1 2.93-4.93C27.19 112.11 213.2 6 224.07 0zM215.4 20.42l-.22-.16Q118.06 75.55 21 130.87c0 .12.08.23.13.35l30.86 11.64c-7.71 6-8.32 6-10.65 5.13-.1 0-24.17-9.28-26.8-10v230.43c.88-1.41 64.07-110.91 64.13-111 1.62-2.82 3-1.92 9.12-1.52 1.4.09 1.48.22.78 1.42-41.19 71.33-36.4 63-67.48 116.94-.81 1.4-.61 1.13 1.25 1.13h186.5c1.44 0 1.69-.23 1.7-1.64v-8.88c0-1.34 2.36-.81-18.37-1-7.46-.07-14.14-3.22-21.38-12.7-7.38-9.66-14.62-19.43-21.85-29.21-2.28-3.08-3.45-2.38-16.76-2.38-1.75 0-1.78 0-1.76 1.82.29 26.21.15 25.27 1 32.66.52 4.37 2.16 4.2 9.69 4.81 3.14.26 3.88 4.08.52 4.92-1.57.39-31.6.51-33.67-.1a2.42 2.42 0 0 1 .3-4.73c3.29-.76 6.16.81 6.66-4.44 1.3-13.66 1.17-9 1.1-79.42 0-10.82-.35-12.58-5.36-13.55-1.22-.24-3.54-.16-4.69-.55-2.88-1-2-4.84 1.77-4.85 33.67 0 46.08-1.07 56.06 4.86 7.74 4.61 12 11.48 12.51 20.4.88 14.59-6.51 22.35-15 32.59a1.46 1.46 0 0 0 0 2.22c2.6 3.25 5 6.63 7.71 9.83 27.56 33.23 24.11 30.54 41.28 33.06.89.13 1-.42 1-1.15v-11c0-1 .32-1.43 1.41-1.26a72.37 72.37 0 0 0 23.58-.3c1.08-.15 1.5.2 1.48 1.33 0 .11.88 26.69.87 26.8-.05 1.52.67 1.62 1.89 1.62h186.71Q386.51 304.6 346 234.33c2.26-.66-.4 0 6.69-1.39 2-.39 2.05-.41 3.11 1.44 7.31 12.64 77.31 134 77.37 134.06V138c-1.72.5-103.3 38.72-105.76 39.68-1.08.42-1.55.2-1.91-.88-.63-1.9-1.34-3.76-2.09-5.62-.32-.79-.09-1.13.65-1.39.1 0 95.53-35.85 103-38.77-65.42-37.57-130.56-75-196-112.6l86.82 150.39-.28.33c-9.57-.9-10.46-1.6-11.8-3.94-1-1.69-73.5-127.71-82-142.16-9.1 14.67-83.56 146.21-85.37 146.32-2.93.17-5.88.08-9.25.08q43.25-74.74 86.18-149zm51.93 129.92a37.68 37.68 0 0 0 5.54-.85c1.69-.3 2.53.2 2.6 1.92 0 .11.07 19.06-.86 20.45s-1.88 1.22-2.6-.19c-5-9.69 6.22-9.66-39.12-12-.7 0-1 .23-1 .93 0 .13 3.72 122 3.73 122.11 0 .89.52 1.2 1.21 1.51a83.92 83.92 0 0 1 8.7 4.05c7.31 4.33 11.38 10.84 12.41 19.31 1.44 11.8-2.77 35.77-32.21 37.14-2.75.13-28.26 1.08-34.14-23.25-4.66-19.26 8.26-32.7 19.89-36.4a2.45 2.45 0 0 0 2-2.66c.1-5.63 3-107.1 3.71-121.35.05-1.08-.62-1.16-1.35-1.15-32.35.52-36.75-.34-40.22 8.52-2.42 6.18-4.14 1.32-3.95.23q1.59-9 3.31-18c.4-2.11 1.43-2.61 3.43-1.86 5.59 2.11 6.72 1.7 37.25 1.92 1.73 0 1.78-.08 1.82-1.85.68-27.49.58-22.59 1-29.55a2.69 2.69 0 0 0-1.63-2.8c-5.6-2.91-8.75-7.55-8.9-13.87-.35-14.81 17.72-21.67 27.38-11.51 6.84 7.19 5.8 18.91-2.45 24.15a4.35 4.35 0 0 0-2.22 4.34c0 .59-.11-4.31 1 30.05 0 .9.43 1.12 1.24 1.11.1 0 23-.09 34.47-.37zM68.27 141.7c19.84-4.51 32.68-.56 52.49 1.69 2.76.31 3.74 1.22 3.62 4-.21 5-1.16 22.33-1.24 23.15a2.65 2.65 0 0 1-1.63 2.34c-4.06 1.7-3.61-4.45-4-7.29-3.13-22.43-73.87-32.7-74.63 25.4-.31 23.92 17 53.63 54.08 50.88 27.24-2 19-20.19 24.84-20.47a2.72 2.72 0 0 1 3 3.36c-1.83 10.85-3.42 18.95-3.45 19.15-1.54 9.17-86.7 22.09-93.35-42.06-2.71-25.85 10.44-53.37 40.27-60.15zm80 87.67h-19.49a2.57 2.57 0 0 1-2.66-1.79c2.38-3.75 5.89.92 5.86-6.14-.08-25.75.21-38 .23-40.1 0-3.42-.53-4.65-3.32-4.94-7-.72-3.11-3.37-1.11-3.38 11.84-.1 22.62-.18 30.05.72 8.77 1.07 16.71 12.63 7.93 22.62-2 2.25-4 4.42-6.14 6.73.95 1.15 6.9 8.82 17.28 19.68 2.66 2.78 6.15 3.51 9.88 3.13a2.21 2.21 0 0 0 2.23-2.12c.3-3.42.26 4.73.45-40.58 0-5.65-.34-6.58-3.23-6.83-3.95-.35-4-2.26-.69-3.37l19.09-.09c.32 0 4.49.53 1 3.38 0 .05-.16 0-.24 0-3.61.26-3.94 1-4 4.62-.27 43.93.07 40.23.41 42.82.11.84.27 2.23 5.1 2.14 2.49 0 3.86 3.37 0 3.4-10.37.08-20.74 0-31.11.07-10.67 0-13.47-6.2-24.21-20.82-1.6-2.18-8.31-2.36-8.2-.37.88 16.47 0 17.78 4 17.67 4.75-.1 4.73 3.57.83 3.55zm275-10.15c-1.21 7.13.17 10.38-5.3 10.34-61.55-.42-47.82-.22-50.72-.31a18.4 18.4 0 0 1-3.63-.73c-2.53-.6 1.48-1.23-.38-5.6-1.43-3.37-2.78-6.78-4.11-10.19a1.94 1.94 0 0 0-2-1.44 138 138 0 0 0-14.58.07 2.23 2.23 0 0 0-1.62 1.06c-1.58 3.62-3.07 7.29-4.51 11-1.27 3.23 7.86 1.32 12.19 2.16 3 .57 4.53 3.72.66 3.73H322.9c-2.92 0-3.09-3.15-.74-3.21a6.3 6.3 0 0 0 5.92-3.47c1.5-3 2.8-6 4.11-9.09 18.18-42.14 17.06-40.17 18.42-41.61a1.83 1.83 0 0 1 3 0c2.93 3.34 18.4 44.71 23.62 51.92 2 2.7 5.74 2 6.36 2 3.61.13 4-1.11 4.13-4.29.09-1.87.08 1.17.07-41.24 0-4.46-2.36-3.74-5.55-4.27-.26 0-2.56-.63-.08-3.06.21-.2-.89-.24 21.7-.15 2.32 0 5.32 2.75-1.21 3.45a2.56 2.56 0 0 0-2.66 2.83c-.07 1.63-.19 38.89.29 41.21a3.06 3.06 0 0 0 3.23 2.43c13.25.43 14.92.44 16-3.41 1.67-5.78 4.13-2.52 3.73-.19zm-104.72 64.37c-4.24 0-4.42-3.39-.61-3.41 35.91-.16 28.11.38 37.19-.65 1.68-.19 2.38.24 2.25 1.89-.26 3.39-.64 6.78-1 10.16-.25 2.16-3.2 2.61-3.4-.15-.38-5.31-2.15-4.45-15.63-5.08-1.58-.07-1.64 0-1.64 1.52V304c0 1.65 0 1.6 1.62 1.47 3.12-.25 10.31.34 15.69-1.52.47-.16 3.3-1.79 3.07 1.76 0 .21-.76 10.35-1.18 11.39-.53 1.29-1.88 1.51-2.58.32-1.17-2 0-5.08-3.71-5.3-15.42-.9-12.91-2.55-12.91 6 0 12.25-.76 16.11 3.89 16.24 16.64.48 14.4 0 16.43-5.71.84-2.37 3.5-1.77 3.18.58-.44 3.21-.85 6.43-1.23 9.64 0 .36-.16 2.4-4.66 2.39-37.16-.08-34.54-.19-35.21-.31-2.72-.51-2.2-3 .22-3.45 1.1-.19 4 .54 4.16-2.56 2.44-56.22-.07-51.34-3.91-51.33zm-.41-109.52c2.46.61 3.13 1.76 2.95 4.65-.33 5.3-.34 9-.55 9.69-.66 2.23-3.15 2.12-3.34-.27-.38-4.81-3.05-7.82-7.57-9.15-26.28-7.73-32.81 15.46-27.17 30.22 5.88 15.41 22 15.92 28.86 13.78 5.92-1.85 5.88-6.5 6.91-7.58 1.23-1.3 2.25-1.84 3.12 1.1 0 .1.57 11.89-6 12.75-1.6.21-19.38 3.69-32.68-3.39-21-11.19-16.74-35.47-6.88-45.33 14-14.06 39.91-7.06 42.32-6.47zM289.8 280.14c3.28 0 3.66 3 .16 3.43-2.61.32-5-.42-5 5.46 0 2-.19 29.05.4 41.45.11 2.29 1.15 3.52 3.44 3.65 22 1.21 14.95-1.65 18.79-6.34 1.83-2.24 2.76.84 2.76 1.08.35 13.62-4 12.39-5.19 12.4l-38.16-.19c-1.93-.23-2.06-3-.42-3.38 2-.48 4.94.4 5.13-2.8 1-15.87.57-44.65.34-47.81-.27-3.77-2.8-3.27-5.68-3.71-2.47-.38-2-3.22.34-3.22 1.45-.02 17.97-.03 23.09-.02zm-31.63-57.79c.07 4.08 2.86 3.46 6 3.58 2.61.1 2.53 3.41-.07 3.43-6.48 0-13.7 0-21.61-.06-3.84 0-3.38-3.35 0-3.37 4.49 0 3.24 1.61 3.41-45.54 0-5.08-3.27-3.54-4.72-4.23-2.58-1.23-1.36-3.09.41-3.15 1.29 0 20.19-.41 21.17.21s1.87 1.65-.42 2.86c-1 .52-3.86-.28-4.15 2.47 0 .21-.82 1.63-.07 43.8zm-36.91 274.27a2.93 2.93 0 0 0 3.26 0c17-9.79 182-103.57 197.42-112.51-.14-.43 11.26-.18-181.52-.27-1.22 0-1.57.37-1.53 1.56 0 .1 1.25 44.51 1.22 50.38a28.33 28.33 0 0 1-1.36 7.71c-.55 1.83.38-.5-13.5 32.23-.73 1.72-1 2.21-2-.08-4.19-10.34-8.28-20.72-12.57-31a23.6 23.6 0 0 1-2-10.79c.16-2.46.8-16.12 1.51-48 0-1.95 0-2-2-2h-183c2.58 1.63 178.32 102.57 196 112.76zm-90.9-188.75c0 2.4.36 2.79 2.76 3 11.54 1.17 21 3.74 25.64-7.32 6-14.46 2.66-34.41-12.48-38.84-2-.59-16-2.76-15.94 1.51.05 8.04.01 11.61.02 41.65zm105.75-15.05c0 2.13 1.07 38.68 1.09 39.13.34 9.94-25.58 5.77-25.23-2.59.08-2 1.37-37.42 1.1-39.43-14.1 7.44-14.42 40.21 6.44 48.8a17.9 17.9 0 0 0 22.39-7.07c4.91-7.76 6.84-29.47-5.43-39a2.53 2.53 0 0 1-.36.12zm-12.28-198c-9.83 0-9.73 14.75-.07 14.87s10.1-14.88.07-14.91zm-80.15 103.83c0 1.8.41 2.4 2.17 2.58 13.62 1.39 12.51-11 12.16-13.36-1.69-11.22-14.38-10.2-14.35-7.81.05 4.5-.03 13.68.02 18.59zm212.32 6.4l-6.1-15.84c-2.16 5.48-4.16 10.57-6.23 15.84z\"]\n};\nvar faCss3 = {\n prefix: 'fab',\n iconName: 'css3',\n icon: [512, 512, [], \"f13c\", \"M480 32l-64 368-223.3 80L0 400l19.6-94.8h82l-8 40.6L210 390.2l134.1-44.4 18.8-97.1H29.5l16-82h333.7l10.5-52.7H56.3l16.3-82H480z\"]\n};\nvar faCss3Alt = {\n prefix: 'fab',\n iconName: 'css3-alt',\n icon: [384, 512, [], \"f38b\", \"M0 32l34.9 395.8L192 480l157.1-52.2L384 32H0zm313.1 80l-4.8 47.3L193 208.6l-.3.1h111.5l-12.8 146.6-98.2 28.7-98.8-29.2-6.4-73.9h48.9l3.2 38.3 52.6 13.3 54.7-15.4 3.7-61.6-166.3-.5v-.1l-.2.1-3.6-46.3L193.1 162l6.5-2.7H76.7L70.9 112h242.2z\"]\n};\nvar faCuttlefish = {\n prefix: 'fab',\n iconName: 'cuttlefish',\n icon: [440, 512, [], \"f38c\", \"M344 305.5c-17.5 31.6-57.4 54.5-96 54.5-56.6 0-104-47.4-104-104s47.4-104 104-104c38.6 0 78.5 22.9 96 54.5 13.7-50.9 41.7-93.3 87-117.8C385.7 39.1 320.5 8 248 8 111 8 0 119 0 256s111 248 248 248c72.5 0 137.7-31.1 183-80.7-45.3-24.5-73.3-66.9-87-117.8z\"]\n};\nvar faDAndD = {\n prefix: 'fab',\n iconName: 'd-and-d',\n icon: [576, 512, [], \"f38d\", \"M82.5 98.9c-.6-17.2 2-33.8 12.7-48.2.3 7.4 1.2 14.5 4.2 21.6 5.9-27.5 19.7-49.3 42.3-65.5-1.9 5.9-3.5 11.8-3 17.7 8.7-7.4 18.8-17.8 44.4-22.7 14.7-2.8 29.7-2 42.1 1 38.5 9.3 61 34.3 69.7 72.3 5.3 23.1.7 45-8.3 66.4-5.2 12.4-12 24.4-20.7 35.1-2-1.9-3.9-3.8-5.8-5.6-42.8-40.8-26.8-25.2-37.4-37.4-1.1-1.2-1-2.2-.1-3.6 8.3-13.5 11.8-28.2 10-44-1.1-9.8-4.3-18.9-11.3-26.2-14.5-15.3-39.2-15-53.5.6-11.4 12.5-14.1 27.4-10.9 43.6.2 1.3.4 2.7 0 3.9-3.4 13.7-4.6 27.6-2.5 41.6.1.5.1 1.1.1 1.6 0 .3-.1.5-.2 1.1-21.8-11-36-28.3-43.2-52.2-8.3 17.8-11.1 35.5-6.6 54.1-15.6-15.2-21.3-34.3-22-55.2zm469.6 123.2c-11.6-11.6-25-20.4-40.1-26.6-12.8-5.2-26-7.9-39.9-7.1-10 .6-19.6 3.1-29 6.4-2.5.9-5.1 1.6-7.7 2.2-4.9 1.2-7.3-3.1-4.7-6.8 3.2-4.6 3.4-4.2 15-12 .6-.4 1.2-.8 2.2-1.5h-2.5c-.6 0-1.2.2-1.9.3-19.3 3.3-30.7 15.5-48.9 29.6-10.4 8.1-13.8 3.8-12-.5 1.4-3.5 3.3-6.7 5.1-10 1-1.8 2.3-3.4 3.5-5.1-.2-.2-.5-.3-.7-.5-27 18.3-46.7 42.4-57.7 73.3.3.3.7.6 1 .9.3-.6.5-1.2.9-1.7 10.4-12.1 22.8-21.8 36.6-29.8 18.2-10.6 37.5-18.3 58.7-20.2 4.3-.4 8.7-.1 13.1-.1-1.8.7-3.5.9-5.3 1.1-18.5 2.4-35.5 9-51.5 18.5-30.2 17.9-54.5 42.2-75.1 70.4-.3.4-.4.9-.7 1.3 14.5 5.3 24 17.3 36.1 25.6.2-.1.3-.2.4-.4l1.2-2.7c12.2-26.9 27-52.3 46.7-74.5 16.7-18.8 38-25.3 62.5-20 5.9 1.3 11.4 4.4 17.2 6.8 2.3-1.4 5.1-3.2 8-4.7 8.4-4.3 17.4-7 26.7-9 14.7-3.1 29.5-4.9 44.5-1.3v-.5c-.5-.4-1.2-.8-1.7-1.4zM316.7 397.6c-39.4-33-22.8-19.5-42.7-35.6-.8.9 0-.2-1.9 3-11.2 19.1-25.5 35.3-44 47.6-10.3 6.8-21.5 11.8-34.1 11.8-21.6 0-38.2-9.5-49.4-27.8-12-19.5-13.3-40.7-8.2-62.6 7.8-33.8 30.1-55.2 38.6-64.3-18.7-6.2-33 1.7-46.4 13.9.8-13.9 4.3-26.2 11.8-37.3-24.3 10.6-45.9 25-64.8 43.9-.3-5.8 5.4-43.7 5.6-44.7.3-2.7-.6-5.3-3-7.4-24.2 24.7-44.5 51.8-56.1 84.6 7.4-5.9 14.9-11.4 23.6-16.2-8.3 22.3-19.6 52.8-7.8 101.1 4.6 19 11.9 36.8 24.1 52.3 2.9 3.7 6.3 6.9 9.5 10.3.2-.2.4-.3.6-.5-1.4-7-2.2-14.1-1.5-21.9 2.2 3.2 3.9 6 5.9 8.6 12.6 16 28.7 27.4 47.2 35.6 25 11.3 51.1 13.3 77.9 8.6 54.9-9.7 90.7-48.6 116-98.8 1-1.8.6-2.9-.9-4.2zm172-46.4c-9.5-3.1-22.2-4.2-28.7-2.9 9.9 4 14.1 6.6 18.8 12 12.6 14.4 10.4 34.7-5.4 45.6-11.7 8.1-24.9 10.5-38.9 9.1-1.2-.1-2.3-.4-3-.6 2.8-3.7 6-7 8.1-10.8 9.4-16.8 5.4-42.1-8.7-56.1-2.1-2.1-4.6-3.9-7-5.9-.3 1.3-.1 2.1.1 2.8 4.2 16.6-8.1 32.4-24.8 31.8-7.6-.3-13.9-3.8-19.6-8.5-19.5-16.1-39.1-32.1-58.5-48.3-5.9-4.9-12.5-8.1-20.1-8.7-4.6-.4-9.3-.6-13.9-.9-5.9-.4-8.8-2.8-10.4-8.4-.9-3.4-1.5-6.8-2.2-10.2-1.5-8.1-6.2-13-14.3-14.2-4.4-.7-8.9-1-13.3-1.5-13-1.4-19.8-7.4-22.6-20.3-5 11-1.6 22.4 7.3 29.9 4.5 3.8 9.3 7.3 13.8 11.2 4.6 3.8 7.4 8.7 7.9 14.8.4 4.7.8 9.5 1.8 14.1 2.2 10.6 8.9 18.4 17 25.1 16.5 13.7 33 27.3 49.5 41.1 17.9 15 13.9 32.8 13 56-.9 22.9 12.2 42.9 33.5 51.2 1 .4 2 .6 3.6 1.1-15.7-18.2-10.1-44.1.7-52.3.3 2.2.4 4.3.9 6.4 9.4 44.1 45.4 64.2 85 56.9 16-2.9 30.6-8.9 42.9-19.8 2-1.8 3.7-4.1 5.9-6.5-19.3 4.6-35.8.1-50.9-10.6.7-.3 1.3-.3 1.9-.3 21.3 1.8 40.6-3.4 57-17.4 19.5-16.6 26.6-42.9 17.4-66-8.3-20.1-23.6-32.3-43.8-38.9zM99.4 179.3c-5.3-9.2-13.2-15.6-22.1-21.3 13.7-.5 26.6.2 39.6 3.7-7-12.2-8.5-24.7-5-38.7 5.3 11.9 13.7 20.1 23.6 26.8 19.7 13.2 35.7 19.6 46.7 30.2 3.4 3.3 6.3 7.1 9.6 10.9-.8-2.1-1.4-4.1-2.2-6-5-10.6-13-18.6-22.6-25-1.8-1.2-2.8-2.5-3.4-4.5-3.3-12.5-3-25.1-.7-37.6 1-5.5 2.8-10.9 4.5-16.3.8-2.4 2.3-4.6 4-6.6.6 6.9 0 25.5 19.6 46 10.8 11.3 22.4 21.9 33.9 32.7 9 8.5 18.3 16.7 25.5 26.8 1.1 1.6 2.2 3.3 3.8 4.7-5-13-14.2-24.1-24.2-33.8-9.6-9.3-19.4-18.4-29.2-27.4-3.3-3-4.6-6.7-5.1-10.9-1.2-10.4 0-20.6 4.3-30.2.5-1 1.1-2 1.9-3.3.5 4.2.6 7.9 1.4 11.6 4.8 23.1 20.4 36.3 49.3 63.5 10 9.4 19.3 19.2 25.6 31.6 4.8 9.3 7.3 19 5.7 29.6-.1.6.5 1.7 1.1 2 6.2 2.6 10 6.9 9.7 14.3 7.7-2.6 12.5-8 16.4-14.5 4.2 20.2-9.1 50.3-27.2 58.7.4-4.5 5-23.4-16.5-27.7-6.8-1.3-12.8-1.3-22.9-2.1 4.7-9 10.4-20.6.5-22.4-24.9-4.6-52.8 1.9-57.8 4.6 8.2.4 16.3 1 23.5 3.3-2 6.5-4 12.7-5.8 18.9-1.9 6.5 2.1 14.6 9.3 9.6 1.2-.9 2.3-1.9 3.3-2.7-3.1 17.9-2.9 15.9-2.8 18.3.3 10.2 9.5 7.8 15.7 7.3-2.5 11.8-29.5 27.3-45.4 25.8 7-4.7 12.7-10.3 15.9-17.9-6.5.8-12.9 1.6-19.2 2.4l-.3-.9c4.7-3.4 8-7.8 10.2-13.1 8.7-21.1-3.6-38-25-39.9-9.1-.8-17.8.8-25.9 5.5 6.2-15.6 17.2-26.6 32.6-34.5-15.2-4.3-8.9-2.7-24.6-6.3 14.6-9.3 30.2-13.2 46.5-14.6-5.2-3.2-48.1-3.6-70.2 20.9 7.9 1.4 15.5 2.8 23.2 4.2-23.8 7-44 19.7-62.4 35.6 1.1-4.8 2.7-9.5 3.3-14.3.6-4.5.8-9.2.1-13.6-1.5-9.4-8.9-15.1-19.7-16.3-7.9-.9-15.6.1-23.3 1.3-.9.1-1.7.3-2.9 0 15.8-14.8 36-21.7 53.1-33.5 6-4.5 6.8-8.2 3-14.9zm128.4 26.8c3.3 16 12.6 25.5 23.8 24.3-4.6-11.3-12.1-19.5-23.8-24.3z\"]\n};\nvar faDAndDBeyond = {\n prefix: 'fab',\n iconName: 'd-and-d-beyond',\n icon: [640, 512, [], \"f6ca\", \"M313.8 241.5c13.8 0 21-10.1 24.8-17.9-1-1.1-5-4.2-7.4-6.6-2.4 4.3-8.2 10.7-13.9 10.7-10.2 0-15.4-14.7-3.2-26.6-.5-.2-4.3-1.8-8 2.4 0-3 1-5.1 2.1-6.6-3.5 1.3-9.8 5.6-11.4 7.9.2-5.8 1.6-7.5.6-9l-.2-.2s-8.5 5.6-9.3 14.7c0 0 1.1-1.6 2.1-1.9.6-.3 1.3 0 .6 1.9-.2.6-5.8 15.7 5.1 26-.6-1.6-1.9-7.6 2.4-1.9-.3.1 5.8 7.1 15.7 7.1zm52.4-21.1c0-4-4.9-4.4-5.6-4.5 2 3.9.9 7.5.2 9 2.5-.4 5.4-1.6 5.4-4.5zm10.3 5.2c0-6.4-6.2-11.4-13.5-10.7 8 1.3 5.6 13.8-5 11.4 3.7-2.6 3.2-9.9-1.3-12.5 1.4 4.2-3 8.2-7.4 4.6-2.4-1.9-8-6.6-10.6-8.6-2.4-2.1-5.5-1-6.6-1.8-1.3-1.1-.5-3.8-2.2-5-1.6-.8-3-.3-4.8-1-1.6-.6-2.7-1.9-2.6-3.5-2.5 4.4 3.4 6.3 4.5 8.5 1 1.9-.8 4.8 4 8.5 14.8 11.6 9.1 8 10.4 18.1.6 4.3 4.2 6.7 6.4 7.4-2.1-1.9-2.9-6.4 0-9.3 0 13.9 19.2 13.3 23.1 6.4-2.4 1.1-7-.2-9-1.9 7.7 1 14.2-4.1 14.6-10.6zm-39.4-18.4c2 .8 1.6.7 6.4 4.5 10.2-24.5 21.7-15.7 22-15.5 2.2-1.9 9.8-3.8 13.8-2.7-2.4-2.7-7.5-6.2-13.3-6.2-4.7 0-7.4 2.2-8 1.3-.8-1.4 3.2-3.4 3.2-3.4-5.4.2-9.6 6.7-11.2 5.9-1.1-.5 1.4-3.7 1.4-3.7-5.1 2.9-9.3 9.1-10.2 13 4.6-5.8 13.8-9.8 19.7-9-10.5.5-19.5 9.7-23.8 15.8zm242.5 51.9c-20.7 0-40 1.3-50.3 2.1l7.4 8.2v77.2l-7.4 8.2c10.4.8 30.9 2.1 51.6 2.1 42.1 0 59.1-20.7 59.1-48.9 0-29.3-23.2-48.9-60.4-48.9zm-15.1 75.6v-53.3c30.1-3.3 46.8 3.8 46.8 26.3 0 25.6-21.4 30.2-46.8 27zM301.6 181c-1-3.4-.2-6.9 1.1-9.4 1 3 2.6 6.4 7.5 9-.5-2.4-.2-5.6.5-8-1.4-5.4 2.1-9.9 6.4-9.9 6.9 0 8.5 8.8 4.7 14.4 2.1 3.2 5.5 5.6 7.7 7.8 3.2-3.7 5.5-9.5 5.5-13.8 0-8.2-5.5-15.9-16.7-16.5-20-.9-20.2 16.6-20 18.9.5 5.2 3.4 7.8 3.3 7.5zm-.4 6c-.5 1.8-7 3.7-10.2 6.9 4.8-1 7-.2 7.8 1.8.5 1.4-.2 3.4-.5 5.6 1.6-1.8 7-5.5 11-6.2-1-.3-3.4-.8-4.3-.8 2.9-3.4 9.3-4.5 12.8-3.7-2.2-.2-6.7 1.1-8.5 2.6 1.6.3 3 .6 4.3 1.1-2.1.8-4.8 3.4-5.8 6.1 7-5 13.1 5.2 7 8.2.8.2 2.7 0 3.5-.5-.3 1.1-1.9 3-3 3.4 2.9 0 7-1.9 8.2-4.6 0 0-1.8.6-2.6-.2s.3-4.3.3-4.3c-2.3 2.9-3.4-1.3-1.3-4.2-1-.3-3.5-.6-4.6-.5 3.2-1.1 10.4-1.8 11.2-.3.6 1.1-1 3.4-1 3.4 4-.5 8.3 1.1 6.7 5.1 2.9-1.4 5.5-5.9 4.8-10.4-.3 1-1.6 2.4-2.9 2.7.2-1.4-1-2.2-1.9-2.6 1.7-9.6-14.6-14.2-14.1-23.9-1 1.3-1.8 5-.8 7.1 2.7 3.2 8.7 6.7 10.1 12.2-2.6-6.4-15.1-11.4-14.6-20.2-1.6 1.6-2.6 7.8-1.3 11 2.4 1.4 4.5 3.8 4.8 6.1-2.2-5.1-11.4-6.1-13.9-12.2-.6 2.2-.3 5 1 6.7 0 0-2.2-.8-7-.6 1.7.6 5.1 3.5 4.8 5.2zm25.9 7.4c-2.7 0-3.5-2.1-4.2-4.3 3.3 1.3 4.2 4.3 4.2 4.3zm38.9 3.7l-1-.6c-1.1-1-2.9-1.4-4.7-1.4-2.9 0-5.8 1.3-7.5 3.4-.8.8-1.4 1.8-2.1 2.6v15.7c3.5 2.6 7.1-2.9 3-7.2 1.5.3 4.6 2.7 5.1 3.2 0 0 2.6-.5 5-.5 2.1 0 3.9.3 5.6 1.1V196c-1.1.5-2.2 1-2.7 1.4zM79.9 305.9c17.2-4.6 16.2-18 16.2-19.9 0-20.6-24.1-25-37-25H3l8.3 8.6v29.5H0l11.4 14.6V346L3 354.6c61.7 0 73.8 1.5 86.4-5.9 6.7-4 9.9-9.8 9.9-17.6 0-5.1 2.6-18.8-19.4-25.2zm-41.3-27.5c20 0 29.6-.8 29.6 9.1v3c0 12.1-19 8.8-29.6 8.8zm0 59.2V315c12.2 0 32.7-2.3 32.7 8.8v4.5h.2c0 11.2-12.5 9.3-32.9 9.3zm101.2-19.3l23.1.2v-.2l14.1-21.2h-37.2v-14.9h52.4l-14.1-21v-.2l-73.5.2 7.4 8.2v77.1l-7.4 8.2h81.2l14.1-21.2-60.1.2zm214.7-60.1c-73.9 0-77.5 99.3-.3 99.3 77.9 0 74.1-99.3.3-99.3zm-.3 77.5c-37.4 0-36.9-55.3.2-55.3 36.8.1 38.8 55.3-.2 55.3zm-91.3-8.3l44.1-66.2h-41.7l6.1 7.2-20.5 37.2h-.3l-21-37.2 6.4-7.2h-44.9l44.1 65.8.2 19.4-7.7 8.2h42.6l-7.2-8.2zm-28.4-151.3c1.6 1.3 2.9 2.4 2.9 6.6v38.8c0 4.2-.8 5.3-2.7 6.4-.1.1-7.5 4.5-7.9 4.6h35.1c10 0 17.4-1.5 26-8.6-.6-5 .2-9.5.8-12 0-.2-1.8 1.4-2.7 3.5 0-5.7 1.6-15.4 9.6-20.5-.1 0-3.7-.8-9 1.1 2-3.1 10-7.9 10.4-7.9-8.2-26-38-22.9-32.2-22.9-30.9 0-32.6.3-39.9-4 .1.8.5 8.2 9.6 14.9zm21.5 5.5c4.6 0 23.1-3.3 23.1 17.3 0 20.7-18.4 17.3-23.1 17.3zm228.9 79.6l7 8.3V312h-.3c-5.4-14.4-42.3-41.5-45.2-50.9h-31.6l7.4 8.5v76.9l-7.2 8.3h39l-7.4-8.2v-47.4h.3c3.7 10.6 44.5 42.9 48.5 55.6h21.3v-85.2l7.4-8.3zm-106.7-96.1c-32.2 0-32.8.2-39.9-4 .1.7.5 8.3 9.6 14.9 3.1 2 2.9 4.3 2.9 9.5 1.8-1.1 3.8-2.2 6.1-3-1.1 1.1-2.7 2.7-3.5 4.5 1-1.1 7.5-5.1 14.6-3.5-1.6.3-4 1.1-6.1 2.9.1 0 2.1-1.1 7.5-.3v-4.3c4.7 0 23.1-3.4 23.1 17.3 0 20.5-18.5 17.3-19.7 17.3 5.7 4.4 5.8 12 2.2 16.3h.3c33.4 0 36.7-27.3 36.7-34 0-3.8-1.1-32-33.8-33.6z\"]\n};\nvar faDailymotion = {\n prefix: 'fab',\n iconName: 'dailymotion',\n icon: [448, 512, [], \"e052\", \"M298.93,267a48.4,48.4,0,0,0-24.36-6.21q-19.83,0-33.44,13.27t-13.61,33.42q0,21.16,13.28,34.6t33.43,13.44q20.5,0,34.11-13.78T322,307.47A47.13,47.13,0,0,0,315.9,284,44.13,44.13,0,0,0,298.93,267ZM0,32V480H448V32ZM374.71,405.26h-53.1V381.37h-.67q-15.79,26.2-55.78,26.2-27.56,0-48.89-13.1a88.29,88.29,0,0,1-32.94-35.77q-11.6-22.68-11.59-50.89,0-27.56,11.76-50.22a89.9,89.9,0,0,1,32.93-35.78q21.18-13.09,47.72-13.1a80.87,80.87,0,0,1,29.74,5.21q13.28,5.21,25,17V153l55.79-12.09Z\"]\n};\nvar faDashcube = {\n prefix: 'fab',\n iconName: 'dashcube',\n icon: [448, 512, [], \"f210\", \"M326.6 104H110.4c-51.1 0-91.2 43.3-91.2 93.5V427c0 50.5 40.1 85 91.2 85h227.2c51.1 0 91.2-34.5 91.2-85V0L326.6 104zM153.9 416.5c-17.7 0-32.4-15.1-32.4-32.8V240.8c0-17.7 14.7-32.5 32.4-32.5h140.7c17.7 0 32 14.8 32 32.5v123.5l51.1 52.3H153.9z\"]\n};\nvar faDeezer = {\n prefix: 'fab',\n iconName: 'deezer',\n icon: [576, 512, [], \"e077\", \"M451.46,244.71H576V172H451.46Zm0-173.89v72.67H576V70.82Zm0,275.06H576V273.2H451.46ZM0,447.09H124.54V374.42H0Zm150.47,0H275V374.42H150.47Zm150.52,0H425.53V374.42H301Zm150.47,0H576V374.42H451.46ZM301,345.88H425.53V273.2H301Zm-150.52,0H275V273.2H150.47Zm0-101.17H275V172H150.47Z\"]\n};\nvar faDelicious = {\n prefix: 'fab',\n iconName: 'delicious',\n icon: [448, 512, [], \"f1a5\", \"M446.5 68c-.4-1.5-.9-3-1.4-4.5-.9-2.5-2-4.8-3.3-7.1-1.4-2.4-3-4.8-4.7-6.9-2.1-2.5-4.4-4.8-6.9-6.8-1.1-.9-2.2-1.7-3.3-2.5-1.3-.9-2.6-1.7-4-2.4-1.8-1-3.6-1.8-5.5-2.5-1.7-.7-3.5-1.3-5.4-1.7-3.8-1-7.9-1.5-12-1.5H48C21.5 32 0 53.5 0 80v352c0 4.1.5 8.2 1.5 12 2 7.7 5.8 14.6 11 20.3 1 1.1 2.1 2.2 3.3 3.3 5.7 5.2 12.6 9 20.3 11 3.8 1 7.9 1.5 12 1.5h352c26.5 0 48-21.5 48-48V80c-.1-4.1-.6-8.2-1.6-12zM416 432c0 8.8-7.2 16-16 16H224V256H32V80c0-8.8 7.2-16 16-16h176v192h192z\"]\n};\nvar faDeploydog = {\n prefix: 'fab',\n iconName: 'deploydog',\n icon: [512, 512, [], \"f38e\", \"M382.2 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.6 0-33.2 16.4-33.2 32.6zM188.5 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.7 0-33.2 16.4-33.2 32.6zM448 96c17.5 0 32 14.4 32 32v256c0 17.5-14.4 32-32 32H64c-17.5 0-32-14.4-32-32V128c0-17.5 14.4-32 32-32h384m0-32H64C28.8 64 0 92.8 0 128v256c0 35.2 28.8 64 64 64h384c35.2 0 64-28.8 64-64V128c0-35.2-28.8-64-64-64z\"]\n};\nvar faDeskpro = {\n prefix: 'fab',\n iconName: 'deskpro',\n icon: [480, 512, [], \"f38f\", \"M205.9 512l31.1-38.4c12.3-.2 25.6-1.4 36.5-6.6 38.9-18.6 38.4-61.9 38.3-63.8-.1-5-.8-4.4-28.9-37.4H362c-.2 50.1-7.3 68.5-10.2 75.7-9.4 23.7-43.9 62.8-95.2 69.4-8.7 1.1-32.8 1.2-50.7 1.1zm200.4-167.7c38.6 0 58.5-13.6 73.7-30.9l-175.5-.3-17.4 31.3 119.2-.1zm-43.6-223.9v168.3h-73.5l-32.7 55.5H250c-52.3 0-58.1-56.5-58.3-58.9-1.2-13.2-21.3-11.6-20.1 1.8 1.4 15.8 8.8 40 26.4 57.1h-91c-25.5 0-110.8-26.8-107-114V16.9C0 .9 9.7.3 15 .1h82c.2 0 .3.1.5.1 4.3-.4 50.1-2.1 50.1 43.7 0 13.3 20.2 13.4 20.2 0 0-18.2-5.5-32.8-15.8-43.7h84.2c108.7-.4 126.5 79.4 126.5 120.2zm-132.5 56l64 29.3c13.3-45.5-42.2-71.7-64-29.3z\"]\n};\nvar faDev = {\n prefix: 'fab',\n iconName: 'dev',\n icon: [448, 512, [], \"f6cc\", \"M120.12 208.29c-3.88-2.9-7.77-4.35-11.65-4.35H91.03v104.47h17.45c3.88 0 7.77-1.45 11.65-4.35 3.88-2.9 5.82-7.25 5.82-13.06v-69.65c-.01-5.8-1.96-10.16-5.83-13.06zM404.1 32H43.9C19.7 32 .06 51.59 0 75.8v360.4C.06 460.41 19.7 480 43.9 480h360.2c24.21 0 43.84-19.59 43.9-43.8V75.8c-.06-24.21-19.7-43.8-43.9-43.8zM154.2 291.19c0 18.81-11.61 47.31-48.36 47.25h-46.4V172.98h47.38c35.44 0 47.36 28.46 47.37 47.28l.01 70.93zm100.68-88.66H201.6v38.42h32.57v29.57H201.6v38.41h53.29v29.57h-62.18c-11.16.29-20.44-8.53-20.72-19.69V193.7c-.27-11.15 8.56-20.41 19.71-20.69h63.19l-.01 29.52zm103.64 115.29c-13.2 30.75-36.85 24.63-47.44 0l-38.53-144.8h32.57l29.71 113.72 29.57-113.72h32.58l-38.46 144.8z\"]\n};\nvar faDeviantart = {\n prefix: 'fab',\n iconName: 'deviantart',\n icon: [320, 512, [], \"f1bd\", \"M320 93.2l-98.2 179.1 7.4 9.5H320v127.7H159.1l-13.5 9.2-43.7 84c-.3 0-8.6 8.6-9.2 9.2H0v-93.2l93.2-179.4-7.4-9.2H0V102.5h156l13.5-9.2 43.7-84c.3 0 8.6-8.6 9.2-9.2H320v93.1z\"]\n};\nvar faDhl = {\n prefix: 'fab',\n iconName: 'dhl',\n icon: [640, 512, [], \"f790\", \"M238 301.2h58.7L319 271h-58.7L238 301.2zM0 282.9v6.4h81.8l4.7-6.4H0zM172.9 271c-8.7 0-6-3.6-4.6-5.5 2.8-3.8 7.6-10.4 10.4-14.1 2.8-3.7 2.8-5.9-2.8-5.9h-51l-41.1 55.8h100.1c33.1 0 51.5-22.5 57.2-30.3h-68.2zm317.5-6.9l39.3-53.4h-62.2l-39.3 53.4h62.2zM95.3 271H0v6.4h90.6l4.7-6.4zm111-26.6c-2.8 3.8-7.5 10.4-10.3 14.2-1.4 2-4.1 5.5 4.6 5.5h45.6s7.3-10 13.5-18.4c8.4-11.4.7-35-29.2-35H112.6l-20.4 27.8h111.4c5.6 0 5.5 2.2 2.7 5.9zM0 301.2h73.1l4.7-6.4H0v6.4zm323 0h58.7L404 271h-58.7c-.1 0-22.3 30.2-22.3 30.2zm222 .1h95v-6.4h-90.3l-4.7 6.4zm22.3-30.3l-4.7 6.4H640V271h-72.7zm-13.5 18.3H640v-6.4h-81.5l-4.7 6.4zm-164.2-78.6l-22.5 30.6h-26.2l22.5-30.6h-58.7l-39.3 53.4H409l39.3-53.4h-58.7zm33.5 60.3s-4.3 5.9-6.4 8.7c-7.4 10-.9 21.6 23.2 21.6h94.3l22.3-30.3H423.1z\"]\n};\nvar faDiaspora = {\n prefix: 'fab',\n iconName: 'diaspora',\n icon: [512, 512, [], \"f791\", \"M251.64 354.55c-1.4 0-88 119.9-88.7 119.9S76.34 414 76 413.25s86.6-125.7 86.6-127.4c0-2.2-129.6-44-137.6-47.1-1.3-.5 31.4-101.8 31.7-102.1.6-.7 144.4 47 145.5 47 .4 0 .9-.6 1-1.3.4-2 1-148.6 1.7-149.6.8-1.2 104.5-.7 105.1-.3 1.5 1 3.5 156.1 6.1 156.1 1.4 0 138.7-47 139.3-46.3.8.9 31.9 102.2 31.5 102.6-.9.9-140.2 47.1-140.6 48.8-.3 1.4 82.8 122.1 82.5 122.9s-85.5 63.5-86.3 63.5c-1-.2-89-125.5-90.9-125.5z\"]\n};\nvar faDigg = {\n prefix: 'fab',\n iconName: 'digg',\n icon: [512, 512, [], \"f1a6\", \"M81.7 172.3H0v174.4h132.7V96h-51v76.3zm0 133.4H50.9v-92.3h30.8v92.3zm297.2-133.4v174.4h81.8v28.5h-81.8V416H512V172.3H378.9zm81.8 133.4h-30.8v-92.3h30.8v92.3zm-235.6 41h82.1v28.5h-82.1V416h133.3V172.3H225.1v174.4zm51.2-133.3h30.8v92.3h-30.8v-92.3zM153.3 96h51.3v51h-51.3V96zm0 76.3h51.3v174.4h-51.3V172.3z\"]\n};\nvar faDigitalOcean = {\n prefix: 'fab',\n iconName: 'digital-ocean',\n icon: [512, 512, [], \"f391\", \"M87 481.8h73.7v-73.6H87zM25.4 346.6v61.6H87v-61.6zm466.2-169.7c-23-74.2-82.4-133.3-156.6-156.6C164.9-32.8 8 93.7 8 255.9h95.8c0-101.8 101-180.5 208.1-141.7 39.7 14.3 71.5 46.1 85.8 85.7 39.1 107-39.7 207.8-141.4 208v.3h-.3V504c162.6 0 288.8-156.8 235.6-327.1zm-235.3 231v-95.3h-95.6v95.6H256v-.3z\"]\n};\nvar faDiscord = {\n prefix: 'fab',\n iconName: 'discord',\n icon: [640, 512, [], \"f392\", \"M524.531,69.836a1.5,1.5,0,0,0-.764-.7A485.065,485.065,0,0,0,404.081,32.03a1.816,1.816,0,0,0-1.923.91,337.461,337.461,0,0,0-14.9,30.6,447.848,447.848,0,0,0-134.426,0,309.541,309.541,0,0,0-15.135-30.6,1.89,1.89,0,0,0-1.924-.91A483.689,483.689,0,0,0,116.085,69.137a1.712,1.712,0,0,0-.788.676C39.068,183.651,18.186,294.69,28.43,404.354a2.016,2.016,0,0,0,.765,1.375A487.666,487.666,0,0,0,176.02,479.918a1.9,1.9,0,0,0,2.063-.676A348.2,348.2,0,0,0,208.12,430.4a1.86,1.86,0,0,0-1.019-2.588,321.173,321.173,0,0,1-45.868-21.853,1.885,1.885,0,0,1-.185-3.126c3.082-2.309,6.166-4.711,9.109-7.137a1.819,1.819,0,0,1,1.9-.256c96.229,43.917,200.41,43.917,295.5,0a1.812,1.812,0,0,1,1.924.233c2.944,2.426,6.027,4.851,9.132,7.16a1.884,1.884,0,0,1-.162,3.126,301.407,301.407,0,0,1-45.89,21.83,1.875,1.875,0,0,0-1,2.611,391.055,391.055,0,0,0,30.014,48.815,1.864,1.864,0,0,0,2.063.7A486.048,486.048,0,0,0,610.7,405.729a1.882,1.882,0,0,0,.765-1.352C623.729,277.594,590.933,167.465,524.531,69.836ZM222.491,337.58c-28.972,0-52.844-26.587-52.844-59.239S193.056,219.1,222.491,219.1c29.665,0,53.306,26.82,52.843,59.239C275.334,310.993,251.924,337.58,222.491,337.58Zm195.38,0c-28.971,0-52.843-26.587-52.843-59.239S388.437,219.1,417.871,219.1c29.667,0,53.307,26.82,52.844,59.239C470.715,310.993,447.538,337.58,417.871,337.58Z\"]\n};\nvar faDiscourse = {\n prefix: 'fab',\n iconName: 'discourse',\n icon: [448, 512, [], \"f393\", \"M225.9 32C103.3 32 0 130.5 0 252.1 0 256 .1 480 .1 480l225.8-.2c122.7 0 222.1-102.3 222.1-223.9C448 134.3 348.6 32 225.9 32zM224 384c-19.4 0-37.9-4.3-54.4-12.1L88.5 392l22.9-75c-9.8-18.1-15.4-38.9-15.4-61 0-70.7 57.3-128 128-128s128 57.3 128 128-57.3 128-128 128z\"]\n};\nvar faDochub = {\n prefix: 'fab',\n iconName: 'dochub',\n icon: [416, 512, [], \"f394\", \"M397.9 160H256V19.6L397.9 160zM304 192v130c0 66.8-36.5 100.1-113.3 100.1H96V84.8h94.7c12 0 23.1.8 33.1 2.5v-84C212.9 1.1 201.4 0 189.2 0H0v512h189.2C329.7 512 400 447.4 400 318.1V192h-96z\"]\n};\nvar faDocker = {\n prefix: 'fab',\n iconName: 'docker',\n icon: [640, 512, [], \"f395\", \"M349.9 236.3h-66.1v-59.4h66.1v59.4zm0-204.3h-66.1v60.7h66.1V32zm78.2 144.8H362v59.4h66.1v-59.4zm-156.3-72.1h-66.1v60.1h66.1v-60.1zm78.1 0h-66.1v60.1h66.1v-60.1zm276.8 100c-14.4-9.7-47.6-13.2-73.1-8.4-3.3-24-16.7-44.9-41.1-63.7l-14-9.3-9.3 14c-18.4 27.8-23.4 73.6-3.7 103.8-8.7 4.7-25.8 11.1-48.4 10.7H2.4c-8.7 50.8 5.8 116.8 44 162.1 37.1 43.9 92.7 66.2 165.4 66.2 157.4 0 273.9-72.5 328.4-204.2 21.4.4 67.6.1 91.3-45.2 1.5-2.5 6.6-13.2 8.5-17.1l-13.3-8.9zm-511.1-27.9h-66v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm-78.1-72.1h-66.1v60.1h66.1v-60.1z\"]\n};\nvar faDraft2digital = {\n prefix: 'fab',\n iconName: 'draft2digital',\n icon: [480, 512, [], \"f396\", \"M480 398.1l-144-82.2v64.7h-91.3c30.8-35 81.8-95.9 111.8-149.3 35.2-62.6 16.1-123.4-12.8-153.3-4.4-4.6-62.2-62.9-166-41.2-59.1 12.4-89.4 43.4-104.3 67.3-13.1 20.9-17 39.8-18.2 47.7-5.5 33 19.4 67.1 56.7 67.1 31.7 0 57.3-25.7 57.3-57.4 0-27.1-19.7-52.1-48-56.8 1.8-7.3 17.7-21.1 26.3-24.7 41.1-17.3 78 5.2 83.3 33.5 8.3 44.3-37.1 90.4-69.7 127.6C84.5 328.1 18.3 396.8 0 415.9l336-.1V480zM369.9 371l47.1 27.2-47.1 27.2zM134.2 161.4c0 12.4-10 22.4-22.4 22.4s-22.4-10-22.4-22.4 10-22.4 22.4-22.4 22.4 10.1 22.4 22.4zM82.5 380.5c25.6-27.4 97.7-104.7 150.8-169.9 35.1-43.1 40.3-82.4 28.4-112.7-7.4-18.8-17.5-30.2-24.3-35.7 45.3 2.1 68 23.4 82.2 38.3 0 0 42.4 48.2 5.8 113.3-37 65.9-110.9 147.5-128.5 166.7z\"]\n};\nvar faDribbble = {\n prefix: 'fab',\n iconName: 'dribbble',\n icon: [512, 512, [], \"f17d\", \"M256 8C119.252 8 8 119.252 8 256s111.252 248 248 248 248-111.252 248-248S392.748 8 256 8zm163.97 114.366c29.503 36.046 47.369 81.957 47.835 131.955-6.984-1.477-77.018-15.682-147.502-6.818-5.752-14.041-11.181-26.393-18.617-41.614 78.321-31.977 113.818-77.482 118.284-83.523zM396.421 97.87c-3.81 5.427-35.697 48.286-111.021 76.519-34.712-63.776-73.185-116.168-79.04-124.008 67.176-16.193 137.966 1.27 190.061 47.489zm-230.48-33.25c5.585 7.659 43.438 60.116 78.537 122.509-99.087 26.313-186.36 25.934-195.834 25.809C62.38 147.205 106.678 92.573 165.941 64.62zM44.17 256.323c0-2.166.043-4.322.108-6.473 9.268.19 111.92 1.513 217.706-30.146 6.064 11.868 11.857 23.915 17.174 35.949-76.599 21.575-146.194 83.527-180.531 142.306C64.794 360.405 44.17 310.73 44.17 256.323zm81.807 167.113c22.127-45.233 82.178-103.622 167.579-132.756 29.74 77.283 42.039 142.053 45.189 160.638-68.112 29.013-150.015 21.053-212.768-27.882zm248.38 8.489c-2.171-12.886-13.446-74.897-41.152-151.033 66.38-10.626 124.7 6.768 131.947 9.055-9.442 58.941-43.273 109.844-90.795 141.978z\"]\n};\nvar faDribbbleSquare = {\n prefix: 'fab',\n iconName: 'dribbble-square',\n icon: [448, 512, [], \"f397\", \"M90.2 228.2c8.9-42.4 37.4-77.7 75.7-95.7 3.6 4.9 28 38.8 50.7 79-64 17-120.3 16.8-126.4 16.7zM314.6 154c-33.6-29.8-79.3-41.1-122.6-30.6 3.8 5.1 28.6 38.9 51 80 48.6-18.3 69.1-45.9 71.6-49.4zM140.1 364c40.5 31.6 93.3 36.7 137.3 18-2-12-10-53.8-29.2-103.6-55.1 18.8-93.8 56.4-108.1 85.6zm98.8-108.2c-3.4-7.8-7.2-15.5-11.1-23.2C159.6 253 93.4 252.2 87.4 252c0 1.4-.1 2.8-.1 4.2 0 35.1 13.3 67.1 35.1 91.4 22.2-37.9 67.1-77.9 116.5-91.8zm34.9 16.3c17.9 49.1 25.1 89.1 26.5 97.4 30.7-20.7 52.5-53.6 58.6-91.6-4.6-1.5-42.3-12.7-85.1-5.8zm-20.3-48.4c4.8 9.8 8.3 17.8 12 26.8 45.5-5.7 90.7 3.4 95.2 4.4-.3-32.3-11.8-61.9-30.9-85.1-2.9 3.9-25.8 33.2-76.3 53.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 176c0-88.2-71.8-160-160-160S64 167.8 64 256s71.8 160 160 160 160-71.8 160-160z\"]\n};\nvar faDropbox = {\n prefix: 'fab',\n iconName: 'dropbox',\n icon: [528, 512, [], \"f16b\", \"M264.4 116.3l-132 84.3 132 84.3-132 84.3L0 284.1l132.3-84.3L0 116.3 132.3 32l132.1 84.3zM131.6 395.7l132-84.3 132 84.3-132 84.3-132-84.3zm132.8-111.6l132-84.3-132-83.6L395.7 32 528 116.3l-132.3 84.3L528 284.8l-132.3 84.3-131.3-85z\"]\n};\nvar faDrupal = {\n prefix: 'fab',\n iconName: 'drupal',\n icon: [448, 512, [], \"f1a9\", \"M319.5 114.7c-22.2-14-43.5-19.5-64.7-33.5-13-8.8-31.3-30-46.5-48.3-2.7 29.3-11.5 41.2-22 49.5-21.3 17-34.8 22.2-53.5 32.3C117 123 32 181.5 32 290.5 32 399.7 123.8 480 225.8 480 327.5 480 416 406 416 294c0-112.3-83-171-96.5-179.3zm2.5 325.6c-20.1 20.1-90.1 28.7-116.7 4.2-4.8-4.8.3-12 6.5-12 0 0 17 13.3 51.5 13.3 27 0 46-7.7 54.5-14 6.1-4.6 8.4 4.3 4.2 8.5zm-54.5-52.6c8.7-3.6 29-3.8 36.8 1.3 4.1 2.8 16.1 18.8 6.2 23.7-8.4 4.2-1.2-15.7-26.5-15.7-14.7 0-19.5 5.2-26.7 11-7 6-9.8 8-12.2 4.7-6-8.2 15.9-22.3 22.4-25zM360 405c-15.2-1-45.5-48.8-65-49.5-30.9-.9-104.1 80.7-161.3 42-38.8-26.6-14.6-104.8 51.8-105.2 49.5-.5 83.8 49 108.5 48.5 21.3-.3 61.8-41.8 81.8-41.8 48.7 0 23.3 109.3-15.8 106z\"]\n};\nvar faDyalog = {\n prefix: 'fab',\n iconName: 'dyalog',\n icon: [416, 512, [], \"f399\", \"M0 32v119.2h64V96h107.2C284.6 96 352 176.2 352 255.9 352 332 293.4 416 171.2 416H0v64h171.2C331.9 480 416 367.3 416 255.9c0-58.7-22.1-113.4-62.3-154.3C308.9 56 245.7 32 171.2 32H0z\"]\n};\nvar faEarlybirds = {\n prefix: 'fab',\n iconName: 'earlybirds',\n icon: [480, 512, [], \"f39a\", \"M313.2 47.5c1.2-13 21.3-14 36.6-8.7.9.3 26.2 9.7 19 15.2-27.9-7.4-56.4 18.2-55.6-6.5zm-201 6.9c30.7-8.1 62 20 61.1-7.1-1.3-14.2-23.4-15.3-40.2-9.6-1 .3-28.7 10.5-20.9 16.7zM319.4 160c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-159.7 0c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm318.5 163.2c-9.9 24-40.7 11-63.9-1.2-13.5 69.1-58.1 111.4-126.3 124.2.3.9-2-.1 24 1 33.6 1.4 63.8-3.1 97.4-8-19.8-13.8-11.4-37.1-9.8-38.1 1.4-.9 14.7 1.7 21.6 11.5 8.6-12.5 28.4-14.8 30.2-13.6 1.6 1.1 6.6 20.9-6.9 34.6 4.7-.9 8.2-1.6 9.8-2.1 2.6-.8 17.7 11.3 3.1 13.3-14.3 2.3-22.6 5.1-47.1 10.8-45.9 10.7-85.9 11.8-117.7 12.8l1 11.6c3.8 18.1-23.4 24.3-27.6 6.2.8 17.9-27.1 21.8-28.4-1l-.5 5.3c-.7 18.4-28.4 17.9-28.3-.6-7.5 13.5-28.1 6.8-26.4-8.5l1.2-12.4c-36.7.9-59.7 3.1-61.8 3.1-20.9 0-20.9-31.6 0-31.6 2.4 0 27.7 1.3 63.2 2.8-61.1-15.5-103.7-55-114.9-118.2-25 12.8-57.5 26.8-68.2.8-10.5-25.4 21.5-42.6 66.8-73.4.7-6.6 1.6-13.3 2.7-19.8-14.4-19.6-11.6-36.3-16.1-60.4-16.8 2.4-23.2-9.1-23.6-23.1.3-7.3 2.1-14.9 2.4-15.4 1.1-1.8 10.1-2 12.7-2.6 6-31.7 50.6-33.2 90.9-34.5 19.7-21.8 45.2-41.5 80.9-48.3C203.3 29 215.2 8.5 216.2 8c1.7-.8 21.2 4.3 26.3 23.2 5.2-8.8 18.3-11.4 19.6-10.7 1.1.6 6.4 15-4.9 25.9 40.3 3.5 72.2 24.7 96 50.7 36.1 1.5 71.8 5.9 77.1 34 2.7.6 11.6.8 12.7 2.6.3.5 2.1 8.1 2.4 15.4-.5 13.9-6.8 25.4-23.6 23.1-3.2 17.3-2.7 32.9-8.7 47.7 2.4 11.7 4 23.8 4.8 36.4 37 25.4 70.3 42.5 60.3 66.9zM207.4 159.9c.9-44-37.9-42.2-78.6-40.3-21.7 1-38.9 1.9-45.5 13.9-11.4 20.9 5.9 92.9 23.2 101.2 9.8 4.7 73.4 7.9 86.3-7.1 8.2-9.4 15-49.4 14.6-67.7zm52 58.3c-4.3-12.4-6-30.1-15.3-32.7-2-.5-9-.5-11 0-10 2.8-10.8 22.1-17 37.2 15.4 0 19.3 9.7 23.7 9.7 4.3 0 6.3-11.3 19.6-14.2zm135.7-84.7c-6.6-12.1-24.8-12.9-46.5-13.9-40.2-1.9-78.2-3.8-77.3 40.3-.5 18.3 5 58.3 13.2 67.8 13 14.9 76.6 11.8 86.3 7.1 15.8-7.6 36.5-78.9 24.3-101.3z\"]\n};\nvar faEbay = {\n prefix: 'fab',\n iconName: 'ebay',\n icon: [640, 512, [], \"f4f4\", \"M606 189.5l-54.8 109.9-54.9-109.9h-37.5l10.9 20.6c-11.5-19-35.9-26-63.3-26-31.8 0-67.9 8.7-71.5 43.1h33.7c1.4-13.8 15.7-21.8 35-21.8 26 0 41 9.6 41 33v3.4c-12.7 0-28 .1-41.7.4-42.4.9-69.6 10-76.7 34.4 1-5.2 1.5-10.6 1.5-16.2 0-52.1-39.7-76.2-75.4-76.2-21.3 0-43 5.5-58.7 24.2v-80.6h-32.1v169.5c0 10.3-.6 22.9-1.1 33.1h31.5c.7-6.3 1.1-12.9 1.1-19.5 13.6 16.6 35.4 24.9 58.7 24.9 36.9 0 64.9-21.9 73.3-54.2-.5 2.8-.7 5.8-.7 9 0 24.1 21.1 45 60.6 45 26.6 0 45.8-5.7 61.9-25.5 0 6.6.3 13.3 1.1 20.2h29.8c-.7-8.2-1-17.5-1-26.8v-65.6c0-9.3-1.7-17.2-4.8-23.8l61.5 116.1-28.5 54.1h35.9L640 189.5zM243.7 313.8c-29.6 0-50.2-21.5-50.2-53.8 0-32.4 20.6-53.8 50.2-53.8 29.8 0 50.2 21.4 50.2 53.8 0 32.3-20.4 53.8-50.2 53.8zm200.9-47.3c0 30-17.9 48.4-51.6 48.4-25.1 0-35-13.4-35-25.8 0-19.1 18.1-24.4 47.2-25.3 13.1-.5 27.6-.6 39.4-.6zm-411.9 1.6h128.8v-8.5c0-51.7-33.1-75.4-78.4-75.4-56.8 0-83 30.8-83 77.6 0 42.5 25.3 74 82.5 74 31.4 0 68-11.7 74.4-46.1h-33.1c-12 35.8-87.7 36.7-91.2-21.6zm95-21.4H33.3c6.9-56.6 92.1-54.7 94.4 0z\"]\n};\nvar faEdge = {\n prefix: 'fab',\n iconName: 'edge',\n icon: [512, 512, [], \"f282\", \"M481.92,134.48C440.87,54.18,352.26,8,255.91,8,137.05,8,37.51,91.68,13.47,203.66c26-46.49,86.22-79.14,149.46-79.14,79.27,0,121.09,48.93,122.25,50.18,22,23.8,33,50.39,33,83.1,0,10.4-5.31,25.82-15.11,38.57-1.57,2-6.39,4.84-6.39,11,0,5.06,3.29,9.92,9.14,14,27.86,19.37,80.37,16.81,80.51,16.81A115.39,115.39,0,0,0,444.94,322a118.92,118.92,0,0,0,58.95-102.44C504.39,176.13,488.39,147.26,481.92,134.48ZM212.77,475.67a154.88,154.88,0,0,1-46.64-45c-32.94-47.42-34.24-95.6-20.1-136A155.5,155.5,0,0,1,203,215.75c59-45.2,94.84-5.65,99.06-1a80,80,0,0,0-4.89-10.14c-9.24-15.93-24-36.41-56.56-53.51-33.72-17.69-70.59-18.59-77.64-18.59-38.71,0-77.9,13-107.53,35.69C35.68,183.3,12.77,208.72,8.6,243c-1.08,12.31-2.75,62.8,23,118.27a248,248,0,0,0,248.3,141.61C241.78,496.26,214.05,476.24,212.77,475.67Zm250.72-98.33a7.76,7.76,0,0,0-7.92-.23,181.66,181.66,0,0,1-20.41,9.12,197.54,197.54,0,0,1-69.55,12.52c-91.67,0-171.52-63.06-171.52-144A61.12,61.12,0,0,1,200.61,228,168.72,168.72,0,0,0,161.85,278c-14.92,29.37-33,88.13,13.33,151.66,6.51,8.91,23,30,56,47.67,23.57,12.65,49,19.61,71.7,19.61,35.14,0,115.43-33.44,163-108.87A7.75,7.75,0,0,0,463.49,377.34Z\"]\n};\nvar faEdgeLegacy = {\n prefix: 'fab',\n iconName: 'edge-legacy',\n icon: [512, 512, [], \"e078\", \"M25.71,228.16l.35-.48c0,.16,0,.32-.07.48Zm460.58,15.51c0-44-7.76-84.46-28.81-122.4C416.5,47.88,343.91,8,258.89,8,119,7.72,40.62,113.21,26.06,227.68c42.42-61.31,117.07-121.38,220.37-125,0,0,109.67,0,99.42,105H170c6.37-37.39,18.55-59,34.34-78.93-75.05,34.9-121.85,96.1-120.75,188.32.83,71.45,50.13,144.84,120.75,172,83.35,31.84,192.77,7.2,240.13-21.33V363.31C363.6,419.8,173.6,424.23,172.21,295.74H486.29V243.67Z\"]\n};\nvar faElementor = {\n prefix: 'fab',\n iconName: 'elementor',\n icon: [448, 512, [], \"f430\", \"M425.6 32H22.4C10 32 0 42 0 54.4v403.2C0 470 10 480 22.4 480h403.2c12.4 0 22.4-10 22.4-22.4V54.4C448 42 438 32 425.6 32M164.3 355.5h-39.8v-199h39.8v199zm159.3 0H204.1v-39.8h119.5v39.8zm0-79.6H204.1v-39.8h119.5v39.8zm0-79.7H204.1v-39.8h119.5v39.8z\"]\n};\nvar faEllo = {\n prefix: 'fab',\n iconName: 'ello',\n icon: [496, 512, [], \"f5f1\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm143.84 285.2C375.31 358.51 315.79 404.8 248 404.8s-127.31-46.29-143.84-111.6c-1.65-7.44 2.48-15.71 9.92-17.36 7.44-1.65 15.71 2.48 17.36 9.92 14.05 52.91 62 90.11 116.56 90.11s102.51-37.2 116.56-90.11c1.65-7.44 9.92-12.4 17.36-9.92 7.44 1.65 12.4 9.92 9.92 17.36z\"]\n};\nvar faEmber = {\n prefix: 'fab',\n iconName: 'ember',\n icon: [640, 512, [], \"f423\", \"M639.9 254.6c-1.1-10.7-10.7-6.8-10.7-6.8s-15.6 12.1-29.3 10.7c-13.7-1.3-9.4-32-9.4-32s3-28.1-5.1-30.4c-8.1-2.4-18 7.3-18 7.3s-12.4 13.7-18.3 31.2l-1.6.5s1.9-30.6-.3-37.6c-1.6-3.5-16.4-3.2-18.8 3s-14.2 49.2-15 67.2c0 0-23.1 19.6-43.3 22.8s-25-9.4-25-9.4 54.8-15.3 52.9-59.1-44.2-27.6-49-24c-4.6 3.5-29.4 18.4-36.6 59.7-.2 1.4-.7 7.5-.7 7.5s-21.2 14.2-33 18c0 0 33-55.6-7.3-80.9-11.4-6.8-21.3-.5-27.2 5.3 13.6-17.3 46.4-64.2 36.9-105.2-5.8-24.4-18-27.1-29.2-23.1-17 6.7-23.5 16.7-23.5 16.7s-22 32-27.1 79.5-12.6 105.1-12.6 105.1-10.5 10.2-20.2 10.7-5.4-28.7-5.4-28.7 7.5-44.6 7-52.1-1.1-11.6-9.9-14.2c-8.9-2.7-18.5 8.6-18.5 8.6s-25.5 38.7-27.7 44.6l-1.3 2.4-1.3-1.6s18-52.7.8-53.5-28.5 18.8-28.5 18.8-19.6 32.8-20.4 36.5l-1.3-1.6s8.1-38.2 6.4-47.6c-1.6-9.4-10.5-7.5-10.5-7.5s-11.3-1.3-14.2 5.9-13.7 55.3-15 70.7c0 0-28.2 20.2-46.8 20.4-18.5.3-16.7-11.8-16.7-11.8s68-23.3 49.4-69.2c-8.3-11.8-18-15.5-31.7-15.3-13.7.3-30.3 8.6-41.3 33.3-5.3 11.8-6.8 23-7.8 31.5 0 0-12.3 2.4-18.8-2.9s-10 0-10 0-11.2 14-.1 18.3 28.1 6.1 28.1 6.1c1.6 7.5 6.2 19.5 19.6 29.7 20.2 15.3 58.8-1.3 58.8-1.3l15.9-8.8s.5 14.6 12.1 16.7 16.4 1 36.5-47.9c11.8-25 12.6-23.6 12.6-23.6l1.3-.3s-9.1 46.8-5.6 59.7C187.7 319.4 203 318 203 318s8.3 2.4 15-21.2 19.6-49.9 19.6-49.9h1.6s-5.6 48.1 3 63.7 30.9 5.3 30.9 5.3 15.6-7.8 18-10.2c0 0 18.5 15.8 44.6 12.9 58.3-11.5 79.1-25.9 79.1-25.9s10 24.4 41.1 26.7c35.5 2.7 54.8-18.6 54.8-18.6s-.3 13.5 12.1 18.6 20.7-22.8 20.7-22.8l20.7-57.2h1.9s1.1 37.3 21.5 43.2 47-13.7 47-13.7 6.4-3.5 5.3-14.3zm-578 5.3c.8-32 21.8-45.9 29-39 7.3 7 4.6 22-9.1 31.4-13.7 9.5-19.9 7.6-19.9 7.6zm272.8-123.8s19.1-49.7 23.6-25.5-40 96.2-40 96.2c.5-16.2 16.4-70.7 16.4-70.7zm22.8 138.4c-12.6 33-43.3 19.6-43.3 19.6s-3.5-11.8 6.4-44.9 33.3-20.2 33.3-20.2 16.2 12.4 3.6 45.5zm84.6-14.6s-3-10.5 8.1-30.6c11-20.2 19.6-9.1 19.6-9.1s9.4 10.2-1.3 25.5-26.4 14.2-26.4 14.2z\"]\n};\nvar faEmpire = {\n prefix: 'fab',\n iconName: 'empire',\n icon: [496, 512, [], \"f1d1\", \"M287.6 54.2c-10.8-2.2-22.1-3.3-33.5-3.6V32.4c78.1 2.2 146.1 44 184.6 106.6l-15.8 9.1c-6.1-9.7-12.7-18.8-20.2-27.1l-18 15.5c-26-29.6-61.4-50.7-101.9-58.4l4.8-23.9zM53.4 322.4l23-7.7c-6.4-18.3-10-38.2-10-58.7s3.3-40.4 9.7-58.7l-22.7-7.7c3.6-10.8 8.3-21.3 13.6-31l-15.8-9.1C34 181 24.1 217.5 24.1 256s10 75 27.1 106.6l15.8-9.1c-5.3-10-9.7-20.3-13.6-31.1zM213.1 434c-40.4-8-75.8-29.1-101.9-58.7l-18 15.8c-7.5-8.6-14.4-17.7-20.2-27.4l-16 9.4c38.5 62.3 106.8 104.3 184.9 106.6v-18.3c-11.3-.3-22.7-1.7-33.5-3.6l4.7-23.8zM93.3 120.9l18 15.5c26-29.6 61.4-50.7 101.9-58.4l-4.7-23.8c10.8-2.2 22.1-3.3 33.5-3.6V32.4C163.9 34.6 95.9 76.4 57.4 139l15.8 9.1c6-9.7 12.6-18.9 20.1-27.2zm309.4 270.2l-18-15.8c-26 29.6-61.4 50.7-101.9 58.7l4.7 23.8c-10.8 1.9-22.1 3.3-33.5 3.6v18.3c78.1-2.2 146.4-44.3 184.9-106.6l-16.1-9.4c-5.7 9.7-12.6 18.8-20.1 27.4zM496 256c0 137-111 248-248 248S0 393 0 256 111 8 248 8s248 111 248 248zm-12.2 0c0-130.1-105.7-235.8-235.8-235.8S12.2 125.9 12.2 256 117.9 491.8 248 491.8 483.8 386.1 483.8 256zm-39-106.6l-15.8 9.1c5.3 9.7 10 20.2 13.6 31l-22.7 7.7c6.4 18.3 9.7 38.2 9.7 58.7s-3.6 40.4-10 58.7l23 7.7c-3.9 10.8-8.3 21-13.6 31l15.8 9.1C462 331 471.9 294.5 471.9 256s-9.9-75-27.1-106.6zm-183 177.7c16.3-3.3 30.4-11.6 40.7-23.5l51.2 44.8c11.9-13.6 21.3-29.3 27.1-46.8l-64.2-22.1c2.5-7.5 3.9-15.2 3.9-23.5s-1.4-16.1-3.9-23.5l64.5-22.1c-6.1-17.4-15.5-33.2-27.4-46.8l-51.2 44.8c-10.2-11.9-24.4-20.5-40.7-23.8l13.3-66.4c-8.6-1.9-17.7-2.8-27.1-2.8-9.4 0-18.5.8-27.1 2.8l13.3 66.4c-16.3 3.3-30.4 11.9-40.7 23.8l-51.2-44.8c-11.9 13.6-21.3 29.3-27.4 46.8l64.5 22.1c-2.5 7.5-3.9 15.2-3.9 23.5s1.4 16.1 3.9 23.5l-64.2 22.1c5.8 17.4 15.2 33.2 27.1 46.8l51.2-44.8c10.2 11.9 24.4 20.2 40.7 23.5l-13.3 66.7c8.6 1.7 17.7 2.8 27.1 2.8 9.4 0 18.5-1.1 27.1-2.8l-13.3-66.7z\"]\n};\nvar faEnvira = {\n prefix: 'fab',\n iconName: 'envira',\n icon: [448, 512, [], \"f299\", \"M0 32c477.6 0 366.6 317.3 367.1 366.3L448 480h-26l-70.4-71.2c-39 4.2-124.4 34.5-214.4-37C47 300.3 52 214.7 0 32zm79.7 46c-49.7-23.5-5.2 9.2-5.2 9.2 45.2 31.2 66 73.7 90.2 119.9 31.5 60.2 79 139.7 144.2 167.7 65 28 34.2 12.5 6-8.5-28.2-21.2-68.2-87-91-130.2-31.7-60-61-118.6-144.2-158.1z\"]\n};\nvar faErlang = {\n prefix: 'fab',\n iconName: 'erlang',\n icon: [640, 512, [], \"f39d\", \"M87.2 53.5H0v405h100.4c-49.7-52.6-78.8-125.3-78.7-212.1-.1-76.7 24-142.7 65.5-192.9zm238.2 9.7c-45.9.1-85.1 33.5-89.2 83.2h169.9c-1.1-49.7-34.5-83.1-80.7-83.2zm230.7-9.6h.3l-.1-.1zm.3 0c31.4 42.7 48.7 97.5 46.2 162.7.5 6 .5 11.7 0 24.1H230.2c-.2 109.7 38.9 194.9 138.6 195.3 68.5-.3 118-51 151.9-106.1l96.4 48.2c-17.4 30.9-36.5 57.8-57.9 80.8H640v-405z\"]\n};\nvar faEthereum = {\n prefix: 'fab',\n iconName: 'ethereum',\n icon: [320, 512, [], \"f42e\", \"M311.9 260.8L160 353.6 8 260.8 160 0l151.9 260.8zM160 383.4L8 290.6 160 512l152-221.4-152 92.8z\"]\n};\nvar faEtsy = {\n prefix: 'fab',\n iconName: 'etsy',\n icon: [384, 512, [], \"f2d7\", \"M384 348c-1.75 10.75-13.75 110-15.5 132-117.879-4.299-219.895-4.743-368.5 0v-25.5c45.457-8.948 60.627-8.019 61-35.25 1.793-72.322 3.524-244.143 0-322-1.029-28.46-12.13-26.765-61-36v-25.5c73.886 2.358 255.933 8.551 362.999-3.75-3.5 38.25-7.75 126.5-7.75 126.5H332C320.947 115.665 313.241 68 277.25 68h-137c-10.25 0-10.75 3.5-10.75 9.75V241.5c58 .5 88.5-2.5 88.5-2.5 29.77-.951 27.56-8.502 40.75-65.251h25.75c-4.407 101.351-3.91 61.829-1.75 160.25H257c-9.155-40.086-9.065-61.045-39.501-61.5 0 0-21.5-2-88-2v139c0 26 14.25 38.25 44.25 38.25H263c63.636 0 66.564-24.996 98.751-99.75H384z\"]\n};\nvar faEvernote = {\n prefix: 'fab',\n iconName: 'evernote',\n icon: [384, 512, [], \"f839\", \"M120.82 132.21c1.6 22.31-17.55 21.59-21.61 21.59-68.93 0-73.64-1-83.58 3.34-.56.22-.74 0-.37-.37L123.79 46.45c.38-.37.6-.22.38.37-4.35 9.99-3.35 15.09-3.35 85.39zm79 308c-14.68-37.08 13-76.93 52.52-76.62 17.49 0 22.6 23.21 7.95 31.42-6.19 3.3-24.95 1.74-25.14 19.2-.05 17.09 19.67 25 31.2 24.89A45.64 45.64 0 0 0 312 393.45v-.08c0-11.63-7.79-47.22-47.54-55.34-7.72-1.54-65-6.35-68.35-50.52-3.74 16.93-17.4 63.49-43.11 69.09-8.74 1.94-69.68 7.64-112.92-36.77 0 0-18.57-15.23-28.23-57.95-3.38-15.75-9.28-39.7-11.14-62 0-18 11.14-30.45 25.07-32.2 81 0 90 2.32 101-7.8 9.82-9.24 7.8-15.5 7.8-102.78 1-8.3 7.79-30.81 53.41-24.14 6 .86 31.91 4.18 37.48 30.64l64.26 11.15c20.43 3.71 70.94 7 80.6 57.94 22.66 121.09 8.91 238.46 7.8 238.46C362.15 485.53 267.06 480 267.06 480c-18.95-.23-54.25-9.4-67.27-39.83zm80.94-204.84c-1 1.92-2.2 6 .85 7 14.09 4.93 39.75 6.84 45.88 5.53 3.11-.25 3.05-4.43 2.48-6.65-3.53-21.85-40.83-26.5-49.24-5.92z\"]\n};\nvar faExpeditedssl = {\n prefix: 'fab',\n iconName: 'expeditedssl',\n icon: [496, 512, [], \"f23e\", \"M248 43.4C130.6 43.4 35.4 138.6 35.4 256S130.6 468.6 248 468.6 460.6 373.4 460.6 256 365.4 43.4 248 43.4zm-97.4 132.9c0-53.7 43.7-97.4 97.4-97.4s97.4 43.7 97.4 97.4v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6c0-82.1-124-82.1-124 0v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6zM389.7 380c0 9.7-8 17.7-17.7 17.7H124c-9.7 0-17.7-8-17.7-17.7V238.3c0-9.7 8-17.7 17.7-17.7h248c9.7 0 17.7 8 17.7 17.7V380zm-248-137.3v132.9c0 2.5-1.9 4.4-4.4 4.4h-8.9c-2.5 0-4.4-1.9-4.4-4.4V242.7c0-2.5 1.9-4.4 4.4-4.4h8.9c2.5 0 4.4 1.9 4.4 4.4zm141.7 48.7c0 13-7.2 24.4-17.7 30.4v31.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-31.6c-10.5-6.1-17.7-17.4-17.7-30.4 0-19.7 15.8-35.4 35.4-35.4s35.5 15.8 35.5 35.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 478.3C121 486.3 17.7 383 17.7 256S121 25.7 248 25.7 478.3 129 478.3 256 375 486.3 248 486.3z\"]\n};\nvar faFacebook = {\n prefix: 'fab',\n iconName: 'facebook',\n icon: [512, 512, [], \"f09a\", \"M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.28c-30.8 0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z\"]\n};\nvar faFacebookF = {\n prefix: 'fab',\n iconName: 'facebook-f',\n icon: [320, 512, [], \"f39e\", \"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z\"]\n};\nvar faFacebookMessenger = {\n prefix: 'fab',\n iconName: 'facebook-messenger',\n icon: [512, 512, [], \"f39f\", \"M256.55 8C116.52 8 8 110.34 8 248.57c0 72.3 29.71 134.78 78.07 177.94 8.35 7.51 6.63 11.86 8.05 58.23A19.92 19.92 0 0 0 122 502.31c52.91-23.3 53.59-25.14 62.56-22.7C337.85 521.8 504 423.7 504 248.57 504 110.34 396.59 8 256.55 8zm149.24 185.13l-73 115.57a37.37 37.37 0 0 1-53.91 9.93l-58.08-43.47a15 15 0 0 0-18 0l-78.37 59.44c-10.46 7.93-24.16-4.6-17.11-15.67l73-115.57a37.36 37.36 0 0 1 53.91-9.93l58.06 43.46a15 15 0 0 0 18 0l78.41-59.38c10.44-7.98 24.14 4.54 17.09 15.62z\"]\n};\nvar faFacebookSquare = {\n prefix: 'fab',\n iconName: 'facebook-square',\n icon: [448, 512, [], \"f082\", \"M400 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h137.25V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.27c-30.81 0-40.42 19.12-40.42 38.73V256h68.78l-11 71.69h-57.78V480H400a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48z\"]\n};\nvar faFantasyFlightGames = {\n prefix: 'fab',\n iconName: 'fantasy-flight-games',\n icon: [512, 512, [], \"f6dc\", \"M256 32.86L32.86 256 256 479.14 479.14 256 256 32.86zM88.34 255.83c1.96-2 11.92-12.3 96.49-97.48 41.45-41.75 86.19-43.77 119.77-18.69 24.63 18.4 62.06 58.9 62.15 59 .68.74 1.07 2.86.58 3.38-11.27 11.84-22.68 23.54-33.5 34.69-34.21-32.31-40.52-38.24-48.51-43.95-17.77-12.69-41.4-10.13-56.98 5.1-2.17 2.13-1.79 3.43.12 5.35 2.94 2.95 28.1 28.33 35.09 35.78-11.95 11.6-23.66 22.97-35.69 34.66-12.02-12.54-24.48-25.53-36.54-38.11-21.39 21.09-41.69 41.11-61.85 60.99a42569.01 42569.01 0 0 1-41.13-40.72zm234.82 101.6c-35.49 35.43-78.09 38.14-106.99 20.47-22.08-13.5-39.38-32.08-72.93-66.84 12.05-12.37 23.79-24.42 35.37-36.31 33.02 31.91 37.06 36.01 44.68 42.09 18.48 14.74 42.52 13.67 59.32-1.8 3.68-3.39 3.69-3.64.14-7.24-10.59-10.73-21.19-21.44-31.77-32.18-1.32-1.34-3.03-2.48-.8-4.69 10.79-10.71 21.48-21.52 32.21-32.29.26-.26.65-.38 1.91-1.07 12.37 12.87 24.92 25.92 37.25 38.75 21.01-20.73 41.24-40.68 61.25-60.42 13.68 13.4 27.13 26.58 40.86 40.03-20.17 20.86-81.68 82.71-100.5 101.5zM256 0L0 256l256 256 256-256L256 0zM16 256L256 16l240 240-240 240L16 256z\"]\n};\nvar faFedex = {\n prefix: 'fab',\n iconName: 'fedex',\n icon: [640, 512, [], \"f797\", \"M586 284.5l53.3-59.9h-62.4l-21.7 24.8-22.5-24.8H414v-16h56.1v-48.1H318.9V236h-.5c-9.6-11-21.5-14.8-35.4-14.8-28.4 0-49.8 19.4-57.3 44.9-18-59.4-97.4-57.6-121.9-14v-24.2H49v-26.2h60v-41.1H0V345h49v-77.5h48.9c-1.5 5.7-2.3 11.8-2.3 18.2 0 73.1 102.6 91.4 130.2 23.7h-42c-14.7 20.9-45.8 8.9-45.8-14.6h85.5c3.7 30.5 27.4 56.9 60.1 56.9 14.1 0 27-6.9 34.9-18.6h.5V345h212.2l22.1-25 22.3 25H640l-54-60.5zm-446.7-16.6c6.1-26.3 41.7-25.6 46.5 0h-46.5zm153.4 48.9c-34.6 0-34-62.8 0-62.8 32.6 0 34.5 62.8 0 62.8zm167.8 19.1h-94.4V169.4h95v30.2H405v33.9h55.5v28.1h-56.1v44.7h56.1v29.6zm-45.9-39.8v-24.4h56.1v-44l50.7 57-50.7 57v-45.6h-56.1zm138.6 10.3l-26.1 29.5H489l45.6-51.2-45.6-51.2h39.7l26.6 29.3 25.6-29.3h38.5l-45.4 51 46 51.4h-40.5l-26.3-29.5z\"]\n};\nvar faFedora = {\n prefix: 'fab',\n iconName: 'fedora',\n icon: [448, 512, [], \"f798\", \"M225 32C101.3 31.7.8 131.7.4 255.4L0 425.7a53.6 53.6 0 0 0 53.6 53.9l170.2.4c123.7.3 224.3-99.7 224.6-223.4S348.7 32.3 225 32zm169.8 157.2L333 126.6c2.3-4.7 3.8-9.2 3.8-14.3v-1.6l55.2 56.1a101 101 0 0 1 2.8 22.4zM331 94.3a106.06 106.06 0 0 1 58.5 63.8l-54.3-54.6a26.48 26.48 0 0 0-4.2-9.2zM118.1 247.2a49.66 49.66 0 0 0-7.7 11.4l-8.5-8.5a85.78 85.78 0 0 1 16.2-2.9zM97 251.4l11.8 11.9-.9 8a34.74 34.74 0 0 0 2.4 12.5l-27-27.2a80.6 80.6 0 0 1 13.7-5.2zm-18.2 7.4l38.2 38.4a53.17 53.17 0 0 0-14.1 4.7L67.6 266a107 107 0 0 1 11.2-7.2zm-15.2 9.8l35.3 35.5a67.25 67.25 0 0 0-10.5 8.5L53.5 278a64.33 64.33 0 0 1 10.1-9.4zm-13.3 12.3l34.9 35a56.84 56.84 0 0 0-7.7 11.4l-35.8-35.9c2.8-3.8 5.7-7.2 8.6-10.5zm-11 14.3l36.4 36.6a48.29 48.29 0 0 0-3.6 15.2l-39.5-39.8a99.81 99.81 0 0 1 6.7-12zm-8.8 16.3l41.3 41.8a63.47 63.47 0 0 0 6.7 26.2L25.8 326c1.4-4.9 2.9-9.6 4.7-14.5zm-7.9 43l61.9 62.2a31.24 31.24 0 0 0-3.6 14.3v1.1l-55.4-55.7a88.27 88.27 0 0 1-2.9-21.9zm5.3 30.7l54.3 54.6a28.44 28.44 0 0 0 4.2 9.2 106.32 106.32 0 0 1-58.5-63.8zm-5.3-37a80.69 80.69 0 0 1 2.1-17l72.2 72.5a37.59 37.59 0 0 0-9.9 8.7zm253.3-51.8l-42.6-.1-.1 56c-.2 69.3-64.4 115.8-125.7 102.9-5.7 0-19.9-8.7-19.9-24.2a24.89 24.89 0 0 1 24.5-24.6c6.3 0 6.3 1.6 15.7 1.6a55.91 55.91 0 0 0 56.1-55.9l.1-47c0-4.5-4.5-9-8.9-9l-33.6-.1c-32.6-.1-32.5-49.4.1-49.3l42.6.1.1-56a105.18 105.18 0 0 1 105.6-105 86.35 86.35 0 0 1 20.2 2.3c11.2 1.8 19.9 11.9 19.9 24 0 15.5-14.9 27.8-30.3 23.9-27.4-5.9-65.9 14.4-66 54.9l-.1 47a8.94 8.94 0 0 0 8.9 9l33.6.1c32.5.2 32.4 49.5-.2 49.4zm23.5-.3a35.58 35.58 0 0 0 7.6-11.4l8.5 8.5a102 102 0 0 1-16.1 2.9zm21-4.2L308.6 280l.9-8.1a34.74 34.74 0 0 0-2.4-12.5l27 27.2a74.89 74.89 0 0 1-13.7 5.3zm18-7.4l-38-38.4c4.9-1.1 9.6-2.4 13.7-4.7l36.2 35.9c-3.8 2.5-7.9 5-11.9 7.2zm15.5-9.8l-35.3-35.5a61.06 61.06 0 0 0 10.5-8.5l34.9 35a124.56 124.56 0 0 1-10.1 9zm13.2-12.3l-34.9-35a63.18 63.18 0 0 0 7.7-11.4l35.8 35.9a130.28 130.28 0 0 1-8.6 10.5zm11-14.3l-36.4-36.6a48.29 48.29 0 0 0 3.6-15.2l39.5 39.8a87.72 87.72 0 0 1-6.7 12zm13.5-30.9a140.63 140.63 0 0 1-4.7 14.3L345.6 190a58.19 58.19 0 0 0-7.1-26.2zm1-5.6l-71.9-72.1a32 32 0 0 0 9.9-9.2l64.3 64.7a90.93 90.93 0 0 1-2.3 16.6z\"]\n};\nvar faFigma = {\n prefix: 'fab',\n iconName: 'figma',\n icon: [384, 512, [], \"f799\", \"M14 95.7924C14 42.8877 56.8878 0 109.793 0H274.161C327.066 0 369.954 42.8877 369.954 95.7924C369.954 129.292 352.758 158.776 326.711 175.897C352.758 193.019 369.954 222.502 369.954 256.002C369.954 308.907 327.066 351.795 274.161 351.795H272.081C247.279 351.795 224.678 342.369 207.666 326.904V415.167C207.666 468.777 163.657 512 110.309 512C57.5361 512 14 469.243 14 416.207C14 382.709 31.1945 353.227 57.2392 336.105C31.1945 318.983 14 289.5 14 256.002C14 222.502 31.196 193.019 57.2425 175.897C31.196 158.776 14 129.292 14 95.7924ZM176.288 191.587H109.793C74.2172 191.587 45.3778 220.427 45.3778 256.002C45.3778 291.44 73.9948 320.194 109.381 320.416C109.518 320.415 109.655 320.415 109.793 320.415H176.288V191.587ZM207.666 256.002C207.666 291.577 236.505 320.417 272.081 320.417H274.161C309.737 320.417 338.576 291.577 338.576 256.002C338.576 220.427 309.737 191.587 274.161 191.587H272.081C236.505 191.587 207.666 220.427 207.666 256.002ZM109.793 351.795C109.655 351.795 109.518 351.794 109.381 351.794C73.9948 352.015 45.3778 380.769 45.3778 416.207C45.3778 451.652 74.6025 480.622 110.309 480.622C146.591 480.622 176.288 451.186 176.288 415.167V351.795H109.793ZM109.793 31.3778C74.2172 31.3778 45.3778 60.2173 45.3778 95.7924C45.3778 131.368 74.2172 160.207 109.793 160.207H176.288V31.3778H109.793ZM207.666 160.207H274.161C309.737 160.207 338.576 131.368 338.576 95.7924C338.576 60.2173 309.737 31.3778 274.161 31.3778H207.666V160.207Z\"]\n};\nvar faFirefox = {\n prefix: 'fab',\n iconName: 'firefox',\n icon: [512, 512, [], \"f269\", \"M503.52,241.48c-.12-1.56-.24-3.12-.24-4.68v-.12l-.36-4.68v-.12a245.86,245.86,0,0,0-7.32-41.15c0-.12,0-.12-.12-.24l-1.08-4c-.12-.24-.12-.48-.24-.6-.36-1.2-.72-2.52-1.08-3.72-.12-.24-.12-.6-.24-.84-.36-1.2-.72-2.4-1.08-3.48-.12-.36-.24-.6-.36-1-.36-1.2-.72-2.28-1.2-3.48l-.36-1.08c-.36-1.08-.84-2.28-1.2-3.36a8.27,8.27,0,0,0-.36-1c-.48-1.08-.84-2.28-1.32-3.36-.12-.24-.24-.6-.36-.84-.48-1.2-1-2.28-1.44-3.48,0-.12-.12-.24-.12-.36-1.56-3.84-3.24-7.68-5-11.4l-.36-.72c-.48-1-.84-1.8-1.32-2.64-.24-.48-.48-1.08-.72-1.56-.36-.84-.84-1.56-1.2-2.4-.36-.6-.6-1.2-1-1.8s-.84-1.44-1.2-2.28c-.36-.6-.72-1.32-1.08-1.92s-.84-1.44-1.2-2.16a18.07,18.07,0,0,0-1.2-2c-.36-.72-.84-1.32-1.2-2s-.84-1.32-1.2-2-.84-1.32-1.2-1.92-.84-1.44-1.32-2.16a15.63,15.63,0,0,0-1.2-1.8L463.2,119a15.63,15.63,0,0,0-1.2-1.8c-.48-.72-1.08-1.56-1.56-2.28-.36-.48-.72-1.08-1.08-1.56l-1.8-2.52c-.36-.48-.6-.84-1-1.32-1-1.32-1.8-2.52-2.76-3.72a248.76,248.76,0,0,0-23.51-26.64A186.82,186.82,0,0,0,412,62.46c-4-3.48-8.16-6.72-12.48-9.84a162.49,162.49,0,0,0-24.6-15.12c-2.4-1.32-4.8-2.52-7.2-3.72a254,254,0,0,0-55.43-19.56c-1.92-.36-3.84-.84-5.64-1.2h-.12c-1-.12-1.8-.36-2.76-.48a236.35,236.35,0,0,0-38-4H255.14a234.62,234.62,0,0,0-45.48,5c-33.59,7.08-63.23,21.24-82.91,39-1.08,1-1.92,1.68-2.4,2.16l-.48.48H124l-.12.12.12-.12a.12.12,0,0,0,.12-.12l-.12.12a.42.42,0,0,1,.24-.12c14.64-8.76,34.92-16,49.44-19.56l5.88-1.44c.36-.12.84-.12,1.2-.24,1.68-.36,3.36-.72,5.16-1.08.24,0,.6-.12.84-.12C250.94,20.94,319.34,40.14,367,85.61a171.49,171.49,0,0,1,26.88,32.76c30.36,49.2,27.48,111.11,3.84,147.59-34.44,53-111.35,71.27-159,24.84a84.19,84.19,0,0,1-25.56-59,74.05,74.05,0,0,1,6.24-31c1.68-3.84,13.08-25.67,18.24-24.59-13.08-2.76-37.55,2.64-54.71,28.19-15.36,22.92-14.52,58.2-5,83.28a132.85,132.85,0,0,1-12.12-39.24c-12.24-82.55,43.31-153,94.31-170.51-27.48-24-96.47-22.31-147.71,15.36-29.88,22-51.23,53.16-62.51,90.36,1.68-20.88,9.6-52.08,25.8-83.88-17.16,8.88-39,37-49.8,62.88-15.6,37.43-21,82.19-16.08,124.79.36,3.24.72,6.36,1.08,9.6,19.92,117.11,122,206.38,244.78,206.38C392.77,503.42,504,392.19,504,255,503.88,250.48,503.76,245.92,503.52,241.48Z\"]\n};\nvar faFirefoxBrowser = {\n prefix: 'fab',\n iconName: 'firefox-browser',\n icon: [512, 512, [], \"e007\", \"M189.37,152.86Zm-58.74-29.37C130.79,123.5,130.71,123.5,130.63,123.49Zm351.42,45.35c-10.61-25.5-32.08-53-48.94-61.73,13.72,26.89,21.67,53.88,24.7,74,0,0,0,.14.05.41-27.58-68.75-74.35-96.47-112.55-156.83-1.93-3.05-3.86-6.11-5.74-9.33-1-1.65-1.86-3.34-2.69-5.05A44.88,44.88,0,0,1,333.24.69a.63.63,0,0,0-.55-.66.9.9,0,0,0-.46,0l-.12.07-.18.1.1-.14c-54.23,31.77-76.72,87.38-82.5,122.78a130,130,0,0,0-48.33,12.33,6.25,6.25,0,0,0-3.09,7.75,6.13,6.13,0,0,0,7.79,3.79l.52-.21a117.84,117.84,0,0,1,42.11-11l1.42-.1c2-.12,4-.2,6-.22A122.61,122.61,0,0,1,291,140c.67.2,1.32.42,2,.63,1.89.57,3.76,1.2,5.62,1.87,1.36.5,2.71,1,4.05,1.58,1.09.44,2.18.88,3.25,1.35q2.52,1.13,5,2.35c.75.37,1.5.74,2.25,1.13q2.4,1.26,4.74,2.63,1.51.87,3,1.8a124.89,124.89,0,0,1,42.66,44.13c-13-9.15-36.35-18.19-58.82-14.28,87.74,43.86,64.18,194.9-57.39,189.2a108.43,108.43,0,0,1-31.74-6.12c-2.42-.91-4.8-1.89-7.16-2.93-1.38-.63-2.76-1.27-4.12-2C174.5,346,149.9,316.92,146.83,281.59c0,0,11.25-41.95,80.62-41.95,7.5,0,28.93-20.92,29.33-27-.09-2-42.54-18.87-59.09-35.18-8.85-8.71-13.05-12.91-16.77-16.06a69.58,69.58,0,0,0-6.31-4.77A113.05,113.05,0,0,1,173.92,97c-25.06,11.41-44.55,29.45-58.71,45.37h-.12c-9.67-12.25-9-52.65-8.43-61.08-.12-.53-7.22,3.68-8.15,4.31a178.54,178.54,0,0,0-23.84,20.43A214,214,0,0,0,51.9,133.36l0,0a.08.08,0,0,1,0,0,205.84,205.84,0,0,0-32.73,73.9c-.06.27-2.33,10.21-4,22.48q-.42,2.87-.78,5.74c-.57,3.69-1,7.71-1.44,14,0,.24,0,.48-.05.72-.18,2.71-.34,5.41-.49,8.12,0,.41,0,.82,0,1.24,0,134.7,109.21,243.89,243.92,243.89,120.64,0,220.82-87.58,240.43-202.62.41-3.12.74-6.26,1.11-9.41,4.85-41.83-.54-85.79-15.82-122.55Z\"]\n};\nvar faFirstOrder = {\n prefix: 'fab',\n iconName: 'first-order',\n icon: [448, 512, [], \"f2b0\", \"M12.9 229.2c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4h-.2zM224 96.6c-7.1 0-14.6.6-21.4 1.7l3.7 67.4-22-64c-14.3 3.7-27.7 9.4-40 16.6l29.4 61.4-45.1-50.9c-11.4 8.9-21.7 19.1-30.6 30.9l50.6 45.4-61.1-29.7c-7.1 12.3-12.9 25.7-16.6 40l64.3 22.6-68-4c-.9 7.1-1.4 14.6-1.4 22s.6 14.6 1.4 21.7l67.7-4-64 22.6c3.7 14.3 9.4 27.7 16.6 40.3l61.1-29.7L97.7 352c8.9 11.7 19.1 22.3 30.9 30.9l44.9-50.9-29.5 61.4c12.3 7.4 25.7 13.1 40 16.9l22.3-64.6-4 68c7.1 1.1 14.6 1.7 21.7 1.7 7.4 0 14.6-.6 21.7-1.7l-4-68.6 22.6 65.1c14.3-4 27.7-9.4 40-16.9L274.9 332l44.9 50.9c11.7-8.9 22-19.1 30.6-30.9l-50.6-45.1 61.1 29.4c7.1-12.3 12.9-25.7 16.6-40.3l-64-22.3 67.4 4c1.1-7.1 1.4-14.3 1.4-21.7s-.3-14.9-1.4-22l-67.7 4 64-22.3c-3.7-14.3-9.1-28-16.6-40.3l-60.9 29.7 50.6-45.4c-8.9-11.7-19.1-22-30.6-30.9l-45.1 50.9 29.4-61.1c-12.3-7.4-25.7-13.1-40-16.9L241.7 166l4-67.7c-7.1-1.2-14.3-1.7-21.7-1.7zM443.4 128v256L224 512 4.6 384V128L224 0l219.4 128zm-17.1 10.3L224 20.9 21.7 138.3v235.1L224 491.1l202.3-117.7V138.3zM224 37.1l187.7 109.4v218.9L224 474.9 36.3 365.4V146.6L224 37.1zm0 50.9c-92.3 0-166.9 75.1-166.9 168 0 92.6 74.6 167.7 166.9 167.7 92 0 166.9-75.1 166.9-167.7 0-92.9-74.9-168-166.9-168z\"]\n};\nvar faFirstOrderAlt = {\n prefix: 'fab',\n iconName: 'first-order-alt',\n icon: [496, 512, [], \"f50a\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 488.21C115.34 496.21 7.79 388.66 7.79 256S115.34 15.79 248 15.79 488.21 123.34 488.21 256 380.66 496.21 248 496.21zm0-459.92C126.66 36.29 28.29 134.66 28.29 256S126.66 475.71 248 475.71 467.71 377.34 467.71 256 369.34 36.29 248 36.29zm0 431.22c-116.81 0-211.51-94.69-211.51-211.51S131.19 44.49 248 44.49 459.51 139.19 459.51 256 364.81 467.51 248 467.51zm186.23-162.98a191.613 191.613 0 0 1-20.13 48.69l-74.13-35.88 61.48 54.82a193.515 193.515 0 0 1-37.2 37.29l-54.8-61.57 35.88 74.27a190.944 190.944 0 0 1-48.63 20.23l-27.29-78.47 4.79 82.93c-8.61 1.18-17.4 1.8-26.33 1.8s-17.72-.62-26.33-1.8l4.76-82.46-27.15 78.03a191.365 191.365 0 0 1-48.65-20.2l35.93-74.34-54.87 61.64a193.85 193.85 0 0 1-37.22-37.28l61.59-54.9-74.26 35.93a191.638 191.638 0 0 1-20.14-48.69l77.84-27.11-82.23 4.76c-1.16-8.57-1.78-17.32-1.78-26.21 0-9 .63-17.84 1.82-26.51l82.38 4.77-77.94-27.16a191.726 191.726 0 0 1 20.23-48.67l74.22 35.92-61.52-54.86a193.85 193.85 0 0 1 37.28-37.22l54.76 61.53-35.83-74.17a191.49 191.49 0 0 1 48.65-20.13l26.87 77.25-4.71-81.61c8.61-1.18 17.39-1.8 26.32-1.8s17.71.62 26.32 1.8l-4.74 82.16 27.05-77.76c17.27 4.5 33.6 11.35 48.63 20.17l-35.82 74.12 54.72-61.47a193.13 193.13 0 0 1 37.24 37.23l-61.45 54.77 74.12-35.86a191.515 191.515 0 0 1 20.2 48.65l-77.81 27.1 82.24-4.75c1.19 8.66 1.82 17.5 1.82 26.49 0 8.88-.61 17.63-1.78 26.19l-82.12-4.75 77.72 27.09z\"]\n};\nvar faFirstdraft = {\n prefix: 'fab',\n iconName: 'firstdraft',\n icon: [384, 512, [], \"f3a1\", \"M384 192h-64v128H192v128H0v-25.6h166.4v-128h128v-128H384V192zm-25.6 38.4v128h-128v128H64V512h192V384h128V230.4h-25.6zm25.6 192h-89.6V512H320v-64h64v-25.6zM0 0v384h128V256h128V128h128V0H0z\"]\n};\nvar faFlickr = {\n prefix: 'fab',\n iconName: 'flickr',\n icon: [448, 512, [], \"f16e\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM144.5 319c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5zm159 0c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5z\"]\n};\nvar faFlipboard = {\n prefix: 'fab',\n iconName: 'flipboard',\n icon: [448, 512, [], \"f44d\", \"M0 32v448h448V32H0zm358.4 179.2h-89.6v89.6h-89.6v89.6H89.6V121.6h268.8v89.6z\"]\n};\nvar faFly = {\n prefix: 'fab',\n iconName: 'fly',\n icon: [384, 512, [], \"f417\", \"M197.8 427.8c12.9 11.7 33.7 33.3 33.2 50.7 0 .8-.1 1.6-.1 2.5-1.8 19.8-18.8 31.1-39.1 31-25-.1-39.9-16.8-38.7-35.8 1-16.2 20.5-36.7 32.4-47.6 2.3-2.1 2.7-2.7 5.6-3.6 3.4 0 3.9.3 6.7 2.8zM331.9 67.3c-16.3-25.7-38.6-40.6-63.3-52.1C243.1 4.5 214-.2 192 0c-44.1 0-71.2 13.2-81.1 17.3C57.3 45.2 26.5 87.2 28 158.6c7.1 82.2 97 176 155.8 233.8 1.7 1.6 4.5 4.5 6.2 5.1l3.3.1c2.1-.7 1.8-.5 3.5-2.1 52.3-49.2 140.7-145.8 155.9-215.7 7-39.2 3.1-72.5-20.8-112.5zM186.8 351.9c-28-51.1-65.2-130.7-69.3-189-3.4-47.5 11.4-131.2 69.3-136.7v325.7zM328.7 180c-16.4 56.8-77.3 128-118.9 170.3C237.6 298.4 275 217 277 158.4c1.6-45.9-9.8-105.8-48-131.4 88.8 18.3 115.5 98.1 99.7 153z\"]\n};\nvar faFontAwesome = {\n prefix: 'fab',\n iconName: 'font-awesome',\n icon: [448, 512, [], \"f2b4\", \"M400 32H48A48 48 0 0 0 0 80V432a48 48 0 0 0 48 48H400a48 48 0 0 0 48-48V80A48 48 0 0 0 400 32ZM336 312c-31.6 11.2-41.2 16-59.8 16-31.4 0-43.2-16-74.6-16a80 80 0 0 0-25.6 4V284a85.9 85.9 0 0 1 25.6-4c31.2 0 43.2 16 74.6 16 10.2 0 17.8-1.4 27.8-4.6v-96c-10 3.2-17.6 4.6-27.8 4.6-31.4 0-43.2-16-74.6-16-25.4 0-37.4 10.4-57.6 14.4V352a16 16 0 0 1-32 0V160a16 16 0 0 1 32 0v6.4c20.2-4 32.2-14.4 57.6-14.4 31.2 0 43.2 16 74.6 16 18.6 0 28.2-4.8 59.8-16Z\"]\n};\nvar faFontAwesomeAlt = {\n prefix: 'fab',\n iconName: 'font-awesome-alt',\n icon: [448, 512, [], \"f35c\", \"M400 32H48A48 48 0 0 0 0 80V432a48 48 0 0 0 48 48H400a48 48 0 0 0 48-48V80A48 48 0 0 0 400 32Zm16 400a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V80A16 16 0 0 1 48 64H400a16 16 0 0 1 16 16ZM201.6 152c-25.4 0-37.4 10.4-57.6 14.4V160a16 16 0 0 0-32 0V352a16 16 0 0 0 32 0V198.4c20.2-4 32.2-14.4 57.6-14.4 31.4 0 43.2 16 74.6 16 10.2 0 17.8-1.4 27.8-4.6v96c-10 3.2-17.6 4.6-27.8 4.6-31.4 0-43.4-16-74.6-16a85.9 85.9 0 0 0-25.6 4v32a80 80 0 0 1 25.6-4c31.4 0 43.2 16 74.6 16 18.6 0 28.2-4.8 59.8-16V152c-31.6 11.2-41.2 16-59.8 16C244.8 168 232.8 152 201.6 152Z\"]\n};\nvar faFontAwesomeFlag = {\n prefix: 'fab',\n iconName: 'font-awesome-flag',\n icon: [448, 512, [], \"f425\", \"M448 48V384c-63 23-82 32-119 32-63 0-87-32-150-32-20 0-36 4-51 8V328c15-4 31-8 51-8 63 0 87 32 150 32 20 0 35-3 55-9V135c-20 6-35 9-55 9-63 0-87-32-150-32-51 0-75 21-115 29V448a31.6 31.6 0 0 1-32 32A31.6 31.6 0 0 1 0 448V64A31.6 31.6 0 0 1 32 32 31.6 31.6 0 0 1 64 64V77c40-8 64-29 115-29 63 0 87 32 150 32C366 80 385 71 448 48Z\"]\n};\nvar faFontAwesomeLogoFull = {\n prefix: 'fab',\n iconName: 'font-awesome-logo-full',\n icon: [3992, 512, [\"Font Awesome\"], \"f4e6\", \"M1209.7 156.5c-57.8 0-102 43.9-102 99.1 0 56 44.6 99.1 102 99.1 57.4 0 102-43.1 102-99.1C1311.7 200.4 1267.5 156.5 1209.7 156.5Zm0 152.7c-35.1 0-51.8-27.4-51.8-53.2 0-25.8 16.7-53.2 51.8-53.2 35.1 0 51.8 27.8 51.8 53.2C1261.1 281.8 1244.8 309.2 1209.7 309.2Zm962.1-136.1c-4.4-10.9-12.3-16.5-23.5-16.5s-19.1 5.6-23.5 16.5l-59.4 145.8c-7.2 17.7 2.8 27.4 4.4 29a24.6 24.6 0 0 0 17.5 6.8c10.8 0 18.7-6 23.1-18.1l4-10.1h67.7l4 10.1c4.8 12.1 12.3 18.1 23.1 18.1a24.6 24.6 0 0 0 17.5-6.8c10-10.1 6.8-22.6 4.4-29Zm-43 113.6 19.1-56 19.1 56Zm-574.5-130.1c-14.3 0-24.7 10.9-24.7 25.4v76.5l-68.5-85.8c-4.4-5.6-11.6-16.1-25.5-16.1-19.1 0-24.3 17.7-24.3 25.4V329.7c0 14.1 10.4 25.4 24.7 25.4 14.3 0 24.7-10.9 24.7-25.4V252.8l68.9 86.2c4.8 5.6 11.6 16.1 25.5 16.1 19.1 0 23.9-17.3 23.9-25.4V181.9C1579 167.4 1568.6 156.5 1554.3 156.5Zm-554.1 1.6H916.5c-19.9 0-25.1 17.3-25.1 25.4V328.1c0 19.7 16.7 25.4 24.7 25.4 8 0 24.7-5.2 24.7-25.4V285h44.6c12.8 0 22.7-9.3 22.7-22.6 0-17.7-15.5-22.1-22.7-22.1H940.8V203.6h59.4c12.8 0 22.7-9.3 22.7-22.6C1022.9 163 1007.3 158.1 1000.2 158.1Zm815.1 0H1691.7c-7.2 0-22.7 4.4-22.7 22.2 0 13.3 10 22.6 22.7 22.6h37V327.7c0 14.1 10.4 25.4 24.7 25.4 14.3 0 24.7-10.9 24.7-25.4V202.8h37c12.7 0 22.7-9.3 22.7-22.6C1837.9 163 1822.4 158.1 1815.2 158.1Zm1789.5-1.6c-9.6 0-17.5 6-25.1 18.1l-46.6 76.1L3486.4 174.6q-10.8-18.1-25.1-18.1c-19.5 0-24.7 18.1-24.7 25.8V329.7c0 14.1 10.4 25.4 24.7 25.4s24.7-10.9 24.7-25.4V262.8L3510.7 302.7c6.4 10.1 13.9 15.3 22.3 15.3 8.8 0 15.9-5.2 22.3-15.3l24.7-39.9v66.9c0 14.1 10.3 25.4 24.7 25.4 14.3 0 24.7-10.9 24.7-25.4V182.3C3629.4 174.2 3624.6 156.5 3604.7 156.5Zm248.6 149.8h-65.7V272.9h39.4c11.9 0 21.1-8.9 21.1-20.9 0-12.1-9.2-20.9-21.1-20.9h-39.4V204.8h62.1c12.8 0 22.7-9.3 22.7-22.6 0-17.7-15.6-22.2-22.7-22.2h-86.4c-19.9 0-25.1 17.3-25.1 25.4V326.5c0 8.1 5.2 25.4 25.1 25.4h90c12.8 0 22.7-9.3 22.7-22.6C3876 311.2 3860.5 306.3 3853.3 306.3ZM3235 156.5c-57.8 0-102 43.9-102 99.1 0 56 44.6 99.1 102 99.1 57.4 0 102-43.1 102-99.1C3337 200.4 3292.8 156.5 3235 156.5Zm0 152.7c-35.1 0-51.8-27.4-51.8-53.2 0-25.8 16.7-53.2 51.8-53.2 35.1 0 51.8 27.8 51.8 53.2C3286.8 281.8 3270.1 309.2 3235 309.2ZM2550.2 156.5c-11.2 0-19.1 5.6-23.1 16.5l-34.3 94.7-31.5-92.2c-4.4-12.5-12.3-18.9-24.3-18.9-11.9 0-19.9 6.4-24.3 18.9l-31.5 92.2-34.3-95.5q-5.4-15.7-22.7-15.7c-6.8 0-12.3 2.4-17.5 7.3-5.2 5.2-10.8 14.5-4.8 28.6l55.8 145.8c4 11.3 11.6 16.9 23.1 16.9q16.7 0 22.7-16.9l33.5-91.8 33.5 91.8q6 16.9 22.7 16.9c11.2 0 19.1-5.6 23.1-16.9l55.8-145.8c3.6-9.3 4.4-19.3-4.8-28.6A23 23 0 0 0 2550.2 156.5Zm444.2 81-21.9-9.3c-11.9-4.8-16.3-8.5-16.3-15.7q0-12.1 16.7-12.1c12.7 0 19.5 7.7 24.3 10.9 7.2 5.2 18.3 6.8 27.9-2 10.8-10.5 6.8-23.8 1.2-30.6-12.3-14.9-30.3-22.2-53.8-22.2-19.1 0-35.1 5.2-47.4 15.7-12.3 10.5-18.7 24.2-18.7 41.1 0 24.2 15.9 43.5 47.8 57.6l19.5 8.9c15.9 6.8 19.1 9.7 19.1 17.7 0 9.3-6.4 14.1-19.5 14.1-19.1 0-34.7-14.9-36.3-16.1-10.8-7.3-21.5-2-26.3 2.8-6.8 6.4-12.7 20.9 3.2 36.2 6.8 6.4 15.5 11.7 26.7 15.3a94.6 94.6 0 0 0 32.7 5.6c19.9 0 36.7-5.2 49.8-16.1 13.1-10.9 19.5-25.4 19.5-43.5q0-20.5-12-33.8C3022.7 253.2 3010.7 244.3 2994.4 237.5Zm-206.4 68.9h-65.7V272.9h39.4c12 0 21.1-8.9 21.1-20.9 0-12.1-9.2-20.9-21.1-20.9h-39.4V204.8h62.1c12.8 0 22.7-9.3 22.7-22.6 0-17.7-15.5-22.2-22.7-22.2h-86.4c-19.9 0-25.1 17.3-25.1 25.4V326.5c0 8.1 5.2 25.4 25.1 25.4h90c12.7 0 22.7-9.3 22.7-22.6C2810.8 311.2 2795.2 306.3 2788 306.3ZM178.3 49.1c-50.5 0-74.4 20.7-114.6 28.7V65A31.8 31.8 0 1 0 0 65V447a31.8 31.8 0 0 0 63.7 0V141.4c40.2-8 64.1-28.7 114.6-28.7 62.5 0 86 31.8 148.4 31.8 20.3 0 35.4-2.8 55.3-9.2v191c-19.9 6.4-35 9.2-55.3 9.2-62.5 0-86.4-31.8-148.4-31.8-20.3 0-36.2 3.6-50.9 8V375.4a159.1 159.1 0 0 1 50.9-8c62.5 0 86 31.8 148.4 31.8 37 0 56.1-9.6 119-31.8V49.1C382.8 71.4 363.7 80.9 326.7 80.9 264.2 80.9 240.4 49.1 178.3 49.1Z\"]\n};\nvar faFonticons = {\n prefix: 'fab',\n iconName: 'fonticons',\n icon: [448, 512, [], \"f280\", \"M0 32v448h448V32zm187 140.9c-18.4 0-19 9.9-19 27.4v23.3c0 2.4-3.5 4.4-.6 4.4h67.4l-11.1 37.3H168v112.9c0 5.8-2 6.7 3.2 7.3l43.5 4.1v25.1H84V389l21.3-2c5.2-.6 6.7-2.3 6.7-7.9V267.7c0-2.3-2.9-2.3-5.8-2.3H84V228h28v-21c0-49.6 26.5-70 77.3-70 34.1 0 64.7 8.2 64.7 52.8l-50.7 6.1c.3-18.7-4.4-23-16.3-23zm74.3 241.8v-25.1l20.4-2.6c5.2-.6 7.6-1.7 7.6-7.3V271.8c0-4.1-2.9-6.7-6.7-7.9l-24.2-6.4 6.7-29.5h80.2v151.7c0 5.8-2.6 6.4 2.9 7.3l15.7 2.6v25.1zm80.8-255.5l9 33.2-7.3 7.3-31.2-16.6-31.2 16.6-7.3-7.3 9-33.2-21.8-24.2 3.5-9.6h27.7l15.5-28h9.3l15.5 28h27.7l3.5 9.6z\"]\n};\nvar faFonticonsFi = {\n prefix: 'fab',\n iconName: 'fonticons-fi',\n icon: [384, 512, [], \"f3a2\", \"M114.4 224h92.4l-15.2 51.2h-76.4V433c0 8-2.8 9.2 4.4 10l59.6 5.6V483H0v-35.2l29.2-2.8c7.2-.8 9.2-3.2 9.2-10.8V278.4c0-3.2-4-3.2-8-3.2H0V224h38.4v-28.8c0-68 36.4-96 106-96 46.8 0 88.8 11.2 88.8 72.4l-69.6 8.4c.4-25.6-6-31.6-22.4-31.6-25.2 0-26 13.6-26 37.6v32c0 3.2-4.8 6-.8 6zM384 483H243.2v-34.4l28-3.6c7.2-.8 10.4-2.4 10.4-10V287c0-5.6-4-9.2-9.2-10.8l-33.2-8.8 9.2-40.4h110v208c0 8-3.6 8.8 4 10l21.6 3.6V483zm-30-347.2l12.4 45.6-10 10-42.8-22.8-42.8 22.8-10-10 12.4-45.6-30-36.4 4.8-10h38L307.2 51H320l21.2 38.4h38l4.8 13.2-30 33.2z\"]\n};\nvar faFortAwesome = {\n prefix: 'fab',\n iconName: 'fort-awesome',\n icon: [512, 512, [], \"f286\", \"M489.2 287.9h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6V146.2c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-6-8-4.6-11.7-4.6v-38c8.3-2 17.1-3.4 25.7-3.4 10.9 0 20.9 4.3 31.4 4.3 4.6 0 27.7-1.1 27.7-8v-60c0-2.6-2-4.6-4.6-4.6-5.1 0-15.1 4.3-24 4.3-9.7 0-20.9-4.3-32.6-4.3-8 0-16 1.1-23.7 2.9v-4.9c5.4-2.6 9.1-8.3 9.1-14.3 0-20.7-31.4-20.8-31.4 0 0 6 3.7 11.7 9.1 14.3v111.7c-3.7 0-11.7-1.4-11.7 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32H128v-32c0-2.6-2-4.6-4.6-4.6H96c-2.6 0-4.6 2-4.6 4.6v178.3H54.8v-32c0-2.6-2-4.6-4.6-4.6H22.8c-2.6 0-4.6 2-4.6 4.6V512h182.9v-96c0-72.6 109.7-72.6 109.7 0v96h182.9V292.5c.1-2.6-1.9-4.6-4.5-4.6zm-288.1-4.5c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64zm146.4 0c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64z\"]\n};\nvar faFortAwesomeAlt = {\n prefix: 'fab',\n iconName: 'fort-awesome-alt',\n icon: [512, 512, [], \"f3a3\", \"M208 237.4h-22.2c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7H208c2.1 0 3.7-1.6 3.7-3.7v-51.7c0-2.1-1.6-3.7-3.7-3.7zm118.2 0H304c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7h22.2c2.1 0 3.7-1.6 3.7-3.7v-51.7c-.1-2.1-1.7-3.7-3.7-3.7zm132-125.1c-2.3-3.2-4.6-6.4-7.1-9.5-9.8-12.5-20.8-24-32.8-34.4-4.5-3.9-9.1-7.6-13.9-11.2-1.6-1.2-3.2-2.3-4.8-3.5C372 34.1 340.3 20 306 13c-16.2-3.3-32.9-5-50-5s-33.9 1.7-50 5c-34.3 7.1-66 21.2-93.3 40.8-1.6 1.1-3.2 2.3-4.8 3.5-4.8 3.6-9.4 7.3-13.9 11.2-3 2.6-5.9 5.3-8.8 8s-5.7 5.5-8.4 8.4c-5.5 5.7-10.7 11.8-15.6 18-2.4 3.1-4.8 6.3-7.1 9.5C25.2 153 8.3 202.5 8.3 256c0 2 .1 4 .1 6 .1.7.1 1.3.1 2 .1 1.3.1 2.7.2 4 0 .8.1 1.5.1 2.3 0 1.3.1 2.5.2 3.7.1.8.1 1.6.2 2.4.1 1.1.2 2.3.3 3.5 0 .8.1 1.6.2 2.4.1 1.2.3 2.4.4 3.6.1.8.2 1.5.3 2.3.1 1.3.3 2.6.5 3.9.1.6.2 1.3.3 1.9l.9 5.7c.1.6.2 1.1.3 1.7.3 1.3.5 2.7.8 4 .2.8.3 1.6.5 2.4.2 1 .5 2.1.7 3.2.2.9.4 1.7.6 2.6.2 1 .4 2 .7 3 .2.9.5 1.8.7 2.7.3 1 .5 1.9.8 2.9.3.9.5 1.8.8 2.7.2.9.5 1.9.8 2.8s.5 1.8.8 2.7c.3 1 .6 1.9.9 2.8.6 1.6 1.1 3.3 1.7 4.9.4 1 .7 1.9 1 2.8.3 1 .7 2 1.1 3 .3.8.6 1.5.9 2.3l1.2 3c.3.7.6 1.5.9 2.2.4 1 .9 2 1.3 3l.9 2.1c.5 1 .9 2 1.4 3 .3.7.6 1.3.9 2 .5 1 1 2.1 1.5 3.1.2.6.5 1.1.8 1.7.6 1.1 1.1 2.2 1.7 3.3.1.2.2.3.3.5 2.2 4.1 4.4 8.2 6.8 12.2.2.4.5.8.7 1.2.7 1.1 1.3 2.2 2 3.3.3.5.6.9.9 1.4.6 1.1 1.3 2.1 2 3.2.3.5.6.9.9 1.4.7 1.1 1.4 2.1 2.1 3.2.2.4.5.8.8 1.2.7 1.1 1.5 2.2 2.3 3.3.2.2.3.5.5.7 37.5 51.7 94.4 88.5 160 99.4.9.1 1.7.3 2.6.4 1 .2 2.1.4 3.1.5s1.9.3 2.8.4c1 .2 2 .3 3 .4.9.1 1.9.2 2.9.3s1.9.2 2.9.3 2.1.2 3.1.3c.9.1 1.8.1 2.7.2 1.1.1 2.3.1 3.4.2.8 0 1.7.1 2.5.1 1.3 0 2.6.1 3.9.1.7.1 1.4.1 2.1.1 2 .1 4 .1 6 .1s4-.1 6-.1c.7 0 1.4-.1 2.1-.1 1.3 0 2.6 0 3.9-.1.8 0 1.7-.1 2.5-.1 1.1-.1 2.3-.1 3.4-.2.9 0 1.8-.1 2.7-.2 1-.1 2.1-.2 3.1-.3s1.9-.2 2.9-.3c.9-.1 1.9-.2 2.9-.3s2-.3 3-.4 1.9-.3 2.8-.4c1-.2 2.1-.3 3.1-.5.9-.1 1.7-.3 2.6-.4 65.6-11 122.5-47.7 160.1-102.4.2-.2.3-.5.5-.7.8-1.1 1.5-2.2 2.3-3.3.2-.4.5-.8.8-1.2.7-1.1 1.4-2.1 2.1-3.2.3-.5.6-.9.9-1.4.6-1.1 1.3-2.1 2-3.2.3-.5.6-.9.9-1.4.7-1.1 1.3-2.2 2-3.3.2-.4.5-.8.7-1.2 2.4-4 4.6-8.1 6.8-12.2.1-.2.2-.3.3-.5.6-1.1 1.1-2.2 1.7-3.3.2-.6.5-1.1.8-1.7.5-1 1-2.1 1.5-3.1.3-.7.6-1.3.9-2 .5-1 1-2 1.4-3l.9-2.1c.5-1 .9-2 1.3-3 .3-.7.6-1.5.9-2.2l1.2-3c.3-.8.6-1.5.9-2.3.4-1 .7-2 1.1-3s.7-1.9 1-2.8c.6-1.6 1.2-3.3 1.7-4.9.3-1 .6-1.9.9-2.8s.5-1.8.8-2.7c.2-.9.5-1.9.8-2.8s.6-1.8.8-2.7c.3-1 .5-1.9.8-2.9.2-.9.5-1.8.7-2.7.2-1 .5-2 .7-3 .2-.9.4-1.7.6-2.6.2-1 .5-2.1.7-3.2.2-.8.3-1.6.5-2.4.3-1.3.6-2.7.8-4 .1-.6.2-1.1.3-1.7l.9-5.7c.1-.6.2-1.3.3-1.9.1-1.3.3-2.6.5-3.9.1-.8.2-1.5.3-2.3.1-1.2.3-2.4.4-3.6 0-.8.1-1.6.2-2.4.1-1.1.2-2.3.3-3.5.1-.8.1-1.6.2-2.4.1 1.7.1.5.2-.7 0-.8.1-1.5.1-2.3.1-1.3.2-2.7.2-4 .1-.7.1-1.3.1-2 .1-2 .1-4 .1-6 0-53.5-16.9-103-45.8-143.7zM448 371.5c-9.4 15.5-20.6 29.9-33.6 42.9-20.6 20.6-44.5 36.7-71.2 48-13.9 5.8-28.2 10.3-42.9 13.2v-75.8c0-58.6-88.6-58.6-88.6 0v75.8c-14.7-2.9-29-7.3-42.9-13.2-26.7-11.3-50.6-27.4-71.2-48-13-13-24.2-27.4-33.6-42.9v-71.3c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7V326h29.6V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7H208c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-4.8 6.5-3.7 9.5-3.7V88.1c-4.4-2-7.4-6.7-7.4-11.5 0-16.8 25.4-16.8 25.4 0 0 4.8-3 9.4-7.4 11.5V92c6.3-1.4 12.7-2.3 19.2-2.3 9.4 0 18.4 3.5 26.3 3.5 7.2 0 15.2-3.5 19.4-3.5 2.1 0 3.7 1.6 3.7 3.7v48.4c0 5.6-18.7 6.5-22.4 6.5-8.6 0-16.6-3.5-25.4-3.5-7 0-14.1 1.2-20.8 2.8v30.7c3 0 9.5-1.1 9.5 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v144h29.5v-25.8c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7z\"]\n};\nvar faForumbee = {\n prefix: 'fab',\n iconName: 'forumbee',\n icon: [448, 512, [], \"f211\", \"M5.8 309.7C2 292.7 0 275.5 0 258.3 0 135 99.8 35 223.1 35c16.6 0 33.3 2 49.3 5.5C149 87.5 51.9 186 5.8 309.7zm392.9-189.2C385 103 369 87.8 350.9 75.2c-149.6 44.3-266.3 162.1-309.7 312 12.5 18.1 28 35.6 45.2 49 43.1-151.3 161.2-271.7 312.3-315.7zm15.8 252.7c15.2-25.1 25.4-53.7 29.5-82.8-79.4 42.9-145 110.6-187.6 190.3 30-4.4 58.9-15.3 84.6-31.3 35 13.1 70.9 24.3 107 33.6-9.3-36.5-20.4-74.5-33.5-109.8zm29.7-145.5c-2.6-19.5-7.9-38.7-15.8-56.8C290.5 216.7 182 327.5 137.1 466c18.1 7.6 37 12.5 56.6 15.2C240 367.1 330.5 274.4 444.2 227.7z\"]\n};\nvar faFoursquare = {\n prefix: 'fab',\n iconName: 'foursquare',\n icon: [368, 512, [], \"f180\", \"M323.1 3H49.9C12.4 3 0 31.3 0 49.1v433.8c0 20.3 12.1 27.7 18.2 30.1 6.2 2.5 22.8 4.6 32.9-7.1C180 356.5 182.2 354 182.2 354c3.1-3.4 3.4-3.1 6.8-3.1h83.4c35.1 0 40.6-25.2 44.3-39.7l48.6-243C373.8 25.8 363.1 3 323.1 3zm-16.3 73.8l-11.4 59.7c-1.2 6.5-9.5 13.2-16.9 13.2H172.1c-12 0-20.6 8.3-20.6 20.3v13c0 12 8.6 20.6 20.6 20.6h90.4c8.3 0 16.6 9.2 14.8 18.2-1.8 8.9-10.5 53.8-11.4 58.8-.9 4.9-6.8 13.5-16.9 13.5h-73.5c-13.5 0-17.2 1.8-26.5 12.6 0 0-8.9 11.4-89.5 108.3-.9.9-1.8.6-1.8-.3V75.9c0-7.7 6.8-16.6 16.6-16.6h219c8.2 0 15.6 7.7 13.5 17.5z\"]\n};\nvar faFreeCodeCamp = {\n prefix: 'fab',\n iconName: 'free-code-camp',\n icon: [576, 512, [], \"f2c5\", \"M97.22,96.21c10.36-10.65,16-17.12,16-21.9,0-2.76-1.92-5.51-3.83-7.42A14.81,14.81,0,0,0,101,64.05c-8.48,0-20.92,8.79-35.84,25.69C23.68,137,2.51,182.81,3.37,250.34s17.47,117,54.06,161.87C76.22,435.86,90.62,448,100.9,448a13.55,13.55,0,0,0,8.37-3.84c1.91-2.76,3.81-5.63,3.81-8.38,0-5.63-3.86-12.2-13.2-20.55-44.45-42.33-67.32-97-67.48-165C32.25,188.8,54,137.83,97.22,96.21ZM239.47,420.07c.58.37.91.55.91.55Zm93.79.55.17-.13C333.24,420.62,333.17,420.67,333.26,420.62Zm3.13-158.18c-16.24-4.15,50.41-82.89-68.05-177.17,0,0,15.54,49.38-62.83,159.57-74.27,104.35,23.46,168.73,34,175.23-6.73-4.35-47.4-35.7,9.55-128.64,11-18.3,25.53-34.87,43.5-72.16,0,0,15.91,22.45,7.6,71.13C287.7,364,354,342.91,355,343.94c22.75,26.78-17.72,73.51-21.58,76.55,5.49-3.65,117.71-78,33-188.1C360.43,238.4,352.62,266.59,336.39,262.44ZM510.88,89.69C496,72.79,483.52,64,475,64a14.81,14.81,0,0,0-8.39,2.84c-1.91,1.91-3.83,4.66-3.83,7.42,0,4.78,5.6,11.26,16,21.9,43.23,41.61,65,92.59,64.82,154.06-.16,68-23,122.63-67.48,165-9.34,8.35-13.18,14.92-13.2,20.55,0,2.75,1.9,5.62,3.81,8.38A13.61,13.61,0,0,0,475.1,448c10.28,0,24.68-12.13,43.47-35.79,36.59-44.85,53.14-94.38,54.06-161.87S552.32,137,510.88,89.69Z\"]\n};\nvar faFreebsd = {\n prefix: 'fab',\n iconName: 'freebsd',\n icon: [448, 512, [], \"f3a4\", \"M303.7 96.2c11.1-11.1 115.5-77 139.2-53.2 23.7 23.7-42.1 128.1-53.2 139.2-11.1 11.1-39.4.9-63.1-22.9-23.8-23.7-34.1-52-22.9-63.1zM109.9 68.1C73.6 47.5 22 24.6 5.6 41.1c-16.6 16.6 7.1 69.4 27.9 105.7 18.5-32.2 44.8-59.3 76.4-78.7zM406.7 174c3.3 11.3 2.7 20.7-2.7 26.1-20.3 20.3-87.5-27-109.3-70.1-18-32.3-11.1-53.4 14.9-48.7 5.7-3.6 12.3-7.6 19.6-11.6-29.8-15.5-63.6-24.3-99.5-24.3-119.1 0-215.6 96.5-215.6 215.6 0 119 96.5 215.6 215.6 215.6S445.3 380.1 445.3 261c0-38.4-10.1-74.5-27.7-105.8-3.9 7-7.6 13.3-10.9 18.8z\"]\n};\nvar faFulcrum = {\n prefix: 'fab',\n iconName: 'fulcrum',\n icon: [320, 512, [], \"f50b\", \"M95.75 164.14l-35.38 43.55L25 164.14l35.38-43.55zM144.23 0l-20.54 198.18L72.72 256l51 57.82L144.23 512V300.89L103.15 256l41.08-44.89zm79.67 164.14l35.38 43.55 35.38-43.55-35.38-43.55zm-48.48 47L216.5 256l-41.08 44.89V512L196 313.82 247 256l-51-57.82L175.42 0z\"]\n};\nvar faGalacticRepublic = {\n prefix: 'fab',\n iconName: 'galactic-republic',\n icon: [496, 512, [], \"f50c\", \"M248 504C111.25 504 0 392.75 0 256S111.25 8 248 8s248 111.25 248 248-111.25 248-248 248zm0-479.47C120.37 24.53 16.53 128.37 16.53 256S120.37 487.47 248 487.47 479.47 383.63 479.47 256 375.63 24.53 248 24.53zm27.62 21.81v24.62a185.933 185.933 0 0 1 83.57 34.54l17.39-17.36c-28.75-22.06-63.3-36.89-100.96-41.8zm-55.37.07c-37.64 4.94-72.16 19.8-100.88 41.85l17.28 17.36h.08c24.07-17.84 52.55-30.06 83.52-34.67V46.41zm12.25 50.17v82.87c-10.04 2.03-19.42 5.94-27.67 11.42l-58.62-58.59-21.93 21.93 58.67 58.67c-5.47 8.23-9.45 17.59-11.47 27.62h-82.9v31h82.9c2.02 10.02 6.01 19.31 11.47 27.54l-58.67 58.69 21.93 21.93 58.62-58.62a77.873 77.873 0 0 0 27.67 11.47v82.9h31v-82.9c10.05-2.03 19.37-6.06 27.62-11.55l58.67 58.69 21.93-21.93-58.67-58.69c5.46-8.23 9.47-17.52 11.5-27.54h82.87v-31h-82.87c-2.02-10.02-6.03-19.38-11.5-27.62l58.67-58.67-21.93-21.93-58.67 58.67c-8.25-5.49-17.57-9.47-27.62-11.5V96.58h-31zm183.24 30.72l-17.36 17.36a186.337 186.337 0 0 1 34.67 83.67h24.62c-4.95-37.69-19.83-72.29-41.93-101.03zm-335.55.13c-22.06 28.72-36.91 63.26-41.85 100.91h24.65c4.6-30.96 16.76-59.45 34.59-83.52l-17.39-17.39zM38.34 283.67c4.92 37.64 19.75 72.18 41.8 100.9l17.36-17.39c-17.81-24.07-29.92-52.57-34.51-83.52H38.34zm394.7 0c-4.61 30.99-16.8 59.5-34.67 83.6l17.36 17.36c22.08-28.74 36.98-63.29 41.93-100.96h-24.62zM136.66 406.38l-17.36 17.36c28.73 22.09 63.3 36.98 100.96 41.93v-24.64c-30.99-4.63-59.53-16.79-83.6-34.65zm222.53.05c-24.09 17.84-52.58 30.08-83.57 34.67v24.57c37.67-4.92 72.21-19.79 100.96-41.85l-17.31-17.39h-.08z\"]\n};\nvar faGalacticSenate = {\n prefix: 'fab',\n iconName: 'galactic-senate',\n icon: [512, 512, [], \"f50d\", \"M249.86 33.48v26.07C236.28 80.17 226 168.14 225.39 274.9c11.74-15.62 19.13-33.33 19.13-48.24v-16.88c-.03-5.32.75-10.53 2.19-15.65.65-2.14 1.39-4.08 2.62-5.82 1.23-1.75 3.43-3.79 6.68-3.79 3.24 0 5.45 2.05 6.68 3.79 1.23 1.75 1.97 3.68 2.62 5.82 1.44 5.12 2.22 10.33 2.19 15.65v16.88c0 14.91 7.39 32.62 19.13 48.24-.63-106.76-10.91-194.73-24.49-215.35V33.48h-12.28zm-26.34 147.77c-9.52 2.15-18.7 5.19-27.46 9.08 8.9 16.12 9.76 32.64 1.71 37.29-8 4.62-21.85-4.23-31.36-19.82-11.58 8.79-21.88 19.32-30.56 31.09 14.73 9.62 22.89 22.92 18.32 30.66-4.54 7.7-20.03 7.14-35.47-.96-5.78 13.25-9.75 27.51-11.65 42.42 9.68.18 18.67 2.38 26.18 6.04 17.78-.3 32.77-1.96 40.49-4.22 5.55-26.35 23.02-48.23 46.32-59.51.73-25.55 1.88-49.67 3.48-72.07zm64.96 0c1.59 22.4 2.75 46.52 3.47 72.07 23.29 11.28 40.77 33.16 46.32 59.51 7.72 2.26 22.71 3.92 40.49 4.22 7.51-3.66 16.5-5.85 26.18-6.04-1.9-14.91-5.86-29.17-11.65-42.42-15.44 8.1-30.93 8.66-35.47.96-4.57-7.74 3.6-21.05 18.32-30.66-8.68-11.77-18.98-22.3-30.56-31.09-9.51 15.59-23.36 24.44-31.36 19.82-8.05-4.65-7.19-21.16 1.71-37.29a147.49 147.49 0 0 0-27.45-9.08zm-32.48 8.6c-3.23 0-5.86 8.81-6.09 19.93h-.05v16.88c0 41.42-49.01 95.04-93.49 95.04-52 0-122.75-1.45-156.37 29.17v2.51c9.42 17.12 20.58 33.17 33.18 47.97C45.7 380.26 84.77 360.4 141.2 360c45.68 1.02 79.03 20.33 90.76 40.87.01.01-.01.04 0 .05 7.67 2.14 15.85 3.23 24.04 3.21 8.19.02 16.37-1.07 24.04-3.21.01-.01-.01-.04 0-.05 11.74-20.54 45.08-39.85 90.76-40.87 56.43.39 95.49 20.26 108.02 41.35 12.6-14.8 23.76-30.86 33.18-47.97v-2.51c-33.61-30.62-104.37-29.17-156.37-29.17-44.48 0-93.49-53.62-93.49-95.04v-16.88h-.05c-.23-11.12-2.86-19.93-6.09-19.93zm0 96.59c22.42 0 40.6 18.18 40.6 40.6s-18.18 40.65-40.6 40.65-40.6-18.23-40.6-40.65c0-22.42 18.18-40.6 40.6-40.6zm0 7.64c-18.19 0-32.96 14.77-32.96 32.96S237.81 360 256 360s32.96-14.77 32.96-32.96-14.77-32.96-32.96-32.96zm0 6.14c14.81 0 26.82 12.01 26.82 26.82s-12.01 26.82-26.82 26.82-26.82-12.01-26.82-26.82 12.01-26.82 26.82-26.82zm-114.8 66.67c-10.19.07-21.6.36-30.5 1.66.43 4.42 1.51 18.63 7.11 29.76 9.11-2.56 18.36-3.9 27.62-3.9 41.28.94 71.48 34.35 78.26 74.47l.11 4.7c10.4 1.91 21.19 2.94 32.21 2.94 11.03 0 21.81-1.02 32.21-2.94l.11-4.7c6.78-40.12 36.98-73.53 78.26-74.47 9.26 0 18.51 1.34 27.62 3.9 5.6-11.13 6.68-25.34 7.11-29.76-8.9-1.3-20.32-1.58-30.5-1.66-18.76.42-35.19 4.17-48.61 9.67-12.54 16.03-29.16 30.03-49.58 33.07-.09.02-.17.04-.27.05-.05.01-.11.04-.16.05-5.24 1.07-10.63 1.6-16.19 1.6-5.55 0-10.95-.53-16.19-1.6-.05-.01-.11-.04-.16-.05-.1-.02-.17-.04-.27-.05-20.42-3.03-37.03-17.04-49.58-33.07-13.42-5.49-29.86-9.25-48.61-9.67z\"]\n};\nvar faGetPocket = {\n prefix: 'fab',\n iconName: 'get-pocket',\n icon: [448, 512, [], \"f265\", \"M407.6 64h-367C18.5 64 0 82.5 0 104.6v135.2C0 364.5 99.7 464 224.2 464c124 0 223.8-99.5 223.8-224.2V104.6c0-22.4-17.7-40.6-40.4-40.6zm-162 268.5c-12.4 11.8-31.4 11.1-42.4 0C89.5 223.6 88.3 227.4 88.3 209.3c0-16.9 13.8-30.7 30.7-30.7 17 0 16.1 3.8 105.2 89.3 90.6-86.9 88.6-89.3 105.5-89.3 16.9 0 30.7 13.8 30.7 30.7 0 17.8-2.9 15.7-114.8 123.2z\"]\n};\nvar faGg = {\n prefix: 'fab',\n iconName: 'gg',\n icon: [512, 512, [], \"f260\", \"M179.2 230.4l102.4 102.4-102.4 102.4L0 256 179.2 76.8l44.8 44.8-25.6 25.6-19.2-19.2-128 128 128 128 51.5-51.5-77.1-76.5 25.6-25.6zM332.8 76.8L230.4 179.2l102.4 102.4 25.6-25.6-77.1-76.5 51.5-51.5 128 128-128 128-19.2-19.2-25.6 25.6 44.8 44.8L512 256 332.8 76.8z\"]\n};\nvar faGgCircle = {\n prefix: 'fab',\n iconName: 'gg-circle',\n icon: [512, 512, [], \"f261\", \"M257 8C120 8 9 119 9 256s111 248 248 248 248-111 248-248S394 8 257 8zm-49.5 374.8L81.8 257.1l125.7-125.7 35.2 35.4-24.2 24.2-11.1-11.1-77.2 77.2 77.2 77.2 26.6-26.6-53.1-52.9 24.4-24.4 77.2 77.2-75 75.2zm99-2.2l-35.2-35.2 24.1-24.4 11.1 11.1 77.2-77.2-77.2-77.2-26.5 26.5 53.1 52.9-24.4 24.4-77.2-77.2 75-75L432.2 255 306.5 380.6z\"]\n};\nvar faGit = {\n prefix: 'fab',\n iconName: 'git',\n icon: [512, 512, [], \"f1d3\", \"M216.29 158.39H137C97 147.9 6.51 150.63 6.51 233.18c0 30.09 15 51.23 35 61-25.1 23-37 33.85-37 49.21 0 11 4.47 21.14 17.89 26.81C8.13 383.61 0 393.35 0 411.65c0 32.11 28.05 50.82 101.63 50.82 70.75 0 111.79-26.42 111.79-73.18 0-58.66-45.16-56.5-151.63-63l13.43-21.55c27.27 7.58 118.7 10 118.7-67.89 0-18.7-7.73-31.71-15-41.07l37.41-2.84zm-63.42 241.9c0 32.06-104.89 32.1-104.89 2.43 0-8.14 5.27-15 10.57-21.54 77.71 5.3 94.32 3.37 94.32 19.11zm-50.81-134.58c-52.8 0-50.46-71.16 1.2-71.16 49.54 0 50.82 71.16-1.2 71.16zm133.3 100.51v-32.1c26.75-3.66 27.24-2 27.24-11V203.61c0-8.5-2.05-7.38-27.24-16.26l4.47-32.92H324v168.71c0 6.51.4 7.32 6.51 8.14l20.73 2.84v32.1zm52.45-244.31c-23.17 0-36.59-13.43-36.59-36.61s13.42-35.77 36.59-35.77c23.58 0 37 12.62 37 35.77s-13.42 36.61-37 36.61zM512 350.46c-17.49 8.53-43.1 16.26-66.28 16.26-48.38 0-66.67-19.5-66.67-65.46V194.75c0-5.42 1.05-4.06-31.71-4.06V154.5c35.78-4.07 50-22 54.47-66.27h38.63c0 65.83-1.34 61.81 3.26 61.81H501v40.65h-60.56v97.15c0 6.92-4.92 51.41 60.57 26.84z\"]\n};\nvar faGitAlt = {\n prefix: 'fab',\n iconName: 'git-alt',\n icon: [448, 512, [], \"f841\", \"M439.55 236.05L244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z\"]\n};\nvar faGitSquare = {\n prefix: 'fab',\n iconName: 'git-square',\n icon: [448, 512, [], \"f1d2\", \"M100.59 334.24c48.57 3.31 58.95 2.11 58.95 11.94 0 20-65.55 20.06-65.55 1.52.01-5.09 3.29-9.4 6.6-13.46zm27.95-116.64c-32.29 0-33.75 44.47-.75 44.47 32.51 0 31.71-44.47.75-44.47zM448 80v352a48 48 0 0 1-48 48H48a48 48 0 0 1-48-48V80a48 48 0 0 1 48-48h352a48 48 0 0 1 48 48zm-227 69.31c0 14.49 8.38 22.88 22.86 22.88 14.74 0 23.13-8.39 23.13-22.88S258.62 127 243.88 127c-14.48 0-22.88 7.84-22.88 22.31zM199.18 195h-49.55c-25-6.55-81.56-4.85-81.56 46.75 0 18.8 9.4 32 21.85 38.11C74.23 294.23 66.8 301 66.8 310.6c0 6.87 2.79 13.22 11.18 16.76-8.9 8.4-14 14.48-14 25.92C64 373.35 81.53 385 127.52 385c44.22 0 69.87-16.51 69.87-45.73 0-36.67-28.23-35.32-94.77-39.38l8.38-13.43c17 4.74 74.19 6.23 74.19-42.43 0-11.69-4.83-19.82-9.4-25.67l23.38-1.78zm84.34 109.84l-13-1.78c-3.82-.51-4.07-1-4.07-5.09V192.52h-52.6l-2.79 20.57c15.75 5.55 17 4.86 17 10.17V298c0 5.62-.31 4.58-17 6.87v20.06h72.42zM384 315l-6.87-22.37c-40.93 15.37-37.85-12.41-37.85-16.73v-60.72h37.85v-25.41h-35.82c-2.87 0-2 2.52-2-38.63h-24.18c-2.79 27.7-11.68 38.88-34 41.42v22.62c20.47 0 19.82-.85 19.82 2.54v66.57c0 28.72 11.43 40.91 41.67 40.91 14.45 0 30.45-4.83 41.38-10.2z\"]\n};\nvar faGithub = {\n prefix: 'fab',\n iconName: 'github',\n icon: [496, 512, [], \"f09b\", \"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"]\n};\nvar faGithubAlt = {\n prefix: 'fab',\n iconName: 'github-alt',\n icon: [480, 512, [], \"f113\", \"M186.1 328.7c0 20.9-10.9 55.1-36.7 55.1s-36.7-34.2-36.7-55.1 10.9-55.1 36.7-55.1 36.7 34.2 36.7 55.1zM480 278.2c0 31.9-3.2 65.7-17.5 95-37.9 76.6-142.1 74.8-216.7 74.8-75.8 0-186.2 2.7-225.6-74.8-14.6-29-20.2-63.1-20.2-95 0-41.9 13.9-81.5 41.5-113.6-5.2-15.8-7.7-32.4-7.7-48.8 0-21.5 4.9-32.3 14.6-51.8 45.3 0 74.3 9 108.8 36 29-6.9 58.8-10 88.7-10 27 0 54.2 2.9 80.4 9.2 34-26.7 63-35.2 107.8-35.2 9.8 19.5 14.6 30.3 14.6 51.8 0 16.4-2.6 32.7-7.7 48.2 27.5 32.4 39 72.3 39 114.2zm-64.3 50.5c0-43.9-26.7-82.6-73.5-82.6-18.9 0-37 3.4-56 6-14.9 2.3-29.8 3.2-45.1 3.2-15.2 0-30.1-.9-45.1-3.2-18.7-2.6-37-6-56-6-46.8 0-73.5 38.7-73.5 82.6 0 87.8 80.4 101.3 150.4 101.3h48.2c70.3 0 150.6-13.4 150.6-101.3zm-82.6-55.1c-25.8 0-36.7 34.2-36.7 55.1s10.9 55.1 36.7 55.1 36.7-34.2 36.7-55.1-10.9-55.1-36.7-55.1z\"]\n};\nvar faGithubSquare = {\n prefix: 'fab',\n iconName: 'github-square',\n icon: [448, 512, [], \"f092\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM277.3 415.7c-8.4 1.5-11.5-3.7-11.5-8 0-5.4.2-33 .2-55.3 0-15.6-5.2-25.5-11.3-30.7 37-4.1 76-9.2 76-73.1 0-18.2-6.5-27.3-17.1-39 1.7-4.3 7.4-22-1.7-45-13.9-4.3-45.7 17.9-45.7 17.9-13.2-3.7-27.5-5.6-41.6-5.6-14.1 0-28.4 1.9-41.6 5.6 0 0-31.8-22.2-45.7-17.9-9.1 22.9-3.5 40.6-1.7 45-10.6 11.7-15.6 20.8-15.6 39 0 63.6 37.3 69 74.3 73.1-4.8 4.3-9.1 11.7-10.6 22.3-9.5 4.3-33.8 11.7-48.3-13.9-9.1-15.8-25.5-17.1-25.5-17.1-16.2-.2-1.1 10.2-1.1 10.2 10.8 5 18.4 24.2 18.4 24.2 9.7 29.7 56.1 19.7 56.1 19.7 0 13.9.2 36.5.2 40.6 0 4.3-3 9.5-11.5 8-66-22.1-112.2-84.9-112.2-158.3 0-91.8 70.2-161.5 162-161.5S388 165.6 388 257.4c.1 73.4-44.7 136.3-110.7 158.3zm-98.1-61.1c-1.9.4-3.7-.4-3.9-1.7-.2-1.5 1.1-2.8 3-3.2 1.9-.2 3.7.6 3.9 1.9.3 1.3-1 2.6-3 3zm-9.5-.9c0 1.3-1.5 2.4-3.5 2.4-2.2.2-3.7-.9-3.7-2.4 0-1.3 1.5-2.4 3.5-2.4 1.9-.2 3.7.9 3.7 2.4zm-13.7-1.1c-.4 1.3-2.4 1.9-4.1 1.3-1.9-.4-3.2-1.9-2.8-3.2.4-1.3 2.4-1.9 4.1-1.5 2 .6 3.3 2.1 2.8 3.4zm-12.3-5.4c-.9 1.1-2.8.9-4.3-.6-1.5-1.3-1.9-3.2-.9-4.1.9-1.1 2.8-.9 4.3.6 1.3 1.3 1.8 3.3.9 4.1zm-9.1-9.1c-.9.6-2.6 0-3.7-1.5s-1.1-3.2 0-3.9c1.1-.9 2.8-.2 3.7 1.3 1.1 1.5 1.1 3.3 0 4.1zm-6.5-9.7c-.9.9-2.4.4-3.5-.6-1.1-1.3-1.3-2.8-.4-3.5.9-.9 2.4-.4 3.5.6 1.1 1.3 1.3 2.8.4 3.5zm-6.7-7.4c-.4.9-1.7 1.1-2.8.4-1.3-.6-1.9-1.7-1.5-2.6.4-.6 1.5-.9 2.8-.4 1.3.7 1.9 1.8 1.5 2.6z\"]\n};\nvar faGitkraken = {\n prefix: 'fab',\n iconName: 'gitkraken',\n icon: [592, 512, [], \"f3a6\", \"M565.7 118.1c-2.3-6.1-9.3-9.2-15.3-6.6-5.7 2.4-8.5 8.9-6.3 14.6 10.9 29 16.9 60.5 16.9 93.3 0 134.6-100.3 245.7-230.2 262.7V358.4c7.9-1.5 15.5-3.6 23-6.2v104c106.7-25.9 185.9-122.1 185.9-236.8 0-91.8-50.8-171.8-125.8-213.3-5.7-3.2-13-.9-15.9 5-2.7 5.5-.6 12.2 4.7 15.1 67.9 37.6 113.9 110 113.9 193.2 0 93.3-57.9 173.1-139.8 205.4v-92.2c14.2-4.5 24.9-17.7 24.9-33.5 0-13.1-6.8-24.4-17.3-30.5 8.3-79.5 44.5-58.6 44.5-83.9V170c0-38-87.9-161.8-129-164.7-2.5-.2-5-.2-7.6 0C251.1 8.3 163.2 132 163.2 170v14.8c0 25.3 36.3 4.3 44.5 83.9-10.6 6.1-17.3 17.4-17.3 30.5 0 15.8 10.6 29 24.8 33.5v92.2c-81.9-32.2-139.8-112-139.8-205.4 0-83.1 46-155.5 113.9-193.2 5.4-3 7.4-9.6 4.7-15.1-2.9-5.9-10.1-8.2-15.9-5-75 41.5-125.8 121.5-125.8 213.3 0 114.7 79.2 210.8 185.9 236.8v-104c7.6 2.5 15.1 4.6 23 6.2v123.7C131.4 465.2 31 354.1 31 219.5c0-32.8 6-64.3 16.9-93.3 2.2-5.8-.6-12.2-6.3-14.6-6-2.6-13 .4-15.3 6.6C14.5 149.7 8 183.8 8 219.5c0 155.1 122.6 281.6 276.3 287.8V361.4c6.8.4 15 .5 23.4 0v145.8C461.4 501.1 584 374.6 584 219.5c0-35.7-6.5-69.8-18.3-101.4zM365.9 275.5c13 0 23.7 10.5 23.7 23.7 0 13.1-10.6 23.7-23.7 23.7-13 0-23.7-10.5-23.7-23.7 0-13.1 10.6-23.7 23.7-23.7zm-139.8 47.3c-13.2 0-23.7-10.7-23.7-23.7s10.5-23.7 23.7-23.7c13.1 0 23.7 10.6 23.7 23.7 0 13-10.5 23.7-23.7 23.7z\"]\n};\nvar faGitlab = {\n prefix: 'fab',\n iconName: 'gitlab',\n icon: [512, 512, [], \"f296\", \"M105.2 24.9c-3.1-8.9-15.7-8.9-18.9 0L29.8 199.7h132c-.1 0-56.6-174.8-56.6-174.8zM.9 287.7c-2.6 8 .3 16.9 7.1 22l247.9 184-226.2-294zm160.8-88l94.3 294 94.3-294zm349.4 88l-28.8-88-226.3 294 247.9-184c6.9-5.1 9.7-14 7.2-22zM425.7 24.9c-3.1-8.9-15.7-8.9-18.9 0l-56.6 174.8h132z\"]\n};\nvar faGitter = {\n prefix: 'fab',\n iconName: 'gitter',\n icon: [384, 512, [], \"f426\", \"M66.4 322.5H16V0h50.4v322.5zM166.9 76.1h-50.4V512h50.4V76.1zm100.6 0h-50.4V512h50.4V76.1zM368 76h-50.4v247H368V76z\"]\n};\nvar faGlide = {\n prefix: 'fab',\n iconName: 'glide',\n icon: [448, 512, [], \"f2a5\", \"M252.8 148.6c0 8.8-1.6 17.7-3.4 26.4-5.8 27.8-11.6 55.8-17.3 83.6-1.4 6.3-8.3 4.9-13.7 4.9-23.8 0-30.5-26-30.5-45.5 0-29.3 11.2-68.1 38.5-83.1 4.3-2.5 9.2-4.2 14.1-4.2 11.4 0 12.3 8.3 12.3 17.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 187c0-5.1-20.8-37.7-25.5-39.5-2.2-.9-7.2-2.3-9.6-2.3-23.1 0-38.7 10.5-58.2 21.5l-.5-.5c4.3-29.4 14.6-57.2 14.6-87.4 0-44.6-23.8-62.7-67.5-62.7-71.7 0-108 70.8-108 123.5 0 54.7 32 85 86.3 85 7.5 0 6.9-.6 6.9 2.3-10.5 80.3-56.5 82.9-56.5 58.9 0-24.4 28-36.5 28.3-38-.2-7.6-29.3-17.2-36.7-17.2-21.1 0-32.7 33-32.7 50.6 0 32.3 20.4 54.7 53.3 54.7 48.2 0 83.4-49.7 94.3-91.7 9.4-37.7 7-39.4 12.3-42.1 20-10.1 35.8-16.8 58.4-16.8 11.1 0 19 2.3 36.7 5.2 1.8.1 4.1-1.7 4.1-3.5z\"]\n};\nvar faGlideG = {\n prefix: 'fab',\n iconName: 'glide-g',\n icon: [448, 512, [], \"f2a6\", \"M407.1 211.2c-3.5-1.4-11.6-3.8-15.4-3.8-37.1 0-62.2 16.8-93.5 34.5l-.9-.9c7-47.3 23.5-91.9 23.5-140.4C320.8 29.1 282.6 0 212.4 0 97.3 0 39 113.7 39 198.4 39 286.3 90.3 335 177.6 335c12 0 11-1 11 3.8-16.9 128.9-90.8 133.1-90.8 94.6 0-39.2 45-58.6 45.5-61-.3-12.2-47-27.6-58.9-27.6-33.9.1-52.4 51.2-52.4 79.3C32 476 64.8 512 117.5 512c77.4 0 134-77.8 151.4-145.4 15.1-60.5 11.2-63.3 19.7-67.6 32.2-16.2 57.5-27 93.8-27 17.8 0 30.5 3.7 58.9 8.4 2.9 0 6.7-2.9 6.7-5.8 0-8-33.4-60.5-40.9-63.4zm-175.3-84.4c-9.3 44.7-18.6 89.6-27.8 134.3-2.3 10.2-13.3 7.8-22 7.8-38.3 0-49-41.8-49-73.1 0-47 18-109.3 61.8-133.4 7-4.1 14.8-6.7 22.6-6.7 18.6 0 20 13.3 20 28.7-.1 14.3-2.7 28.5-5.6 42.4z\"]\n};\nvar faGofore = {\n prefix: 'fab',\n iconName: 'gofore',\n icon: [400, 512, [], \"f3a7\", \"M324 319.8h-13.2v34.7c-24.5 23.1-56.3 35.8-89.9 35.8-73.2 0-132.4-60.2-132.4-134.4 0-74.1 59.2-134.4 132.4-134.4 35.3 0 68.6 14 93.6 39.4l62.3-63.3C335 55.3 279.7 32 220.7 32 98 32 0 132.6 0 256c0 122.5 97 224 220.7 224 63.2 0 124.5-26.2 171-82.5-2-27.6-13.4-77.7-67.7-77.7zm-12.1-112.5H205.6v89H324c33.5 0 60.5 15.1 76 41.8v-30.6c0-65.2-40.4-100.2-88.1-100.2z\"]\n};\nvar faGoodreads = {\n prefix: 'fab',\n iconName: 'goodreads',\n icon: [448, 512, [], \"f3a8\", \"M299.9 191.2c5.1 37.3-4.7 79-35.9 100.7-22.3 15.5-52.8 14.1-70.8 5.7-37.1-17.3-49.5-58.6-46.8-97.2 4.3-60.9 40.9-87.9 75.3-87.5 46.9-.2 71.8 31.8 78.2 78.3zM448 88v336c0 30.9-25.1 56-56 56H56c-30.9 0-56-25.1-56-56V88c0-30.9 25.1-56 56-56h336c30.9 0 56 25.1 56 56zM330 313.2s-.1-34-.1-217.3h-29v40.3c-.8.3-1.2-.5-1.6-1.2-9.6-20.7-35.9-46.3-76-46-51.9.4-87.2 31.2-100.6 77.8-4.3 14.9-5.8 30.1-5.5 45.6 1.7 77.9 45.1 117.8 112.4 115.2 28.9-1.1 54.5-17 69-45.2.5-1 1.1-1.9 1.7-2.9.2.1.4.1.6.2.3 3.8.2 30.7.1 34.5-.2 14.8-2 29.5-7.2 43.5-7.8 21-22.3 34.7-44.5 39.5-17.8 3.9-35.6 3.8-53.2-1.2-21.5-6.1-36.5-19-41.1-41.8-.3-1.6-1.3-1.3-2.3-1.3h-26.8c.8 10.6 3.2 20.3 8.5 29.2 24.2 40.5 82.7 48.5 128.2 37.4 49.9-12.3 67.3-54.9 67.4-106.3z\"]\n};\nvar faGoodreadsG = {\n prefix: 'fab',\n iconName: 'goodreads-g',\n icon: [384, 512, [], \"f3a9\", \"M42.6 403.3h2.8c12.7 0 25.5 0 38.2.1 1.6 0 3.1-.4 3.6 2.1 7.1 34.9 30 54.6 62.9 63.9 26.9 7.6 54.1 7.8 81.3 1.8 33.8-7.4 56-28.3 68-60.4 8-21.5 10.7-43.8 11-66.5.1-5.8.3-47-.2-52.8l-.9-.3c-.8 1.5-1.7 2.9-2.5 4.4-22.1 43.1-61.3 67.4-105.4 69.1-103 4-169.4-57-172-176.2-.5-23.7 1.8-46.9 8.3-69.7C58.3 47.7 112.3.6 191.6 0c61.3-.4 101.5 38.7 116.2 70.3.5 1.1 1.3 2.3 2.4 1.9V10.6h44.3c0 280.3.1 332.2.1 332.2-.1 78.5-26.7 143.7-103 162.2-69.5 16.9-159 4.8-196-57.2-8-13.5-11.8-28.3-13-44.5zM188.9 36.5c-52.5-.5-108.5 40.7-115 133.8-4.1 59 14.8 122.2 71.5 148.6 27.6 12.9 74.3 15 108.3-8.7 47.6-33.2 62.7-97 54.8-154-9.7-71.1-47.8-120-119.6-119.7z\"]\n};\nvar faGoogle = {\n prefix: 'fab',\n iconName: 'google',\n icon: [488, 512, [], \"f1a0\", \"M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z\"]\n};\nvar faGoogleDrive = {\n prefix: 'fab',\n iconName: 'google-drive',\n icon: [512, 512, [], \"f3aa\", \"M339 314.9L175.4 32h161.2l163.6 282.9H339zm-137.5 23.6L120.9 480h310.5L512 338.5H201.5zM154.1 67.4L0 338.5 80.6 480 237 208.8 154.1 67.4z\"]\n};\nvar faGooglePay = {\n prefix: 'fab',\n iconName: 'google-pay',\n icon: [640, 512, [], \"e079\", \"M105.72,215v41.25h57.1a49.66,49.66,0,0,1-21.14,32.6c-9.54,6.55-21.72,10.28-36,10.28-27.6,0-50.93-18.91-59.3-44.22a65.61,65.61,0,0,1,0-41l0,0c8.37-25.46,31.7-44.37,59.3-44.37a56.43,56.43,0,0,1,40.51,16.08L176.47,155a101.24,101.24,0,0,0-70.75-27.84,105.55,105.55,0,0,0-94.38,59.11,107.64,107.64,0,0,0,0,96.18v.15a105.41,105.41,0,0,0,94.38,59c28.47,0,52.55-9.53,70-25.91,20-18.61,31.41-46.15,31.41-78.91A133.76,133.76,0,0,0,205.38,215Zm389.41-4c-10.13-9.38-23.93-14.14-41.39-14.14-22.46,0-39.34,8.34-50.5,24.86l20.85,13.26q11.45-17,31.26-17a34.05,34.05,0,0,1,22.75,8.79A28.14,28.14,0,0,1,487.79,248v5.51c-9.1-5.07-20.55-7.75-34.64-7.75-16.44,0-29.65,3.88-39.49,11.77s-14.82,18.31-14.82,31.56a39.74,39.74,0,0,0,13.94,31.27c9.25,8.34,21,12.51,34.79,12.51,16.29,0,29.21-7.3,39-21.89h1v17.72h22.61V250C510.25,233.45,505.26,220.34,495.13,211ZM475.9,300.3a37.32,37.32,0,0,1-26.57,11.16A28.61,28.61,0,0,1,431,305.21a19.41,19.41,0,0,1-7.77-15.63c0-7,3.22-12.81,9.54-17.42s14.53-7,24.07-7C470,265,480.3,268,487.64,273.94,487.64,284.07,483.68,292.85,475.9,300.3Zm-93.65-142A55.71,55.71,0,0,0,341.74,142H279.07V328.74H302.7V253.1h39c16,0,29.5-5.36,40.51-15.93.88-.89,1.76-1.79,2.65-2.68A54.45,54.45,0,0,0,382.25,158.26Zm-16.58,62.23a30.65,30.65,0,0,1-23.34,9.68H302.7V165h39.63a32,32,0,0,1,22.6,9.23A33.18,33.18,0,0,1,365.67,220.49ZM614.31,201,577.77,292.7h-.45L539.9,201H514.21L566,320.55l-29.35,64.32H561L640,201Z\"]\n};\nvar faGooglePlay = {\n prefix: 'fab',\n iconName: 'google-play',\n icon: [512, 512, [], \"f3ab\", \"M325.3 234.3L104.6 13l280.8 161.2-60.1 60.1zM47 0C34 6.8 25.3 19.2 25.3 35.3v441.3c0 16.1 8.7 28.5 21.7 35.3l256.6-256L47 0zm425.2 225.6l-58.9-34.1-65.7 64.5 65.7 64.5 60.1-34.1c18-14.3 18-46.5-1.2-60.8zM104.6 499l280.8-161.2-60.1-60.1L104.6 499z\"]\n};\nvar faGooglePlus = {\n prefix: 'fab',\n iconName: 'google-plus',\n icon: [512, 512, [], \"f2b3\", \"M256,8C119.1,8,8,119.1,8,256S119.1,504,256,504,504,392.9,504,256,392.9,8,256,8ZM185.3,380a124,124,0,0,1,0-248c31.3,0,60.1,11,83,32.3l-33.6,32.6c-13.2-12.9-31.3-19.1-49.4-19.1-42.9,0-77.2,35.5-77.2,78.1S142.3,334,185.3,334c32.6,0,64.9-19.1,70.1-53.3H185.3V238.1H302.2a109.2,109.2,0,0,1,1.9,20.7c0,70.8-47.5,121.2-118.8,121.2ZM415.5,273.8v35.5H380V273.8H344.5V238.3H380V202.8h35.5v35.5h35.2v35.5Z\"]\n};\nvar faGooglePlusG = {\n prefix: 'fab',\n iconName: 'google-plus-g',\n icon: [640, 512, [], \"f0d5\", \"M386.061 228.496c1.834 9.692 3.143 19.384 3.143 31.956C389.204 370.205 315.599 448 204.8 448c-106.084 0-192-85.915-192-192s85.916-192 192-192c51.864 0 95.083 18.859 128.611 50.292l-52.126 50.03c-14.145-13.621-39.028-29.599-76.485-29.599-65.484 0-118.92 54.221-118.92 121.277 0 67.056 53.436 121.277 118.92 121.277 75.961 0 104.513-54.745 108.965-82.773H204.8v-66.009h181.261zm185.406 6.437V179.2h-56.001v55.733h-55.733v56.001h55.733v55.733h56.001v-55.733H627.2v-56.001h-55.733z\"]\n};\nvar faGooglePlusSquare = {\n prefix: 'fab',\n iconName: 'google-plus-square',\n icon: [448, 512, [], \"f0d4\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM164 356c-55.3 0-100-44.7-100-100s44.7-100 100-100c27 0 49.5 9.8 67 26.2l-27.1 26.1c-7.4-7.1-20.3-15.4-39.8-15.4-34.1 0-61.9 28.2-61.9 63.2 0 34.9 27.8 63.2 61.9 63.2 39.6 0 54.4-28.5 56.8-43.1H164v-34.4h94.4c1 5 1.6 10.1 1.6 16.6 0 57.1-38.3 97.6-96 97.6zm220-81.8h-29v29h-29.2v-29h-29V245h29v-29H355v29h29v29.2z\"]\n};\nvar faGoogleWallet = {\n prefix: 'fab',\n iconName: 'google-wallet',\n icon: [448, 512, [], \"f1ee\", \"M156.8 126.8c37.6 60.6 64.2 113.1 84.3 162.5-8.3 33.8-18.8 66.5-31.3 98.3-13.2-52.3-26.5-101.3-56-148.5 6.5-36.4 2.3-73.6 3-112.3zM109.3 200H16.1c-6.5 0-10.5 7.5-6.5 12.7C51.8 267 81.3 330.5 101.3 400h103.5c-16.2-69.7-38.7-133.7-82.5-193.5-3-4-8-6.5-13-6.5zm47.8-88c68.5 108 130 234.5 138.2 368H409c-12-138-68.4-265-143.2-368H157.1zm251.8-68.5c-1.8-6.8-8.2-11.5-15.2-11.5h-88.3c-5.3 0-9 5-7.8 10.3 13.2 46.5 22.3 95.5 26.5 146 48.2 86.2 79.7 178.3 90.6 270.8 15.8-60.5 25.3-133.5 25.3-203 0-73.6-12.1-145.1-31.1-212.6z\"]\n};\nvar faGratipay = {\n prefix: 'fab',\n iconName: 'gratipay',\n icon: [496, 512, [], \"f184\", \"M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm114.6 226.4l-113 152.7-112.7-152.7c-8.7-11.9-19.1-50.4 13.6-72 28.1-18.1 54.6-4.2 68.5 11.9 15.9 17.9 46.6 16.9 61.7 0 13.9-16.1 40.4-30 68.1-11.9 32.9 21.6 22.6 60 13.8 72z\"]\n};\nvar faGrav = {\n prefix: 'fab',\n iconName: 'grav',\n icon: [512, 512, [], \"f2d6\", \"M301.1 212c4.4 4.4 4.4 11.9 0 16.3l-9.7 9.7c-4.4 4.7-11.9 4.7-16.6 0l-10.5-10.5c-4.4-4.7-4.4-11.9 0-16.6l9.7-9.7c4.4-4.4 11.9-4.4 16.6 0l10.5 10.8zm-30.2-19.7c3-3 3-7.8 0-10.5-2.8-3-7.5-3-10.5 0-2.8 2.8-2.8 7.5 0 10.5 3.1 2.8 7.8 2.8 10.5 0zm-26 5.3c-3 2.8-3 7.5 0 10.2 2.8 3 7.5 3 10.5 0 2.8-2.8 2.8-7.5 0-10.2-3-3-7.7-3-10.5 0zm72.5-13.3c-19.9-14.4-33.8-43.2-11.9-68.1 21.6-24.9 40.7-17.2 59.8.8 11.9 11.3 29.3 24.9 17.2 48.2-12.5 23.5-45.1 33.2-65.1 19.1zm47.7-44.5c-8.9-10-23.3 6.9-15.5 16.1 7.4 9 32.1 2.4 15.5-16.1zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-66.2 42.6c2.5-16.1-20.2-16.6-25.2-25.7-13.6-24.1-27.7-36.8-54.5-30.4 11.6-8 23.5-6.1 23.5-6.1.3-6.4 0-13-9.4-24.9 3.9-12.5.3-22.4.3-22.4 15.5-8.6 26.8-24.4 29.1-43.2 3.6-31-18.8-59.2-49.8-62.8-22.1-2.5-43.7 7.7-54.3 25.7-23.2 40.1 1.4 70.9 22.4 81.4-14.4-1.4-34.3-11.9-40.1-34.3-6.6-25.7 2.8-49.8 8.9-61.4 0 0-4.4-5.8-8-8.9 0 0-13.8 0-24.6 5.3 11.9-15.2 25.2-14.4 25.2-14.4 0-6.4-.6-14.9-3.6-21.6-5.4-11-23.8-12.9-31.7 2.8.1-.2.3-.4.4-.5-5 11.9-1.1 55.9 16.9 87.2-2.5 1.4-9.1 6.1-13 10-21.6 9.7-56.2 60.3-56.2 60.3-28.2 10.8-77.2 50.9-70.6 79.7.3 3 1.4 5.5 3 7.5-2.8 2.2-5.5 5-8.3 8.3-11.9 13.8-5.3 35.2 17.7 24.4 15.8-7.2 29.6-20.2 36.3-30.4 0 0-5.5-5-16.3-4.4 27.7-6.6 34.3-9.4 46.2-9.1 8 3.9 8-34.3 8-34.3 0-14.7-2.2-31-11.1-41.5 12.5 12.2 29.1 32.7 28 60.6-.8 18.3-15.2 23-15.2 23-9.1 16.6-43.2 65.9-30.4 106 0 0-9.7-14.9-10.2-22.1-17.4 19.4-46.5 52.3-24.6 64.5 26.6 14.7 108.8-88.6 126.2-142.3 34.6-20.8 55.4-47.3 63.9-65 22 43.5 95.3 94.5 101.1 59z\"]\n};\nvar faGripfire = {\n prefix: 'fab',\n iconName: 'gripfire',\n icon: [384, 512, [], \"f3ac\", \"M112.5 301.4c0-73.8 105.1-122.5 105.1-203 0-47.1-34-88-39.1-90.4.4 3.3.6 6.7.6 10C179.1 110.1 32 171.9 32 286.6c0 49.8 32.2 79.2 66.5 108.3 65.1 46.7 78.1 71.4 78.1 86.6 0 10.1-4.8 17-4.8 22.3 13.1-16.7 17.4-31.9 17.5-46.4 0-29.6-21.7-56.3-44.2-86.5-16-22.3-32.6-42.6-32.6-69.5zm205.3-39c-12.1-66.8-78-124.4-94.7-130.9l4 7.2c2.4 5.1 3.4 10.9 3.4 17.1 0 44.7-54.2 111.2-56.6 116.7-2.2 5.1-3.2 10.5-3.2 15.8 0 20.1 15.2 42.1 17.9 42.1 2.4 0 56.6-55.4 58.1-87.7 6.4 11.7 9.1 22.6 9.1 33.4 0 41.2-41.8 96.9-41.8 96.9 0 11.6 31.9 53.2 35.5 53.2 1 0 2.2-1.4 3.2-2.4 37.9-39.3 67.3-85 67.3-136.8 0-8-.7-16.2-2.2-24.6z\"]\n};\nvar faGrunt = {\n prefix: 'fab',\n iconName: 'grunt',\n icon: [384, 512, [], \"f3ad\", \"M61.3 189.3c-1.1 10 5.2 19.1 5.2 19.1.7-7.5 2.2-12.8 4-16.6.4 10.3 3.2 23.5 12.8 34.1 6.9 7.6 35.6 23.3 54.9 6.1 1 2.4 2.1 5.3 3 8.5 2.9 10.3-2.7 25.3-2.7 25.3s15.1-17.1 13.9-32.5c10.8-.5 21.4-8.4 21.1-19.5 0 0-18.9 10.4-35.5-8.8-9.7-11.2-40.9-42-83.1-31.8 4.3 1 8.9 2.4 13.5 4.1h-.1c-4.2 2-6.5 7.1-7 12zm28.3-1.8c19.5 11 37.4 25.7 44.9 37-5.7 3.3-21.7 10.4-38-1.7-10.3-7.6-9.8-26.2-6.9-35.3zm142.1 45.8c-1.2 15.5 13.9 32.5 13.9 32.5s-5.6-15-2.7-25.3c.9-3.2 2-6 3-8.5 19.3 17.3 48 1.5 54.8-6.1 9.6-10.6 12.3-23.8 12.8-34.1 1.8 3.8 3.4 9.1 4 16.6 0 0 6.4-9.1 5.2-19.1-.6-5-2.9-10-7-11.8h-.1c4.6-1.8 9.2-3.2 13.5-4.1-42.3-10.2-73.4 20.6-83.1 31.8-16.7 19.2-35.5 8.8-35.5 8.8-.2 10.9 10.4 18.9 21.2 19.3zm62.7-45.8c3 9.1 3.4 27.7-7 35.4-16.3 12.1-32.2 5-37.9 1.6 7.5-11.4 25.4-26 44.9-37zM160 418.5h-29.4c-5.5 0-8.2 1.6-9.5 2.9-1.9 2-2.2 4.7-.9 8.1 3.5 9.1 11.4 16.5 13.7 18.6 3.1 2.7 7.5 4.3 11.8 4.3 4.4 0 8.3-1.7 11-4.6 7.5-8.2 11.9-17.1 13-19.8.6-1.5 1.3-4.5-.9-6.8-1.8-1.8-4.7-2.7-8.8-2.7zm189.2-101.2c-2.4 17.9-13 33.8-24.6 43.7-3.1-22.7-3.7-55.5-3.7-62.4 0-14.7 9.5-24.5 12.2-26.1 2.5-1.5 5.4-3 8.3-4.6 18-9.6 40.4-21.6 40.4-43.7 0-16.2-9.3-23.2-15.4-27.8-.8-.6-1.5-1.1-2.2-1.7-2.1-1.7-3.7-3-4.3-4.4-4.4-9.8-3.6-34.2-1.7-37.6.6-.6 16.7-20.9 11.8-39.2-2-7.4-6.9-13.3-14.1-17-5.3-2.7-11.9-4.2-19.5-4.5-.1-2-.5-3.9-.9-5.9-.6-2.6-1.1-5.3-.9-8.1.4-4.7.8-9 2.2-11.3 8.4-13.3 28.8-17.6 29-17.6l12.3-2.4-8.1-9.5c-.1-.2-17.3-17.5-46.3-17.5-7.9 0-16 1.3-24.1 3.9-24.2 7.8-42.9 30.5-49.4 39.3-3.1-1-6.3-1.9-9.6-2.7-4.2-15.8 9-38.5 9-38.5s-13.6-3-33.7 15.2c-2.6-6.5-8.1-20.5-1.8-37.2C184.6 10.1 177.2 26 175 40.4c-7.6-5.4-6.7-23.1-7.2-27.6-7.5.9-29.2 21.9-28.2 48.3-2 .5-3.9 1.1-5.9 1.7-6.5-8.8-25.1-31.5-49.4-39.3-7.9-2.2-16-3.5-23.9-3.5-29 0-46.1 17.3-46.3 17.5L6 46.9l12.3 2.4c.2 0 20.6 4.3 29 17.6 1.4 2.2 1.8 6.6 2.2 11.3.2 2.8-.4 5.5-.9 8.1-.4 1.9-.8 3.9-.9 5.9-7.7.3-14.2 1.8-19.5 4.5-7.2 3.7-12.1 9.6-14.1 17-5 18.2 11.2 38.5 11.8 39.2 1.9 3.4 2.7 27.8-1.7 37.6-.6 1.4-2.2 2.7-4.3 4.4-.7.5-1.4 1.1-2.2 1.7-6.1 4.6-15.4 11.7-15.4 27.8 0 22.1 22.4 34.1 40.4 43.7 3 1.6 5.8 3.1 8.3 4.6 2.7 1.6 12.2 11.4 12.2 26.1 0 6.9-.6 39.7-3.7 62.4-11.6-9.9-22.2-25.9-24.6-43.8 0 0-29.2 22.6-20.6 70.8 5.2 29.5 23.2 46.1 47 54.7 8.8 19.1 29.4 45.7 67.3 49.6C143 504.3 163 512 192.2 512h.2c29.1 0 49.1-7.7 63.6-19.5 37.9-3.9 58.5-30.5 67.3-49.6 23.8-8.7 41.7-25.2 47-54.7 8.2-48.4-21.1-70.9-21.1-70.9zM305.7 37.7c5.6-1.8 11.6-2.7 17.7-2.7 11 0 19.9 3 24.7 5-3.1 1.4-6.4 3.2-9.7 5.3-2.4-.4-5.6-.8-9.2-.8-10.5 0-20.5 3.1-28.7 8.9-12.3 8.7-18 16.9-20.7 22.4-2.2-1.3-4.5-2.5-7.1-3.7-1.6-.8-3.1-1.5-4.7-2.2 6.1-9.1 19.9-26.5 37.7-32.2zm21 18.2c-.8 1-1.6 2.1-2.3 3.2-3.3 5.2-3.9 11.6-4.4 17.8-.5 6.4-1.1 12.5-4.4 17-4.2.8-8.1 1.7-11.5 2.7-2.3-3.1-5.6-7-10.5-11.2 1.4-4.8 5.5-16.1 13.5-22.5 5.6-4.3 12.2-6.7 19.6-7zM45.6 45.3c-3.3-2.2-6.6-4-9.7-5.3 4.8-2 13.7-5 24.7-5 6.1 0 12 .9 17.7 2.7 17.8 5.8 31.6 23.2 37.7 32.1-1.6.7-3.2 1.4-4.8 2.2-2.5 1.2-4.9 2.5-7.1 3.7-2.6-5.4-8.3-13.7-20.7-22.4-8.3-5.8-18.2-8.9-28.8-8.9-3.4.1-6.6.5-9 .9zm44.7 40.1c-4.9 4.2-8.3 8-10.5 11.2-3.4-.9-7.3-1.9-11.5-2.7C65 89.5 64.5 83.4 64 77c-.5-6.2-1.1-12.6-4.4-17.8-.7-1.1-1.5-2.2-2.3-3.2 7.4.3 14 2.6 19.5 7 8 6.3 12.1 17.6 13.5 22.4zM58.1 259.9c-2.7-1.6-5.6-3.1-8.4-4.6-14.9-8-30.2-16.3-30.2-30.5 0-11.1 4.3-14.6 8.9-18.2l.5-.4c.7-.6 1.4-1.2 2.2-1.8-.9 7.2-1.9 13.3-2.7 14.9 0 0 12.1-15 15.7-44.3 1.4-11.5-1.1-34.3-5.1-43 .2 4.9 0 9.8-.3 14.4-.4-.8-.8-1.6-1.3-2.2-3.2-4-11.8-17.5-9.4-26.6.9-3.5 3.1-6 6.7-7.8 3.8-1.9 8.8-2.9 15.1-2.9 12.3 0 25.9 3.7 32.9 6 25.1 8 55.4 30.9 64.1 37.7.2.2.4.3.4.3l5.6 3.9-3.5-5.8c-.2-.3-19.1-31.4-53.2-46.5 2-2.9 7.4-8.1 21.6-15.1 21.4-10.5 46.5-15.8 74.3-15.8 27.9 0 52.9 5.3 74.3 15.8 14.2 6.9 19.6 12.2 21.6 15.1-34 15.1-52.9 46.2-53.1 46.5l-3.5 5.8 5.6-3.9s.2-.1.4-.3c8.7-6.8 39-29.8 64.1-37.7 7-2.2 20.6-6 32.9-6 6.3 0 11.3 1 15.1 2.9 3.5 1.8 5.7 4.4 6.7 7.8 2.5 9.1-6.1 22.6-9.4 26.6-.5.6-.9 1.3-1.3 2.2-.3-4.6-.5-9.5-.3-14.4-4 8.8-6.5 31.5-5.1 43 3.6 29.3 15.7 44.3 15.7 44.3-.8-1.6-1.8-7.7-2.7-14.9.7.6 1.5 1.2 2.2 1.8l.5.4c4.6 3.7 8.9 7.1 8.9 18.2 0 14.2-15.4 22.5-30.2 30.5-2.9 1.5-5.7 3.1-8.4 4.6-8.7 5-18 16.7-19.1 34.2-.9 14.6.9 49.9 3.4 75.9-12.4 4.8-26.7 6.4-39.7 6.8-2-4.1-3.9-8.5-5.5-13.1-.7-2-19.6-51.1-26.4-62.2 5.5 39 17.5 73.7 23.5 89.6-3.5-.5-7.3-.7-11.7-.7h-117c-4.4 0-8.3.3-11.7.7 6-15.9 18.1-50.6 23.5-89.6-6.8 11.2-25.7 60.3-26.4 62.2-1.6 4.6-3.5 9-5.5 13.1-13-.4-27.2-2-39.7-6.8 2.5-26 4.3-61.2 3.4-75.9-.9-17.4-10.3-29.2-19-34.2zM34.8 404.6c-12.1-20-8.7-54.1-3.7-59.1 10.9 34.4 47.2 44.3 74.4 45.4-2.7 4.2-5.2 7.6-7 10l-1.4 1.4c-7.2 7.8-8.6 18.5-4.1 31.8-22.7-.1-46.3-9.8-58.2-29.5zm45.7 43.5c6 1.1 12.2 1.9 18.6 2.4 3.5 8 7.4 15.9 12.3 23.1-14.4-5.9-24.4-16-30.9-25.5zM192 498.2c-60.6-.1-78.3-45.8-84.9-64.7-3.7-10.5-3.4-18.2.9-23.1 2.9-3.3 9.5-7.2 24.6-7.2h118.8c15.1 0 21.8 3.9 24.6 7.2 4.2 4.8 4.5 12.6.9 23.1-6.6 18.8-24.3 64.6-84.9 64.7zm80.6-24.6c4.9-7.2 8.8-15.1 12.3-23.1 6.4-.5 12.6-1.3 18.6-2.4-6.5 9.5-16.5 19.6-30.9 25.5zm76.6-69c-12 19.7-35.6 29.3-58.1 29.7 4.5-13.3 3.1-24.1-4.1-31.8-.4-.5-.9-1-1.4-1.5-1.8-2.4-4.3-5.8-7-10 27.2-1.2 63.5-11 74.4-45.4 5 5 8.4 39.1-3.8 59zM191.9 187.7h.2c12.7-.1 27.2-17.8 27.2-17.8-9.9 6-18.8 8.1-27.3 8.3-8.5-.2-17.4-2.3-27.3-8.3 0 0 14.5 17.6 27.2 17.8zm61.7 230.7h-29.4c-4.2 0-7.2.9-8.9 2.7-2.2 2.3-1.5 5.2-.9 6.7 1 2.6 5.5 11.3 13 19.3 2.7 2.9 6.6 4.5 11 4.5s8.7-1.6 11.8-4.2c2.3-2 10.2-9.2 13.7-18.1 1.3-3.3 1-6-.9-7.9-1.3-1.3-4-2.9-9.4-3z\"]\n};\nvar faGuilded = {\n prefix: 'fab',\n iconName: 'guilded',\n icon: [448, 512, [], \"e07e\", \"M443.427,64H4.571c0,103.26,22.192,180.06,43.418,222.358C112.046,414.135,224,448,225.256,448a312.824,312.824,0,0,0,140.55-103.477c25.907-33.923,53.1-87.19,65.916-145.761H171.833c4.14,36.429,22.177,67.946,45.1,86.944h88.589c-17.012,28.213-48.186,54.4-80.456,69.482-31.232-13.259-69.09-46.544-96.548-98.362-26.726-53.833-27.092-105.883-27.092-105.883H437.573A625.91,625.91,0,0,0,443.427,64Z\"]\n};\nvar faGulp = {\n prefix: 'fab',\n iconName: 'gulp',\n icon: [256, 512, [], \"f3ae\", \"M209.8 391.1l-14.1 24.6-4.6 80.2c0 8.9-28.3 16.1-63.1 16.1s-63.1-7.2-63.1-16.1l-5.8-79.4-14.9-25.4c41.2 17.3 126 16.7 165.6 0zm-196-253.3l13.6 125.5c5.9-20 20.8-47 40-55.2 6.3-2.7 12.7-2.7 18.7.9 5.2 3 9.6 9.3 10.1 11.8 1.2 6.5-2 9.1-4.5 9.1-3 0-5.3-4.6-6.8-7.3-4.1-7.3-10.3-7.6-16.9-2.8-6.9 5-12.9 13.4-17.1 20.7-5.1 8.8-9.4 18.5-12 28.2-1.5 5.6-2.9 14.6-.6 19.9 1 2.2 2.5 3.6 4.9 3.6 5 0 12.3-6.6 15.8-10.1 4.5-4.5 10.3-11.5 12.5-16l5.2-15.5c2.6-6.8 9.9-5.6 9.9 0 0 10.2-3.7 13.6-10 34.7-5.8 19.5-7.6 25.8-7.6 25.8-.7 2.8-3.4 7.5-6.3 7.5-1.2 0-2.1-.4-2.6-1.2-1-1.4-.9-5.3-.8-6.3.2-3.2 6.3-22.2 7.3-25.2-2 2.2-4.1 4.4-6.4 6.6-5.4 5.1-14.1 11.8-21.5 11.8-3.4 0-5.6-.9-7.7-2.4l7.6 79.6c2 5 39.2 17.1 88.2 17.1 49.1 0 86.3-12.2 88.2-17.1l10.9-94.6c-5.7 5.2-12.3 11.6-19.6 14.8-5.4 2.3-17.4 3.8-17.4-5.7 0-5.2 9.1-14.8 14.4-21.5 1.4-1.7 4.7-5.9 4.7-8.1 0-2.9-6-2.2-11.7 2.5-3.2 2.7-6.2 6.3-8.7 9.7-4.3 6-6.6 11.2-8.5 15.5-6.2 14.2-4.1 8.6-9.1 22-5 13.3-4.2 11.8-5.2 14-.9 1.9-2.2 3.5-4 4.5-1.9 1-4.5.9-6.1-.3-.9-.6-1.3-1.9-1.3-3.7 0-.9.1-1.8.3-2.7 1.5-6.1 7.8-18.1 15-34.3 1.6-3.7 1-2.6.8-2.3-6.2 6-10.9 8.9-14.4 10.5-5.8 2.6-13 2.6-14.5-4.1-.1-.4-.1-.8-.2-1.2-11.8 9.2-24.3 11.7-20-8.1-4.6 8.2-12.6 14.9-22.4 14.9-4.1 0-7.1-1.4-8.6-5.1-2.3-5.5 1.3-14.9 4.6-23.8 1.7-4.5 4-9.9 7.1-16.2 1.6-3.4 4.2-5.4 7.6-4.5.6.2 1.1.4 1.6.7 2.6 1.8 1.6 4.5.3 7.2-3.8 7.5-7.1 13-9.3 20.8-.9 3.3-2 9 1.5 9 2.4 0 4.7-.8 6.9-2.4 4.6-3.4 8.3-8.5 11.1-13.5 2-3.6 4.4-8.3 5.6-12.3.5-1.7 1.1-3.3 1.8-4.8 1.1-2.5 2.6-5.1 5.2-5.1 1.3 0 2.4.5 3.2 1.5 1.7 2.2 1.3 4.5.4 6.9-2 5.6-4.7 10.6-6.9 16.7-1.3 3.5-2.7 8-2.7 11.7 0 3.4 3.7 2.6 6.8 1.2 2.4-1.1 4.8-2.8 6.8-4.5 1.2-4.9.9-3.8 26.4-68.2 1.3-3.3 3.7-4.7 6.1-4.7 1.2 0 2.2.4 3.2 1.1 1.7 1.3 1.7 4.1 1 6.2-.7 1.9-.6 1.3-4.5 10.5-5.2 12.1-8.6 20.8-13.2 31.9-1.9 4.6-7.7 18.9-8.7 22.3-.6 2.2-1.3 5.8 1 5.8 5.4 0 19.3-13.1 23.1-17 .2-.3.5-.4.9-.6.6-1.9 1.2-3.7 1.7-5.5 1.4-3.8 2.7-8.2 5.3-11.3.8-1 1.7-1.6 2.7-1.6 2.8 0 4.2 1.2 4.2 4 0 1.1-.7 5.1-1.1 6.2 1.4-1.5 2.9-3 4.5-4.5 15-13.9 25.7-6.8 25.7.2 0 7.4-8.9 17.7-13.8 23.4-1.6 1.9-4.9 5.4-5 6.4 0 1.3.9 1.8 2.2 1.8 2 0 6.4-3.5 8-4.7 5-3.9 11.8-9.9 16.6-14.1l14.8-136.8c-30.5 17.1-197.6 17.2-228.3.2zm229.7-8.5c0 21-231.2 21-231.2 0 0-8.8 51.8-15.9 115.6-15.9 9 0 17.8.1 26.3.4l12.6-48.7L228.1.6c1.4-1.4 5.8-.2 9.9 3.5s6.6 7.9 5.3 9.3l-.1.1L185.9 74l-10 40.7c39.9 2.6 67.6 8.1 67.6 14.6zm-69.4 4.6c0-.8-.9-1.5-2.5-2.1l-.2.8c0 1.3-5 2.4-11.1 2.4s-11.1-1.1-11.1-2.4c0-.1 0-.2.1-.3l.2-.7c-1.8.6-3 1.4-3 2.3 0 2.1 6.2 3.7 13.7 3.7 7.7.1 13.9-1.6 13.9-3.7z\"]\n};\nvar faHackerNews = {\n prefix: 'fab',\n iconName: 'hacker-news',\n icon: [448, 512, [], \"f1d4\", \"M0 32v448h448V32H0zm21.2 197.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z\"]\n};\nvar faHackerNewsSquare = {\n prefix: 'fab',\n iconName: 'hacker-news-square',\n icon: [448, 512, [], \"f3af\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.2 229.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z\"]\n};\nvar faHackerrank = {\n prefix: 'fab',\n iconName: 'hackerrank',\n icon: [512, 512, [], \"f5f7\", \"M477.5 128C463 103.05 285.13 0 256.16 0S49.25 102.79 34.84 128s-14.49 230.8 0 256 192.38 128 221.32 128S463 409.08 477.49 384s14.51-231 .01-256zM316.13 414.22c-4 0-40.91-35.77-38-38.69.87-.87 6.26-1.48 17.55-1.83 0-26.23.59-68.59.94-86.32 0-2-.44-3.43-.44-5.85h-79.93c0 7.1-.46 36.2 1.37 72.88.23 4.54-1.58 6-5.74 5.94-10.13 0-20.27-.11-30.41-.08-4.1 0-5.87-1.53-5.74-6.11.92-33.44 3-84-.15-212.67v-3.17c-9.67-.35-16.38-1-17.26-1.84-2.92-2.92 34.54-38.69 38.49-38.69s41.17 35.78 38.27 38.69c-.87.87-7.9 1.49-16.77 1.84v3.16c-2.42 25.75-2 79.59-2.63 105.39h80.26c0-4.55.39-34.74-1.2-83.64-.1-3.39.95-5.17 4.21-5.2 11.07-.08 22.15-.13 33.23-.06 3.46 0 4.57 1.72 4.5 5.38C333 354.64 336 341.29 336 373.69c8.87.35 16.82 1 17.69 1.84 2.88 2.91-33.62 38.69-37.58 38.69z\"]\n};\nvar faHips = {\n prefix: 'fab',\n iconName: 'hips',\n icon: [640, 512, [], \"f452\", \"M251.6 157.6c0-1.9-.9-2.8-2.8-2.8h-40.9c-1.6 0-2.7 1.4-2.7 2.8v201.8c0 1.4 1.1 2.8 2.7 2.8h40.9c1.9 0 2.8-.9 2.8-2.8zM156.5 168c-16.1-11.8-36.3-17.9-60.3-18-18.1-.1-34.6 3.7-49.8 11.4V80.2c0-1.8-.9-2.7-2.8-2.7H2.7c-1.8 0-2.7.9-2.7 2.7v279.2c0 1.9.9 2.8 2.7 2.8h41c1.9 0 2.8-.9 2.8-2.8V223.3c0-.8-2.8-27 45.8-27 48.5 0 45.8 26.1 45.8 27v122.6c0 9 7.3 16.3 16.4 16.3h27.3c1.8 0 2.7-.9 2.7-2.8V223.3c0-23.4-9.3-41.8-28-55.3zm478.4 110.1c-6.8-15.7-18.4-27-34.9-34.1l-57.6-25.3c-8.6-3.6-9.2-11.2-2.6-16.1 7.4-5.5 44.3-13.9 84 6.8 1.7 1 4-.3 4-2.4v-44.7c0-1.3-.6-2.1-1.9-2.6-17.7-6.6-36.1-9.9-55.1-9.9-26.5 0-45.3 5.8-58.5 15.4-.5.4-28.4 20-22.7 53.7 3.4 19.6 15.8 34.2 37.2 43.6l53.6 23.5c11.6 5.1 15.2 13.3 12.2 21.2-3.7 9.1-13.2 13.6-36.5 13.6-24.3 0-44.7-8.9-58.4-19.1-2.1-1.4-4.4.2-4.4 2.3v34.4c0 10.4 4.9 17.3 14.6 20.7 15.6 5.5 31.6 8.2 48.2 8.2 12.7 0 25.8-1.2 36.3-4.3.7-.3 36-8.9 45.6-45.8 3.5-13.5 2.4-26.5-3.1-39.1zM376.2 149.8c-31.7 0-104.2 20.1-104.2 103.5v183.5c0 .8.6 2.7 2.7 2.7h40.9c1.9 0 2.8-.9 2.8-2.7V348c16.5 12.7 35.8 19.1 57.7 19.1 60.5 0 108.7-48.5 108.7-108.7.1-60.3-48.2-108.6-108.6-108.6zm0 170.9c-17.2 0-31.9-6.1-44-18.2-12.2-12.2-18.2-26.8-18.2-44 0-34.5 27.6-62.2 62.2-62.2 34.5 0 62.2 27.6 62.2 62.2.1 34.3-27.3 62.2-62.2 62.2zM228.3 72.5c-15.9 0-28.8 12.9-28.9 28.9 0 15.6 12.7 28.9 28.9 28.9s28.9-13.1 28.9-28.9c0-16.2-13-28.9-28.9-28.9z\"]\n};\nvar faHireAHelper = {\n prefix: 'fab',\n iconName: 'hire-a-helper',\n icon: [512, 512, [], \"f3b0\", \"M443.1 0H71.9C67.9 37.3 37.4 67.8 0 71.7v371.5c37.4 4.9 66 32.4 71.9 68.8h372.2c3-36.4 32.5-65.8 67.9-69.8V71.7c-36.4-5.9-65-35.3-68.9-71.7zm-37 404.9c-36.3 0-18.8-2-55.1-2-35.8 0-21 2-56.1 2-5.9 0-4.9-8.2 0-9.8 22.8-7.6 22.9-10.2 24.6-12.8 10.4-15.6 5.9-83 5.9-113 0-5.3-6.4-12.8-13.8-12.8H200.4c-7.4 0-13.8 7.5-13.8 12.8 0 30-4.5 97.4 5.9 113 1.7 2.5 1.8 5.2 24.6 12.8 4.9 1.6 6 9.8 0 9.8-35.1 0-20.3-2-56.1-2-36.3 0-18.8 2-55.1 2-7.9 0-5.8-10.8 0-10.8 10.2-3.4 13.5-3.5 21.7-13.8 7.7-12.9 7.9-44.4 7.9-127.8V151.3c0-22.2-12.2-28.3-28.6-32.4-8.8-2.2-4-11.8 1-11.8 36.5 0 20.6 2 57.1 2 32.7 0 16.5-2 49.2-2 3.3 0 8.5 8.3 1 10.8-4.9 1.6-27.6 3.7-27.6 39.3 0 45.6-.2 55.8 1 68.8 0 1.3 2.3 12.8 12.8 12.8h109.2c10.5 0 12.8-11.5 12.8-12.8 1.2-13 1-23.2 1-68.8 0-35.6-22.7-37.7-27.6-39.3-7.5-2.5-2.3-10.8 1-10.8 32.7 0 16.5 2 49.2 2 36.5 0 20.6-2 57.1-2 4.9 0 9.9 9.6 1 11.8-16.4 4.1-28.6 10.3-28.6 32.4v101.2c0 83.4.1 114.9 7.9 127.8 8.2 10.2 11.4 10.4 21.7 13.8 5.8 0 7.8 10.8 0 10.8z\"]\n};\nvar faHive = {\n prefix: 'fab',\n iconName: 'hive',\n icon: [512, 512, [], \"e07f\", \"M260.353,254.878,131.538,33.1a2.208,2.208,0,0,0-3.829.009L.3,254.887A2.234,2.234,0,0,0,.3,257.122L129.116,478.9a2.208,2.208,0,0,0,3.83-.009L260.358,257.113A2.239,2.239,0,0,0,260.353,254.878Zm39.078-25.713a2.19,2.19,0,0,0,1.9,1.111h66.509a2.226,2.226,0,0,0,1.9-3.341L259.115,33.111a2.187,2.187,0,0,0-1.9-1.111H190.707a2.226,2.226,0,0,0-1.9,3.341ZM511.7,254.886,384.9,33.112A2.2,2.2,0,0,0,382.99,32h-66.6a2.226,2.226,0,0,0-1.906,3.34L440.652,256,314.481,476.66a2.226,2.226,0,0,0,1.906,3.34h66.6a2.2,2.2,0,0,0,1.906-1.112L511.7,257.114A2.243,2.243,0,0,0,511.7,254.886ZM366.016,284.917H299.508a2.187,2.187,0,0,0-1.9,1.111l-108.8,190.631a2.226,2.226,0,0,0,1.9,3.341h66.509a2.187,2.187,0,0,0,1.9-1.111l108.8-190.631A2.226,2.226,0,0,0,366.016,284.917Z\"]\n};\nvar faHooli = {\n prefix: 'fab',\n iconName: 'hooli',\n icon: [640, 512, [], \"f427\", \"M144.5 352l38.3.8c-13.2-4.6-26-10.2-38.3-16.8zm57.7-5.3v5.3l-19.4.8c36.5 12.5 69.9 14.2 94.7 7.2-19.9.2-45.8-2.6-75.3-13.3zm408.9-115.2c15.9 0 28.9-12.9 28.9-28.9s-12.9-24.5-28.9-24.5c-15.9 0-28.9 8.6-28.9 24.5s12.9 28.9 28.9 28.9zm-29 120.5H640V241.5h-57.9zm-73.7 0h57.9V156.7L508.4 184zm-31-119.4c-18.2-18.2-50.4-17.1-50.4-17.1s-32.3-1.1-50.4 17.1c-18.2 18.2-16.8 33.9-16.8 52.6s-1.4 34.3 16.8 52.5 50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.8-33.8 16.8-52.5-.1-18.8 1.3-34.5-16.8-52.6zm-39.8 71.9c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9zm-106.2-71.9c-18.2-18.2-50.4-17.1-50.4-17.1s-32.2-1.1-50.4 17.1c-1.9 1.9-3.7 3.9-5.3 6-38.2-29.6-72.5-46.5-102.1-61.1v-20.7l-22.5 10.6c-54.4-22.1-89-18.2-97.3.1 0 0-24.9 32.8 61.8 110.8V352h57.9v-28.6c-6.5-4.2-13-8.7-19.4-13.6-14.8-11.2-27.4-21.6-38.4-31.4v-31c13.1 14.7 30.5 31.4 53.4 50.3l4.5 3.6v-29.8c0-6.9 1.7-18.2 10.8-18.2s10.6 6.9 10.6 15V317c18 12.2 37.3 22.1 57.7 29.6v-93.9c0-18.7-13.4-37.4-40.6-37.4-15.8-.1-30.5 8.2-38.5 21.9v-54.3c41.9 20.9 83.9 46.5 99.9 58.3-10.2 14.6-9.3 28.1-9.3 43.7 0 18.7-1.4 34.3 16.8 52.5s50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.7-33.8 16.7-52.5 0-18.5 1.5-34.2-16.7-52.3zM65.2 184v63.3c-48.7-54.5-38.9-76-35.2-79.1 13.5-11.4 37.5-8 64.4 2.1zm226.5 120.5c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9z\"]\n};\nvar faHornbill = {\n prefix: 'fab',\n iconName: 'hornbill',\n icon: [512, 512, [], \"f592\", \"M76.38 370.3a37.8 37.8 0 1 1-32.07-32.42c-78.28-111.35 52-190.53 52-190.53-5.86 43-8.24 91.16-8.24 91.16-67.31 41.49.93 64.06 39.81 72.87a140.38 140.38 0 0 0 131.66 91.94c1.92 0 3.77-.21 5.67-.28l.11 18.86c-99.22 1.39-158.7-29.14-188.94-51.6zm108-327.7A37.57 37.57 0 0 0 181 21.45a37.95 37.95 0 1 0-31.17 54.22c-22.55 29.91-53.83 89.57-52.42 190l21.84-.15c0-.9-.14-1.77-.14-2.68A140.42 140.42 0 0 1 207 132.71c8-37.71 30.7-114.3 73.8-44.29 0 0 48.14 2.38 91.18 8.24 0 0-77.84-128-187.59-54.06zm304.19 134.17a37.94 37.94 0 1 0-53.84-28.7C403 126.13 344.89 99 251.28 100.33l.14 22.5c2.7-.15 5.39-.41 8.14-.41a140.37 140.37 0 0 1 130.49 88.76c39.1 9 105.06 31.58 38.46 72.54 0 0-2.34 48.13-8.21 91.16 0 0 133.45-81.16 49-194.61a37.45 37.45 0 0 0 19.31-3.5zM374.06 436.24c21.43-32.46 46.42-89.69 45.14-179.66l-19.52.14c.08 2.06.3 4.07.3 6.15a140.34 140.34 0 0 1-91.39 131.45c-8.85 38.95-31.44 106.66-72.77 39.49 0 0-48.12-2.34-91.19-8.22 0 0 79.92 131.34 191.9 51a37.5 37.5 0 0 0 3.64 14 37.93 37.93 0 1 0 33.89-54.29z\"]\n};\nvar faHotjar = {\n prefix: 'fab',\n iconName: 'hotjar',\n icon: [448, 512, [], \"f3b1\", \"M414.9 161.5C340.2 29 121.1 0 121.1 0S222.2 110.4 93 197.7C11.3 252.8-21 324.4 14 402.6c26.8 59.9 83.5 84.3 144.6 93.4-29.2-55.1-6.6-122.4-4.1-129.6 57.1 86.4 165 0 110.8-93.9 71 15.4 81.6 138.6 27.1 215.5 80.5-25.3 134.1-88.9 148.8-145.6 15.5-59.3 3.7-127.9-26.3-180.9z\"]\n};\nvar faHouzz = {\n prefix: 'fab',\n iconName: 'houzz',\n icon: [448, 512, [], \"f27c\", \"M275.9 330.7H171.3V480H17V32h109.5v104.5l305.1 85.6V480H275.9z\"]\n};\nvar faHtml5 = {\n prefix: 'fab',\n iconName: 'html5',\n icon: [384, 512, [], \"f13b\", \"M0 32l34.9 395.8L191.5 480l157.6-52.2L384 32H0zm308.2 127.9H124.4l4.1 49.4h175.6l-13.6 148.4-97.9 27v.3h-1.1l-98.7-27.3-6-75.8h47.7L138 320l53.5 14.5 53.7-14.5 6-62.2H84.3L71.5 112.2h241.1l-4.4 47.7z\"]\n};\nvar faHubspot = {\n prefix: 'fab',\n iconName: 'hubspot',\n icon: [512, 512, [], \"f3b2\", \"M267.4 211.6c-25.1 23.7-40.8 57.3-40.8 94.6 0 29.3 9.7 56.3 26 78L203.1 434c-4.4-1.6-9.1-2.5-14-2.5-10.8 0-20.9 4.2-28.5 11.8-7.6 7.6-11.8 17.8-11.8 28.6s4.2 20.9 11.8 28.5c7.6 7.6 17.8 11.6 28.5 11.6 10.8 0 20.9-3.9 28.6-11.6 7.6-7.6 11.8-17.8 11.8-28.5 0-4.2-.6-8.2-1.9-12.1l50-50.2c22 16.9 49.4 26.9 79.3 26.9 71.9 0 130-58.3 130-130.2 0-65.2-47.7-119.2-110.2-128.7V116c17.5-7.4 28.2-23.8 28.2-42.9 0-26.1-20.9-47.9-47-47.9S311.2 47 311.2 73.1c0 19.1 10.7 35.5 28.2 42.9v61.2c-15.2 2.1-29.6 6.7-42.7 13.6-27.6-20.9-117.5-85.7-168.9-124.8 1.2-4.4 2-9 2-13.8C129.8 23.4 106.3 0 77.4 0 48.6 0 25.2 23.4 25.2 52.2c0 28.9 23.4 52.3 52.2 52.3 9.8 0 18.9-2.9 26.8-7.6l163.2 114.7zm89.5 163.6c-38.1 0-69-30.9-69-69s30.9-69 69-69 69 30.9 69 69-30.9 69-69 69z\"]\n};\nvar faIdeal = {\n prefix: 'fab',\n iconName: 'ideal',\n icon: [576, 512, [], \"e013\", \"M125.61,165.48a49.07,49.07,0,1,0,49.06,49.06A49.08,49.08,0,0,0,125.61,165.48ZM86.15,425.84h78.94V285.32H86.15Zm151.46-211.6c0-20-10-22.53-18.74-22.53H204.82V237.5h14.05C228.62,237.5,237.61,234.69,237.61,214.24Zm201.69,46V168.93h22.75V237.5h33.69C486.5,113.08,388.61,86.19,299.67,86.19H204.84V169h14c25.6,0,41.5,17.35,41.5,45.26,0,28.81-15.52,46-41.5,46h-14V425.88h94.83c144.61,0,194.94-67.16,196.72-165.64Zm-109.75,0H273.3V169h54.43v22.73H296v10.58h30V225H296V237.5h33.51Zm74.66,0-5.16-17.67H369.31l-5.18,17.67H340.47L368,168.92h32.35l27.53,91.34ZM299.65,32H32V480H299.65c161.85,0,251-79.73,251-224.52C550.62,172,518,32,299.65,32Zm0,426.92H53.07V53.07H299.65c142.1,0,229.9,64.61,229.9,202.41C529.55,389.57,448.55,458.92,299.65,458.92Zm83.86-264.85L376,219.88H392.4l-7.52-25.81Z\"]\n};\nvar faImdb = {\n prefix: 'fab',\n iconName: 'imdb',\n icon: [448, 512, [], \"f2d8\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.3 229.2H21c.1-.1.2-.3.3-.4zM97 319.8H64V192h33zm113.2 0h-28.7v-86.4l-11.6 86.4h-20.6l-12.2-84.5v84.5h-29V192h42.8c3.3 19.8 6 39.9 8.7 59.9l7.6-59.9h43zm11.4 0V192h24.6c17.6 0 44.7-1.6 49 20.9 1.7 7.6 1.4 16.3 1.4 24.4 0 88.5 11.1 82.6-75 82.5zm160.9-29.2c0 15.7-2.4 30.9-22.2 30.9-9 0-15.2-3-20.9-9.8l-1.9 8.1h-29.8V192h31.7v41.7c6-6.5 12-9.2 20.9-9.2 21.4 0 22.2 12.8 22.2 30.1zM265 229.9c0-9.7 1.6-16-10.3-16v83.7c12.2.3 10.3-8.7 10.3-18.4zm85.5 26.1c0-5.4 1.1-12.7-6.2-12.7-6 0-4.9 8.9-4.9 12.7 0 .6-1.1 39.6 1.1 44.7.8 1.6 2.2 2.4 3.8 2.4 7.8 0 6.2-9 6.2-14.4z\"]\n};\nvar faInnosoft = {\n prefix: 'fab',\n iconName: 'innosoft',\n icon: [448, 512, [], \"e080\", \"M422.559,159.71a27.379,27.379,0,0,0-13.866-23.337,26.42,26.42,0,0,0-26.211.133L73.943,314.647V176.261a11.955,11.955,0,0,1,6.047-10.34L218.066,86.208a12.153,12.153,0,0,1,11.922.025l32.656,18.853L112.581,191.723v56L359.642,105.086,241.129,36.679c-10.992-6.129-22.3-6.255-33.8-.27l-164.6,95.026c-10.634,6.12-16.771,16.39-17.29,29.124l0,191.5c.17,10.135,5.08,18.672,13.474,23.428a27.037,27.037,0,0,0,26.736-.045L374.057,197.376V335.657a11.976,11.976,0,0,1-5.92,10.368L230.025,425.77a12.175,12.175,0,0,1-11.937.062l-32.723-18.9,150.051-86.627v-56L88.367,406.932l118.794,68.583a33.88,33.88,0,0,0,34.25-.327l164.527-94.995c10.746-6.631,16.649-17.118,16.624-29.528Z\"]\n};\nvar faInstagram = {\n prefix: 'fab',\n iconName: 'instagram',\n icon: [448, 512, [], \"f16d\", \"M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z\"]\n};\nvar faInstagramSquare = {\n prefix: 'fab',\n iconName: 'instagram-square',\n icon: [448, 512, [], \"e055\", \"M224,202.66A53.34,53.34,0,1,0,277.36,256,53.38,53.38,0,0,0,224,202.66Zm124.71-41a54,54,0,0,0-30.41-30.41c-21-8.29-71-6.43-94.3-6.43s-73.25-1.93-94.31,6.43a54,54,0,0,0-30.41,30.41c-8.28,21-6.43,71.05-6.43,94.33S91,329.26,99.32,350.33a54,54,0,0,0,30.41,30.41c21,8.29,71,6.43,94.31,6.43s73.24,1.93,94.3-6.43a54,54,0,0,0,30.41-30.41c8.35-21,6.43-71.05,6.43-94.33S357.1,182.74,348.75,161.67ZM224,338a82,82,0,1,1,82-82A81.9,81.9,0,0,1,224,338Zm85.38-148.3a19.14,19.14,0,1,1,19.13-19.14A19.1,19.1,0,0,1,309.42,189.74ZM400,32H48A48,48,0,0,0,0,80V432a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V80A48,48,0,0,0,400,32ZM382.88,322c-1.29,25.63-7.14,48.34-25.85,67s-41.4,24.63-67,25.85c-26.41,1.49-105.59,1.49-132,0-25.63-1.29-48.26-7.15-67-25.85s-24.63-41.42-25.85-67c-1.49-26.42-1.49-105.61,0-132,1.29-25.63,7.07-48.34,25.85-67s41.47-24.56,67-25.78c26.41-1.49,105.59-1.49,132,0,25.63,1.29,48.33,7.15,67,25.85s24.63,41.42,25.85,67.05C384.37,216.44,384.37,295.56,382.88,322Z\"]\n};\nvar faInstalod = {\n prefix: 'fab',\n iconName: 'instalod',\n icon: [512, 512, [], \"e081\", \"M153.384,480H387.113L502.554,275.765,204.229,333.211ZM504.726,240.078,387.113,32H155.669L360.23,267.9ZM124.386,48.809,7.274,256,123.236,461.154,225.627,165.561Z\"]\n};\nvar faIntercom = {\n prefix: 'fab',\n iconName: 'intercom',\n icon: [448, 512, [], \"f7af\", \"M392 32H56C25.1 32 0 57.1 0 88v336c0 30.9 25.1 56 56 56h336c30.9 0 56-25.1 56-56V88c0-30.9-25.1-56-56-56zm-108.3 82.1c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zm-74.6-7.5c0-19.8 29.9-19.8 29.9 0v216.5c0 19.8-29.9 19.8-29.9 0V106.6zm-74.7 7.5c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zM59.7 144c0-19.8 29.9-19.8 29.9 0v134.3c0 19.8-29.9 19.8-29.9 0V144zm323.4 227.8c-72.8 63-241.7 65.4-318.1 0-15-12.8 4.4-35.5 19.4-22.7 65.9 55.3 216.1 53.9 279.3 0 14.9-12.9 34.3 9.8 19.4 22.7zm5.2-93.5c0 19.8-29.9 19.8-29.9 0V144c0-19.8 29.9-19.8 29.9 0v134.3z\"]\n};\nvar faInternetExplorer = {\n prefix: 'fab',\n iconName: 'internet-explorer',\n icon: [512, 512, [], \"f26b\", \"M483.049 159.706c10.855-24.575 21.424-60.438 21.424-87.871 0-72.722-79.641-98.371-209.673-38.577-107.632-7.181-211.221 73.67-237.098 186.457 30.852-34.862 78.271-82.298 121.977-101.158C125.404 166.85 79.128 228.002 43.992 291.725 23.246 329.651 0 390.94 0 436.747c0 98.575 92.854 86.5 180.251 42.006 31.423 15.43 66.559 15.573 101.695 15.573 97.124 0 184.249-54.294 216.814-146.022H377.927c-52.509 88.593-196.819 52.996-196.819-47.436H509.9c6.407-43.581-1.655-95.715-26.851-141.162zM64.559 346.877c17.711 51.15 53.703 95.871 100.266 123.304-88.741 48.94-173.267 29.096-100.266-123.304zm115.977-108.873c2-55.151 50.276-94.871 103.98-94.871 53.418 0 101.981 39.72 103.981 94.871H180.536zm184.536-187.6c21.425-10.287 48.563-22.003 72.558-22.003 31.422 0 54.274 21.717 54.274 53.722 0 20.003-7.427 49.007-14.569 67.867-26.28-42.292-65.986-81.584-112.263-99.586z\"]\n};\nvar faInvision = {\n prefix: 'fab',\n iconName: 'invision',\n icon: [448, 512, [], \"f7b0\", \"M407.4 32H40.6C18.2 32 0 50.2 0 72.6v366.8C0 461.8 18.2 480 40.6 480h366.8c22.4 0 40.6-18.2 40.6-40.6V72.6c0-22.4-18.2-40.6-40.6-40.6zM176.1 145.6c.4 23.4-22.4 27.3-26.6 27.4-14.9 0-27.1-12-27.1-27 .1-35.2 53.1-35.5 53.7-.4zM332.8 377c-65.6 0-34.1-74-25-106.6 14.1-46.4-45.2-59-59.9.7l-25.8 103.3H177l8.1-32.5c-31.5 51.8-94.6 44.4-94.6-4.3.1-14.3.9-14 23-104.1H81.7l9.7-35.6h76.4c-33.6 133.7-32.6 126.9-32.9 138.2 0 20.9 40.9 13.5 57.4-23.2l19.8-79.4h-32.3l9.7-35.6h68.8l-8.9 40.5c40.5-75.5 127.9-47.8 101.8 38-14.2 51.1-14.6 50.7-14.9 58.8 0 15.5 17.5 22.6 31.8-16.9L386 325c-10.5 36.7-29.4 52-53.2 52z\"]\n};\nvar faIoxhost = {\n prefix: 'fab',\n iconName: 'ioxhost',\n icon: [640, 512, [], \"f208\", \"M616 160h-67.3C511.2 70.7 422.9 8 320 8 183 8 72 119 72 256c0 16.4 1.6 32.5 4.7 48H24c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h67.3c37.5 89.3 125.8 152 228.7 152 137 0 248-111 248-248 0-16.4-1.6-32.5-4.7-48H616c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24zm-96 96c0 110.5-89.5 200-200 200-75.7 0-141.6-42-175.5-104H424c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24H125.8c-3.8-15.4-5.8-31.4-5.8-48 0-110.5 89.5-200 200-200 75.7 0 141.6 42 175.5 104H216c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h298.2c3.8 15.4 5.8 31.4 5.8 48zm-304-24h208c13.3 0 24 10.7 24 24 0 13.2-10.7 24-24 24H216c-13.3 0-24-10.7-24-24 0-13.2 10.7-24 24-24z\"]\n};\nvar faItchIo = {\n prefix: 'fab',\n iconName: 'itch-io',\n icon: [512, 512, [], \"f83a\", \"M71.92 34.77C50.2 47.67 7.4 96.84 7 109.73v21.34c0 27.06 25.29 50.84 48.25 50.84 27.57 0 50.54-22.85 50.54-50 0 27.12 22.18 50 49.76 50s49-22.85 49-50c0 27.12 23.59 50 51.16 50h.5c27.57 0 51.16-22.85 51.16-50 0 27.12 21.47 50 49 50s49.76-22.85 49.76-50c0 27.12 23 50 50.54 50 23 0 48.25-23.78 48.25-50.84v-21.34c-.4-12.9-43.2-62.07-64.92-75C372.56 32.4 325.76 32 256 32S91.14 33.1 71.92 34.77zm132.32 134.39c-22 38.4-77.9 38.71-99.85.25-13.17 23.14-43.17 32.07-56 27.66-3.87 40.15-13.67 237.13 17.73 269.15 80 18.67 302.08 18.12 379.76 0 31.65-32.27 21.32-232 17.75-269.15-12.92 4.44-42.88-4.6-56-27.66-22 38.52-77.85 38.1-99.85-.24-7.1 12.49-23.05 28.94-51.76 28.94a57.54 57.54 0 0 1-51.75-28.94zm-41.58 53.77c16.47 0 31.09 0 49.22 19.78a436.91 436.91 0 0 1 88.18 0C318.22 223 332.85 223 349.31 223c52.33 0 65.22 77.53 83.87 144.45 17.26 62.15-5.52 63.67-33.95 63.73-42.15-1.57-65.49-32.18-65.49-62.79-39.25 6.43-101.93 8.79-155.55 0 0 30.61-23.34 61.22-65.49 62.79-28.42-.06-51.2-1.58-33.94-63.73 18.67-67 31.56-144.45 83.88-144.45zM256 270.79s-44.38 40.77-52.35 55.21l29-1.17v25.32c0 1.55 21.34.16 23.33.16 11.65.54 23.31 1 23.31-.16v-25.28l29 1.17c-8-14.48-52.35-55.24-52.35-55.24z\"]\n};\nvar faItunes = {\n prefix: 'fab',\n iconName: 'itunes',\n icon: [448, 512, [], \"f3b4\", \"M223.6 80.3C129 80.3 52.5 157 52.5 251.5S129 422.8 223.6 422.8s171.2-76.7 171.2-171.2c0-94.6-76.7-171.3-171.2-171.3zm79.4 240c-3.2 13.6-13.5 21.2-27.3 23.8-12.1 2.2-22.2 2.8-31.9-5-11.8-10-12-26.4-1.4-36.8 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 3.2-3.6 2.2-2 2.2-80.8 0-5.6-2.7-7.1-8.4-6.1-4 .7-91.9 17.1-91.9 17.1-5 1.1-6.7 2.6-6.7 8.3 0 116.1.5 110.8-1.2 118.5-2.1 9-7.6 15.8-14.9 19.6-8.3 4.6-23.4 6.6-31.4 5.2-21.4-4-28.9-28.7-14.4-42.9 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 5-5.7.9-127 2.6-133.7.4-2.6 1.5-4.8 3.5-6.4 2.1-1.7 5.8-2.7 6.7-2.7 101-19 113.3-21.4 115.1-21.4 5.7-.4 9 3 9 8.7-.1 170.6.4 161.4-1 167.6zM345.2 32H102.8C45.9 32 0 77.9 0 134.8v242.4C0 434.1 45.9 480 102.8 480h242.4c57 0 102.8-45.9 102.8-102.8V134.8C448 77.9 402.1 32 345.2 32zM223.6 444c-106.3 0-192.5-86.2-192.5-192.5S117.3 59 223.6 59s192.5 86.2 192.5 192.5S329.9 444 223.6 444z\"]\n};\nvar faItunesNote = {\n prefix: 'fab',\n iconName: 'itunes-note',\n icon: [384, 512, [], \"f3b5\", \"M381.9 388.2c-6.4 27.4-27.2 42.8-55.1 48-24.5 4.5-44.9 5.6-64.5-10.2-23.9-20.1-24.2-53.4-2.7-74.4 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 6.4-7.2 4.4-4.1 4.4-163.2 0-11.2-5.5-14.3-17-12.3-8.2 1.4-185.7 34.6-185.7 34.6-10.2 2.2-13.4 5.2-13.4 16.7 0 234.7 1.1 223.9-2.5 239.5-4.2 18.2-15.4 31.9-30.2 39.5-16.8 9.3-47.2 13.4-63.4 10.4-43.2-8.1-58.4-58-29.1-86.6 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 10.1-11.5 1.8-256.6 5.2-270.2.8-5.2 3-9.6 7.1-12.9 4.2-3.5 11.8-5.5 13.4-5.5 204-38.2 228.9-43.1 232.4-43.1 11.5-.8 18.1 6 18.1 17.6.2 344.5 1.1 326-1.8 338.5z\"]\n};\nvar faJava = {\n prefix: 'fab',\n iconName: 'java',\n icon: [384, 512, [], \"f4e4\", \"M277.74 312.9c9.8-6.7 23.4-12.5 23.4-12.5s-38.7 7-77.2 10.2c-47.1 3.9-97.7 4.7-123.1 1.3-60.1-8 33-30.1 33-30.1s-36.1-2.4-80.6 19c-52.5 25.4 130 37 224.5 12.1zm-85.4-32.1c-19-42.7-83.1-80.2 0-145.8C296 53.2 242.84 0 242.84 0c21.5 84.5-75.6 110.1-110.7 162.6-23.9 35.9 11.7 74.4 60.2 118.2zm114.6-176.2c.1 0-175.2 43.8-91.5 140.2 24.7 28.4-6.5 54-6.5 54s62.7-32.4 33.9-72.9c-26.9-37.8-47.5-56.6 64.1-121.3zm-6.1 270.5a12.19 12.19 0 0 1-2 2.6c128.3-33.7 81.1-118.9 19.8-97.3a17.33 17.33 0 0 0-8.2 6.3 70.45 70.45 0 0 1 11-3c31-6.5 75.5 41.5-20.6 91.4zM348 437.4s14.5 11.9-15.9 21.2c-57.9 17.5-240.8 22.8-291.6.7-18.3-7.9 16-19 26.8-21.3 11.2-2.4 17.7-2 17.7-2-20.3-14.3-131.3 28.1-56.4 40.2C232.84 509.4 401 461.3 348 437.4zM124.44 396c-78.7 22 47.9 67.4 148.1 24.5a185.89 185.89 0 0 1-28.2-13.8c-44.7 8.5-65.4 9.1-106 4.5-33.5-3.8-13.9-15.2-13.9-15.2zm179.8 97.2c-78.7 14.8-175.8 13.1-233.3 3.6 0-.1 11.8 9.7 72.4 13.6 92.2 5.9 233.8-3.3 237.1-46.9 0 0-6.4 16.5-76.2 29.7zM260.64 353c-59.2 11.4-93.5 11.1-136.8 6.6-33.5-3.5-11.6-19.7-11.6-19.7-86.8 28.8 48.2 61.4 169.5 25.9a60.37 60.37 0 0 1-21.1-12.8z\"]\n};\nvar faJediOrder = {\n prefix: 'fab',\n iconName: 'jedi-order',\n icon: [448, 512, [], \"f50e\", \"M398.5 373.6c95.9-122.1 17.2-233.1 17.2-233.1 45.4 85.8-41.4 170.5-41.4 170.5 105-171.5-60.5-271.5-60.5-271.5 96.9 72.7-10.1 190.7-10.1 190.7 85.8 158.4-68.6 230.1-68.6 230.1s-.4-16.9-2.2-85.7c4.3 4.5 34.5 36.2 34.5 36.2l-24.2-47.4 62.6-9.1-62.6-9.1 20.2-55.5-31.4 45.9c-2.2-87.7-7.8-305.1-7.9-306.9v-2.4 1-1 2.4c0 1-5.6 219-7.9 306.9l-31.4-45.9 20.2 55.5-62.6 9.1 62.6 9.1-24.2 47.4 34.5-36.2c-1.8 68.8-2.2 85.7-2.2 85.7s-154.4-71.7-68.6-230.1c0 0-107-118.1-10.1-190.7 0 0-165.5 99.9-60.5 271.5 0 0-86.8-84.8-41.4-170.5 0 0-78.7 111 17.2 233.1 0 0-26.2-16.1-49.4-77.7 0 0 16.9 183.3 222 185.7h4.1c205-2.4 222-185.7 222-185.7-23.6 61.5-49.9 77.7-49.9 77.7z\"]\n};\nvar faJenkins = {\n prefix: 'fab',\n iconName: 'jenkins',\n icon: [512, 512, [], \"f3b6\", \"M487.1 425c-1.4-11.2-19-23.1-28.2-31.9-5.1-5-29-23.1-30.4-29.9-1.4-6.6 9.7-21.5 13.3-28.9 5.1-10.7 8.8-23.7 11.3-32.6 18.8-66.1 20.7-156.9-6.2-211.2-10.2-20.6-38.6-49-56.4-62.5-42-31.7-119.6-35.3-170.1-16.6-14.1 5.2-27.8 9.8-40.1 17.1-33.1 19.4-68.3 32.5-78.1 71.6-24.2 10.8-31.5 41.8-30.3 77.8.2 7 4.1 15.8 2.7 22.4-.7 3.3-5.2 7.6-6.1 9.8-11.6 27.7-2.3 64 11.1 83.7 8.1 11.9 21.5 22.4 39.2 25.2.7 10.6 3.3 19.7 8.2 30.4 3.1 6.8 14.7 19 10.4 27.7-2.2 4.4-21 13.8-27.3 17.6C89 407.2 73.7 415 54.2 429c-12.6 9-32.3 10.2-29.2 31.1 2.1 14.1 10.1 31.6 14.7 45.8.7 2 1.4 4.1 2.1 6h422c4.9-15.3 9.7-30.9 14.6-47.2 3.4-11.4 10.2-27.8 8.7-39.7zM205.9 33.7c1.8-.5 3.4.7 4.9 2.4-.2 5.2-5.4 5.1-8.9 6.8-5.4 6.7-13.4 9.8-20 17.2-6.8 7.5-14.4 27.7-23.4 30-4.5 1.1-9.7-.8-13.6-.5-10.4.7-17.7 6-28.3 7.5 13.6-29.9 56.1-54 89.3-63.4zm-104.8 93.6c13.5-14.9 32.1-24.1 54.8-25.9 11.7 29.7-8.4 65-.9 97.6 2.3 9.9 10.2 25.4-2.4 25.7.3-28.3-34.8-46.3-61.3-29.6-1.8-21.5-4.9-51.7 9.8-67.8zm36.7 200.2c-1-4.1-2.7-12.9-2.3-15.1 1.6-8.7 17.1-12.5 11-24.7-11.3-.1-13.8 10.2-24.1 11.3-26.7 2.6-45.6-35.4-44.4-58.4 1-19.5 17.6-38.2 40.1-35.8 16 1.8 21.4 19.2 24.5 34.7 9.2.5 22.5-.4 26.9-7.6-.6-17.5-8.8-31.6-8.2-47.7 1-30.3 17.5-57.6 4.8-87.4 13.6-30.9 53.5-55.3 83.1-70 36.6-18.3 94.9-3.7 129.3 15.8 19.7 11.1 34.4 32.7 48.3 50.7-19.5-5.8-36.1 4.2-33.1 20.3 16.3-14.9 44.2-.2 52.5 16.4 7.9 15.8 7.8 39.3 9 62.8 2.9 57-10.4 115.9-39.1 157.1-7.7 11-14.1 23-24.9 30.6-26 18.2-65.4 34.7-99.2 23.4-44.7-15-65-44.8-89.5-78.8.7 18.7 13.8 34.1 26.8 48.4 11.3 12.5 25 26.6 39.7 32.4-12.3-2.9-31.1-3.8-36.2 7.2-28.6-1.9-55.1-4.8-68.7-24.2-10.6-15.4-21.4-41.4-26.3-61.4zm222 124.1c4.1-3 11.1-2.9 17.4-3.6-5.4-2.7-13-3.7-19.3-2.2-.1-4.2-2-6.8-3.2-10.2 10.6-3.8 35.5-28.5 49.6-20.3 6.7 3.9 9.5 26.2 10.1 37 .4 9-.8 18-4.5 22.8-18.8-.6-35.8-2.8-50.7-7 .9-6.1-1-12.1.6-16.5zm-17.2-20c-16.8.8-26-1.2-38.3-10.8.2-.8 1.4-.5 1.5-1.4 18 8 40.8-3.3 59-4.9-7.9 5.1-14.6 11.6-22.2 17.1zm-12.1 33.2c-1.6-9.4-3.5-12-2.8-20.2 25-16.6 29.7 28.6 2.8 20.2zM226 438.6c-11.6-.7-48.1-14-38.5-23.7 9.4 6.5 27.5 4.9 41.3 7.3.8 4.4-2.8 10.2-2.8 16.4zM57.7 497.1c-4.3-12.7-9.2-25.1-14.8-36.9 30.8-23.8 65.3-48.9 102.2-63.5 2.8-1.1 23.2 25.4 26.2 27.6 16.5 11.7 37 21 56.2 30.2 1.2 8.8 3.9 20.2 8.7 35.5.7 2.3 1.4 4.7 2.2 7.2H57.7zm240.6 5.7h-.8c.3-.2.5-.4.8-.5v.5zm7.5-5.7c2.1-1.4 4.3-2.8 6.4-4.3 1.1 1.4 2.2 2.8 3.2 4.3h-9.6zm15.1-24.7c-10.8 7.3-20.6 18.3-33.3 25.2-6 3.3-27 11.7-33.4 10.2-3.6-.8-3.9-5.3-5.4-9.5-3.1-9-10.1-23.4-10.8-37-.8-17.2-2.5-46 16-42.4 14.9 2.9 32.3 9.7 43.9 16.1 7.1 3.9 11.1 8.6 21.9 9.5-.1 1.4-.1 2.8-.2 4.3-5.9 3.9-15.3 3.8-21.8 7.1 9.5.4 17 2.7 23.5 5.9-.1 3.4-.3 7-.4 10.6zm53.4 24.7h-14c-.1-3.2-2.8-5.8-6.1-5.8s-5.9 2.6-6.1 5.8h-17.4c-2.8-4.4-5.7-8.6-8.9-12.5 2.1-2.2 4-4.7 6-6.9 9 3.7 14.8-4.9 21.7-4.2 7.9.8 14.2 11.7 25.4 11l-.6 12.6zm8.7 0c.2-4 .4-7.8.6-11.5 15.6-7.3 29 1.3 35.7 11.5H383zm83.4-37c-2.3 11.2-5.8 24-9.9 37.1-.2-.1-.4-.1-.6-.1H428c.6-1.1 1.2-2.2 1.9-3.3-2.6-6.1-9-8.7-10.9-15.5 12.1-22.7 6.5-93.4-24.2-78.5 4.3-6.3 15.6-11.5 20.8-19.3 13 10.4 20.8 20.3 33.2 31.4 6.8 6 20 13.3 21.4 23.1.8 5.5-2.6 18.9-3.8 25.1zM222.2 130.5c5.4-14.9 27.2-34.7 45-32 7.7 1.2 18 8.2 12.2 17.7-30.2-7-45.2 12.6-54.4 33.1-8.1-2-4.9-13.1-2.8-18.8zm184.1 63.1c8.2-3.6 22.4-.7 29.6-5.3-4.2-11.5-10.3-21.4-9.3-37.7.5 0 1 0 1.4.1 6.8 14.2 12.7 29.2 21.4 41.7-5.7 13.5-43.6 25.4-43.1 1.2zm20.4-43zm-117.2 45.7c-6.8-10.9-19-32.5-14.5-45.3 6.5 11.9 8.6 24.4 17.8 33.3 4.1 4 12.2 9 8.2 20.2-.9 2.7-7.8 8.6-11.7 9.7-14.4 4.3-47.9.9-36.6-17.1 11.9.7 27.9 7.8 36.8-.8zm27.3 70c3.8 6.6 1.4 18.7 12.1 20.6 20.2 3.4 43.6-12.3 58.1-17.8 9-15.2-.8-20.7-8.9-30.5-16.6-20-38.8-44.8-38-74.7 6.7-4.9 7.3 7.4 8.2 9.7 8.7 20.3 30.4 46.2 46.3 63.5 3.9 4.3 10.3 8.4 11 11.2 2.1 8.2-5.4 18-4.5 23.5-21.7 13.9-45.8 29.1-81.4 25.6-7.4-6.7-10.3-21.4-2.9-31.1zm-201.3-9.2c-6.8-3.9-8.4-21-16.4-21.4-11.4-.7-9.3 22.2-9.3 35.5-7.8-7.1-9.2-29.1-3.5-40.3-6.6-3.2-9.5 3.6-13.1 5.9 4.7-34.1 49.8-15.8 42.3 20.3zm299.6 28.8c-10.1 19.2-24.4 40.4-54 41-.6-6.2-1.1-15.6 0-19.4 22.7-2.2 36.6-13.7 54-21.6zm-141.9 12.4c18.9 9.9 53.6 11 79.3 10.2 1.4 5.6 1.3 12.6 1.4 19.4-33 1.8-72-6.4-80.7-29.6zm92.2 46.7c-1.7 4.3-5.3 9.3-9.8 11.1-12.1 4.9-45.6 8.7-62.4-.3-10.7-5.7-17.5-18.5-23.4-26-2.8-3.6-16.9-12.9-.2-12.9 13.1 32.7 58 29 95.8 28.1z\"]\n};\nvar faJira = {\n prefix: 'fab',\n iconName: 'jira',\n icon: [496, 512, [], \"f7b1\", \"M490 241.7C417.1 169 320.6 71.8 248.5 0 83 164.9 6 241.7 6 241.7c-7.9 7.9-7.9 20.7 0 28.7C138.8 402.7 67.8 331.9 248.5 512c379.4-378 15.7-16.7 241.5-241.7 8-7.9 8-20.7 0-28.6zm-241.5 90l-76-75.7 76-75.7 76 75.7-76 75.7z\"]\n};\nvar faJoget = {\n prefix: 'fab',\n iconName: 'joget',\n icon: [496, 512, [], \"f3b7\", \"M378.1 45C337.6 19.9 292.6 8 248.2 8 165 8 83.8 49.9 36.9 125.9c-71.9 116.6-35.6 269.3 81 341.2s269.3 35.6 341.2-80.9c71.9-116.6 35.6-269.4-81-341.2zm51.8 323.2c-40.4 65.5-110.4 101.5-182 101.5-6.8 0-13.6-.4-20.4-1-9-13.6-19.9-33.3-23.7-42.4-5.7-13.7-27.2-45.6 31.2-67.1 51.7-19.1 176.7-16.5 208.8-17.6-4 9-8.6 17.9-13.9 26.6zm-200.8-86.3c-55.5-1.4-81.7-20.8-58.5-48.2s51.1-40.7 68.9-51.2c17.9-10.5 27.3-33.7-23.6-29.7C87.3 161.5 48.6 252.1 37.6 293c-8.8-49.7-.1-102.7 28.5-149.1C128 43.4 259.6 12.2 360.1 74.1c74.8 46.1 111.2 130.9 99.3 212.7-24.9-.5-179.3-3.6-230.3-4.9zm183.8-54.8c-22.7-6-57 11.3-86.7 27.2-29.7 15.8-31.1 8.2-31.1 8.2s40.2-28.1 50.7-34.5 31.9-14 13.4-24.6c-3.2-1.8-6.7-2.7-10.4-2.7-17.8 0-41.5 18.7-67.5 35.6-31.5 20.5-65.3 31.3-65.3 31.3l169.5-1.6 46.5-23.4s3.6-9.5-19.1-15.5z\"]\n};\nvar faJoomla = {\n prefix: 'fab',\n iconName: 'joomla',\n icon: [448, 512, [], \"f1aa\", \"M.6 92.1C.6 58.8 27.4 32 60.4 32c30 0 54.5 21.9 59.2 50.2 32.6-7.6 67.1.6 96.5 30l-44.3 44.3c-20.5-20.5-42.6-16.3-55.4-3.5-14.3 14.3-14.3 37.9 0 52.2l99.5 99.5-44 44.3c-87.7-87.2-49.7-49.7-99.8-99.7-26.8-26.5-35-64.8-24.8-98.9C20.4 144.6.6 120.7.6 92.1zm129.5 116.4l44.3 44.3c10-10 89.7-89.7 99.7-99.8 14.3-14.3 37.6-14.3 51.9 0 12.8 12.8 17 35-3.5 55.4l44 44.3c31.2-31.2 38.5-67.6 28.9-101.2 29.2-4.1 51.9-29.2 51.9-59.5 0-33.2-26.8-60.1-59.8-60.1-30.3 0-55.4 22.5-59.5 51.6-33.8-9.9-71.7-1.5-98.3 25.1-18.3 19.1-71.1 71.5-99.6 99.9zm266.3 152.2c8.2-32.7-.9-68.5-26.3-93.9-11.8-12.2 5 4.7-99.5-99.7l-44.3 44.3 99.7 99.7c14.3 14.3 14.3 37.6 0 51.9-12.8 12.8-35 17-55.4-3.5l-44 44.3c27.6 30.2 68 38.8 102.7 28 5.5 27.4 29.7 48.1 58.9 48.1 33 0 59.8-26.8 59.8-60.1 0-30.2-22.5-55-51.6-59.1zm-84.3-53.1l-44-44.3c-87 86.4-50.4 50.4-99.7 99.8-14.3 14.3-37.6 14.3-51.9 0-13.1-13.4-16.9-35.3 3.2-55.4l-44-44.3c-30.2 30.2-38 65.2-29.5 98.3-26.7 6-46.2 29.9-46.2 58.2C0 453.2 26.8 480 59.8 480c28.6 0 52.5-19.8 58.6-46.7 32.7 8.2 68.5-.6 94.2-26 32.1-32 12.2-12.4 99.5-99.7z\"]\n};\nvar faJs = {\n prefix: 'fab',\n iconName: 'js',\n icon: [448, 512, [], \"f3b8\", \"M0 32v448h448V32H0zm243.8 349.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\"]\n};\nvar faJsSquare = {\n prefix: 'fab',\n iconName: 'js-square',\n icon: [448, 512, [], \"f3b9\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM243.8 381.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\"]\n};\nvar faJsfiddle = {\n prefix: 'fab',\n iconName: 'jsfiddle',\n icon: [576, 512, [], \"f1cc\", \"M510.634 237.462c-4.727-2.621-5.664-5.748-6.381-10.776-2.352-16.488-3.539-33.619-9.097-49.095-35.895-99.957-153.99-143.386-246.849-91.646-27.37 15.25-48.971 36.369-65.493 63.903-3.184-1.508-5.458-2.71-7.824-3.686-30.102-12.421-59.049-10.121-85.331 9.167-25.531 18.737-36.422 44.548-32.676 76.408.355 3.025-1.967 7.621-4.514 9.545-39.712 29.992-56.031 78.065-41.902 124.615 13.831 45.569 57.514 79.796 105.608 81.433 30.291 1.031 60.637.546 90.959.539 84.041-.021 168.09.531 252.12-.48 52.664-.634 96.108-36.873 108.212-87.293 11.54-48.074-11.144-97.3-56.832-122.634zm21.107 156.88c-18.23 22.432-42.343 35.253-71.28 35.65-56.874.781-113.767.23-170.652.23 0 .7-163.028.159-163.728.154-43.861-.332-76.739-19.766-95.175-59.995-18.902-41.245-4.004-90.848 34.186-116.106 9.182-6.073 12.505-11.566 10.096-23.136-5.49-26.361 4.453-47.956 26.42-62.981 22.987-15.723 47.422-16.146 72.034-3.083 10.269 5.45 14.607 11.564 22.198-2.527 14.222-26.399 34.557-46.727 60.671-61.294 97.46-54.366 228.37 7.568 230.24 132.697.122 8.15 2.412 12.428 9.848 15.894 57.56 26.829 74.456 96.122 35.142 144.497zm-87.789-80.499c-5.848 31.157-34.622 55.096-66.666 55.095-16.953-.001-32.058-6.545-44.079-17.705-27.697-25.713-71.141-74.98-95.937-93.387-20.056-14.888-41.99-12.333-60.272 3.782-49.996 44.071 15.859 121.775 67.063 77.188 4.548-3.96 7.84-9.543 12.744-12.844 8.184-5.509 20.766-.884 13.168 10.622-17.358 26.284-49.33 38.197-78.863 29.301-28.897-8.704-48.84-35.968-48.626-70.179 1.225-22.485 12.364-43.06 35.414-55.965 22.575-12.638 46.369-13.146 66.991 2.474C295.68 280.7 320.467 323.97 352.185 343.47c24.558 15.099 54.254 7.363 68.823-17.506 28.83-49.209-34.592-105.016-78.868-63.46-3.989 3.744-6.917 8.932-11.41 11.72-10.975 6.811-17.333-4.113-12.809-10.353 20.703-28.554 50.464-40.44 83.271-28.214 31.429 11.714 49.108 44.366 42.76 78.186z\"]\n};\nvar faKaggle = {\n prefix: 'fab',\n iconName: 'kaggle',\n icon: [320, 512, [], \"f5fa\", \"M304.2 501.5L158.4 320.3 298.2 185c2.6-2.7 1.7-10.5-5.3-10.5h-69.2c-3.5 0-7 1.8-10.5 5.3L80.9 313.5V7.5q0-7.5-7.5-7.5H21.5Q14 0 14 7.5v497q0 7.5 7.5 7.5h51.9q7.5 0 7.5-7.5v-109l30.8-29.3 110.5 140.6c3 3.5 6.5 5.3 10.5 5.3h66.9q5.25 0 6-3z\"]\n};\nvar faKeybase = {\n prefix: 'fab',\n iconName: 'keybase',\n icon: [448, 512, [], \"f4f5\", \"M286.17 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18zm111.92-147.6c-9.5-14.62-39.37-52.45-87.26-73.71q-9.1-4.06-18.38-7.27a78.43 78.43 0 0 0-47.88-104.13c-12.41-4.1-23.33-6-32.41-5.77-.6-2-1.89-11 9.4-35L198.66 32l-5.48 7.56c-8.69 12.06-16.92 23.55-24.34 34.89a51 51 0 0 0-8.29-1.25c-41.53-2.45-39-2.33-41.06-2.33-50.61 0-50.75 52.12-50.75 45.88l-2.36 36.68c-1.61 27 19.75 50.21 47.63 51.85l8.93.54a214 214 0 0 0-46.29 35.54C14 304.66 14 374 14 429.77v33.64l23.32-29.8a148.6 148.6 0 0 0 14.56 37.56c5.78 10.13 14.87 9.45 19.64 7.33 4.21-1.87 10-6.92 3.75-20.11a178.29 178.29 0 0 1-15.76-53.13l46.82-59.83-24.66 74.11c58.23-42.4 157.38-61.76 236.25-38.59 34.2 10.05 67.45.69 84.74-23.84.72-1 1.2-2.16 1.85-3.22a156.09 156.09 0 0 1 2.8 28.43c0 23.3-3.69 52.93-14.88 81.64-2.52 6.46 1.76 14.5 8.6 15.74 7.42 1.57 15.33-3.1 18.37-11.15C429 443 434 414 434 382.32c0-38.58-13-77.46-35.91-110.92zM142.37 128.58l-15.7-.93-1.39 21.79 13.13.78a93 93 0 0 0 .32 19.57l-22.38-1.34a12.28 12.28 0 0 1-11.76-12.79L107 119c1-12.17 13.87-11.27 13.26-11.32l29.11 1.73a144.35 144.35 0 0 0-7 19.17zm148.42 172.18a10.51 10.51 0 0 1-14.35-1.39l-9.68-11.49-34.42 27a8.09 8.09 0 0 1-11.13-1.08l-15.78-18.64a7.38 7.38 0 0 1 1.34-10.34l34.57-27.18-14.14-16.74-17.09 13.45a7.75 7.75 0 0 1-10.59-1s-3.72-4.42-3.8-4.53a7.38 7.38 0 0 1 1.37-10.34L214 225.19s-18.51-22-18.6-22.14a9.56 9.56 0 0 1 1.74-13.42 10.38 10.38 0 0 1 14.3 1.37l81.09 96.32a9.58 9.58 0 0 1-1.74 13.44zM187.44 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18z\"]\n};\nvar faKeycdn = {\n prefix: 'fab',\n iconName: 'keycdn',\n icon: [512, 512, [], \"f3ba\", \"M63.8 409.3l60.5-59c32.1 42.8 71.1 66 126.6 67.4 30.5.7 60.3-7 86.4-22.4 5.1 5.3 18.5 19.5 20.9 22-32.2 20.7-69.6 31.1-108.1 30.2-43.3-1.1-84.6-16.7-117.7-44.4.3-.6-38.2 37.5-38.6 37.9 9.5 29.8-13.1 62.4-46.3 62.4C20.7 503.3 0 481.7 0 454.9c0-34.3 33.1-56.6 63.8-45.6zm354.9-252.4c19.1 31.3 29.6 67.4 28.7 104-1.1 44.8-19 87.5-48.6 121 .3.3 23.8 25.2 24.1 25.5 9.6-1.3 19.2 2 25.9 9.1 11.3 12 10.9 30.9-1.1 42.4-12 11.3-30.9 10.9-42.4-1.1-6.7-7-9.4-16.8-7.6-26.3-24.9-26.6-44.4-47.2-44.4-47.2 42.7-34.1 63.3-79.6 64.4-124.2.7-28.9-7.2-57.2-21.1-82.2l22.1-21zM104 53.1c6.7 7 9.4 16.8 7.6 26.3l45.9 48.1c-4.7 3.8-13.3 10.4-22.8 21.3-25.4 28.5-39.6 64.8-40.7 102.9-.7 28.9 6.1 57.2 20 82.4l-22 21.5C72.7 324 63.1 287.9 64.2 250.9c1-44.6 18.3-87.6 47.5-121.1l-25.3-26.4c-9.6 1.3-19.2-2-25.9-9.1-11.3-12-10.9-30.9 1.1-42.4C73.5 40.7 92.2 41 104 53.1zM464.9 8c26 0 47.1 22.4 47.1 48.3S490.9 104 464.9 104c-6.3.1-14-1.1-15.9-1.8l-62.9 59.7c-32.7-43.6-76.7-65.9-126.9-67.2-30.5-.7-60.3 6.8-86.2 22.4l-21.1-22C184.1 74.3 221.5 64 260 64.9c43.3 1.1 84.6 16.7 117.7 44.6l41.1-38.6c-1.5-4.7-2.2-9.6-2.2-14.5C416.5 29.7 438.9 8 464.9 8zM256.7 113.4c5.5 0 10.9.4 16.4 1.1 78.1 9.8 133.4 81.1 123.8 159.1-9.8 78.1-81.1 133.4-159.1 123.8-78.1-9.8-133.4-81.1-123.8-159.2 9.3-72.4 70.1-124.6 142.7-124.8zm-59 119.4c.6 22.7 12.2 41.8 32.4 52.2l-11 51.7h73.7l-11-51.7c20.1-10.9 32.1-29 32.4-52.2-.4-32.8-25.8-57.5-58.3-58.3-32.1.8-57.3 24.8-58.2 58.3zM256 160\"]\n};\nvar faKickstarter = {\n prefix: 'fab',\n iconName: 'kickstarter',\n icon: [448, 512, [], \"f3bb\", \"M400 480H48c-26.4 0-48-21.6-48-48V80c0-26.4 21.6-48 48-48h352c26.4 0 48 21.6 48 48v352c0 26.4-21.6 48-48 48zM199.6 178.5c0-30.7-17.6-45.1-39.7-45.1-25.8 0-40 19.8-40 44.5v154.8c0 25.8 13.7 45.6 40.5 45.6 21.5 0 39.2-14 39.2-45.6v-41.8l60.6 75.7c12.3 14.9 39 16.8 55.8 0 14.6-15.1 14.8-36.8 4-50.4l-49.1-62.8 40.5-58.7c9.4-13.5 9.5-34.5-5.6-49.1-16.4-15.9-44.6-17.3-61.4 7l-44.8 64.7v-38.8z\"]\n};\nvar faKickstarterK = {\n prefix: 'fab',\n iconName: 'kickstarter-k',\n icon: [384, 512, [], \"f3bc\", \"M147.3 114.4c0-56.2-32.5-82.4-73.4-82.4C26.2 32 0 68.2 0 113.4v283c0 47.3 25.3 83.4 74.9 83.4 39.8 0 72.4-25.6 72.4-83.4v-76.5l112.1 138.3c22.7 27.2 72.1 30.7 103.2 0 27-27.6 27.3-67.4 7.4-92.2l-90.8-114.8 74.9-107.4c17.4-24.7 17.5-63.1-10.4-89.8-30.3-29-82.4-31.6-113.6 12.8L147.3 185v-70.6z\"]\n};\nvar faKorvue = {\n prefix: 'fab',\n iconName: 'korvue',\n icon: [446, 512, [], \"f42f\", \"M386.5 34h-327C26.8 34 0 60.8 0 93.5v327.1C0 453.2 26.8 480 59.5 480h327.1c33 0 59.5-26.8 59.5-59.5v-327C446 60.8 419.2 34 386.5 34zM87.1 120.8h96v116l61.8-116h110.9l-81.2 132H87.1v-132zm161.8 272.1l-65.7-113.6v113.6h-96V262.1h191.5l88.6 130.8H248.9z\"]\n};\nvar faLaravel = {\n prefix: 'fab',\n iconName: 'laravel',\n icon: [512, 512, [], \"f3bd\", \"M504.4,115.83a5.72,5.72,0,0,0-.28-.68,8.52,8.52,0,0,0-.53-1.25,6,6,0,0,0-.54-.71,9.36,9.36,0,0,0-.72-.94c-.23-.22-.52-.4-.77-.6a8.84,8.84,0,0,0-.9-.68L404.4,55.55a8,8,0,0,0-8,0L300.12,111h0a8.07,8.07,0,0,0-.88.69,7.68,7.68,0,0,0-.78.6,8.23,8.23,0,0,0-.72.93c-.17.24-.39.45-.54.71a9.7,9.7,0,0,0-.52,1.25c-.08.23-.21.44-.28.68a8.08,8.08,0,0,0-.28,2.08V223.18l-80.22,46.19V63.44a7.8,7.8,0,0,0-.28-2.09c-.06-.24-.2-.45-.28-.68a8.35,8.35,0,0,0-.52-1.24c-.14-.26-.37-.47-.54-.72a9.36,9.36,0,0,0-.72-.94,9.46,9.46,0,0,0-.78-.6,9.8,9.8,0,0,0-.88-.68h0L115.61,1.07a8,8,0,0,0-8,0L11.34,56.49h0a6.52,6.52,0,0,0-.88.69,7.81,7.81,0,0,0-.79.6,8.15,8.15,0,0,0-.71.93c-.18.25-.4.46-.55.72a7.88,7.88,0,0,0-.51,1.24,6.46,6.46,0,0,0-.29.67,8.18,8.18,0,0,0-.28,2.1v329.7a8,8,0,0,0,4,6.95l192.5,110.84a8.83,8.83,0,0,0,1.33.54c.21.08.41.2.63.26a7.92,7.92,0,0,0,4.1,0c.2-.05.37-.16.55-.22a8.6,8.6,0,0,0,1.4-.58L404.4,400.09a8,8,0,0,0,4-6.95V287.88l92.24-53.11a8,8,0,0,0,4-7V117.92A8.63,8.63,0,0,0,504.4,115.83ZM111.6,17.28h0l80.19,46.15-80.2,46.18L31.41,63.44Zm88.25,60V278.6l-46.53,26.79-33.69,19.4V123.5l46.53-26.79Zm0,412.78L23.37,388.5V77.32L57.06,96.7l46.52,26.8V338.68a6.94,6.94,0,0,0,.12.9,8,8,0,0,0,.16,1.18h0a5.92,5.92,0,0,0,.38.9,6.38,6.38,0,0,0,.42,1v0a8.54,8.54,0,0,0,.6.78,7.62,7.62,0,0,0,.66.84l0,0c.23.22.52.38.77.58a8.93,8.93,0,0,0,.86.66l0,0,0,0,92.19,52.18Zm8-106.17-80.06-45.32,84.09-48.41,92.26-53.11,80.13,46.13-58.8,33.56Zm184.52,4.57L215.88,490.11V397.8L346.6,323.2l45.77-26.15Zm0-119.13L358.68,250l-46.53-26.79V131.79l33.69,19.4L392.37,178Zm8-105.28-80.2-46.17,80.2-46.16,80.18,46.15Zm8,105.28V178L455,151.19l33.68-19.4v91.39h0Z\"]\n};\nvar faLastfm = {\n prefix: 'fab',\n iconName: 'lastfm',\n icon: [512, 512, [], \"f202\", \"M225.8 367.1l-18.8-51s-30.5 34-76.2 34c-40.5 0-69.2-35.2-69.2-91.5 0-72.1 36.4-97.9 72.1-97.9 66.5 0 74.8 53.3 100.9 134.9 18.8 56.9 54 102.6 155.4 102.6 72.7 0 122-22.3 122-80.9 0-72.9-62.7-80.6-115-92.1-25.8-5.9-33.4-16.4-33.4-34 0-19.9 15.8-31.7 41.6-31.7 28.2 0 43.4 10.6 45.7 35.8l58.6-7c-4.7-52.8-41.1-74.5-100.9-74.5-52.8 0-104.4 19.9-104.4 83.9 0 39.9 19.4 65.1 68 76.8 44.9 10.6 79.8 13.8 79.8 45.7 0 21.7-21.1 30.5-61 30.5-59.2 0-83.9-31.1-97.9-73.9-32-96.8-43.6-163-161.3-163C45.7 113.8 0 168.3 0 261c0 89.1 45.7 137.2 127.9 137.2 66.2 0 97.9-31.1 97.9-31.1z\"]\n};\nvar faLastfmSquare = {\n prefix: 'fab',\n iconName: 'lastfm-square',\n icon: [448, 512, [], \"f203\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-92.2 312.9c-63.4 0-85.4-28.6-97.1-64.1-16.3-51-21.5-84.3-63-84.3-22.4 0-45.1 16.1-45.1 61.2 0 35.2 18 57.2 43.3 57.2 28.6 0 47.6-21.3 47.6-21.3l11.7 31.9s-19.8 19.4-61.2 19.4c-51.3 0-79.9-30.1-79.9-85.8 0-57.9 28.6-92 82.5-92 73.5 0 80.8 41.4 100.8 101.9 8.8 26.8 24.2 46.2 61.2 46.2 24.9 0 38.1-5.5 38.1-19.1 0-19.9-21.8-22-49.9-28.6-30.4-7.3-42.5-23.1-42.5-48 0-40 32.3-52.4 65.2-52.4 37.4 0 60.1 13.6 63 46.6l-36.7 4.4c-1.5-15.8-11-22.4-28.6-22.4-16.1 0-26 7.3-26 19.8 0 11 4.8 17.6 20.9 21.3 32.7 7.1 71.8 12 71.8 57.5.1 36.7-30.7 50.6-76.1 50.6z\"]\n};\nvar faLeanpub = {\n prefix: 'fab',\n iconName: 'leanpub',\n icon: [576, 512, [], \"f212\", \"M386.539 111.485l15.096 248.955-10.979-.275c-36.232-.824-71.64 8.783-102.657 27.997-31.016-19.214-66.424-27.997-102.657-27.997-45.564 0-82.07 10.705-123.516 27.723L93.117 129.6c28.546-11.803 61.484-18.115 92.226-18.115 41.173 0 73.836 13.175 102.657 42.544 27.723-28.271 59.013-41.721 98.539-42.544zM569.07 448c-25.526 0-47.485-5.215-70.542-15.645-34.31-15.645-69.993-24.978-107.871-24.978-38.977 0-74.934 12.901-102.657 40.623-27.723-27.723-63.68-40.623-102.657-40.623-37.878 0-73.561 9.333-107.871 24.978C55.239 442.236 32.731 448 8.303 448H6.93L49.475 98.859C88.726 76.626 136.486 64 181.775 64 218.83 64 256.984 71.685 288 93.095 319.016 71.685 357.17 64 394.225 64c45.289 0 93.049 12.626 132.3 34.859L569.07 448zm-43.368-44.741l-34.036-280.246c-30.742-13.999-67.248-21.41-101.009-21.41-38.428 0-74.385 12.077-102.657 38.702-28.272-26.625-64.228-38.702-102.657-38.702-33.761 0-70.267 7.411-101.009 21.41L50.298 403.259c47.211-19.487 82.894-33.486 135.045-33.486 37.604 0 70.817 9.606 102.657 29.644 31.84-20.038 65.052-29.644 102.657-29.644 52.151 0 87.834 13.999 135.045 33.486z\"]\n};\nvar faLess = {\n prefix: 'fab',\n iconName: 'less',\n icon: [640, 512, [], \"f41d\", \"M612.7 219c0-20.5 3.2-32.6 3.2-54.6 0-34.2-12.6-45.2-40.5-45.2h-20.5v24.2h6.3c14.2 0 17.3 4.7 17.3 22.1 0 16.3-1.6 32.6-1.6 51.5 0 24.2 7.9 33.6 23.6 37.3v1.6c-15.8 3.7-23.6 13.1-23.6 37.3 0 18.9 1.6 34.2 1.6 51.5 0 17.9-3.7 22.6-17.3 22.6v.5h-6.3V393h20.5c27.8 0 40.5-11 40.5-45.2 0-22.6-3.2-34.2-3.2-54.6 0-11 6.8-22.6 27.3-23.6v-27.3c-20.5-.7-27.3-12.3-27.3-23.3zm-105.6 32c-15.8-6.3-30.5-10-30.5-20.5 0-7.9 6.3-12.6 17.9-12.6s22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-21 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51s-22.5-41-43-47.8zm-358.9 59.4c-3.7 0-8.4-3.2-8.4-13.1V119.1H65.2c-28.4 0-41 11-41 45.2 0 22.6 3.2 35.2 3.2 54.6 0 11-6.8 22.6-27.3 23.6v27.3c20.5.5 27.3 12.1 27.3 23.1 0 19.4-3.2 31-3.2 53.6 0 34.2 12.6 45.2 40.5 45.2h20.5v-24.2h-6.3c-13.1 0-17.3-5.3-17.3-22.6s1.6-32.1 1.6-51.5c0-24.2-7.9-33.6-23.6-37.3v-1.6c15.8-3.7 23.6-13.1 23.6-37.3 0-18.9-1.6-34.2-1.6-51.5s3.7-22.1 17.3-22.1H93v150.8c0 32.1 11 53.1 43.1 53.1 10 0 17.9-1.6 23.6-3.7l-5.3-34.2c-3.1.8-4.6.8-6.2.8zM379.9 251c-16.3-6.3-31-10-31-20.5 0-7.9 6.3-12.6 17.9-12.6 11.6 0 22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-20.5 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51 .1-28.9-22.5-41-43-47.8zm-155-68.8c-38.4 0-75.1 32.1-74.1 82.5 0 52 34.2 82.5 79.3 82.5 18.9 0 39.9-6.8 56.2-17.9l-15.8-27.8c-11.6 6.8-22.6 10-34.2 10-21 0-37.3-10-41.5-34.2H290c.5-3.7 1.6-11 1.6-19.4.6-42.6-22.6-75.7-66.7-75.7zm-30 66.2c3.2-21 15.8-31 30.5-31 18.9 0 26.3 13.1 26.3 31h-56.8z\"]\n};\nvar faLine = {\n prefix: 'fab',\n iconName: 'line',\n icon: [448, 512, [], \"f3c0\", \"M272.1 204.2v71.1c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.1 0-2.1-.6-2.6-1.3l-32.6-44v42.2c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.8 0-3.2-1.4-3.2-3.2v-71.1c0-1.8 1.4-3.2 3.2-3.2H219c1 0 2.1.5 2.6 1.4l32.6 44v-42.2c0-1.8 1.4-3.2 3.2-3.2h11.4c1.8-.1 3.3 1.4 3.3 3.1zm-82-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 1.8 1.4 3.2 3.2 3.2h11.4c1.8 0 3.2-1.4 3.2-3.2v-71.1c0-1.7-1.4-3.2-3.2-3.2zm-27.5 59.6h-31.1v-56.4c0-1.8-1.4-3.2-3.2-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 .9.3 1.6.9 2.2.6.5 1.3.9 2.2.9h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.7-1.4-3.2-3.1-3.2zM332.1 201h-45.7c-1.7 0-3.2 1.4-3.2 3.2v71.1c0 1.7 1.4 3.2 3.2 3.2h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2V234c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2v-11.4c-.1-1.7-1.5-3.2-3.2-3.2zM448 113.7V399c-.1 44.8-36.8 81.1-81.7 81H81c-44.8-.1-81.1-36.9-81-81.7V113c.1-44.8 36.9-81.1 81.7-81H367c44.8.1 81.1 36.8 81 81.7zm-61.6 122.6c0-73-73.2-132.4-163.1-132.4-89.9 0-163.1 59.4-163.1 132.4 0 65.4 58 120.2 136.4 130.6 19.1 4.1 16.9 11.1 12.6 36.8-.7 4.1-3.3 16.1 14.1 8.8 17.4-7.3 93.9-55.3 128.2-94.7 23.6-26 34.9-52.3 34.9-81.5z\"]\n};\nvar faLinkedin = {\n prefix: 'fab',\n iconName: 'linkedin',\n icon: [448, 512, [], \"f08c\", \"M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z\"]\n};\nvar faLinkedinIn = {\n prefix: 'fab',\n iconName: 'linkedin-in',\n icon: [448, 512, [], \"f0e1\", \"M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z\"]\n};\nvar faLinode = {\n prefix: 'fab',\n iconName: 'linode',\n icon: [448, 512, [], \"f2b8\", \"M437.4 226.3c-.3-.9-.9-1.4-1.4-2l-70-38.6c-.9-.6-2-.6-3.1 0l-58.9 36c-.9.6-1.4 1.7-1.4 2.6l-.9 31.4-24-16c-.9-.6-2.3-.6-3.1 0L240 260.9l-1.4-35.1c0-.9-.6-2-1.4-2.3l-36-24.3 33.7-17.4c1.1-.6 1.7-1.7 1.7-2.9l-5.7-132.3c0-.9-.9-2-1.7-2.6L138.6.3c-.9-.3-1.7-.3-2.3-.3L12.6 38.6c-1.4.6-2.3 2-2 3.7L38 175.4c.9 3.4 34 27.4 38.6 30.9l-26.9 12.9c-1.4.9-2 2.3-1.7 3.4l20.6 100.3c.6 2.9 23.7 23.1 27.1 26.3l-17.4 10.6c-.9.6-1.7 2-1.4 3.1 1.4 7.1 15.4 77.7 16.9 79.1l65.1 69.1c.6.6 1.4.6 2.3.9.6 0 1.1-.3 1.7-.6l83.7-66.9c.9-.6 1.1-1.4 1.1-2.3l-2-46 28 23.7c1.1.9 2.9.9 4 0l66.9-53.4c.9-.6 1.1-1.4 1.1-2.3l2.3-33.4 20.3 14c1.1.9 2.6.9 3.7 0l54.6-43.7c.6-.3 1.1-1.1 1.1-2 .9-6.5 10.3-70.8 9.7-72.8zm-204.8 4.8l4 92.6-90.6 61.2-14-96.6 100.6-57.2zm-7.7-180l5.4 126-106.6 55.4L104 97.7l120.9-46.6zM44 173.1L18 48l79.7 49.4 19.4 132.9L44 173.1zm30.6 147.8L55.7 230l70 58.3 13.7 93.4-64.8-60.8zm24.3 117.7l-13.7-67.1 61.7 60.9 9.7 67.4-57.7-61.2zm64.5 64.5l-10.6-70.9 85.7-61.4 3.1 70-78.2 62.3zm82-115.1c0-3.4.9-22.9-2-25.1l-24.3-20 22.3-14.9c2.3-1.7 1.1-5.7 1.1-8l29.4 22.6.6 68.3-27.1-22.9zm94.3-25.4l-60.9 48.6-.6-68.6 65.7-46.9-4.2 66.9zm27.7-25.7l-19.1-13.4 2-34c.3-.9-.3-2-1.1-2.6L308 259.7l.6-30 64.6 40.6-5.8 66.6zm54.6-39.8l-48.3 38.3 5.7-65.1 51.1-36.6-8.5 63.4z\"]\n};\nvar faLinux = {\n prefix: 'fab',\n iconName: 'linux',\n icon: [448, 512, [], \"f17c\", \"M220.8 123.3c1 .5 1.8 1.7 3 1.7 1.1 0 2.8-.4 2.9-1.5.2-1.4-1.9-2.3-3.2-2.9-1.7-.7-3.9-1-5.5-.1-.4.2-.8.7-.6 1.1.3 1.3 2.3 1.1 3.4 1.7zm-21.9 1.7c1.2 0 2-1.2 3-1.7 1.1-.6 3.1-.4 3.5-1.6.2-.4-.2-.9-.6-1.1-1.6-.9-3.8-.6-5.5.1-1.3.6-3.4 1.5-3.2 2.9.1 1 1.8 1.5 2.8 1.4zM420 403.8c-3.6-4-5.3-11.6-7.2-19.7-1.8-8.1-3.9-16.8-10.5-22.4-1.3-1.1-2.6-2.1-4-2.9-1.3-.8-2.7-1.5-4.1-2 9.2-27.3 5.6-54.5-3.7-79.1-11.4-30.1-31.3-56.4-46.5-74.4-17.1-21.5-33.7-41.9-33.4-72C311.1 85.4 315.7.1 234.8 0 132.4-.2 158 103.4 156.9 135.2c-1.7 23.4-6.4 41.8-22.5 64.7-18.9 22.5-45.5 58.8-58.1 96.7-6 17.9-8.8 36.1-6.2 53.3-6.5 5.8-11.4 14.7-16.6 20.2-4.2 4.3-10.3 5.9-17 8.3s-14 6-18.5 14.5c-2.1 3.9-2.8 8.1-2.8 12.4 0 3.9.6 7.9 1.2 11.8 1.2 8.1 2.5 15.7.8 20.8-5.2 14.4-5.9 24.4-2.2 31.7 3.8 7.3 11.4 10.5 20.1 12.3 17.3 3.6 40.8 2.7 59.3 12.5 19.8 10.4 39.9 14.1 55.9 10.4 11.6-2.6 21.1-9.6 25.9-20.2 12.5-.1 26.3-5.4 48.3-6.6 14.9-1.2 33.6 5.3 55.1 4.1.6 2.3 1.4 4.6 2.5 6.7v.1c8.3 16.7 23.8 24.3 40.3 23 16.6-1.3 34.1-11 48.3-27.9 13.6-16.4 36-23.2 50.9-32.2 7.4-4.5 13.4-10.1 13.9-18.3.4-8.2-4.4-17.3-15.5-29.7zM223.7 87.3c9.8-22.2 34.2-21.8 44-.4 6.5 14.2 3.6 30.9-4.3 40.4-1.6-.8-5.9-2.6-12.6-4.9 1.1-1.2 3.1-2.7 3.9-4.6 4.8-11.8-.2-27-9.1-27.3-7.3-.5-13.9 10.8-11.8 23-4.1-2-9.4-3.5-13-4.4-1-6.9-.3-14.6 2.9-21.8zM183 75.8c10.1 0 20.8 14.2 19.1 33.5-3.5 1-7.1 2.5-10.2 4.6 1.2-8.9-3.3-20.1-9.6-19.6-8.4.7-9.8 21.2-1.8 28.1 1 .8 1.9-.2-5.9 5.5-15.6-14.6-10.5-52.1 8.4-52.1zm-13.6 60.7c6.2-4.6 13.6-10 14.1-10.5 4.7-4.4 13.5-14.2 27.9-14.2 7.1 0 15.6 2.3 25.9 8.9 6.3 4.1 11.3 4.4 22.6 9.3 8.4 3.5 13.7 9.7 10.5 18.2-2.6 7.1-11 14.4-22.7 18.1-11.1 3.6-19.8 16-38.2 14.9-3.9-.2-7-1-9.6-2.1-8-3.5-12.2-10.4-20-15-8.6-4.8-13.2-10.4-14.7-15.3-1.4-4.9 0-9 4.2-12.3zm3.3 334c-2.7 35.1-43.9 34.4-75.3 18-29.9-15.8-68.6-6.5-76.5-21.9-2.4-4.7-2.4-12.7 2.6-26.4v-.2c2.4-7.6.6-16-.6-23.9-1.2-7.8-1.8-15 .9-20 3.5-6.7 8.5-9.1 14.8-11.3 10.3-3.7 11.8-3.4 19.6-9.9 5.5-5.7 9.5-12.9 14.3-18 5.1-5.5 10-8.1 17.7-6.9 8.1 1.2 15.1 6.8 21.9 16l19.6 35.6c9.5 19.9 43.1 48.4 41 68.9zm-1.4-25.9c-4.1-6.6-9.6-13.6-14.4-19.6 7.1 0 14.2-2.2 16.7-8.9 2.3-6.2 0-14.9-7.4-24.9-13.5-18.2-38.3-32.5-38.3-32.5-13.5-8.4-21.1-18.7-24.6-29.9s-3-23.3-.3-35.2c5.2-22.9 18.6-45.2 27.2-59.2 2.3-1.7.8 3.2-8.7 20.8-8.5 16.1-24.4 53.3-2.6 82.4.6-20.7 5.5-41.8 13.8-61.5 12-27.4 37.3-74.9 39.3-112.7 1.1.8 4.6 3.2 6.2 4.1 4.6 2.7 8.1 6.7 12.6 10.3 12.4 10 28.5 9.2 42.4 1.2 6.2-3.5 11.2-7.5 15.9-9 9.9-3.1 17.8-8.6 22.3-15 7.7 30.4 25.7 74.3 37.2 95.7 6.1 11.4 18.3 35.5 23.6 64.6 3.3-.1 7 .4 10.9 1.4 13.8-35.7-11.7-74.2-23.3-84.9-4.7-4.6-4.9-6.6-2.6-6.5 12.6 11.2 29.2 33.7 35.2 59 2.8 11.6 3.3 23.7.4 35.7 16.4 6.8 35.9 17.9 30.7 34.8-2.2-.1-3.2 0-4.2 0 3.2-10.1-3.9-17.6-22.8-26.1-19.6-8.6-36-8.6-38.3 12.5-12.1 4.2-18.3 14.7-21.4 27.3-2.8 11.2-3.6 24.7-4.4 39.9-.5 7.7-3.6 18-6.8 29-32.1 22.9-76.7 32.9-114.3 7.2zm257.4-11.5c-.9 16.8-41.2 19.9-63.2 46.5-13.2 15.7-29.4 24.4-43.6 25.5s-26.5-4.8-33.7-19.3c-4.7-11.1-2.4-23.1 1.1-36.3 3.7-14.2 9.2-28.8 9.9-40.6.8-15.2 1.7-28.5 4.2-38.7 2.6-10.3 6.6-17.2 13.7-21.1.3-.2.7-.3 1-.5.8 13.2 7.3 26.6 18.8 29.5 12.6 3.3 30.7-7.5 38.4-16.3 9-.3 15.7-.9 22.6 5.1 9.9 8.5 7.1 30.3 17.1 41.6 10.6 11.6 14 19.5 13.7 24.6zM173.3 148.7c2 1.9 4.7 4.5 8 7.1 6.6 5.2 15.8 10.6 27.3 10.6 11.6 0 22.5-5.9 31.8-10.8 4.9-2.6 10.9-7 14.8-10.4s5.9-6.3 3.1-6.6-2.6 2.6-6 5.1c-4.4 3.2-9.7 7.4-13.9 9.8-7.4 4.2-19.5 10.2-29.9 10.2s-18.7-4.8-24.9-9.7c-3.1-2.5-5.7-5-7.7-6.9-1.5-1.4-1.9-4.6-4.3-4.9-1.4-.1-1.8 3.7 1.7 6.5z\"]\n};\nvar faLyft = {\n prefix: 'fab',\n iconName: 'lyft',\n icon: [512, 512, [], \"f3c3\", \"M0 81.1h77.8v208.7c0 33.1 15 52.8 27.2 61-12.7 11.1-51.2 20.9-80.2-2.8C7.8 334 0 310.7 0 289V81.1zm485.9 173.5v-22h23.8v-76.8h-26.1c-10.1-46.3-51.2-80.7-100.3-80.7-56.6 0-102.7 46-102.7 102.7V357c16 2.3 35.4-.3 51.7-14 17.1-14 24.8-37.2 24.8-59v-6.7h38.8v-76.8h-38.8v-23.3c0-34.6 52.2-34.6 52.2 0v77.1c0 56.6 46 102.7 102.7 102.7v-76.5c-14.5 0-26.1-11.7-26.1-25.9zm-294.3-99v113c0 15.4-23.8 15.4-23.8 0v-113H91v132.7c0 23.8 8 54 45 63.9 37 9.8 58.2-10.6 58.2-10.6-2.1 13.4-14.5 23.3-34.9 25.3-15.5 1.6-35.2-3.6-45-7.8v70.3c25.1 7.5 51.5 9.8 77.6 4.7 47.1-9.1 76.8-48.4 76.8-100.8V155.1h-77.1v.5z\"]\n};\nvar faMagento = {\n prefix: 'fab',\n iconName: 'magento',\n icon: [448, 512, [], \"f3c4\", \"M445.7 127.9V384l-63.4 36.5V164.7L223.8 73.1 65.2 164.7l.4 255.9L2.3 384V128.1L224.2 0l221.5 127.9zM255.6 420.5L224 438.9l-31.8-18.2v-256l-63.3 36.6.1 255.9 94.9 54.9 95.1-54.9v-256l-63.4-36.6v255.9z\"]\n};\nvar faMailchimp = {\n prefix: 'fab',\n iconName: 'mailchimp',\n icon: [448, 512, [], \"f59e\", \"M330.61 243.52a36.15 36.15 0 0 1 9.3 0c1.66-3.83 1.95-10.43.45-17.61-2.23-10.67-5.25-17.14-11.48-16.13s-6.47 8.74-4.24 19.42c1.26 6 3.49 11.14 6 14.32zM277.05 252c4.47 2 7.2 3.26 8.28 2.13 1.89-1.94-3.48-9.39-12.12-13.09a31.44 31.44 0 0 0-30.61 3.68c-3 2.18-5.81 5.22-5.41 7.06.85 3.74 10-2.71 22.6-3.48 7-.44 12.8 1.75 17.26 3.71zm-9 5.13c-9.07 1.42-15 6.53-13.47 10.1.9.34 1.17.81 5.21-.81a37 37 0 0 1 18.72-1.95c2.92.34 4.31.52 4.94-.49 1.46-2.22-5.71-8-15.39-6.85zm54.17 17.1c3.38-6.87-10.9-13.93-14.3-7s10.92 13.88 14.32 6.97zm15.66-20.47c-7.66-.13-7.95 15.8-.26 15.93s7.98-15.81.28-15.96zm-218.79 78.9c-1.32.31-6 1.45-8.47-2.35-5.2-8 11.11-20.38 3-35.77-9.1-17.47-27.82-13.54-35.05-5.54-8.71 9.6-8.72 23.54-5 24.08 4.27.57 4.08-6.47 7.38-11.63a12.83 12.83 0 0 1 17.85-3.72c11.59 7.59 1.37 17.76 2.28 28.62 1.39 16.68 18.42 16.37 21.58 9a2.08 2.08 0 0 0-.2-2.33c.03.89.68-1.3-3.35-.39zm299.72-17.07c-3.35-11.73-2.57-9.22-6.78-20.52 2.45-3.67 15.29-24-3.07-43.25-10.4-10.92-33.9-16.54-41.1-18.54-1.5-11.39 4.65-58.7-21.52-83 20.79-21.55 33.76-45.29 33.73-65.65-.06-39.16-48.15-51-107.42-26.47l-12.55 5.33c-.06-.05-22.71-22.27-23.05-22.57C169.5-18-41.77 216.81 25.78 273.85l14.76 12.51a72.49 72.49 0 0 0-4.1 33.5c3.36 33.4 36 60.42 67.53 60.38 57.73 133.06 267.9 133.28 322.29 3 1.74-4.47 9.11-24.61 9.11-42.38s-10.09-25.27-16.53-25.27zm-316 48.16c-22.82-.61-47.46-21.15-49.91-45.51-6.17-61.31 74.26-75.27 84-12.33 4.54 29.64-4.67 58.49-34.12 57.81zM84.3 249.55C69.14 252.5 55.78 261.09 47.6 273c-4.88-4.07-14-12-15.59-15-13.01-24.85 14.24-73 33.3-100.21C112.42 90.56 186.19 39.68 220.36 48.91c5.55 1.57 23.94 22.89 23.94 22.89s-34.15 18.94-65.8 45.35c-42.66 32.85-74.89 80.59-94.2 132.4zM323.18 350.7s-35.74 5.3-69.51-7.07c6.21-20.16 27 6.1 96.4-13.81 15.29-4.38 35.37-13 51-25.35a102.85 102.85 0 0 1 7.12 24.28c3.66-.66 14.25-.52 11.44 18.1-3.29 19.87-11.73 36-25.93 50.84A106.86 106.86 0 0 1 362.55 421a132.45 132.45 0 0 1-20.34 8.58c-53.51 17.48-108.3-1.74-126-43a66.33 66.33 0 0 1-3.55-9.74c-7.53-27.2-1.14-59.83 18.84-80.37 1.23-1.31 2.48-2.85 2.48-4.79a8.45 8.45 0 0 0-1.92-4.54c-7-10.13-31.19-27.4-26.33-60.83 3.5-24 24.49-40.91 44.07-39.91l5 .29c8.48.5 15.89 1.59 22.88 1.88 11.69.5 22.2-1.19 34.64-11.56 4.2-3.5 7.57-6.54 13.26-7.51a17.45 17.45 0 0 1 13.6 2.24c10 6.64 11.4 22.73 11.92 34.49.29 6.72 1.1 23 1.38 27.63.63 10.67 3.43 12.17 9.11 14 3.19 1.05 6.15 1.83 10.51 3.06 13.21 3.71 21 7.48 26 12.31a16.38 16.38 0 0 1 4.74 9.29c1.56 11.37-8.82 25.4-36.31 38.16-46.71 21.68-93.68 14.45-100.48 13.68-20.15-2.71-31.63 23.32-19.55 41.15 22.64 33.41 122.4 20 151.37-21.35.69-1 .12-1.59-.73-1-41.77 28.58-97.06 38.21-128.46 26-4.77-1.85-14.73-6.44-15.94-16.67 43.6 13.49 71 .74 71 .74s2.03-2.79-.56-2.53zm-68.47-5.7zm-83.4-187.5c16.74-19.35 37.36-36.18 55.83-45.63a.73.73 0 0 1 1 1c-1.46 2.66-4.29 8.34-5.19 12.65a.75.75 0 0 0 1.16.79c11.49-7.83 31.48-16.22 49-17.3a.77.77 0 0 1 .52 1.38 41.86 41.86 0 0 0-7.71 7.74.75.75 0 0 0 .59 1.19c12.31.09 29.66 4.4 41 10.74.76.43.22 1.91-.64 1.72-69.55-15.94-123.08 18.53-134.5 26.83a.76.76 0 0 1-1-1.12z\"]\n};\nvar faMandalorian = {\n prefix: 'fab',\n iconName: 'mandalorian',\n icon: [448, 512, [], \"f50f\", \"M232.27 511.89c-1-3.26-1.69-15.83-1.39-24.58.55-15.89 1-24.72 1.4-28.76.64-6.2 2.87-20.72 3.28-21.38.6-1 .4-27.87-.24-33.13-.31-2.58-.63-11.9-.69-20.73-.13-16.47-.53-20.12-2.73-24.76-1.1-2.32-1.23-3.84-1-11.43a92.38 92.38 0 0 0-.34-12.71c-2-13-3.46-27.7-3.25-33.9s.43-7.15 2.06-9.67c3.05-4.71 6.51-14 8.62-23.27 2.26-9.86 3.88-17.18 4.59-20.74a109.54 109.54 0 0 1 4.42-15.05c2.27-6.25 2.49-15.39.37-15.39-.3 0-1.38 1.22-2.41 2.71s-4.76 4.8-8.29 7.36c-8.37 6.08-11.7 9.39-12.66 12.58s-1 7.23-.16 7.76c.34.21 1.29 2.4 2.11 4.88a28.83 28.83 0 0 1 .72 15.36c-.39 1.77-1 5.47-1.46 8.23s-1 6.46-1.25 8.22a9.85 9.85 0 0 1-1.55 4.26c-1 1-1.14.91-2.05-.53a14.87 14.87 0 0 1-1.44-4.75c-.25-1.74-1.63-7.11-3.08-11.93-3.28-10.9-3.52-16.15-1-21a14.24 14.24 0 0 0 1.67-4.61c0-2.39-2.2-5.32-7.41-9.89-7-6.18-8.63-7.92-10.23-11.3-1.71-3.6-3.06-4.06-4.54-1.54-1.78 3-2.6 9.11-3 22l-.34 12.19 2 2.25c3.21 3.7 12.07 16.45 13.78 19.83 3.41 6.74 4.34 11.69 4.41 23.56s.95 22.75 2 24.71c.36.66.51 1.35.34 1.52s.41 2.09 1.29 4.27a38.14 38.14 0 0 1 2.06 9 91 91 0 0 0 1.71 10.37c2.23 9.56 2.77 14.08 2.39 20.14-.2 3.27-.53 11.07-.73 17.32-1.31 41.76-1.85 58-2 61.21-.12 2-.39 11.51-.6 21.07-.36 16.3-1.3 27.37-2.42 28.65-.64.73-8.07-4.91-12.52-9.49-3.75-3.87-4-4.79-2.83-9.95.7-3 2.26-18.29 3.33-32.62.36-4.78.81-10.5 1-12.71.83-9.37 1.66-20.35 2.61-34.78.56-8.46 1.33-16.44 1.72-17.73s.89-9.89 1.13-19.11l.43-16.77-2.26-4.3c-1.72-3.28-4.87-6.94-13.22-15.34-6-6.07-11.84-12.3-12.91-13.85l-1.95-2.81.75-10.9c1.09-15.71 1.1-48.57 0-59.06l-.89-8.7-3.28-4.52c-5.86-8.08-5.8-7.75-6.22-33.27-.1-6.07-.38-11.5-.63-12.06-.83-1.87-3.05-2.66-8.54-3.05-8.86-.62-11-1.9-23.85-14.55-6.15-6-12.34-12-13.75-13.19-2.81-2.42-2.79-2-.56-9.63l1.35-4.65-1.69-3a32.22 32.22 0 0 0-2.59-4.07c-1.33-1.51-5.5-10.89-6-13.49a4.24 4.24 0 0 1 .87-3.9c2.23-2.86 3.4-5.68 4.45-10.73 2.33-11.19 7.74-26.09 10.6-29.22 3.18-3.47 7.7-1 9.41 5 1.34 4.79 1.37 9.79.1 18.55a101.2 101.2 0 0 0-1 11.11c0 4 .19 4.69 2.25 7.39 3.33 4.37 7.73 7.41 15.2 10.52a18.67 18.67 0 0 1 4.72 2.85c11.17 10.72 18.62 16.18 22.95 16.85 5.18.8 8 4.54 10 13.39 1.31 5.65 4 11.14 5.46 11.14a9.38 9.38 0 0 0 3.33-1.39c2-1.22 2.25-1.73 2.25-4.18a132.88 132.88 0 0 0-2-17.84c-.37-1.66-.78-4.06-.93-5.35s-.61-3.85-1-5.69c-2.55-11.16-3.65-15.46-4.1-16-1.55-2-4.08-10.2-4.93-15.92-1.64-11.11-4-14.23-12.91-17.39A43.15 43.15 0 0 1 165.24 78c-1.15-1-4-3.22-6.35-5.06s-4.41-3.53-4.6-3.76a22.7 22.7 0 0 0-2.69-2c-6.24-4.22-8.84-7-11.26-12l-2.44-5-.22-13-.22-13 6.91-6.55c3.95-3.75 8.48-7.35 10.59-8.43 3.31-1.69 4.45-1.89 11.37-2 8.53-.19 10.12 0 11.66 1.56s1.36 6.4-.29 8.5a6.66 6.66 0 0 0-1.34 2.32c0 .58-2.61 4.91-5.42 9a30.39 30.39 0 0 0-2.37 6.82c20.44 13.39 21.55 3.77 14.07 29L194 66.92c3.11-8.66 6.47-17.26 8.61-26.22.29-7.63-12-4.19-15.4-8.68-2.33-5.93 3.13-14.18 6.06-19.2 1.6-2.34 6.62-4.7 8.82-4.15.88.22 4.16-.35 7.37-1.28a45.3 45.3 0 0 1 7.55-1.68 29.57 29.57 0 0 0 6-1.29c3.65-1.11 4.5-1.17 6.35-.4a29.54 29.54 0 0 0 5.82 1.36 18.18 18.18 0 0 1 6 1.91 22.67 22.67 0 0 0 5 2.17c2.51.68 3 .57 7.05-1.67l4.35-2.4L268.32 5c10.44-.4 10.81-.47 15.26-2.68L288.16 0l2.46 1.43c1.76 1 3.14 2.73 4.85 6 2.36 4.51 2.38 4.58 1.37 7.37-.88 2.44-.89 3.3-.1 6.39a35.76 35.76 0 0 0 2.1 5.91 13.55 13.55 0 0 1 1.31 4c.31 4.33 0 5.3-2.41 6.92-2.17 1.47-7 7.91-7 9.34a14.77 14.77 0 0 1-1.07 3c-5 11.51-6.76 13.56-14.26 17-9.2 4.2-12.3 5.19-16.21 5.19-3.1 0-4 .25-4.54 1.26a18.33 18.33 0 0 1-4.09 3.71 13.62 13.62 0 0 0-4.38 4.78 5.89 5.89 0 0 1-2.49 2.91 6.88 6.88 0 0 0-2.45 1.71 67.62 67.62 0 0 1-7 5.38c-3.33 2.34-6.87 5-7.87 6A7.27 7.27 0 0 1 224 100a5.76 5.76 0 0 0-2.13 1.65c-1.31 1.39-1.49 2.11-1.14 4.6a36.45 36.45 0 0 0 1.42 5.88c1.32 3.8 1.31 7.86 0 10.57s-.89 6.65 1.35 9.59c2 2.63 2.16 4.56.71 8.84a33.45 33.45 0 0 0-1.06 8.91c0 4.88.22 6.28 1.46 8.38s1.82 2.48 3.24 2.32c2-.23 2.3-1.05 4.71-12.12 2.18-10 3.71-11.92 13.76-17.08 2.94-1.51 7.46-4 10-5.44s6.79-3.69 9.37-4.91a40.09 40.09 0 0 0 15.22-11.67c7.11-8.79 10-16.22 12.85-33.3a18.37 18.37 0 0 1 2.86-7.73 20.39 20.39 0 0 0 2.89-7.31c1-5.3 2.85-9.08 5.58-11.51 4.7-4.18 6-1.09 4.59 10.87-.46 3.86-1.1 10.33-1.44 14.38l-.61 7.36 4.45 4.09 4.45 4.09.11 8.42c.06 4.63.47 9.53.92 10.89l.82 2.47-6.43 6.28c-8.54 8.33-12.88 13.93-16.76 21.61-1.77 3.49-3.74 7.11-4.38 8-2.18 3.11-6.46 13-8.76 20.26l-2.29 7.22-7 6.49c-3.83 3.57-8 7.25-9.17 8.17-3.05 2.32-4.26 5.15-4.26 10a14.62 14.62 0 0 0 1.59 7.26 42 42 0 0 1 2.09 4.83 9.28 9.28 0 0 0 1.57 2.89c1.4 1.59 1.92 16.12.83 23.22-.68 4.48-3.63 12-4.7 12-1.79 0-4.06 9.27-5.07 20.74-.18 2-.62 5.94-1 8.7s-1 10-1.35 16.05c-.77 12.22-.19 18.77 2 23.15 3.41 6.69.52 12.69-11 22.84l-4 3.49.07 5.19a40.81 40.81 0 0 0 1.14 8.87c4.61 16 4.73 16.92 4.38 37.13-.46 26.4-.26 40.27.63 44.15a61.31 61.31 0 0 1 1.08 7c.17 2 .66 5.33 1.08 7.36.47 2.26.78 11 .79 22.74v19.06l-1.81 2.63c-2.71 3.91-15.11 13.54-15.49 12.29zm29.53-45.11c-.18-.3-.33-6.87-.33-14.59 0-14.06-.89-27.54-2.26-34.45-.4-2-.81-9.7-.9-17.06-.15-11.93-1.4-24.37-2.64-26.38-.66-1.07-3-17.66-3-21.3 0-4.23 1-6 5.28-9.13s4.86-3.14 5.48-.72c.28 1.1 1.45 5.62 2.6 10 3.93 15.12 4.14 16.27 4.05 21.74-.1 5.78-.13 6.13-1.74 17.73-1 7.07-1.17 12.39-1 28.43.17 19.4-.64 35.73-2 41.27-.71 2.78-2.8 5.48-3.43 4.43zm-71-37.58a101 101 0 0 1-1.73-10.79 100.5 100.5 0 0 0-1.73-10.79 37.53 37.53 0 0 1-1-6.49c-.31-3.19-.91-7.46-1.33-9.48-1-4.79-3.35-19.35-3.42-21.07 0-.74-.34-4.05-.7-7.36-.67-6.21-.84-27.67-.22-28.29 1-1 6.63 2.76 11.33 7.43l5.28 5.25-.45 6.47c-.25 3.56-.6 10.23-.78 14.83s-.49 9.87-.67 11.71-.61 9.36-.94 16.72c-.79 17.41-1.94 31.29-2.65 32a.62.62 0 0 1-1-.14zm-87.18-266.59c21.07 12.79 17.84 14.15 28.49 17.66 13 4.29 18.87 7.13 23.15 16.87C111.6 233.28 86.25 255 78.55 268c-31 52-6 101.59 62.75 87.21-14.18 29.23-78 28.63-98.68-4.9-24.68-39.95-22.09-118.3 61-187.66zm210.79 179c56.66 6.88 82.32-37.74 46.54-89.23 0 0-26.87-29.34-64.28-68 3-15.45 9.49-32.12 30.57-53.82 89.2 63.51 92 141.61 92.46 149.36 4.3 70.64-78.7 91.18-105.29 61.71z\"]\n};\nvar faMarkdown = {\n prefix: 'fab',\n iconName: 'markdown',\n icon: [640, 512, [], \"f60f\", \"M593.8 59.1H46.2C20.7 59.1 0 79.8 0 105.2v301.5c0 25.5 20.7 46.2 46.2 46.2h547.7c25.5 0 46.2-20.7 46.1-46.1V105.2c0-25.4-20.7-46.1-46.2-46.1zM338.5 360.6H277v-120l-61.5 76.9-61.5-76.9v120H92.3V151.4h61.5l61.5 76.9 61.5-76.9h61.5v209.2zm135.3 3.1L381.5 256H443V151.4h61.5V256H566z\"]\n};\nvar faMastodon = {\n prefix: 'fab',\n iconName: 'mastodon',\n icon: [448, 512, [], \"f4f6\", \"M433 179.11c0-97.2-63.71-125.7-63.71-125.7-62.52-28.7-228.56-28.4-290.48 0 0 0-63.72 28.5-63.72 125.7 0 115.7-6.6 259.4 105.63 289.1 40.51 10.7 75.32 13 103.33 11.4 50.81-2.8 79.32-18.1 79.32-18.1l-1.7-36.9s-36.31 11.4-77.12 10.1c-40.41-1.4-83-4.4-89.63-54a102.54 102.54 0 0 1-.9-13.9c85.63 20.9 158.65 9.1 178.75 6.7 56.12-6.7 105-41.3 111.23-72.9 9.8-49.8 9-121.5 9-121.5zm-75.12 125.2h-46.63v-114.2c0-49.7-64-51.6-64 6.9v62.5h-46.33V197c0-58.5-64-56.6-64-6.9v114.2H90.19c0-122.1-5.2-147.9 18.41-175 25.9-28.9 79.82-30.8 103.83 6.1l11.6 19.5 11.6-19.5c24.11-37.1 78.12-34.8 103.83-6.1 23.71 27.3 18.4 53 18.4 175z\"]\n};\nvar faMaxcdn = {\n prefix: 'fab',\n iconName: 'maxcdn',\n icon: [512, 512, [], \"f136\", \"M461.1 442.7h-97.4L415.6 200c2.3-10.2.9-19.5-4.4-25.7-5-6.1-13.7-9.6-24.2-9.6h-49.3l-59.5 278h-97.4l59.5-278h-83.4l-59.5 278H0l59.5-278-44.6-95.4H387c39.4 0 75.3 16.3 98.3 44.9 23.3 28.6 31.8 67.4 23.6 105.9l-47.8 222.6z\"]\n};\nvar faMdb = {\n prefix: 'fab',\n iconName: 'mdb',\n icon: [576, 512, [], \"f8ca\", \"M17.37 160.41L7 352h43.91l5.59-79.83L84.43 352h44.71l25.54-77.43 4.79 77.43H205l-12.79-191.59H146.7L106 277.74 63.67 160.41zm281 0h-47.9V352h47.9s95 .8 94.2-95.79c-.78-94.21-94.18-95.78-94.18-95.78zm-1.2 146.46V204.78s46 4.27 46.8 50.57-46.78 51.54-46.78 51.54zm238.29-74.24a56.16 56.16 0 0 0 8-38.31c-5.34-35.76-55.08-34.32-55.08-34.32h-51.9v191.58H482s87 4.79 87-63.85c0-43.14-33.52-55.08-33.52-55.08zm-51.9-31.94s13.57-1.59 16 9.59c1.43 6.66-4 12-4 12h-12v-21.57zm-.1 109.46l.1-24.92V267h.08s41.58-4.73 41.19 22.43c-.33 25.65-41.35 20.74-41.35 20.74z\"]\n};\nvar faMedapps = {\n prefix: 'fab',\n iconName: 'medapps',\n icon: [320, 512, [], \"f3c6\", \"M118.3 238.4c3.5-12.5 6.9-33.6 13.2-33.6 8.3 1.8 9.6 23.4 18.6 36.6 4.6-23.5 5.3-85.1 14.1-86.7 9-.7 19.7 66.5 22 77.5 9.9 4.1 48.9 6.6 48.9 6.6 1.9 7.3-24 7.6-40 7.8-4.6 14.8-5.4 27.7-11.4 28-4.7.2-8.2-28.8-17.5-49.6l-9.4 65.5c-4.4 13-15.5-22.5-21.9-39.3-3.3-.1-62.4-1.6-47.6-7.8l31-5zM228 448c21.2 0 21.2-32 0-32H92c-21.2 0-21.2 32 0 32h136zm-24 64c21.2 0 21.2-32 0-32h-88c-21.2 0-21.2 32 0 32h88zm34.2-141.5c3.2-18.9 5.2-36.4 11.9-48.8 7.9-14.7 16.1-28.1 24-41 24.6-40.4 45.9-75.2 45.9-125.5C320 69.6 248.2 0 160 0S0 69.6 0 155.2c0 50.2 21.3 85.1 45.9 125.5 7.9 12.9 16 26.3 24 41 6.7 12.5 8.7 29.8 11.9 48.9 3.5 21 36.1 15.7 32.6-5.1-3.6-21.7-5.6-40.7-15.3-58.6C66.5 246.5 33 211.3 33 155.2 33 87.3 90 32 160 32s127 55.3 127 123.2c0 56.1-33.5 91.3-66.1 151.6-9.7 18-11.7 37.4-15.3 58.6-3.4 20.6 29 26.4 32.6 5.1z\"]\n};\nvar faMedium = {\n prefix: 'fab',\n iconName: 'medium',\n icon: [448, 512, [], \"f23a\", \"M0 32v448h448V32H0zm372.2 106.1l-24 23c-2.1 1.6-3.1 4.2-2.7 6.7v169.3c-.4 2.6.6 5.2 2.7 6.7l23.5 23v5.1h-118V367l24.3-23.6c2.4-2.4 2.4-3.1 2.4-6.7V199.8l-67.6 171.6h-9.1L125 199.8v115c-.7 4.8 1 9.7 4.4 13.2l31.6 38.3v5.1H71.2v-5.1l31.6-38.3c3.4-3.5 4.9-8.4 4.1-13.2v-133c.4-3.7-1-7.3-3.8-9.8L75 138.1V133h87.3l67.4 148L289 133.1h83.2v5z\"]\n};\nvar faMediumM = {\n prefix: 'fab',\n iconName: 'medium-m',\n icon: [512, 512, [], \"f3c7\", \"M71.5 142.3c.6-5.9-1.7-11.8-6.1-15.8L20.3 72.1V64h140.2l108.4 237.7L364.2 64h133.7v8.1l-38.6 37c-3.3 2.5-5 6.7-4.3 10.8v272c-.7 4.1 1 8.3 4.3 10.8l37.7 37v8.1H307.3v-8.1l39.1-37.9c3.8-3.8 3.8-5 3.8-10.8V171.2L241.5 447.1h-14.7L100.4 171.2v184.9c-1.1 7.8 1.5 15.6 7 21.2l50.8 61.6v8.1h-144v-8L65 377.3c5.4-5.6 7.9-13.5 6.5-21.2V142.3z\"]\n};\nvar faMedrt = {\n prefix: 'fab',\n iconName: 'medrt',\n icon: [544, 512, [], \"f3c8\", \"M113.7 256c0 121.8 83.9 222.8 193.5 241.1-18.7 4.5-38.2 6.9-58.2 6.9C111.4 504 0 393 0 256S111.4 8 248.9 8c20.1 0 39.6 2.4 58.2 6.9C197.5 33.2 113.7 134.2 113.7 256m297.4 100.3c-77.7 55.4-179.6 47.5-240.4-14.6 5.5 14.1 12.7 27.7 21.7 40.5 61.6 88.2 182.4 109.3 269.7 47 87.3-62.3 108.1-184.3 46.5-272.6-9-12.9-19.3-24.3-30.5-34.2 37.4 78.8 10.7 178.5-67 233.9m-218.8-244c-1.4 1-2.7 2.1-4 3.1 64.3-17.8 135.9 4 178.9 60.5 35.7 47 42.9 106.6 24.4 158 56.7-56.2 67.6-142.1 22.3-201.8-50-65.5-149.1-74.4-221.6-19.8M296 224c-4.4 0-8-3.6-8-8v-40c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v40c0 4.4-3.6 8-8 8h-40c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h40c4.4 0 8 3.6 8 8v40c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-40c0-4.4 3.6-8 8-8h40c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8h-40z\"]\n};\nvar faMeetup = {\n prefix: 'fab',\n iconName: 'meetup',\n icon: [512, 512, [], \"f2e0\", \"M99 414.3c1.1 5.7-2.3 11.1-8 12.3-5.4 1.1-10.9-2.3-12-8-1.1-5.4 2.3-11.1 7.7-12.3 5.4-1.2 11.1 2.3 12.3 8zm143.1 71.4c-6.3 4.6-8 13.4-3.7 20 4.6 6.6 13.4 8.3 20 3.7 6.3-4.6 8-13.4 3.4-20-4.2-6.5-13.1-8.3-19.7-3.7zm-86-462.3c6.3-1.4 10.3-7.7 8.9-14-1.1-6.6-7.4-10.6-13.7-9.1-6.3 1.4-10.3 7.7-9.1 14 1.4 6.6 7.6 10.6 13.9 9.1zM34.4 226.3c-10-6.9-23.7-4.3-30.6 6-6.9 10-4.3 24 5.7 30.9 10 7.1 23.7 4.6 30.6-5.7 6.9-10.4 4.3-24.1-5.7-31.2zm272-170.9c10.6-6.3 13.7-20 7.7-30.3-6.3-10.6-19.7-14-30-7.7s-13.7 20-7.4 30.6c6 10.3 19.4 13.7 29.7 7.4zm-191.1 58c7.7-5.4 9.4-16 4.3-23.7s-15.7-9.4-23.1-4.3c-7.7 5.4-9.4 16-4.3 23.7 5.1 7.8 15.6 9.5 23.1 4.3zm372.3 156c-7.4 1.7-12.3 9.1-10.6 16.9 1.4 7.4 8.9 12.3 16.3 10.6 7.4-1.4 12.3-8.9 10.6-16.6-1.5-7.4-8.9-12.3-16.3-10.9zm39.7-56.8c-1.1-5.7-6.6-9.1-12-8-5.7 1.1-9.1 6.9-8 12.6 1.1 5.4 6.6 9.1 12.3 8 5.4-1.5 9.1-6.9 7.7-12.6zM447 138.9c-8.6 6-10.6 17.7-4.9 26.3 5.7 8.6 17.4 10.6 26 4.9 8.3-6 10.3-17.7 4.6-26.3-5.7-8.7-17.4-10.9-25.7-4.9zm-6.3 139.4c26.3 43.1 15.1 100-26.3 129.1-17.4 12.3-37.1 17.7-56.9 17.1-12 47.1-69.4 64.6-105.1 32.6-1.1.9-2.6 1.7-3.7 2.9-39.1 27.1-92.3 17.4-119.4-22.3-9.7-14.3-14.6-30.6-15.1-46.9-65.4-10.9-90-94-41.1-139.7-28.3-46.9.6-107.4 53.4-114.9C151.6 70 234.1 38.6 290.1 82c67.4-22.3 136.3 29.4 130.9 101.1 41.1 12.6 52.8 66.9 19.7 95.2zm-70 74.3c-3.1-20.6-40.9-4.6-43.1-27.1-3.1-32 43.7-101.1 40-128-3.4-24-19.4-29.1-33.4-29.4-13.4-.3-16.9 2-21.4 4.6-2.9 1.7-6.6 4.9-11.7-.3-6.3-6-11.1-11.7-19.4-12.9-12.3-2-17.7 2-26.6 9.7-3.4 2.9-12 12.9-20 9.1-3.4-1.7-15.4-7.7-24-11.4-16.3-7.1-40 4.6-48.6 20-12.9 22.9-38 113.1-41.7 125.1-8.6 26.6 10.9 48.6 36.9 47.1 11.1-.6 18.3-4.6 25.4-17.4 4-7.4 41.7-107.7 44.6-112.6 2-3.4 8.9-8 14.6-5.1 5.7 3.1 6.9 9.4 6 15.1-1.1 9.7-28 70.9-28.9 77.7-3.4 22.9 26.9 26.6 38.6 4 3.7-7.1 45.7-92.6 49.4-98.3 4.3-6.3 7.4-8.3 11.7-8 3.1 0 8.3.9 7.1 10.9-1.4 9.4-35.1 72.3-38.9 87.7-4.6 20.6 6.6 41.4 24.9 50.6 11.4 5.7 62.5 15.7 58.5-11.1zm5.7 92.3c-10.3 7.4-12.9 22-5.7 32.6 7.1 10.6 21.4 13.1 32 6 10.6-7.4 13.1-22 6-32.6-7.4-10.6-21.7-13.5-32.3-6z\"]\n};\nvar faMegaport = {\n prefix: 'fab',\n iconName: 'megaport',\n icon: [496, 512, [], \"f5a3\", \"M214.5 209.6v66.2l33.5 33.5 33.3-33.3v-66.4l-33.4-33.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm145.1 414.4L367 441.6l-26-19.2v-65.5l-33.4-33.4-33.4 33.4v65.5L248 441.6l-26.1-19.2v-65.5l-33.4-33.4-33.5 33.4v65.5l-26.1 19.2-26.1-19.2v-87l59.5-59.5V188l59.5-59.5V52.9l26.1-19.2L274 52.9v75.6l59.5 59.5v87.6l59.7 59.7v87.1z\"]\n};\nvar faMendeley = {\n prefix: 'fab',\n iconName: 'mendeley',\n icon: [640, 512, [], \"f7b3\", \"M624.6 325.2c-12.3-12.4-29.7-19.2-48.4-17.2-43.3-1-49.7-34.9-37.5-98.8 22.8-57.5-14.9-131.5-87.4-130.8-77.4.7-81.7 82-130.9 82-48.1 0-54-81.3-130.9-82-72.9-.8-110.1 73.3-87.4 130.8 12.2 63.9 5.8 97.8-37.5 98.8-21.2-2.3-37 6.5-53 22.5-19.9 19.7-19.3 94.8 42.6 102.6 47.1 5.9 81.6-42.9 61.2-87.8-47.3-103.7 185.9-106.1 146.5-8.2-.1.1-.2.2-.3.4-26.8 42.8 6.8 97.4 58.8 95.2 52.1 2.1 85.4-52.6 58.8-95.2-.1-.2-.2-.3-.3-.4-39.4-97.9 193.8-95.5 146.5 8.2-4.6 10-6.7 21.3-5.7 33 4.9 53.4 68.7 74.1 104.9 35.2 17.8-14.8 23.1-65.6 0-88.3zm-303.9-19.1h-.6c-43.4 0-62.8-37.5-62.8-62.8 0-34.7 28.2-62.8 62.8-62.8h.6c34.7 0 62.8 28.1 62.8 62.8 0 25-19.2 62.8-62.8 62.8z\"]\n};\nvar faMicroblog = {\n prefix: 'fab',\n iconName: 'microblog',\n icon: [448, 512, [], \"e01a\", \"M399.36,362.23c29.49-34.69,47.1-78.34,47.1-125.79C446.46,123.49,346.86,32,224,32S1.54,123.49,1.54,236.44,101.14,440.87,224,440.87a239.28,239.28,0,0,0,79.44-13.44,7.18,7.18,0,0,1,8.12,2.56c18.58,25.09,47.61,42.74,79.89,49.92a4.42,4.42,0,0,0,5.22-3.43,4.37,4.37,0,0,0-.85-3.62,87,87,0,0,1,3.69-110.69ZM329.52,212.4l-57.3,43.49L293,324.75a6.5,6.5,0,0,1-9.94,7.22L224,290.92,164.94,332a6.51,6.51,0,0,1-9.95-7.22l20.79-68.86-57.3-43.49a6.5,6.5,0,0,1,3.8-11.68l71.88-1.51,23.66-67.92a6.5,6.5,0,0,1,12.28,0l23.66,67.92,71.88,1.51a6.5,6.5,0,0,1,3.88,11.68Z\"]\n};\nvar faMicrosoft = {\n prefix: 'fab',\n iconName: 'microsoft',\n icon: [448, 512, [], \"f3ca\", \"M0 32h214.6v214.6H0V32zm233.4 0H448v214.6H233.4V32zM0 265.4h214.6V480H0V265.4zm233.4 0H448V480H233.4V265.4z\"]\n};\nvar faMix = {\n prefix: 'fab',\n iconName: 'mix',\n icon: [448, 512, [], \"f3cb\", \"M0 64v348.9c0 56.2 88 58.1 88 0V174.3c7.9-52.9 88-50.4 88 6.5v175.3c0 57.9 96 58 96 0V240c5.3-54.7 88-52.5 88 4.3v23.8c0 59.9 88 56.6 88 0V64H0z\"]\n};\nvar faMixcloud = {\n prefix: 'fab',\n iconName: 'mixcloud',\n icon: [640, 512, [], \"f289\", \"M424.43 219.729C416.124 134.727 344.135 68 256.919 68c-72.266 0-136.224 46.516-159.205 114.074-54.545 8.029-96.63 54.822-96.63 111.582 0 62.298 50.668 112.966 113.243 112.966h289.614c52.329 0 94.969-42.362 94.969-94.693 0-45.131-32.118-83.063-74.48-92.2zm-20.489 144.53H114.327c-39.04 0-70.881-31.564-70.881-70.604s31.841-70.604 70.881-70.604c18.827 0 36.548 7.475 49.838 20.766 19.963 19.963 50.133-10.227 30.18-30.18-14.675-14.398-32.672-24.365-52.053-29.349 19.935-44.3 64.79-73.926 114.628-73.926 69.496 0 125.979 56.483 125.979 125.702 0 13.568-2.215 26.857-6.369 39.594-8.943 27.517 32.133 38.939 40.147 13.29 2.769-8.306 4.984-16.889 6.369-25.472 19.381 7.476 33.502 26.303 33.502 48.453 0 28.795-23.535 52.33-52.607 52.33zm235.069-52.33c0 44.024-12.737 86.386-37.102 122.657-4.153 6.092-10.798 9.414-17.72 9.414-16.317 0-27.127-18.826-17.443-32.949 19.381-29.349 29.903-63.682 29.903-99.122s-10.521-69.773-29.903-98.845c-15.655-22.831 19.361-47.24 35.163-23.534 24.366 35.993 37.102 78.356 37.102 122.379zm-70.88 0c0 31.565-9.137 62.021-26.857 88.325-4.153 6.091-10.798 9.136-17.72 9.136-17.201 0-27.022-18.979-17.443-32.948 13.013-19.104 19.658-41.255 19.658-64.513 0-22.981-6.645-45.408-19.658-64.512-15.761-22.986 19.008-47.095 35.163-23.535 17.719 26.026 26.857 56.483 26.857 88.047z\"]\n};\nvar faMixer = {\n prefix: 'fab',\n iconName: 'mixer',\n icon: [512, 512, [], \"e056\", \"M114.57,76.07a45.71,45.71,0,0,0-67.51-6.41c-17.58,16.18-19,43.52-4.75,62.77l91.78,123L41.76,379.58c-14.23,19.25-13.11,46.59,4.74,62.77A45.71,45.71,0,0,0,114,435.94L242.89,262.7a12.14,12.14,0,0,0,0-14.23ZM470.24,379.58,377.91,255.45l91.78-123c14.22-19.25,12.83-46.59-4.75-62.77a45.71,45.71,0,0,0-67.51,6.41l-128,172.12a12.14,12.14,0,0,0,0,14.23L398,435.94a45.71,45.71,0,0,0,67.51,6.41C483.35,426.17,484.47,398.83,470.24,379.58Z\"]\n};\nvar faMizuni = {\n prefix: 'fab',\n iconName: 'mizuni',\n icon: [496, 512, [], \"f3cc\", \"M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm-80 351.9c-31.4 10.6-58.8 27.3-80 48.2V136c0-22.1 17.9-40 40-40s40 17.9 40 40v223.9zm120-9.9c-12.9-2-26.2-3.1-39.8-3.1-13.8 0-27.2 1.1-40.2 3.1V136c0-22.1 17.9-40 40-40s40 17.9 40 40v214zm120 57.7c-21.2-20.8-48.6-37.4-80-48V136c0-22.1 17.9-40 40-40s40 17.9 40 40v271.7z\"]\n};\nvar faModx = {\n prefix: 'fab',\n iconName: 'modx',\n icon: [448, 512, [], \"f285\", \"M356 241.8l36.7 23.7V480l-133-83.8L356 241.8zM440 75H226.3l-23 37.8 153.5 96.5L440 75zm-89 142.8L55.2 32v214.5l46 29L351 217.8zM97 294.2L8 437h213.7l125-200.5L97 294.2z\"]\n};\nvar faMonero = {\n prefix: 'fab',\n iconName: 'monero',\n icon: [496, 512, [], \"f3d0\", \"M352 384h108.4C417 455.9 338.1 504 248 504S79 455.9 35.6 384H144V256.2L248 361l104-105v128zM88 336V128l159.4 159.4L408 128v208h74.8c8.5-25.1 13.2-52 13.2-80C496 119 385 8 248 8S0 119 0 256c0 28 4.6 54.9 13.2 80H88z\"]\n};\nvar faNapster = {\n prefix: 'fab',\n iconName: 'napster',\n icon: [496, 512, [], \"f3d2\", \"M298.3 373.6c-14.2 13.6-31.3 24.1-50.4 30.5-19-6.4-36.2-16.9-50.3-30.5h100.7zm44-199.6c20-16.9 43.6-29.2 69.6-36.2V299c0 219.4-328 217.6-328 .3V137.7c25.9 6.9 49.6 19.6 69.5 36.4 56.8-40 132.5-39.9 188.9-.1zm-208.8-58.5c64.4-60 164.3-60.1 228.9-.2-7.1 3.5-13.9 7.3-20.6 11.5-58.7-30.5-129.2-30.4-187.9.1-6.3-4-13.9-8.2-20.4-11.4zM43.8 93.2v69.3c-58.4 36.5-58.4 121.1.1 158.3 26.4 245.1 381.7 240.3 407.6 1.5l.3-1.7c58.7-36.3 58.9-121.7.2-158.2V93.2c-17.3.5-34 3-50.1 7.4-82-91.5-225.5-91.5-307.5.1-16.3-4.4-33.1-7-50.6-7.5zM259.2 352s36-.3 61.3-1.5c10.2-.5 21.1-4 25.5-6.5 26.3-15.1 25.4-39.2 26.2-47.4-79.5-.6-99.9-3.9-113 55.4zm-135.5-55.3c.8 8.2-.1 32.3 26.2 47.4 4.4 2.5 15.2 6 25.5 6.5 25.3 1.1 61.3 1.5 61.3 1.5-13.2-59.4-33.7-56.1-113-55.4zm169.1 123.4c-3.2-5.3-6.9-7.3-6.9-7.3-24.8 7.3-52.2 6.9-75.9 0 0 0-2.9 1.5-6.4 6.6-2.8 4.1-3.7 9.6-3.7 9.6 29.1 17.6 67.1 17.6 96.2 0-.1-.1-.3-4-3.3-8.9z\"]\n};\nvar faNeos = {\n prefix: 'fab',\n iconName: 'neos',\n icon: [512, 512, [], \"f612\", \"M415.44 512h-95.11L212.12 357.46v91.1L125.69 512H28V29.82L68.47 0h108.05l123.74 176.13V63.45L386.69 0h97.69v461.5zM38.77 35.27V496l72-52.88V194l215.5 307.64h84.79l52.35-38.17h-78.27L69 13zm82.54 466.61l80-58.78v-101l-79.76-114.4v220.94L49 501.89h72.34zM80.63 10.77l310.6 442.57h82.37V10.77h-79.75v317.56L170.91 10.77zM311 191.65l72 102.81V15.93l-72 53v122.72z\"]\n};\nvar faNimblr = {\n prefix: 'fab',\n iconName: 'nimblr',\n icon: [384, 512, [], \"f5a8\", \"M246.6 299.29c15.57 0 27.15 11.46 27.15 27s-11.62 27-27.15 27c-15.7 0-27.15-11.57-27.15-27s11.55-27 27.15-27zM113 326.25c0-15.61 11.68-27 27.15-27s27.15 11.46 27.15 27-11.47 27-27.15 27c-15.44 0-27.15-11.31-27.15-27M191.76 159C157 159 89.45 178.77 59.25 227L14 0v335.48C14 433.13 93.61 512 191.76 512s177.76-78.95 177.76-176.52S290.13 159 191.76 159zm0 308.12c-73.27 0-132.51-58.9-132.51-131.59s59.24-131.59 132.51-131.59 132.51 58.86 132.51 131.54S265 467.07 191.76 467.07z\"]\n};\nvar faNode = {\n prefix: 'fab',\n iconName: 'node',\n icon: [640, 512, [], \"f419\", \"M316.3 452c-2.1 0-4.2-.6-6.1-1.6L291 439c-2.9-1.6-1.5-2.2-.5-2.5 3.8-1.3 4.6-1.6 8.7-4 .4-.2 1-.1 1.4.1l14.8 8.8c.5.3 1.3.3 1.8 0L375 408c.5-.3.9-.9.9-1.6v-66.7c0-.7-.3-1.3-.9-1.6l-57.8-33.3c-.5-.3-1.2-.3-1.8 0l-57.8 33.3c-.6.3-.9 1-.9 1.6v66.7c0 .6.4 1.2.9 1.5l15.8 9.1c8.6 4.3 13.9-.8 13.9-5.8v-65.9c0-.9.7-1.7 1.7-1.7h7.3c.9 0 1.7.7 1.7 1.7v65.9c0 11.5-6.2 18-17.1 18-3.3 0-6 0-13.3-3.6l-15.2-8.7c-3.7-2.2-6.1-6.2-6.1-10.5v-66.7c0-4.3 2.3-8.4 6.1-10.5l57.8-33.4c3.7-2.1 8.5-2.1 12.1 0l57.8 33.4c3.7 2.2 6.1 6.2 6.1 10.5v66.7c0 4.3-2.3 8.4-6.1 10.5l-57.8 33.4c-1.7 1.1-3.8 1.7-6 1.7zm46.7-65.8c0-12.5-8.4-15.8-26.2-18.2-18-2.4-19.8-3.6-19.8-7.8 0-3.5 1.5-8.1 14.8-8.1 11.9 0 16.3 2.6 18.1 10.6.2.8.8 1.3 1.6 1.3h7.5c.5 0 .9-.2 1.2-.5.3-.4.5-.8.4-1.3-1.2-13.8-10.3-20.2-28.8-20.2-16.5 0-26.3 7-26.3 18.6 0 12.7 9.8 16.1 25.6 17.7 18.9 1.9 20.4 4.6 20.4 8.3 0 6.5-5.2 9.2-17.4 9.2-15.3 0-18.7-3.8-19.8-11.4-.1-.8-.8-1.4-1.7-1.4h-7.5c-.9 0-1.7.7-1.7 1.7 0 9.7 5.3 21.3 30.6 21.3 18.5 0 29-7.2 29-19.8zm54.5-50.1c0 6.1-5 11.1-11.1 11.1s-11.1-5-11.1-11.1c0-6.3 5.2-11.1 11.1-11.1 6-.1 11.1 4.8 11.1 11.1zm-1.8 0c0-5.2-4.2-9.3-9.4-9.3-5.1 0-9.3 4.1-9.3 9.3 0 5.2 4.2 9.4 9.3 9.4 5.2-.1 9.4-4.3 9.4-9.4zm-4.5 6.2h-2.6c-.1-.6-.5-3.8-.5-3.9-.2-.7-.4-1.1-1.3-1.1h-2.2v5h-2.4v-12.5h4.3c1.5 0 4.4 0 4.4 3.3 0 2.3-1.5 2.8-2.4 3.1 1.7.1 1.8 1.2 2.1 2.8.1 1 .3 2.7.6 3.3zm-2.8-8.8c0-1.7-1.2-1.7-1.8-1.7h-2v3.5h1.9c1.6 0 1.9-1.1 1.9-1.8zM137.3 191c0-2.7-1.4-5.1-3.7-6.4l-61.3-35.3c-1-.6-2.2-.9-3.4-1h-.6c-1.2 0-2.3.4-3.4 1L3.7 184.6C1.4 185.9 0 188.4 0 191l.1 95c0 1.3.7 2.5 1.8 3.2 1.1.7 2.5.7 3.7 0L42 268.3c2.3-1.4 3.7-3.8 3.7-6.4v-44.4c0-2.6 1.4-5.1 3.7-6.4l15.5-8.9c1.2-.7 2.4-1 3.7-1 1.3 0 2.6.3 3.7 1l15.5 8.9c2.3 1.3 3.7 3.8 3.7 6.4v44.4c0 2.6 1.4 5.1 3.7 6.4l36.4 20.9c1.1.7 2.6.7 3.7 0 1.1-.6 1.8-1.9 1.8-3.2l.2-95zM472.5 87.3v176.4c0 2.6-1.4 5.1-3.7 6.4l-61.3 35.4c-2.3 1.3-5.1 1.3-7.4 0l-61.3-35.4c-2.3-1.3-3.7-3.8-3.7-6.4v-70.8c0-2.6 1.4-5.1 3.7-6.4l61.3-35.4c2.3-1.3 5.1-1.3 7.4 0l15.3 8.8c1.7 1 3.9-.3 3.9-2.2v-94c0-2.8 3-4.6 5.5-3.2l36.5 20.4c2.3 1.2 3.8 3.7 3.8 6.4zm-46 128.9c0-.7-.4-1.3-.9-1.6l-21-12.2c-.6-.3-1.3-.3-1.9 0l-21 12.2c-.6.3-.9.9-.9 1.6v24.3c0 .7.4 1.3.9 1.6l21 12.1c.6.3 1.3.3 1.8 0l21-12.1c.6-.3.9-.9.9-1.6v-24.3zm209.8-.7c2.3-1.3 3.7-3.8 3.7-6.4V192c0-2.6-1.4-5.1-3.7-6.4l-60.9-35.4c-2.3-1.3-5.1-1.3-7.4 0l-61.3 35.4c-2.3 1.3-3.7 3.8-3.7 6.4v70.8c0 2.7 1.4 5.1 3.7 6.4l60.9 34.7c2.2 1.3 5 1.3 7.3 0l36.8-20.5c2.5-1.4 2.5-5 0-6.4L550 241.6c-1.2-.7-1.9-1.9-1.9-3.2v-22.2c0-1.3.7-2.5 1.9-3.2l19.2-11.1c1.1-.7 2.6-.7 3.7 0l19.2 11.1c1.1.7 1.9 1.9 1.9 3.2v17.4c0 2.8 3.1 4.6 5.6 3.2l36.7-21.3zM559 219c-.4.3-.7.7-.7 1.2v13.6c0 .5.3 1 .7 1.2l11.8 6.8c.4.3 1 .3 1.4 0L584 235c.4-.3.7-.7.7-1.2v-13.6c0-.5-.3-1-.7-1.2l-11.8-6.8c-.4-.3-1-.3-1.4 0L559 219zm-254.2 43.5v-70.4c0-2.6-1.6-5.1-3.9-6.4l-61.1-35.2c-2.1-1.2-5-1.4-7.4 0l-61.1 35.2c-2.3 1.3-3.9 3.7-3.9 6.4v70.4c0 2.8 1.9 5.2 4 6.4l61.2 35.2c2.4 1.4 5.2 1.3 7.4 0l61-35.2c1.8-1 3.1-2.7 3.6-4.7.1-.5.2-1.1.2-1.7zm-74.3-124.9l-.8.5h1.1l-.3-.5zm76.2 130.2l-.4-.7v.9l.4-.2z\"]\n};\nvar faNodeJs = {\n prefix: 'fab',\n iconName: 'node-js',\n icon: [448, 512, [], \"f3d3\", \"M224 508c-6.7 0-13.5-1.8-19.4-5.2l-61.7-36.5c-9.2-5.2-4.7-7-1.7-8 12.3-4.3 14.8-5.2 27.9-12.7 1.4-.8 3.2-.5 4.6.4l47.4 28.1c1.7 1 4.1 1 5.7 0l184.7-106.6c1.7-1 2.8-3 2.8-5V149.3c0-2.1-1.1-4-2.9-5.1L226.8 37.7c-1.7-1-4-1-5.7 0L36.6 144.3c-1.8 1-2.9 3-2.9 5.1v213.1c0 2 1.1 4 2.9 4.9l50.6 29.2c27.5 13.7 44.3-2.4 44.3-18.7V167.5c0-3 2.4-5.3 5.4-5.3h23.4c2.9 0 5.4 2.3 5.4 5.3V378c0 36.6-20 57.6-54.7 57.6-10.7 0-19.1 0-42.5-11.6l-48.4-27.9C8.1 389.2.7 376.3.7 362.4V149.3c0-13.8 7.4-26.8 19.4-33.7L204.6 9c11.7-6.6 27.2-6.6 38.8 0l184.7 106.7c12 6.9 19.4 19.8 19.4 33.7v213.1c0 13.8-7.4 26.7-19.4 33.7L243.4 502.8c-5.9 3.4-12.6 5.2-19.4 5.2zm149.1-210.1c0-39.9-27-50.5-83.7-58-57.4-7.6-63.2-11.5-63.2-24.9 0-11.1 4.9-25.9 47.4-25.9 37.9 0 51.9 8.2 57.7 33.8.5 2.4 2.7 4.2 5.2 4.2h24c1.5 0 2.9-.6 3.9-1.7s1.5-2.6 1.4-4.1c-3.7-44.1-33-64.6-92.2-64.6-52.7 0-84.1 22.2-84.1 59.5 0 40.4 31.3 51.6 81.8 56.6 60.5 5.9 65.2 14.8 65.2 26.7 0 20.6-16.6 29.4-55.5 29.4-48.9 0-59.6-12.3-63.2-36.6-.4-2.6-2.6-4.5-5.3-4.5h-23.9c-3 0-5.3 2.4-5.3 5.3 0 31.1 16.9 68.2 97.8 68.2 58.4-.1 92-23.2 92-63.4z\"]\n};\nvar faNpm = {\n prefix: 'fab',\n iconName: 'npm',\n icon: [576, 512, [], \"f3d4\", \"M288 288h-32v-64h32v64zm288-128v192H288v32H160v-32H0V160h576zm-416 32H32v128h64v-96h32v96h32V192zm160 0H192v160h64v-32h64V192zm224 0H352v128h64v-96h32v96h32v-96h32v96h32V192z\"]\n};\nvar faNs8 = {\n prefix: 'fab',\n iconName: 'ns8',\n icon: [640, 512, [], \"f3d5\", \"M104.324,269.172h26.067V242.994H104.324Zm52.466-26.178-.055-26.178v-.941a39.325,39.325,0,0,0-78.644.941v.166h26.4v-.166a12.98,12.98,0,0,1,25.956,0v26.178Zm52.356,25.846a91.1,91.1,0,0,1-91.1,91.1h-.609a91.1,91.1,0,0,1-91.1-91.1H0v.166A117.33,117.33,0,0,0,117.44,386.28h.775A117.331,117.331,0,0,0,235.49,268.84V242.828H209.146Zm-157.233,0a65.362,65.362,0,0,0,130.723,0H156.292a39.023,39.023,0,0,1-78.035,0V242.883H51.968v-26.62A65.42,65.42,0,0,1,182.8,217.48v25.293h26.344V217.48a91.761,91.761,0,0,0-183.522,0v25.4H51.913Zm418.4-71.173c13.67,0,24.573,6.642,30.052,18.264l.719,1.549,23.245-11.511-.609-1.439c-8.025-19.26-28.5-31.27-53.407-31.27-23.134,0-43.611,11.4-50.972,28.447-.123,26.876-.158,23.9,0,24.85,4.7,11.013,14.555,19.37,28.668,24.241a102.033,102.033,0,0,0,19.813,3.984c5.479.72,10.626,1.384,15.829,3.1,6.364,2.1,10.46,5.257,12.84,9.851v9.851c-3.708,7.527-13.781,12.342-25.791,12.342-14.334,0-25.956-6.918-31.933-19.039l-.72-1.494L415.026,280.9l.553,1.439c7.915,19.426,29.609,32.044,55.289,32.044,23.632,0,44.608-11.4,52.3-28.447l.166-25.9-.166-.664c-4.87-11.014-15.219-19.647-28.944-24.241-7.693-2.712-14.335-3.6-20.7-4.427a83.777,83.777,0,0,1-14.832-2.878c-6.31-1.937-10.4-5.092-12.619-9.63v-8.412C449.45,202.427,458.969,197.667,470.315,197.667ZM287.568,311.344h26.067v-68.4H287.568Zm352.266-53.3c-2.933-6.254-8.3-12.01-15.441-16.714A37.99,37.99,0,0,0,637.4,226l.166-25.347-.166-.664C630.038,184,610.667,173.26,589.25,173.26S548.461,184,541.1,199.992l-.166,25.347.166.664a39.643,39.643,0,0,0,13.006,15.331c-7.2,4.7-12.508,10.46-15.441,16.714l-.166,28.889.166.72c7.582,15.994,27.893,26.731,50.585,26.731s43.057-10.737,50.584-26.731l.166-28.89Zm-73.22-50.806c3.6-6.31,12.563-10.516,22.58-10.516s19.038,4.206,22.636,10.516v13.725c-3.542,6.2-12.563,10.349-22.636,10.349s-19.094-4.15-22.58-10.349Zm47.319,72.169c-3.764,6.641-13.338,10.9-24.683,10.9-11.125,0-20.976-4.372-24.684-10.9V263.25c3.708-6.309,13.5-10.515,24.684-10.515,11.345,0,20.919,4.15,24.683,10.515ZM376.4,265.962l-59.827-89.713h-29v40.623h26.51v.387l62.539,94.085H402.3V176.249H376.4Z\"]\n};\nvar faNutritionix = {\n prefix: 'fab',\n iconName: 'nutritionix',\n icon: [400, 512, [], \"f3d6\", \"M88 8.1S221.4-.1 209 112.5c0 0 19.1-74.9 103-40.6 0 0-17.7 74-88 56 0 0 14.6-54.6 66.1-56.6 0 0-39.9-10.3-82.1 48.8 0 0-19.8-94.5-93.6-99.7 0 0 75.2 19.4 77.6 107.5 0 .1-106.4 7-104-119.8zm312 315.6c0 48.5-9.7 95.3-32 132.3-42.2 30.9-105 48-168 48-62.9 0-125.8-17.1-168-48C9.7 419 0 372.2 0 323.7 0 275.3 17.7 229 40 192c42.2-30.9 97.1-48.6 160-48.6 63 0 117.8 17.6 160 48.6 22.3 37 40 83.3 40 131.7zM120 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM192 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM264 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM336 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm24-39.6c-4.8-22.3-7.4-36.9-16-56-38.8-19.9-90.5-32-144-32S94.8 180.1 56 200c-8.8 19.5-11.2 33.9-16 56 42.2-7.9 98.7-14.8 160-14.8s117.8 6.9 160 14.8z\"]\n};\nvar faOctopusDeploy = {\n prefix: 'fab',\n iconName: 'octopus-deploy',\n icon: [512, 512, [], \"e082\", \"M455.6,349.2c-45.891-39.09-36.67-77.877-16.095-128.11C475.16,134.04,415.967,34.14,329.93,8.3,237.04-19.6,134.252,24.341,99.677,117.147a180.862,180.862,0,0,0-10.988,73.544c1.733,29.543,14.717,52.97,24.09,80.3,17.2,50.161-28.1,92.743-66.662,117.582-46.806,30.2-36.319,39.857-8.428,41.858,23.378,1.68,44.478-4.548,65.265-15.045,9.2-4.647,40.687-18.931,45.13-28.588C135.9,413.388,111.122,459.5,126.621,488.9c19.1,36.229,67.112-31.77,76.709-45.812,8.591-12.572,42.963-81.279,63.627-46.926,18.865,31.361,8.6,76.391,35.738,104.622,32.854,34.2,51.155-18.312,51.412-44.221.163-16.411-6.1-95.852,29.9-59.944C405.428,418,436.912,467.8,472.568,463.642c38.736-4.516-22.123-67.967-28.262-78.695,5.393,4.279,53.665,34.128,53.818,9.52C498.234,375.678,468.039,359.8,455.6,349.2Z\"]\n};\nvar faOdnoklassniki = {\n prefix: 'fab',\n iconName: 'odnoklassniki',\n icon: [320, 512, [], \"f263\", \"M275.1 334c-27.4 17.4-65.1 24.3-90 26.9l20.9 20.6 76.3 76.3c27.9 28.6-17.5 73.3-45.7 45.7-19.1-19.4-47.1-47.4-76.3-76.6L84 503.4c-28.2 27.5-73.6-17.6-45.4-45.7 19.4-19.4 47.1-47.4 76.3-76.3l20.6-20.6c-24.6-2.6-62.9-9.1-90.6-26.9-32.6-21-46.9-33.3-34.3-59 7.4-14.6 27.7-26.9 54.6-5.7 0 0 36.3 28.9 94.9 28.9s94.9-28.9 94.9-28.9c26.9-21.1 47.1-8.9 54.6 5.7 12.4 25.7-1.9 38-34.5 59.1zM30.3 129.7C30.3 58 88.6 0 160 0s129.7 58 129.7 129.7c0 71.4-58.3 129.4-129.7 129.4s-129.7-58-129.7-129.4zm66 0c0 35.1 28.6 63.7 63.7 63.7s63.7-28.6 63.7-63.7c0-35.4-28.6-64-63.7-64s-63.7 28.6-63.7 64z\"]\n};\nvar faOdnoklassnikiSquare = {\n prefix: 'fab',\n iconName: 'odnoklassniki-square',\n icon: [448, 512, [], \"f264\", \"M184.2 177.1c0-22.1 17.9-40 39.8-40s39.8 17.9 39.8 40c0 22-17.9 39.8-39.8 39.8s-39.8-17.9-39.8-39.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-305.1 97.1c0 44.6 36.4 80.9 81.1 80.9s81.1-36.2 81.1-80.9c0-44.8-36.4-81.1-81.1-81.1s-81.1 36.2-81.1 81.1zm174.5 90.7c-4.6-9.1-17.3-16.8-34.1-3.6 0 0-22.7 18-59.3 18s-59.3-18-59.3-18c-16.8-13.2-29.5-5.5-34.1 3.6-7.9 16.1 1.1 23.7 21.4 37 17.3 11.1 41.2 15.2 56.6 16.8l-12.9 12.9c-18.2 18-35.5 35.5-47.7 47.7-17.6 17.6 10.7 45.8 28.4 28.6l47.7-47.9c18.2 18.2 35.7 35.7 47.7 47.9 17.6 17.2 46-10.7 28.6-28.6l-47.7-47.7-13-12.9c15.5-1.6 39.1-5.9 56.2-16.8 20.4-13.3 29.3-21 21.5-37z\"]\n};\nvar faOldRepublic = {\n prefix: 'fab',\n iconName: 'old-republic',\n icon: [496, 512, [], \"f510\", \"M235.76 10.23c7.5-.31 15-.28 22.5-.09 3.61.14 7.2.4 10.79.73 4.92.27 9.79 1.03 14.67 1.62 2.93.43 5.83.98 8.75 1.46 7.9 1.33 15.67 3.28 23.39 5.4 12.24 3.47 24.19 7.92 35.76 13.21 26.56 12.24 50.94 29.21 71.63 49.88 20.03 20.09 36.72 43.55 48.89 69.19 1.13 2.59 2.44 5.1 3.47 7.74 2.81 6.43 5.39 12.97 7.58 19.63 4.14 12.33 7.34 24.99 9.42 37.83.57 3.14 1.04 6.3 1.4 9.47.55 3.83.94 7.69 1.18 11.56.83 8.34.84 16.73.77 25.1-.07 4.97-.26 9.94-.75 14.89-.24 3.38-.51 6.76-.98 10.12-.39 2.72-.63 5.46-1.11 8.17-.9 5.15-1.7 10.31-2.87 15.41-4.1 18.5-10.3 36.55-18.51 53.63-15.77 32.83-38.83 62.17-67.12 85.12a246.503 246.503 0 0 1-56.91 34.86c-6.21 2.68-12.46 5.25-18.87 7.41-3.51 1.16-7.01 2.38-10.57 3.39-6.62 1.88-13.29 3.64-20.04 5-4.66.91-9.34 1.73-14.03 2.48-5.25.66-10.5 1.44-15.79 1.74-6.69.66-13.41.84-20.12.81-6.82.03-13.65-.12-20.45-.79-3.29-.23-6.57-.5-9.83-.95-2.72-.39-5.46-.63-8.17-1.11-4.12-.72-8.25-1.37-12.35-2.22-4.25-.94-8.49-1.89-12.69-3.02-8.63-2.17-17.08-5.01-25.41-8.13-10.49-4.12-20.79-8.75-30.64-14.25-2.14-1.15-4.28-2.29-6.35-3.57-11.22-6.58-21.86-14.1-31.92-22.34-34.68-28.41-61.41-66.43-76.35-108.7-3.09-8.74-5.71-17.65-7.8-26.68-1.48-6.16-2.52-12.42-3.58-18.66-.4-2.35-.61-4.73-.95-7.09-.6-3.96-.75-7.96-1.17-11.94-.8-9.47-.71-18.99-.51-28.49.14-3.51.34-7.01.7-10.51.31-3.17.46-6.37.92-9.52.41-2.81.65-5.65 1.16-8.44.7-3.94 1.3-7.9 2.12-11.82 3.43-16.52 8.47-32.73 15.26-48.18 1.15-2.92 2.59-5.72 3.86-8.59 8.05-16.71 17.9-32.56 29.49-47.06 20-25.38 45.1-46.68 73.27-62.47 7.5-4.15 15.16-8.05 23.07-11.37 15.82-6.88 32.41-11.95 49.31-15.38 3.51-.67 7.04-1.24 10.56-1.85 2.62-.47 5.28-.7 7.91-1.08 3.53-.53 7.1-.68 10.65-1.04 2.46-.24 4.91-.36 7.36-.51m8.64 24.41c-9.23.1-18.43.99-27.57 2.23-7.3 1.08-14.53 2.6-21.71 4.3-13.91 3.5-27.48 8.34-40.46 14.42-10.46 4.99-20.59 10.7-30.18 17.22-4.18 2.92-8.4 5.8-12.34 9.03-5.08 3.97-9.98 8.17-14.68 12.59-2.51 2.24-4.81 4.7-7.22 7.06-28.22 28.79-48.44 65.39-57.5 104.69-2.04 8.44-3.54 17.02-4.44 25.65-1.1 8.89-1.44 17.85-1.41 26.8.11 7.14.38 14.28 1.22 21.37.62 7.12 1.87 14.16 3.2 21.18 1.07 4.65 2.03 9.32 3.33 13.91 6.29 23.38 16.5 45.7 30.07 65.75 8.64 12.98 18.78 24.93 29.98 35.77 16.28 15.82 35.05 29.04 55.34 39.22 7.28 3.52 14.66 6.87 22.27 9.63 5.04 1.76 10.06 3.57 15.22 4.98 11.26 3.23 22.77 5.6 34.39 7.06 2.91.29 5.81.61 8.72.9 13.82 1.08 27.74 1 41.54-.43 4.45-.6 8.92-.99 13.35-1.78 3.63-.67 7.28-1.25 10.87-2.1 4.13-.98 8.28-1.91 12.36-3.07 26.5-7.34 51.58-19.71 73.58-36.2 15.78-11.82 29.96-25.76 42.12-41.28 3.26-4.02 6.17-8.31 9.13-12.55 3.39-5.06 6.58-10.25 9.6-15.54 2.4-4.44 4.74-8.91 6.95-13.45 5.69-12.05 10.28-24.62 13.75-37.49 2.59-10.01 4.75-20.16 5.9-30.45 1.77-13.47 1.94-27.1 1.29-40.65-.29-3.89-.67-7.77-1-11.66-2.23-19.08-6.79-37.91-13.82-55.8-5.95-15.13-13.53-29.63-22.61-43.13-12.69-18.8-28.24-35.68-45.97-49.83-25.05-20-54.47-34.55-85.65-42.08-7.78-1.93-15.69-3.34-23.63-4.45-3.91-.59-7.85-.82-11.77-1.24-7.39-.57-14.81-.72-22.22-.58zM139.26 83.53c13.3-8.89 28.08-15.38 43.3-20.18-3.17 1.77-6.44 3.38-9.53 5.29-11.21 6.68-21.52 14.9-30.38 24.49-6.8 7.43-12.76 15.73-17.01 24.89-3.29 6.86-5.64 14.19-6.86 21.71-.93 4.85-1.3 9.81-1.17 14.75.13 13.66 4.44 27.08 11.29 38.82 5.92 10.22 13.63 19.33 22.36 27.26 4.85 4.36 10.24 8.09 14.95 12.6 2.26 2.19 4.49 4.42 6.43 6.91 2.62 3.31 4.89 6.99 5.99 11.1.9 3.02.66 6.2.69 9.31.02 4.1-.04 8.2.03 12.3.14 3.54-.02 7.09.11 10.63.08 2.38.02 4.76.05 7.14.16 5.77.06 11.53.15 17.3.11 2.91.02 5.82.13 8.74.03 1.63.13 3.28-.03 4.91-.91.12-1.82.18-2.73.16-10.99 0-21.88-2.63-31.95-6.93-6-2.7-11.81-5.89-17.09-9.83-5.75-4.19-11.09-8.96-15.79-14.31-6.53-7.24-11.98-15.39-16.62-23.95-1.07-2.03-2.24-4.02-3.18-6.12-1.16-2.64-2.62-5.14-3.67-7.82-4.05-9.68-6.57-19.94-8.08-30.31-.49-4.44-1.09-8.88-1.2-13.35-.7-15.73.84-31.55 4.67-46.82 2.12-8.15 4.77-16.18 8.31-23.83 6.32-14.2 15.34-27.18 26.3-38.19 6.28-6.2 13.13-11.84 20.53-16.67zm175.37-20.12c2.74.74 5.41 1.74 8.09 2.68 6.36 2.33 12.68 4.84 18.71 7.96 13.11 6.44 25.31 14.81 35.82 24.97 10.2 9.95 18.74 21.6 25.14 34.34 1.28 2.75 2.64 5.46 3.81 8.26 6.31 15.1 10 31.26 11.23 47.57.41 4.54.44 9.09.45 13.64.07 11.64-1.49 23.25-4.3 34.53-1.97 7.27-4.35 14.49-7.86 21.18-3.18 6.64-6.68 13.16-10.84 19.24-6.94 10.47-15.6 19.87-25.82 27.22-10.48 7.64-22.64 13.02-35.4 15.38-3.51.69-7.08 1.08-10.66 1.21-1.85.06-3.72.16-5.56-.1-.28-2.15 0-4.31-.01-6.46-.03-3.73.14-7.45.1-11.17.19-7.02.02-14.05.21-21.07.03-2.38-.03-4.76.03-7.14.17-5.07-.04-10.14.14-15.21.1-2.99-.24-6.04.51-8.96.66-2.5 1.78-4.86 3.09-7.08 4.46-7.31 11.06-12.96 17.68-18.26 5.38-4.18 10.47-8.77 15.02-13.84 7.68-8.37 14.17-17.88 18.78-28.27 2.5-5.93 4.52-12.1 5.55-18.46.86-4.37 1.06-8.83 1.01-13.27-.02-7.85-1.4-15.65-3.64-23.17-1.75-5.73-4.27-11.18-7.09-16.45-3.87-6.93-8.65-13.31-13.96-19.2-9.94-10.85-21.75-19.94-34.6-27.1-1.85-1.02-3.84-1.82-5.63-2.97zm-100.8 58.45c.98-1.18 1.99-2.33 3.12-3.38-.61.93-1.27 1.81-1.95 2.68-3.1 3.88-5.54 8.31-7.03 13.06-.87 3.27-1.68 6.6-1.73 10-.07 2.52-.08 5.07.32 7.57 1.13 7.63 4.33 14.85 8.77 21.12 2 2.7 4.25 5.27 6.92 7.33 1.62 1.27 3.53 2.09 5.34 3.05 3.11 1.68 6.32 3.23 9.07 5.48 2.67 2.09 4.55 5.33 4.4 8.79-.01 73.67 0 147.34-.01 221.02 0 1.35-.08 2.7.04 4.04.13 1.48.82 2.83 1.47 4.15.86 1.66 1.78 3.34 3.18 4.62.85.77 1.97 1.4 3.15 1.24 1.5-.2 2.66-1.35 3.45-2.57.96-1.51 1.68-3.16 2.28-4.85.76-2.13.44-4.42.54-6.63.14-4.03-.02-8.06.14-12.09.03-5.89.03-11.77.06-17.66.14-3.62.03-7.24.11-10.86.15-4.03-.02-8.06.14-12.09.03-5.99.03-11.98.07-17.97.14-3.62.02-7.24.11-10.86.14-3.93-.02-7.86.14-11.78.03-5.99.03-11.98.06-17.97.16-3.94-.01-7.88.19-11.82.29 1.44.13 2.92.22 4.38.19 3.61.42 7.23.76 10.84.32 3.44.44 6.89.86 10.32.37 3.1.51 6.22.95 9.31.57 4.09.87 8.21 1.54 12.29 1.46 9.04 2.83 18.11 5.09 26.99 1.13 4.82 2.4 9.61 4 14.3 2.54 7.9 5.72 15.67 10.31 22.62 1.73 2.64 3.87 4.98 6.1 7.21.27.25.55.51.88.71.6.25 1.31-.07 1.7-.57.71-.88 1.17-1.94 1.7-2.93 4.05-7.8 8.18-15.56 12.34-23.31.7-1.31 1.44-2.62 2.56-3.61 1.75-1.57 3.84-2.69 5.98-3.63 2.88-1.22 5.9-2.19 9.03-2.42 6.58-.62 13.11.75 19.56 1.85 3.69.58 7.4 1.17 11.13 1.41 3.74.1 7.48.05 11.21-.28 8.55-.92 16.99-2.96 24.94-6.25 5.3-2.24 10.46-4.83 15.31-7.93 11.46-7.21 21.46-16.57 30.04-27.01 1.17-1.42 2.25-2.9 3.46-4.28-1.2 3.24-2.67 6.37-4.16 9.48-1.25 2.9-2.84 5.61-4.27 8.42-5.16 9.63-11.02 18.91-17.75 27.52-4.03 5.21-8.53 10.05-13.33 14.57-6.64 6.05-14.07 11.37-22.43 14.76-8.21 3.37-17.31 4.63-26.09 3.29-3.56-.58-7.01-1.69-10.41-2.88-2.79-.97-5.39-2.38-8.03-3.69-3.43-1.71-6.64-3.81-9.71-6.08 2.71 3.06 5.69 5.86 8.7 8.61 4.27 3.76 8.74 7.31 13.63 10.23 3.98 2.45 8.29 4.4 12.84 5.51 1.46.37 2.96.46 4.45.6-1.25 1.1-2.63 2.04-3.99 2.98-9.61 6.54-20.01 11.86-30.69 16.43-20.86 8.7-43.17 13.97-65.74 15.34-4.66.24-9.32.36-13.98.36-4.98-.11-9.97-.13-14.92-.65-11.2-.76-22.29-2.73-33.17-5.43-10.35-2.71-20.55-6.12-30.3-10.55-8.71-3.86-17.12-8.42-24.99-13.79-1.83-1.31-3.74-2.53-5.37-4.08 6.6-1.19 13.03-3.39 18.99-6.48 5.74-2.86 10.99-6.66 15.63-11.07 2.24-2.19 4.29-4.59 6.19-7.09-3.43 2.13-6.93 4.15-10.62 5.78-4.41 2.16-9.07 3.77-13.81 5.02-5.73 1.52-11.74 1.73-17.61 1.14-8.13-.95-15.86-4.27-22.51-8.98-4.32-2.94-8.22-6.43-11.96-10.06-9.93-10.16-18.2-21.81-25.66-33.86-3.94-6.27-7.53-12.75-11.12-19.22-1.05-2.04-2.15-4.05-3.18-6.1 2.85 2.92 5.57 5.97 8.43 8.88 8.99 8.97 18.56 17.44 29.16 24.48 7.55 4.9 15.67 9.23 24.56 11.03 3.11.73 6.32.47 9.47.81 2.77.28 5.56.2 8.34.3 5.05.06 10.11.04 15.16-.16 3.65-.16 7.27-.66 10.89-1.09 2.07-.25 4.11-.71 6.14-1.2 3.88-.95 8.11-.96 11.83.61 4.76 1.85 8.44 5.64 11.38 9.71 2.16 3.02 4.06 6.22 5.66 9.58 1.16 2.43 2.46 4.79 3.55 7.26 1 2.24 2.15 4.42 3.42 6.52.67 1.02 1.4 2.15 2.62 2.55 1.06-.75 1.71-1.91 2.28-3.03 2.1-4.16 3.42-8.65 4.89-13.05 2.02-6.59 3.78-13.27 5.19-20.02 2.21-9.25 3.25-18.72 4.54-28.13.56-3.98.83-7.99 1.31-11.97.87-10.64 1.9-21.27 2.24-31.94.08-1.86.24-3.71.25-5.57.01-4.35.25-8.69.22-13.03-.01-2.38-.01-4.76 0-7.13.05-5.07-.2-10.14-.22-15.21-.2-6.61-.71-13.2-1.29-19.78-.73-5.88-1.55-11.78-3.12-17.51-2.05-7.75-5.59-15.03-9.8-21.82-3.16-5.07-6.79-9.88-11.09-14.03-3.88-3.86-8.58-7.08-13.94-8.45-1.5-.41-3.06-.45-4.59-.64.07-2.99.7-5.93 1.26-8.85 1.59-7.71 3.8-15.3 6.76-22.6 1.52-4.03 3.41-7.9 5.39-11.72 3.45-6.56 7.62-12.79 12.46-18.46zm31.27 1.7c.35-.06.71-.12 1.07-.19.19 1.79.09 3.58.1 5.37v38.13c-.01 1.74.13 3.49-.15 5.22-.36-.03-.71-.05-1.06-.05-.95-3.75-1.72-7.55-2.62-11.31-.38-1.53-.58-3.09-1.07-4.59-1.7-.24-3.43-.17-5.15-.2-5.06-.01-10.13 0-15.19-.01-1.66-.01-3.32.09-4.98-.03-.03-.39-.26-.91.16-1.18 1.28-.65 2.72-.88 4.06-1.35 3.43-1.14 6.88-2.16 10.31-3.31 1.39-.48 2.9-.72 4.16-1.54.04-.56.02-1.13-.05-1.68-1.23-.55-2.53-.87-3.81-1.28-3.13-1.03-6.29-1.96-9.41-3.02-1.79-.62-3.67-1-5.41-1.79-.03-.37-.07-.73-.11-1.09 5.09-.19 10.2.06 15.3-.12 3.36-.13 6.73.08 10.09-.07.12-.39.26-.77.37-1.16 1.08-4.94 2.33-9.83 3.39-14.75zm5.97-.2c.36.05.72.12 1.08.2.98 3.85 1.73 7.76 2.71 11.61.36 1.42.56 2.88 1.03 4.27 2.53.18 5.07-.01 7.61.05 5.16.12 10.33.12 15.49.07.76-.01 1.52.03 2.28.08-.04.36-.07.72-.1 1.08-1.82.83-3.78 1.25-5.67 1.89-3.73 1.23-7.48 2.39-11.22 3.57-.57.17-1.12.42-1.67.64-.15.55-.18 1.12-.12 1.69.87.48 1.82.81 2.77 1.09 4.88 1.52 9.73 3.14 14.63 4.6.38.13.78.27 1.13.49.4.27.23.79.15 1.18-1.66.13-3.31.03-4.97.04-5.17.01-10.33-.01-15.5.01-1.61.03-3.22-.02-4.82.21-.52 1.67-.72 3.42-1.17 5.11-.94 3.57-1.52 7.24-2.54 10.78-.36.01-.71.02-1.06.06-.29-1.73-.15-3.48-.15-5.22v-38.13c.02-1.78-.08-3.58.11-5.37zM65.05 168.33c1.12-2.15 2.08-4.4 3.37-6.46-1.82 7.56-2.91 15.27-3.62 23-.8 7.71-.85 15.49-.54 23.23 1.05 19.94 5.54 39.83 14.23 57.88 2.99 5.99 6.35 11.83 10.5 17.11 6.12 7.47 12.53 14.76 19.84 21.09 4.8 4.1 9.99 7.78 15.54 10.8 3.27 1.65 6.51 3.39 9.94 4.68 5.01 2.03 10.19 3.61 15.42 4.94 3.83.96 7.78 1.41 11.52 2.71 5 1.57 9.47 4.61 13.03 8.43 4.93 5.23 8.09 11.87 10.2 18.67.99 2.9 1.59 5.91 2.17 8.92.15.75.22 1.52.16 2.29-6.5 2.78-13.26 5.06-20.26 6.18-4.11.78-8.29.99-12.46 1.08-10.25.24-20.47-1.76-30.12-5.12-3.74-1.42-7.49-2.85-11.03-4.72-8.06-3.84-15.64-8.7-22.46-14.46-2.92-2.55-5.83-5.13-8.4-8.03-9.16-9.83-16.3-21.41-21.79-33.65-2.39-5.55-4.61-11.18-6.37-16.96-1.17-3.94-2.36-7.89-3.26-11.91-.75-2.94-1.22-5.95-1.87-8.92-.46-2.14-.69-4.32-1.03-6.48-.85-5.43-1.28-10.93-1.33-16.43.11-6.18.25-12.37 1.07-18.5.4-2.86.67-5.74 1.15-8.6.98-5.7 2.14-11.37 3.71-16.93 3.09-11.65 7.48-22.95 12.69-33.84zm363.73-6.44c1.1 1.66 1.91 3.48 2.78 5.26 2.1 4.45 4.24 8.9 6.02 13.49 7.61 18.76 12.3 38.79 13.04 59.05.02 1.76.07 3.52.11 5.29.13 9.57-1.27 19.09-3.18 28.45-.73 3.59-1.54 7.17-2.58 10.69-4.04 14.72-10 29-18.41 41.78-8.21 12.57-19.01 23.55-31.84 31.41-5.73 3.59-11.79 6.64-18.05 9.19-5.78 2.19-11.71 4.03-17.8 5.11-6.4 1.05-12.91 1.52-19.4 1.23-7.92-.48-15.78-2.07-23.21-4.85-1.94-.8-3.94-1.46-5.84-2.33-.21-1.51.25-2.99.53-4.46 1.16-5.74 3.03-11.36 5.7-16.58 2.37-4.51 5.52-8.65 9.46-11.9 2.43-2.05 5.24-3.61 8.16-4.83 3.58-1.5 7.47-1.97 11.24-2.83 7.23-1.71 14.37-3.93 21.15-7 10.35-4.65 19.71-11.38 27.65-19.46 1.59-1.61 3.23-3.18 4.74-4.87 3.37-3.76 6.71-7.57 9.85-11.53 7.48-10.07 12.82-21.59 16.71-33.48 1.58-5.3 3.21-10.6 4.21-16.05.63-2.87 1.04-5.78 1.52-8.68.87-6.09 1.59-12.22 1.68-18.38.12-6.65.14-13.32-.53-19.94-.73-7.99-1.87-15.96-3.71-23.78z\"]\n};\nvar faOpencart = {\n prefix: 'fab',\n iconName: 'opencart',\n icon: [640, 512, [], \"f23d\", \"M423.3 440.7c0 25.3-20.3 45.6-45.6 45.6s-45.8-20.3-45.8-45.6 20.6-45.8 45.8-45.8c25.4 0 45.6 20.5 45.6 45.8zm-253.9-45.8c-25.3 0-45.6 20.6-45.6 45.8s20.3 45.6 45.6 45.6 45.8-20.3 45.8-45.6-20.5-45.8-45.8-45.8zm291.7-270C158.9 124.9 81.9 112.1 0 25.7c34.4 51.7 53.3 148.9 373.1 144.2 333.3-5 130 86.1 70.8 188.9 186.7-166.7 319.4-233.9 17.2-233.9z\"]\n};\nvar faOpenid = {\n prefix: 'fab',\n iconName: 'openid',\n icon: [448, 512, [], \"f19b\", \"M271.5 432l-68 32C88.5 453.7 0 392.5 0 318.2c0-71.5 82.5-131 191.7-144.3v43c-71.5 12.5-124 53-124 101.3 0 51 58.5 93.3 135.7 103v-340l68-33.2v384zM448 291l-131.3-28.5 36.8-20.7c-19.5-11.5-43.5-20-70-24.8v-43c46.2 5.5 87.7 19.5 120.3 39.3l35-19.8L448 291z\"]\n};\nvar faOpera = {\n prefix: 'fab',\n iconName: 'opera',\n icon: [496, 512, [], \"f26a\", \"M313.9 32.7c-170.2 0-252.6 223.8-147.5 355.1 36.5 45.4 88.6 75.6 147.5 75.6 36.3 0 70.3-11.1 99.4-30.4-43.8 39.2-101.9 63-165.3 63-3.9 0-8 0-11.9-.3C104.6 489.6 0 381.1 0 248 0 111 111 0 248 0h.8c63.1.3 120.7 24.1 164.4 63.1-29-19.4-63.1-30.4-99.3-30.4zm101.8 397.7c-40.9 24.7-90.7 23.6-132-5.8 56.2-20.5 97.7-91.6 97.7-176.6 0-84.7-41.2-155.8-97.4-176.6 41.8-29.2 91.2-30.3 132.9-5 105.9 98.7 105.5 265.7-1.2 364z\"]\n};\nvar faOptinMonster = {\n prefix: 'fab',\n iconName: 'optin-monster',\n icon: [576, 512, [], \"f23c\", \"M572.6 421.4c5.6-9.5 4.7-15.2-5.4-11.6-3-4.9-7-9.5-11.1-13.8 2.9-9.7-.7-14.2-10.8-9.2-4.6-3.2-10.3-6.5-15.9-9.2 0-15.1-11.6-11.6-17.6-5.7-10.4-1.5-18.7-.3-26.8 5.7.3-6.5.3-13 .3-19.7 12.6 0 40.2-11 45.9-36.2 1.4-6.8 1.6-13.8-.3-21.9-3-13.5-14.3-21.3-25.1-25.7-.8-5.9-7.6-14.3-14.9-15.9s-12.4 4.9-14.1 10.3c-8.5 0-19.2 2.8-21.1 8.4-5.4-.5-11.1-1.4-16.8-1.9 2.7-1.9 5.4-3.5 8.4-4.6 5.4-9.2 14.6-11.4 25.7-11.6V256c19.5-.5 43-5.9 53.8-18.1 12.7-13.8 14.6-37.3 12.4-55.1-2.4-17.3-9.7-37.6-24.6-48.1-8.4-5.9-21.6-.8-22.7 9.5-2.2 19.6 1.2 30-38.6 25.1-10.3-23.8-24.6-44.6-42.7-60C341 49.6 242.9 55.5 166.4 71.7c19.7 4.6 41.1 8.6 59.7 16.5-26.2 2.4-52.7 11.3-76.2 23.2-32.8 17-44 29.9-56.7 42.4 14.9-2.2 28.9-5.1 43.8-3.8-9.7 5.4-18.4 12.2-26.5 20-25.8.9-23.8-5.3-26.2-25.9-1.1-10.5-14.3-15.4-22.7-9.7-28.1 19.9-33.5 79.9-12.2 103.5 10.8 12.2 35.1 17.3 54.9 17.8-.3 1.1-.3 1.9-.3 2.7 10.8.5 19.5 2.7 24.6 11.6 3 1.1 5.7 2.7 8.1 4.6-5.4.5-11.1 1.4-16.5 1.9-3.3-6.6-13.7-8.1-21.1-8.1-1.6-5.7-6.5-12.2-14.1-10.3-6.8 1.9-14.1 10-14.9 15.9-22.5 9.5-30.1 26.8-25.1 47.6 5.3 24.8 33 36.2 45.9 36.2v19.7c-6.6-5-14.3-7.5-26.8-5.7-5.5-5.5-17.3-10.1-17.3 5.7-5.9 2.7-11.4 5.9-15.9 9.2-9.8-4.9-13.6-1.7-11.1 9.2-4.1 4.3-7.8 8.6-11.1 13.8-10.2-3.7-11 2.2-5.4 11.6-1.1 3.5-1.6 7-1.9 10.8-.5 31.6 44.6 64 73.5 65.1 17.3.5 34.6-8.4 43-23.5 113.2 4.9 226.7 4.1 340.2 0 8.1 15.1 25.4 24.3 42.7 23.5 29.2-1.1 74.3-33.5 73.5-65.1.2-3.7-.7-7.2-1.7-10.7zm-73.8-254c1.1-3 2.4-8.4 2.4-14.6 0-5.9 6.8-8.1 14.1-.8 11.1 11.6 14.9 40.5 13.8 51.1-4.1-13.6-13-29-30.3-35.7zm-4.6 6.7c19.5 6.2 28.6 27.6 29.7 48.9-1.1 2.7-3 5.4-4.9 7.6-5.7 5.9-15.4 10-26.2 12.2 4.3-21.3.3-47.3-12.7-63 4.9-.8 10.9-2.4 14.1-5.7zm-24.1 6.8c13.8 11.9 20 39.2 14.1 63.5-4.1.5-8.1.8-11.6.8-1.9-21.9-6.8-44-14.3-64.6 3.7.3 8.1.3 11.8.3zM47.5 203c-1.1-10.5 2.4-39.5 13.8-51.1 7-7.3 14.1-5.1 14.1.8 0 6.2 1.4 11.6 2.4 14.6-17.3 6.8-26.2 22.2-30.3 35.7zm9.7 27.6c-1.9-2.2-3.5-4.9-4.9-7.6 1.4-21.3 10.3-42.7 29.7-48.9 3.2 3.2 9.2 4.9 14.1 5.7-13 15.7-17 41.6-12.7 63-10.8-2.2-20.5-6-26.2-12.2zm47.9 14.6c-4.1 0-8.1-.3-12.7-.8-4.6-18.6-1.9-38.9 5.4-53v.3l12.2-5.1c4.9-1.9 9.7-3.8 14.9-4.9-10.7 19.7-17.4 41.3-19.8 63.5zm184-162.7c41.9 0 76.2 34 76.2 75.9 0 42.2-34.3 76.2-76.2 76.2s-76.2-34-76.2-76.2c0-41.8 34.3-75.9 76.2-75.9zm115.6 174.3c-.3 17.8-7 48.9-23 57-13.2 6.6-6.5-7.5-16.5-58.1 13.3.3 26.6.3 39.5 1.1zm-54-1.6c.8 4.9 3.8 40.3-1.6 41.9-11.6 3.5-40 4.3-51.1-1.1-4.1-3-4.6-35.9-4.3-41.1v.3c18.9-.3 38.1-.3 57 0zM278.3 309c-13 3.5-41.6 4.1-54.6-1.6-6.5-2.7-3.8-42.4-1.9-51.6 19.2-.5 38.4-.5 57.8-.8v.3c1.1 8.3 3.3 51.2-1.3 53.7zm-106.5-51.1c12.2-.8 24.6-1.4 36.8-1.6-2.4 15.4-3 43.5-4.9 52.2-1.1 6.8-4.3 6.8-9.7 4.3-21.9-9.8-27.6-35.2-22.2-54.9zm-35.4 31.3c7.8-1.1 15.7-1.9 23.5-2.7 1.6 6.2 3.8 11.9 7 17.6 10 17 44 35.7 45.1 7 6.2 14.9 40.8 12.2 54.9 10.8 15.7-1.4 23.8-1.4 26.8-14.3 12.4 4.3 30.8 4.1 44 3 11.3-.8 20.8-.5 24.6-8.9 1.1 5.1 1.9 11.6 4.6 16.8 10.8 21.3 37.3 1.4 46.8-31.6 8.6.8 17.6 1.9 26.5 2.7-.4 1.3-3.8 7.3 7.3 11.6-47.6 47-95.7 87.8-163.2 107-63.2-20.8-112.1-59.5-155.9-106.5 9.6-3.4 10.4-8.8 8-12.5zm-21.6 172.5c-3.8 17.8-21.9 29.7-39.7 28.9-19.2-.8-46.5-17-59.2-36.5-2.7-31.1 43.8-61.3 66.2-54.6 14.9 4.3 27.8 30.8 33.5 54 0 3-.3 5.7-.8 8.2zm-8.7-66c-.5-13.5-.5-27-.3-40.5h.3c2.7-1.6 5.7-3.8 7.8-6.5 6.5-1.6 13-5.1 15.1-9.2 3.3-7.1-7-7.5-5.4-12.4 2.7-1.1 5.7-2.2 7.8-3.5 29.2 29.2 58.6 56.5 97.3 77-36.8 11.3-72.4 27.6-105.9 47-1.2-18.6-7.7-35.9-16.7-51.9zm337.6 64.6c-103 3.5-206.2 4.1-309.4 0 0 .3 0 .3-.3.3v-.3h.3c35.1-21.6 72.2-39.2 112.4-50.8 11.6 5.1 23 9.5 34.9 13.2 2.2.8 2.2.8 4.3 0 14.3-4.1 28.4-9.2 42.2-15.4 41.5 11.7 78.8 31.7 115.6 53zm10.5-12.4c-35.9-19.5-73-35.9-111.9-47.6 38.1-20 71.9-47.3 103.5-76.7 2.2 1.4 4.6 2.4 7.6 3.2 0 .8.3 1.9.5 2.4-4.6 2.7-7.8 6.2-5.9 10.3 2.2 3.8 8.6 7.6 15.1 8.9 2.4 2.7 5.1 5.1 8.1 6.8 0 13.8-.3 27.6-.8 41.3l.3-.3c-9.3 15.9-15.5 37-16.5 51.7zm105.9 6.2c-12.7 19.5-40 35.7-59.2 36.5-19.3.9-40.5-13.2-40.5-37 5.7-23.2 18.9-49.7 33.5-54 22.7-6.9 69.2 23.4 66.2 54.5zM372.9 75.2c-3.8-72.1-100.8-79.7-126-23.5 44.6-24.3 90.3-15.7 126 23.5zM74.8 407.1c-15.7 1.6-49.5 25.4-49.5 43.2 0 11.6 15.7 19.5 32.2 14.9 12.2-3.2 31.1-17.6 35.9-27.3 6-11.6-3.7-32.7-18.6-30.8zm215.9-176.2c28.6 0 51.9-21.6 51.9-48.4 0-36.1-40.5-58.1-72.2-44.3 9.5 3 16.5 11.6 16.5 21.6 0 23.3-33.3 32-46.5 11.3-7.3 34.1 19.4 59.8 50.3 59.8zM68 474.1c.5 6.5 12.2 12.7 21.6 9.5 6.8-2.7 14.6-10.5 17.3-16.2 3-7-1.1-20-9.7-18.4-8.9 1.6-29.7 16.7-29.2 25.1zm433.2-67c-14.9-1.9-24.6 19.2-18.9 30.8 4.9 9.7 24.1 24.1 36.2 27.3 16.5 4.6 32.2-3.2 32.2-14.9 0-17.8-33.8-41.6-49.5-43.2zM478.8 449c-8.4-1.6-12.4 11.3-9.5 18.4 2.4 5.7 10.3 13.5 17.3 16.2 9.2 3.2 21.1-3 21.3-9.5.9-8.4-20.2-23.5-29.1-25.1z\"]\n};\nvar faOrcid = {\n prefix: 'fab',\n iconName: 'orcid',\n icon: [512, 512, [], \"f8d2\", \"M294.75 188.19h-45.92V342h47.47c67.62 0 83.12-51.34 83.12-76.91 0-41.64-26.54-76.9-84.67-76.9zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-80.79 360.76h-29.84v-207.5h29.84zm-14.92-231.14a19.57 19.57 0 1 1 19.57-19.57 19.64 19.64 0 0 1-19.57 19.57zM300 369h-81V161.26h80.6c76.73 0 110.44 54.83 110.44 103.85C410 318.39 368.38 369 300 369z\"]\n};\nvar faOsi = {\n prefix: 'fab',\n iconName: 'osi',\n icon: [512, 512, [], \"f41a\", \"M8 266.44C10.3 130.64 105.4 34 221.8 18.34c138.8-18.6 255.6 75.8 278 201.1 21.3 118.8-44 230-151.6 274-9.3 3.8-14.4 1.7-18-7.7q-26.7-69.45-53.4-139c-3.1-8.1-1-13.2 7-16.8 24.2-11 39.3-29.4 43.3-55.8a71.47 71.47 0 0 0-64.5-82.2c-39-3.4-71.8 23.7-77.5 59.7-5.2 33 11.1 63.7 41.9 77.7 9.6 4.4 11.5 8.6 7.8 18.4q-26.85 69.9-53.7 139.9c-2.6 6.9-8.3 9.3-15.5 6.5-52.6-20.3-101.4-61-130.8-119-24.9-49.2-25.2-87.7-26.8-108.7zm20.9-1.9c.4 6.6.6 14.3 1.3 22.1 6.3 71.9 49.6 143.5 131 183.1 3.2 1.5 4.4.8 5.6-2.3q22.35-58.65 45-117.3c1.3-3.3.6-4.8-2.4-6.7-31.6-19.9-47.3-48.5-45.6-86 1-21.6 9.3-40.5 23.8-56.3 30-32.7 77-39.8 115.5-17.6a91.64 91.64 0 0 1 45.2 90.4c-3.6 30.6-19.3 53.9-45.7 69.8-2.7 1.6-3.5 2.9-2.3 6q22.8 58.8 45.2 117.7c1.2 3.1 2.4 3.8 5.6 2.3 35.5-16.6 65.2-40.3 88.1-72 34.8-48.2 49.1-101.9 42.3-161-13.7-117.5-119.4-214.8-255.5-198-106.1 13-195.3 102.5-197.1 225.8z\"]\n};\nvar faPage4 = {\n prefix: 'fab',\n iconName: 'page4',\n icon: [496, 512, [], \"f3d7\", \"M248 504C111 504 0 393 0 256S111 8 248 8c20.9 0 41.3 2.6 60.7 7.5L42.3 392H248v112zm0-143.6V146.8L98.6 360.4H248zm96 31.6v92.7c45.7-19.2 84.5-51.7 111.4-92.7H344zm57.4-138.2l-21.2 8.4 21.2 8.3v-16.7zm-20.3 54.5c-6.7 0-8 6.3-8 12.9v7.7h16.2v-10c0-5.9-2.3-10.6-8.2-10.6zM496 256c0 37.3-8.2 72.7-23 104.4H344V27.3C433.3 64.8 496 153.1 496 256zM360.4 143.6h68.2V96h-13.9v32.6h-13.9V99h-13.9v29.6h-12.7V96h-13.9v47.6zm68.1 185.3H402v-11c0-15.4-5.6-25.2-20.9-25.2-15.4 0-20.7 10.6-20.7 25.9v25.3h68.2v-15zm0-103l-68.2 29.7V268l68.2 29.5v-16.6l-14.4-5.7v-26.5l14.4-5.9v-16.9zm-4.8-68.5h-35.6V184H402v-12.2h11c8.6 15.8 1.3 35.3-18.6 35.3-22.5 0-28.3-25.3-15.5-37.7l-11.6-10.6c-16.2 17.5-12.2 63.9 27.1 63.9 34 0 44.7-35.9 29.3-65.3z\"]\n};\nvar faPagelines = {\n prefix: 'fab',\n iconName: 'pagelines',\n icon: [384, 512, [], \"f18c\", \"M384 312.7c-55.1 136.7-187.1 54-187.1 54-40.5 81.8-107.4 134.4-184.6 134.7-16.1 0-16.6-24.4 0-24.4 64.4-.3 120.5-42.7 157.2-110.1-41.1 15.9-118.6 27.9-161.6-82.2 109-44.9 159.1 11.2 178.3 45.5 9.9-24.4 17-50.9 21.6-79.7 0 0-139.7 21.9-149.5-98.1 119.1-47.9 152.6 76.7 152.6 76.7 1.6-16.7 3.3-52.6 3.3-53.4 0 0-106.3-73.7-38.1-165.2 124.6 43 61.4 162.4 61.4 162.4.5 1.6.5 23.8 0 33.4 0 0 45.2-89 136.4-57.5-4.2 134-141.9 106.4-141.9 106.4-4.4 27.4-11.2 53.4-20 77.5 0 0 83-91.8 172-20z\"]\n};\nvar faPalfed = {\n prefix: 'fab',\n iconName: 'palfed',\n icon: [576, 512, [], \"f3d8\", \"M384.9 193.9c0-47.4-55.2-44.2-95.4-29.8-1.3 39.4-2.5 80.7-3 119.8.7 2.8 2.6 6.2 15.1 6.2 36.8 0 83.4-42.8 83.3-96.2zm-194.5 72.2c.2 0 6.5-2.7 11.2-2.7 26.6 0 20.7 44.1-14.4 44.1-21.5 0-37.1-18.1-37.1-43 0-42 42.9-95.6 100.7-126.5 1-12.4 3-22 10.5-28.2 11.2-9 26.6-3.5 29.5 11.1 72.2-22.2 135.2 1 135.2 72 0 77.9-79.3 152.6-140.1 138.2-.1 39.4.9 74.4 2.7 100v.2c.2 3.4.6 12.5-5.3 19.1-9.6 10.6-33.4 10-36.4-22.3-4.1-44.4.2-206.1 1.4-242.5-21.5 15-58.5 50.3-58.5 75.9.2 2.5.4 4 .6 4.6zM8 181.1s-.1 37.4 38.4 37.4h30l22.4 217.2s0 44.3 44.7 44.3h288.9s44.7-.4 44.7-44.3l22.4-217.2h30s38.4 1.2 38.4-37.4c0 0 .1-37.4-38.4-37.4h-30.1c-7.3-25.6-30.2-74.3-119.4-74.3h-28V50.3s-2.7-18.4-21.1-18.4h-85.8s-21.1 0-21.1 18.4v19.1h-28.1s-105 4.2-120.5 74.3h-29S8 142.5 8 181.1z\"]\n};\nvar faPatreon = {\n prefix: 'fab',\n iconName: 'patreon',\n icon: [512, 512, [], \"f3d9\", \"M512 194.8c0 101.3-82.4 183.8-183.8 183.8-101.7 0-184.4-82.4-184.4-183.8 0-101.6 82.7-184.3 184.4-184.3C429.6 10.5 512 93.2 512 194.8zM0 501.5h90v-491H0v491z\"]\n};\nvar faPaypal = {\n prefix: 'fab',\n iconName: 'paypal',\n icon: [384, 512, [], \"f1ed\", \"M111.4 295.9c-3.5 19.2-17.4 108.7-21.5 134-.3 1.8-1 2.5-3 2.5H12.3c-7.6 0-13.1-6.6-12.1-13.9L58.8 46.6c1.5-9.6 10.1-16.9 20-16.9 152.3 0 165.1-3.7 204 11.4 60.1 23.3 65.6 79.5 44 140.3-21.5 62.6-72.5 89.5-140.1 90.3-43.4.7-69.5-7-75.3 24.2zM357.1 152c-1.8-1.3-2.5-1.8-3 1.3-2 11.4-5.1 22.5-8.8 33.6-39.9 113.8-150.5 103.9-204.5 103.9-6.1 0-10.1 3.3-10.9 9.4-22.6 140.4-27.1 169.7-27.1 169.7-1 7.1 3.5 12.9 10.6 12.9h63.5c8.6 0 15.7-6.3 17.4-14.9.7-5.4-1.1 6.1 14.4-91.3 4.6-22 14.3-19.7 29.3-19.7 71 0 126.4-28.8 142.9-112.3 6.5-34.8 4.6-71.4-23.8-92.6z\"]\n};\nvar faPennyArcade = {\n prefix: 'fab',\n iconName: 'penny-arcade',\n icon: [640, 512, [], \"f704\", \"M421.91 164.27c-4.49 19.45-1.4 6.06-15.1 65.29l39.73-10.61c-22.34-49.61-17.29-38.41-24.63-54.68zm-206.09 51.11c-20.19 5.4-11.31 3.03-39.63 10.58l4.46 46.19c28.17-7.59 20.62-5.57 34.82-9.34 42.3-9.79 32.85-56.42.35-47.43zm326.16-26.19l-45.47-99.2c-5.69-12.37-19.46-18.84-32.62-15.33-70.27 18.75-38.72 10.32-135.59 36.23a27.618 27.618 0 0 0-18.89 17.41C144.26 113.27 0 153.75 0 226.67c0 33.5 30.67 67.11 80.9 95.37l1.74 17.88a27.891 27.891 0 0 0-17.77 28.67l4.3 44.48c1.39 14.31 13.43 25.21 27.8 25.2 5.18-.01-3.01 1.78 122.53-31.76 12.57-3.37 21.12-15.02 20.58-28.02 216.59 45.5 401.99-5.98 399.89-84.83.01-28.15-22.19-66.56-97.99-104.47zM255.14 298.3l-21.91 5.88-48.44 12.91 2.46 23.55 20.53-5.51 4.51 44.51-115.31 30.78-4.3-44.52 20.02-5.35-11.11-114.64-20.12 5.39-4.35-44.5c178.15-47.54 170.18-46.42 186.22-46.65 56.66-1.13 64.15 71.84 42.55 104.43a86.7 86.7 0 0 1-50.75 33.72zm199.18 16.62l-3.89-39.49 14.9-3.98-6.61-14.68-57.76 15.42-4.1 17.54 19.2-5.12 4.05 39.54-112.85 30.07-4.46-44.43 20.99-5.59 33.08-126.47-17.15 4.56-4.2-44.48c93.36-24.99 65.01-17.41 135.59-36.24l66.67 145.47 20.79-5.56 4.3 44.48-108.55 28.96z\"]\n};\nvar faPerbyte = {\n prefix: 'fab',\n iconName: 'perbyte',\n icon: [448, 512, [], \"e083\", \"M305.314,284.578H246.6V383.3h58.711q24.423,0,38.193-13.77t13.77-36.11q0-21.826-14.032-35.335T305.314,284.578ZM149.435,128.7H90.724v98.723h58.711q24.42,0,38.19-13.773t13.77-36.107q0-21.826-14.029-35.338T149.435,128.7ZM366.647,32H81.353A81.445,81.445,0,0,0,0,113.352V398.647A81.445,81.445,0,0,0,81.353,480H366.647A81.445,81.445,0,0,0,448,398.647V113.352A81.445,81.445,0,0,0,366.647,32Zm63.635,366.647a63.706,63.706,0,0,1-63.635,63.635H81.353a63.706,63.706,0,0,1-63.635-63.635V113.352A63.706,63.706,0,0,1,81.353,49.718H366.647a63.706,63.706,0,0,1,63.635,63.634ZM305.314,128.7H246.6v98.723h58.711q24.423,0,38.193-13.773t13.77-36.107q0-21.826-14.032-35.338T305.314,128.7Z\"]\n};\nvar faPeriscope = {\n prefix: 'fab',\n iconName: 'periscope',\n icon: [448, 512, [], \"f3da\", \"M370 63.6C331.4 22.6 280.5 0 226.6 0 111.9 0 18.5 96.2 18.5 214.4c0 75.1 57.8 159.8 82.7 192.7C137.8 455.5 192.6 512 226.6 512c41.6 0 112.9-94.2 120.9-105 24.6-33.1 82-118.3 82-192.6 0-56.5-21.1-110.1-59.5-150.8zM226.6 493.9c-42.5 0-190-167.3-190-279.4 0-107.4 83.9-196.3 190-196.3 100.8 0 184.7 89 184.7 196.3.1 112.1-147.4 279.4-184.7 279.4zM338 206.8c0 59.1-51.1 109.7-110.8 109.7-100.6 0-150.7-108.2-92.9-181.8v.4c0 24.5 20.1 44.4 44.8 44.4 24.7 0 44.8-19.9 44.8-44.4 0-18.2-11.1-33.8-26.9-40.7 76.6-19.2 141 39.3 141 112.4z\"]\n};\nvar faPhabricator = {\n prefix: 'fab',\n iconName: 'phabricator',\n icon: [496, 512, [], \"f3db\", \"M323 262.1l-.1-13s21.7-19.8 21.1-21.2l-9.5-20c-.6-1.4-29.5-.5-29.5-.5l-9.4-9.3s.2-28.5-1.2-29.1l-20.1-9.2c-1.4-.6-20.7 21-20.7 21l-13.1-.2s-20.5-21.4-21.9-20.8l-20 8.3c-1.4.5.2 28.9.2 28.9l-9.1 9.1s-29.2-.9-29.7.4l-8.1 19.8c-.6 1.4 21 21 21 21l.1 12.9s-21.7 19.8-21.1 21.2l9.5 20c.6 1.4 29.5.5 29.5.5l9.4 9.3s-.2 31.8 1.2 32.3l20.1 8.3c1.4.6 20.7-23.5 20.7-23.5l13.1.2s20.5 23.8 21.8 23.3l20-7.5c1.4-.6-.2-32.1-.2-32.1l9.1-9.1s29.2.9 29.7-.5l8.1-19.8c.7-1.1-20.9-20.7-20.9-20.7zm-44.9-8.7c.7 17.1-12.8 31.6-30.1 32.4-17.3.8-32.1-12.5-32.8-29.6-.7-17.1 12.8-31.6 30.1-32.3 17.3-.8 32.1 12.5 32.8 29.5zm201.2-37.9l-97-97-.1.1c-75.1-73.3-195.4-72.8-269.8 1.6-50.9 51-27.8 27.9-95.7 95.3-22.3 22.3-22.3 58.7 0 81 69.9 69.4 46.4 46 97.4 97l.1-.1c75.1 73.3 195.4 72.9 269.8-1.6 51-50.9 27.9-27.9 95.3-95.3 22.3-22.3 22.3-58.7 0-81zM140.4 363.8c-59.6-59.5-59.6-156 0-215.5 59.5-59.6 156-59.5 215.6 0 59.5 59.5 59.6 156 0 215.6-59.6 59.5-156 59.4-215.6-.1z\"]\n};\nvar faPhoenixFramework = {\n prefix: 'fab',\n iconName: 'phoenix-framework',\n icon: [640, 512, [], \"f3dc\", \"M212.9 344.3c3.8-.1 22.8-1.4 25.6-2.2-2.4-2.6-43.6-1-68-49.6-4.3-8.6-7.5-17.6-6.4-27.6 2.9-25.5 32.9-30 52-18.5 36 21.6 63.3 91.3 113.7 97.5 37 4.5 84.6-17 108.2-45.4-.6-.1-.8-.2-1-.1-.4.1-.8.2-1.1.3-33.3 12.1-94.3 9.7-134.7-14.8-37.6-22.8-53.1-58.7-51.8-74.6 1.8-21.3 22.9-23.2 35.9-19.6 14.4 3.9 24.4 17.6 38.9 27.4 15.6 10.4 32.9 13.7 51.3 10.3 14.9-2.7 34.4-12.3 36.5-14.5-1.1-.1-1.8-.1-2.5-.2-6.2-.6-12.4-.8-18.5-1.7C279.8 194.5 262.1 47.4 138.5 37.9 94.2 34.5 39.1 46 2.2 72.9c-.8.6-1.5 1.2-2.2 1.8.1.2.1.3.2.5.8 0 1.6-.1 2.4-.2 6.3-1 12.5-.8 18.7.3 23.8 4.3 47.7 23.1 55.9 76.5 5.3 34.3-.7 50.8 8 86.1 19 77.1 91 107.6 127.7 106.4zM75.3 64.9c-.9-1-.9-1.2-1.3-2 12.1-2.6 24.2-4.1 36.6-4.8-1.1 14.7-22.2 21.3-35.3 6.8zm196.9 350.5c-42.8 1.2-92-26.7-123.5-61.4-4.6-5-16.8-20.2-18.6-23.4l.4-.4c6.6 4.1 25.7 18.6 54.8 27 24.2 7 48.1 6.3 71.6-3.3 22.7-9.3 41-.5 43.1 2.9-18.5 3.8-20.1 4.4-24 7.9-5.1 4.4-4.6 11.7 7 17.2 26.2 12.4 63-2.8 97.2 25.4 2.4 2 8.1 7.8 10.1 10.7-.1.2-.3.3-.4.5-4.8-1.5-16.4-7.5-40.2-9.3-24.7-2-46.3 5.3-77.5 6.2zm174.8-252c16.4-5.2 41.3-13.4 66.5-3.3 16.1 6.5 26.2 18.7 32.1 34.6 3.5 9.4 5.1 19.7 5.1 28.7-.2 0-.4 0-.6.1-.2-.4-.4-.9-.5-1.3-5-22-29.9-43.8-67.6-29.9-50.2 18.6-130.4 9.7-176.9-48-.7-.9-2.4-1.7-1.3-3.2.1-.2 2.1.6 3 1.3 18.1 13.4 38.3 21.9 60.3 26.2 30.5 6.1 54.6 2.9 79.9-5.2zm102.7 117.5c-32.4.2-33.8 50.1-103.6 64.4-18.2 3.7-38.7 4.6-44.9 4.2v-.4c2.8-1.5 14.7-2.6 29.7-16.6 7.9-7.3 15.3-15.1 22.8-22.9 19.5-20.2 41.4-42.2 81.9-39 23.1 1.8 29.3 8.2 36.1 12.7.3.2.4.5.7.9-.5 0-.7.1-.9 0-7-2.7-14.3-3.3-21.8-3.3zm-12.3-24.1c-.1.2-.1.4-.2.6-28.9-4.4-48-7.9-68.5 4-17 9.9-31.4 20.5-62 24.4-27.1 3.4-45.1 2.4-66.1-8-.3-.2-.6-.4-1-.6 0-.2.1-.3.1-.5 24.9 3.8 36.4 5.1 55.5-5.8 22.3-12.9 40.1-26.6 71.3-31 29.6-4.1 51.3 2.5 70.9 16.9zM268.6 97.3c-.6-.6-1.1-1.2-2.1-2.3 7.6 0 29.7-1.2 53.4 8.4 19.7 8 32.2 21 50.2 32.9 11.1 7.3 23.4 9.3 36.4 8.1 4.3-.4 8.5-1.2 12.8-1.7.4-.1.9 0 1.5.3-.6.4-1.2.9-1.8 1.2-8.1 4-16.7 6.3-25.6 7.1-26.1 2.6-50.3-3.7-73.4-15.4-19.3-9.9-36.4-22.9-51.4-38.6zM640 335.7c-3.5 3.1-22.7 11.6-42.7 5.3-12.3-3.9-19.5-14.9-31.6-24.1-10-7.6-20.9-7.9-28.1-8.4.6-.8.9-1.2 1.2-1.4 14.8-9.2 30.5-12.2 47.3-6.5 12.5 4.2 19.2 13.5 30.4 24.2 10.8 10.4 21 9.9 23.1 10.5.1-.1.2 0 .4.4zm-212.5 137c2.2 1.2 1.6 1.5 1.5 2-18.5-1.4-33.9-7.6-46.8-22.2-21.8-24.7-41.7-27.9-48.6-29.7.5-.2.8-.4 1.1-.4 13.1.1 26.1.7 38.9 3.9 25.3 6.4 35 25.4 41.6 35.3 3.2 4.8 7.3 8.3 12.3 11.1z\"]\n};\nvar faPhoenixSquadron = {\n prefix: 'fab',\n iconName: 'phoenix-squadron',\n icon: [512, 512, [], \"f511\", \"M96 63.38C142.49 27.25 201.55 7.31 260.51 8.81c29.58-.38 59.11 5.37 86.91 15.33-24.13-4.63-49-6.34-73.38-2.45C231.17 27 191 48.84 162.21 80.87c5.67-1 10.78-3.67 16-5.86 18.14-7.87 37.49-13.26 57.23-14.83 19.74-2.13 39.64-.43 59.28 1.92-14.42 2.79-29.12 4.57-43 9.59-34.43 11.07-65.27 33.16-86.3 62.63-13.8 19.71-23.63 42.86-24.67 67.13-.35 16.49 5.22 34.81 19.83 44a53.27 53.27 0 0 0 37.52 6.74c15.45-2.46 30.07-8.64 43.6-16.33 11.52-6.82 22.67-14.55 32-24.25 3.79-3.22 2.53-8.45 2.62-12.79-2.12-.34-4.38-1.11-6.3.3a203 203 0 0 1-35.82 15.37c-20 6.17-42.16 8.46-62.1.78 12.79 1.73 26.06.31 37.74-5.44 20.23-9.72 36.81-25.2 54.44-38.77a526.57 526.57 0 0 1 88.9-55.31c25.71-12 52.94-22.78 81.57-24.12-15.63 13.72-32.15 26.52-46.78 41.38-14.51 14-27.46 29.5-40.11 45.18-3.52 4.6-8.95 6.94-13.58 10.16a150.7 150.7 0 0 0-51.89 60.1c-9.33 19.68-14.5 41.85-11.77 63.65 1.94 13.69 8.71 27.59 20.9 34.91 12.9 8 29.05 8.07 43.48 5.1 32.8-7.45 61.43-28.89 81-55.84 20.44-27.52 30.52-62.2 29.16-96.35-.52-7.5-1.57-15-1.66-22.49 8 19.48 14.82 39.71 16.65 60.83 2 14.28.75 28.76-1.62 42.9-1.91 11-5.67 21.51-7.78 32.43a165 165 0 0 0 39.34-81.07 183.64 183.64 0 0 0-14.21-104.64c20.78 32 32.34 69.58 35.71 107.48.49 12.73.49 25.51 0 38.23A243.21 243.21 0 0 1 482 371.34c-26.12 47.34-68 85.63-117.19 108-78.29 36.23-174.68 31.32-248-14.68A248.34 248.34 0 0 1 25.36 366 238.34 238.34 0 0 1 0 273.08v-31.34C3.93 172 40.87 105.82 96 63.38m222 80.33a79.13 79.13 0 0 0 16-4.48c5-1.77 9.24-5.94 10.32-11.22-8.96 4.99-17.98 9.92-26.32 15.7z\"]\n};\nvar faPhp = {\n prefix: 'fab',\n iconName: 'php',\n icon: [640, 512, [], \"f457\", \"M320 104.5c171.4 0 303.2 72.2 303.2 151.5S491.3 407.5 320 407.5c-171.4 0-303.2-72.2-303.2-151.5S148.7 104.5 320 104.5m0-16.8C143.3 87.7 0 163 0 256s143.3 168.3 320 168.3S640 349 640 256 496.7 87.7 320 87.7zM218.2 242.5c-7.9 40.5-35.8 36.3-70.1 36.3l13.7-70.6c38 0 63.8-4.1 56.4 34.3zM97.4 350.3h36.7l8.7-44.8c41.1 0 66.6 3 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7h-70.7L97.4 350.3zm185.7-213.6h36.5l-8.7 44.8c31.5 0 60.7-2.3 74.8 10.7 14.8 13.6 7.7 31-8.3 113.1h-37c15.4-79.4 18.3-86 12.7-92-5.4-5.8-17.7-4.6-47.4-4.6l-18.8 96.6h-36.5l32.7-168.6zM505 242.5c-8 41.1-36.7 36.3-70.1 36.3l13.7-70.6c38.2 0 63.8-4.1 56.4 34.3zM384.2 350.3H421l8.7-44.8c43.2 0 67.1 2.5 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7H417l-32.8 168.7z\"]\n};\nvar faPiedPiper = {\n prefix: 'fab',\n iconName: 'pied-piper',\n icon: [480, 512, [], \"f2ae\", \"M455.93,23.2C429.23,30,387.79,51.69,341.35,90.66A206,206,0,0,0,240,64C125.13,64,32,157.12,32,272s93.13,208,208,208,208-93.13,208-208a207.25,207.25,0,0,0-58.75-144.81,155.35,155.35,0,0,0-17,27.4A176.16,176.16,0,0,1,417.1,272c0,97.66-79.44,177.11-177.09,177.11a175.81,175.81,0,0,1-87.63-23.4c82.94-107.33,150.79-37.77,184.31-226.65,5.79-32.62,28-94.26,126.23-160.18C471,33.45,465.35,20.8,455.93,23.2ZM125,406.4A176.66,176.66,0,0,1,62.9,272C62.9,174.34,142.35,94.9,240,94.9a174,174,0,0,1,76.63,17.75C250.64,174.76,189.77,265.52,125,406.4Z\"]\n};\nvar faPiedPiperAlt = {\n prefix: 'fab',\n iconName: 'pied-piper-alt',\n icon: [576, 512, [], \"f1a8\", \"M244 246c-3.2-2-6.3-2.9-10.1-2.9-6.6 0-12.6 3.2-19.3 3.7l1.7 4.9zm135.9 197.9c-19 0-64.1 9.5-79.9 19.8l6.9 45.1c35.7 6.1 70.1 3.6 106-9.8-4.8-10-23.5-55.1-33-55.1zM340.8 177c6.6 2.8 11.5 9.2 22.7 22.1 2-1.4 7.5-5.2 7.5-8.6 0-4.9-11.8-13.2-13.2-23 11.2-5.7 25.2-6 37.6-8.9 68.1-16.4 116.3-52.9 146.8-116.7C548.3 29.3 554 16.1 554.6 2l-2 2.6c-28.4 50-33 63.2-81.3 100-31.9 24.4-69.2 40.2-106.6 54.6l-6.3-.3v-21.8c-19.6 1.6-19.7-14.6-31.6-23-18.7 20.6-31.6 40.8-58.9 51.1-12.7 4.8-19.6 10-25.9 21.8 34.9-16.4 91.2-13.5 98.8-10zM555.5 0l-.6 1.1-.3.9.6-.6zm-59.2 382.1c-33.9-56.9-75.3-118.4-150-115.5l-.3-6c-1.1-13.5 32.8 3.2 35.1-31l-14.4 7.2c-19.8-45.7-8.6-54.3-65.5-54.3-14.7 0-26.7 1.7-41.4 4.6 2.9 18.6 2.2 36.7-10.9 50.3l19.5 5.5c-1.7 3.2-2.9 6.3-2.9 9.8 0 21 42.8 2.9 42.8 33.6 0 18.4-36.8 60.1-54.9 60.1-8 0-53.7-50-53.4-60.1l.3-4.6 52.3-11.5c13-2.6 12.3-22.7-2.9-22.7-3.7 0-43.1 9.2-49.4 10.6-2-5.2-7.5-14.1-13.8-14.1-3.2 0-6.3 3.2-9.5 4-9.2 2.6-31 2.9-21.5 20.1L15.9 298.5c-5.5 1.1-8.9 6.3-8.9 11.8 0 6 5.5 10.9 11.5 10.9 8 0 131.3-28.4 147.4-32.2 2.6 3.2 4.6 6.3 7.8 8.6 20.1 14.4 59.8 85.9 76.4 85.9 24.1 0 58-22.4 71.3-41.9 3.2-4.3 6.9-7.5 12.4-6.9.6 13.8-31.6 34.2-33 43.7-1.4 10.2-1 35.2-.3 41.1 26.7 8.1 52-3.6 77.9-2.9 4.3-21 10.6-41.9 9.8-63.5l-.3-9.5c-1.4-34.2-10.9-38.5-34.8-58.6-1.1-1.1-2.6-2.6-3.7-4 2.2-1.4 1.1-1 4.6-1.7 88.5 0 56.3 183.6 111.5 229.9 33.1-15 72.5-27.9 103.5-47.2-29-25.6-52.6-45.7-72.7-79.9zm-196.2 46.1v27.2l11.8-3.4-2.9-23.8zm-68.7-150.4l24.1 61.2 21-13.8-31.3-50.9zm84.4 154.9l2 12.4c9-1.5 58.4-6.6 58.4-14.1 0-1.4-.6-3.2-.9-4.6-26.8 0-36.9 3.8-59.5 6.3z\"]\n};\nvar faPiedPiperHat = {\n prefix: 'fab',\n iconName: 'pied-piper-hat',\n icon: [640, 512, [], \"f4e5\", \"M640 24.9c-80.8 53.6-89.4 92.5-96.4 104.4-6.7 12.2-11.7 60.3-23.3 83.6-11.7 23.6-54.2 42.2-66.1 50-11.7 7.8-28.3 38.1-41.9 64.2-108.1-4.4-167.4 38.8-259.2 93.6 29.4-9.7 43.3-16.7 43.3-16.7 94.2-36 139.3-68.3 281.1-49.2 1.1 0 1.9.6 2.8.8 3.9 2.2 5.3 6.9 3.1 10.8l-53.9 95.8c-2.5 4.7-7.8 7.2-13.1 6.1-126.8-23.8-226.9 17.3-318.9 18.6C24.1 488 0 453.4 0 451.8c0-1.1.6-1.7 1.7-1.7 0 0 38.3 0 103.1-15.3C178.4 294.5 244 245.4 315.4 245.4c0 0 71.7 0 90.6 61.9 22.8-39.7 28.3-49.2 28.3-49.2 5.3-9.4 35-77.2 86.4-141.4 51.5-64 90.4-79.9 119.3-91.8z\"]\n};\nvar faPiedPiperPp = {\n prefix: 'fab',\n iconName: 'pied-piper-pp',\n icon: [448, 512, [], \"f1a7\", \"M205.3 174.6c0 21.1-14.2 38.1-31.7 38.1-7.1 0-12.8-1.2-17.2-3.7v-68c4.4-2.7 10.1-4.2 17.2-4.2 17.5 0 31.7 16.9 31.7 37.8zm52.6 67c-7.1 0-12.8 1.5-17.2 4.2v68c4.4 2.5 10.1 3.7 17.2 3.7 17.4 0 31.7-16.9 31.7-37.8 0-21.1-14.3-38.1-31.7-38.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM185 255.1c41 0 74.2-35.6 74.2-79.6 0-44-33.2-79.6-74.2-79.6-12 0-24.1 3.2-34.6 8.8h-45.7V311l51.8-10.1v-50.6c8.6 3.1 18.1 4.8 28.5 4.8zm158.4 25.3c0-44-33.2-79.6-73.9-79.6-3.2 0-6.4.2-9.6.7-3.7 12.5-10.1 23.8-19.2 33.4-13.8 15-32.2 23.8-51.8 24.8V416l51.8-10.1v-50.6c8.6 3.2 18.2 4.7 28.7 4.7 40.8 0 74-35.6 74-79.6z\"]\n};\nvar faPiedPiperSquare = {\n prefix: 'fab',\n iconName: 'pied-piper-square',\n icon: [448, 512, [], \"e01e\", \"M32 419L0 479.2l.8-328C.8 85.3 54 32 120 32h327.2c-93 28.9-189.9 94.2-253.9 168.6C122.7 282 82.6 338 32 419M448 32S305.2 98.8 261.6 199.1c-23.2 53.6-28.9 118.1-71 158.6-28.9 27.8-69.8 38.2-105.3 56.3-23.2 12-66.4 40.5-84.9 66h328.4c66 0 119.3-53.3 119.3-119.2-.1 0-.1-328.8-.1-328.8z\"]\n};\nvar faPinterest = {\n prefix: 'fab',\n iconName: 'pinterest',\n icon: [496, 512, [], \"f0d2\", \"M496 256c0 137-111 248-248 248-25.6 0-50.2-3.9-73.4-11.1 10.1-16.5 25.2-43.5 30.8-65 3-11.6 15.4-59 15.4-59 8.1 15.4 31.7 28.5 56.8 28.5 74.8 0 128.7-68.8 128.7-154.3 0-81.9-66.9-143.2-152.9-143.2-107 0-163.9 71.8-163.9 150.1 0 36.4 19.4 81.7 50.3 96.1 4.7 2.2 7.2 1.2 8.3-3.3.8-3.4 5-20.3 6.9-28.1.6-2.5.3-4.7-1.7-7.1-10.1-12.5-18.3-35.3-18.3-56.6 0-54.7 41.4-107.6 112-107.6 60.9 0 103.6 41.5 103.6 100.9 0 67.1-33.9 113.6-78 113.6-24.3 0-42.6-20.1-36.7-44.8 7-29.5 20.5-61.3 20.5-82.6 0-19-10.2-34.9-31.4-34.9-24.9 0-44.9 25.7-44.9 60.2 0 22 7.4 36.8 7.4 36.8s-24.5 103.8-29 123.2c-5 21.4-3 51.6-.9 71.2C65.4 450.9 0 361.1 0 256 0 119 111 8 248 8s248 111 248 248z\"]\n};\nvar faPinterestP = {\n prefix: 'fab',\n iconName: 'pinterest-p',\n icon: [384, 512, [], \"f231\", \"M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.6 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z\"]\n};\nvar faPinterestSquare = {\n prefix: 'fab',\n iconName: 'pinterest-square',\n icon: [448, 512, [], \"f0d3\", \"M448 80v352c0 26.5-21.5 48-48 48H154.4c9.8-16.4 22.4-40 27.4-59.3 3-11.5 15.3-58.4 15.3-58.4 8 15.3 31.4 28.2 56.3 28.2 74.1 0 127.4-68.1 127.4-152.7 0-81.1-66.2-141.8-151.4-141.8-106 0-162.2 71.1-162.2 148.6 0 36 19.2 80.8 49.8 95.1 4.7 2.2 7.1 1.2 8.2-3.3.8-3.4 5-20.1 6.8-27.8.6-2.5.3-4.6-1.7-7-10.1-12.3-18.3-34.9-18.3-56 0-54.2 41-106.6 110.9-106.6 60.3 0 102.6 41.1 102.6 99.9 0 66.4-33.5 112.4-77.2 112.4-24.1 0-42.1-19.9-36.4-44.4 6.9-29.2 20.3-60.7 20.3-81.8 0-53-75.5-45.7-75.5 25 0 21.7 7.3 36.5 7.3 36.5-31.4 132.8-36.1 134.5-29.6 192.6l2.2.8H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48z\"]\n};\nvar faPlaystation = {\n prefix: 'fab',\n iconName: 'playstation',\n icon: [576, 512, [], \"f3df\", \"M570.9 372.3c-11.3 14.2-38.8 24.3-38.8 24.3L327 470.2v-54.3l150.9-53.8c17.1-6.1 19.8-14.8 5.8-19.4-13.9-4.6-39.1-3.3-56.2 2.9L327 381.1v-56.4c23.2-7.8 47.1-13.6 75.7-16.8 40.9-4.5 90.9.6 130.2 15.5 44.2 14 49.2 34.7 38 48.9zm-224.4-92.5v-139c0-16.3-3-31.3-18.3-35.6-11.7-3.8-19 7.1-19 23.4v347.9l-93.8-29.8V32c39.9 7.4 98 24.9 129.2 35.4C424.1 94.7 451 128.7 451 205.2c0 74.5-46 102.8-104.5 74.6zM43.2 410.2c-45.4-12.8-53-39.5-32.3-54.8 19.1-14.2 51.7-24.9 51.7-24.9l134.5-47.8v54.5l-96.8 34.6c-17.1 6.1-19.7 14.8-5.8 19.4 13.9 4.6 39.1 3.3 56.2-2.9l46.4-16.9v48.8c-51.6 9.3-101.4 7.3-153.9-10z\"]\n};\nvar faProductHunt = {\n prefix: 'fab',\n iconName: 'product-hunt',\n icon: [512, 512, [], \"f288\", \"M326.3 218.8c0 20.5-16.7 37.2-37.2 37.2h-70.3v-74.4h70.3c20.5 0 37.2 16.7 37.2 37.2zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-128.1-37.2c0-47.9-38.9-86.8-86.8-86.8H169.2v248h49.6v-74.4h70.3c47.9 0 86.8-38.9 86.8-86.8z\"]\n};\nvar faPushed = {\n prefix: 'fab',\n iconName: 'pushed',\n icon: [432, 512, [], \"f3e1\", \"M407 111.9l-98.5-9 14-33.4c10.4-23.5-10.8-40.4-28.7-37L22.5 76.9c-15.1 2.7-26 18.3-21.4 36.6l105.1 348.3c6.5 21.3 36.7 24.2 47.7 7l35.3-80.8 235.2-231.3c16.4-16.8 4.3-42.9-17.4-44.8zM297.6 53.6c5.1-.7 7.5 2.5 5.2 7.4L286 100.9 108.6 84.6l189-31zM22.7 107.9c-3.1-5.1 1-10 6.1-9.1l248.7 22.7-96.9 230.7L22.7 107.9zM136 456.4c-2.6 4-7.9 3.1-9.4-1.2L43.5 179.7l127.7 197.6c-7 15-35.2 79.1-35.2 79.1zm272.8-314.5L210.1 337.3l89.7-213.7 106.4 9.7c4 1.1 5.7 5.3 2.6 8.6z\"]\n};\nvar faPython = {\n prefix: 'fab',\n iconName: 'python',\n icon: [448, 512, [], \"f3e2\", \"M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z\"]\n};\nvar faQq = {\n prefix: 'fab',\n iconName: 'qq',\n icon: [448, 512, [], \"f1d6\", \"M433.754 420.445c-11.526 1.393-44.86-52.741-44.86-52.741 0 31.345-16.136 72.247-51.051 101.786 16.842 5.192 54.843 19.167 45.803 34.421-7.316 12.343-125.51 7.881-159.632 4.037-34.122 3.844-152.316 8.306-159.632-4.037-9.045-15.25 28.918-29.214 45.783-34.415-34.92-29.539-51.059-70.445-51.059-101.792 0 0-33.334 54.134-44.859 52.741-5.37-.65-12.424-29.644 9.347-99.704 10.261-33.024 21.995-60.478 40.144-105.779C60.683 98.063 108.982.006 224 0c113.737.006 163.156 96.133 160.264 214.963 18.118 45.223 29.912 72.85 40.144 105.778 21.768 70.06 14.716 99.053 9.346 99.704z\"]\n};\nvar faQuinscape = {\n prefix: 'fab',\n iconName: 'quinscape',\n icon: [512, 512, [], \"f459\", \"M313.6 474.6h-1a158.1 158.1 0 0 1 0-316.2c94.9 0 168.2 83.1 157 176.6 4 5.1 8.2 9.6 11.2 15.3 13.4-30.3 20.3-62.4 20.3-97.7C501.1 117.5 391.6 8 256.5 8S12 117.5 12 252.6s109.5 244.6 244.5 244.6a237.36 237.36 0 0 0 70.4-10.1c-5.2-3.5-8.9-8.1-13.3-12.5zm-.1-.1l.4.1zm78.4-168.9a99.2 99.2 0 1 0 99.2 99.2 99.18 99.18 0 0 0-99.2-99.2z\"]\n};\nvar faQuora = {\n prefix: 'fab',\n iconName: 'quora',\n icon: [448, 512, [], \"f2c4\", \"M440.5 386.7h-29.3c-1.5 13.5-10.5 30.8-33 30.8-20.5 0-35.3-14.2-49.5-35.8 44.2-34.2 74.7-87.5 74.7-153C403.5 111.2 306.8 32 205 32 105.3 32 7.3 111.7 7.3 228.7c0 134.1 131.3 221.6 249 189C276 451.3 302 480 351.5 480c81.8 0 90.8-75.3 89-93.3zM297 329.2C277.5 300 253.3 277 205.5 277c-30.5 0-54.3 10-69 22.8l12.2 24.3c6.2-3 13-4 19.8-4 35.5 0 53.7 30.8 69.2 61.3-10 3-20.7 4.2-32.7 4.2-75 0-107.5-53-107.5-156.7C97.5 124.5 130 71 205 71c76.2 0 108.7 53.5 108.7 157.7.1 41.8-5.4 75.6-16.7 100.5z\"]\n};\nvar faRProject = {\n prefix: 'fab',\n iconName: 'r-project',\n icon: [581, 512, [], \"f4f7\", \"M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z\"]\n};\nvar faRaspberryPi = {\n prefix: 'fab',\n iconName: 'raspberry-pi',\n icon: [407, 512, [], \"f7bb\", \"M372 232.5l-3.7-6.5c.1-46.4-21.4-65.3-46.5-79.7 7.6-2 15.4-3.6 17.6-13.2 13.1-3.3 15.8-9.4 17.1-15.8 3.4-2.3 14.8-8.7 13.6-19.7 6.4-4.4 10-10.1 8.1-18.1 6.9-7.5 8.7-13.7 5.8-19.4 8.3-10.3 4.6-15.6 1.1-20.9 6.2-11.2.7-23.2-16.6-21.2-6.9-10.1-21.9-7.8-24.2-7.8-2.6-3.2-6-6-16.5-4.7-6.8-6.1-14.4-5-22.3-2.1-9.3-7.3-15.5-1.4-22.6.8C271.6.6 269 5.5 263.5 7.6c-12.3-2.6-16.1 3-22 8.9l-6.9-.1c-18.6 10.8-27.8 32.8-31.1 44.1-3.3-11.3-12.5-33.3-31.1-44.1l-6.9.1c-5.9-5.9-9.7-11.5-22-8.9-5.6-2-8.1-7-19.4-3.4-4.6-1.4-8.9-4.4-13.9-4.3-2.6.1-5.5 1-8.7 3.5-7.9-3-15.5-4-22.3 2.1-10.5-1.3-14 1.4-16.5 4.7-2.3 0-17.3-2.3-24.2 7.8C21.2 16 15.8 28 22 39.2c-3.5 5.4-7.2 10.7 1.1 20.9-2.9 5.7-1.1 11.9 5.8 19.4-1.8 8 1.8 13.7 8.1 18.1-1.2 11 10.2 17.4 13.6 19.7 1.3 6.4 4 12.4 17.1 15.8 2.2 9.5 10 11.2 17.6 13.2-25.1 14.4-46.6 33.3-46.5 79.7l-3.7 6.5c-28.8 17.2-54.7 72.7-14.2 117.7 2.6 14.1 7.1 24.2 11 35.4 5.9 45.2 44.5 66.3 54.6 68.8 14.9 11.2 30.8 21.8 52.2 29.2C159 504.2 181 512 203 512h1c22.1 0 44-7.8 64.2-28.4 21.5-7.4 37.3-18 52.2-29.2 10.2-2.5 48.7-23.6 54.6-68.8 3.9-11.2 8.4-21.3 11-35.4 40.6-45.1 14.7-100.5-14-117.7zm-22.2-8c-1.5 18.7-98.9-65.1-82.1-67.9 45.7-7.5 83.6 19.2 82.1 67.9zm-43 93.1c-24.5 15.8-59.8 5.6-78.8-22.8s-14.6-64.2 9.9-80c24.5-15.8 59.8-5.6 78.8 22.8s14.6 64.2-9.9 80zM238.9 29.3c.8 4.2 1.8 6.8 2.9 7.6 5.4-5.8 9.8-11.7 16.8-17.3 0 3.3-1.7 6.8 2.5 9.4 3.7-5 8.8-9.5 15.5-13.3-3.2 5.6-.6 7.3 1.2 9.6 5.1-4.4 10-8.8 19.4-12.3-2.6 3.1-6.2 6.2-2.4 9.8 5.3-3.3 10.6-6.6 23.1-8.9-2.8 3.1-8.7 6.3-5.1 9.4 6.6-2.5 14-4.4 22.1-5.4-3.9 3.2-7.1 6.3-3.9 8.8 7.1-2.2 16.9-5.1 26.4-2.6l-6 6.1c-.7.8 14.1.6 23.9.8-3.6 5-7.2 9.7-9.3 18.2 1 1 5.8.4 10.4 0-4.7 9.9-12.8 12.3-14.7 16.6 2.9 2.2 6.8 1.6 11.2.1-3.4 6.9-10.4 11.7-16 17.3 1.4 1 3.9 1.6 9.7.9-5.2 5.5-11.4 10.5-18.8 15 1.3 1.5 5.8 1.5 10 1.6-6.7 6.5-15.3 9.9-23.4 14.2 4 2.7 6.9 2.1 10 2.1-5.7 4.7-15.4 7.1-24.4 10 1.7 2.7 3.4 3.4 7.1 4.1-9.5 5.3-23.2 2.9-27 5.6.9 2.7 3.6 4.4 6.7 5.8-15.4.9-57.3-.6-65.4-32.3 15.7-17.3 44.4-37.5 93.7-62.6-38.4 12.8-73 30-102 53.5-34.3-15.9-10.8-55.9 5.8-71.8zm-34.4 114.6c24.2-.3 54.1 17.8 54 34.7-.1 15-21 27.1-53.8 26.9-32.1-.4-53.7-15.2-53.6-29.8 0-11.9 26.2-32.5 53.4-31.8zm-123-12.8c3.7-.7 5.4-1.5 7.1-4.1-9-2.8-18.7-5.3-24.4-10 3.1 0 6 .7 10-2.1-8.1-4.3-16.7-7.7-23.4-14.2 4.2-.1 8.7 0 10-1.6-7.4-4.5-13.6-9.5-18.8-15 5.8.7 8.3.1 9.7-.9-5.6-5.6-12.7-10.4-16-17.3 4.3 1.5 8.3 2 11.2-.1-1.9-4.2-10-6.7-14.7-16.6 4.6.4 9.4 1 10.4 0-2.1-8.5-5.8-13.3-9.3-18.2 9.8-.1 24.6 0 23.9-.8l-6-6.1c9.5-2.5 19.3.4 26.4 2.6 3.2-2.5-.1-5.6-3.9-8.8 8.1 1.1 15.4 2.9 22.1 5.4 3.5-3.1-2.3-6.3-5.1-9.4 12.5 2.3 17.8 5.6 23.1 8.9 3.8-3.6.2-6.7-2.4-9.8 9.4 3.4 14.3 7.9 19.4 12.3 1.7-2.3 4.4-4 1.2-9.6 6.7 3.8 11.8 8.3 15.5 13.3 4.1-2.6 2.5-6.2 2.5-9.4 7 5.6 11.4 11.5 16.8 17.3 1.1-.8 2-3.4 2.9-7.6 16.6 15.9 40.1 55.9 6 71.8-29-23.5-63.6-40.7-102-53.5 49.3 25 78 45.3 93.7 62.6-8 31.8-50 33.2-65.4 32.3 3.1-1.4 5.8-3.2 6.7-5.8-4-2.8-17.6-.4-27.2-5.6zm60.1 24.1c16.8 2.8-80.6 86.5-82.1 67.9-1.5-48.7 36.5-75.5 82.1-67.9zM38.2 342c-23.7-18.8-31.3-73.7 12.6-98.3 26.5-7 9 107.8-12.6 98.3zm91 98.2c-13.3 7.9-45.8 4.7-68.8-27.9-15.5-27.4-13.5-55.2-2.6-63.4 16.3-9.8 41.5 3.4 60.9 25.6 16.9 20 24.6 55.3 10.5 65.7zm-26.4-119.7c-24.5-15.8-28.9-51.6-9.9-80s54.3-38.6 78.8-22.8 28.9 51.6 9.9 80c-19.1 28.4-54.4 38.6-78.8 22.8zM205 496c-29.4 1.2-58.2-23.7-57.8-32.3-.4-12.7 35.8-22.6 59.3-22 23.7-1 55.6 7.5 55.7 18.9.5 11-28.8 35.9-57.2 35.4zm58.9-124.9c.2 29.7-26.2 53.8-58.8 54-32.6.2-59.2-23.8-59.4-53.4v-.6c-.2-29.7 26.2-53.8 58.8-54 32.6-.2 59.2 23.8 59.4 53.4v.6zm82.2 42.7c-25.3 34.6-59.6 35.9-72.3 26.3-13.3-12.4-3.2-50.9 15.1-72 20.9-23.3 43.3-38.5 58.9-26.6 10.5 10.3 16.7 49.1-1.7 72.3zm22.9-73.2c-21.5 9.4-39-105.3-12.6-98.3 43.9 24.7 36.3 79.6 12.6 98.3z\"]\n};\nvar faRavelry = {\n prefix: 'fab',\n iconName: 'ravelry',\n icon: [512, 512, [], \"f2d9\", \"M498.252,234.223c-1.208-10.34-1.7-20.826-3.746-31a310.306,310.306,0,0,0-9.622-36.6,184.068,184.068,0,0,0-30.874-57.5,251.154,251.154,0,0,0-18.818-21.689,237.362,237.362,0,0,0-47.113-36.116A240.8,240.8,0,0,0,331.356,26.65c-11.018-3.1-22.272-5.431-33.515-7.615-6.78-1.314-13.749-1.667-20.627-2.482-.316-.036-.6-.358-.9-.553q-16.143.009-32.288.006c-2.41.389-4.808.925-7.236,1.15a179.331,179.331,0,0,0-34.256,7.1,221.5,221.5,0,0,0-39.768,16.355,281.385,281.385,0,0,0-38.08,24.158c-6.167,4.61-12.268,9.36-17.974,14.518C96.539,88.494,86.34,97.72,76.785,107.555a243.878,243.878,0,0,0-33.648,43.95,206.488,206.488,0,0,0-20.494,44.6,198.2,198.2,0,0,0-7.691,34.759A201.13,201.13,0,0,0,13.4,266.385a299.716,299.716,0,0,0,4.425,40.24,226.865,226.865,0,0,0,16.73,53.3,210.543,210.543,0,0,0,24,39.528,213.589,213.589,0,0,0,26.358,28.416A251.313,251.313,0,0,0,126.7,458.455a287.831,287.831,0,0,0,55.9,25.277,269.5,269.5,0,0,0,40.641,9.835c6.071,1.01,12.275,1.253,18.412,1.873a4.149,4.149,0,0,1,1.19.56h32.289c2.507-.389,5-.937,7.527-1.143,16.336-1.332,32.107-5.335,47.489-10.717A219.992,219.992,0,0,0,379.1,460.322c9.749-6.447,19.395-13.077,28.737-20.1,5.785-4.348,10.988-9.5,16.3-14.457,3.964-3.7,7.764-7.578,11.51-11.5a232.162,232.162,0,0,0,31.427-41.639c9.542-16.045,17.355-32.905,22.3-50.926,2.859-10.413,4.947-21.045,7.017-31.652,1.032-5.279,1.251-10.723,1.87-16.087.036-.317.358-.6.552-.9V236.005A9.757,9.757,0,0,1,498.252,234.223Zm-161.117-1.15s-16.572-2.98-28.47-2.98c-27.2,0-33.57,14.9-33.57,37.04V360.8H201.582V170.062H275.1v31.931c8.924-26.822,26.771-36.189,62.04-36.189Z\"]\n};\nvar faReact = {\n prefix: 'fab',\n iconName: 'react',\n icon: [512, 512, [], \"f41b\", \"M418.2 177.2c-5.4-1.8-10.8-3.5-16.2-5.1.9-3.7 1.7-7.4 2.5-11.1 12.3-59.6 4.2-107.5-23.1-123.3-26.3-15.1-69.2.6-112.6 38.4-4.3 3.7-8.5 7.6-12.5 11.5-2.7-2.6-5.5-5.2-8.3-7.7-45.5-40.4-91.1-57.4-118.4-41.5-26.2 15.2-34 60.3-23 116.7 1.1 5.6 2.3 11.1 3.7 16.7-6.4 1.8-12.7 3.8-18.6 5.9C38.3 196.2 0 225.4 0 255.6c0 31.2 40.8 62.5 96.3 81.5 4.5 1.5 9 3 13.6 4.3-1.5 6-2.8 11.9-4 18-10.5 55.5-2.3 99.5 23.9 114.6 27 15.6 72.4-.4 116.6-39.1 3.5-3.1 7-6.3 10.5-9.7 4.4 4.3 9 8.4 13.6 12.4 42.8 36.8 85.1 51.7 111.2 36.6 27-15.6 35.8-62.9 24.4-120.5-.9-4.4-1.9-8.9-3-13.5 3.2-.9 6.3-1.9 9.4-2.9 57.7-19.1 99.5-50 99.5-81.7 0-30.3-39.4-59.7-93.8-78.4zM282.9 92.3c37.2-32.4 71.9-45.1 87.7-36 16.9 9.7 23.4 48.9 12.8 100.4-.7 3.4-1.4 6.7-2.3 10-22.2-5-44.7-8.6-67.3-10.6-13-18.6-27.2-36.4-42.6-53.1 3.9-3.7 7.7-7.2 11.7-10.7zM167.2 307.5c5.1 8.7 10.3 17.4 15.8 25.9-15.6-1.7-31.1-4.2-46.4-7.5 4.4-14.4 9.9-29.3 16.3-44.5 4.6 8.8 9.3 17.5 14.3 26.1zm-30.3-120.3c14.4-3.2 29.7-5.8 45.6-7.8-5.3 8.3-10.5 16.8-15.4 25.4-4.9 8.5-9.7 17.2-14.2 26-6.3-14.9-11.6-29.5-16-43.6zm27.4 68.9c6.6-13.8 13.8-27.3 21.4-40.6s15.8-26.2 24.4-38.9c15-1.1 30.3-1.7 45.9-1.7s31 .6 45.9 1.7c8.5 12.6 16.6 25.5 24.3 38.7s14.9 26.7 21.7 40.4c-6.7 13.8-13.9 27.4-21.6 40.8-7.6 13.3-15.7 26.2-24.2 39-14.9 1.1-30.4 1.6-46.1 1.6s-30.9-.5-45.6-1.4c-8.7-12.7-16.9-25.7-24.6-39s-14.8-26.8-21.5-40.6zm180.6 51.2c5.1-8.8 9.9-17.7 14.6-26.7 6.4 14.5 12 29.2 16.9 44.3-15.5 3.5-31.2 6.2-47 8 5.4-8.4 10.5-17 15.5-25.6zm14.4-76.5c-4.7-8.8-9.5-17.6-14.5-26.2-4.9-8.5-10-16.9-15.3-25.2 16.1 2 31.5 4.7 45.9 8-4.6 14.8-10 29.2-16.1 43.4zM256.2 118.3c10.5 11.4 20.4 23.4 29.6 35.8-19.8-.9-39.7-.9-59.5 0 9.8-12.9 19.9-24.9 29.9-35.8zM140.2 57c16.8-9.8 54.1 4.2 93.4 39 2.5 2.2 5 4.6 7.6 7-15.5 16.7-29.8 34.5-42.9 53.1-22.6 2-45 5.5-67.2 10.4-1.3-5.1-2.4-10.3-3.5-15.5-9.4-48.4-3.2-84.9 12.6-94zm-24.5 263.6c-4.2-1.2-8.3-2.5-12.4-3.9-21.3-6.7-45.5-17.3-63-31.2-10.1-7-16.9-17.8-18.8-29.9 0-18.3 31.6-41.7 77.2-57.6 5.7-2 11.5-3.8 17.3-5.5 6.8 21.7 15 43 24.5 63.6-9.6 20.9-17.9 42.5-24.8 64.5zm116.6 98c-16.5 15.1-35.6 27.1-56.4 35.3-11.1 5.3-23.9 5.8-35.3 1.3-15.9-9.2-22.5-44.5-13.5-92 1.1-5.6 2.3-11.2 3.7-16.7 22.4 4.8 45 8.1 67.9 9.8 13.2 18.7 27.7 36.6 43.2 53.4-3.2 3.1-6.4 6.1-9.6 8.9zm24.5-24.3c-10.2-11-20.4-23.2-30.3-36.3 9.6.4 19.5.6 29.5.6 10.3 0 20.4-.2 30.4-.7-9.2 12.7-19.1 24.8-29.6 36.4zm130.7 30c-.9 12.2-6.9 23.6-16.5 31.3-15.9 9.2-49.8-2.8-86.4-34.2-4.2-3.6-8.4-7.5-12.7-11.5 15.3-16.9 29.4-34.8 42.2-53.6 22.9-1.9 45.7-5.4 68.2-10.5 1 4.1 1.9 8.2 2.7 12.2 4.9 21.6 5.7 44.1 2.5 66.3zm18.2-107.5c-2.8.9-5.6 1.8-8.5 2.6-7-21.8-15.6-43.1-25.5-63.8 9.6-20.4 17.7-41.4 24.5-62.9 5.2 1.5 10.2 3.1 15 4.7 46.6 16 79.3 39.8 79.3 58 0 19.6-34.9 44.9-84.8 61.4zm-149.7-15c25.3 0 45.8-20.5 45.8-45.8s-20.5-45.8-45.8-45.8c-25.3 0-45.8 20.5-45.8 45.8s20.5 45.8 45.8 45.8z\"]\n};\nvar faReacteurope = {\n prefix: 'fab',\n iconName: 'reacteurope',\n icon: [576, 512, [], \"f75d\", \"M250.6 211.74l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm63.7 0l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.2-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm-91.3 50.5h-3.4c-4.8 0-3.8 4-3.8 12.1 0 4.7-2.3 6.1-5.8 6.1s-5.8-1.4-5.8-6.1v-36.6c0-4.7 2.3-6.1 5.8-6.1s5.8 1.4 5.8 6.1c0 7.2-.7 10.5 3.8 10.5h3.4c4.7-.1 3.8-3.9 3.8-12.3 0-9.9-6.7-14.1-16.8-14.1h-.2c-10.1 0-16.8 4.2-16.8 14.1V276c0 10.4 6.7 14.1 16.8 14.1h.2c10.1 0 16.8-3.8 16.8-14.1 0-9.86 1.1-13.76-3.8-13.76zm-80.7 17.4h-14.7v-19.3H139c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-11.4v-18.3H142c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-21.7c-2.4-.1-3.7 1.3-3.7 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h21.9c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8zm-42-18.5c4.6-2 7.3-6 7.3-12.4v-11.9c0-10.1-6.7-14.1-16.8-14.1H77.4c-2.5 0-3.8 1.3-3.8 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5 0 3.8-1.3 3.8-3.8v-22.9h5.6l7.4 23.5a4.1 4.1 0 0 0 4.3 3.2h3.3c2.8 0 4-1.8 3.2-4.4zm-3.8-14c0 4.8-2.5 6.1-6.1 6.1h-5.8v-20.9h5.8c3.6 0 6.1 1.3 6.1 6.1zM176 226a3.82 3.82 0 0 0-4.2-3.4h-6.9a3.68 3.68 0 0 0-4 3.4l-11 59.2c-.5 2.7.9 4.1 3.4 4.1h3a3.74 3.74 0 0 0 4.1-3.5l1.8-11.3h12.2l1.8 11.3a3.74 3.74 0 0 0 4.1 3.5h3.5c2.6 0 3.9-1.4 3.4-4.1zm-12.3 39.3l4.7-29.7 4.7 29.7zm89.3 20.2v-53.2h7.5c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-25.8c-2.5 0-3.8 1.3-3.8 3.8v2.1c0 2.5 1.3 3.8 3.8 3.8h7.3v53.2c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5.04 3.8-1.3 3.8-3.76zm248-.8h-19.4V258h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9H501a1.81 1.81 0 0 0 2-1.9v-.8a1.84 1.84 0 0 0-2-1.96zm-93.1-62.9h-.8c-10.1 0-15.3 4.7-15.3 14.1V276c0 9.3 5.2 14.1 15.3 14.1h.8c10.1 0 15.3-4.8 15.3-14.1v-40.1c0-9.36-5.2-14.06-15.3-14.06zm10.2 52.4c-.1 8-3 11.1-10.5 11.1s-10.5-3.1-10.5-11.1v-36.6c0-7.9 3-11.1 10.5-11.1s10.5 3.2 10.5 11.1zm-46.5-14.5c6.1-1.6 9.2-6.1 9.2-13.3v-9.7c0-9.4-5.2-14.1-15.3-14.1h-13.7a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.9h11.6l10.4 27.2a2.32 2.32 0 0 0 2.3 1.5h1.5c1.4 0 2-1 1.5-2.3zm-6.4-3.9H355v-28.5h10.2c7.5 0 10.5 3.1 10.5 11.1v6.4c0 7.84-3 11.04-10.5 11.04zm85.9-33.1h-13.7a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.1h10.6c10.1 0 15.3-4.8 15.3-14.1v-10.5c0-9.4-5.2-14.1-15.3-14.1zm10.2 22.8c0 7.9-3 11.1-10.5 11.1h-10.2v-29.2h10.2c7.5-.1 10.5 3.1 10.5 11zM259.5 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm227.6-136.1a364.42 364.42 0 0 0-35.6-11.3c19.6-78 11.6-134.7-22.3-153.9C394.7-12.66 343.3 11 291 61.94q5.1 4.95 10.2 10.2c82.5-80 119.6-53.5 120.9-52.8 22.4 12.7 36 55.8 15.5 137.8a587.83 587.83 0 0 0-84.6-13C281.1 43.64 212.4 2 170.8 2 140 2 127 23 123.2 29.74c-18.1 32-13.3 84.2.1 133.8-70.5 20.3-120.7 54.1-120.3 95 .5 59.6 103.2 87.8 122.1 92.8-20.5 81.9-10.1 135.6 22.3 153.9 28 15.8 75.1 6 138.2-55.2q-5.1-4.95-10.2-10.2c-82.5 80-119.7 53.5-120.9 52.8-22.3-12.6-36-55.6-15.5-137.9 12.4 2.9 41.8 9.5 84.6 13 71.9 100.4 140.6 142 182.1 142 30.8 0 43.8-21 47.6-27.7 18-31.9 13.3-84.1-.1-133.8 152.3-43.8 156.2-130.2 33.9-176.3zM135.9 36.84c2.9-5.1 11.9-20.3 34.9-20.3 36.8 0 98.8 39.6 163.3 126.2a714 714 0 0 0-93.9.9 547.76 547.76 0 0 1 42.2-52.4Q277.3 86 272.2 81a598.25 598.25 0 0 0-50.7 64.2 569.69 569.69 0 0 0-84.4 14.6c-.2-1.4-24.3-82.2-1.2-123zm304.8 438.3c-2.9 5.1-11.8 20.3-34.9 20.3-36.7 0-98.7-39.4-163.3-126.2a695.38 695.38 0 0 0 93.9-.9 547.76 547.76 0 0 1-42.2 52.4q5.1 5.25 10.2 10.2a588.47 588.47 0 0 0 50.7-64.2c47.3-4.7 80.3-13.5 84.4-14.6 22.7 84.4 4.5 117 1.2 123zm9.1-138.6c-3.6-11.9-7.7-24.1-12.4-36.4a12.67 12.67 0 0 1-10.7-5.7l-.1.1a19.61 19.61 0 0 1-5.4 3.6c5.7 14.3 10.6 28.4 14.7 42.2a535.3 535.3 0 0 1-72 13c3.5-5.3 17.2-26.2 32.2-54.2a24.6 24.6 0 0 1-6-3.2c-1.1 1.2-3.6 4.2-10.9 4.2-6.2 11.2-17.4 30.9-33.9 55.2a711.91 711.91 0 0 1-112.4 1c-7.9-11.2-21.5-31.1-36.8-57.8a21 21 0 0 1-3-1.5c-1.9 1.6-3.9 3.2-12.6 3.2 6.3 11.2 17.5 30.7 33.8 54.6a548.81 548.81 0 0 1-72.2-11.7q5.85-21 14.1-42.9c-3.2 0-5.4.2-8.4-1a17.58 17.58 0 0 1-6.9 1c-4.9 13.4-9.1 26.5-12.7 39.4C-31.7 297-12.1 216 126.7 175.64c3.6 11.9 7.7 24.1 12.4 36.4 10.4 0 12.9 3.4 14.4 5.3a12 12 0 0 1 2.3-2.2c-5.8-14.7-10.9-29.2-15.2-43.3 7-1.8 32.4-8.4 72-13-15.9 24.3-26.7 43.9-32.8 55.3a14.22 14.22 0 0 1 6.4 8 23.42 23.42 0 0 1 10.2-8.4c6.5-11.7 17.9-31.9 34.8-56.9a711.72 711.72 0 0 1 112.4-1c31.5 44.6 28.9 48.1 42.5 64.5a21.42 21.42 0 0 1 10.4-7.4c-6.4-11.4-17.6-31-34.3-55.5 40.4 4.1 65 10 72.2 11.7-4 14.4-8.9 29.2-14.6 44.2a20.74 20.74 0 0 1 6.8 4.3l.1.1a12.72 12.72 0 0 1 8.9-5.6c4.9-13.4 9.2-26.6 12.8-39.5a359.71 359.71 0 0 1 34.5 11c106.1 39.9 74 87.9 72.6 90.4-19.8 35.1-80.1 55.2-105.7 62.5zm-114.4-114h-1.2a1.74 1.74 0 0 0-1.9 1.9v49.8c0 7.9-2.6 11.1-10.1 11.1s-10.1-3.1-10.1-11.1v-49.8a1.69 1.69 0 0 0-1.9-1.9H309a1.81 1.81 0 0 0-2 1.9v51.5c0 9.6 5 14.1 15.1 14.1h.4c10.1 0 15.1-4.6 15.1-14.1v-51.5a2 2 0 0 0-2.2-1.9zM321.7 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm-31.1 7.4l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm5.1-30.8h-19.4v-26.7h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h22.5a1.77 1.77 0 0 0 2-1.9v-.8a1.83 1.83 0 0 0-2-2.06zm-7.4-99.4L286 192l-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1z\"]\n};\nvar faReadme = {\n prefix: 'fab',\n iconName: 'readme',\n icon: [576, 512, [], \"f4d5\", \"M528.3 46.5H388.5c-48.1 0-89.9 33.3-100.4 80.3-10.6-47-52.3-80.3-100.4-80.3H48c-26.5 0-48 21.5-48 48v245.8c0 26.5 21.5 48 48 48h89.7c102.2 0 132.7 24.4 147.3 75 .7 2.8 5.2 2.8 6 0 14.7-50.6 45.2-75 147.3-75H528c26.5 0 48-21.5 48-48V94.6c0-26.4-21.3-47.9-47.7-48.1zM242 311.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5V289c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V251zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm259.3 121.7c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5V228c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.8c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V190z\"]\n};\nvar faRebel = {\n prefix: 'fab',\n iconName: 'rebel',\n icon: [512, 512, [], \"f1d0\", \"M256.5 504C117.2 504 9 387.8 13.2 249.9 16 170.7 56.4 97.7 129.7 49.5c.3 0 1.9-.6 1.1.8-5.8 5.5-111.3 129.8-14.1 226.4 49.8 49.5 90 2.5 90 2.5 38.5-50.1-.6-125.9-.6-125.9-10-24.9-45.7-40.1-45.7-40.1l28.8-31.8c24.4 10.5 43.2 38.7 43.2 38.7.8-29.6-21.9-61.4-21.9-61.4L255.1 8l44.3 50.1c-20.5 28.8-21.9 62.6-21.9 62.6 13.8-23 43.5-39.3 43.5-39.3l28.5 31.8c-27.4 8.9-45.4 39.9-45.4 39.9-15.8 28.5-27.1 89.4.6 127.3 32.4 44.6 87.7-2.8 87.7-2.8 102.7-91.9-10.5-225-10.5-225-6.1-5.5.8-2.8.8-2.8 50.1 36.5 114.6 84.4 116.2 204.8C500.9 400.2 399 504 256.5 504z\"]\n};\nvar faRedRiver = {\n prefix: 'fab',\n iconName: 'red-river',\n icon: [448, 512, [], \"f3e3\", \"M353.2 32H94.8C42.4 32 0 74.4 0 126.8v258.4C0 437.6 42.4 480 94.8 480h258.4c52.4 0 94.8-42.4 94.8-94.8V126.8c0-52.4-42.4-94.8-94.8-94.8zM144.9 200.9v56.3c0 27-21.9 48.9-48.9 48.9V151.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9h-56.3c-12.3-.6-24.6 11.6-24 24zm176.3 72h-56.3c-12.3-.6-24.6 11.6-24 24v56.3c0 27-21.9 48.9-48.9 48.9V247.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9z\"]\n};\nvar faReddit = {\n prefix: 'fab',\n iconName: 'reddit',\n icon: [512, 512, [], \"f1a1\", \"M201.5 305.5c-13.8 0-24.9-11.1-24.9-24.6 0-13.8 11.1-24.9 24.9-24.9 13.6 0 24.6 11.1 24.6 24.9 0 13.6-11.1 24.6-24.6 24.6zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-132.3-41.2c-9.4 0-17.7 3.9-23.8 10-22.4-15.5-52.6-25.5-86.1-26.6l17.4-78.3 55.4 12.5c0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.3 24.9-24.9s-11.1-24.9-24.9-24.9c-9.7 0-18 5.8-22.1 13.8l-61.2-13.6c-3-.8-6.1 1.4-6.9 4.4l-19.1 86.4c-33.2 1.4-63.1 11.3-85.5 26.8-6.1-6.4-14.7-10.2-24.1-10.2-34.9 0-46.3 46.9-14.4 62.8-1.1 5-1.7 10.2-1.7 15.5 0 52.6 59.2 95.2 132 95.2 73.1 0 132.3-42.6 132.3-95.2 0-5.3-.6-10.8-1.9-15.8 31.3-16 19.8-62.5-14.9-62.5zM302.8 331c-18.2 18.2-76.1 17.9-93.6 0-2.2-2.2-6.1-2.2-8.3 0-2.5 2.5-2.5 6.4 0 8.6 22.8 22.8 87.3 22.8 110.2 0 2.5-2.2 2.5-6.1 0-8.6-2.2-2.2-6.1-2.2-8.3 0zm7.7-75c-13.6 0-24.6 11.1-24.6 24.9 0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.1 24.9-24.6 0-13.8-11-24.9-24.9-24.9z\"]\n};\nvar faRedditAlien = {\n prefix: 'fab',\n iconName: 'reddit-alien',\n icon: [512, 512, [], \"f281\", \"M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22 17.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z\"]\n};\nvar faRedditSquare = {\n prefix: 'fab',\n iconName: 'reddit-square',\n icon: [448, 512, [], \"f1a2\", \"M283.2 345.5c2.7 2.7 2.7 6.8 0 9.2-24.5 24.5-93.8 24.6-118.4 0-2.7-2.4-2.7-6.5 0-9.2 2.4-2.4 6.5-2.4 8.9 0 18.7 19.2 81 19.6 100.5 0 2.4-2.3 6.6-2.3 9 0zm-91.3-53.8c0-14.9-11.9-26.8-26.5-26.8-14.9 0-26.8 11.9-26.8 26.8 0 14.6 11.9 26.5 26.8 26.5 14.6 0 26.5-11.9 26.5-26.5zm90.7-26.8c-14.6 0-26.5 11.9-26.5 26.8 0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-11.9 26.8-26.5 0-14.9-11.9-26.8-26.8-26.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-99.7 140.6c-10.1 0-19 4.2-25.6 10.7-24.1-16.7-56.5-27.4-92.5-28.6l18.7-84.2 59.5 13.4c0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-12.2 26.8-26.8 0-14.6-11.9-26.8-26.8-26.8-10.4 0-19.3 6.2-23.8 14.9l-65.7-14.6c-3.3-.9-6.5 1.5-7.4 4.8l-20.5 92.8c-35.7 1.5-67.8 12.2-91.9 28.9-6.5-6.8-15.8-11-25.9-11-37.5 0-49.8 50.4-15.5 67.5-1.2 5.4-1.8 11-1.8 16.7 0 56.5 63.7 102.3 141.9 102.3 78.5 0 142.2-45.8 142.2-102.3 0-5.7-.6-11.6-2.1-17 33.6-17.2 21.2-67.2-16.1-67.2z\"]\n};\nvar faRedhat = {\n prefix: 'fab',\n iconName: 'redhat',\n icon: [512, 512, [], \"f7bc\", \"M341.52 285.56c33.65 0 82.34-6.94 82.34-47 .22-6.74.86-1.82-20.88-96.24-4.62-19.15-8.68-27.84-42.31-44.65-26.09-13.34-82.92-35.37-99.73-35.37-15.66 0-20.2 20.17-38.87 20.17-18 0-31.31-15.06-48.12-15.06-16.14 0-26.66 11-34.78 33.62-27.5 77.55-26.28 74.27-26.12 78.27 0 24.8 97.64 106.11 228.47 106.11M429 254.84c4.65 22 4.65 24.35 4.65 27.25 0 37.66-42.33 58.56-98 58.56-125.74.08-235.91-73.65-235.91-122.33a49.55 49.55 0 0 1 4.06-19.72C58.56 200.86 0 208.93 0 260.63c0 84.67 200.63 189 359.49 189 121.79 0 152.51-55.08 152.51-98.58 0-34.21-29.59-73.05-82.93-96.24\"]\n};\nvar faRenren = {\n prefix: 'fab',\n iconName: 'renren',\n icon: [512, 512, [], \"f18b\", \"M214 169.1c0 110.4-61 205.4-147.6 247.4C30 373.2 8 317.7 8 256.6 8 133.9 97.1 32.2 214 12.5v156.6zM255 504c-42.9 0-83.3-11-118.5-30.4C193.7 437.5 239.9 382.9 255 319c15.5 63.9 61.7 118.5 118.8 154.7C338.7 493 298.3 504 255 504zm190.6-87.5C359 374.5 298 279.6 298 169.1V12.5c116.9 19.7 206 121.4 206 244.1 0 61.1-22 116.6-58.4 159.9z\"]\n};\nvar faReplyd = {\n prefix: 'fab',\n iconName: 'replyd',\n icon: [448, 512, [], \"f3e6\", \"M320 480H128C57.6 480 0 422.4 0 352V160C0 89.6 57.6 32 128 32h192c70.4 0 128 57.6 128 128v192c0 70.4-57.6 128-128 128zM193.4 273.2c-6.1-2-11.6-3.1-16.4-3.1-7.2 0-13.5 1.9-18.9 5.6-5.4 3.7-9.6 9-12.8 15.8h-1.1l-4.2-18.3h-28v138.9h36.1v-89.7c1.5-5.4 4.4-9.8 8.7-13.2 4.3-3.4 9.8-5.1 16.2-5.1 4.6 0 9.8 1 15.6 3.1l4.8-34zm115.2 103.4c-3.2 2.4-7.7 4.8-13.7 7.1-6 2.3-12.8 3.5-20.4 3.5-12.2 0-21.1-3-26.5-8.9-5.5-5.9-8.5-14.7-9-26.4h83.3c.9-4.8 1.6-9.4 2.1-13.9.5-4.4.7-8.6.7-12.5 0-10.7-1.6-19.7-4.7-26.9-3.2-7.2-7.3-13-12.5-17.2-5.2-4.3-11.1-7.3-17.8-9.2-6.7-1.8-13.5-2.8-20.6-2.8-21.1 0-37.5 6.1-49.2 18.3s-17.5 30.5-17.5 55c0 22.8 5.2 40.7 15.6 53.7 10.4 13.1 26.8 19.6 49.2 19.6 10.7 0 20.9-1.5 30.4-4.6 9.5-3.1 17.1-6.8 22.6-11.2l-12-23.6zm-21.8-70.3c3.8 5.4 5.3 13.1 4.6 23.1h-51.7c.9-9.4 3.7-17 8.2-22.6 4.5-5.6 11.5-8.5 21-8.5 8.2-.1 14.1 2.6 17.9 8zm79.9 2.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4s2 11.7 6.1 15.6zm0 100.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4 0 6.6 2 11.7 6.1 15.6z\"]\n};\nvar faResearchgate = {\n prefix: 'fab',\n iconName: 'researchgate',\n icon: [448, 512, [], \"f4f8\", \"M0 32v448h448V32H0zm262.2 334.4c-6.6 3-33.2 6-50-14.2-9.2-10.6-25.3-33.3-42.2-63.6-8.9 0-14.7 0-21.4-.6v46.4c0 23.5 6 21.2 25.8 23.9v8.1c-6.9-.3-23.1-.8-35.6-.8-13.1 0-26.1.6-33.6.8v-8.1c15.5-2.9 22-1.3 22-23.9V225c0-22.6-6.4-21-22-23.9V193c25.8 1 53.1-.6 70.9-.6 31.7 0 55.9 14.4 55.9 45.6 0 21.1-16.7 42.2-39.2 47.5 13.6 24.2 30 45.6 42.2 58.9 7.2 7.8 17.2 14.7 27.2 14.7v7.3zm22.9-135c-23.3 0-32.2-15.7-32.2-32.2V167c0-12.2 8.8-30.4 34-30.4s30.4 17.9 30.4 17.9l-10.7 7.2s-5.5-12.5-19.7-12.5c-7.9 0-19.7 7.3-19.7 19.7v26.8c0 13.4 6.6 23.3 17.9 23.3 14.1 0 21.5-10.9 21.5-26.8h-17.9v-10.7h30.4c0 20.5 4.7 49.9-34 49.9zm-116.5 44.7c-9.4 0-13.6-.3-20-.8v-69.7c6.4-.6 15-.6 22.5-.6 23.3 0 37.2 12.2 37.2 34.5 0 21.9-15 36.6-39.7 36.6z\"]\n};\nvar faResolving = {\n prefix: 'fab',\n iconName: 'resolving',\n icon: [496, 512, [], \"f3e7\", \"M281.2 278.2c46-13.3 49.6-23.5 44-43.4L314 195.5c-6.1-20.9-18.4-28.1-71.1-12.8L54.7 236.8l28.6 98.6 197.9-57.2zM248.5 8C131.4 8 33.2 88.7 7.2 197.5l221.9-63.9c34.8-10.2 54.2-11.7 79.3-8.2 36.3 6.1 52.7 25 61.4 55.2l10.7 37.8c8.2 28.1 1 50.6-23.5 73.6-19.4 17.4-31.2 24.5-61.4 33.2L203 351.8l220.4 27.1 9.7 34.2-48.1 13.3-286.8-37.3 23 80.2c36.8 22 80.3 34.7 126.3 34.7 137 0 248.5-111.4 248.5-248.3C497 119.4 385.5 8 248.5 8zM38.3 388.6L0 256.8c0 48.5 14.3 93.4 38.3 131.8z\"]\n};\nvar faRev = {\n prefix: 'fab',\n iconName: 'rev',\n icon: [448, 512, [], \"f5b2\", \"M289.67 274.89a65.57 65.57 0 1 1-65.56-65.56 65.64 65.64 0 0 1 65.56 65.56zm139.55-5.05h-.13a204.69 204.69 0 0 0-74.32-153l-45.38 26.2a157.07 157.07 0 0 1 71.81 131.84C381.2 361.5 310.73 432 224.11 432S67 361.5 67 274.88c0-81.88 63-149.27 143-156.43v39.12l108.77-62.79L210 32v38.32c-106.7 7.25-191 96-191 204.57 0 111.59 89.12 202.29 200.06 205v.11h210.16V269.84z\"]\n};\nvar faRocketchat = {\n prefix: 'fab',\n iconName: 'rocketchat',\n icon: [576, 512, [], \"f3e8\", \"M284.046,224.8a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,284.046,224.8Zm-110.45,0a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,173.6,224.8Zm220.923,0a34.114,34.114,0,1,0,34.317,34.113A34.215,34.215,0,0,0,394.519,224.8Zm153.807-55.319c-15.535-24.172-37.31-45.57-64.681-63.618-52.886-34.817-122.374-54-195.666-54a405.975,405.975,0,0,0-72.032,6.357,238.524,238.524,0,0,0-49.51-36.588C99.684-11.7,40.859.711,11.135,11.421A14.291,14.291,0,0,0,5.58,34.782C26.542,56.458,61.222,99.3,52.7,138.252c-33.142,33.9-51.112,74.776-51.112,117.337,0,43.372,17.97,84.248,51.112,118.148,8.526,38.956-26.154,81.816-47.116,103.491a14.284,14.284,0,0,0,5.555,23.34c29.724,10.709,88.549,23.147,155.324-10.2a238.679,238.679,0,0,0,49.51-36.589A405.972,405.972,0,0,0,288,460.14c73.313,0,142.8-19.159,195.667-53.975,27.371-18.049,49.145-39.426,64.679-63.619,17.309-26.923,26.07-55.916,26.07-86.125C574.394,225.4,565.634,196.43,548.326,169.485ZM284.987,409.9a345.65,345.65,0,0,1-89.446-11.5l-20.129,19.393a184.366,184.366,0,0,1-37.138,27.585,145.767,145.767,0,0,1-52.522,14.87c.983-1.771,1.881-3.563,2.842-5.356q30.258-55.68,16.325-100.078c-32.992-25.962-52.778-59.2-52.778-95.4,0-83.1,104.254-150.469,232.846-150.469s232.867,67.373,232.867,150.469C517.854,342.525,413.6,409.9,284.987,409.9Z\"]\n};\nvar faRockrms = {\n prefix: 'fab',\n iconName: 'rockrms',\n icon: [496, 512, [], \"f3e9\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm157.4 419.5h-90l-112-131.3c-17.9-20.4-3.9-56.1 26.6-56.1h75.3l-84.6-99.3-84.3 98.9h-90L193.5 67.2c14.4-18.4 41.3-17.3 54.5 0l157.7 185.1c19 22.8 2 57.2-27.6 56.1-.6 0-74.2.2-74.2.2l101.5 118.9z\"]\n};\nvar faRust = {\n prefix: 'fab',\n iconName: 'rust',\n icon: [512, 512, [], \"e07a\", \"M508.52,249.75,486.7,236.24c-.17-2-.34-3.93-.55-5.88l18.72-17.5a7.35,7.35,0,0,0-2.44-12.25l-24-9c-.54-1.88-1.08-3.78-1.67-5.64l15-20.83a7.35,7.35,0,0,0-4.79-11.54l-25.42-4.15c-.9-1.73-1.79-3.45-2.73-5.15l10.68-23.42a7.35,7.35,0,0,0-6.95-10.39l-25.82.91q-1.79-2.22-3.61-4.4L439,81.84A7.36,7.36,0,0,0,430.16,73L405,78.93q-2.17-1.83-4.4-3.61l.91-25.82a7.35,7.35,0,0,0-10.39-7L367.7,53.23c-1.7-.94-3.43-1.84-5.15-2.73L358.4,25.08a7.35,7.35,0,0,0-11.54-4.79L326,35.26c-1.86-.59-3.75-1.13-5.64-1.67l-9-24a7.35,7.35,0,0,0-12.25-2.44l-17.5,18.72c-1.95-.21-3.91-.38-5.88-.55L262.25,3.48a7.35,7.35,0,0,0-12.5,0L236.24,25.3c-2,.17-3.93.34-5.88.55L212.86,7.13a7.35,7.35,0,0,0-12.25,2.44l-9,24c-1.89.55-3.79,1.08-5.66,1.68l-20.82-15a7.35,7.35,0,0,0-11.54,4.79l-4.15,25.41c-1.73.9-3.45,1.79-5.16,2.73L120.88,42.55a7.35,7.35,0,0,0-10.39,7l.92,25.81c-1.49,1.19-3,2.39-4.42,3.61L81.84,73A7.36,7.36,0,0,0,73,81.84L78.93,107c-1.23,1.45-2.43,2.93-3.62,4.41l-25.81-.91a7.42,7.42,0,0,0-6.37,3.26,7.35,7.35,0,0,0-.57,7.13l10.66,23.41c-.94,1.7-1.83,3.43-2.73,5.16L25.08,153.6a7.35,7.35,0,0,0-4.79,11.54l15,20.82c-.59,1.87-1.13,3.77-1.68,5.66l-24,9a7.35,7.35,0,0,0-2.44,12.25l18.72,17.5c-.21,1.95-.38,3.91-.55,5.88L3.48,249.75a7.35,7.35,0,0,0,0,12.5L25.3,275.76c.17,2,.34,3.92.55,5.87L7.13,299.13a7.35,7.35,0,0,0,2.44,12.25l24,9c.55,1.89,1.08,3.78,1.68,5.65l-15,20.83a7.35,7.35,0,0,0,4.79,11.54l25.42,4.15c.9,1.72,1.79,3.45,2.73,5.14L42.56,391.12a7.35,7.35,0,0,0,.57,7.13,7.13,7.13,0,0,0,6.37,3.26l25.83-.91q1.77,2.22,3.6,4.4L73,430.16A7.36,7.36,0,0,0,81.84,439L107,433.07q2.18,1.83,4.41,3.61l-.92,25.82a7.35,7.35,0,0,0,10.39,6.95l23.43-10.68c1.69.94,3.42,1.83,5.14,2.73l4.15,25.42a7.34,7.34,0,0,0,11.54,4.78l20.83-15c1.86.6,3.76,1.13,5.65,1.68l9,24a7.36,7.36,0,0,0,12.25,2.44l17.5-18.72c1.95.21,3.92.38,5.88.55l13.51,21.82a7.35,7.35,0,0,0,12.5,0l13.51-21.82c2-.17,3.93-.34,5.88-.56l17.5,18.73a7.36,7.36,0,0,0,12.25-2.44l9-24c1.89-.55,3.78-1.08,5.65-1.68l20.82,15a7.34,7.34,0,0,0,11.54-4.78l4.15-25.42c1.72-.9,3.45-1.79,5.15-2.73l23.42,10.68a7.35,7.35,0,0,0,10.39-6.95l-.91-25.82q2.22-1.79,4.4-3.61L430.16,439a7.36,7.36,0,0,0,8.84-8.84L433.07,405q1.83-2.17,3.61-4.4l25.82.91a7.23,7.23,0,0,0,6.37-3.26,7.35,7.35,0,0,0,.58-7.13L458.77,367.7c.94-1.7,1.83-3.43,2.73-5.15l25.42-4.15a7.35,7.35,0,0,0,4.79-11.54l-15-20.83c.59-1.87,1.13-3.76,1.67-5.65l24-9a7.35,7.35,0,0,0,2.44-12.25l-18.72-17.5c.21-1.95.38-3.91.55-5.87l21.82-13.51a7.35,7.35,0,0,0,0-12.5Zm-151,129.08A13.91,13.91,0,0,0,341,389.51l-7.64,35.67A187.51,187.51,0,0,1,177,424.44l-7.64-35.66a13.87,13.87,0,0,0-16.46-10.68l-31.51,6.76a187.38,187.38,0,0,1-16.26-19.21H258.3c1.72,0,2.89-.29,2.89-1.91V309.55c0-1.57-1.17-1.91-2.89-1.91H213.47l.05-34.35H262c4.41,0,23.66,1.28,29.79,25.87,1.91,7.55,6.17,32.14,9.06,40,2.89,8.82,14.6,26.46,27.1,26.46H407a187.3,187.3,0,0,1-17.34,20.09Zm25.77,34.49A15.24,15.24,0,1,1,368,398.08h.44A15.23,15.23,0,0,1,383.24,413.32Zm-225.62-.68a15.24,15.24,0,1,1-15.25-15.25h.45A15.25,15.25,0,0,1,157.62,412.64ZM69.57,234.15l32.83-14.6a13.88,13.88,0,0,0,7.06-18.33L102.69,186h26.56V305.73H75.65A187.65,187.65,0,0,1,69.57,234.15ZM58.31,198.09a15.24,15.24,0,0,1,15.23-15.25H74a15.24,15.24,0,1,1-15.67,15.24Zm155.16,24.49.05-35.32h63.26c3.28,0,23.07,3.77,23.07,18.62,0,12.29-15.19,16.7-27.68,16.7ZM399,306.71c-9.8,1.13-20.63-4.12-22-10.09-5.78-32.49-15.39-39.4-30.57-51.4,18.86-11.95,38.46-29.64,38.46-53.26,0-25.52-17.49-41.59-29.4-49.48-16.76-11-35.28-13.23-40.27-13.23H116.32A187.49,187.49,0,0,1,221.21,70.06l23.47,24.6a13.82,13.82,0,0,0,19.6.44l26.26-25a187.51,187.51,0,0,1,128.37,91.43l-18,40.57A14,14,0,0,0,408,220.43l34.59,15.33a187.12,187.12,0,0,1,.4,32.54H423.71c-1.91,0-2.69,1.27-2.69,3.13v8.82C421,301,409.31,305.58,399,306.71ZM240,60.21A15.24,15.24,0,0,1,255.21,45h.45A15.24,15.24,0,1,1,240,60.21ZM436.84,214a15.24,15.24,0,1,1,0-30.48h.44a15.24,15.24,0,0,1-.44,30.48Z\"]\n};\nvar faSafari = {\n prefix: 'fab',\n iconName: 'safari',\n icon: [512, 512, [], \"f267\", \"M274.69,274.69l-37.38-37.38L166,346ZM256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8ZM411.85,182.79l14.78-6.13A8,8,0,0,1,437.08,181h0a8,8,0,0,1-4.33,10.46L418,197.57a8,8,0,0,1-10.45-4.33h0A8,8,0,0,1,411.85,182.79ZM314.43,94l6.12-14.78A8,8,0,0,1,331,74.92h0a8,8,0,0,1,4.33,10.45l-6.13,14.78a8,8,0,0,1-10.45,4.33h0A8,8,0,0,1,314.43,94ZM256,60h0a8,8,0,0,1,8,8V84a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V68A8,8,0,0,1,256,60ZM181,74.92a8,8,0,0,1,10.46,4.33L197.57,94a8,8,0,1,1-14.78,6.12l-6.13-14.78A8,8,0,0,1,181,74.92Zm-63.58,42.49h0a8,8,0,0,1,11.31,0L140,128.72A8,8,0,0,1,140,140h0a8,8,0,0,1-11.31,0l-11.31-11.31A8,8,0,0,1,117.41,117.41ZM60,256h0a8,8,0,0,1,8-8H84a8,8,0,0,1,8,8h0a8,8,0,0,1-8,8H68A8,8,0,0,1,60,256Zm40.15,73.21-14.78,6.13A8,8,0,0,1,74.92,331h0a8,8,0,0,1,4.33-10.46L94,314.43a8,8,0,0,1,10.45,4.33h0A8,8,0,0,1,100.15,329.21Zm4.33-136h0A8,8,0,0,1,94,197.57l-14.78-6.12A8,8,0,0,1,74.92,181h0a8,8,0,0,1,10.45-4.33l14.78,6.13A8,8,0,0,1,104.48,193.24ZM197.57,418l-6.12,14.78a8,8,0,0,1-14.79-6.12l6.13-14.78A8,8,0,1,1,197.57,418ZM264,444a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V428a8,8,0,0,1,8-8h0a8,8,0,0,1,8,8Zm67-6.92h0a8,8,0,0,1-10.46-4.33L314.43,418a8,8,0,0,1,4.33-10.45h0a8,8,0,0,1,10.45,4.33l6.13,14.78A8,8,0,0,1,331,437.08Zm63.58-42.49h0a8,8,0,0,1-11.31,0L372,383.28A8,8,0,0,1,372,372h0a8,8,0,0,1,11.31,0l11.31,11.31A8,8,0,0,1,394.59,394.59ZM286.25,286.25,110.34,401.66,225.75,225.75,401.66,110.34ZM437.08,331h0a8,8,0,0,1-10.45,4.33l-14.78-6.13a8,8,0,0,1-4.33-10.45h0A8,8,0,0,1,418,314.43l14.78,6.12A8,8,0,0,1,437.08,331ZM444,264H428a8,8,0,0,1-8-8h0a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8h0A8,8,0,0,1,444,264Z\"]\n};\nvar faSalesforce = {\n prefix: 'fab',\n iconName: 'salesforce',\n icon: [640, 512, [], \"f83b\", \"M248.89 245.64h-26.35c.69-5.16 3.32-14.12 13.64-14.12 6.75 0 11.97 3.82 12.71 14.12zm136.66-13.88c-.47 0-14.11-1.77-14.11 20s13.63 20 14.11 20c13 0 14.11-13.54 14.11-20 0-21.76-13.66-20-14.11-20zm-243.22 23.76a8.63 8.63 0 0 0-3.29 7.29c0 4.78 2.08 6.05 3.29 7.05 4.7 3.7 15.07 2.12 20.93.95v-16.94c-5.32-1.07-16.73-1.96-20.93 1.65zM640 232c0 87.58-80 154.39-165.36 136.43-18.37 33-70.73 70.75-132.2 41.63-41.16 96.05-177.89 92.18-213.81-5.17C8.91 428.78-50.19 266.52 53.36 205.61 18.61 126.18 76 32 167.67 32a124.24 124.24 0 0 1 98.56 48.7c20.7-21.4 49.4-34.81 81.15-34.81 42.34 0 79 23.52 98.8 58.57C539 63.78 640 132.69 640 232zm-519.55 31.8c0-11.76-11.69-15.17-17.87-17.17-5.27-2.11-13.41-3.51-13.41-8.94 0-9.46 17-6.66 25.17-2.12 0 0 1.17.71 1.64-.47.24-.7 2.36-6.58 2.59-7.29a1.13 1.13 0 0 0-.7-1.41c-12.33-7.63-40.7-8.51-40.7 12.7 0 12.46 11.49 15.44 17.88 17.17 4.72 1.58 13.17 3 13.17 8.7 0 4-3.53 7.06-9.17 7.06a31.76 31.76 0 0 1-19-6.35c-.47-.23-1.42-.71-1.65.71l-2.4 7.47c-.47.94.23 1.18.23 1.41 1.75 1.4 10.3 6.59 22.82 6.59 13.17 0 21.4-7.06 21.4-18.11zm32-42.58c-10.13 0-18.66 3.17-21.4 5.18a1 1 0 0 0-.24 1.41l2.59 7.06a1 1 0 0 0 1.18.7c.65 0 6.8-4 16.93-4 4 0 7.06.71 9.18 2.36 3.6 2.8 3.06 8.29 3.06 10.58-4.79-.3-19.11-3.44-29.41 3.76a16.92 16.92 0 0 0-7.34 14.54c0 5.9 1.51 10.4 6.59 14.35 12.24 8.16 36.28 2 38.1 1.41 1.58-.32 3.53-.66 3.53-1.88v-33.88c.04-4.61.32-21.64-22.78-21.64zM199 200.24a1.11 1.11 0 0 0-1.18-1.18H188a1.11 1.11 0 0 0-1.17 1.18v79a1.11 1.11 0 0 0 1.17 1.18h9.88a1.11 1.11 0 0 0 1.18-1.18zm55.75 28.93c-2.1-2.31-6.79-7.53-17.65-7.53-3.51 0-14.16.23-20.7 8.94-6.35 7.63-6.58 18.11-6.58 21.41 0 3.12.15 14.26 7.06 21.17 2.64 2.91 9.06 8.23 22.81 8.23 10.82 0 16.47-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.35-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.94-16.7h37.17a1.23 1.23 0 0 0 1.17-.94c-.29 0 2.07-14.7-6.09-24.23zm36.69 52.69c13.17 0 21.41-7.06 21.41-18.11 0-11.76-11.7-15.17-17.88-17.17-4.14-1.66-13.41-3.38-13.41-8.94 0-3.76 3.29-6.35 8.47-6.35a38.11 38.11 0 0 1 16.7 4.23s1.18.71 1.65-.47c.23-.7 2.35-6.58 2.58-7.29a1.13 1.13 0 0 0-.7-1.41c-7.91-4.9-16.74-4.94-20.23-4.94-12 0-20.46 7.29-20.46 17.64 0 12.46 11.48 15.44 17.87 17.17 6.11 2 13.17 3.26 13.17 8.7 0 4-3.52 7.06-9.17 7.06a31.8 31.8 0 0 1-19-6.35 1 1 0 0 0-1.65.71l-2.35 7.52c-.47.94.23 1.18.23 1.41 1.72 1.4 10.33 6.59 22.79 6.59zM357.09 224c0-.71-.24-1.18-1.18-1.18h-11.76c0-.14.94-8.94 4.47-12.47 4.16-4.15 11.76-1.64 12-1.64 1.17.47 1.41 0 1.64-.47l2.83-7.77c.7-.94 0-1.17-.24-1.41-5.09-2-17.35-2.87-24.46 4.24-5.48 5.48-7 13.92-8 19.52h-8.47a1.28 1.28 0 0 0-1.17 1.18l-1.42 7.76c0 .7.24 1.17 1.18 1.17h8.23c-8.51 47.9-8.75 50.21-10.35 55.52-1.08 3.62-3.29 6.9-5.88 7.76-.09 0-3.88 1.68-9.64-.24 0 0-.94-.47-1.41.71-.24.71-2.59 6.82-2.83 7.53s0 1.41.47 1.41c5.11 2 13 1.77 17.88 0 6.28-2.28 9.72-7.89 11.53-12.94 2.75-7.71 2.81-9.79 11.76-59.74h12.23a1.29 1.29 0 0 0 1.18-1.18zm53.39 16c-.56-1.68-5.1-18.11-25.17-18.11-15.25 0-23 10-25.16 18.11-1 3-3.18 14 0 23.52.09.3 4.41 18.12 25.16 18.12 14.95 0 22.9-9.61 25.17-18.12 3.21-9.61 1.01-20.52 0-23.52zm45.4-16.7c-5-1.65-16.62-1.9-22.11 5.41v-4.47a1.11 1.11 0 0 0-1.18-1.17h-9.4a1.11 1.11 0 0 0-1.18 1.17v55.28a1.12 1.12 0 0 0 1.18 1.18h9.64a1.12 1.12 0 0 0 1.18-1.18v-27.77c0-2.91.05-11.37 4.46-15.05 4.9-4.9 12-3.36 13.41-3.06a1.57 1.57 0 0 0 1.41-.94 74 74 0 0 0 3.06-8 1.16 1.16 0 0 0-.47-1.41zm46.81 54.1l-2.12-7.29c-.47-1.18-1.41-.71-1.41-.71-4.23 1.82-10.15 1.89-11.29 1.89-4.64 0-17.17-1.13-17.17-19.76 0-6.23 1.85-19.76 16.47-19.76a34.85 34.85 0 0 1 11.52 1.65s.94.47 1.18-.71c.94-2.59 1.64-4.47 2.59-7.53.23-.94-.47-1.17-.71-1.17-11.59-3.87-22.34-2.53-27.76 0-1.59.74-16.23 6.49-16.23 27.52 0 2.9-.58 30.11 28.94 30.11a44.45 44.45 0 0 0 15.52-2.83 1.3 1.3 0 0 0 .47-1.42zm53.87-39.52c-.8-3-5.37-16.23-22.35-16.23-16 0-23.52 10.11-25.64 18.59a38.58 38.58 0 0 0-1.65 11.76c0 25.87 18.84 29.4 29.88 29.4 10.82 0 16.46-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.36-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.93-16.7h37.16a1.25 1.25 0 0 0 1.18-.94c-.24-.01.94-7.07-1.41-15.54zm-23.29-6.35c-10.33 0-13 9-13.64 14.12H546c-.88-11.92-7.62-14.13-12.73-14.13z\"]\n};\nvar faSass = {\n prefix: 'fab',\n iconName: 'sass',\n icon: [640, 512, [], \"f41e\", \"M301.84 378.92c-.3.6-.6 1.08 0 0zm249.13-87a131.16 131.16 0 0 0-58 13.5c-5.9-11.9-12-22.3-13-30.1-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.3-6.7-24 2.5-25.29 5.9a122.83 122.83 0 0 0-5.3 19.1c-2.3 11.7-25.79 53.5-39.09 75.3-4.4-8.5-8.1-16-8.9-22-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.29-6.7-24 2.5-25.3 5.9-2.7 11.4-5.3 19.1-33.89 77.3-42.08 95.4c-4.2 9.2-7.8 16.6-10.4 21.6-.4.8-.7 1.3-.9 1.7.3-.5.5-1 .5-.8-2.2 4.3-3.5 6.7-3.5 6.7v.1c-1.7 3.2-3.6 6.1-4.5 6.1-.6 0-1.9-8.4.3-19.9 4.7-24.2 15.8-61.8 15.7-63.1-.1-.7 2.1-7.2-7.3-10.7-9.1-3.3-12.4 2.2-13.2 2.2s-1.4 2-1.4 2 10.1-42.4-19.39-42.4c-18.4 0-44 20.2-56.58 38.5-7.9 4.3-25 13.6-43 23.5-6.9 3.8-14 7.7-20.7 11.4-.5-.5-.9-1-1.4-1.5-35.79-38.2-101.87-65.2-99.07-116.5 1-18.7 7.5-67.8 127.07-127.4 98-48.8 176.35-35.4 189.84-5.6 19.4 42.5-41.89 121.6-143.66 133-38.79 4.3-59.18-10.7-64.28-16.3-5.3-5.9-6.1-6.2-8.1-5.1-3.3 1.8-1.2 7 0 10.1 3 7.9 15.5 21.9 36.79 28.9 18.7 6.1 64.18 9.5 119.17-11.8 61.78-23.8 109.87-90.1 95.77-145.6C386.52 18.32 293-.18 204.57 31.22c-52.69 18.7-109.67 48.1-150.66 86.4-48.69 45.6-56.48 85.3-53.28 101.9 11.39 58.9 92.57 97.3 125.06 125.7-1.6.9-3.1 1.7-4.5 2.5-16.29 8.1-78.18 40.5-93.67 74.7-17.5 38.8 2.9 66.6 16.29 70.4 41.79 11.6 84.58-9.3 107.57-43.6s20.2-79.1 9.6-99.5c-.1-.3-.3-.5-.4-.8 4.2-2.5 8.5-5 12.8-7.5 8.29-4.9 16.39-9.4 23.49-13.3-4 10.8-6.9 23.8-8.4 42.6-1.8 22 7.3 50.5 19.1 61.7 5.2 4.9 11.49 5 15.39 5 13.8 0 20-11.4 26.89-25 8.5-16.6 16-35.9 16-35.9s-9.4 52.2 16.3 52.2c9.39 0 18.79-12.1 23-18.3v.1s.2-.4.7-1.2c1-1.5 1.5-2.4 1.5-2.4v-.3c3.8-6.5 12.1-21.4 24.59-46 16.2-31.8 31.69-71.5 31.69-71.5a201.24 201.24 0 0 0 6.2 25.8c2.8 9.5 8.7 19.9 13.4 30-3.8 5.2-6.1 8.2-6.1 8.2a.31.31 0 0 0 .1.2c-3 4-6.4 8.3-9.9 12.5-12.79 15.2-28 32.6-30 37.6-2.4 5.9-1.8 10.3 2.8 13.7 3.4 2.6 9.4 3 15.69 2.5 11.5-.8 19.6-3.6 23.5-5.4a82.2 82.2 0 0 0 20.19-10.6c12.5-9.2 20.1-22.4 19.4-39.8-.4-9.6-3.5-19.2-7.3-28.2 1.1-1.6 2.3-3.3 3.4-5C434.8 301.72 450.1 270 450.1 270a201.24 201.24 0 0 0 6.2 25.8c2.4 8.1 7.09 17 11.39 25.7-18.59 15.1-30.09 32.6-34.09 44.1-7.4 21.3-1.6 30.9 9.3 33.1 4.9 1 11.9-1.3 17.1-3.5a79.46 79.46 0 0 0 21.59-11.1c12.5-9.2 24.59-22.1 23.79-39.6-.3-7.9-2.5-15.8-5.4-23.4 15.7-6.6 36.09-10.2 62.09-7.2 55.68 6.5 66.58 41.3 64.48 55.8s-13.8 22.6-17.7 25-5.1 3.3-4.8 5.1c.5 2.6 2.3 2.5 5.6 1.9 4.6-.8 29.19-11.8 30.29-38.7 1.6-34-31.09-71.4-89-71.1zm-429.18 144.7c-18.39 20.1-44.19 27.7-55.28 21.3C54.61 451 59.31 421.42 82 400c13.8-13 31.59-25 43.39-32.4 2.7-1.6 6.6-4 11.4-6.9.8-.5 1.2-.7 1.2-.7.9-.6 1.9-1.1 2.9-1.7 8.29 30.4.3 57.2-19.1 78.3zm134.36-91.4c-6.4 15.7-19.89 55.7-28.09 53.6-7-1.8-11.3-32.3-1.4-62.3 5-15.1 15.6-33.1 21.9-40.1 10.09-11.3 21.19-14.9 23.79-10.4 3.5 5.9-12.2 49.4-16.2 59.2zm111 53c-2.7 1.4-5.2 2.3-6.4 1.6-.9-.5 1.1-2.4 1.1-2.4s13.9-14.9 19.4-21.7c3.2-4 6.9-8.7 10.89-13.9 0 .5.1 1 .1 1.6-.13 17.9-17.32 30-25.12 34.8zm85.58-19.5c-2-1.4-1.7-6.1 5-20.7 2.6-5.7 8.59-15.3 19-24.5a36.18 36.18 0 0 1 1.9 10.8c-.1 22.5-16.2 30.9-25.89 34.4z\"]\n};\nvar faSchlix = {\n prefix: 'fab',\n iconName: 'schlix',\n icon: [448, 512, [], \"f3ea\", \"M350.5 157.7l-54.2-46.1 73.4-39 78.3 44.2-97.5 40.9zM192 122.1l45.7-28.2 34.7 34.6-55.4 29-25-35.4zm-65.1 6.6l31.9-22.1L176 135l-36.7 22.5-12.4-28.8zm-23.3 88.2l-8.8-34.8 29.6-18.3 13.1 35.3-33.9 17.8zm-21.2-83.7l23.9-18.1 8.9 24-26.7 18.3-6.1-24.2zM59 206.5l-3.6-28.4 22.3-15.5 6.1 28.7L59 206.5zm-30.6 16.6l20.8-12.8 3.3 33.4-22.9 12-1.2-32.6zM1.4 268l19.2-10.2.4 38.2-21 8.8L1.4 268zm59.1 59.3l-28.3 8.3-1.6-46.8 25.1-10.7 4.8 49.2zM99 263.2l-31.1 13-5.2-40.8L90.1 221l8.9 42.2zM123.2 377l-41.6 5.9-8.1-63.5 35.2-10.8 14.5 68.4zm28.5-139.9l21.2 57.1-46.2 13.6-13.7-54.1 38.7-16.6zm85.7 230.5l-70.9-3.3-24.3-95.8 55.2-8.6 40 107.7zm-84.9-279.7l42.2-22.4 28 45.9-50.8 21.3-19.4-44.8zm41 94.9l61.3-18.7 52.8 86.6-79.8 11.3-34.3-79.2zm51.4-85.6l67.3-28.8 65.5 65.4-88.6 26.2-44.2-62.8z\"]\n};\nvar faScribd = {\n prefix: 'fab',\n iconName: 'scribd',\n icon: [384, 512, [], \"f28a\", \"M42.3 252.7c-16.1-19-24.7-45.9-24.8-79.9 0-100.4 75.2-153.1 167.2-153.1 98.6-1.6 156.8 49 184.3 70.6l-50.5 72.1-37.3-24.6 26.9-38.6c-36.5-24-79.4-36.5-123-35.8-50.7-.8-111.7 27.2-111.7 76.2 0 18.7 11.2 20.7 28.6 15.6 23.3-5.3 41.9.6 55.8 14 26.4 24.3 23.2 67.6-.7 91.9-29.2 29.5-85.2 27.3-114.8-8.4zm317.7 5.9c-15.5-18.8-38.9-29.4-63.2-28.6-38.1-2-71.1 28-70.5 67.2-.7 16.8 6 33 18.4 44.3 14.1 13.9 33 19.7 56.3 14.4 17.4-5.1 28.6-3.1 28.6 15.6 0 4.3-.5 8.5-1.4 12.7-16.7 40.9-59.5 64.4-121.4 64.4-51.9.2-102.4-16.4-144.1-47.3l33.7-39.4-35.6-27.4L0 406.3l15.4 13.8c52.5 46.8 120.4 72.5 190.7 72.2 51.4 0 94.4-10.5 133.6-44.1 57.1-51.4 54.2-149.2 20.3-189.6z\"]\n};\nvar faSearchengin = {\n prefix: 'fab',\n iconName: 'searchengin',\n icon: [460, 512, [], \"f3eb\", \"M220.6 130.3l-67.2 28.2V43.2L98.7 233.5l54.7-24.2v130.3l67.2-209.3zm-83.2-96.7l-1.3 4.7-15.2 52.9C80.6 106.7 52 145.8 52 191.5c0 52.3 34.3 95.9 83.4 105.5v53.6C57.5 340.1 0 272.4 0 191.6c0-80.5 59.8-147.2 137.4-158zm311.4 447.2c-11.2 11.2-23.1 12.3-28.6 10.5-5.4-1.8-27.1-19.9-60.4-44.4-33.3-24.6-33.6-35.7-43-56.7-9.4-20.9-30.4-42.6-57.5-52.4l-9.7-14.7c-24.7 16.9-53 26.9-81.3 28.7l2.1-6.6 15.9-49.5c46.5-11.9 80.9-54 80.9-104.2 0-54.5-38.4-102.1-96-107.1V32.3C254.4 37.4 320 106.8 320 191.6c0 33.6-11.2 64.7-29 90.4l14.6 9.6c9.8 27.1 31.5 48 52.4 57.4s32.2 9.7 56.8 43c24.6 33.2 42.7 54.9 44.5 60.3s.7 17.3-10.5 28.5zm-9.9-17.9c0-4.4-3.6-8-8-8s-8 3.6-8 8 3.6 8 8 8 8-3.6 8-8z\"]\n};\nvar faSellcast = {\n prefix: 'fab',\n iconName: 'sellcast',\n icon: [448, 512, [], \"f2da\", \"M353.4 32H94.7C42.6 32 0 74.6 0 126.6v258.7C0 437.4 42.6 480 94.7 480h258.7c52.1 0 94.7-42.6 94.7-94.6V126.6c0-52-42.6-94.6-94.7-94.6zm-50 316.4c-27.9 48.2-89.9 64.9-138.2 37.2-22.9 39.8-54.9 8.6-42.3-13.2l15.7-27.2c5.9-10.3 19.2-13.9 29.5-7.9 18.6 10.8-.1-.1 18.5 10.7 27.6 15.9 63.4 6.3 79.4-21.3 15.9-27.6 6.3-63.4-21.3-79.4-17.8-10.2-.6-.4-18.6-10.6-24.6-14.2-3.4-51.9 21.6-37.5 18.6 10.8-.1-.1 18.5 10.7 48.4 28 65.1 90.3 37.2 138.5zm21.8-208.8c-17 29.5-16.3 28.8-19 31.5-6.5 6.5-16.3 8.7-26.5 3.6-18.6-10.8.1.1-18.5-10.7-27.6-15.9-63.4-6.3-79.4 21.3s-6.3 63.4 21.3 79.4c0 0 18.5 10.6 18.6 10.6 24.6 14.2 3.4 51.9-21.6 37.5-18.6-10.8.1.1-18.5-10.7-48.2-27.8-64.9-90.1-37.1-138.4 27.9-48.2 89.9-64.9 138.2-37.2l4.8-8.4c14.3-24.9 52-3.3 37.7 21.5z\"]\n};\nvar faSellsy = {\n prefix: 'fab',\n iconName: 'sellsy',\n icon: [640, 512, [], \"f213\", \"M539.71 237.308c3.064-12.257 4.29-24.821 4.29-37.384C544 107.382 468.618 32 376.076 32c-77.22 0-144.634 53.012-163.02 127.781-15.322-13.176-34.934-20.53-55.157-20.53-46.271 0-83.962 37.69-83.962 83.961 0 7.354.92 15.015 3.065 22.369-42.9 20.225-70.785 63.738-70.785 111.234C6.216 424.843 61.68 480 129.401 480h381.198c67.72 0 123.184-55.157 123.184-123.184.001-56.384-38.916-106.025-94.073-119.508zM199.88 401.554c0 8.274-7.048 15.321-15.321 15.321H153.61c-8.274 0-15.321-7.048-15.321-15.321V290.626c0-8.273 7.048-15.321 15.321-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v110.928zm89.477 0c0 8.274-7.048 15.321-15.322 15.321h-30.949c-8.274 0-15.321-7.048-15.321-15.321V270.096c0-8.274 7.048-15.321 15.321-15.321h30.949c8.274 0 15.322 7.048 15.322 15.321v131.458zm89.477 0c0 8.274-7.047 15.321-15.321 15.321h-30.949c-8.274 0-15.322-7.048-15.322-15.321V238.84c0-8.274 7.048-15.321 15.322-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v162.714zm87.027 0c0 8.274-7.048 15.321-15.322 15.321h-28.497c-8.274 0-15.321-7.048-15.321-15.321V176.941c0-8.579 7.047-15.628 15.321-15.628h28.497c8.274 0 15.322 7.048 15.322 15.628v224.613z\"]\n};\nvar faServicestack = {\n prefix: 'fab',\n iconName: 'servicestack',\n icon: [496, 512, [], \"f3ec\", \"M88 216c81.7 10.2 273.7 102.3 304 232H0c99.5-8.1 184.5-137 88-232zm32-152c32.3 35.6 47.7 83.9 46.4 133.6C249.3 231.3 373.7 321.3 400 448h96C455.3 231.9 222.8 79.5 120 64z\"]\n};\nvar faShirtsinbulk = {\n prefix: 'fab',\n iconName: 'shirtsinbulk',\n icon: [448, 512, [], \"f214\", \"M100 410.3l30.6 13.4 4.4-9.9-30.6-13.4zm39.4 17.5l30.6 13.4 4.4-9.9-30.6-13.4zm172.1-14l4.4 9.9 30.6-13.4-4.4-9.9zM179.1 445l30.3 13.7 4.4-9.9-30.3-13.4zM60.4 392.8L91 406.2l4.4-9.6-30.6-13.7zm211.4 38.5l4.4 9.9 30.6-13.4-4.4-9.9zm-39.3 17.5l4.4 9.9 30.6-13.7-4.4-9.6zm118.4-52.2l4.4 9.6 30.6-13.4-4.4-9.9zM170 46.6h-33.5v10.5H170zm-47.2 0H89.2v10.5h33.5zm-47.3 0H42.3v10.5h33.3zm141.5 0h-33.2v10.5H217zm94.5 0H278v10.5h33.5zm47.3 0h-33.5v10.5h33.5zm-94.6 0H231v10.5h33.2zm141.5 0h-33.3v10.5h33.3zM52.8 351.1H42v33.5h10.8zm70-215.9H89.2v10.5h33.5zm-70 10.6h22.8v-10.5H42v33.5h10.8zm168.9 228.6c50.5 0 91.3-40.8 91.3-91.3 0-50.2-40.8-91.3-91.3-91.3-50.2 0-91.3 41.1-91.3 91.3 0 50.5 41.1 91.3 91.3 91.3zm-48.2-111.1c0-25.4 29.5-31.8 49.6-31.8 16.9 0 29.2 5.8 44.3 12l-8.8 16.9h-.9c-6.4-9.9-24.8-13.1-35.6-13.1-9 0-29.8 1.8-29.8 14.9 0 21.6 78.5-10.2 78.5 37.9 0 25.4-31.5 31.2-51 31.2-18.1 0-32.4-2.9-47.2-12.2l9-18.4h.9c6.1 12.2 23.6 14.9 35.9 14.9 8.7 0 32.7-1.2 32.7-14.3 0-26.1-77.6 6.3-77.6-38zM52.8 178.4H42V212h10.8zm342.4 206.2H406v-33.5h-10.8zM52.8 307.9H42v33.5h10.8zM0 3.7v406l221.7 98.6L448 409.7V3.7zm418.8 387.1L222 476.5 29.2 390.8V120.7h389.7v270.1zm0-299.3H29.2V32.9h389.7v58.6zm-366 130.1H42v33.5h10.8zm0 43.2H42v33.5h10.8zM170 135.2h-33.5v10.5H170zm225.2 163.1H406v-33.5h-10.8zm0-43.2H406v-33.5h-10.8zM217 135.2h-33.2v10.5H217zM395.2 212H406v-33.5h-10.8zm0 129.5H406V308h-10.8zm-131-206.3H231v10.5h33.2zm47.3 0H278v10.5h33.5zm83.7 33.6H406v-33.5h-33.5v10.5h22.8zm-36.4-33.6h-33.5v10.5h33.5z\"]\n};\nvar faShopify = {\n prefix: 'fab',\n iconName: 'shopify',\n icon: [448, 512, [], \"e057\", \"M388.32,104.1a4.66,4.66,0,0,0-4.4-4c-2,0-37.23-.8-37.23-.8s-21.61-20.82-29.62-28.83V503.2L442.76,472S388.72,106.5,388.32,104.1ZM288.65,70.47a116.67,116.67,0,0,0-7.21-17.61C271,32.85,255.42,22,237,22a15,15,0,0,0-4,.4c-.4-.8-1.2-1.2-1.6-2C223.4,11.63,213,7.63,200.58,8c-24,.8-48,18-67.25,48.83-13.61,21.62-24,48.84-26.82,70.06-27.62,8.4-46.83,14.41-47.23,14.81-14,4.4-14.41,4.8-16,18-1.2,10-38,291.82-38,291.82L307.86,504V65.67a41.66,41.66,0,0,0-4.4.4S297.86,67.67,288.65,70.47ZM233.41,87.69c-16,4.8-33.63,10.4-50.84,15.61,4.8-18.82,14.41-37.63,25.62-50,4.4-4.4,10.41-9.61,17.21-12.81C232.21,54.86,233.81,74.48,233.41,87.69ZM200.58,24.44A27.49,27.49,0,0,1,215,28c-6.4,3.2-12.81,8.41-18.81,14.41-15.21,16.42-26.82,42-31.62,66.45-14.42,4.41-28.83,8.81-42,12.81C131.33,83.28,163.75,25.24,200.58,24.44ZM154.15,244.61c1.6,25.61,69.25,31.22,73.25,91.66,2.8,47.64-25.22,80.06-65.65,82.47-48.83,3.2-75.65-25.62-75.65-25.62l10.4-44s26.82,20.42,48.44,18.82c14-.8,19.22-12.41,18.81-20.42-2-33.62-57.24-31.62-60.84-86.86-3.2-46.44,27.22-93.27,94.47-97.68,26-1.6,39.23,4.81,39.23,4.81L221.4,225.39s-17.21-8-37.63-6.4C154.15,221,153.75,239.8,154.15,244.61ZM249.42,82.88c0-12-1.6-29.22-7.21-43.63,18.42,3.6,27.22,24,31.23,36.43Q262.63,78.68,249.42,82.88Z\"]\n};\nvar faShopware = {\n prefix: 'fab',\n iconName: 'shopware',\n icon: [512, 512, [], \"f5b5\", \"M403.5 455.41A246.17 246.17 0 0 1 256 504C118.81 504 8 393 8 256 8 118.81 119 8 256 8a247.39 247.39 0 0 1 165.7 63.5 3.57 3.57 0 0 1-2.86 6.18A418.62 418.62 0 0 0 362.13 74c-129.36 0-222.4 53.47-222.4 155.35 0 109 92.13 145.88 176.83 178.73 33.64 13 65.4 25.36 87 41.59a3.58 3.58 0 0 1 0 5.72zM503 233.09a3.64 3.64 0 0 0-1.27-2.44c-51.76-43-93.62-60.48-144.48-60.48-84.13 0-80.25 52.17-80.25 53.63 0 42.6 52.06 62 112.34 84.49 31.07 11.59 63.19 23.57 92.68 39.93a3.57 3.57 0 0 0 5-1.82A249 249 0 0 0 503 233.09z\"]\n};\nvar faSimplybuilt = {\n prefix: 'fab',\n iconName: 'simplybuilt',\n icon: [512, 512, [], \"f215\", \"M481.2 64h-106c-14.5 0-26.6 11.8-26.6 26.3v39.6H163.3V90.3c0-14.5-12-26.3-26.6-26.3h-106C16.1 64 4.3 75.8 4.3 90.3v331.4c0 14.5 11.8 26.3 26.6 26.3h450.4c14.8 0 26.6-11.8 26.6-26.3V90.3c-.2-14.5-12-26.3-26.7-26.3zM149.8 355.8c-36.6 0-66.4-29.7-66.4-66.4 0-36.9 29.7-66.6 66.4-66.6 36.9 0 66.6 29.7 66.6 66.6 0 36.7-29.7 66.4-66.6 66.4zm212.4 0c-36.9 0-66.6-29.7-66.6-66.6 0-36.6 29.7-66.4 66.6-66.4 36.6 0 66.4 29.7 66.4 66.4 0 36.9-29.8 66.6-66.4 66.6z\"]\n};\nvar faSistrix = {\n prefix: 'fab',\n iconName: 'sistrix',\n icon: [448, 512, [], \"f3ee\", \"M448 449L301.2 300.2c20-27.9 31.9-62.2 31.9-99.2 0-93.1-74.7-168.9-166.5-168.9C74.7 32 0 107.8 0 200.9s74.7 168.9 166.5 168.9c39.8 0 76.3-14.2 105-37.9l146 148.1 30.5-31zM166.5 330.8c-70.6 0-128.1-58.3-128.1-129.9S95.9 71 166.5 71s128.1 58.3 128.1 129.9-57.4 129.9-128.1 129.9z\"]\n};\nvar faSith = {\n prefix: 'fab',\n iconName: 'sith',\n icon: [448, 512, [], \"f512\", \"M0 32l69.71 118.75-58.86-11.52 69.84 91.03a146.741 146.741 0 0 0 0 51.45l-69.84 91.03 58.86-11.52L0 480l118.75-69.71-11.52 58.86 91.03-69.84c17.02 3.04 34.47 3.04 51.48 0l91.03 69.84-11.52-58.86L448 480l-69.71-118.78 58.86 11.52-69.84-91.03c3.03-17.01 3.04-34.44 0-51.45l69.84-91.03-58.86 11.52L448 32l-118.75 69.71 11.52-58.9-91.06 69.87c-8.5-1.52-17.1-2.29-25.71-2.29s-17.21.78-25.71 2.29l-91.06-69.87 11.52 58.9L0 32zm224 99.78c31.8 0 63.6 12.12 87.85 36.37 48.5 48.5 48.49 127.21 0 175.7s-127.2 48.46-175.7-.03c-48.5-48.5-48.49-127.21 0-175.7 24.24-24.25 56.05-36.34 87.85-36.34zm0 36.66c-22.42 0-44.83 8.52-61.92 25.61-34.18 34.18-34.19 89.68 0 123.87s89.65 34.18 123.84 0c34.18-34.18 34.19-89.68 0-123.87-17.09-17.09-39.5-25.61-61.92-25.61z\"]\n};\nvar faSketch = {\n prefix: 'fab',\n iconName: 'sketch',\n icon: [512, 512, [], \"f7c6\", \"M27.5 162.2L9 187.1h90.5l6.9-130.7-78.9 105.8zM396.3 45.7L267.7 32l135.7 147.2-7.1-133.5zM112.2 218.3l-11.2-22H9.9L234.8 458zm2-31.2h284l-81.5-88.5L256.3 33zm297.3 9.1L277.6 458l224.8-261.7h-90.9zM415.4 69L406 56.4l.9 17.3 6.1 113.4h90.3zM113.5 93.5l-4.6 85.6L244.7 32 116.1 45.7zm287.7 102.7h-290l42.4 82.9L256.3 480l144.9-283.8z\"]\n};\nvar faSkyatlas = {\n prefix: 'fab',\n iconName: 'skyatlas',\n icon: [640, 512, [], \"f216\", \"M640 329.3c0 65.9-52.5 114.4-117.5 114.4-165.9 0-196.6-249.7-359.7-249.7-146.9 0-147.1 212.2 5.6 212.2 42.5 0 90.9-17.8 125.3-42.5 5.6-4.1 16.9-16.3 22.8-16.3s10.9 5 10.9 10.9c0 7.8-13.1 19.1-18.7 24.1-40.9 35.6-100.3 61.2-154.7 61.2-83.4.1-154-59-154-144.9s67.5-149.1 152.8-149.1c185.3 0 222.5 245.9 361.9 245.9 99.9 0 94.8-139.7 3.4-139.7-17.5 0-35 11.6-46.9 11.6-8.4 0-15.9-7.2-15.9-15.6 0-11.6 5.3-23.7 5.3-36.3 0-66.6-50.9-114.7-116.9-114.7-53.1 0-80 36.9-88.8 36.9-6.2 0-11.2-5-11.2-11.2 0-5.6 4.1-10.3 7.8-14.4 25.3-28.8 64.7-43.7 102.8-43.7 79.4 0 139.1 58.4 139.1 137.8 0 6.9-.3 13.7-1.2 20.6 11.9-3.1 24.1-4.7 35.9-4.7 60.7 0 111.9 45.3 111.9 107.2z\"]\n};\nvar faSkype = {\n prefix: 'fab',\n iconName: 'skype',\n icon: [448, 512, [], \"f17e\", \"M424.7 299.8c2.9-14 4.7-28.9 4.7-43.8 0-113.5-91.9-205.3-205.3-205.3-14.9 0-29.7 1.7-43.8 4.7C161.3 40.7 137.7 32 112 32 50.2 32 0 82.2 0 144c0 25.7 8.7 49.3 23.3 68.2-2.9 14-4.7 28.9-4.7 43.8 0 113.5 91.9 205.3 205.3 205.3 14.9 0 29.7-1.7 43.8-4.7 19 14.6 42.6 23.3 68.2 23.3 61.8 0 112-50.2 112-112 .1-25.6-8.6-49.2-23.2-68.1zm-194.6 91.5c-65.6 0-120.5-29.2-120.5-65 0-16 9-30.6 29.5-30.6 31.2 0 34.1 44.9 88.1 44.9 25.7 0 42.3-11.4 42.3-26.3 0-18.7-16-21.6-42-28-62.5-15.4-117.8-22-117.8-87.2 0-59.2 58.6-81.1 109.1-81.1 55.1 0 110.8 21.9 110.8 55.4 0 16.9-11.4 31.8-30.3 31.8-28.3 0-29.2-33.5-75-33.5-25.7 0-42 7-42 22.5 0 19.8 20.8 21.8 69.1 33 41.4 9.3 90.7 26.8 90.7 77.6 0 59.1-57.1 86.5-112 86.5z\"]\n};\nvar faSlack = {\n prefix: 'fab',\n iconName: 'slack',\n icon: [448, 512, [], \"f198\", \"M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z\"]\n};\nvar faSlackHash = {\n prefix: 'fab',\n iconName: 'slack-hash',\n icon: [448, 512, [], \"f3ef\", \"M446.2 270.4c-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-30.3-90 45.4-15.1c19.1-6.2 29.1-26.8 23-45.9-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-93.4 31.2-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-45.3 15c-19.1 6.2-29.1 26.8-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l30.3 90L78 354.8c-19 6.2-29.1 26.9-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 93.6-31.3 15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 45.4-15.1c19-6 29.1-26.7 22.9-45.7zm-254.1 47.2l-30.3-90.2 93.5-31.3 30.3 90.2-93.5 31.3z\"]\n};\nvar faSlideshare = {\n prefix: 'fab',\n iconName: 'slideshare',\n icon: [512, 512, [], \"f1e7\", \"M187.7 153.7c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7s61.7-26 61.7-57.7c0-32-27.7-57.7-61.7-57.7zm143.4 0c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7 34.3 0 61.7-26 61.7-57.7.1-32-27.4-57.7-61.7-57.7zm156.6 90l-6 4.3V49.7c0-27.4-20.6-49.7-46-49.7H76.6c-25.4 0-46 22.3-46 49.7V248c-2-1.4-4.3-2.9-6.3-4.3-15.1-10.6-25.1 4-16 17.7 18.3 22.6 53.1 50.3 106.3 72C58.3 525.1 252 555.7 248.9 457.5c0-.7.3-56.6.3-96.6 5.1 1.1 9.4 2.3 13.7 3.1 0 39.7.3 92.8.3 93.5-3.1 98.3 190.6 67.7 134.3-124 53.1-21.7 88-49.4 106.3-72 9.1-13.8-.9-28.3-16.1-17.8zm-30.5 19.2c-68.9 37.4-128.3 31.1-160.6 29.7-23.7-.9-32.6 9.1-33.7 24.9-10.3-7.7-18.6-15.5-20.3-17.1-5.1-5.4-13.7-8-27.1-7.7-31.7 1.1-89.7 7.4-157.4-28V72.3c0-34.9 8.9-45.7 40.6-45.7h317.7c30.3 0 40.9 12.9 40.9 45.7v190.6z\"]\n};\nvar faSnapchat = {\n prefix: 'fab',\n iconName: 'snapchat',\n icon: [496, 512, [], \"f2ab\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm169.5 338.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C183.1 100 230.7 96 244.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z\"]\n};\nvar faSnapchatGhost = {\n prefix: 'fab',\n iconName: 'snapchat-ghost',\n icon: [512, 512, [], \"f2ac\", \"M510.846 392.673c-5.211 12.157-27.239 21.089-67.36 27.318-2.064 2.786-3.775 14.686-6.507 23.956-1.625 5.566-5.623 8.869-12.128 8.869l-.297-.005c-9.395 0-19.203-4.323-38.852-4.323-26.521 0-35.662 6.043-56.254 20.588-21.832 15.438-42.771 28.764-74.027 27.399-31.646 2.334-58.025-16.908-72.871-27.404-20.714-14.643-29.828-20.582-56.241-20.582-18.864 0-30.736 4.72-38.852 4.72-8.073 0-11.213-4.922-12.422-9.04-2.703-9.189-4.404-21.263-6.523-24.13-20.679-3.209-67.31-11.344-68.498-32.15a10.627 10.627 0 0 1 8.877-11.069c69.583-11.455 100.924-82.901 102.227-85.934.074-.176.155-.344.237-.515 3.713-7.537 4.544-13.849 2.463-18.753-5.05-11.896-26.872-16.164-36.053-19.796-23.715-9.366-27.015-20.128-25.612-27.504 2.437-12.836 21.725-20.735 33.002-15.453 8.919 4.181 16.843 6.297 23.547 6.297 5.022 0 8.212-1.204 9.96-2.171-2.043-35.936-7.101-87.29 5.687-115.969C158.122 21.304 229.705 15.42 250.826 15.42c.944 0 9.141-.089 10.11-.089 52.148 0 102.254 26.78 126.723 81.643 12.777 28.65 7.749 79.792 5.695 116.009 1.582.872 4.357 1.942 8.599 2.139 6.397-.286 13.815-2.389 22.069-6.257 6.085-2.846 14.406-2.461 20.48.058l.029.01c9.476 3.385 15.439 10.215 15.589 17.87.184 9.747-8.522 18.165-25.878 25.018-2.118.835-4.694 1.655-7.434 2.525-9.797 3.106-24.6 7.805-28.616 17.271-2.079 4.904-1.256 11.211 2.46 18.748.087.168.166.342.239.515 1.301 3.03 32.615 74.46 102.23 85.934 6.427 1.058 11.163 7.877 7.725 15.859z\"]\n};\nvar faSnapchatSquare = {\n prefix: 'fab',\n iconName: 'snapchat-square',\n icon: [448, 512, [], \"f2ad\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-6.5 314.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C159.1 100 206.7 96 220.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z\"]\n};\nvar faSoundcloud = {\n prefix: 'fab',\n iconName: 'soundcloud',\n icon: [640, 512, [], \"f1be\", \"M111.4 256.3l5.8 65-5.8 68.3c-.3 2.5-2.2 4.4-4.4 4.4s-4.2-1.9-4.2-4.4l-5.6-68.3 5.6-65c0-2.2 1.9-4.2 4.2-4.2 2.2 0 4.1 2 4.4 4.2zm21.4-45.6c-2.8 0-4.7 2.2-5 5l-5 105.6 5 68.3c.3 2.8 2.2 5 5 5 2.5 0 4.7-2.2 4.7-5l5.8-68.3-5.8-105.6c0-2.8-2.2-5-4.7-5zm25.5-24.1c-3.1 0-5.3 2.2-5.6 5.3l-4.4 130 4.4 67.8c.3 3.1 2.5 5.3 5.6 5.3 2.8 0 5.3-2.2 5.3-5.3l5.3-67.8-5.3-130c0-3.1-2.5-5.3-5.3-5.3zM7.2 283.2c-1.4 0-2.2 1.1-2.5 2.5L0 321.3l4.7 35c.3 1.4 1.1 2.5 2.5 2.5s2.2-1.1 2.5-2.5l5.6-35-5.6-35.6c-.3-1.4-1.1-2.5-2.5-2.5zm23.6-21.9c-1.4 0-2.5 1.1-2.5 2.5l-6.4 57.5 6.4 56.1c0 1.7 1.1 2.8 2.5 2.8s2.5-1.1 2.8-2.5l7.2-56.4-7.2-57.5c-.3-1.4-1.4-2.5-2.8-2.5zm25.3-11.4c-1.7 0-3.1 1.4-3.3 3.3L47 321.3l5.8 65.8c.3 1.7 1.7 3.1 3.3 3.1 1.7 0 3.1-1.4 3.1-3.1l6.9-65.8-6.9-68.1c0-1.9-1.4-3.3-3.1-3.3zm25.3-2.2c-1.9 0-3.6 1.4-3.6 3.6l-5.8 70 5.8 67.8c0 2.2 1.7 3.6 3.6 3.6s3.6-1.4 3.9-3.6l6.4-67.8-6.4-70c-.3-2.2-2-3.6-3.9-3.6zm241.4-110.9c-1.1-.8-2.8-1.4-4.2-1.4-2.2 0-4.2.8-5.6 1.9-1.9 1.7-3.1 4.2-3.3 6.7v.8l-3.3 176.7 1.7 32.5 1.7 31.7c.3 4.7 4.2 8.6 8.9 8.6s8.6-3.9 8.6-8.6l3.9-64.2-3.9-177.5c-.4-3-2-5.8-4.5-7.2zm-26.7 15.3c-1.4-.8-2.8-1.4-4.4-1.4s-3.1.6-4.4 1.4c-2.2 1.4-3.6 3.9-3.6 6.7l-.3 1.7-2.8 160.8s0 .3 3.1 65.6v.3c0 1.7.6 3.3 1.7 4.7 1.7 1.9 3.9 3.1 6.4 3.1 2.2 0 4.2-1.1 5.6-2.5 1.7-1.4 2.5-3.3 2.5-5.6l.3-6.7 3.1-58.6-3.3-162.8c-.3-2.8-1.7-5.3-3.9-6.7zm-111.4 22.5c-3.1 0-5.8 2.8-5.8 6.1l-4.4 140.6 4.4 67.2c.3 3.3 2.8 5.8 5.8 5.8 3.3 0 5.8-2.5 6.1-5.8l5-67.2-5-140.6c-.2-3.3-2.7-6.1-6.1-6.1zm376.7 62.8c-10.8 0-21.1 2.2-30.6 6.1-6.4-70.8-65.8-126.4-138.3-126.4-17.8 0-35 3.3-50.3 9.4-6.1 2.2-7.8 4.4-7.8 9.2v249.7c0 5 3.9 8.6 8.6 9.2h218.3c43.3 0 78.6-35 78.6-78.3.1-43.6-35.2-78.9-78.5-78.9zm-296.7-60.3c-4.2 0-7.5 3.3-7.8 7.8l-3.3 136.7 3.3 65.6c.3 4.2 3.6 7.5 7.8 7.5 4.2 0 7.5-3.3 7.5-7.5l3.9-65.6-3.9-136.7c-.3-4.5-3.3-7.8-7.5-7.8zm-53.6-7.8c-3.3 0-6.4 3.1-6.4 6.7l-3.9 145.3 3.9 66.9c.3 3.6 3.1 6.4 6.4 6.4 3.6 0 6.4-2.8 6.7-6.4l4.4-66.9-4.4-145.3c-.3-3.6-3.1-6.7-6.7-6.7zm26.7 3.4c-3.9 0-6.9 3.1-6.9 6.9L227 321.3l3.9 66.4c.3 3.9 3.1 6.9 6.9 6.9s6.9-3.1 6.9-6.9l4.2-66.4-4.2-141.7c0-3.9-3-6.9-6.9-6.9z\"]\n};\nvar faSourcetree = {\n prefix: 'fab',\n iconName: 'sourcetree',\n icon: [448, 512, [], \"f7d3\", \"M427.2 203c0-112.1-90.9-203-203-203C112.1-.2 21.2 90.6 21 202.6A202.86 202.86 0 0 0 161.5 396v101.7a14.3 14.3 0 0 0 14.3 14.3h96.4a14.3 14.3 0 0 0 14.3-14.3V396.1A203.18 203.18 0 0 0 427.2 203zm-271.6 0c0-90.8 137.3-90.8 137.3 0-.1 89.9-137.3 91-137.3 0z\"]\n};\nvar faSpeakap = {\n prefix: 'fab',\n iconName: 'speakap',\n icon: [448, 512, [], \"f3f3\", \"M64 391.78C-15.41 303.59-8 167.42 80.64 87.64s224.8-73 304.21 15.24 72 224.36-16.64 304.14c-18.74 16.87 64 43.09 42 52.26-82.06 34.21-253.91 35-346.23-67.5zm213.31-211.6l38.5-40.86c-9.61-8.89-32-26.83-76.17-27.6-52.33-.91-95.86 28.3-96.77 80-.2 11.33.29 36.72 29.42 54.83 34.46 21.42 86.52 21.51 86 52.26-.37 21.28-26.42 25.81-38.59 25.6-3-.05-30.23-.46-47.61-24.62l-40 42.61c28.16 27 59 32.62 83.49 33.05 10.23.18 96.42.33 97.84-81 .28-15.81-2.07-39.72-28.86-56.59-34.36-21.64-85-19.45-84.43-49.75.41-23.25 31-25.37 37.53-25.26.43 0 26.62.26 39.62 17.37z\"]\n};\nvar faSpeakerDeck = {\n prefix: 'fab',\n iconName: 'speaker-deck',\n icon: [512, 512, [], \"f83c\", \"M213.86 296H100a100 100 0 0 1 0-200h132.84a40 40 0 0 1 0 80H98c-26.47 0-26.45 40 0 40h113.82a100 100 0 0 1 0 200H40a40 40 0 0 1 0-80h173.86c26.48 0 26.46-40 0-40zM298 416a120.21 120.21 0 0 0 51.11-80h64.55a19.83 19.83 0 0 0 19.66-20V196a19.83 19.83 0 0 0-19.66-20H296.42a60.77 60.77 0 0 0 0-80h136.93c43.44 0 78.65 35.82 78.65 80v160c0 44.18-35.21 80-78.65 80z\"]\n};\nvar faSpotify = {\n prefix: 'fab',\n iconName: 'spotify',\n icon: [496, 512, [], \"f1bc\", \"M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm100.7 364.9c-4.2 0-6.8-1.3-10.7-3.6-62.4-37.6-135-39.2-206.7-24.5-3.9 1-9 2.6-11.9 2.6-9.7 0-15.8-7.7-15.8-15.8 0-10.3 6.1-15.2 13.6-16.8 81.9-18.1 165.6-16.5 237 26.2 6.1 3.9 9.7 7.4 9.7 16.5s-7.1 15.4-15.2 15.4zm26.9-65.6c-5.2 0-8.7-2.3-12.3-4.2-62.5-37-155.7-51.9-238.6-29.4-4.8 1.3-7.4 2.6-11.9 2.6-10.7 0-19.4-8.7-19.4-19.4s5.2-17.8 15.5-20.7c27.8-7.8 56.2-13.6 97.8-13.6 64.9 0 127.6 16.1 177 45.5 8.1 4.8 11.3 11 11.3 19.7-.1 10.8-8.5 19.5-19.4 19.5zm31-76.2c-5.2 0-8.4-1.3-12.9-3.9-71.2-42.5-198.5-52.7-280.9-29.7-3.6 1-8.1 2.6-12.9 2.6-13.2 0-23.3-10.3-23.3-23.6 0-13.6 8.4-21.3 17.4-23.9 35.2-10.3 74.6-15.2 117.5-15.2 73 0 149.5 15.2 205.4 47.8 7.8 4.5 12.9 10.7 12.9 22.6 0 13.6-11 23.3-23.2 23.3z\"]\n};\nvar faSquarespace = {\n prefix: 'fab',\n iconName: 'squarespace',\n icon: [512, 512, [], \"f5be\", \"M186.12 343.34c-9.65 9.65-9.65 25.29 0 34.94 9.65 9.65 25.29 9.65 34.94 0L378.24 221.1c19.29-19.29 50.57-19.29 69.86 0s19.29 50.57 0 69.86L293.95 445.1c19.27 19.29 50.53 19.31 69.82.04l.04-.04 119.25-119.24c38.59-38.59 38.59-101.14 0-139.72-38.59-38.59-101.15-38.59-139.72 0l-157.22 157.2zm244.53-104.8c-9.65-9.65-25.29-9.65-34.93 0l-157.2 157.18c-19.27 19.29-50.53 19.31-69.82.05l-.05-.05c-9.64-9.64-25.27-9.65-34.92-.01l-.01.01c-9.65 9.64-9.66 25.28-.02 34.93l.02.02c38.58 38.57 101.14 38.57 139.72 0l157.2-157.2c9.65-9.65 9.65-25.29.01-34.93zm-261.99 87.33l157.18-157.18c9.64-9.65 9.64-25.29 0-34.94-9.64-9.64-25.27-9.64-34.91 0L133.72 290.93c-19.28 19.29-50.56 19.3-69.85.01l-.01-.01c-19.29-19.28-19.31-50.54-.03-69.84l.03-.03L218.03 66.89c-19.28-19.29-50.55-19.3-69.85-.02l-.02.02L28.93 186.14c-38.58 38.59-38.58 101.14 0 139.72 38.6 38.59 101.13 38.59 139.73.01zm-87.33-52.4c9.64 9.64 25.27 9.64 34.91 0l157.21-157.19c19.28-19.29 50.55-19.3 69.84-.02l.02.02c9.65 9.65 25.29 9.65 34.93 0 9.65-9.65 9.65-25.29 0-34.93-38.59-38.59-101.13-38.59-139.72 0L81.33 238.54c-9.65 9.64-9.65 25.28-.01 34.93h.01z\"]\n};\nvar faStackExchange = {\n prefix: 'fab',\n iconName: 'stack-exchange',\n icon: [448, 512, [], \"f18d\", \"M17.7 332.3h412.7v22c0 37.7-29.3 68-65.3 68h-19L259.3 512v-89.7H83c-36 0-65.3-30.3-65.3-68v-22zm0-23.6h412.7v-85H17.7v85zm0-109.4h412.7v-85H17.7v85zM365 0H83C47 0 17.7 30.3 17.7 67.7V90h412.7V67.7C430.3 30.3 401 0 365 0z\"]\n};\nvar faStackOverflow = {\n prefix: 'fab',\n iconName: 'stack-overflow',\n icon: [384, 512, [], \"f16c\", \"M290.7 311L95 269.7 86.8 309l195.7 41zm51-87L188.2 95.7l-25.5 30.8 153.5 128.3zm-31.2 39.7L129.2 179l-16.7 36.5L293.7 300zM262 32l-32 24 119.3 160.3 32-24zm20.5 328h-200v39.7h200zm39.7 80H42.7V320h-40v160h359.5V320h-40z\"]\n};\nvar faStackpath = {\n prefix: 'fab',\n iconName: 'stackpath',\n icon: [448, 512, [], \"f842\", \"M244.6 232.4c0 8.5-4.26 20.49-21.34 20.49h-19.61v-41.47h19.61c17.13 0 21.34 12.36 21.34 20.98zM448 32v448H0V32zM151.3 287.84c0-21.24-12.12-34.54-46.72-44.85-20.57-7.41-26-10.91-26-18.63s7-14.61 20.41-14.61c14.09 0 20.79 8.45 20.79 18.35h30.7l.19-.57c.5-19.57-15.06-41.65-51.12-41.65-23.37 0-52.55 10.75-52.55 38.29 0 19.4 9.25 31.29 50.74 44.37 17.26 6.15 21.91 10.4 21.91 19.48 0 15.2-19.13 14.23-19.47 14.23-20.4 0-25.65-9.1-25.65-21.9h-30.8l-.18.56c-.68 31.32 28.38 45.22 56.63 45.22 29.98 0 51.12-13.55 51.12-38.29zm125.38-55.63c0-25.3-18.43-45.46-53.42-45.46h-51.78v138.18h32.17v-47.36h19.61c30.25 0 53.42-15.95 53.42-45.36zM297.94 325L347 186.78h-31.09L268 325zm106.52-138.22h-31.09L325.46 325h29.94z\"]\n};\nvar faStaylinked = {\n prefix: 'fab',\n iconName: 'staylinked',\n icon: [440, 512, [], \"f3f5\", \"M382.7 292.5l2.7 2.7-170-167.3c-3.5-3.5-9.7-3.7-13.8-.5L144.3 171c-4.2 3.2-4.6 8.7-1.1 12.2l68.1 64.3c3.6 3.5 9.9 3.7 14 .5l.1-.1c4.1-3.2 10.4-3 14 .5l84 81.3c3.6 3.5 3.2 9-.9 12.2l-93.2 74c-4.2 3.3-10.5 3.1-14.2-.4L63.2 268c-3.5-3.5-9.7-3.7-13.9-.5L3.5 302.4c-4.2 3.2-4.7 8.7-1.2 12.2L211 510.7s7.4 6.8 17.3-.8l198-163.9c4-3.2 4.4-8.7.7-12.2zm54.5-83.4L226.7 2.5c-1.5-1.2-8-5.5-16.3 1.1L3.6 165.7c-4.2 3.2-4.8 8.7-1.2 12.2l42.3 41.7 171.7 165.1c3.7 3.5 10.1 3.7 14.3.4l50.2-38.8-.3-.3 7.7-6c4.2-3.2 4.6-8.7.9-12.2l-57.1-54.4c-3.6-3.5-10-3.7-14.2-.5l-.1.1c-4.2 3.2-10.5 3.1-14.2-.4L109 180.8c-3.6-3.5-3.1-8.9 1.1-12.2l92.2-71.5c4.1-3.2 10.3-3 13.9.5l160.4 159c3.7 3.5 10 3.7 14.1.5l45.8-35.8c4.1-3.2 4.4-8.7.7-12.2z\"]\n};\nvar faSteam = {\n prefix: 'fab',\n iconName: 'steam',\n icon: [496, 512, [], \"f1b6\", \"M496 256c0 137-111.2 248-248.4 248-113.8 0-209.6-76.3-239-180.4l95.2 39.3c6.4 32.1 34.9 56.4 68.9 56.4 39.2 0 71.9-32.4 70.2-73.5l84.5-60.2c52.1 1.3 95.8-40.9 95.8-93.5 0-51.6-42-93.5-93.7-93.5s-93.7 42-93.7 93.5v1.2L176.6 279c-15.5-.9-30.7 3.4-43.5 12.1L0 236.1C10.2 108.4 117.1 8 247.6 8 384.8 8 496 119 496 256zM155.7 384.3l-30.5-12.6a52.79 52.79 0 0 0 27.2 25.8c26.9 11.2 57.8-1.6 69-28.4 5.4-13 5.5-27.3.1-40.3-5.4-13-15.5-23.2-28.5-28.6-12.9-5.4-26.7-5.2-38.9-.6l31.5 13c19.8 8.2 29.2 30.9 20.9 50.7-8.3 19.9-31 29.2-50.8 21zm173.8-129.9c-34.4 0-62.4-28-62.4-62.3s28-62.3 62.4-62.3 62.4 28 62.4 62.3-27.9 62.3-62.4 62.3zm.1-15.6c25.9 0 46.9-21 46.9-46.8 0-25.9-21-46.8-46.9-46.8s-46.9 21-46.9 46.8c.1 25.8 21.1 46.8 46.9 46.8z\"]\n};\nvar faSteamSquare = {\n prefix: 'fab',\n iconName: 'steam-square',\n icon: [448, 512, [], \"f1b7\", \"M185.2 356.5c7.7-18.5-1-39.7-19.6-47.4l-29.5-12.2c11.4-4.3 24.3-4.5 36.4.5 12.2 5.1 21.6 14.6 26.7 26.7 5 12.2 5 25.6-.1 37.7-10.5 25.1-39.4 37-64.6 26.5-11.6-4.8-20.4-13.6-25.4-24.2l28.5 11.8c18.6 7.8 39.9-.9 47.6-19.4zM400 32H48C21.5 32 0 53.5 0 80v160.7l116.6 48.1c12-8.2 26.2-12.1 40.7-11.3l55.4-80.2v-1.1c0-48.2 39.3-87.5 87.6-87.5s87.6 39.3 87.6 87.5c0 49.2-40.9 88.7-89.6 87.5l-79 56.3c1.6 38.5-29.1 68.8-65.7 68.8-31.8 0-58.5-22.7-64.5-52.7L0 319.2V432c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-99.7 222.5c-32.2 0-58.4-26.1-58.4-58.3s26.2-58.3 58.4-58.3 58.4 26.2 58.4 58.3-26.2 58.3-58.4 58.3zm.1-14.6c24.2 0 43.9-19.6 43.9-43.8 0-24.2-19.6-43.8-43.9-43.8-24.2 0-43.9 19.6-43.9 43.8 0 24.2 19.7 43.8 43.9 43.8z\"]\n};\nvar faSteamSymbol = {\n prefix: 'fab',\n iconName: 'steam-symbol',\n icon: [448, 512, [], \"f3f6\", \"M395.5 177.5c0 33.8-27.5 61-61 61-33.8 0-61-27.3-61-61s27.3-61 61-61c33.5 0 61 27.2 61 61zm52.5.2c0 63-51 113.8-113.7 113.8L225 371.3c-4 43-40.5 76.8-84.5 76.8-40.5 0-74.7-28.8-83-67L0 358V250.7L97.2 290c15.1-9.2 32.2-13.3 52-11.5l71-101.7c.5-62.3 51.5-112.8 114-112.8C397 64 448 115 448 177.7zM203 363c0-34.7-27.8-62.5-62.5-62.5-4.5 0-9 .5-13.5 1.5l26 10.5c25.5 10.2 38 39 27.7 64.5-10.2 25.5-39.2 38-64.7 27.5-10.2-4-20.5-8.3-30.7-12.2 10.5 19.7 31.2 33.2 55.2 33.2 34.7 0 62.5-27.8 62.5-62.5zm207.5-185.3c0-42-34.3-76.2-76.2-76.2-42.3 0-76.5 34.2-76.5 76.2 0 42.2 34.3 76.2 76.5 76.2 41.9.1 76.2-33.9 76.2-76.2z\"]\n};\nvar faStickerMule = {\n prefix: 'fab',\n iconName: 'sticker-mule',\n icon: [576, 512, [], \"f3f7\", \"M561.7 199.6c-1.3.3.3 0 0 0zm-6.2-77.4c-7.7-22.3-5.1-7.2-13.4-36.9-1.6-6.5-3.6-14.5-6.2-20-4.4-8.7-4.6-7.5-4.6-9.5 0-5.3 30.7-45.3 19-46.9-5.7-.6-12.2 11.6-20.6 17-8.6 4.2-8 5-10.3 5-2.6 0-5.7-3-6.2-5-2-5.7 1.9-25.9-3.6-25.9-3.6 0-12.3 24.8-17 25.8-5.2 1.3-27.9-11.4-75.1 18-25.3 13.2-86.9 65.2-87 65.3-6.7 4.7-20 4.7-35.5 16-44.4 30.1-109.6 9.4-110.7 9-110.6-26.8-128-15.2-159 11.5-20.8 17.9-23.7 36.5-24.2 38.9-4.2 20.4 5.2 48.3 6.7 64.3 1.8 19.3-2.7 17.7 7.7 98.3.5 1 4.1 0 5.1 1.5 0 8.4-3.8 12.1-4.1 13-1.5 4.5-1.5 10.5 0 16 2.3 8.2 8.2 37.2 8.2 46.9 0 41.8.4 44 2.6 49.4 3.9 10 12.5 9.1 17 12 3.1 3.5-.5 8.5 1 12.5.5 2 3.6 4 6.2 5 9.2 3.6 27 .3 29.9-2.5 1.6-1.5.5-4.5 3.1-5 5.1 0 10.8-.5 14.4-2.5 5.1-2.5 4.1-6 1.5-10.5-.4-.8-7-13.3-9.8-16-2.1-2-5.1-3-7.2-4.5-5.8-4.9-10.3-19.4-10.3-19.5-4.6-19.4-10.3-46.3-4.1-66.8 4.6-17.2 39.5-87.7 39.6-87.8 4.1-6.5 17-11.5 27.3-7 6 1.9 19.3 22 65.4 30.9 47.9 8.7 97.4-2 112.2-2 2.8 2-1.9 13-.5 38.9 0 26.4-.4 13.7-4.1 29.9-2.2 9.7 3.4 23.2-1.5 46.9-1.4 9.8-9.9 32.7-8.2 43.4.5 1 1 2 1.5 3.5.5 4.5 1.5 8.5 4.6 10 7.3 3.6 12-3.5 9.8 11.5-.7 3.1-2.6 12 1.5 15 4.4 3.7 30.6 3.4 36.5.5 2.6-1.5 1.6-4.5 6.4-7.4 1.9-.9 11.3-.4 11.3-6.5.3-1.8-9.2-19.9-9.3-20-2.6-3.5-9.2-4.5-11.3-8-6.9-10.1-1.7-52.6.5-59.4 3-11 5.6-22.4 8.7-32.4 11-42.5 10.3-50.6 16.5-68.3.8-1.8 6.4-23.1 10.3-29.9 9.3-17 21.7-32.4 33.5-47.4 18-22.9 34-46.9 52-69.8 6.1-7 8.2-13.7 18-8 10.8 5.7 21.6 7 31.9 17 14.6 12.8 10.2 18.2 11.8 22.9 1.5 5 7.7 10.5 14.9 9.5 10.4-2 13-2.5 13.4-2.5 2.6-.5 5.7-5 7.2-8 3.1-5.5 7.2-9 7.2-16.5 0-7.7-.4-2.8-20.6-52.9z\"]\n};\nvar faStrava = {\n prefix: 'fab',\n iconName: 'strava',\n icon: [384, 512, [], \"f428\", \"M158.4 0L7 292h89.2l62.2-116.1L220.1 292h88.5zm150.2 292l-43.9 88.2-44.6-88.2h-67.6l112.2 220 111.5-220z\"]\n};\nvar faStripe = {\n prefix: 'fab',\n iconName: 'stripe',\n icon: [640, 512, [], \"f429\", \"M165 144.7l-43.3 9.2-.2 142.4c0 26.3 19.8 43.3 46.1 43.3 14.6 0 25.3-2.7 31.2-5.9v-33.8c-5.7 2.3-33.7 10.5-33.7-15.7V221h33.7v-37.8h-33.7zm89.1 51.6l-2.7-13.1H213v153.2h44.3V233.3c10.5-13.8 28.2-11.1 33.9-9.3v-40.8c-6-2.1-26.7-6-37.1 13.1zm92.3-72.3l-44.6 9.5v36.2l44.6-9.5zM44.9 228.3c0-6.9 5.8-9.6 15.1-9.7 13.5 0 30.7 4.1 44.2 11.4v-41.8c-14.7-5.8-29.4-8.1-44.1-8.1-36 0-60 18.8-60 50.2 0 49.2 67.5 41.2 67.5 62.4 0 8.2-7.1 10.9-17 10.9-14.7 0-33.7-6.1-48.6-14.2v40c16.5 7.1 33.2 10.1 48.5 10.1 36.9 0 62.3-15.8 62.3-47.8 0-52.9-67.9-43.4-67.9-63.4zM640 261.6c0-45.5-22-81.4-64.2-81.4s-67.9 35.9-67.9 81.1c0 53.5 30.3 78.2 73.5 78.2 21.2 0 37.1-4.8 49.2-11.5v-33.4c-12.1 6.1-26 9.8-43.6 9.8-17.3 0-32.5-6.1-34.5-26.9h86.9c.2-2.3.6-11.6.6-15.9zm-87.9-16.8c0-20 12.3-28.4 23.4-28.4 10.9 0 22.5 8.4 22.5 28.4zm-112.9-64.6c-17.4 0-28.6 8.2-34.8 13.9l-2.3-11H363v204.8l44.4-9.4.1-50.2c6.4 4.7 15.9 11.2 31.4 11.2 31.8 0 60.8-23.2 60.8-79.6.1-51.6-29.3-79.7-60.5-79.7zm-10.6 122.5c-10.4 0-16.6-3.8-20.9-8.4l-.3-66c4.6-5.1 11-8.8 21.2-8.8 16.2 0 27.4 18.2 27.4 41.4.1 23.9-10.9 41.8-27.4 41.8zm-126.7 33.7h44.6V183.2h-44.6z\"]\n};\nvar faStripeS = {\n prefix: 'fab',\n iconName: 'stripe-s',\n icon: [384, 512, [], \"f42a\", \"M155.3 154.6c0-22.3 18.6-30.9 48.4-30.9 43.4 0 98.5 13.3 141.9 36.7V26.1C298.3 7.2 251.1 0 203.8 0 88.1 0 11 60.4 11 161.4c0 157.9 216.8 132.3 216.8 200.4 0 26.4-22.9 34.9-54.7 34.9-47.2 0-108.2-19.5-156.1-45.5v128.5a396.09 396.09 0 0 0 156 32.4c118.6 0 200.3-51 200.3-153.6 0-170.2-218-139.7-218-203.9z\"]\n};\nvar faStudiovinari = {\n prefix: 'fab',\n iconName: 'studiovinari',\n icon: [512, 512, [], \"f3f8\", \"M480.3 187.7l4.2 28v28l-25.1 44.1-39.8 78.4-56.1 67.5-79.1 37.8-17.7 24.5-7.7 12-9.6 4s17.3-63.6 19.4-63.6c2.1 0 20.3.7 20.3.7l66.7-38.6-92.5 26.1-55.9 36.8-22.8 28-6.6 1.4 20.8-73.6 6.9-5.5 20.7 12.9 88.3-45.2 56.8-51.5 14.8-68.4-125.4 23.3 15.2-18.2-173.4-53.3 81.9-10.5-166-122.9L133.5 108 32.2 0l252.9 126.6-31.5-38L378 163 234.7 64l18.7 38.4-49.6-18.1L158.3 0l194.6 122L310 66.2l108 96.4 12-8.9-21-16.4 4.2-37.8L451 89.1l29.2 24.7 11.5 4.2-7 6.2 8.5 12-13.1 7.4-10.3 20.2 10.5 23.9z\"]\n};\nvar faStumbleupon = {\n prefix: 'fab',\n iconName: 'stumbleupon',\n icon: [512, 512, [], \"f1a4\", \"M502.9 266v69.7c0 62.1-50.3 112.4-112.4 112.4-61.8 0-112.4-49.8-112.4-111.3v-70.2l34.3 16 51.1-15.2V338c0 14.7 12 26.5 26.7 26.5S417 352.7 417 338v-72h85.9zm-224.7-58.2l34.3 16 51.1-15.2V173c0-60.5-51.1-109-112.1-109-60.8 0-112.1 48.2-112.1 108.2v162.4c0 14.9-12 26.7-26.7 26.7S86 349.5 86 334.6V266H0v69.7C0 397.7 50.3 448 112.4 448c61.6 0 112.4-49.5 112.4-110.8V176.9c0-14.7 12-26.7 26.7-26.7s26.7 12 26.7 26.7v30.9z\"]\n};\nvar faStumbleuponCircle = {\n prefix: 'fab',\n iconName: 'stumbleupon-circle',\n icon: [496, 512, [], \"f1a3\", \"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 177.5c-9.8 0-17.8 8-17.8 17.8v106.9c0 40.9-33.9 73.9-74.9 73.9-41.4 0-74.9-33.5-74.9-74.9v-46.5h57.3v45.8c0 10 8 17.8 17.8 17.8s17.8-7.9 17.8-17.8V200.1c0-40 34.2-72.1 74.7-72.1 40.7 0 74.7 32.3 74.7 72.6v23.7l-34.1 10.1-22.9-10.7v-20.6c.1-9.6-7.9-17.6-17.7-17.6zm167.6 123.6c0 41.4-33.5 74.9-74.9 74.9-41.2 0-74.9-33.2-74.9-74.2V263l22.9 10.7 34.1-10.1v47.1c0 9.8 8 17.6 17.8 17.6s17.8-7.9 17.8-17.6v-48h57.3c-.1 45.9-.1 46.4-.1 46.4z\"]\n};\nvar faSuperpowers = {\n prefix: 'fab',\n iconName: 'superpowers',\n icon: [448, 512, [], \"f2dd\", \"M448 32c-83.3 11-166.8 22-250 33-92 12.5-163.3 86.7-169 180-3.3 55.5 18 109.5 57.8 148.2L0 480c83.3-11 166.5-22 249.8-33 91.8-12.5 163.3-86.8 168.7-179.8 3.5-55.5-18-109.5-57.7-148.2L448 32zm-79.7 232.3c-4.2 79.5-74 139.2-152.8 134.5-79.5-4.7-140.7-71-136.3-151 4.5-79.2 74.3-139.3 153-134.5 79.3 4.7 140.5 71 136.1 151z\"]\n};\nvar faSupple = {\n prefix: 'fab',\n iconName: 'supple',\n icon: [640, 512, [], \"f3f9\", \"M640 262.5c0 64.1-109 116.1-243.5 116.1-24.8 0-48.6-1.8-71.1-5 7.7.4 15.5.6 23.4.6 134.5 0 243.5-56.9 243.5-127.1 0-29.4-19.1-56.4-51.2-78 60 21.1 98.9 55.1 98.9 93.4zM47.7 227.9c-.1-70.2 108.8-127.3 243.3-127.6 7.9 0 15.6.2 23.3.5-22.5-3.2-46.3-4.9-71-4.9C108.8 96.3-.1 148.5 0 212.6c.1 38.3 39.1 72.3 99.3 93.3-32.3-21.5-51.5-48.6-51.6-78zm60.2 39.9s10.5 13.2 29.3 13.2c17.9 0 28.4-11.5 28.4-25.1 0-28-40.2-25.1-40.2-39.7 0-5.4 5.3-9.1 12.5-9.1 5.7 0 11.3 2.6 11.3 6.6v3.9h14.2v-7.9c0-12.1-15.4-16.8-25.4-16.8-16.5 0-28.5 10.2-28.5 24.1 0 26.6 40.2 25.4 40.2 39.9 0 6.6-5.8 10.1-12.3 10.1-11.9 0-20.7-10.1-20.7-10.1l-8.8 10.9zm120.8-73.6v54.4c0 11.3-7.1 17.8-17.8 17.8-10.7 0-17.8-6.5-17.8-17.7v-54.5h-15.8v55c0 18.9 13.4 31.9 33.7 31.9 20.1 0 33.4-13 33.4-31.9v-55h-15.7zm34.4 85.4h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.8-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5.1 14.7-14 14.7h-12.6zm57 43h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.7-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5 14.7-14 14.7h-12.6zm57.1 34.8c0 5.8 2.4 8.2 8.2 8.2h37.6c5.8 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-18.6c-1.7 0-2.6-1-2.6-2.6v-61.2c0-5.7-2.4-8.2-8.2-8.2H401v13.4h5.2c1.7 0 2.6 1 2.6 2.6v61.2zm63.4 0c0 5.8 2.4 8.2 8.2 8.2H519c5.7 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-19.7c-1.7 0-2.6-1-2.6-2.6v-20.3h27.7v-13.4H488v-22.4h19.2c1.7 0 2.6 1 2.6 2.6v5.2H524v-13c0-5.7-2.5-8.2-8.2-8.2h-51.6v13.4h7.8v63.9zm58.9-76v5.9h1.6v-5.9h2.7v-1.2h-7v1.2h2.7zm5.7-1.2v7.1h1.5v-5.7l2.3 5.7h1.3l2.3-5.7v5.7h1.5v-7.1h-2.3l-2.1 5.1-2.1-5.1h-2.4z\"]\n};\nvar faSuse = {\n prefix: 'fab',\n iconName: 'suse',\n icon: [640, 512, [], \"f7d6\", \"M471.08 102.66s-.3 18.3-.3 20.3c-9.1-3-74.4-24.1-135.7-26.3-51.9-1.8-122.8-4.3-223 57.3-19.4 12.4-73.9 46.1-99.6 109.7C7 277-.12 307 7 335.06a111 111 0 0 0 16.5 35.7c17.4 25 46.6 41.6 78.1 44.4 44.4 3.9 78.1-16 90-53.3 8.2-25.8 0-63.6-31.5-82.9-25.6-15.7-53.3-12.1-69.2-1.6-13.9 9.2-21.8 23.5-21.6 39.2.3 27.8 24.3 42.6 41.5 42.6a49 49 0 0 0 15.8-2.7c6.5-1.8 13.3-6.5 13.3-14.9 0-12.1-11.6-14.8-16.8-13.9-2.9.5-4.5 2-11.8 2.4-2-.2-12-3.1-12-14V316c.2-12.3 13.2-18 25.5-16.9 32.3 2.8 47.7 40.7 28.5 65.7-18.3 23.7-76.6 23.2-99.7-20.4-26-49.2 12.7-111.2 87-98.4 33.2 5.7 83.6 35.5 102.4 104.3h45.9c-5.7-17.6-8.9-68.3 42.7-68.3 56.7 0 63.9 39.9 79.8 68.3H460c-12.8-18.3-21.7-38.7-18.9-55.8 5.6-33.8 39.7-18.4 82.4-17.4 66.5.4 102.1-27 103.1-28 3.7-3.1 6.5-15.8 7-17.7 1.3-5.1-3.2-2.4-3.2-2.4-8.7 5.2-30.5 15.2-50.9 15.6-25.3.5-76.2-25.4-81.6-28.2-.3-.4.1 1.2-11-25.5 88.4 58.3 118.3 40.5 145.2 21.7.8-.6 4.3-2.9 3.6-5.7-13.8-48.1-22.4-62.7-34.5-69.6-37-21.6-125-34.7-129.2-35.3.1-.1-.9-.3-.9.7zm60.4 72.8a37.54 37.54 0 0 1 38.9-36.3c33.4 1.2 48.8 42.3 24.4 65.2-24.2 22.7-64.4 4.6-63.3-28.9zm38.6-25.3a26.27 26.27 0 1 0 25.4 27.2 26.19 26.19 0 0 0-25.4-27.2zm4.3 28.8c-15.4 0-15.4-15.6 0-15.6s15.4 15.64 0 15.64z\"]\n};\nvar faSwift = {\n prefix: 'fab',\n iconName: 'swift',\n icon: [448, 512, [], \"f8e1\", \"M448 156.09c0-4.51-.08-9-.2-13.52a196.31 196.31 0 0 0-2.58-29.42 99.62 99.62 0 0 0-9.22-28A94.08 94.08 0 0 0 394.84 44a99.17 99.17 0 0 0-28-9.22 195 195 0 0 0-29.43-2.59c-4.51-.12-9-.17-13.52-.2H124.14c-4.51 0-9 .08-13.52.2-2.45.07-4.91.15-7.37.27a171.68 171.68 0 0 0-22.06 2.32 103.06 103.06 0 0 0-21.21 6.1q-3.46 1.45-6.81 3.12a94.66 94.66 0 0 0-18.39 12.32c-1.88 1.61-3.69 3.28-5.43 5A93.86 93.86 0 0 0 12 85.17a99.45 99.45 0 0 0-9.22 28 196.31 196.31 0 0 0-2.54 29.4c-.13 4.51-.18 9-.21 13.52v199.83c0 4.51.08 9 .21 13.51a196.08 196.08 0 0 0 2.58 29.42 99.3 99.3 0 0 0 9.22 28A94.31 94.31 0 0 0 53.17 468a99.47 99.47 0 0 0 28 9.21 195 195 0 0 0 29.43 2.59c4.5.12 9 .17 13.52.2H323.91c4.51 0 9-.08 13.52-.2a196.59 196.59 0 0 0 29.44-2.59 99.57 99.57 0 0 0 28-9.21A94.22 94.22 0 0 0 436 426.84a99.3 99.3 0 0 0 9.22-28 194.79 194.79 0 0 0 2.59-29.42c.12-4.5.17-9 .2-13.51V172.14c-.01-5.35-.01-10.7-.01-16.05zm-69.88 241c-20-38.93-57.23-29.27-76.31-19.47-1.72 1-3.48 2-5.25 3l-.42.25c-39.5 21-92.53 22.54-145.85-.38A234.64 234.64 0 0 1 45 290.12a230.63 230.63 0 0 0 39.17 23.37c56.36 26.4 113 24.49 153 0-57-43.85-104.6-101-141.09-147.22a197.09 197.09 0 0 1-18.78-25.9c43.7 40 112.7 90.22 137.48 104.12-52.57-55.49-98.89-123.94-96.72-121.74 82.79 83.42 159.18 130.59 159.18 130.59 2.88 1.58 5 2.85 6.73 4a127.44 127.44 0 0 0 4.16-12.47c13.22-48.33-1.66-103.58-35.31-149.2C329.61 141.75 375 229.34 356.4 303.42c-.44 1.73-.95 3.4-1.44 5.09 38.52 47.4 28.04 98.17 23.13 88.59z\"]\n};\nvar faSymfony = {\n prefix: 'fab',\n iconName: 'symfony',\n icon: [512, 512, [], \"f83d\", \"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm133.74 143.54c-11.47.41-19.4-6.45-19.77-16.87-.27-9.18 6.68-13.44 6.53-18.85-.23-6.55-10.16-6.82-12.87-6.67-39.78 1.29-48.59 57-58.89 113.85 21.43 3.15 36.65-.72 45.14-6.22 12-7.75-3.34-15.72-1.42-24.56 4-18.16 32.55-19 32 5.3-.36 17.86-25.92 41.81-77.6 35.7-10.76 59.52-18.35 115-58.2 161.72-29 34.46-58.4 39.82-71.58 40.26-24.65.85-41-12.31-41.58-29.84-.56-17 14.45-26.26 24.31-26.59 21.89-.75 30.12 25.67 14.88 34-12.09 9.71.11 12.61 2.05 12.55 10.42-.36 17.34-5.51 22.18-9 24-20 33.24-54.86 45.35-118.35 8.19-49.66 17-78 18.23-82-16.93-12.75-27.08-28.55-49.85-34.72-15.61-4.23-25.12-.63-31.81 7.83-7.92 10-5.29 23 2.37 30.7l12.63 14c15.51 17.93 24 31.87 20.8 50.62-5.06 29.93-40.72 52.9-82.88 39.94-36-11.11-42.7-36.56-38.38-50.62 7.51-24.15 42.36-11.72 34.62 13.6-2.79 8.6-4.92 8.68-6.28 13.07-4.56 14.77 41.85 28.4 51-1.39 4.47-14.52-5.3-21.71-22.25-39.85-28.47-31.75-16-65.49 2.95-79.67C204.23 140.13 251.94 197 262 205.29c37.17-109 100.53-105.46 102.43-105.53 25.16-.81 44.19 10.59 44.83 28.65.25 7.69-4.17 22.59-19.52 23.13z\"]\n};\nvar faTeamspeak = {\n prefix: 'fab',\n iconName: 'teamspeak',\n icon: [512, 512, [], \"f4f9\", \"M244.2 346.79c2.4-12.3-12-30-32.4-48.7-20.9-19.2-48.2-39.1-63.4-46.6-21.7-12-41.7-1.8-46.3 22.7-5 26.2 0 51.4 14.5 73.9 10.2 15.5 25.4 22.7 43.4 24 11.6.6 52.5 2.2 61.7-1 11.9-4.3 20.1-11.8 22.5-24.3zm205 20.8a5.22 5.22 0 0 0-8.3 2.4c-8 25.4-44.7 112.5-172.1 121.5-149.7 10.5 80.3 43.6 145.4-6.4 22.7-17.4 47.6-35 46.6-85.4-.4-10.1-4.9-26.69-11.6-32.1zm62-122.4c-.3-18.9-8.6-33.4-26-42.2-2.9-1.3-5-2.7-5.9-6.4A222.64 222.64 0 0 0 438.9 103c-1.1-1.5-3.5-3.2-2.2-5 8.5-11.5-.3-18-7-24.4Q321.4-31.11 177.4 13.09c-40.1 12.3-73.9 35.6-102 67.4-4 4.3-6.7 9.1-3 14.5 3 4 1.3 6.2-1 9.3C51.6 132 38.2 162.59 32.1 196c-.7 4.3-2.9 6-6.4 7.8-14.2 7-22.5 18.5-24.9 34L0 264.29v20.9c0 30.8 21 50.4 51.8 49 7.7-.3 11.7-4.3 12-11.5 2-77.5-2.4-95.4 3.7-125.8C92.1 72.39 234.3 5 345.3 65.39 411.4 102 445.7 159 447.6 234.79c.8 28.2 0 56.5 0 84.6 0 7 2.2 12.5 9.4 14.2 24.1 5 49.2-12 53.2-36.7 2.9-17.1 1-34.5 1-51.7zm-159.6 131.5c36.5 2.8 59.3-28.5 58.4-60.5-2.1-45.2-66.2-16.5-87.8-8-73.2 28.1-45 54.9-22.2 60.8z\"]\n};\nvar faTelegram = {\n prefix: 'fab',\n iconName: 'telegram',\n icon: [496, 512, [], \"f2c6\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm121.8 169.9l-40.7 191.8c-3 13.6-11.1 16.9-22.4 10.5l-62-45.7-29.9 28.8c-3.3 3.3-6.1 6.1-12.5 6.1l4.4-63.1 114.9-103.8c5-4.4-1.1-6.9-7.7-2.5l-142 89.4-61.2-19.1c-13.3-4.2-13.6-13.3 2.8-19.7l239.1-92.2c11.1-4 20.8 2.7 17.2 19.5z\"]\n};\nvar faTelegramPlane = {\n prefix: 'fab',\n iconName: 'telegram-plane',\n icon: [448, 512, [], \"f3fe\", \"M446.7 98.6l-67.6 318.8c-5.1 22.5-18.4 28.1-37.3 17.5l-103-75.9-49.7 47.8c-5.5 5.5-10.1 10.1-20.7 10.1l7.4-104.9 190.9-172.5c8.3-7.4-1.8-11.5-12.9-4.1L117.8 284 16.2 252.2c-22.1-6.9-22.5-22.1 4.6-32.7L418.2 66.4c18.4-6.9 34.5 4.1 28.5 32.2z\"]\n};\nvar faTencentWeibo = {\n prefix: 'fab',\n iconName: 'tencent-weibo',\n icon: [384, 512, [], \"f1d5\", \"M72.3 495.8c1.4 19.9-27.6 22.2-29.7 2.9C31 368.8 73.7 259.2 144 185.5c-15.6-34 9.2-77.1 50.6-77.1 30.3 0 55.1 24.6 55.1 55.1 0 44-49.5 70.8-86.9 45.1-65.7 71.3-101.4 169.8-90.5 287.2zM192 .1C66.1.1-12.3 134.3 43.7 242.4 52.4 259.8 79 246.9 70 229 23.7 136.4 91 29.8 192 29.8c75.4 0 136.9 61.4 136.9 136.9 0 90.8-86.9 153.9-167.7 133.1-19.1-4.1-25.6 24.4-6.6 29.1 110.7 23.2 204-60 204-162.3C358.6 74.7 284 .1 192 .1z\"]\n};\nvar faTheRedYeti = {\n prefix: 'fab',\n iconName: 'the-red-yeti',\n icon: [512, 512, [], \"f69d\", \"M488.23 241.7l20.7 7.1c-9.6-23.9-23.9-37-31.7-44.8l7.1-18.2c.2 0 12.3-27.8-2.5-30.7-.6-11.3-6.6-27-18.4-27-7.6-10.6-17.7-12.3-30.7-5.9a122.2 122.2 0 0 0-25.3 16.5c-5.3-6.4-3 .4-3-29.8-37.1-24.3-45.4-11.7-74.8 3l.5.5a239.36 239.36 0 0 0-68.4-13.3c-5.5-8.7-18.6-19.1-25.1-25.1l24.8 7.1c-5.5-5.5-26.8-12.9-34.2-15.2 18.2-4.1 29.8-20.8 42.5-33-34.9-10.1-67.9-5.9-97.9 11.8l12-44.2L182 0c-31.6 24.2-33 41.9-33.7 45.5-.9-2.4-6.3-19.6-15.2-27a35.12 35.12 0 0 0-.5 25.3c3 8.4 5.9 14.8 8.4 18.9-16-3.3-28.3-4.9-49.2 0h-3.7l33 14.3a194.26 194.26 0 0 0-46.7 67.4l-1.7 8.4 1.7 1.7 7.6-4.7c-3.3 11.6-5.3 19.4-6.6 25.8a200.18 200.18 0 0 0-27.8 40.3c-15 1-31.8 10.8-40.3 14.3l3 3.4 28.8 1c-.5 1-.7 2.2-1.2 3.2-7.3 6.4-39.8 37.7-33 80.7l20.2-22.4c.5 1.7.7 3.4 1.2 5.2 0 25.5.4 89.6 64.9 150.5 43.6 40 96 60.2 157.5 60.2 121.7 0 223-87.3 223-211.5 6.8-9.7-1.2 3 16.7-25.1l13 14.3 2.5-.5A181.84 181.84 0 0 0 495 255a44.74 44.74 0 0 0-6.8-13.3zM398 111.2l-.5 21.9c5.5 18.1 16.9 17.2 22.4 17.2l-3.4-4.7 22.4-5.4a242.44 242.44 0 0 1-27 0c12.8-2.1 33.3-29 43-11.3 3.4 7.6 6.4 17.2 9.3 27.8l1.7-5.9a56.38 56.38 0 0 1-1.7-15.2c5.4.5 8.8 3.4 9.3 10.1.5 6.4 1.7 14.8 3.4 25.3l4.7-11.3c4.6 0 4.5-3.6-2.5 20.7-20.9-8.7-35.1-8.4-46.5-8.4l18.2-16c-25.3 8.2-33 10.8-54.8 20.9-1.1-5.4-5-13.5-16-19.9-3.2 3.8-2.8.9-.7 14.8h-2.5a62.32 62.32 0 0 0-8.4-23.1l4.2-3.4c8.4-7.1 11.8-14.3 10.6-21.9-.5-6.4-5.4-13.5-13.5-20.7 5.6-3.4 15.2-.4 28.3 8.5zm-39.6-10.1c2.7 1.9 11.4 5.4 18.9 17.2 4.2 8.4 4 9.8 3.4 11.1-.5 2.4-.5 4.3-3 7.1-1.7 2.5-5.4 4.7-11.8 7.6-7.6-13-16.5-23.6-27.8-31.2zM91 143.1l1.2-1.7c1.2-2.9 4.2-7.6 9.3-15.2l2.5-3.4-13 12.3 5.4-4.7-10.1 9.3-4.2 1.2c12.3-24.1 23.1-41.3 32.5-50.2 9.3-9.3 16-16 20.2-19.4l-6.4 1.2c-11.3-4.2-19.4-7.1-24.8-8.4 2.5-.5 3.7-.5 3.2-.5 10.3 0 17.5.5 20.9 1.2a52.35 52.35 0 0 0 16 2.5l.5-1.7-8.4-35.8 13.5 29a42.89 42.89 0 0 0 5.9-14.3c1.7-6.4 5.4-13 10.1-19.4s7.6-10.6 9.3-11.3a234.68 234.68 0 0 0-6.4 25.3l-1.7 7.1-.5 4.7 2.5 2.5C190.4 39.9 214 34 239.8 34.5l21.1.5c-11.8 13.5-27.8 21.9-48.5 24.8a201.26 201.26 0 0 1-23.4 2.9l-.2-.5-2.5-1.2a20.75 20.75 0 0 0-14 2c-2.5-.2-4.9-.5-7.1-.7l-2.5 1.7.5 1.2c2 .2 3.9.5 6.2.7l-2 3.4 3.4-.5-10.6 11.3c-4.2 3-5.4 6.4-4.2 9.3l5.4-3.4h1.2a39.4 39.4 0 0 1 25.3-15.2v-3c6.4.5 13 1 19.4 1.2 6.4 0 8.4.5 5.4 1.2a189.6 189.6 0 0 1 20.7 13.5c13.5 10.1 23.6 21.9 30 35.4 8.8 18.2 13.5 37.1 13.5 56.6a141.13 141.13 0 0 1-3 28.3 209.91 209.91 0 0 1-16 46l2.5.5c18.2-19.7 41.9-16 49.2-16l-6.4 5.9 22.4 17.7-1.7 30.7c-5.4-12.3-16.5-21.1-33-27.8 16.5 14.8 23.6 21.1 21.9 20.2-4.8-2.8-3.5-1.9-10.8-3.7 4.1 4.1 17.5 18.8 18.2 20.7l.2.2-.2.2c0 1.8 1.6-1.2-14 22.9-75.2-15.3-106.27-42.7-141.2-63.2l11.8 1.2c-11.8-18.5-15.6-17.7-38.4-26.1L149 225c-8.8-3-18.2-3-28.3.5l7.6-10.6-1.2-1.7c-14.9 4.3-19.8 9.2-22.6 11.3-1.1-5.5-2.8-12.4-12.3-28.8l-1.2 27-13.2-5c1.5-25.2 5.4-50.5 13.2-74.6zm276.5 330c-49.9 25-56.1 22.4-59 23.9-29.8-11.8-50.9-31.7-63.5-58.8l30 16.5c-9.8-9.3-18.3-16.5-38.4-44.3l11.8 23.1-17.7-7.6c14.2 21.1 23.5 51.7 66.6 73.5-120.8 24.2-199-72.1-200.9-74.3a262.57 262.57 0 0 0 35.4 24.8c3.4 1.7 7.1 2.5 10.1 1.2l-16-20.7c9.2 4.2 9.5 4.5 69.1 29-42.5-20.7-73.8-40.8-93.2-60.2-.5 6.4-1.2 10.1-1.2 10.1a80.25 80.25 0 0 1 20.7 26.6c-39-18.9-57.6-47.6-71.3-82.6 49.9 55.1 118.9 37.5 120.5 37.1 34.8 16.4 69.9 23.6 113.9 10.6 3.3 0 20.3 17 25.3 39.1l4.2-3-2.5-23.6c9 9 24.9 22.6 34.4 13-15.6-5.3-23.5-9.5-29.5-31.7 4.6 4.2 7.6 9 27.8 15l1.2-1.2-10.5-14.2c11.7-4.8-3.5 1 32-10.8 4.3 34.3 9 49.2.7 89.5zm115.3-214.4l-2.5.5 3 9.3c-3.5 5.9-23.7 44.3-71.6 79.7-39.5 29.8-76.6 39.1-80.9 40.3l-7.6-7.1-1.2 3 14.3 16-7.1-4.7 3.4 4.2h-1.2l-21.9-13.5 9.3 26.6-19-27.9-1.2 2.5 7.6 29c-6.1-8.2-21-32.6-56.8-39.6l32.5 21.2a214.82 214.82 0 0 1-93.2-6.4c-4.2-1.2-8.9-2.5-13.5-4.2l1.2-3-44.8-22.4 26.1 22.4c-57.7 9.1-113-25.4-126.4-83.4l-2.5-16.4-22.27 22.3c19.5-57.5 25.6-57.9 51.4-70.1-9.1-5.3-1.6-3.3-38.4-9.3 15.8-5.8 33-15.4 73 5.2a18.5 18.5 0 0 1 3.7-1.7c.6-3.2.4-.8 1-11.8 3.9 10 3.6 8.7 3 9.3l1.7.5c12.7-6.5 8.9-4.5 17-8.9l-5.4 13.5 22.3-5.8-8.4 8.4 2.5 2.5c4.5-1.8 30.3 3.4 40.8 16l-23.6-2.5c39.4 23 51.5 54 55.8 69.6l1.7-1.2c-2.8-22.3-12.4-33.9-16-40.1 4.2 5 39.2 34.6 110.4 46-11.3-.5-23.1 5.4-34.9 18.9l46.7-20.2-9.3 21.9c7.6-10.1 14.8-23.6 21.2-39.6v-.5l1.2-3-1.2 16c13.5-41.8 25.3-78.5 35.4-109.7l13.5-27.8v-2l-5.4-4.2h10.1l5.9 4.2 2.5-1.2-3.4-16 12.3 18.9 41.8-20.2-14.8 13 .5 2.9 17.7-.5a184 184 0 0 1 33 4.2l-23.6 2.5-1.2 3 26.6 23.1a254.21 254.21 0 0 1 27 32c-11.2-3.3-10.3-3.4-21.2-3.4l12.3 32.5zm-6.1-71.3l-3.9 13-14.3-11.8zm-254.8 7.1c1.7 10.6 4.7 17.7 8.8 21.9-9.3 6.6-27.5 13.9-46.5 16l.5 1.2a50.22 50.22 0 0 0 24.8-2.5l-7.1 13c4.2-1.7 10.1-7.1 17.7-14.8 11.9-5.5 12.7-5.1 20.2-16-12.7-6.4-15.7-13.7-18.4-18.8zm3.7-102.3c-6.4-3.4-10.6 3-12.3 18.9s2.5 29.5 11.8 39.6 18.2 10.6 26.1 3 3.4-23.6-11.3-47.7a39.57 39.57 0 0 0-14.27-13.8zm-4.7 46.3c5.4 2.2 10.5 1.9 12.3-10.6v-4.7l-1.2.5c-4.3-3.1-2.5-4.5-1.7-6.2l.5-.5c-.9-1.2-5-8.1-12.5 4.7-.5-13.5.5-21.9 3-24.8 1.2-2.5 4.7-1.2 11.3 4.2 6.4 5.4 11.3 16 15.2 32.5 6.5 28-19.8 26.2-26.9 4.9zm-45-5.5c1.6.3 9.3-1.1 9.3-14.8h-.5c-5.4-1.1-2.2-5.5-.7-5.9-1.7-3-3.4-4.2-5.4-4.7-8.1 0-11.6 12.7-8.1 21.2a7.51 7.51 0 0 0 5.43 4.2zM216 82.9l-2.5.5.5 3a48.94 48.94 0 0 1 26.1 5.9c-2.5-5.5-10-14.3-28.3-14.3l.5 2.5zm-71.8 49.4c21.7 16.8 16.5 21.4 46.5 23.6l-2.9-4.7a42.67 42.67 0 0 0 14.8-28.3c1.7-16-1.2-29.5-8.8-41.3l13-7.6a2.26 2.26 0 0 0-.5-1.7 14.21 14.21 0 0 0-13.5 1.7c-12.7 6.7-28 20.9-29 22.4-1.7 1.7-3.4 5.9-5.4 13.5a99.61 99.61 0 0 0-2.9 23.6c-4.7-8-10.5-6.4-19.9-5.9l7.1 7.6c-16.5 0-23.3 15.4-23.6 16 6.8 0 4.6-7.6 30-12.3-4.3-6.3-3.3-5-4.9-6.6zm18.7-18.7c1.2-7.6 3.4-13 6.4-17.2 5.4-6.4 10.6-10.1 16-11.8 4.2-1.7 7.1 1.2 10.1 9.3a72.14 72.14 0 0 1 3 25.3c-.5 9.3-3.4 17.2-8.4 23.1-2.9 3.4-5.4 5.9-6.4 7.6a39.21 39.21 0 0 1-11.3-.5l-7.1-3.4-5.4-6.4c.8-10 1.3-18.8 3.1-26zm42 56.1c-34.8 14.4-34.7 14-36.1 14.3-20.8 4.7-19-24.4-18.9-24.8l5.9-1.2-.5-2.5c-20.2-2.6-31 4.2-32.5 4.9.5.5 3 3.4 5.9 9.3 4.2-6.4 8.8-10.1 15.2-10.6a83.47 83.47 0 0 0 1.7 33.7c.1.5 2.6 17.4 27.5 24.1 11.3 3 27 1.2 48.9-5.4l-9.2.5c-4.2-14.8-6.4-24.8-5.9-29.5 11.3-8.8 21.9-11.3 30.7-7.6h2.5l-11.8-7.6-7.1.5c-5.9 1.2-12.3 4.2-19.4 8.4z\"]\n};\nvar faThemeco = {\n prefix: 'fab',\n iconName: 'themeco',\n icon: [448, 512, [], \"f5c6\", \"M202.9 8.43c9.9-5.73 26-5.82 35.95-.21L430 115.85c10 5.6 18 19.44 18 30.86V364c0 11.44-8.06 25.29-18 31L238.81 503.74c-9.93 5.66-26 5.57-35.85-.21L17.86 395.12C8 389.34 0 375.38 0 364V146.71c0-11.44 8-25.36 17.91-31.08zm-77.4 199.83c-15.94 0-31.89.14-47.83.14v101.45H96.8V280h28.7c49.71 0 49.56-71.74 0-71.74zm140.14 100.29l-30.73-34.64c37-7.51 34.8-65.23-10.87-65.51-16.09 0-32.17-.14-48.26-.14v101.59h19.13v-33.91h18.41l29.56 33.91h22.76zm-41.59-82.32c23.34 0 23.26 32.46 0 32.46h-29.13v-32.46zm-95.56-1.6c21.18 0 21.11 38.85 0 38.85H96.18v-38.84zm192.65-18.25c-68.46 0-71 105.8 0 105.8 69.48-.01 69.41-105.8 0-105.8zm0 17.39c44.12 0 44.8 70.86 0 70.86s-44.43-70.86 0-70.86z\"]\n};\nvar faThemeisle = {\n prefix: 'fab',\n iconName: 'themeisle',\n icon: [512, 512, [], \"f2b2\", \"M208 88.286c0-10 6.286-21.714 17.715-21.714 11.142 0 17.714 11.714 17.714 21.714 0 10.285-6.572 21.714-17.714 21.714C214.286 110 208 98.571 208 88.286zm304 160c0 36.001-11.429 102.286-36.286 129.714-22.858 24.858-87.428 61.143-120.857 70.572l-1.143.286v32.571c0 16.286-12.572 30.571-29.143 30.571-10 0-19.429-5.714-24.572-14.286-5.427 8.572-14.856 14.286-24.856 14.286-10 0-19.429-5.714-24.858-14.286-5.142 8.572-14.571 14.286-24.57 14.286-10.286 0-19.429-5.714-24.858-14.286-5.143 8.572-14.571 14.286-24.571 14.286-18.857 0-29.429-15.714-29.429-32.857-16.286 12.285-35.715 19.428-56.571 19.428-22 0-43.429-8.285-60.286-22.857 10.285-.286 20.571-2.286 30.285-5.714-20.857-5.714-39.428-18.857-52-36.286 21.37 4.645 46.209 1.673 67.143-11.143-22-22-56.571-58.857-68.572-87.428C1.143 321.714 0 303.714 0 289.429c0-49.714 20.286-160 86.286-160 10.571 0 18.857 4.858 23.143 14.857a158.792 158.792 0 0 1 12-15.428c2-2.572 5.714-5.429 7.143-8.286 7.999-12.571 11.714-21.142 21.714-34C182.571 45.428 232 17.143 285.143 17.143c6 0 12 .285 17.714 1.143C313.714 6.571 328.857 0 344.572 0c14.571 0 29.714 6 40 16.286.857.858 1.428 2.286 1.428 3.428 0 3.714-10.285 13.429-12.857 16.286 4.286 1.429 15.714 6.858 15.714 12 0 2.857-2.857 5.143-4.571 7.143 31.429 27.714 49.429 67.143 56.286 108 4.286-5.143 10.285-8.572 17.143-8.572 10.571 0 20.857 7.144 28.571 14.001C507.143 187.143 512 221.714 512 248.286zM188 89.428c0 18.286 12.571 37.143 32.286 37.143 19.714 0 32.285-18.857 32.285-37.143 0-18-12.571-36.857-32.285-36.857-19.715 0-32.286 18.858-32.286 36.857zM237.714 194c0-19.714 3.714-39.143 8.571-58.286-52.039 79.534-13.531 184.571 68.858 184.571 21.428 0 42.571-7.714 60-20 2-7.429 3.714-14.857 3.714-22.572 0-14.286-6.286-21.428-20.572-21.428-4.571 0-9.143.857-13.429 1.714-63.343 12.668-107.142 3.669-107.142-63.999zm-41.142 254.858c0-11.143-8.858-20.857-20.286-20.857-11.429 0-20 9.715-20 20.857v32.571c0 11.143 8.571 21.142 20 21.142 11.428 0 20.286-9.715 20.286-21.142v-32.571zm49.143 0c0-11.143-8.572-20.857-20-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20-10 20-21.142v-32.571zm49.713 0c0-11.143-8.857-20.857-20.285-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20.285-9.715 20.285-21.142v-32.571zm49.715 0c0-11.143-8.857-20.857-20.286-20.857-11.428 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.858 21.142 20.286 21.142 11.429 0 20.286-10 20.286-21.142v-32.571zM421.714 286c-30.857 59.142-90.285 102.572-158.571 102.572-96.571 0-160.571-84.572-160.571-176.572 0-16.857 2-33.429 6-49.714-20 33.715-29.714 72.572-29.714 111.429 0 60.286 24.857 121.715 71.429 160.857 5.143-9.714 14.857-16.286 26-16.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.571-14.286 24.858-14.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.857-14.286 24.858-14.286 10 0 19.428 5.714 24.857 14.286 5.143-8.571 14.571-14.286 24.572-14.286 10.857 0 20.857 6.572 25.714 16 43.427-36.286 68.569-92 71.426-148.286zm10.572-99.714c0-53.714-34.571-105.714-92.572-105.714-30.285 0-58.571 15.143-78.857 36.857C240.862 183.812 233.41 254 302.286 254c28.805 0 97.357-28.538 84.286 36.857 28.857-26 45.714-65.714 45.714-104.571z\"]\n};\nvar faThinkPeaks = {\n prefix: 'fab',\n iconName: 'think-peaks',\n icon: [576, 512, [], \"f731\", \"M465.4 409.4l87.1-150.2-32-.3-55.1 95L259.2 0 23 407.4l32 .3L259.2 55.6zm-355.3-44.1h32.1l117.4-202.5L463 511.9l32.5.1-235.8-404.6z\"]\n};\nvar faTiktok = {\n prefix: 'fab',\n iconName: 'tiktok',\n icon: [448, 512, [], \"e07b\", \"M448,209.91a210.06,210.06,0,0,1-122.77-39.25V349.38A162.55,162.55,0,1,1,185,188.31V278.2a74.62,74.62,0,1,0,52.23,71.18V0l88,0a121.18,121.18,0,0,0,1.86,22.17h0A122.18,122.18,0,0,0,381,102.39a121.43,121.43,0,0,0,67,20.14Z\"]\n};\nvar faTradeFederation = {\n prefix: 'fab',\n iconName: 'trade-federation',\n icon: [496, 512, [], \"f513\", \"M248 8.8c-137 0-248 111-248 248s111 248 248 248 248-111 248-248-111-248-248-248zm0 482.8c-129.7 0-234.8-105.1-234.8-234.8S118.3 22 248 22s234.8 105.1 234.8 234.8S377.7 491.6 248 491.6zm155.1-328.5v-46.8H209.3V198H54.2l36.7 46h117.7v196.8h48.8V245h83.3v-47h-83.3v-34.8h145.7zm-73.3 45.1v23.9h-82.9v197.4h-26.8V232.1H96.3l-20.1-23.9h143.9v-80.6h171.8V152h-145v56.2zm-161.3-69l-12.4-20.7 2.1 23.8-23.5 5.4 23.3 5.4-2.1 24 12.3-20.5 22.2 9.5-15.7-18.1 15.8-18.1zm-29.6-19.7l9.3-11.5-12.7 5.9-8-12.4 1.7 13.9-14.3 3.8 13.7 2.7-.8 14.7 6.8-12.2 13.8 5.3zm165.4 145.2l-13.1 5.6-7.3-12.2 1.3 14.2-13.9 3.2 13.9 3.2-1.2 14.2 7.3-12.2 13.1 5.5-9.4-10.7zm106.9-77.2l-20.9 9.1-12-19.6 2.2 22.7-22.3 5.4 22.2 4.9-1.8 22.9 11.5-19.6 21.2 8.8-15.1-17zM248 29.9c-125.3 0-226.9 101.6-226.9 226.9S122.7 483.7 248 483.7s226.9-101.6 226.9-226.9S373.3 29.9 248 29.9zM342.6 196v51h-83.3v195.7h-52.7V245.9H89.9l-40-49.9h157.4v-81.6h197.8v50.7H259.4V196zM248 43.2c60.3 0 114.8 25 153.6 65.2H202.5V190H45.1C73.1 104.8 153.4 43.2 248 43.2zm0 427.1c-117.9 0-213.6-95.6-213.6-213.5 0-21.2 3.1-41.8 8.9-61.1L87.1 252h114.7v196.8h64.6V253h83.3v-62.7h-83.2v-19.2h145.6v-50.8c30.8 37 49.3 84.6 49.3 136.5.1 117.9-95.5 213.5-213.4 213.5zM178.8 275l-11-21.4 1.7 24.5-23.7 3.9 23.8 5.9-3.7 23.8 13-20.9 21.5 10.8-15.8-18.8 16.9-17.1z\"]\n};\nvar faTrello = {\n prefix: 'fab',\n iconName: 'trello',\n icon: [448, 512, [], \"f181\", \"M392.3 32H56.1C25.1 32 0 57.1 0 88c-.1 0 0-4 0 336 0 30.9 25.1 56 56 56h336.2c30.8-.2 55.7-25.2 55.7-56V88c.1-30.8-24.8-55.8-55.6-56zM197 371.3c-.2 14.7-12.1 26.6-26.9 26.6H87.4c-14.8.1-26.9-11.8-27-26.6V117.1c0-14.8 12-26.9 26.9-26.9h82.9c14.8 0 26.9 12 26.9 26.9v254.2zm193.1-112c0 14.8-12 26.9-26.9 26.9h-81c-14.8 0-26.9-12-26.9-26.9V117.2c0-14.8 12-26.9 26.8-26.9h81.1c14.8 0 26.9 12 26.9 26.9v142.1z\"]\n};\nvar faTumblr = {\n prefix: 'fab',\n iconName: 'tumblr',\n icon: [320, 512, [], \"f173\", \"M309.8 480.3c-13.6 14.5-50 31.7-97.4 31.7-120.8 0-147-88.8-147-140.6v-144H17.9c-5.5 0-10-4.5-10-10v-68c0-7.2 4.5-13.6 11.3-16 62-21.8 81.5-76 84.3-117.1.8-11 6.5-16.3 16.1-16.3h70.9c5.5 0 10 4.5 10 10v115.2h83c5.5 0 10 4.4 10 9.9v81.7c0 5.5-4.5 10-10 10h-83.4V360c0 34.2 23.7 53.6 68 35.8 4.8-1.9 9-3.2 12.7-2.2 3.5.9 5.8 3.4 7.4 7.9l22 64.3c1.8 5 3.3 10.6-.4 14.5z\"]\n};\nvar faTumblrSquare = {\n prefix: 'fab',\n iconName: 'tumblr-square',\n icon: [448, 512, [], \"f174\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-82.3 364.2c-8.5 9.1-31.2 19.8-60.9 19.8-75.5 0-91.9-55.5-91.9-87.9v-90h-29.7c-3.4 0-6.2-2.8-6.2-6.2v-42.5c0-4.5 2.8-8.5 7.1-10 38.8-13.7 50.9-47.5 52.7-73.2.5-6.9 4.1-10.2 10-10.2h44.3c3.4 0 6.2 2.8 6.2 6.2v72h51.9c3.4 0 6.2 2.8 6.2 6.2v51.1c0 3.4-2.8 6.2-6.2 6.2h-52.1V321c0 21.4 14.8 33.5 42.5 22.4 3-1.2 5.6-2 8-1.4 2.2.5 3.6 2.1 4.6 4.9l13.8 40.2c1 3.2 2 6.7-.3 9.1z\"]\n};\nvar faTwitch = {\n prefix: 'fab',\n iconName: 'twitch',\n icon: [512, 512, [], \"f1e8\", \"M391.17,103.47H352.54v109.7h38.63ZM285,103H246.37V212.75H285ZM120.83,0,24.31,91.42V420.58H140.14V512l96.53-91.42h77.25L487.69,256V0ZM449.07,237.75l-77.22,73.12H294.61l-67.6,64v-64H140.14V36.58H449.07Z\"]\n};\nvar faTwitter = {\n prefix: 'fab',\n iconName: 'twitter',\n icon: [512, 512, [], \"f099\", \"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"]\n};\nvar faTwitterSquare = {\n prefix: 'fab',\n iconName: 'twitter-square',\n icon: [448, 512, [], \"f081\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-48.9 158.8c.2 2.8.2 5.7.2 8.5 0 86.7-66 186.6-186.6 186.6-37.2 0-71.7-10.8-100.7-29.4 5.3.6 10.4.8 15.8.8 30.7 0 58.9-10.4 81.4-28-28.8-.6-53-19.5-61.3-45.5 10.1 1.5 19.2 1.5 29.6-1.2-30-6.1-52.5-32.5-52.5-64.4v-.8c8.7 4.9 18.9 7.9 29.6 8.3a65.447 65.447 0 0 1-29.2-54.6c0-12.2 3.2-23.4 8.9-33.1 32.3 39.8 80.8 65.8 135.2 68.6-9.3-44.5 24-80.6 64-80.6 18.9 0 35.9 7.9 47.9 20.7 14.8-2.8 29-8.3 41.6-15.8-4.9 15.2-15.2 28-28.8 36.1 13.2-1.4 26-5.1 37.8-10.2-8.9 13.1-20.1 24.7-32.9 34z\"]\n};\nvar faTypo3 = {\n prefix: 'fab',\n iconName: 'typo3',\n icon: [448, 512, [], \"f42b\", \"M178.7 78.4c0-24.7 5.4-32.4 13.9-39.4-69.5 8.5-149.3 34-176.3 66.4-5.4 7.7-9.3 20.8-9.3 37.1C7 246 113.8 480 191.1 480c36.3 0 97.3-59.5 146.7-139-7 2.3-11.6 2.3-18.5 2.3-57.2 0-140.6-198.5-140.6-264.9zM301.5 32c-30.1 0-41.7 5.4-41.7 36.3 0 66.4 53.8 198.5 101.7 198.5 26.3 0 78.8-99.7 78.8-182.3 0-40.9-67-52.5-138.8-52.5z\"]\n};\nvar faUber = {\n prefix: 'fab',\n iconName: 'uber',\n icon: [448, 512, [], \"f402\", \"M414.1 32H33.9C15.2 32 0 47.2 0 65.9V446c0 18.8 15.2 34 33.9 34H414c18.7 0 33.9-15.2 33.9-33.9V65.9C448 47.2 432.8 32 414.1 32zM237.6 391.1C163 398.6 96.4 344.2 88.9 269.6h94.4V290c0 3.7 3 6.8 6.8 6.8H258c3.7 0 6.8-3 6.8-6.8v-67.9c0-3.7-3-6.8-6.8-6.8h-67.9c-3.7 0-6.8 3-6.8 6.8v20.4H88.9c7-69.4 65.4-122.2 135.1-122.2 69.7 0 128.1 52.8 135.1 122.2 7.5 74.5-46.9 141.1-121.5 148.6z\"]\n};\nvar faUbuntu = {\n prefix: 'fab',\n iconName: 'ubuntu',\n icon: [496, 512, [], \"f7df\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm52.7 93c8.8-15.2 28.3-20.5 43.5-11.7 15.3 8.8 20.5 28.3 11.7 43.6-8.8 15.2-28.3 20.5-43.5 11.7-15.3-8.9-20.5-28.4-11.7-43.6zM87.4 287.9c-17.6 0-31.9-14.3-31.9-31.9 0-17.6 14.3-31.9 31.9-31.9 17.6 0 31.9 14.3 31.9 31.9 0 17.6-14.3 31.9-31.9 31.9zm28.1 3.1c22.3-17.9 22.4-51.9 0-69.9 8.6-32.8 29.1-60.7 56.5-79.1l23.7 39.6c-51.5 36.3-51.5 112.5 0 148.8L172 370c-27.4-18.3-47.8-46.3-56.5-79zm228.7 131.7c-15.3 8.8-34.7 3.6-43.5-11.7-8.8-15.3-3.6-34.8 11.7-43.6 15.2-8.8 34.7-3.6 43.5 11.7 8.8 15.3 3.6 34.8-11.7 43.6zm.3-69.5c-26.7-10.3-56.1 6.6-60.5 35-5.2 1.4-48.9 14.3-96.7-9.4l22.5-40.3c57 26.5 123.4-11.7 128.9-74.4l46.1.7c-2.3 34.5-17.3 65.5-40.3 88.4zm-5.9-105.3c-5.4-62-71.3-101.2-128.9-74.4l-22.5-40.3c47.9-23.7 91.5-10.8 96.7-9.4 4.4 28.3 33.8 45.3 60.5 35 23.1 22.9 38 53.9 40.2 88.5l-46 .6z\"]\n};\nvar faUikit = {\n prefix: 'fab',\n iconName: 'uikit',\n icon: [448, 512, [], \"f403\", \"M443.9 128v256L218 512 0 384V169.7l87.6 45.1v117l133.5 75.5 135.8-75.5v-151l-101.1-57.6 87.6-53.1L443.9 128zM308.6 49.1L223.8 0l-88.6 54.8 86 47.3 87.4-53z\"]\n};\nvar faUmbraco = {\n prefix: 'fab',\n iconName: 'umbraco',\n icon: [510, 512, [], \"f8e8\", \"M255.35 8C118.36 7.83 7.14 118.72 7 255.68c-.07 137 111 248.2 248 248.27 136.85 0 247.82-110.7 248-247.67S392.34 8.17 255.35 8zm145 266q-1.14 40.68-14 65t-43.51 35q-30.61 10.7-85.45 10.47h-4.6q-54.78.22-85.44-10.47t-43.52-35q-12.85-24.36-14-65a224.81 224.81 0 0 1 0-30.71 418.37 418.37 0 0 1 3.6-43.88c1.88-13.39 3.57-22.58 5.4-32 1-4.88 1.28-6.42 1.82-8.45a5.09 5.09 0 0 1 4.9-3.89h.69l32 5a5.07 5.07 0 0 1 4.16 5 5 5 0 0 1 0 .77l-1.7 8.78q-2.41 13.25-4.84 33.68a380.62 380.62 0 0 0-2.64 42.15q-.28 40.43 8.13 59.83a43.87 43.87 0 0 0 31.31 25.18A243 243 0 0 0 250 340.6h10.25a242.64 242.64 0 0 0 57.27-5.16 43.86 43.86 0 0 0 31.15-25.23q8.53-19.42 8.13-59.78a388 388 0 0 0-2.6-42.15q-2.48-20.38-4.89-33.68l-1.69-8.78a5 5 0 0 1 0-.77 5 5 0 0 1 4.2-5l32-5h.82a5 5 0 0 1 4.9 3.89c.55 2.05.81 3.57 1.83 8.45 1.82 9.62 3.52 18.78 5.39 32a415.71 415.71 0 0 1 3.61 43.88 228.06 228.06 0 0 1-.04 30.73z\"]\n};\nvar faUncharted = {\n prefix: 'fab',\n iconName: 'uncharted',\n icon: [448, 512, [], \"e084\", \"M171.73,232.813A5.381,5.381,0,0,0,176.7,229.5,48.081,48.081,0,0,1,191.6,204.244c1.243-.828,1.657-2.484,1.657-4.141a4.22,4.22,0,0,0-2.071-3.312L74.429,128.473,148.958,85a9.941,9.941,0,0,0,4.968-8.281,9.108,9.108,0,0,0-4.968-8.281L126.6,55.6a9.748,9.748,0,0,0-9.523,0l-100.2,57.966a9.943,9.943,0,0,0-4.969,8.281V236.954a9.109,9.109,0,0,0,4.969,8.281L39.235,258.07a8.829,8.829,0,0,0,4.968,1.242,9.4,9.4,0,0,0,6.625-2.484,10.8,10.8,0,0,0,2.9-7.039V164.5L169.66,232.4A4.5,4.5,0,0,0,171.73,232.813ZM323.272,377.73a12.478,12.478,0,0,0-4.969,1.242l-74.528,43.062V287.882c0-2.9-2.9-5.8-6.211-4.555a53.036,53.036,0,0,1-28.984.414,4.86,4.86,0,0,0-6.21,4.555V421.619l-74.529-43.061a8.83,8.83,0,0,0-4.969-1.242,9.631,9.631,0,0,0-9.523,9.523v26.085a9.107,9.107,0,0,0,4.969,8.281l100.2,57.553A8.829,8.829,0,0,0,223.486,480a11.027,11.027,0,0,0,4.969-1.242l100.2-57.553a9.941,9.941,0,0,0,4.968-8.281V386.839C332.8,382.285,328.24,377.73,323.272,377.73ZM286.007,78a23,23,0,1,0-23-23A23,23,0,0,0,286.007,78Zm63.627-10.086a23,23,0,1,0,23,23A23,23,0,0,0,349.634,67.914ZM412.816,151.6a23,23,0,1,0-23-23A23,23,0,0,0,412.816,151.6Zm-63.182-9.2a23,23,0,1,0,23,23A23,23,0,0,0,349.634,142.4Zm-63.627,83.244a23,23,0,1,0-23-23A23,23,0,0,0,286.007,225.648Zm-62.074,36.358a23,23,0,1,0-23-23A23,23,0,0,0,223.933,262.006Zm188.883-82.358a23,23,0,1,0,23,23A23,23,0,0,0,412.816,179.648Zm0,72.272a23,23,0,1,0,23,23A23,23,0,0,0,412.816,251.92Z\"]\n};\nvar faUniregistry = {\n prefix: 'fab',\n iconName: 'uniregistry',\n icon: [384, 512, [], \"f404\", \"M192 480c39.5 0 76.2-11.8 106.8-32.2H85.3C115.8 468.2 152.5 480 192 480zm-89.1-193.1v-12.4H0v12.4c0 2.5 0 5 .1 7.4h103.1c-.2-2.4-.3-4.9-.3-7.4zm20.5 57H8.5c2.6 8.5 5.8 16.8 9.6 24.8h138.3c-12.9-5.7-24.1-14.2-33-24.8zm-17.7-34.7H1.3c.9 7.6 2.2 15 3.9 22.3h109.7c-4-6.9-7.2-14.4-9.2-22.3zm-2.8-69.3H0v17.3h102.9zm0-173.2H0v4.9h102.9zm0-34.7H0v2.5h102.9zm0 69.3H0v7.4h102.9zm0 104H0v14.8h102.9zm0-69.3H0v9.9h102.9zm0 34.6H0V183h102.9zm166.2 160.9h109.7c1.8-7.3 3.1-14.7 3.9-22.3H278.3c-2.1 7.9-5.2 15.4-9.2 22.3zm12-185.7H384V136H281.1zm0 37.2H384v-12.4H281.1zm0-74.3H384v-7.4H281.1zm0-76.7v2.5H384V32zm-203 410.9h227.7c11.8-8.7 22.7-18.6 32.2-29.7H44.9c9.6 11 21.4 21 33.2 29.7zm203-371.3H384v-4.9H281.1zm0 148.5H384v-14.8H281.1zM38.8 405.7h305.3c6.7-8.5 12.6-17.6 17.8-27.2H23c5.2 9.6 9.2 18.7 15.8 27.2zm188.8-37.1H367c3.7-8 5.8-16.2 8.5-24.8h-115c-8.8 10.7-20.1 19.2-32.9 24.8zm53.5-81.7c0 2.5-.1 5-.4 7.4h103.1c.1-2.5.2-4.9.2-7.4v-12.4H281.1zm0-29.7H384v-17.3H281.1z\"]\n};\nvar faUnity = {\n prefix: 'fab',\n iconName: 'unity',\n icon: [576, 512, [], \"e049\", \"M498.11,206.4,445.31,14.72,248.2,66.08,219,116.14l-59.2-.43L15.54,256,159.82,396.32l59.17-.43,29.24,50,197.08,51.36,52.8-191.62-30-49.63ZM223.77,124.2,374.55,86.51,288,232.33H114.87Zm0,263.63L114.87,279.71H288l86.55,145.81Zm193,14L330.17,256l86.58-145.84L458.56,256Z\"]\n};\nvar faUnsplash = {\n prefix: 'fab',\n iconName: 'unsplash',\n icon: [448, 512, [], \"e07c\", \"M448,230.17V480H0V230.17H141.13V355.09H306.87V230.17ZM306.87,32H141.13V156.91H306.87Z\"]\n};\nvar faUntappd = {\n prefix: 'fab',\n iconName: 'untappd',\n icon: [640, 512, [], \"f405\", \"M401.3 49.9c-79.8 160.1-84.6 152.5-87.9 173.2l-5.2 32.8c-1.9 12-6.6 23.5-13.7 33.4L145.6 497.1c-7.6 10.6-20.4 16.2-33.4 14.6-40.3-5-77.8-32.2-95.3-68.5-5.7-11.8-4.5-25.8 3.1-36.4l148.9-207.9c7.1-9.9 16.4-18 27.2-23.7l29.3-15.5c18.5-9.8 9.7-11.9 135.6-138.9 1-4.8 1-7.3 3.6-8 3-.7 6.6-1 6.3-4.6l-.4-4.6c-.2-1.9 1.3-3.6 3.2-3.6 4.5-.1 13.2 1.2 25.6 10 12.3 8.9 16.4 16.8 17.7 21.1.6 1.8-.6 3.7-2.4 4.2l-4.5 1.1c-3.4.9-2.5 4.4-2.3 7.4.1 2.8-2.3 3.6-6.5 6.1zM230.1 36.4c3.4.9 2.5 4.4 2.3 7.4-.2 2.7 2.1 3.5 6.4 6 7.9 15.9 15.3 30.5 22.2 44 .7 1.3 2.3 1.5 3.3.5 11.2-12 24.6-26.2 40.5-42.6 1.3-1.4 1.4-3.5.1-4.9-8-8.2-16.5-16.9-25.6-26.1-1-4.7-1-7.3-3.6-8-3-.8-6.6-1-6.3-4.6.3-3.3 1.4-8.1-2.8-8.2-4.5-.1-13.2 1.1-25.6 10-12.3 8.9-16.4 16.8-17.7 21.1-1.4 4.2 3.6 4.6 6.8 5.4zM620 406.7L471.2 198.8c-13.2-18.5-26.6-23.4-56.4-39.1-11.2-5.9-14.2-10.9-30.5-28.9-1-1.1-2.9-.9-3.6.5-46.3 88.8-47.1 82.8-49 94.8-1.7 10.7-1.3 20 .3 29.8 1.9 12 6.6 23.5 13.7 33.4l148.9 207.9c7.6 10.6 20.2 16.2 33.1 14.7 40.3-4.9 78-32 95.7-68.6 5.4-11.9 4.3-25.9-3.4-36.6z\"]\n};\nvar faUps = {\n prefix: 'fab',\n iconName: 'ups',\n icon: [384, 512, [], \"f7e0\", \"M103.2 303c-5.2 3.6-32.6 13.1-32.6-19V180H37.9v102.6c0 74.9 80.2 51.1 97.9 39V180h-32.6zM4 74.82v220.9c0 103.7 74.9 135.2 187.7 184.1 112.4-48.9 187.7-80.2 187.7-184.1V74.82c-116.3-61.6-281.8-49.6-375.4 0zm358.1 220.9c0 86.6-53.2 113.6-170.4 165.3-117.5-51.8-170.5-78.7-170.5-165.3v-126.4c102.3-93.8 231.6-100 340.9-89.8zm-209.6-107.4v212.8h32.7v-68.7c24.4 7.3 71.7-2.6 71.7-78.5 0-97.4-80.7-80.92-104.4-65.6zm32.7 117.3v-100.3c8.4-4.2 38.4-12.7 38.4 49.3 0 67.9-36.4 51.8-38.4 51zm79.1-86.4c.1 47.3 51.6 42.5 52.2 70.4.6 23.5-30.4 23-50.8 4.9v30.1c36.2 21.5 81.9 8.1 83.2-33.5 1.7-51.5-54.1-46.6-53.4-73.2.6-20.3 30.6-20.5 48.5-2.2v-28.4c-28.5-22-79.9-9.2-79.7 31.9z\"]\n};\nvar faUsb = {\n prefix: 'fab',\n iconName: 'usb',\n icon: [640, 512, [], \"f287\", \"M641.5 256c0 3.1-1.7 6.1-4.5 7.5L547.9 317c-1.4.8-2.8 1.4-4.5 1.4-1.4 0-3.1-.3-4.5-1.1-2.8-1.7-4.5-4.5-4.5-7.8v-35.6H295.7c25.3 39.6 40.5 106.9 69.6 106.9H392V354c0-5 3.9-8.9 8.9-8.9H490c5 0 8.9 3.9 8.9 8.9v89.1c0 5-3.9 8.9-8.9 8.9h-89.1c-5 0-8.9-3.9-8.9-8.9v-26.7h-26.7c-75.4 0-81.1-142.5-124.7-142.5H140.3c-8.1 30.6-35.9 53.5-69 53.5C32 327.3 0 295.3 0 256s32-71.3 71.3-71.3c33.1 0 61 22.8 69 53.5 39.1 0 43.9 9.5 74.6-60.4C255 88.7 273 95.7 323.8 95.7c7.5-20.9 27-35.6 50.4-35.6 29.5 0 53.5 23.9 53.5 53.5s-23.9 53.5-53.5 53.5c-23.4 0-42.9-14.8-50.4-35.6H294c-29.1 0-44.3 67.4-69.6 106.9h310.1v-35.6c0-3.3 1.7-6.1 4.5-7.8 2.8-1.7 6.4-1.4 8.9.3l89.1 53.5c2.8 1.1 4.5 4.1 4.5 7.2z\"]\n};\nvar faUsps = {\n prefix: 'fab',\n iconName: 'usps',\n icon: [576, 512, [], \"f7e1\", \"M460.3 241.7c25.8-41.3 15.2-48.8-11.7-48.8h-27c-.1 0-1.5-1.4-10.9 8-11.2 5.6-37.9 6.3-37.9 8.7 0 4.5 70.3-3.1 88.1 0 9.5 1.5-1.5 20.4-4.4 32-.5 4.5 2.4 2.3 3.8.1zm-112.1 22.6c64-21.3 97.3-23.9 102-26.2 4.4-2.9-4.4-6.6-26.2-5.8-51.7 2.2-137.6 37.1-172.6 53.9l-30.7-93.3h196.6c-2.7-28.2-152.9-22.6-337.9-22.6L27 415.8c196.4-97.3 258.9-130.3 321.2-151.5zM94.7 96c253.3 53.7 330 65.7 332.1 85.2 36.4 0 45.9 0 52.4 6.6 21.1 19.7-14.6 67.7-14.6 67.7-4.4 2.9-406.4 160.2-406.4 160.2h423.1L549 96z\"]\n};\nvar faUssunnah = {\n prefix: 'fab',\n iconName: 'ussunnah',\n icon: [512, 512, [], \"f407\", \"M156.8 285.1l5.7 14.4h-8.2c-1.3-3.2-3.1-7.7-3.8-9.5-2.5-6.3-1.1-8.4 0-10 1.9-2.7 3.2-4.4 3.6-5.2 0 2.2.8 5.7 2.7 10.3zm297.3 18.8c-2.1 13.8-5.7 27.1-10.5 39.7l43 23.4-44.8-18.8c-5.3 13.2-12 25.6-19.9 37.2l34.2 30.2-36.8-26.4c-8.4 11.8-18 22.6-28.7 32.3l24.9 34.7-28.1-31.8c-11 9.6-23.1 18-36.1 25.1l15.7 37.2-19.3-35.3c-13.1 6.8-27 12.1-41.6 15.9l6.7 38.4-10.5-37.4c-14.3 3.4-29.2 5.3-44.5 5.4L256 512l-1.9-38.4c-15.3-.1-30.2-2-44.5-5.3L199 505.6l6.7-38.2c-14.6-3.7-28.6-9.1-41.7-15.8l-19.2 35.1 15.6-37c-13-7-25.2-15.4-36.2-25.1l-27.9 31.6 24.7-34.4c-10.7-9.7-20.4-20.5-28.8-32.3l-36.5 26.2 33.9-29.9c-7.9-11.6-14.6-24.1-20-37.3l-44.4 18.7L67.8 344c-4.8-12.7-8.4-26.1-10.5-39.9l-51 9 50.3-14.2c-1.1-8.5-1.7-17.1-1.7-25.9 0-4.7.2-9.4.5-14.1L0 256l56-2.8c1.3-13.1 3.8-25.8 7.5-38.1L6.4 199l58.9 10.4c4-12 9.1-23.5 15.2-34.4l-55.1-30 58.3 24.6C90 159 97.2 149.2 105.3 140L55.8 96.4l53.9 38.7c8.1-8.6 17-16.5 26.6-23.6l-40-55.6 45.6 51.6c9.5-6.6 19.7-12.3 30.3-17.2l-27.3-64.9 33.8 62.1c10.5-4.4 21.4-7.9 32.7-10.4L199 6.4l19.5 69.2c11-2.1 22.3-3.2 33.8-3.4L256 0l3.6 72.2c11.5.2 22.8 1.4 33.8 3.5L313 6.4l-12.4 70.7c11.3 2.6 22.2 6.1 32.6 10.5l33.9-62.2-27.4 65.1c10.6 4.9 20.7 10.7 30.2 17.2l45.8-51.8-40.1 55.9c9.5 7.1 18.4 15 26.5 23.6l54.2-38.9-49.7 43.9c8 9.1 15.2 18.9 21.5 29.4l58.7-24.7-55.5 30.2c6.1 10.9 11.1 22.3 15.1 34.3l59.3-10.4-57.5 16.2c3.7 12.2 6.2 24.9 7.5 37.9L512 256l-56 2.8c.3 4.6.5 9.3.5 14.1 0 8.7-.6 17.3-1.6 25.8l50.7 14.3-51.5-9.1zm-21.8-31c0-97.5-79-176.5-176.5-176.5s-176.5 79-176.5 176.5 79 176.5 176.5 176.5 176.5-79 176.5-176.5zm-24 0c0 84.3-68.3 152.6-152.6 152.6s-152.6-68.3-152.6-152.6 68.3-152.6 152.6-152.6 152.6 68.3 152.6 152.6zM195 241c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-40.7-19c0 2.1 1.3 3.8 3.6 5.1 3.5 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-19 0c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.4 6.8-9.6 10.9-9.6 12.6zm204.9 87.9c-8.4-3-8.7-6.8-8.7-15.6V182c-8.2 12.5-14.2 18.6-18 18.6 6.3 14.4 9.5 23.9 9.5 28.3v64.3c0 2.2-2.2 6.5-4.7 6.5h-18c-2.8-7.5-10.2-26.9-15.3-40.3-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3 2.6 6.7 6.4 16.5 7.9 20.2h-9.2c-3.9-10.4-9.6-25.4-11.8-31.1-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3.8 2 2.8 7.3 4.3 10.9H256c-1.5-4.1-5.6-14.6-8.4-22-2 2.5-7.2 9.2-10.7 13.7 2.5 1.6 4.3 3.6 5.2 6.3.2.6.5 1.4.6 1.7H225c-4.6-13.9-11.4-27.7-11.4-34.1 0-2.2.3-5.1 1.1-8.2-8.8 10.8-14 15.9-14 25 0 7.5 10.4 28.3 10.4 33.3 0 1.7-.5 3.3-1.4 4.9-9.6-12.7-15.5-20.7-18.8-20.7h-12l-11.2-28c-3.8-9.6-5.7-16-5.7-18.8 0-3.8.5-7.7 1.7-12.2-1 1.3-3.7 4.7-5.5 7.1-.8-2.1-3.1-7.7-4.6-11.5-2.1 2.5-7.5 9.1-11.2 13.6.9 2.3 3.3 8.1 4.9 12.2-2.5 3.3-9.1 11.8-13.6 17.7-4 5.3-5.8 13.3-2.7 21.8 2.5 6.7 2 7.9-1.7 14.1H191c5.5 0 14.3 14 15.5 22 13.2-16 15.4-19.6 16.8-21.6h107c3.9 0 7.2-1.9 9.9-5.8zm20.1-26.6V181.7c-9 12.5-15.9 18.6-20.7 18.6 7.1 14.4 10.7 23.9 10.7 28.3v66.3c0 17.5 8.6 20.4 24 20.4 8.1 0 12.5-.8 13.7-2.7-4.3-1.6-7.6-2.5-9.9-3.3-8.1-3.2-17.8-7.4-17.8-26z\"]\n};\nvar faVaadin = {\n prefix: 'fab',\n iconName: 'vaadin',\n icon: [448, 512, [], \"f408\", \"M224.5 140.7c1.5-17.6 4.9-52.7 49.8-52.7h98.6c20.7 0 32.1-7.8 32.1-21.6V54.1c0-12.2 9.3-22.1 21.5-22.1S448 41.9 448 54.1v36.5c0 42.9-21.5 62-66.8 62H280.7c-30.1 0-33 14.7-33 27.1 0 1.3-.1 2.5-.2 3.7-.7 12.3-10.9 22.2-23.4 22.2s-22.7-9.8-23.4-22.2c-.1-1.2-.2-2.4-.2-3.7 0-12.3-3-27.1-33-27.1H66.8c-45.3 0-66.8-19.1-66.8-62V54.1C0 41.9 9.4 32 21.6 32s21.5 9.9 21.5 22.1v12.3C43.1 80.2 54.5 88 75.2 88h98.6c44.8 0 48.3 35.1 49.8 52.7h.9zM224 456c11.5 0 21.4-7 25.7-16.3 1.1-1.8 97.1-169.6 98.2-171.4 11.9-19.6-3.2-44.3-27.2-44.3-13.9 0-23.3 6.4-29.8 20.3L224 362l-66.9-117.7c-6.4-13.9-15.9-20.3-29.8-20.3-24 0-39.1 24.6-27.2 44.3 1.1 1.9 97.1 169.6 98.2 171.4 4.3 9.3 14.2 16.3 25.7 16.3z\"]\n};\nvar faViacoin = {\n prefix: 'fab',\n iconName: 'viacoin',\n icon: [384, 512, [], \"f237\", \"M384 32h-64l-80.7 192h-94.5L64 32H0l48 112H0v48h68.5l13.8 32H0v48h102.8L192 480l89.2-208H384v-48h-82.3l13.8-32H384v-48h-48l48-112zM192 336l-27-64h54l-27 64z\"]\n};\nvar faViadeo = {\n prefix: 'fab',\n iconName: 'viadeo',\n icon: [448, 512, [], \"f2a9\", \"M276.2 150.5v.7C258.3 98.6 233.6 47.8 205.4 0c43.3 29.2 67 100 70.8 150.5zm32.7 121.7c7.6 18.2 11 37.5 11 57 0 77.7-57.8 141-137.8 139.4l3.8-.3c74.2-46.7 109.3-118.6 109.3-205.1 0-38.1-6.5-75.9-18.9-112 1 11.7 1 23.7 1 35.4 0 91.8-18.1 241.6-116.6 280C95 455.2 49.4 398 49.4 329.2c0-75.6 57.4-142.3 135.4-142.3 16.8 0 33.7 3.1 49.1 9.6 1.7-15.1 6.5-29.9 13.4-43.3-19.9-7.2-41.2-10.7-62.5-10.7-161.5 0-238.7 195.9-129.9 313.7 67.9 74.6 192 73.9 259.8 0 56.6-61.3 60.9-142.4 36.4-201-12.7 8-27.1 13.9-42.2 17zM418.1 11.7c-31 66.5-81.3 47.2-115.8 80.1-12.4 12-20.6 34-20.6 50.5 0 14.1 4.5 27.1 12 38.8 47.4-11 98.3-46 118.2-90.7-.7 5.5-4.8 14.4-7.2 19.2-20.3 35.7-64.6 65.6-99.7 84.9 14.8 14.4 33.7 25.8 55 25.8 79 0 110.1-134.6 58.1-208.6z\"]\n};\nvar faViadeoSquare = {\n prefix: 'fab',\n iconName: 'viadeo-square',\n icon: [448, 512, [], \"f2aa\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM280.7 381.2c-42.4 46.2-120 46.6-162.4 0-68-73.6-19.8-196.1 81.2-196.1 13.3 0 26.6 2.1 39.1 6.7-4.3 8.4-7.3 17.6-8.4 27.1-9.7-4.1-20.2-6-30.7-6-48.8 0-84.6 41.7-84.6 88.9 0 43 28.5 78.7 69.5 85.9 61.5-24 72.9-117.6 72.9-175 0-7.3 0-14.8-.6-22.1-11.2-32.9-26.6-64.6-44.2-94.5 27.1 18.3 41.9 62.5 44.2 94.1v.4c7.7 22.5 11.8 46.2 11.8 70 0 54.1-21.9 99-68.3 128.2l-2.4.2c50 1 86.2-38.6 86.2-87.2 0-12.2-2.1-24.3-6.9-35.7 9.5-1.9 18.5-5.6 26.4-10.5 15.3 36.6 12.6 87.3-22.8 125.6zM309 233.7c-13.3 0-25.1-7.1-34.4-16.1 21.9-12 49.6-30.7 62.3-53 1.5-3 4.1-8.6 4.5-12-12.5 27.9-44.2 49.8-73.9 56.7-4.7-7.3-7.5-15.5-7.5-24.3 0-10.3 5.2-24.1 12.9-31.6 21.6-20.5 53-8.5 72.4-50 32.5 46.2 13.1 130.3-36.3 130.3z\"]\n};\nvar faViber = {\n prefix: 'fab',\n iconName: 'viber',\n icon: [512, 512, [], \"f409\", \"M444 49.9C431.3 38.2 379.9.9 265.3.4c0 0-135.1-8.1-200.9 52.3C27.8 89.3 14.9 143 13.5 209.5c-1.4 66.5-3.1 191.1 117 224.9h.1l-.1 51.6s-.8 20.9 13 25.1c16.6 5.2 26.4-10.7 42.3-27.8 8.7-9.4 20.7-23.2 29.8-33.7 82.2 6.9 145.3-8.9 152.5-11.2 16.6-5.4 110.5-17.4 125.7-142 15.8-128.6-7.6-209.8-49.8-246.5zM457.9 287c-12.9 104-89 110.6-103 115.1-6 1.9-61.5 15.7-131.2 11.2 0 0-52 62.7-68.2 79-5.3 5.3-11.1 4.8-11-5.7 0-6.9.4-85.7.4-85.7-.1 0-.1 0 0 0-101.8-28.2-95.8-134.3-94.7-189.8 1.1-55.5 11.6-101 42.6-131.6 55.7-50.5 170.4-43 170.4-43 96.9.4 143.3 29.6 154.1 39.4 35.7 30.6 53.9 103.8 40.6 211.1zm-139-80.8c.4 8.6-12.5 9.2-12.9.6-1.1-22-11.4-32.7-32.6-33.9-8.6-.5-7.8-13.4.7-12.9 27.9 1.5 43.4 17.5 44.8 46.2zm20.3 11.3c1-42.4-25.5-75.6-75.8-79.3-8.5-.6-7.6-13.5.9-12.9 58 4.2 88.9 44.1 87.8 92.5-.1 8.6-13.1 8.2-12.9-.3zm47 13.4c.1 8.6-12.9 8.7-12.9.1-.6-81.5-54.9-125.9-120.8-126.4-8.5-.1-8.5-12.9 0-12.9 73.7.5 133 51.4 133.7 139.2zM374.9 329v.2c-10.8 19-31 40-51.8 33.3l-.2-.3c-21.1-5.9-70.8-31.5-102.2-56.5-16.2-12.8-31-27.9-42.4-42.4-10.3-12.9-20.7-28.2-30.8-46.6-21.3-38.5-26-55.7-26-55.7-6.7-20.8 14.2-41 33.3-51.8h.2c9.2-4.8 18-3.2 23.9 3.9 0 0 12.4 14.8 17.7 22.1 5 6.8 11.7 17.7 15.2 23.8 6.1 10.9 2.3 22-3.7 26.6l-12 9.6c-6.1 4.9-5.3 14-5.3 14s17.8 67.3 84.3 84.3c0 0 9.1.8 14-5.3l9.6-12c4.6-6 15.7-9.8 26.6-3.7 14.7 8.3 33.4 21.2 45.8 32.9 7 5.7 8.6 14.4 3.8 23.6z\"]\n};\nvar faVimeo = {\n prefix: 'fab',\n iconName: 'vimeo',\n icon: [448, 512, [], \"f40a\", \"M403.2 32H44.8C20.1 32 0 52.1 0 76.8v358.4C0 459.9 20.1 480 44.8 480h358.4c24.7 0 44.8-20.1 44.8-44.8V76.8c0-24.7-20.1-44.8-44.8-44.8zM377 180.8c-1.4 31.5-23.4 74.7-66 129.4-44 57.2-81.3 85.8-111.7 85.8-18.9 0-34.8-17.4-47.9-52.3-25.5-93.3-36.4-148-57.4-148-2.4 0-10.9 5.1-25.4 15.2l-15.2-19.6c37.3-32.8 72.9-69.2 95.2-71.2 25.2-2.4 40.7 14.8 46.5 51.7 20.7 131.2 29.9 151 67.6 91.6 13.5-21.4 20.8-37.7 21.8-48.9 3.5-33.2-25.9-30.9-45.8-22.4 15.9-52.1 46.3-77.4 91.2-76 33.3.9 49 22.5 47.1 64.7z\"]\n};\nvar faVimeoSquare = {\n prefix: 'fab',\n iconName: 'vimeo-square',\n icon: [448, 512, [], \"f194\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-16.2 149.6c-1.4 31.1-23.2 73.8-65.3 127.9-43.5 56.5-80.3 84.8-110.4 84.8-18.7 0-34.4-17.2-47.3-51.6-25.2-92.3-35.9-146.4-56.7-146.4-2.4 0-10.8 5-25.1 15.1L64 192c36.9-32.4 72.1-68.4 94.1-70.4 24.9-2.4 40.2 14.6 46 51.1 20.5 129.6 29.6 149.2 66.8 90.5 13.4-21.2 20.6-37.2 21.5-48.3 3.4-32.8-25.6-30.6-45.2-22.2 15.7-51.5 45.8-76.5 90.1-75.1 32.9 1 48.4 22.4 46.5 64z\"]\n};\nvar faVimeoV = {\n prefix: 'fab',\n iconName: 'vimeo-v',\n icon: [448, 512, [], \"f27d\", \"M447.8 153.6c-2 43.6-32.4 103.3-91.4 179.1-60.9 79.2-112.4 118.8-154.6 118.8-26.1 0-48.2-24.1-66.3-72.3C100.3 250 85.3 174.3 56.2 174.3c-3.4 0-15.1 7.1-35.2 21.1L0 168.2c51.6-45.3 100.9-95.7 131.8-98.5 34.9-3.4 56.3 20.5 64.4 71.5 28.7 181.5 41.4 208.9 93.6 126.7 18.7-29.6 28.8-52.1 30.2-67.6 4.8-45.9-35.8-42.8-63.3-31 22-72.1 64.1-107.1 126.2-105.1 45.8 1.2 67.5 31.1 64.9 89.4z\"]\n};\nvar faVine = {\n prefix: 'fab',\n iconName: 'vine',\n icon: [384, 512, [], \"f1ca\", \"M384 254.7v52.1c-18.4 4.2-36.9 6.1-52.1 6.1-36.9 77.4-103 143.8-125.1 156.2-14 7.9-27.1 8.4-42.7-.8C137 452 34.2 367.7 0 102.7h74.5C93.2 261.8 139 343.4 189.3 404.5c27.9-27.9 54.8-65.1 75.6-106.9-49.8-25.3-80.1-80.9-80.1-145.6 0-65.6 37.7-115.1 102.2-115.1 114.9 0 106.2 127.9 81.6 181.5 0 0-46.4 9.2-63.5-20.5 3.4-11.3 8.2-30.8 8.2-48.5 0-31.3-11.3-46.6-28.4-46.6-18.2 0-30.8 17.1-30.8 50 .1 79.2 59.4 118.7 129.9 101.9z\"]\n};\nvar faVk = {\n prefix: 'fab',\n iconName: 'vk',\n icon: [576, 512, [], \"f189\", \"M545 117.7c3.7-12.5 0-21.7-17.8-21.7h-58.9c-15 0-21.9 7.9-25.6 16.7 0 0-30 73.1-72.4 120.5-13.7 13.7-20 18.1-27.5 18.1-3.7 0-9.4-4.4-9.4-16.9V117.7c0-15-4.2-21.7-16.6-21.7h-92.6c-9.4 0-15 7-15 13.5 0 14.2 21.2 17.5 23.4 57.5v86.8c0 19-3.4 22.5-10.9 22.5-20 0-68.6-73.4-97.4-157.4-5.8-16.3-11.5-22.9-26.6-22.9H38.8c-16.8 0-20.2 7.9-20.2 16.7 0 15.6 20 93.1 93.1 195.5C160.4 378.1 229 416 291.4 416c37.5 0 42.1-8.4 42.1-22.9 0-66.8-3.4-73.1 15.4-73.1 8.7 0 23.7 4.4 58.7 38.1 40 40 46.6 57.9 69 57.9h58.9c16.8 0 25.3-8.4 20.4-25-11.2-34.9-86.9-106.7-90.3-111.5-8.7-11.2-6.2-16.2 0-26.2.1-.1 72-101.3 79.4-135.6z\"]\n};\nvar faVnv = {\n prefix: 'fab',\n iconName: 'vnv',\n icon: [640, 512, [], \"f40b\", \"M104.9 352c-34.1 0-46.4-30.4-46.4-30.4L2.6 210.1S-7.8 192 13 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.7-74.5c5.6-9.5 8.4-18.1 18.8-18.1h32.8c20.8 0 10.4 18.1 10.4 18.1l-55.8 111.5S174.2 352 140 352h-35.1zm395 0c-34.1 0-46.4-30.4-46.4-30.4l-55.9-111.5S387.2 192 408 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.8-74.5c5.6-9.5 8.4-18.1 18.8-18.1H627c20.8 0 10.4 18.1 10.4 18.1l-55.9 111.5S569.3 352 535.1 352h-35.2zM337.6 192c34.1 0 46.4 30.4 46.4 30.4l55.9 111.5s10.4 18.1-10.4 18.1h-32.8c-10.4 0-13.2-8.7-18.8-18.1l-36.7-74.5s-5.2-13.1-21.1-13.1c-15.9 0-21.1 13.1-21.1 13.1l-36.7 74.5c-5.6 9.4-8.4 18.1-18.8 18.1h-32.9c-20.8 0-10.4-18.1-10.4-18.1l55.9-111.5s12.2-30.4 46.4-30.4h35.1z\"]\n};\nvar faVuejs = {\n prefix: 'fab',\n iconName: 'vuejs',\n icon: [448, 512, [], \"f41f\", \"M356.9 64.3H280l-56 88.6-48-88.6H0L224 448 448 64.3h-91.1zm-301.2 32h53.8L224 294.5 338.4 96.3h53.8L224 384.5 55.7 96.3z\"]\n};\nvar faWatchmanMonitoring = {\n prefix: 'fab',\n iconName: 'watchman-monitoring',\n icon: [512, 512, [], \"e087\", \"M256,16C123.452,16,16,123.452,16,256S123.452,496,256,496,496,388.548,496,256,388.548,16,256,16ZM121.69,429.122C70.056,388.972,36.741,326.322,36.741,256a218.519,218.519,0,0,1,9.587-64.122l102.9-17.895-.121,10.967-13.943,2.013s-.144,12.5-.144,19.549a12.778,12.778,0,0,0,4.887,10.349l9.468,7.4Zm105.692-283.27,8.48-7.618s6.934-5.38-.143-9.344c-7.188-4.024-39.53-34.5-39.53-34.5-5.348-5.477-8.257-7.347-15.46,0,0,0-32.342,30.474-39.529,34.5-7.078,3.964-.144,9.344-.144,9.344l8.481,7.618-.048,4.369L75.982,131.045c39.644-56.938,105.532-94.3,180.018-94.3A218.754,218.754,0,0,1,420.934,111.77l-193.512,37.7Zm34.063,329.269-33.9-250.857,9.467-7.4a12.778,12.778,0,0,0,4.888-10.349c0-7.044-.144-19.549-.144-19.549l-13.943-2.013-.116-10.474,241.711,31.391A218.872,218.872,0,0,1,475.259,256C475.259,375.074,379.831,472.212,261.445,475.121Z\"]\n};\nvar faWaze = {\n prefix: 'fab',\n iconName: 'waze',\n icon: [512, 512, [], \"f83f\", \"M502.17 201.67C516.69 287.53 471.23 369.59 389 409.8c13 34.1-12.4 70.2-48.32 70.2a51.68 51.68 0 0 1-51.57-49c-6.44.19-64.2 0-76.33-.64A51.69 51.69 0 0 1 159 479.92c-33.86-1.36-57.95-34.84-47-67.92-37.21-13.11-72.54-34.87-99.62-70.8-13-17.28-.48-41.8 20.84-41.8 46.31 0 32.22-54.17 43.15-110.26C94.8 95.2 193.12 32 288.09 32c102.48 0 197.15 70.67 214.08 169.67zM373.51 388.28c42-19.18 81.33-56.71 96.29-102.14 40.48-123.09-64.15-228-181.71-228-83.45 0-170.32 55.42-186.07 136-9.53 48.91 5 131.35-68.75 131.35C58.21 358.6 91.6 378.11 127 389.54c24.66-21.8 63.87-15.47 79.83 14.34 14.22 1 79.19 1.18 87.9.82a51.69 51.69 0 0 1 78.78-16.42zM205.12 187.13c0-34.74 50.84-34.75 50.84 0s-50.84 34.74-50.84 0zm116.57 0c0-34.74 50.86-34.75 50.86 0s-50.86 34.75-50.86 0zm-122.61 70.69c-3.44-16.94 22.18-22.18 25.62-5.21l.06.28c4.14 21.42 29.85 44 64.12 43.07 35.68-.94 59.25-22.21 64.11-42.77 4.46-16.05 28.6-10.36 25.47 6-5.23 22.18-31.21 62-91.46 62.9-42.55 0-80.88-27.84-87.9-64.25z\"]\n};\nvar faWeebly = {\n prefix: 'fab',\n iconName: 'weebly',\n icon: [512, 512, [], \"f5cc\", \"M425.09 65.83c-39.88 0-73.28 25.73-83.66 64.33-18.16-58.06-65.5-64.33-84.95-64.33-19.78 0-66.8 6.28-85.28 64.33-10.38-38.6-43.45-64.33-83.66-64.33C38.59 65.83 0 99.72 0 143.03c0 28.96 4.18 33.27 77.17 233.48 22.37 60.57 67.77 69.35 92.74 69.35 39.23 0 70.04-19.46 85.93-53.98 15.89 34.83 46.69 54.29 85.93 54.29 24.97 0 70.36-9.1 92.74-69.67 76.55-208.65 77.5-205.58 77.5-227.2.63-48.32-36.01-83.47-86.92-83.47zm26.34 114.81l-65.57 176.44c-7.92 21.49-21.22 37.22-46.24 37.22-23.44 0-37.38-12.41-44.03-33.9l-39.28-117.42h-.95L216.08 360.4c-6.96 21.5-20.9 33.6-44.02 33.6-25.02 0-38.33-15.74-46.24-37.22L60.88 181.55c-5.38-14.83-7.92-23.91-7.92-34.5 0-16.34 15.84-29.36 38.33-29.36 18.69 0 31.99 11.8 36.11 29.05l44.03 139.82h.95l44.66-136.79c6.02-19.67 16.47-32.08 38.96-32.08s32.94 12.11 38.96 32.08l44.66 136.79h.95l44.03-139.82c4.12-17.25 17.42-29.05 36.11-29.05 22.17 0 38.33 13.32 38.33 35.71-.32 7.87-4.12 16.04-7.61 27.24z\"]\n};\nvar faWeibo = {\n prefix: 'fab',\n iconName: 'weibo',\n icon: [512, 512, [], \"f18a\", \"M407 177.6c7.6-24-13.4-46.8-37.4-41.7-22 4.8-28.8-28.1-7.1-32.8 50.1-10.9 92.3 37.1 76.5 84.8-6.8 21.2-38.8 10.8-32-10.3zM214.8 446.7C108.5 446.7 0 395.3 0 310.4c0-44.3 28-95.4 76.3-143.7C176 67 279.5 65.8 249.9 161c-4 13.1 12.3 5.7 12.3 6 79.5-33.6 140.5-16.8 114 51.4-3.7 9.4 1.1 10.9 8.3 13.1 135.7 42.3 34.8 215.2-169.7 215.2zm143.7-146.3c-5.4-55.7-78.5-94-163.4-85.7-84.8 8.6-148.8 60.3-143.4 116s78.5 94 163.4 85.7c84.8-8.6 148.8-60.3 143.4-116zM347.9 35.1c-25.9 5.6-16.8 43.7 8.3 38.3 72.3-15.2 134.8 52.8 111.7 124-7.4 24.2 29.1 37 37.4 12 31.9-99.8-55.1-195.9-157.4-174.3zm-78.5 311c-17.1 38.8-66.8 60-109.1 46.3-40.8-13.1-58-53.4-40.3-89.7 17.7-35.4 63.1-55.4 103.4-45.1 42 10.8 63.1 50.2 46 88.5zm-86.3-30c-12.9-5.4-30 .3-38 12.9-8.3 12.9-4.3 28 8.6 34 13.1 6 30.8.3 39.1-12.9 8-13.1 3.7-28.3-9.7-34zm32.6-13.4c-5.1-1.7-11.4.6-14.3 5.4-2.9 5.1-1.4 10.6 3.7 12.9 5.1 2 11.7-.3 14.6-5.4 2.8-5.2 1.1-10.9-4-12.9z\"]\n};\nvar faWeixin = {\n prefix: 'fab',\n iconName: 'weixin',\n icon: [576, 512, [], \"f1d7\", \"M385.2 167.6c6.4 0 12.6.3 18.8 1.1C387.4 90.3 303.3 32 207.7 32 100.5 32 13 104.8 13 197.4c0 53.4 29.3 97.5 77.9 131.6l-19.3 58.6 68-34.1c24.4 4.8 43.8 9.7 68.2 9.7 6.2 0 12.1-.3 18.3-.8-4-12.9-6.2-26.6-6.2-40.8-.1-84.9 72.9-154 165.3-154zm-104.5-52.9c14.5 0 24.2 9.7 24.2 24.4 0 14.5-9.7 24.2-24.2 24.2-14.8 0-29.3-9.7-29.3-24.2.1-14.7 14.6-24.4 29.3-24.4zm-136.4 48.6c-14.5 0-29.3-9.7-29.3-24.2 0-14.8 14.8-24.4 29.3-24.4 14.8 0 24.4 9.7 24.4 24.4 0 14.6-9.6 24.2-24.4 24.2zM563 319.4c0-77.9-77.9-141.3-165.4-141.3-92.7 0-165.4 63.4-165.4 141.3S305 460.7 397.6 460.7c19.3 0 38.9-5.1 58.6-9.9l53.4 29.3-14.8-48.6C534 402.1 563 363.2 563 319.4zm-219.1-24.5c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.8 0 24.4 9.7 24.4 19.3 0 10-9.7 19.6-24.4 19.6zm107.1 0c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.5 0 24.4 9.7 24.4 19.3.1 10-9.9 19.6-24.4 19.6z\"]\n};\nvar faWhatsapp = {\n prefix: 'fab',\n iconName: 'whatsapp',\n icon: [448, 512, [], \"f232\", \"M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z\"]\n};\nvar faWhatsappSquare = {\n prefix: 'fab',\n iconName: 'whatsapp-square',\n icon: [448, 512, [], \"f40c\", \"M224 122.8c-72.7 0-131.8 59.1-131.9 131.8 0 24.9 7 49.2 20.2 70.1l3.1 5-13.3 48.6 49.9-13.1 4.8 2.9c20.2 12 43.4 18.4 67.1 18.4h.1c72.6 0 133.3-59.1 133.3-131.8 0-35.2-15.2-68.3-40.1-93.2-25-25-58-38.7-93.2-38.7zm77.5 188.4c-3.3 9.3-19.1 17.7-26.7 18.8-12.6 1.9-22.4.9-47.5-9.9-39.7-17.2-65.7-57.2-67.7-59.8-2-2.6-16.2-21.5-16.2-41s10.2-29.1 13.9-33.1c3.6-4 7.9-5 10.6-5 2.6 0 5.3 0 7.6.1 2.4.1 5.7-.9 8.9 6.8 3.3 7.9 11.2 27.4 12.2 29.4s1.7 4.3.3 6.9c-7.6 15.2-15.7 14.6-11.6 21.6 15.3 26.3 30.6 35.4 53.9 47.1 4 2 6.3 1.7 8.6-1 2.3-2.6 9.9-11.6 12.5-15.5 2.6-4 5.3-3.3 8.9-2 3.6 1.3 23.1 10.9 27.1 12.9s6.6 3 7.6 4.6c.9 1.9.9 9.9-2.4 19.1zM400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM223.9 413.2c-26.6 0-52.7-6.7-75.8-19.3L64 416l22.5-82.2c-13.9-24-21.2-51.3-21.2-79.3C65.4 167.1 136.5 96 223.9 96c42.4 0 82.2 16.5 112.2 46.5 29.9 30 47.9 69.8 47.9 112.2 0 87.4-72.7 158.5-160.1 158.5z\"]\n};\nvar faWhmcs = {\n prefix: 'fab',\n iconName: 'whmcs',\n icon: [448, 512, [], \"f40d\", \"M448 161v-21.3l-28.5-8.8-2.2-10.4 20.1-20.7L427 80.4l-29 7.5-7.2-7.5 7.5-28.2-19.1-11.6-21.3 21-10.7-3.2-7-26.4h-22.6l-6.2 26.4-12.1 3.2-19.7-21-19.4 11 8.1 27.7-8.1 8.4-28.5-7.5-11 19.1 20.7 21-2.9 10.4-28.5 7.8-.3 21.7 28.8 7.5 2.4 12.1-20.1 19.9 10.4 18.5 29.6-7.5 7.2 8.6-8.1 26.9 19.9 11.6 19.4-20.4 11.6 2.9 6.7 28.5 22.6.3 6.7-28.8 11.6-3.5 20.7 21.6 20.4-12.1-8.8-28 7.8-8.1 28.8 8.8 10.3-20.1-20.9-18.8 2.2-12.1 29.1-7zm-119.2 45.2c-31.3 0-56.8-25.4-56.8-56.8s25.4-56.8 56.8-56.8 56.8 25.4 56.8 56.8c0 31.5-25.4 56.8-56.8 56.8zm72.3 16.4l46.9 14.5V277l-55.1 13.4-4.1 22.7 38.9 35.3-19.2 37.9-54-16.7-14.6 15.2 16.7 52.5-38.3 22.7-38.9-40.5-21.7 6.6-12.6 54-42.4-.5-12.6-53.6-21.7-5.6-36.4 38.4-37.4-21.7 15.2-50.5-13.7-16.1-55.5 14.1-19.7-34.8 37.9-37.4-4.8-22.8-54-14.1.5-40.9L54 219.9l5.7-19.7-38.9-39.4L41.5 125l53.6 14.1 15.2-15.7-15.2-52 36.4-20.7 36.8 39.4L191 84l11.6-52H245l11.6 45.9L234 72l-6.3-1.7-3.3 5.7-11 19.1-3.3 5.6 4.6 4.6 17.2 17.4-.3 1-23.8 6.5-6.2 1.7-.1 6.4-.2 12.9C153.8 161.6 118 204 118 254.7c0 58.3 47.3 105.7 105.7 105.7 50.5 0 92.7-35.4 103.2-82.8l13.2.2 6.9.1 1.6-6.7 5.6-24 1.9-.6 17.1 17.8 4.7 4.9 5.8-3.4 20.4-12.1 5.8-3.5-2-6.5-6.8-21.2z\"]\n};\nvar faWikipediaW = {\n prefix: 'fab',\n iconName: 'wikipedia-w',\n icon: [640, 512, [], \"f266\", \"M640 51.2l-.3 12.2c-28.1.8-45 15.8-55.8 40.3-25 57.8-103.3 240-155.3 358.6H415l-81.9-193.1c-32.5 63.6-68.3 130-99.2 193.1-.3.3-15 0-15-.3C172 352.3 122.8 243.4 75.8 133.4 64.4 106.7 26.4 63.4.2 63.7c0-3.1-.3-10-.3-14.2h161.9v13.9c-19.2 1.1-52.8 13.3-43.3 34.2 21.9 49.7 103.6 240.3 125.6 288.6 15-29.7 57.8-109.2 75.3-142.8-13.9-28.3-58.6-133.9-72.8-160-9.7-17.8-36.1-19.4-55.8-19.7V49.8l142.5.3v13.1c-19.4.6-38.1 7.8-29.4 26.1 18.9 40 30.6 68.1 48.1 104.7 5.6-10.8 34.7-69.4 48.1-100.8 8.9-20.6-3.9-28.6-38.6-29.4.3-3.6 0-10.3.3-13.6 44.4-.3 111.1-.3 123.1-.6v13.6c-22.5.8-45.8 12.8-58.1 31.7l-59.2 122.8c6.4 16.1 63.3 142.8 69.2 156.7L559.2 91.8c-8.6-23.1-36.4-28.1-47.2-28.3V49.6l127.8 1.1.2.5z\"]\n};\nvar faWindows = {\n prefix: 'fab',\n iconName: 'windows',\n icon: [448, 512, [], \"f17a\", \"M0 93.7l183.6-25.3v177.4H0V93.7zm0 324.6l183.6 25.3V268.4H0v149.9zm203.8 28L448 480V268.4H203.8v177.9zm0-380.6v180.1H448V32L203.8 65.7z\"]\n};\nvar faWix = {\n prefix: 'fab',\n iconName: 'wix',\n icon: [640, 512, [], \"f5cf\", \"M393.38 131.69c0 13.03 2.08 32.69-28.68 43.83-9.52 3.45-15.95 9.66-15.95 9.66 0-31 4.72-42.22 17.4-48.86 9.75-5.11 27.23-4.63 27.23-4.63zm-115.8 35.54l-34.24 132.66-28.48-108.57c-7.69-31.99-20.81-48.53-48.43-48.53-27.37 0-40.66 16.18-48.43 48.53L89.52 299.89 55.28 167.23C49.73 140.51 23.86 128.96 0 131.96l65.57 247.93s21.63 1.56 32.46-3.96c14.22-7.25 20.98-12.84 29.59-46.57 7.67-30.07 29.11-118.41 31.12-124.7 4.76-14.94 11.09-13.81 15.4 0 1.97 6.3 23.45 94.63 31.12 124.7 8.6 33.73 15.37 39.32 29.59 46.57 10.82 5.52 32.46 3.96 32.46 3.96l65.57-247.93c-24.42-3.07-49.82 8.93-55.3 35.27zm115.78 5.21s-4.1 6.34-13.46 11.57c-6.01 3.36-11.78 5.64-17.97 8.61-15.14 7.26-13.18 13.95-13.18 35.2v152.07s16.55 2.09 27.37-3.43c13.93-7.1 17.13-13.95 17.26-44.78V181.41l-.02.01v-8.98zm163.44 84.08L640 132.78s-35.11-5.98-52.5 9.85c-13.3 12.1-24.41 29.55-54.18 72.47-.47.73-6.25 10.54-13.07 0-29.29-42.23-40.8-60.29-54.18-72.47-17.39-15.83-52.5-9.85-52.5-9.85l83.2 123.74-82.97 123.36s36.57 4.62 53.95-11.21c11.49-10.46 17.58-20.37 52.51-70.72 6.81-10.52 12.57-.77 13.07 0 29.4 42.38 39.23 58.06 53.14 70.72 17.39 15.83 53.32 11.21 53.32 11.21L556.8 256.52z\"]\n};\nvar faWizardsOfTheCoast = {\n prefix: 'fab',\n iconName: 'wizards-of-the-coast',\n icon: [640, 512, [], \"f730\", \"M219.19 345.69c-1.9 1.38-11.07 8.44-.26 23.57 4.64 6.42 14.11 12.79 21.73 6.55 6.5-4.88 7.35-12.92.26-23.04-5.47-7.76-14.28-12.88-21.73-7.08zm336.75 75.94c-.34 1.7-.55 1.67.79 0 2.09-4.19 4.19-10.21 4.98-19.9 3.14-38.49-40.33-71.49-101.34-78.03-54.73-6.02-124.38 9.17-188.8 60.49l-.26 1.57c2.62 4.98 4.98 10.74 3.4 21.21l.79.26c63.89-58.4 131.19-77.25 184.35-73.85 58.4 3.67 100.03 34.04 100.03 68.08-.01 9.96-2.63 15.72-3.94 20.17zM392.28 240.42c.79 7.07 4.19 10.21 9.17 10.47 5.5.26 9.43-2.62 10.47-6.55.79-3.4 2.09-29.85 2.09-29.85s-11.26 6.55-14.93 10.47c-3.66 3.68-7.33 8.39-6.8 15.46zm-50.02-151.1C137.75 89.32 13.1 226.8.79 241.2c-1.05.52-1.31.79.79 1.31 60.49 16.5 155.81 81.18 196.13 202.16l1.05.26c55.25-69.92 140.88-128.05 236.99-128.05 80.92 0 130.15 42.16 130.15 80.39 0 18.33-6.55 33.52-22.26 46.35 0 .96-.2.79.79.79 14.66-10.74 27.5-28.8 27.5-48.18 0-22.78-12.05-38.23-12.05-38.23 7.07 7.07 10.74 16.24 10.74 16.24 5.76-40.85 26.97-62.32 26.97-62.32-2.36-9.69-6.81-17.81-6.81-17.81 7.59 8.12 14.4 27.5 14.4 41.37 0 10.47-3.4 22.78-12.57 31.95l.26.52c8.12-4.98 16.5-16.76 16.5-37.97 0-15.71-4.71-25.92-4.71-25.92 5.76-5.24 11.26-9.17 15.97-11.78.79 3.4 2.09 9.69 2.36 14.93 0 1.05.79 1.83 1.05 0 .79-5.76-.26-16.24-.26-16.5 6.02-3.14 9.69-4.45 9.69-4.45C617.74 176 489.43 89.32 342.26 89.32zm-99.24 289.62c-11.06 8.99-24.2 4.08-30.64-4.19-7.45-9.58-6.76-24.09 4.19-32.47 14.85-11.35 27.08-.49 31.16 5.5.28.39 12.13 16.57-4.71 31.16zm2.09-136.43l9.43-17.81 11.78 70.96-12.57 6.02-24.62-28.8 14.14-26.71 3.67 4.45-1.83-8.11zm18.59 117.58l-.26-.26c2.05-4.1-2.5-6.61-17.54-31.69-1.31-2.36-3.14-2.88-4.45-2.62l-.26-.52c7.86-5.76 15.45-10.21 25.4-15.71l.52.26c1.31 1.83 2.09 2.88 3.4 4.71l-.26.52c-1.05-.26-2.36-.79-5.24.26-2.09.79-7.86 3.67-12.31 7.59v1.31c1.57 2.36 3.93 6.55 5.76 9.69h.26c10.05-6.28 7.56-4.55 11.52-7.86h.26c.52 1.83.52 1.83 1.83 5.5l-.26.26c-3.06.61-4.65.34-11.52 5.5v.26c9.46 17.02 11.01 16.75 12.57 15.97l.26.26c-2.34 1.59-6.27 4.21-9.68 6.57zm55.26-32.47c-3.14 1.57-6.02 2.88-9.95 4.98l-.26-.26c1.29-2.59 1.16-2.71-11.78-32.47l-.26-.26c-.15 0-8.9 3.65-9.95 7.33h-.52l-1.05-5.76.26-.52c7.29-4.56 25.53-11.64 27.76-12.57l.52.26 3.14 4.98-.26.52c-3.53-1.76-7.35.76-12.31 2.62v.26c12.31 32.01 12.67 30.64 14.66 30.64v.25zm44.77-16.5c-4.19 1.05-5.24 1.31-9.69 2.88l-.26-.26.52-4.45c-1.05-3.4-3.14-11.52-3.67-13.62l-.26-.26c-3.4.79-8.9 2.62-12.83 3.93l-.26.26c.79 2.62 3.14 9.95 4.19 13.88.79 2.36 1.83 2.88 2.88 3.14v.52c-3.67 1.05-7.07 2.62-10.21 3.93l-.26-.26c1.05-1.31 1.05-2.88.26-4.98-1.05-3.14-8.12-23.83-9.17-27.23-.52-1.83-1.57-3.14-2.62-3.14v-.52c3.14-1.05 6.02-2.09 10.74-3.4l.26.26-.26 4.71c1.31 3.93 2.36 7.59 3.14 9.69h.26c3.93-1.31 9.43-2.88 12.83-3.93l.26-.26-2.62-9.43c-.52-1.83-1.05-3.4-2.62-3.93v-.26c4.45-1.05 7.33-1.83 10.74-2.36l.26.26c-1.05 1.31-1.05 2.88-.52 4.45 1.57 6.28 4.71 20.43 6.28 26.45.54 2.62 1.85 3.41 2.63 3.93zm32.21-6.81l-.26.26c-4.71.52-14.14 2.36-22.52 4.19l-.26-.26.79-4.19c-1.57-7.86-3.4-18.59-4.98-26.19-.26-1.83-.79-2.88-2.62-3.67l.79-.52c9.17-1.57 20.16-2.36 24.88-2.62l.26.26c.52 2.36.79 3.14 1.57 5.5l-.26.26c-1.14-1.14-3.34-3.2-16.24-.79l-.26.26c.26 1.57 1.05 6.55 1.57 9.95l.26.26c9.52-1.68 4.76-.06 10.74-2.36h.26c0 1.57-.26 1.83-.26 5.24h-.26c-4.81-1.03-2.15-.9-10.21 0l-.26.26c.26 2.09 1.57 9.43 2.09 12.57l.26.26c1.15.38 14.21-.65 16.24-4.71h.26c-.53 2.38-1.05 4.21-1.58 6.04zm10.74-44.51c-4.45 2.36-8.12 2.88-11 2.88-.25.02-11.41 1.09-17.54-9.95-6.74-10.79-.98-25.2 5.5-31.69 8.8-8.12 23.35-10.1 28.54-17.02 8.03-10.33-13.04-22.31-29.59-5.76l-2.62-2.88 5.24-16.24c25.59-1.57 45.2-3.04 50.02 16.24.79 3.14 0 9.43-.26 12.05 0 2.62-1.83 18.85-2.09 23.04-.52 4.19-.79 18.33-.79 20.69.26 2.36.52 4.19 1.57 5.5 1.57 1.83 5.76 1.83 5.76 1.83l-.79 4.71c-11.82-1.07-10.28-.59-20.43-1.05-3.22-5.15-2.23-3.28-4.19-7.86 0 .01-4.19 3.94-7.33 5.51zm37.18 21.21c-6.35-10.58-19.82-7.16-21.73 5.5-2.63 17.08 14.3 19.79 20.69 10.21l.26.26c-.52 1.83-1.83 6.02-1.83 6.28l-.52.52c-10.3 6.87-28.5-2.5-25.66-18.59 1.94-10.87 14.44-18.93 28.8-9.95l.26.52c0 1.06-.27 3.41-.27 5.25zm5.77-87.73v-6.55c.69 0 19.65 3.28 27.76 7.33l-1.57 17.54s10.21-9.43 15.45-10.74c5.24-1.57 14.93 7.33 14.93 7.33l-11.26 11.26c-12.07-6.35-19.59-.08-20.69.79-5.29 38.72-8.6 42.17 4.45 46.09l-.52 4.71c-17.55-4.29-18.53-4.5-36.92-7.33l.79-4.71c7.25 0 7.48-5.32 7.59-6.81 0 0 4.98-53.16 4.98-55.25-.02-2.87-4.99-3.66-4.99-3.66zm10.99 114.44c-8.12-2.09-14.14-11-10.74-20.69 3.14-9.43 12.31-12.31 18.85-10.21 9.17 2.62 12.83 11.78 10.74 19.38-2.61 8.9-9.42 13.87-18.85 11.52zm42.16 9.69c-2.36-.52-7.07-2.36-8.64-2.88v-.26l1.57-1.83c.59-8.24.59-7.27.26-7.59-4.82-1.81-6.66-2.36-7.07-2.36-1.31 1.83-2.88 4.45-3.67 5.5l-.79 3.4v.26c-1.31-.26-3.93-1.31-6.02-1.57v-.26l2.62-1.83c3.4-4.71 9.95-14.14 13.88-20.16v-2.09l.52-.26c2.09.79 5.5 2.09 7.59 2.88.48.48.18-1.87-1.05 25.14-.24 1.81.02 2.6.8 3.91zm-4.71-89.82c11.25-18.27 30.76-16.19 34.04-3.4L539.7 198c2.34-6.25-2.82-9.9-4.45-11.26l1.83-3.67c12.22 10.37 16.38 13.97 22.52 20.43-25.91 73.07-30.76 80.81-24.62 84.32l-1.83 4.45c-6.37-3.35-8.9-4.42-17.81-8.64l2.09-6.81c-.26-.26-3.93 3.93-9.69 3.67-19.06-1.3-22.89-31.75-9.67-52.9zm29.33 79.34c0-5.71-6.34-7.89-7.86-5.24-1.31 2.09 1.05 4.98 2.88 8.38 1.57 2.62 2.62 6.28 1.05 9.43-2.64 6.34-12.4 5.31-15.45-.79 0-.7-.27.09 1.83-4.71l.79-.26c-.57 5.66 6.06 9.61 8.38 4.98 1.05-2.09-.52-5.5-2.09-8.38-1.57-2.62-3.67-6.28-1.83-9.69 2.72-5.06 11.25-4.47 14.66 2.36v.52l-2.36 3.4zm21.21 13.36c-1.96-3.27-.91-2.14-4.45-4.71h-.26c-2.36 4.19-5.76 10.47-8.64 16.24-1.31 2.36-1.05 3.4-.79 3.93l-.26.26-5.76-4.45.26-.26 2.09-1.31c3.14-5.76 6.55-12.05 9.17-17.02v-.26c-2.64-1.98-1.22-1.51-6.02-1.83v-.26l3.14-3.4h.26c3.67 2.36 9.95 6.81 12.31 8.9l.26.26-1.31 3.91zm27.23-44.26l-2.88-2.88c.79-2.36 1.83-4.98 2.09-7.59.75-9.74-11.52-11.84-11.52-4.98 0 4.98 7.86 19.38 7.86 27.76 0 10.21-5.76 15.71-13.88 16.5-8.38.79-20.16-10.47-20.16-10.47l4.98-14.4 2.88 2.09c-2.97 17.8 17.68 20.37 13.35 5.24-1.06-4.02-18.75-34.2 2.09-38.23 13.62-2.36 23.04 16.5 23.04 16.5l-7.85 10.46zm35.62-10.21c-11-30.38-60.49-127.53-191.95-129.62-53.42-1.05-94.27 15.45-132.76 37.97l85.63-9.17-91.39 20.69 25.14 19.64-3.93-16.5c7.5-1.71 39.15-8.45 66.77-8.9l-22.26 80.39c13.61-.7 18.97-8.98 19.64-22.78l4.98-1.05.26 26.71c-22.46 3.21-37.3 6.69-49.49 9.95l13.09-43.21-61.54-36.66 2.36 8.12 10.21 4.98c6.28 18.59 19.38 56.56 20.43 58.66 1.95 4.28 3.16 5.78 12.05 4.45l1.05 4.98c-16.08 4.86-23.66 7.61-39.02 14.4l-2.36-4.71c4.4-2.94 8.73-3.94 5.5-12.83-23.7-62.5-21.48-58.14-22.78-59.44l2.36-4.45 33.52 67.3c-3.84-11.87 1.68 1.69-32.99-78.82l-41.9 88.51 4.71-13.88-35.88-42.16 27.76 93.48-11.78 8.38C95 228.58 101.05 231.87 93.23 231.52c-5.5-.26-13.62 5.5-13.62 5.5L74.63 231c30.56-23.53 31.62-24.33 58.4-42.68l4.19 7.07s-5.76 4.19-7.86 7.07c-5.9 9.28 1.67 13.28 61.8 75.68l-18.85-58.92 39.8-10.21 25.66 30.64 4.45-12.31-4.98-24.62 13.09-3.4.52 3.14 3.67-10.47-94.27 29.33 11.26-4.98-13.62-42.42 17.28-9.17 30.11 36.14 28.54-13.09c-1.41-7.47-2.47-14.5-4.71-19.64l17.28 13.88 4.71-2.09-59.18-42.68 23.08 11.5c18.98-6.07 25.23-7.47 32.21-9.69l2.62 11c-12.55 12.55 1.43 16.82 6.55 19.38l-13.62-61.01 12.05 28.28c4.19-1.31 7.33-2.09 7.33-2.09l2.62 8.64s-3.14 1.05-6.28 2.09l8.9 20.95 33.78-65.73-20.69 61.01c42.42-24.09 81.44-36.66 131.98-35.88 67.04 1.05 167.33 40.85 199.8 139.83.78 2.1-.01 2.63-.79.27zM203.48 152.43s1.83-.52 4.19-1.31l9.43 7.59c-.4 0-3.44-.25-11.26 2.36l-2.36-8.64zm143.76 38.5c-1.57-.6-26.46-4.81-33.26 20.69l21.73 17.02 11.53-37.71zM318.43 67.07c-58.4 0-106.05 12.05-114.96 14.4v.79c8.38 2.09 14.4 4.19 21.21 11.78l1.57.26c6.55-1.83 48.97-13.88 110.24-13.88 180.16 0 301.67 116.79 301.67 223.37v9.95c0 1.31.79 2.62 1.05.52.52-2.09.79-8.64.79-19.64.26-83.79-96.63-227.55-321.57-227.55zm211.06 169.68c1.31-5.76 0-12.31-7.33-13.09-9.62-1.13-16.14 23.79-17.02 33.52-.79 5.5-1.31 14.93 6.02 14.93 4.68-.01 9.72-.91 18.33-35.36zm-61.53 42.95c-2.62-.79-9.43-.79-12.57 10.47-1.83 6.81.52 13.35 6.02 14.66 3.67 1.05 8.9.52 11.78-10.74 2.62-9.94-1.83-13.61-5.23-14.39zM491 300.65c1.83.52 3.14 1.05 5.76 1.83 0-1.83.52-8.38.79-12.05-1.05 1.31-5.5 8.12-6.55 9.95v.27z\"]\n};\nvar faWodu = {\n prefix: 'fab',\n iconName: 'wodu',\n icon: [640, 512, [], \"e088\", \"M178.414 339.706H141.1L112.166 223.475h-.478L83.228 339.706H45.2L0 168.946H37.548L64.574 285.177h.478L94.707 168.946h35.157l29.178 117.667h.479L187.5 168.946h36.831zM271.4 212.713c38.984 0 64.1 25.828 64.1 65.291 0 39.222-25.111 65.05-64.1 65.05-38.743 0-63.855-25.828-63.855-65.05C207.547 238.541 232.659 212.713 271.4 212.713zm0 104.753c23.2 0 30.133-19.852 30.133-39.462 0-19.852-6.934-39.7-30.133-39.7-27.7 0-29.894 19.85-29.894 39.7C241.508 297.614 248.443 317.466 271.4 317.466zM435.084 323.922h-.478c-7.893 13.392-21.765 19.132-37.548 19.132-37.31 0-55.485-32.045-55.485-66.246 0-33.243 18.415-64.095 54.767-64.095 14.589 0 28.938 6.218 36.831 18.416h.24V168.946h33.96v170.76H435.084zM405.428 238.3c-22.24 0-29.894 19.134-29.894 39.463 0 19.371 8.848 39.7 29.894 39.7 22.482 0 29.178-19.613 29.178-39.94C434.606 257.436 427.432 238.3 405.428 238.3zM592.96 339.706H560.673V322.487h-.718c-8.609 13.87-23.436 20.567-37.786 20.567-36.113 0-45.2-20.328-45.2-50.941V216.061h33.959V285.9c0 20.329 5.979 30.372 21.765 30.372 18.415 0 26.306-10.283 26.306-35.393V216.061H592.96zM602.453 302.876H640v36.83H602.453z\"]\n};\nvar faWolfPackBattalion = {\n prefix: 'fab',\n iconName: 'wolf-pack-battalion',\n icon: [512, 512, [], \"f514\", \"M267.73 471.53l10.56 15.84 5.28-12.32 5.28 7V512c21.06-7.92 21.11-66.86 25.51-97.21 4.62-31.89-.88-92.81 81.37-149.11-8.88-23.61-12-49.43-2.64-80.05C421 189 447 196.21 456.43 239.73l-30.35 8.36c11.15 23 17 46.76 13.2 72.14L412 313.18l-6.16 33.43-18.47-7-8.8 33.39-19.35-7 26.39 21.11 8.8-28.15L419 364.2l7-35.63 26.39 14.52c.25-20 7-58.06-8.8-84.45l26.39 5.28c4-22.07-2.38-39.21-7.92-56.74l22.43 9.68c-.44-25.07-29.94-56.79-61.58-58.5-20.22-1.09-56.74-25.17-54.1-51.9 2-19.87 17.45-42.62 43.11-49.7-44 36.51-9.68 67.3 5.28 73.46 4.4-11.44 17.54-69.08 0-130.2-40.39 22.87-89.65 65.1-93.2 147.79l-58 38.71-3.52 93.25L369.78 220l7 7-17.59 3.52-44 38.71-15.84-5.28-28.1 49.25-3.52 119.64 21.11 15.84-32.55 15.84-32.55-15.84 21.11-15.84-3.52-119.64-28.15-49.26-15.84 5.28-44-38.71-17.58-3.51 7-7 107.33 59.82-3.52-93.25-58.06-38.71C185 65.1 135.77 22.87 95.3 0c-17.54 61.12-4.4 118.76 0 130.2 15-6.16 49.26-36.95 5.28-73.46 25.66 7.08 41.15 29.83 43.11 49.7 2.63 26.74-33.88 50.81-54.1 51.9-31.65 1.72-61.15 33.44-61.59 58.51l22.43-9.68c-5.54 17.53-11.91 34.67-7.92 56.74l26.39-5.28c-15.76 26.39-9.05 64.43-8.8 84.45l26.39-14.52 7 35.63 24.63-5.28 8.8 28.15L153.35 366 134 373l-8.8-33.43-18.47 7-6.16-33.43-27.27 7c-3.82-25.38 2-49.1 13.2-72.14l-30.35-8.36c9.4-43.52 35.47-50.77 63.34-54.1 9.36 30.62 6.24 56.45-2.64 80.05 82.25 56.3 76.75 117.23 81.37 149.11 4.4 30.35 4.45 89.29 25.51 97.21v-29.83l5.28-7 5.28 12.32 10.56-15.84 11.44 21.11 11.43-21.1zm79.17-95L331.06 366c7.47-4.36 13.76-8.42 19.35-12.32-.6 7.22-.27 13.84-3.51 22.84zm28.15-49.26c-.4 10.94-.9 21.66-1.76 31.67-7.85-1.86-15.57-3.8-21.11-7 8.24-7.94 15.55-16.32 22.87-24.68zm24.63 5.28c0-13.43-2.05-24.21-5.28-33.43a235 235 0 0 1-18.47 27.27zm3.52-80.94c19.44 12.81 27.8 33.66 29.91 56.3-12.32-4.53-24.63-9.31-36.95-10.56 5.06-12 6.65-28.14 7-45.74zm-1.76-45.74c.81 14.3 1.84 28.82 1.76 42.23 19.22-8.11 29.78-9.72 44-14.08-10.61-18.96-27.2-25.53-45.76-28.16zM165.68 376.52L181.52 366c-7.47-4.36-13.76-8.42-19.35-12.32.6 7.26.27 13.88 3.51 22.88zm-28.15-49.26c.4 10.94.9 21.66 1.76 31.67 7.85-1.86 15.57-3.8 21.11-7-8.24-7.93-15.55-16.31-22.87-24.67zm-24.64 5.28c0-13.43 2-24.21 5.28-33.43a235 235 0 0 0 18.47 27.27zm-3.52-80.94c-19.44 12.81-27.8 33.66-29.91 56.3 12.32-4.53 24.63-9.31 37-10.56-5-12-6.65-28.14-7-45.74zm1.76-45.74c-.81 14.3-1.84 28.82-1.76 42.23-19.22-8.11-29.78-9.72-44-14.08 10.63-18.95 27.23-25.52 45.76-28.15z\"]\n};\nvar faWordpress = {\n prefix: 'fab',\n iconName: 'wordpress',\n icon: [512, 512, [], \"f19a\", \"M61.7 169.4l101.5 278C92.2 413 43.3 340.2 43.3 256c0-30.9 6.6-60.1 18.4-86.6zm337.9 75.9c0-26.3-9.4-44.5-17.5-58.7-10.8-17.5-20.9-32.4-20.9-49.9 0-19.6 14.8-37.8 35.7-37.8.9 0 1.8.1 2.8.2-37.9-34.7-88.3-55.9-143.7-55.9-74.3 0-139.7 38.1-177.8 95.9 5 .2 9.7.3 13.7.3 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l77.5 230.4L249.8 247l-33.1-90.8c-11.5-.7-22.3-2-22.3-2-11.5-.7-10.1-18.2 1.3-17.5 0 0 35.1 2.7 56 2.7 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l76.9 228.7 21.2-70.9c9-29.4 16-50.5 16-68.7zm-139.9 29.3l-63.8 185.5c19.1 5.6 39.2 8.7 60.1 8.7 24.8 0 48.5-4.3 70.6-12.1-.6-.9-1.1-1.9-1.5-2.9l-65.4-179.2zm183-120.7c.9 6.8 1.4 14 1.4 21.9 0 21.6-4 45.8-16.2 76.2l-65 187.9C426.2 403 468.7 334.5 468.7 256c0-37-9.4-71.8-26-102.1zM504 256c0 136.8-111.3 248-248 248C119.2 504 8 392.7 8 256 8 119.2 119.2 8 256 8c136.7 0 248 111.2 248 248zm-11.4 0c0-130.5-106.2-236.6-236.6-236.6C125.5 19.4 19.4 125.5 19.4 256S125.6 492.6 256 492.6c130.5 0 236.6-106.1 236.6-236.6z\"]\n};\nvar faWordpressSimple = {\n prefix: 'fab',\n iconName: 'wordpress-simple',\n icon: [512, 512, [], \"f411\", \"M256 8C119.3 8 8 119.2 8 256c0 136.7 111.3 248 248 248s248-111.3 248-248C504 119.2 392.7 8 256 8zM33 256c0-32.3 6.9-63 19.3-90.7l106.4 291.4C84.3 420.5 33 344.2 33 256zm223 223c-21.9 0-43-3.2-63-9.1l66.9-194.4 68.5 187.8c.5 1.1 1 2.1 1.6 3.1-23.1 8.1-48 12.6-74 12.6zm30.7-327.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-21.9 0-58.7-2.8-58.7-2.8-12-.7-13.4 17.7-1.4 18.4 0 0 11.4 1.4 23.4 2.1l34.7 95.2L200.6 393l-81.2-241.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-4.2 0-9.1-.1-14.4-.3C109.6 73 178.1 33 256 33c58 0 110.9 22.2 150.6 58.5-1-.1-1.9-.2-2.9-.2-21.9 0-37.4 19.1-37.4 39.6 0 18.4 10.6 33.9 21.9 52.3 8.5 14.8 18.4 33.9 18.4 61.5 0 19.1-7.3 41.2-17 72.1l-22.2 74.3-80.7-239.6zm81.4 297.2l68.1-196.9c12.7-31.8 17-57.2 17-79.9 0-8.2-.5-15.8-1.5-22.9 17.4 31.8 27.3 68.2 27.3 107 0 82.3-44.6 154.1-110.9 192.7z\"]\n};\nvar faWpbeginner = {\n prefix: 'fab',\n iconName: 'wpbeginner',\n icon: [512, 512, [], \"f297\", \"M462.799 322.374C519.01 386.682 466.961 480 370.944 480c-39.602 0-78.824-17.687-100.142-50.04-6.887.356-22.702.356-29.59 0C219.848 462.381 180.588 480 141.069 480c-95.49 0-148.348-92.996-91.855-157.626C-29.925 190.523 80.479 32 256.006 32c175.632 0 285.87 158.626 206.793 290.374zm-339.647-82.972h41.529v-58.075h-41.529v58.075zm217.18 86.072v-23.839c-60.506 20.915-132.355 9.198-187.589-33.971l.246 24.897c51.101 46.367 131.746 57.875 187.343 32.913zm-150.753-86.072h166.058v-58.075H189.579v58.075z\"]\n};\nvar faWpexplorer = {\n prefix: 'fab',\n iconName: 'wpexplorer',\n icon: [512, 512, [], \"f2de\", \"M512 256c0 141.2-114.7 256-256 256C114.8 512 0 397.3 0 256S114.7 0 256 0s256 114.7 256 256zm-32 0c0-123.2-100.3-224-224-224C132.5 32 32 132.5 32 256s100.5 224 224 224 224-100.5 224-224zM160.9 124.6l86.9 37.1-37.1 86.9-86.9-37.1 37.1-86.9zm110 169.1l46.6 94h-14.6l-50-100-48.9 100h-14l51.1-106.9-22.3-9.4 6-14 68.6 29.1-6 14.3-16.5-7.1zm-11.8-116.3l68.6 29.4-29.4 68.3L230 246l29.1-68.6zm80.3 42.9l54.6 23.1-23.4 54.3-54.3-23.1 23.1-54.3z\"]\n};\nvar faWpforms = {\n prefix: 'fab',\n iconName: 'wpforms',\n icon: [448, 512, [], \"f298\", \"M448 75.2v361.7c0 24.3-19 43.2-43.2 43.2H43.2C19.3 480 0 461.4 0 436.8V75.2C0 51.1 18.8 32 43.2 32h361.7c24 0 43.1 18.8 43.1 43.2zm-37.3 361.6V75.2c0-3-2.6-5.8-5.8-5.8h-9.3L285.3 144 224 94.1 162.8 144 52.5 69.3h-9.3c-3.2 0-5.8 2.8-5.8 5.8v361.7c0 3 2.6 5.8 5.8 5.8h361.7c3.2.1 5.8-2.7 5.8-5.8zM150.2 186v37H76.7v-37h73.5zm0 74.4v37.3H76.7v-37.3h73.5zm11.1-147.3l54-43.7H96.8l64.5 43.7zm210 72.9v37h-196v-37h196zm0 74.4v37.3h-196v-37.3h196zm-84.6-147.3l64.5-43.7H232.8l53.9 43.7zM371.3 335v37.3h-99.4V335h99.4z\"]\n};\nvar faWpressr = {\n prefix: 'fab',\n iconName: 'wpressr',\n icon: [496, 512, [], \"f3e4\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm171.33 158.6c-15.18 34.51-30.37 69.02-45.63 103.5-2.44 5.51-6.89 8.24-12.97 8.24-23.02-.01-46.03.06-69.05-.05-5.12-.03-8.25 1.89-10.34 6.72-10.19 23.56-20.63 47-30.95 70.5-1.54 3.51-4.06 5.29-7.92 5.29-45.94-.01-91.87-.02-137.81 0-3.13 0-5.63-1.15-7.72-3.45-11.21-12.33-22.46-24.63-33.68-36.94-2.69-2.95-2.79-6.18-1.21-9.73 8.66-19.54 17.27-39.1 25.89-58.66 12.93-29.35 25.89-58.69 38.75-88.08 1.7-3.88 4.28-5.68 8.54-5.65 14.24.1 28.48.02 42.72.05 6.24.01 9.2 4.84 6.66 10.59-13.6 30.77-27.17 61.55-40.74 92.33-5.72 12.99-11.42 25.99-17.09 39-3.91 8.95 7.08 11.97 10.95 5.6.23-.37-1.42 4.18 30.01-67.69 1.36-3.1 3.41-4.4 6.77-4.39 15.21.08 30.43.02 45.64.04 5.56.01 7.91 3.64 5.66 8.75-8.33 18.96-16.71 37.9-24.98 56.89-4.98 11.43 8.08 12.49 11.28 5.33.04-.08 27.89-63.33 32.19-73.16 2.02-4.61 5.44-6.51 10.35-6.5 26.43.05 52.86 0 79.29.05 12.44.02 13.93-13.65 3.9-13.64-25.26.03-50.52.02-75.78.02-6.27 0-7.84-2.47-5.27-8.27 5.78-13.06 11.59-26.11 17.3-39.21 1.73-3.96 4.52-5.79 8.84-5.78 23.09.06 25.98.02 130.78.03 6.08-.01 8.03 2.79 5.62 8.27z\"]\n};\nvar faXbox = {\n prefix: 'fab',\n iconName: 'xbox',\n icon: [512, 512, [], \"f412\", \"M369.9 318.2c44.3 54.3 64.7 98.8 54.4 118.7-7.9 15.1-56.7 44.6-92.6 55.9-29.6 9.3-68.4 13.3-100.4 10.2-38.2-3.7-76.9-17.4-110.1-39C93.3 445.8 87 438.3 87 423.4c0-29.9 32.9-82.3 89.2-142.1 32-33.9 76.5-73.7 81.4-72.6 9.4 2.1 84.3 75.1 112.3 109.5zM188.6 143.8c-29.7-26.9-58.1-53.9-86.4-63.4-15.2-5.1-16.3-4.8-28.7 8.1-29.2 30.4-53.5 79.7-60.3 122.4-5.4 34.2-6.1 43.8-4.2 60.5 5.6 50.5 17.3 85.4 40.5 120.9 9.5 14.6 12.1 17.3 9.3 9.9-4.2-11-.3-37.5 9.5-64 14.3-39 53.9-112.9 120.3-194.4zm311.6 63.5C483.3 127.3 432.7 77 425.6 77c-7.3 0-24.2 6.5-36 13.9-23.3 14.5-41 31.4-64.3 52.8C367.7 197 427.5 283.1 448.2 346c6.8 20.7 9.7 41.1 7.4 52.3-1.7 8.5-1.7 8.5 1.4 4.6 6.1-7.7 19.9-31.3 25.4-43.5 7.4-16.2 15-40.2 18.6-58.7 4.3-22.5 3.9-70.8-.8-93.4zM141.3 43C189 40.5 251 77.5 255.6 78.4c.7.1 10.4-4.2 21.6-9.7 63.9-31.1 94-25.8 107.4-25.2-63.9-39.3-152.7-50-233.9-11.7-23.4 11.1-24 11.9-9.4 11.2z\"]\n};\nvar faXing = {\n prefix: 'fab',\n iconName: 'xing',\n icon: [384, 512, [], \"f168\", \"M162.7 210c-1.8 3.3-25.2 44.4-70.1 123.5-4.9 8.3-10.8 12.5-17.7 12.5H9.8c-7.7 0-12.1-7.5-8.5-14.4l69-121.3c.2 0 .2-.1 0-.3l-43.9-75.6c-4.3-7.8.3-14.1 8.5-14.1H100c7.3 0 13.3 4.1 18 12.2l44.7 77.5zM382.6 46.1l-144 253v.3L330.2 466c3.9 7.1.2 14.1-8.5 14.1h-65.2c-7.6 0-13.6-4-18-12.2l-92.4-168.5c3.3-5.8 51.5-90.8 144.8-255.2 4.6-8.1 10.4-12.2 17.5-12.2h65.7c8 0 12.3 6.7 8.5 14.1z\"]\n};\nvar faXingSquare = {\n prefix: 'fab',\n iconName: 'xing-square',\n icon: [448, 512, [], \"f169\", \"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM140.4 320.2H93.8c-5.5 0-8.7-5.3-6-10.3l49.3-86.7c.1 0 .1-.1 0-.2l-31.4-54c-3-5.6.2-10.1 6-10.1h46.6c5.2 0 9.5 2.9 12.9 8.7l31.9 55.3c-1.3 2.3-18 31.7-50.1 88.2-3.5 6.2-7.7 9.1-12.6 9.1zm219.7-214.1L257.3 286.8v.2l65.5 119c2.8 5.1.1 10.1-6 10.1h-46.6c-5.5 0-9.7-2.9-12.9-8.7l-66-120.3c2.3-4.1 36.8-64.9 103.4-182.3 3.3-5.8 7.4-8.7 12.5-8.7h46.9c5.7-.1 8.8 4.7 6 10z\"]\n};\nvar faYCombinator = {\n prefix: 'fab',\n iconName: 'y-combinator',\n icon: [448, 512, [], \"f23b\", \"M448 32v448H0V32h448zM236 287.5L313.5 142h-32.7L235 233c-4.7 9.3-9 18.3-12.8 26.8L210 233l-45.2-91h-35l76.7 143.8v94.5H236v-92.8z\"]\n};\nvar faYahoo = {\n prefix: 'fab',\n iconName: 'yahoo',\n icon: [512, 512, [], \"f19e\", \"M223.69,141.06,167,284.23,111,141.06H14.93L120.76,390.19,82.19,480h94.17L317.27,141.06Zm105.4,135.79a58.22,58.22,0,1,0,58.22,58.22A58.22,58.22,0,0,0,329.09,276.85ZM394.65,32l-93,223.47H406.44L499.07,32Z\"]\n};\nvar faYammer = {\n prefix: 'fab',\n iconName: 'yammer',\n icon: [512, 512, [], \"f840\", \"M421.78 152.17A23.06 23.06 0 0 0 400.9 112c-.83.43-1.71.9-2.63 1.4-15.25 8.4-118.33 80.62-106.69 88.77s82.04-23.61 130.2-50zm0 217.17c-48.16-26.38-118.64-58.1-130.2-50s91.42 80.35 106.69 88.74c.92.51 1.8 1 2.63 1.41a23.07 23.07 0 0 0 20.88-40.15zM464.21 237c-.95 0-1.95-.06-3-.06-17.4 0-142.52 13.76-136.24 26.51s83.3 18.74 138.21 18.76a23 23 0 0 0 1-45.21zM31 96.65a24.88 24.88 0 0 1 46.14-18.4l81 205.06h1.21l77-203.53a23.52 23.52 0 0 1 44.45 15.27L171.2 368.44C152.65 415.66 134.08 448 77.91 448a139.67 139.67 0 0 1-23.81-1.95 21.31 21.31 0 0 1 6.9-41.77c.66.06 10.91.66 13.86.66 30.47 0 43.74-18.94 58.07-59.41z\"]\n};\nvar faYandex = {\n prefix: 'fab',\n iconName: 'yandex',\n icon: [256, 512, [], \"f413\", \"M153.1 315.8L65.7 512H2l96-209.8c-45.1-22.9-75.2-64.4-75.2-141.1C22.7 53.7 90.8 0 171.7 0H254v512h-55.1V315.8h-45.8zm45.8-269.3h-29.4c-44.4 0-87.4 29.4-87.4 114.6 0 82.3 39.4 108.8 87.4 108.8h29.4V46.5z\"]\n};\nvar faYandexInternational = {\n prefix: 'fab',\n iconName: 'yandex-international',\n icon: [320, 512, [], \"f414\", \"M129.5 512V345.9L18.5 48h55.8l81.8 229.7L250.2 0h51.3L180.8 347.8V512h-51.3z\"]\n};\nvar faYarn = {\n prefix: 'fab',\n iconName: 'yarn',\n icon: [496, 512, [], \"f7e3\", \"M393.9 345.2c-39 9.3-48.4 32.1-104 47.4 0 0-2.7 4-10.4 5.8-13.4 3.3-63.9 6-68.5 6.1-12.4.1-19.9-3.2-22-8.2-6.4-15.3 9.2-22 9.2-22-8.1-5-9-9.9-9.8-8.1-2.4 5.8-3.6 20.1-10.1 26.5-8.8 8.9-25.5 5.9-35.3.8-10.8-5.7.8-19.2.8-19.2s-5.8 3.4-10.5-3.6c-6-9.3-17.1-37.3 11.5-62-1.3-10.1-4.6-53.7 40.6-85.6 0 0-20.6-22.8-12.9-43.3 5-13.4 7-13.3 8.6-13.9 5.7-2.2 11.3-4.6 15.4-9.1 20.6-22.2 46.8-18 46.8-18s12.4-37.8 23.9-30.4c3.5 2.3 16.3 30.6 16.3 30.6s13.6-7.9 15.1-5c8.2 16 9.2 46.5 5.6 65.1-6.1 30.6-21.4 47.1-27.6 57.5-1.4 2.4 16.5 10 27.8 41.3 10.4 28.6 1.1 52.7 2.8 55.3.8 1.4 13.7.8 36.4-13.2 12.8-7.9 28.1-16.9 45.4-17 16.7-.5 17.6 19.2 4.9 22.2zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-79.3 75.2c-1.7-13.6-13.2-23-28-22.8-22 .3-40.5 11.7-52.8 19.2-4.8 3-8.9 5.2-12.4 6.8 3.1-44.5-22.5-73.1-28.7-79.4 7.8-11.3 18.4-27.8 23.4-53.2 4.3-21.7 3-55.5-6.9-74.5-1.6-3.1-7.4-11.2-21-7.4-9.7-20-13-22.1-15.6-23.8-1.1-.7-23.6-16.4-41.4 28-12.2.9-31.3 5.3-47.5 22.8-2 2.2-5.9 3.8-10.1 5.4h.1c-8.4 3-12.3 9.9-16.9 22.3-6.5 17.4.2 34.6 6.8 45.7-17.8 15.9-37 39.8-35.7 82.5-34 36-11.8 73-5.6 79.6-1.6 11.1 3.7 19.4 12 23.8 12.6 6.7 30.3 9.6 43.9 2.8 4.9 5.2 13.8 10.1 30 10.1 6.8 0 58-2.9 72.6-6.5 6.8-1.6 11.5-4.5 14.6-7.1 9.8-3.1 36.8-12.3 62.2-28.7 18-11.7 24.2-14.2 37.6-17.4 12.9-3.2 21-15.1 19.4-28.2z\"]\n};\nvar faYelp = {\n prefix: 'fab',\n iconName: 'yelp',\n icon: [384, 512, [], \"f1e9\", \"M42.9 240.32l99.62 48.61c19.2 9.4 16.2 37.51-4.5 42.71L30.5 358.45a22.79 22.79 0 0 1-28.21-19.6 197.16 197.16 0 0 1 9-85.32 22.8 22.8 0 0 1 31.61-13.21zm44 239.25a199.45 199.45 0 0 0 79.42 32.11A22.78 22.78 0 0 0 192.94 490l3.9-110.82c.7-21.3-25.5-31.91-39.81-16.1l-74.21 82.4a22.82 22.82 0 0 0 4.09 34.09zm145.34-109.92l58.81 94a22.93 22.93 0 0 0 34 5.5 198.36 198.36 0 0 0 52.71-67.61A23 23 0 0 0 364.17 370l-105.42-34.26c-20.31-6.5-37.81 15.8-26.51 33.91zm148.33-132.23a197.44 197.44 0 0 0-50.41-69.31 22.85 22.85 0 0 0-34 4.4l-62 91.92c-11.9 17.7 4.7 40.61 25.2 34.71L366 268.63a23 23 0 0 0 14.61-31.21zM62.11 30.18a22.86 22.86 0 0 0-9.9 32l104.12 180.44c11.7 20.2 42.61 11.9 42.61-11.4V22.88a22.67 22.67 0 0 0-24.5-22.8 320.37 320.37 0 0 0-112.33 30.1z\"]\n};\nvar faYoast = {\n prefix: 'fab',\n iconName: 'yoast',\n icon: [448, 512, [], \"f2b1\", \"M91.3 76h186l-7 18.9h-179c-39.7 0-71.9 31.6-71.9 70.3v205.4c0 35.4 24.9 70.3 84 70.3V460H91.3C41.2 460 0 419.8 0 370.5V165.2C0 115.9 40.7 76 91.3 76zm229.1-56h66.5C243.1 398.1 241.2 418.9 202.2 459.3c-20.8 21.6-49.3 31.7-78.3 32.7v-51.1c49.2-7.7 64.6-49.9 64.6-75.3 0-20.1.6-12.6-82.1-223.2h61.4L218.2 299 320.4 20zM448 161.5V460H234c6.6-9.6 10.7-16.3 12.1-19.4h182.5V161.5c0-32.5-17.1-51.9-48.2-62.9l6.7-17.6c41.7 13.6 60.9 43.1 60.9 80.5z\"]\n};\nvar faYoutube = {\n prefix: 'fab',\n iconName: 'youtube',\n icon: [576, 512, [], \"f167\", \"M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z\"]\n};\nvar faYoutubeSquare = {\n prefix: 'fab',\n iconName: 'youtube-square',\n icon: [448, 512, [], \"f431\", \"M186.8 202.1l95.2 54.1-95.2 54.1V202.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-42 176.3s0-59.6-7.6-88.2c-4.2-15.8-16.5-28.2-32.2-32.4C337.9 128 224 128 224 128s-113.9 0-142.2 7.7c-15.7 4.2-28 16.6-32.2 32.4-7.6 28.5-7.6 88.2-7.6 88.2s0 59.6 7.6 88.2c4.2 15.8 16.5 27.7 32.2 31.9C110.1 384 224 384 224 384s113.9 0 142.2-7.7c15.7-4.2 28-16.1 32.2-31.9 7.6-28.5 7.6-88.1 7.6-88.1z\"]\n};\nvar faZhihu = {\n prefix: 'fab',\n iconName: 'zhihu',\n icon: [640, 512, [], \"f63f\", \"M170.54 148.13v217.54l23.43.01 7.71 26.37 42.01-26.37h49.53V148.13H170.54zm97.75 193.93h-27.94l-27.9 17.51-5.08-17.47-11.9-.04V171.75h72.82v170.31zm-118.46-94.39H97.5c1.74-27.1 2.2-51.59 2.2-73.46h51.16s1.97-22.56-8.58-22.31h-88.5c3.49-13.12 7.87-26.66 13.12-40.67 0 0-24.07 0-32.27 21.57-3.39 8.9-13.21 43.14-30.7 78.12 5.89-.64 25.37-1.18 36.84-22.21 2.11-5.89 2.51-6.66 5.14-14.53h28.87c0 10.5-1.2 66.88-1.68 73.44H20.83c-11.74 0-15.56 23.62-15.56 23.62h65.58C66.45 321.1 42.83 363.12 0 396.34c20.49 5.85 40.91-.93 51-9.9 0 0 22.98-20.9 35.59-69.25l53.96 64.94s7.91-26.89-1.24-39.99c-7.58-8.92-28.06-33.06-36.79-41.81L87.9 311.95c4.36-13.98 6.99-27.55 7.87-40.67h61.65s-.09-23.62-7.59-23.62v.01zm412.02-1.6c20.83-25.64 44.98-58.57 44.98-58.57s-18.65-14.8-27.38-4.06c-6 8.15-36.83 48.2-36.83 48.2l19.23 14.43zm-150.09-59.09c-9.01-8.25-25.91 2.13-25.91 2.13s39.52 55.04 41.12 57.45l19.46-13.73s-25.67-37.61-34.66-45.86h-.01zM640 258.35c-19.78 0-130.91.93-131.06.93v-101c4.81 0 12.42-.4 22.85-1.2 40.88-2.41 70.13-4 87.77-4.81 0 0 12.22-27.19-.59-33.44-3.07-1.18-23.17 4.58-23.17 4.58s-165.22 16.49-232.36 18.05c1.6 8.82 7.62 17.08 15.78 19.55 13.31 3.48 22.69 1.7 49.15.89 24.83-1.6 43.68-2.43 56.51-2.43v99.81H351.41s2.82 22.31 25.51 22.85h107.94v70.92c0 13.97-11.19 21.99-24.48 21.12-14.08.11-26.08-1.15-41.69-1.81 1.99 3.97 6.33 14.39 19.31 21.84 9.88 4.81 16.17 6.57 26.02 6.57 29.56 0 45.67-17.28 44.89-45.31v-73.32h122.36c9.68 0 8.7-23.78 8.7-23.78l.03-.01z\"]\n};\nvar _iconsCache = {\n fa500px: fa500px,\n faAccessibleIcon: faAccessibleIcon,\n faAccusoft: faAccusoft,\n faAcquisitionsIncorporated: faAcquisitionsIncorporated,\n faAdn: faAdn,\n faAdversal: faAdversal,\n faAffiliatetheme: faAffiliatetheme,\n faAirbnb: faAirbnb,\n faAlgolia: faAlgolia,\n faAlipay: faAlipay,\n faAmazon: faAmazon,\n faAmazonPay: faAmazonPay,\n faAmilia: faAmilia,\n faAndroid: faAndroid,\n faAngellist: faAngellist,\n faAngrycreative: faAngrycreative,\n faAngular: faAngular,\n faAppStore: faAppStore,\n faAppStoreIos: faAppStoreIos,\n faApper: faApper,\n faApple: faApple,\n faApplePay: faApplePay,\n faArtstation: faArtstation,\n faAsymmetrik: faAsymmetrik,\n faAtlassian: faAtlassian,\n faAudible: faAudible,\n faAutoprefixer: faAutoprefixer,\n faAvianex: faAvianex,\n faAviato: faAviato,\n faAws: faAws,\n faBandcamp: faBandcamp,\n faBattleNet: faBattleNet,\n faBehance: faBehance,\n faBehanceSquare: faBehanceSquare,\n faBimobject: faBimobject,\n faBitbucket: faBitbucket,\n faBitcoin: faBitcoin,\n faBity: faBity,\n faBlackTie: faBlackTie,\n faBlackberry: faBlackberry,\n faBlogger: faBlogger,\n faBloggerB: faBloggerB,\n faBluetooth: faBluetooth,\n faBluetoothB: faBluetoothB,\n faBootstrap: faBootstrap,\n faBtc: faBtc,\n faBuffer: faBuffer,\n faBuromobelexperte: faBuromobelexperte,\n faBuyNLarge: faBuyNLarge,\n faBuysellads: faBuysellads,\n faCanadianMapleLeaf: faCanadianMapleLeaf,\n faCcAmazonPay: faCcAmazonPay,\n faCcAmex: faCcAmex,\n faCcApplePay: faCcApplePay,\n faCcDinersClub: faCcDinersClub,\n faCcDiscover: faCcDiscover,\n faCcJcb: faCcJcb,\n faCcMastercard: faCcMastercard,\n faCcPaypal: faCcPaypal,\n faCcStripe: faCcStripe,\n faCcVisa: faCcVisa,\n faCentercode: faCentercode,\n faCentos: faCentos,\n faChrome: faChrome,\n faChromecast: faChromecast,\n faCloudflare: faCloudflare,\n faCloudscale: faCloudscale,\n faCloudsmith: faCloudsmith,\n faCloudversify: faCloudversify,\n faCodepen: faCodepen,\n faCodiepie: faCodiepie,\n faConfluence: faConfluence,\n faConnectdevelop: faConnectdevelop,\n faContao: faContao,\n faCottonBureau: faCottonBureau,\n faCpanel: faCpanel,\n faCreativeCommons: faCreativeCommons,\n faCreativeCommonsBy: faCreativeCommonsBy,\n faCreativeCommonsNc: faCreativeCommonsNc,\n faCreativeCommonsNcEu: faCreativeCommonsNcEu,\n faCreativeCommonsNcJp: faCreativeCommonsNcJp,\n faCreativeCommonsNd: faCreativeCommonsNd,\n faCreativeCommonsPd: faCreativeCommonsPd,\n faCreativeCommonsPdAlt: faCreativeCommonsPdAlt,\n faCreativeCommonsRemix: faCreativeCommonsRemix,\n faCreativeCommonsSa: faCreativeCommonsSa,\n faCreativeCommonsSampling: faCreativeCommonsSampling,\n faCreativeCommonsSamplingPlus: faCreativeCommonsSamplingPlus,\n faCreativeCommonsShare: faCreativeCommonsShare,\n faCreativeCommonsZero: faCreativeCommonsZero,\n faCriticalRole: faCriticalRole,\n faCss3: faCss3,\n faCss3Alt: faCss3Alt,\n faCuttlefish: faCuttlefish,\n faDAndD: faDAndD,\n faDAndDBeyond: faDAndDBeyond,\n faDailymotion: faDailymotion,\n faDashcube: faDashcube,\n faDeezer: faDeezer,\n faDelicious: faDelicious,\n faDeploydog: faDeploydog,\n faDeskpro: faDeskpro,\n faDev: faDev,\n faDeviantart: faDeviantart,\n faDhl: faDhl,\n faDiaspora: faDiaspora,\n faDigg: faDigg,\n faDigitalOcean: faDigitalOcean,\n faDiscord: faDiscord,\n faDiscourse: faDiscourse,\n faDochub: faDochub,\n faDocker: faDocker,\n faDraft2digital: faDraft2digital,\n faDribbble: faDribbble,\n faDribbbleSquare: faDribbbleSquare,\n faDropbox: faDropbox,\n faDrupal: faDrupal,\n faDyalog: faDyalog,\n faEarlybirds: faEarlybirds,\n faEbay: faEbay,\n faEdge: faEdge,\n faEdgeLegacy: faEdgeLegacy,\n faElementor: faElementor,\n faEllo: faEllo,\n faEmber: faEmber,\n faEmpire: faEmpire,\n faEnvira: faEnvira,\n faErlang: faErlang,\n faEthereum: faEthereum,\n faEtsy: faEtsy,\n faEvernote: faEvernote,\n faExpeditedssl: faExpeditedssl,\n faFacebook: faFacebook,\n faFacebookF: faFacebookF,\n faFacebookMessenger: faFacebookMessenger,\n faFacebookSquare: faFacebookSquare,\n faFantasyFlightGames: faFantasyFlightGames,\n faFedex: faFedex,\n faFedora: faFedora,\n faFigma: faFigma,\n faFirefox: faFirefox,\n faFirefoxBrowser: faFirefoxBrowser,\n faFirstOrder: faFirstOrder,\n faFirstOrderAlt: faFirstOrderAlt,\n faFirstdraft: faFirstdraft,\n faFlickr: faFlickr,\n faFlipboard: faFlipboard,\n faFly: faFly,\n faFontAwesome: faFontAwesome,\n faFontAwesomeAlt: faFontAwesomeAlt,\n faFontAwesomeFlag: faFontAwesomeFlag,\n faFontAwesomeLogoFull: faFontAwesomeLogoFull,\n faFonticons: faFonticons,\n faFonticonsFi: faFonticonsFi,\n faFortAwesome: faFortAwesome,\n faFortAwesomeAlt: faFortAwesomeAlt,\n faForumbee: faForumbee,\n faFoursquare: faFoursquare,\n faFreeCodeCamp: faFreeCodeCamp,\n faFreebsd: faFreebsd,\n faFulcrum: faFulcrum,\n faGalacticRepublic: faGalacticRepublic,\n faGalacticSenate: faGalacticSenate,\n faGetPocket: faGetPocket,\n faGg: faGg,\n faGgCircle: faGgCircle,\n faGit: faGit,\n faGitAlt: faGitAlt,\n faGitSquare: faGitSquare,\n faGithub: faGithub,\n faGithubAlt: faGithubAlt,\n faGithubSquare: faGithubSquare,\n faGitkraken: faGitkraken,\n faGitlab: faGitlab,\n faGitter: faGitter,\n faGlide: faGlide,\n faGlideG: faGlideG,\n faGofore: faGofore,\n faGoodreads: faGoodreads,\n faGoodreadsG: faGoodreadsG,\n faGoogle: faGoogle,\n faGoogleDrive: faGoogleDrive,\n faGooglePay: faGooglePay,\n faGooglePlay: faGooglePlay,\n faGooglePlus: faGooglePlus,\n faGooglePlusG: faGooglePlusG,\n faGooglePlusSquare: faGooglePlusSquare,\n faGoogleWallet: faGoogleWallet,\n faGratipay: faGratipay,\n faGrav: faGrav,\n faGripfire: faGripfire,\n faGrunt: faGrunt,\n faGuilded: faGuilded,\n faGulp: faGulp,\n faHackerNews: faHackerNews,\n faHackerNewsSquare: faHackerNewsSquare,\n faHackerrank: faHackerrank,\n faHips: faHips,\n faHireAHelper: faHireAHelper,\n faHive: faHive,\n faHooli: faHooli,\n faHornbill: faHornbill,\n faHotjar: faHotjar,\n faHouzz: faHouzz,\n faHtml5: faHtml5,\n faHubspot: faHubspot,\n faIdeal: faIdeal,\n faImdb: faImdb,\n faInnosoft: faInnosoft,\n faInstagram: faInstagram,\n faInstagramSquare: faInstagramSquare,\n faInstalod: faInstalod,\n faIntercom: faIntercom,\n faInternetExplorer: faInternetExplorer,\n faInvision: faInvision,\n faIoxhost: faIoxhost,\n faItchIo: faItchIo,\n faItunes: faItunes,\n faItunesNote: faItunesNote,\n faJava: faJava,\n faJediOrder: faJediOrder,\n faJenkins: faJenkins,\n faJira: faJira,\n faJoget: faJoget,\n faJoomla: faJoomla,\n faJs: faJs,\n faJsSquare: faJsSquare,\n faJsfiddle: faJsfiddle,\n faKaggle: faKaggle,\n faKeybase: faKeybase,\n faKeycdn: faKeycdn,\n faKickstarter: faKickstarter,\n faKickstarterK: faKickstarterK,\n faKorvue: faKorvue,\n faLaravel: faLaravel,\n faLastfm: faLastfm,\n faLastfmSquare: faLastfmSquare,\n faLeanpub: faLeanpub,\n faLess: faLess,\n faLine: faLine,\n faLinkedin: faLinkedin,\n faLinkedinIn: faLinkedinIn,\n faLinode: faLinode,\n faLinux: faLinux,\n faLyft: faLyft,\n faMagento: faMagento,\n faMailchimp: faMailchimp,\n faMandalorian: faMandalorian,\n faMarkdown: faMarkdown,\n faMastodon: faMastodon,\n faMaxcdn: faMaxcdn,\n faMdb: faMdb,\n faMedapps: faMedapps,\n faMedium: faMedium,\n faMediumM: faMediumM,\n faMedrt: faMedrt,\n faMeetup: faMeetup,\n faMegaport: faMegaport,\n faMendeley: faMendeley,\n faMicroblog: faMicroblog,\n faMicrosoft: faMicrosoft,\n faMix: faMix,\n faMixcloud: faMixcloud,\n faMixer: faMixer,\n faMizuni: faMizuni,\n faModx: faModx,\n faMonero: faMonero,\n faNapster: faNapster,\n faNeos: faNeos,\n faNimblr: faNimblr,\n faNode: faNode,\n faNodeJs: faNodeJs,\n faNpm: faNpm,\n faNs8: faNs8,\n faNutritionix: faNutritionix,\n faOctopusDeploy: faOctopusDeploy,\n faOdnoklassniki: faOdnoklassniki,\n faOdnoklassnikiSquare: faOdnoklassnikiSquare,\n faOldRepublic: faOldRepublic,\n faOpencart: faOpencart,\n faOpenid: faOpenid,\n faOpera: faOpera,\n faOptinMonster: faOptinMonster,\n faOrcid: faOrcid,\n faOsi: faOsi,\n faPage4: faPage4,\n faPagelines: faPagelines,\n faPalfed: faPalfed,\n faPatreon: faPatreon,\n faPaypal: faPaypal,\n faPennyArcade: faPennyArcade,\n faPerbyte: faPerbyte,\n faPeriscope: faPeriscope,\n faPhabricator: faPhabricator,\n faPhoenixFramework: faPhoenixFramework,\n faPhoenixSquadron: faPhoenixSquadron,\n faPhp: faPhp,\n faPiedPiper: faPiedPiper,\n faPiedPiperAlt: faPiedPiperAlt,\n faPiedPiperHat: faPiedPiperHat,\n faPiedPiperPp: faPiedPiperPp,\n faPiedPiperSquare: faPiedPiperSquare,\n faPinterest: faPinterest,\n faPinterestP: faPinterestP,\n faPinterestSquare: faPinterestSquare,\n faPlaystation: faPlaystation,\n faProductHunt: faProductHunt,\n faPushed: faPushed,\n faPython: faPython,\n faQq: faQq,\n faQuinscape: faQuinscape,\n faQuora: faQuora,\n faRProject: faRProject,\n faRaspberryPi: faRaspberryPi,\n faRavelry: faRavelry,\n faReact: faReact,\n faReacteurope: faReacteurope,\n faReadme: faReadme,\n faRebel: faRebel,\n faRedRiver: faRedRiver,\n faReddit: faReddit,\n faRedditAlien: faRedditAlien,\n faRedditSquare: faRedditSquare,\n faRedhat: faRedhat,\n faRenren: faRenren,\n faReplyd: faReplyd,\n faResearchgate: faResearchgate,\n faResolving: faResolving,\n faRev: faRev,\n faRocketchat: faRocketchat,\n faRockrms: faRockrms,\n faRust: faRust,\n faSafari: faSafari,\n faSalesforce: faSalesforce,\n faSass: faSass,\n faSchlix: faSchlix,\n faScribd: faScribd,\n faSearchengin: faSearchengin,\n faSellcast: faSellcast,\n faSellsy: faSellsy,\n faServicestack: faServicestack,\n faShirtsinbulk: faShirtsinbulk,\n faShopify: faShopify,\n faShopware: faShopware,\n faSimplybuilt: faSimplybuilt,\n faSistrix: faSistrix,\n faSith: faSith,\n faSketch: faSketch,\n faSkyatlas: faSkyatlas,\n faSkype: faSkype,\n faSlack: faSlack,\n faSlackHash: faSlackHash,\n faSlideshare: faSlideshare,\n faSnapchat: faSnapchat,\n faSnapchatGhost: faSnapchatGhost,\n faSnapchatSquare: faSnapchatSquare,\n faSoundcloud: faSoundcloud,\n faSourcetree: faSourcetree,\n faSpeakap: faSpeakap,\n faSpeakerDeck: faSpeakerDeck,\n faSpotify: faSpotify,\n faSquarespace: faSquarespace,\n faStackExchange: faStackExchange,\n faStackOverflow: faStackOverflow,\n faStackpath: faStackpath,\n faStaylinked: faStaylinked,\n faSteam: faSteam,\n faSteamSquare: faSteamSquare,\n faSteamSymbol: faSteamSymbol,\n faStickerMule: faStickerMule,\n faStrava: faStrava,\n faStripe: faStripe,\n faStripeS: faStripeS,\n faStudiovinari: faStudiovinari,\n faStumbleupon: faStumbleupon,\n faStumbleuponCircle: faStumbleuponCircle,\n faSuperpowers: faSuperpowers,\n faSupple: faSupple,\n faSuse: faSuse,\n faSwift: faSwift,\n faSymfony: faSymfony,\n faTeamspeak: faTeamspeak,\n faTelegram: faTelegram,\n faTelegramPlane: faTelegramPlane,\n faTencentWeibo: faTencentWeibo,\n faTheRedYeti: faTheRedYeti,\n faThemeco: faThemeco,\n faThemeisle: faThemeisle,\n faThinkPeaks: faThinkPeaks,\n faTiktok: faTiktok,\n faTradeFederation: faTradeFederation,\n faTrello: faTrello,\n faTumblr: faTumblr,\n faTumblrSquare: faTumblrSquare,\n faTwitch: faTwitch,\n faTwitter: faTwitter,\n faTwitterSquare: faTwitterSquare,\n faTypo3: faTypo3,\n faUber: faUber,\n faUbuntu: faUbuntu,\n faUikit: faUikit,\n faUmbraco: faUmbraco,\n faUncharted: faUncharted,\n faUniregistry: faUniregistry,\n faUnity: faUnity,\n faUnsplash: faUnsplash,\n faUntappd: faUntappd,\n faUps: faUps,\n faUsb: faUsb,\n faUsps: faUsps,\n faUssunnah: faUssunnah,\n faVaadin: faVaadin,\n faViacoin: faViacoin,\n faViadeo: faViadeo,\n faViadeoSquare: faViadeoSquare,\n faViber: faViber,\n faVimeo: faVimeo,\n faVimeoSquare: faVimeoSquare,\n faVimeoV: faVimeoV,\n faVine: faVine,\n faVk: faVk,\n faVnv: faVnv,\n faVuejs: faVuejs,\n faWatchmanMonitoring: faWatchmanMonitoring,\n faWaze: faWaze,\n faWeebly: faWeebly,\n faWeibo: faWeibo,\n faWeixin: faWeixin,\n faWhatsapp: faWhatsapp,\n faWhatsappSquare: faWhatsappSquare,\n faWhmcs: faWhmcs,\n faWikipediaW: faWikipediaW,\n faWindows: faWindows,\n faWix: faWix,\n faWizardsOfTheCoast: faWizardsOfTheCoast,\n faWodu: faWodu,\n faWolfPackBattalion: faWolfPackBattalion,\n faWordpress: faWordpress,\n faWordpressSimple: faWordpressSimple,\n faWpbeginner: faWpbeginner,\n faWpexplorer: faWpexplorer,\n faWpforms: faWpforms,\n faWpressr: faWpressr,\n faXbox: faXbox,\n faXing: faXing,\n faXingSquare: faXingSquare,\n faYCombinator: faYCombinator,\n faYahoo: faYahoo,\n faYammer: faYammer,\n faYandex: faYandex,\n faYandexInternational: faYandexInternational,\n faYarn: faYarn,\n faYelp: faYelp,\n faYoast: faYoast,\n faYoutube: faYoutube,\n faYoutubeSquare: faYoutubeSquare,\n faZhihu: faZhihu\n};\n\nexport { _iconsCache as fab, prefix, fa500px, faAccessibleIcon, faAccusoft, faAcquisitionsIncorporated, faAdn, faAdversal, faAffiliatetheme, faAirbnb, faAlgolia, faAlipay, faAmazon, faAmazonPay, faAmilia, faAndroid, faAngellist, faAngrycreative, faAngular, faAppStore, faAppStoreIos, faApper, faApple, faApplePay, faArtstation, faAsymmetrik, faAtlassian, faAudible, faAutoprefixer, faAvianex, faAviato, faAws, faBandcamp, faBattleNet, faBehance, faBehanceSquare, faBimobject, faBitbucket, faBitcoin, faBity, faBlackTie, faBlackberry, faBlogger, faBloggerB, faBluetooth, faBluetoothB, faBootstrap, faBtc, faBuffer, faBuromobelexperte, faBuyNLarge, faBuysellads, faCanadianMapleLeaf, faCcAmazonPay, faCcAmex, faCcApplePay, faCcDinersClub, faCcDiscover, faCcJcb, faCcMastercard, faCcPaypal, faCcStripe, faCcVisa, faCentercode, faCentos, faChrome, faChromecast, faCloudflare, faCloudscale, faCloudsmith, faCloudversify, faCodepen, faCodiepie, faConfluence, faConnectdevelop, faContao, faCottonBureau, faCpanel, faCreativeCommons, faCreativeCommonsBy, faCreativeCommonsNc, faCreativeCommonsNcEu, faCreativeCommonsNcJp, faCreativeCommonsNd, faCreativeCommonsPd, faCreativeCommonsPdAlt, faCreativeCommonsRemix, faCreativeCommonsSa, faCreativeCommonsSampling, faCreativeCommonsSamplingPlus, faCreativeCommonsShare, faCreativeCommonsZero, faCriticalRole, faCss3, faCss3Alt, faCuttlefish, faDAndD, faDAndDBeyond, faDailymotion, faDashcube, faDeezer, faDelicious, faDeploydog, faDeskpro, faDev, faDeviantart, faDhl, faDiaspora, faDigg, faDigitalOcean, faDiscord, faDiscourse, faDochub, faDocker, faDraft2digital, faDribbble, faDribbbleSquare, faDropbox, faDrupal, faDyalog, faEarlybirds, faEbay, faEdge, faEdgeLegacy, faElementor, faEllo, faEmber, faEmpire, faEnvira, faErlang, faEthereum, faEtsy, faEvernote, faExpeditedssl, faFacebook, faFacebookF, faFacebookMessenger, faFacebookSquare, faFantasyFlightGames, faFedex, faFedora, faFigma, faFirefox, faFirefoxBrowser, faFirstOrder, faFirstOrderAlt, faFirstdraft, faFlickr, faFlipboard, faFly, faFontAwesome, faFontAwesomeAlt, faFontAwesomeFlag, faFontAwesomeLogoFull, faFonticons, faFonticonsFi, faFortAwesome, faFortAwesomeAlt, faForumbee, faFoursquare, faFreeCodeCamp, faFreebsd, faFulcrum, faGalacticRepublic, faGalacticSenate, faGetPocket, faGg, faGgCircle, faGit, faGitAlt, faGitSquare, faGithub, faGithubAlt, faGithubSquare, faGitkraken, faGitlab, faGitter, faGlide, faGlideG, faGofore, faGoodreads, faGoodreadsG, faGoogle, faGoogleDrive, faGooglePay, faGooglePlay, faGooglePlus, faGooglePlusG, faGooglePlusSquare, faGoogleWallet, faGratipay, faGrav, faGripfire, faGrunt, faGuilded, faGulp, faHackerNews, faHackerNewsSquare, faHackerrank, faHips, faHireAHelper, faHive, faHooli, faHornbill, faHotjar, faHouzz, faHtml5, faHubspot, faIdeal, faImdb, faInnosoft, faInstagram, faInstagramSquare, faInstalod, faIntercom, faInternetExplorer, faInvision, faIoxhost, faItchIo, faItunes, faItunesNote, faJava, faJediOrder, faJenkins, faJira, faJoget, faJoomla, faJs, faJsSquare, faJsfiddle, faKaggle, faKeybase, faKeycdn, faKickstarter, faKickstarterK, faKorvue, faLaravel, faLastfm, faLastfmSquare, faLeanpub, faLess, faLine, faLinkedin, faLinkedinIn, faLinode, faLinux, faLyft, faMagento, faMailchimp, faMandalorian, faMarkdown, faMastodon, faMaxcdn, faMdb, faMedapps, faMedium, faMediumM, faMedrt, faMeetup, faMegaport, faMendeley, faMicroblog, faMicrosoft, faMix, faMixcloud, faMixer, faMizuni, faModx, faMonero, faNapster, faNeos, faNimblr, faNode, faNodeJs, faNpm, faNs8, faNutritionix, faOctopusDeploy, faOdnoklassniki, faOdnoklassnikiSquare, faOldRepublic, faOpencart, faOpenid, faOpera, faOptinMonster, faOrcid, faOsi, faPage4, faPagelines, faPalfed, faPatreon, faPaypal, faPennyArcade, faPerbyte, faPeriscope, faPhabricator, faPhoenixFramework, faPhoenixSquadron, faPhp, faPiedPiper, faPiedPiperAlt, faPiedPiperHat, faPiedPiperPp, faPiedPiperSquare, faPinterest, faPinterestP, faPinterestSquare, faPlaystation, faProductHunt, faPushed, faPython, faQq, faQuinscape, faQuora, faRProject, faRaspberryPi, faRavelry, faReact, faReacteurope, faReadme, faRebel, faRedRiver, faReddit, faRedditAlien, faRedditSquare, faRedhat, faRenren, faReplyd, faResearchgate, faResolving, faRev, faRocketchat, faRockrms, faRust, faSafari, faSalesforce, faSass, faSchlix, faScribd, faSearchengin, faSellcast, faSellsy, faServicestack, faShirtsinbulk, faShopify, faShopware, faSimplybuilt, faSistrix, faSith, faSketch, faSkyatlas, faSkype, faSlack, faSlackHash, faSlideshare, faSnapchat, faSnapchatGhost, faSnapchatSquare, faSoundcloud, faSourcetree, faSpeakap, faSpeakerDeck, faSpotify, faSquarespace, faStackExchange, faStackOverflow, faStackpath, faStaylinked, faSteam, faSteamSquare, faSteamSymbol, faStickerMule, faStrava, faStripe, faStripeS, faStudiovinari, faStumbleupon, faStumbleuponCircle, faSuperpowers, faSupple, faSuse, faSwift, faSymfony, faTeamspeak, faTelegram, faTelegramPlane, faTencentWeibo, faTheRedYeti, faThemeco, faThemeisle, faThinkPeaks, faTiktok, faTradeFederation, faTrello, faTumblr, faTumblrSquare, faTwitch, faTwitter, faTwitterSquare, faTypo3, faUber, faUbuntu, faUikit, faUmbraco, faUncharted, faUniregistry, faUnity, faUnsplash, faUntappd, faUps, faUsb, faUsps, faUssunnah, faVaadin, faViacoin, faViadeo, faViadeoSquare, faViber, faVimeo, faVimeoSquare, faVimeoV, faVine, faVk, faVnv, faVuejs, faWatchmanMonitoring, faWaze, faWeebly, faWeibo, faWeixin, faWhatsapp, faWhatsappSquare, faWhmcs, faWikipediaW, faWindows, faWix, faWizardsOfTheCoast, faWodu, faWolfPackBattalion, faWordpress, faWordpressSimple, faWpbeginner, faWpexplorer, faWpforms, faWpressr, faXbox, faXing, faXingSquare, faYCombinator, faYahoo, faYammer, faYandex, faYandexInternational, faYarn, faYelp, faYoast, faYoutube, faYoutubeSquare, faZhihu };\n","import * as React from 'react';\nimport { divProperties, getNativeProps } from '../../Utilities';\nimport { classNamesFunction } from '../../Utilities';\nimport type { ILabelProps, ILabelStyleProps, ILabelStyles } from './Label.types';\n\nconst getClassNames = classNamesFunction({\n // Label is used a lot by other components.\n // It's likely to see expected cases which pass different className to the Label.\n // Therefore setting a larger cache size.\n cacheSize: 100,\n});\n\nexport class LabelBase extends React.Component {\n public render(): JSX.Element {\n const { as: RootType = 'label', children, className, disabled, styles, required, theme } = this.props;\n const classNames = getClassNames(styles, {\n className,\n disabled,\n required,\n theme: theme!,\n });\n return (\n \n {children}\n \n );\n }\n}\n","import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport { LabelBase } from './Label.base';\nimport { getStyles } from './Label.styles';\nimport type { ILabelProps, ILabelStyleProps, ILabelStyles } from './Label.types';\n\nexport const Label: React.FunctionComponent = styled(\n LabelBase,\n getStyles,\n undefined,\n {\n scope: 'Label',\n },\n);\n","import { HighContrastSelector, FontWeights, getHighContrastNoAdjustStyle } from '../../Styling';\nimport type { ILabelStyleProps, ILabelStyles } from './Label.types';\n\nexport const getStyles = (props: ILabelStyleProps): ILabelStyles => {\n const { theme, className, disabled, required } = props;\n const { semanticColors } = theme;\n\n // Tokens\n const labelFontWeight = FontWeights.semibold;\n const labelColor = semanticColors.bodyText;\n const labelDisabledColor = semanticColors.disabledBodyText;\n const labelRequiredStarColor = semanticColors.errorText;\n\n return {\n root: [\n 'ms-Label',\n theme.fonts.medium,\n {\n fontWeight: labelFontWeight,\n color: labelColor,\n boxSizing: 'border-box',\n boxShadow: 'none',\n margin: 0,\n display: 'block',\n padding: '5px 0',\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n },\n disabled && {\n color: labelDisabledColor,\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n required && {\n selectors: {\n '::after': {\n content: `' *'`,\n color: labelRequiredStarColor,\n paddingRight: 12,\n },\n },\n },\n className,\n ],\n };\n};\n","import { getGlobalClassNames } from '../../../Styling';\nimport type { IStackItemComponent, IStackItemStyles, IStackItemStylesReturnType } from './StackItem.types';\n\nconst GlobalClassNames = {\n root: 'ms-StackItem',\n};\n\nconst alignMap: { [key: string]: string } = {\n start: 'flex-start',\n end: 'flex-end',\n};\n\nexport const StackItemStyles: IStackItemComponent['styles'] = (props, theme, tokens): IStackItemStylesReturnType => {\n const { grow, shrink, disableShrink, align, verticalFill, order, className, basis = 'auto' } = props;\n\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n return {\n root: [\n theme.fonts.medium,\n classNames.root,\n {\n flexBasis: basis,\n margin: tokens.margin,\n padding: tokens.padding,\n height: verticalFill ? '100%' : 'auto',\n width: 'auto',\n },\n grow && {\n flexGrow: grow === true ? 1 : grow,\n },\n (disableShrink || (!grow && !shrink)) && {\n flexShrink: 0,\n },\n shrink &&\n !disableShrink && {\n flexShrink: 1,\n },\n align && {\n alignSelf: alignMap[align] || align,\n },\n order && {\n order: order,\n },\n className,\n ],\n // TODO: this cast may be hiding some potential issues with styling and name\n // lookups and should be removed\n } as IStackItemStyles;\n};\n","/** @jsxRuntime classic */\n/** @jsx withSlots */\nimport * as React from 'react';\nimport { withSlots, createComponent, getSlots } from '@fluentui/foundation-legacy';\nimport { getNativeProps, htmlElementProperties } from '../../../Utilities';\nimport { StackItemStyles as styles } from './StackItem.styles';\nimport type { IStackItemComponent, IStackItemProps, IStackItemSlots } from './StackItem.types';\n\nconst StackItemView: IStackItemComponent['view'] = props => {\n const { children } = props;\n const nativeProps = getNativeProps>(props, htmlElementProperties);\n // eslint-disable-next-line eqeqeq\n if (children == null) {\n return null;\n }\n\n const Slots = getSlots(props, {\n root: 'div',\n });\n\n return {children};\n};\n\nexport const StackItem: React.FunctionComponent = createComponent(StackItemView, {\n displayName: 'StackItem',\n styles,\n});\n\nexport default StackItem;\n","import { extractStyleParts } from './extractStyleParts';\nimport { IStyle, IStyleBaseArray } from './IStyle';\nimport { IStyleOptions } from './IStyleOptions';\nimport { getStyleOptions } from './StyleOptionsState';\nimport { styleToClassName } from './styleToClassName';\n\n/**\n * Concatenation helper, which can merge class names together. Skips over falsey values.\n *\n * @public\n */\nexport function mergeStyles(...args: (IStyle | IStyleBaseArray | false | null | undefined)[]): string {\n return mergeCss(args, getStyleOptions());\n}\n\n/**\n * Concatenation helper, which can merge class names together. Skips over falsey values.\n * Accepts a set of options that will be used when calculating styles.\n *\n * @public\n */\nexport function mergeCss(\n args: (IStyle | IStyleBaseArray | false | null | undefined) | (IStyle | IStyleBaseArray | false | null | undefined)[],\n options?: IStyleOptions,\n): string {\n const styleArgs = args instanceof Array ? args : [args];\n const { classes, objects } = extractStyleParts(styleArgs);\n\n if (objects.length) {\n classes.push(styleToClassName(options || {}, objects));\n }\n\n return classes.join(' ');\n}\n","import { getWindow } from './dom/getWindow';\nimport { Stylesheet } from '@fluentui/merge-styles';\n\n// Initialize global window id.\nconst CURRENT_ID_PROPERTY = '__currentId__';\nconst DEFAULT_ID_STRING = 'id__';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nlet _global: any = getWindow() || {};\n\nif (_global[CURRENT_ID_PROPERTY] === undefined) {\n _global[CURRENT_ID_PROPERTY] = 0;\n}\n\nlet _initializedStylesheetResets = false;\n\n/**\n * Generates a unique id in the global scope (this spans across duplicate copies of the same library.)\n *\n * @public\n */\nexport function getId(prefix?: string): string {\n if (!_initializedStylesheetResets) {\n // Configure ids to reset on stylesheet resets.\n const stylesheet = Stylesheet.getInstance();\n\n if (stylesheet && stylesheet.onReset) {\n stylesheet.onReset(resetIds);\n }\n _initializedStylesheetResets = true;\n }\n\n let index = _global[CURRENT_ID_PROPERTY]++;\n\n return (prefix === undefined ? DEFAULT_ID_STRING : prefix) + index;\n}\n\n/**\n * Resets id counter to an (optional) number.\n *\n * @public\n */\nexport function resetIds(counter: number = 0): void {\n _global[CURRENT_ID_PROPERTY] = counter;\n}\n","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code\n };\n };\n return error;\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n var responseType = config.responseType;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(\n timeoutErrorMessage,\n config,\n config.transitional && config.transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n var valueFromConfig2Keys = ['url', 'method', 'data'];\n var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];\n var defaultToConfig2Keys = [\n 'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer',\n 'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',\n 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress',\n 'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent',\n 'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding'\n ];\n var directMergeKeys = ['validateStatus'];\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n }\n\n utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n }\n });\n\n utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);\n\n utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n utils.forEach(directMergeKeys, function merge(prop) {\n if (prop in config2) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n var axiosKeys = valueFromConfig2Keys\n .concat(mergeDeepPropertiesKeys)\n .concat(defaultToConfig2Keys)\n .concat(directMergeKeys);\n\n var otherKeys = Object\n .keys(config1)\n .concat(Object.keys(config2))\n .filter(function filterAxiosKeys(key) {\n return axiosKeys.indexOf(key) === -1;\n });\n\n utils.forEach(otherKeys, mergeDeepProperties);\n\n return config;\n};\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","import { getWindow } from './dom/getWindow';\n\n/**\n * Storing global state in local module variables has issues when more than one copy\n * if the module gets loaded on the page (due to a bundling error or simply by consuming\n * a prebundled script.)\n *\n * This file contains helpers to deal with the getting and setting local state, and allows\n * callers to get called back when it mutates.\n */\n\nconst GLOBAL_SETTINGS_PROP_NAME = '__globalSettings__';\nconst CALLBACK_STATE_PROP_NAME = '__callbacks__';\n\nlet _counter = 0;\n\n/**\n * Change description used for change callbacks in GlobalSettings.\n *\n * @public\n * {@docCategory IChangeDescription}\n */\nexport interface IChangeDescription {\n key: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n oldValue: any;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any;\n}\n\n/**\n * Change event callback.\n *\n * @public\n * {@docCategory IChangeEventCallback}\n */\nexport interface IChangeEventCallback {\n __id__?: string;\n (changeDescription?: IChangeDescription): void;\n}\n\n/**\n * Global settings helper, which stores settings in the global (window) namespace.\n * If window is not provided, it will store settings in module scope. Provides a\n * way to observe changes as well when their values change.\n *\n * @public\n * {@docCategory GlobalSettings}\n */\nexport class GlobalSettings {\n public static getValue(key: string, defaultValue?: T | (() => T)): T {\n const globalSettings = _getGlobalSettings();\n\n if (globalSettings[key] === undefined) {\n globalSettings[key] = typeof defaultValue === 'function' ? (defaultValue as Function)() : defaultValue;\n }\n\n return globalSettings[key];\n }\n\n public static setValue(key: string, value: T): T {\n const globalSettings = _getGlobalSettings();\n const callbacks = globalSettings[CALLBACK_STATE_PROP_NAME];\n let oldValue = globalSettings[key];\n\n if (value !== oldValue) {\n globalSettings[key] = value;\n\n let changeDescription = {\n oldValue,\n value,\n key,\n };\n\n for (let id in callbacks) {\n if (callbacks.hasOwnProperty(id)) {\n callbacks[id](changeDescription);\n }\n }\n }\n\n return value;\n }\n\n public static addChangeListener(cb: IChangeEventCallback): void {\n // Note: we use generated ids on the callbacks to create a map of the callbacks, which optimizes removal.\n // (It's faster to delete a key than it is to look up the index of an object and splice an array.)\n let id = cb.__id__;\n const callbacks = _getCallbacks();\n\n if (!id) {\n id = cb.__id__ = String(_counter++);\n }\n\n callbacks[id] = cb;\n }\n\n public static removeChangeListener(cb: IChangeEventCallback): void {\n const callbacks = _getCallbacks();\n delete callbacks[cb.__id__ as string];\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _getGlobalSettings(): { [key: string]: any } {\n const win = getWindow();\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const globalObj: { [key: string]: any } = win || {};\n\n if (!globalObj[GLOBAL_SETTINGS_PROP_NAME]) {\n globalObj[GLOBAL_SETTINGS_PROP_NAME] = {\n [CALLBACK_STATE_PROP_NAME]: {},\n };\n }\n\n return globalObj[GLOBAL_SETTINGS_PROP_NAME];\n}\n\nfunction _getCallbacks(): { [key: string]: () => void } {\n const globalSettings = _getGlobalSettings();\n return globalSettings[CALLBACK_STATE_PROP_NAME];\n}\n","import { FontSizes, FontWeights, LocalizedFontFamilies, LocalizedFontNames } from './FluentFonts';\nimport type { IFontWeight, IRawStyle } from '@fluentui/merge-styles';\nimport type { IFontStyles } from '../types/IFontStyles';\n\n// Fallback fonts, if specified system or web fonts are unavailable.\nconst FontFamilyFallbacks = `'Segoe UI', -apple-system, BlinkMacSystemFont, 'Roboto', 'Helvetica Neue', sans-serif`;\n\n// By default, we favor system fonts for the default.\n// All localized fonts use a web font and never use the system font.\nconst defaultFontFamily = `'Segoe UI', '${LocalizedFontNames.WestEuropean}'`;\n\n// Mapping of language prefix to to font family.\nconst LanguageToFontMap = {\n ar: LocalizedFontFamilies.Arabic,\n bg: LocalizedFontFamilies.Cyrillic,\n cs: LocalizedFontFamilies.EastEuropean,\n el: LocalizedFontFamilies.Greek,\n et: LocalizedFontFamilies.EastEuropean,\n he: LocalizedFontFamilies.Hebrew,\n hi: LocalizedFontFamilies.Hindi,\n hr: LocalizedFontFamilies.EastEuropean,\n hu: LocalizedFontFamilies.EastEuropean,\n ja: LocalizedFontFamilies.Japanese,\n kk: LocalizedFontFamilies.EastEuropean,\n ko: LocalizedFontFamilies.Korean,\n lt: LocalizedFontFamilies.EastEuropean,\n lv: LocalizedFontFamilies.EastEuropean,\n pl: LocalizedFontFamilies.EastEuropean,\n ru: LocalizedFontFamilies.Cyrillic,\n sk: LocalizedFontFamilies.EastEuropean,\n 'sr-latn': LocalizedFontFamilies.EastEuropean,\n th: LocalizedFontFamilies.Thai,\n tr: LocalizedFontFamilies.EastEuropean,\n uk: LocalizedFontFamilies.Cyrillic,\n vi: LocalizedFontFamilies.Vietnamese,\n 'zh-hans': LocalizedFontFamilies.ChineseSimplified,\n 'zh-hant': LocalizedFontFamilies.ChineseTraditional,\n hy: LocalizedFontFamilies.Armenian,\n ka: LocalizedFontFamilies.Georgian,\n};\n\nfunction _fontFamilyWithFallbacks(fontFamily: string): string {\n return `${fontFamily}, ${FontFamilyFallbacks}`;\n}\n\n/**\n * If there is a localized font for this language, return that.\n * Returns undefined if there is no localized font for that language.\n */\nfunction _getLocalizedFontFamily(language: string | null): string {\n for (const lang in LanguageToFontMap) {\n if (LanguageToFontMap.hasOwnProperty(lang) && language && lang.indexOf(language) === 0) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (LanguageToFontMap as any)[lang];\n }\n }\n\n return defaultFontFamily;\n}\n\nfunction _createFont(size: string, weight: IFontWeight, fontFamily: string): IRawStyle {\n return {\n fontFamily: fontFamily,\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontSize: size,\n fontWeight: weight,\n };\n}\n\nexport function createFontStyles(localeCode: string | null): IFontStyles {\n const localizedFont = _getLocalizedFontFamily(localeCode);\n const fontFamilyWithFallback = _fontFamilyWithFallbacks(localizedFont);\n\n const fontStyles = {\n tiny: _createFont(FontSizes.mini, FontWeights.regular, fontFamilyWithFallback),\n xSmall: _createFont(FontSizes.xSmall, FontWeights.regular, fontFamilyWithFallback),\n small: _createFont(FontSizes.small, FontWeights.regular, fontFamilyWithFallback),\n smallPlus: _createFont(FontSizes.smallPlus, FontWeights.regular, fontFamilyWithFallback),\n medium: _createFont(FontSizes.medium, FontWeights.regular, fontFamilyWithFallback),\n mediumPlus: _createFont(FontSizes.mediumPlus, FontWeights.regular, fontFamilyWithFallback),\n large: _createFont(FontSizes.large, FontWeights.regular, fontFamilyWithFallback),\n xLarge: _createFont(FontSizes.xLarge, FontWeights.semibold, fontFamilyWithFallback),\n xLargePlus: _createFont(FontSizes.xLargePlus, FontWeights.semibold, fontFamilyWithFallback),\n xxLarge: _createFont(FontSizes.xxLarge, FontWeights.semibold, fontFamilyWithFallback),\n xxLargePlus: _createFont(FontSizes.xxLargePlus, FontWeights.semibold, fontFamilyWithFallback),\n superLarge: _createFont(FontSizes.superLarge, FontWeights.semibold, fontFamilyWithFallback),\n mega: _createFont(FontSizes.mega, FontWeights.semibold, fontFamilyWithFallback),\n };\n\n return fontStyles;\n}\n","/**\n * Helper to find the index of an item within an array, using a callback to\n * determine the match.\n *\n * @public\n * @param array - Array to search.\n * @param cb - Callback which returns true on matches.\n * @param fromIndex - Optional index to start from (defaults to 0)\n */\nexport function findIndex(array: T[], cb: (item: T, index: number) => boolean, fromIndex: number = 0): number {\n let index = -1;\n\n for (let i = fromIndex; array && i < array.length; i++) {\n if (cb(array[i], i)) {\n index = i;\n break;\n }\n }\n\n return index;\n}\n\n/**\n * Helper to find the first item within an array that satisfies the callback.\n * @param array - Array to search\n * @param cb - Callback which returns true on matches\n */\nexport function find(array: T[], cb: (item: T, index: number) => boolean): T | undefined {\n let index = findIndex(array, cb);\n\n if (index < 0) {\n return undefined;\n }\n\n return array[index];\n}\n\n/**\n * Creates an array of a given size and helper method to populate.\n *\n * @public\n * @param size - Size of array.\n * @param getItem - Callback to populate given cell index.\n */\nexport function createArray(size: number, getItem: (index: number) => T): T[] {\n let array: T[] = [];\n\n for (let i = 0; i < size; i++) {\n array.push(getItem(i));\n }\n\n return array;\n}\n\n/**\n * Convert the given array to a matrix with columnCount number\n * of columns.\n *\n * @public\n * @param items - The array to convert\n * @param columnCount - The number of columns for the resulting matrix\n * @returns A matrix of items\n */\nexport function toMatrix(items: T[], columnCount: number): T[][] {\n return items.reduce((rows: T[][], currentValue: T, index: number) => {\n if (index % columnCount === 0) {\n rows.push([currentValue]);\n } else {\n rows[rows.length - 1].push(currentValue);\n }\n return rows;\n }, [] as T[][]);\n}\n\n/**\n * Given an array, it returns a new array that does not contain the item at the given index.\n * @param array - The array to operate on\n * @param index - The index of the element to remove\n */\nexport function removeIndex(array: T[], index: number): T[] {\n return array.filter((_: T, i: number) => index !== i);\n}\n\n/**\n * Given an array, this function returns a new array where the element at a given index has been replaced.\n * @param array - The array to operate on\n * @param newElement - The element that will be placed in the new array\n * @param index - The index of the element that should be replaced\n */\nexport function replaceElement(array: T[], newElement: T, index: number): T[] {\n const copy = array.slice();\n copy[index] = newElement;\n return copy;\n}\n\n/**\n * Given an array, this function returns a new array where an element has been inserted at the given index.\n * @param array - The array to operate on\n * @param index - The index where an element should be inserted\n * @param itemToAdd - The element to insert\n */\nexport function addElementAtIndex(array: T[], index: number, itemToAdd: T): T[] {\n const copy = array.slice();\n copy.splice(index, 0, itemToAdd);\n return copy;\n}\n\n/**\n * Given an array where each element is of type T or T[], flatten it into an array of T\n * @param array - The array where each element can optionally also be an array\n */\nexport function flatten(array: (T | T[])[]): T[] {\n let result: T[] = [];\n array.forEach((item: T | T[]): T[] => (result = result.concat(item)));\n return result;\n}\n\n/**\n * Returns a boolean indicating if the two given arrays are equal in length and values.\n *\n * @param array1 - First array to compare\n * @param array2 - Second array to compare\n * @returns True if the arrays are the same length and have the same values in the same positions, false otherwise.\n */\nexport function arraysEqual(array1: T[], array2: T[]): boolean {\n if (array1.length !== array2.length) {\n return false;\n }\n for (let i = 0; i < array1.length; i++) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n}\n","import * as React from 'react';\nimport { classNames, MS_ICON } from './Icon.styles';\nimport { css, getNativeProps, htmlElementProperties, memoizeFunction } from '../../Utilities';\nimport { getIcon } from '../../Styling';\nimport type { IFontIconProps } from './Icon.types';\nimport type { IIconRecord, IIconSubsetRecord } from '../../Styling';\n\nexport interface IIconContent {\n children?: string | JSX.Element;\n iconClassName?: string;\n fontFamily?: string;\n mergeImageProps?: boolean;\n}\n\nexport const getIconContent = memoizeFunction(\n (iconName?: string): IIconContent | null => {\n const { code, subset }: Pick & { subset: Partial } = getIcon(iconName) || {\n subset: {},\n code: undefined,\n };\n\n if (!code) {\n return null;\n }\n\n return {\n children: code,\n iconClassName: subset.className,\n fontFamily: subset.fontFace && subset.fontFace.fontFamily,\n mergeImageProps: subset.mergeImageProps,\n };\n },\n undefined,\n true /*ignoreNullOrUndefinedResult */,\n);\n\n/**\n * Fast icon component which only supports font glyphs (not images) and can't be targeted by customizations.\n * To style the icon, use `className` or reference `ms-Icon` in CSS.\n * {@docCategory Icon}\n */\nexport const FontIcon: React.FunctionComponent = props => {\n const { iconName, className, style = {} } = props;\n const iconContent = getIconContent(iconName) || {};\n const { iconClassName, children, fontFamily, mergeImageProps } = iconContent;\n\n const nativeProps = getNativeProps>(props, htmlElementProperties);\n const accessibleName = props['aria-label'] || props.title;\n const containerProps =\n props['aria-label'] || props['aria-labelledby'] || props.title\n ? {\n role: mergeImageProps ? undefined : 'img',\n }\n : {\n 'aria-hidden': true,\n };\n\n let finalChildren = children;\n\n if (mergeImageProps) {\n if (typeof children === 'object' && typeof children.props === 'object' && accessibleName) {\n finalChildren = React.cloneElement(children, { alt: accessibleName });\n }\n }\n\n return (\n \n {finalChildren}\n \n );\n};\n\n/**\n * Memoized helper for rendering a FontIcon.\n * @param iconName - The name of the icon to use from the icon font.\n * @param className - Class name for styling the icon.\n * @param ariaLabel - Label for the icon for the benefit of screen readers.\n * {@docCategory Icon}\n */\nexport const getFontIcon = memoizeFunction((iconName: string, className?: string, ariaLabel?: string) => {\n return FontIcon({ iconName, className, 'aria-label': ariaLabel });\n});\n","/**\n * Compares a to b and b to a.\n *\n * @public\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function shallowCompare(a: TA, b: TB): boolean {\n for (let propName in a) {\n if ((a as Object).hasOwnProperty(propName)) {\n if (!(b as Object).hasOwnProperty(propName) || (b as { [key: string]: unknown })[propName] !== a[propName]) {\n return false;\n }\n }\n }\n for (let propName in b) {\n if ((b as Object).hasOwnProperty(propName)) {\n if (!(a as Object).hasOwnProperty(propName)) {\n return false;\n }\n }\n }\n return true;\n}\n\n/**\n * Makes a resulting merge of a bunch of objects. Pass in the target object followed by 1 or more\n * objects as arguments and they will be merged sequentially into the target. Note that this will\n * shallow merge; it will not create new cloned values for target members.\n *\n * @public\n * @param target - Target object to merge following object arguments into.\n * @param args - One or more objects that will be mixed into the target in the order they are provided.\n * @returns Resulting merged target.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function assign(this: any, target: any, ...args: any[]): any {\n return filteredAssign.apply(this, [null, target].concat(args));\n}\n\n/**\n * Makes a resulting merge of a bunch of objects, but allows a filter function to be passed in to filter\n * the resulting merges. This allows for scenarios where you want to merge \"everything except that one thing\"\n * or \"properties that start with data-\". Note that this will shallow merge; it will not create new cloned\n * values for target members.\n *\n * @public\n * @param isAllowed - Callback to determine if the given propName is allowed in the result.\n * @param target - Target object to merge following object arguments into.\n * @param args - One or more objects that will be mixed into the target in the order they are provided.\n * @returns Resulting merged target.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function filteredAssign(isAllowed: (propName: string) => boolean, target: any, ...args: any[]): any {\n target = target || {};\n\n for (let sourceObject of args) {\n if (sourceObject) {\n for (let propName in sourceObject) {\n if (sourceObject.hasOwnProperty(propName) && (!isAllowed || isAllowed(propName))) {\n target[propName] = sourceObject[propName];\n }\n }\n }\n }\n\n return target;\n}\n\n/**\n * Takes an enum and iterates over each value of the enum (as a string), running the callback on each,\n * returning a mapped array.\n * @param theEnum - Enum to iterate over\n * @param callback - The first parameter the name of the entry, and the second parameter is the value\n * of that entry, which is the value you'd normally use when using the enum (usually a number).\n */\nexport function mapEnumByName(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n theEnum: any,\n callback: (name?: string, value?: string | number) => T | undefined,\n): (T | undefined)[] | undefined {\n // map to satisfy compiler since it doesn't realize we strip out undefineds in the .filter() call\n return Object.keys(theEnum)\n .map((p: string | number) => {\n // map on each property name as a string\n if (String(Number(p)) !== p) {\n // if the property is not just a number (because enums in TypeScript will map both ways)\n return callback(p as string, theEnum[p]);\n }\n return undefined;\n })\n .filter((v: T | undefined) => !!v); // only return elements with values\n}\n\n/**\n * Get all values in an object dictionary\n *\n * @param obj - The dictionary to get values for\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function values(obj: any): T[] {\n return Object.keys(obj).reduce((arr: T[], key: string): T[] => {\n arr.push(obj[key]);\n return arr;\n }, []);\n}\n\n/**\n * Tiny helper to do the minimal amount of work in duplicating an object but omitting some\n * props. This ends up faster than using object ...rest or reduce to filter.\n *\n * This behaves very much like filteredAssign, but does not merge many objects together,\n * uses an exclusion object map, and avoids spreads all for optimal performance.\n *\n * See perf test for background:\n * https://jsperf.com/omit-vs-rest-vs-reduce/1\n *\n * @param obj - The object to clone\n * @param exclusions - The array of keys to exclude\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function omit>(obj: TObj, exclusions: (keyof TObj)[]): TObj {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const result: Record = {};\n\n for (const key in obj) {\n if (exclusions.indexOf(key) === -1 && obj.hasOwnProperty(key)) {\n result[key] = obj[key];\n }\n }\n\n return result as TObj;\n}\n","import { EventGroup, getId } from '../../Utilities';\nimport { KeytipEvents } from '../../utilities/keytips/KeytipConstants';\nimport type { IKeytipProps } from '../../Keytip';\n\nexport interface IUniqueKeytip {\n uniqueID: string;\n keytip: IKeytipProps;\n}\n\n/**\n * This class is responsible for handling registering, updating, and unregistering of keytips\n */\nexport class KeytipManager {\n private static _instance: KeytipManager = new KeytipManager();\n\n public keytips: { [key: string]: IUniqueKeytip } = {};\n public persistedKeytips: { [key: string]: IUniqueKeytip } = {};\n public sequenceMapping: { [key: string]: IKeytipProps } = {};\n\n // This is (and should be) updated and kept in sync\n // with the inKeytipMode in KeytipLayer.\n public inKeytipMode = false;\n\n // Boolean that gets checked before entering keytip mode by the KeytipLayer\n // Used for an override in special cases (e.g. Disable entering keytip mode when a modal is shown)\n public shouldEnterKeytipMode = true;\n\n // Boolean to indicate whether to delay firing an event to update subscribers of\n // keytip data changed.\n public delayUpdatingKeytipChange = false;\n\n /**\n * Static function to get singleton KeytipManager instance\n *\n * @returns Singleton KeytipManager instance\n */\n public static getInstance(): KeytipManager {\n return this._instance;\n }\n\n /**\n * Initialization code to set set parameters to define\n * how the KeytipManager handles keytip data.\n *\n * @param delayUpdatingKeytipChange - T/F if we should delay notifiying keytip subscribers\n * of keytip changes\n */\n public init(delayUpdatingKeytipChange: boolean) {\n this.delayUpdatingKeytipChange = delayUpdatingKeytipChange;\n }\n\n /**\n * Registers a keytip\n *\n * @param keytipProps - Keytip to register\n * @param persisted - T/F if this keytip should be persisted, default is false\n * @returns Unique ID for this keytip\n */\n public register(keytipProps: IKeytipProps, persisted: boolean = false): string {\n let props: IKeytipProps = keytipProps;\n if (!persisted) {\n // Add the overflowSetSequence if necessary\n props = this.addParentOverflow(keytipProps);\n this.sequenceMapping[props.keySequences.toString()] = props;\n }\n // Create a unique keytip\n const uniqueKeytip: IUniqueKeytip = this._getUniqueKtp(props);\n // Add to dictionary\n persisted\n ? (this.persistedKeytips[uniqueKeytip.uniqueID] = uniqueKeytip)\n : (this.keytips[uniqueKeytip.uniqueID] = uniqueKeytip);\n\n // We only want to add something new if we are currently showing keytip mode\n if (this.inKeytipMode || !this.delayUpdatingKeytipChange) {\n const event = persisted ? KeytipEvents.PERSISTED_KEYTIP_ADDED : KeytipEvents.KEYTIP_ADDED;\n EventGroup.raise(this, event, {\n keytip: props,\n uniqueID: uniqueKeytip.uniqueID,\n });\n }\n\n return uniqueKeytip.uniqueID;\n }\n\n /**\n * Update a keytip\n *\n * @param keytipProps - Keytip to update\n * @param uniqueID - Unique ID of this keytip\n */\n public update(keytipProps: IKeytipProps, uniqueID: string): void {\n const newKeytipProps = this.addParentOverflow(keytipProps);\n const uniqueKeytip = this._getUniqueKtp(newKeytipProps, uniqueID);\n const oldKeyTip = this.keytips[uniqueID];\n if (oldKeyTip) {\n // Update everything except 'visible'\n uniqueKeytip.keytip.visible = oldKeyTip.keytip.visible;\n // Update keytip in this.keytips\n this.keytips[uniqueID] = uniqueKeytip;\n\n // Update the sequence to be up to date\n delete this.sequenceMapping[oldKeyTip.keytip.keySequences.toString()];\n this.sequenceMapping[uniqueKeytip.keytip.keySequences.toString()] = uniqueKeytip.keytip;\n\n // Raise event only if we are currently in keytip mode\n if (this.inKeytipMode || !this.delayUpdatingKeytipChange) {\n EventGroup.raise(this, KeytipEvents.KEYTIP_UPDATED, {\n keytip: uniqueKeytip.keytip,\n uniqueID: uniqueKeytip.uniqueID,\n });\n }\n }\n }\n\n /**\n * Unregisters a keytip\n *\n * @param keytipToRemove - IKeytipProps of the keytip to remove\n * @param uniqueID - Unique ID of this keytip\n * @param persisted - T/F if this keytip should be persisted, default is false\n */\n public unregister(keytipToRemove: IKeytipProps, uniqueID: string, persisted: boolean = false): void {\n persisted ? delete this.persistedKeytips[uniqueID] : delete this.keytips[uniqueID];\n !persisted && delete this.sequenceMapping[keytipToRemove.keySequences.toString()];\n\n const event = persisted ? KeytipEvents.PERSISTED_KEYTIP_REMOVED : KeytipEvents.KEYTIP_REMOVED;\n // Update keytips only if we're in keytip mode\n if (this.inKeytipMode || !this.delayUpdatingKeytipChange) {\n EventGroup.raise(this, event, {\n keytip: keytipToRemove,\n uniqueID: uniqueID,\n });\n }\n }\n\n /**\n * Manual call to enter keytip mode\n */\n public enterKeytipMode(): void {\n EventGroup.raise(this, KeytipEvents.ENTER_KEYTIP_MODE);\n }\n\n /**\n * Manual call to exit keytip mode\n */\n public exitKeytipMode(): void {\n EventGroup.raise(this, KeytipEvents.EXIT_KEYTIP_MODE);\n }\n\n /**\n * Gets all IKeytipProps from this.keytips\n *\n * @returns All keytips stored in the manager\n */\n public getKeytips(): IKeytipProps[] {\n return Object.keys(this.keytips).map(key => this.keytips[key].keytip);\n }\n\n /**\n * Adds the overflowSetSequence to the keytipProps if its parent keytip also has it\n *\n * @param keytipProps - Keytip props to add overflowSetSequence to if necessary\n * @returns - Modified keytip props, if needed to be modified\n */\n public addParentOverflow(keytipProps: IKeytipProps): IKeytipProps {\n const fullSequence = [...keytipProps.keySequences];\n fullSequence.pop();\n if (fullSequence.length !== 0) {\n const parentKeytip = this.sequenceMapping[fullSequence.toString()];\n if (parentKeytip && parentKeytip.overflowSetSequence) {\n return {\n ...keytipProps,\n overflowSetSequence: parentKeytip.overflowSetSequence,\n };\n }\n }\n return keytipProps;\n }\n\n /**\n * Public function to bind for overflow items that have a submenu\n */\n public menuExecute(overflowButtonSequences: string[], keytipSequences: string[]) {\n EventGroup.raise(this, KeytipEvents.PERSISTED_KEYTIP_EXECUTE, {\n overflowButtonSequences,\n keytipSequences,\n });\n }\n\n /**\n * Creates an IUniqueKeytip object\n *\n * @param keytipProps - IKeytipProps\n * @param uniqueID - Unique ID, will default to the next unique ID if not passed\n * @returns IUniqueKeytip object\n */\n private _getUniqueKtp(keytipProps: IKeytipProps, uniqueID: string = getId()): IUniqueKeytip {\n return { keytip: { ...keytipProps }, uniqueID };\n }\n}\n","import { warn } from './warn';\n/**\n * Warns when props are required if a condition is met.\n *\n * @public\n * @param componentName - The name of the component being used.\n * @param props - The props passed into the component.\n * @param requiredProps - The name of the props that are required when the condition is met.\n * @param conditionalPropName - The name of the prop that the condition is based on.\n * @param condition - Whether the condition is met.\n */\nexport function warnConditionallyRequiredProps

    (\n componentName: string,\n props: P,\n requiredProps: string[],\n conditionalPropName: string,\n condition: boolean,\n): void {\n if (condition === true && process.env.NODE_ENV !== 'production') {\n for (const requiredPropName of requiredProps) {\n if (!(requiredPropName in props)) {\n warn(`${componentName} property '${requiredPropName}' is required when '${conditionalPropName}' is used.'`);\n }\n }\n }\n}\n","import { warn } from './warn';\nimport type { ISettingsMap } from './warn';\n\n/**\n * Warns when a deprecated props are being used.\n *\n * @public\n * @param componentName - The name of the component being used.\n * @param props - The props passed into the component.\n * @param deprecationMap - The map of deprecations, where key is the prop name and the value is\n * either null or a replacement prop name.\n */\nexport function warnDeprecations

    (componentName: string, props: P, deprecationMap: ISettingsMap

    ): void {\n if (process.env.NODE_ENV !== 'production') {\n for (const propName in deprecationMap) {\n if (props && propName in props) {\n let deprecationMessage = `${componentName} property '${propName}' was used but has been deprecated.`;\n const replacementPropName = deprecationMap[propName];\n if (replacementPropName) {\n deprecationMessage += ` Use '${replacementPropName}' instead.`;\n }\n warn(deprecationMessage);\n }\n }\n }\n}\n","import * as React from 'react';\nimport { mergeCss } from '@fluentui/merge-styles';\nimport { IStyle, ITheme } from '@fluentui/style-utilities';\nimport { getRTL, memoizeFunction } from '@fluentui/utilities';\nimport { assign } from './utilities';\nimport { IFactoryOptions } from './IComponent';\nimport {\n ISlottableReactType,\n ISlot,\n ISlots,\n ISlotDefinition,\n ISlotFactory,\n ISlotProp,\n ISlottableProps,\n ISlotOptions,\n IDefaultSlotProps,\n IProcessedSlotProps,\n ValidProps,\n ValidShorthand,\n} from './ISlots';\n\n/**\n * This function is required for any module that uses slots.\n *\n * This function is a slot resolver that automatically evaluates slot functions to generate React elements.\n * A byproduct of this resolver is that it removes slots from the React hierarchy by bypassing React.createElement.\n *\n * To use this function on a per-file basis, use the jsx directive targeting withSlots.\n * This directive must be the FIRST LINE in the file to work correctly.\n * Usage of this pragma also requires withSlots import statement.\n *\n * See React.createElement\n */\n// Can't use typeof on React.createElement since it's overloaded. Approximate createElement's signature for now\n// and widen as needed.\nexport function withSlots

    (\n type: ISlot

    | React.FunctionComponent

    | string,\n props?: (React.Attributes & P) | null,\n ...children: React.ReactNode[]\n): ReturnType> {\n const slotType = type as ISlot

    ;\n if (slotType.isSlot) {\n // Since we are bypassing createElement, use React.Children.toArray to make sure children are\n // properly assigned keys.\n // TODO: should this be mutating? does React mutate children subprop with createElement?\n // TODO: will toArray clobber existing keys?\n // TODO: React generates warnings because it doesn't detect hidden member _store that is set in createElement.\n // Even children passed to createElement without keys don't generate this warning.\n // Is there a better way to prevent slots from appearing in hierarchy? toArray doesn't address root issue.\n children = React.Children.toArray(children);\n\n // TODO: There is something weird going on here with children embedded in props vs. rest args.\n // Comment out these lines to see. Make sure this function is doing the right things.\n if (children.length === 0) {\n return slotType(props);\n }\n\n return slotType({ ...(props as any), children });\n } else {\n // TODO: Are there some cases where children should NOT be spread? Also, spreading reraises perf question.\n // Children had to be spread to avoid breaking KeytipData in Toggle.view:\n // react-dom.development.js:18931 Uncaught TypeError: children is not a function\n // Without spread, function child is a child array of one element\n // TODO: is there a reason this can't be:\n // return React.createElement.apply(this, arguments);\n return React.createElement(type, props, ...children);\n }\n}\n\n/**\n * This function creates factories that render ouput depending on the user ISlotProp props passed in.\n * @param DefaultComponent - Base component to render when not overridden by user props.\n * @param options - Factory options, including defaultProp value for shorthand prop mapping.\n * @returns ISlotFactory function used for rendering slots.\n */\nexport function createFactory(\n DefaultComponent: React.ComponentType,\n options: IFactoryOptions = {},\n): ISlotFactory {\n const { defaultProp = 'children' } = options;\n\n const result: ISlotFactory = (\n componentProps,\n userProps,\n userSlotOptions,\n defaultStyles,\n theme,\n ) => {\n // If they passed in raw JSX, just return that.\n if (React.isValidElement(userProps)) {\n return userProps;\n }\n\n const flattenedUserProps: TProps | undefined = _translateShorthand(defaultProp as string, userProps);\n const finalProps = _constructFinalProps(defaultStyles, theme, componentProps, flattenedUserProps);\n\n if (userSlotOptions) {\n if (userSlotOptions.component) {\n // TODO: Remove cast if possible. This cast is needed because TS errors on the intrinsic portion of ReactType.\n // return ;\n const UserComponent = userSlotOptions.component as React.ComponentType;\n return ;\n }\n\n if (userSlotOptions.render) {\n return userSlotOptions.render(finalProps, DefaultComponent);\n }\n }\n\n return ;\n };\n\n return result;\n}\n\n/**\n * Default factory for components without explicit factories.\n */\nconst defaultFactory = memoizeFunction(type => createFactory(type));\n\n/**\n * This function generates slots that can be used in JSX given a definition of slots and their corresponding types.\n * @param userProps - Props as pass to component.\n * @param slots - Slot definition object defining the default slot component for each slot.\n * @returns A set of created slots that components can render in JSX.\n */\nexport function getSlots, TComponentSlots>(\n userProps: TComponentProps,\n slots: ISlotDefinition>,\n): ISlots> {\n const result: ISlots> = {} as ISlots>;\n\n // userProps already has default props mixed in by createComponent. Recast here to gain typing for this function.\n const mixedProps = userProps as TComponentProps & IDefaultSlotProps;\n\n for (const name in slots) {\n if (slots.hasOwnProperty(name)) {\n // This closure method requires the use of withSlots to prevent unnecessary rerenders. This is because React\n // detects each closure as a different component (since it is a new instance) from the previous one and then\n // forces a rerender of the entire slot subtree. For now, the only way to avoid this is to use withSlots, which\n // bypasses the call to React.createElement.\n const slot: ISlots>[keyof TComponentSlots] = (componentProps, ...args: any[]) => {\n if (args.length > 0) {\n // If React.createElement is being incorrectly used with slots, there will be additional arguments.\n // We can detect these additional arguments and error on their presence.\n throw new Error('Any module using getSlots must use withSlots. Please see withSlots javadoc for more info.');\n }\n // TODO: having TS infer types here seems to cause infinite loop.\n // use explicit types or casting to preserve typing if possible.\n // TODO: this should be a lookup on TProps property instead of being TProps directly, which is probably\n // causing the infinite loop\n return _renderSlot(\n slots[name],\n // TODO: this cast to any is hiding a relationship issue between the first two args\n componentProps as any,\n mixedProps[name],\n mixedProps.slots && mixedProps.slots[name],\n // _defaultStyles should always be present, but a check for existence is added to make view tests\n // easier to use.\n mixedProps._defaultStyles && mixedProps._defaultStyles[name],\n (mixedProps as any).theme,\n );\n };\n slot.isSlot = true;\n result[name] = slot;\n }\n }\n\n return result;\n}\n\n/**\n * Helper function that translates shorthand as needed.\n * @param defaultProp\n * @param slotProps\n */\nfunction _translateShorthand(\n defaultProp: string,\n slotProps: ISlotProp,\n): TProps | undefined {\n let transformedProps: TProps | undefined;\n\n if (typeof slotProps === 'string' || typeof slotProps === 'number' || typeof slotProps === 'boolean') {\n transformedProps = {\n [defaultProp]: slotProps as any,\n } as TProps;\n } else {\n transformedProps = slotProps as TProps;\n }\n\n return transformedProps;\n}\n\n/**\n * Helper function that constructs final styles and props given a series of props ordered by increasing priority.\n */\nfunction _constructFinalProps(\n defaultStyles: IStyle,\n theme?: ITheme,\n ...allProps: (TProps | undefined)[]\n): TProps {\n const finalProps: TProps = {} as any;\n const classNames: (string | undefined)[] = [];\n\n for (const props of allProps) {\n classNames.push(props && props.className);\n assign(finalProps, props);\n }\n\n finalProps.className = mergeCss([defaultStyles, classNames], { rtl: getRTL(theme) });\n\n return finalProps;\n}\n\n/**\n * Render a slot given component and user props. Uses component factory if available, otherwise falls back\n * to default factory.\n * @param ComponentType Factory component type.\n * @param componentProps The properties passed into slot from within the component.\n * @param userProps The user properties passed in from outside of the component.\n */\nfunction _renderSlot<\n TSlotComponent extends ISlottableReactType,\n TSlotProps extends ValidProps,\n TSlotShorthand extends ValidShorthand\n>(\n ComponentType: TSlotComponent,\n componentProps: TSlotProps,\n userProps: ISlotProp,\n slotOptions: ISlotOptions | undefined,\n defaultStyles: IStyle,\n theme?: ITheme,\n): ReturnType {\n if (ComponentType.create !== undefined) {\n return ComponentType.create(componentProps, userProps, slotOptions, defaultStyles);\n } else {\n // TODO: need to resolve typing / generic issues passing through memoizeFunction. for now, cast to 'unknown'\n return ((defaultFactory(ComponentType) as unknown) as ISlotFactory)(\n componentProps,\n userProps,\n slotOptions,\n defaultStyles,\n theme,\n );\n }\n}\n","var arrayWithHoles = require(\"./arrayWithHoles.js\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nvar nonIterableRest = require(\"./nonIterableRest.js\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\n\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import React, { Component } from 'react';\nimport _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport PropTypes from 'prop-types';\nimport warning from 'tiny-warning';\n\nvar MAX_SIGNED_31_BIT_INT = 1073741823;\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : {};\n\nfunction getUniqueId() {\n var key = '__global_unique_id__';\n return commonjsGlobal[key] = (commonjsGlobal[key] || 0) + 1;\n}\n\nfunction objectIs(x, y) {\n if (x === y) {\n return x !== 0 || 1 / x === 1 / y;\n } else {\n return x !== x && y !== y;\n }\n}\n\nfunction createEventEmitter(value) {\n var handlers = [];\n return {\n on: function on(handler) {\n handlers.push(handler);\n },\n off: function off(handler) {\n handlers = handlers.filter(function (h) {\n return h !== handler;\n });\n },\n get: function get() {\n return value;\n },\n set: function set(newValue, changedBits) {\n value = newValue;\n handlers.forEach(function (handler) {\n return handler(value, changedBits);\n });\n }\n };\n}\n\nfunction onlyChild(children) {\n return Array.isArray(children) ? children[0] : children;\n}\n\nfunction createReactContext(defaultValue, calculateChangedBits) {\n var _Provider$childContex, _Consumer$contextType;\n\n var contextProp = '__create-react-context-' + getUniqueId() + '__';\n\n var Provider = /*#__PURE__*/function (_Component) {\n _inheritsLoose(Provider, _Component);\n\n function Provider() {\n var _this;\n\n _this = _Component.apply(this, arguments) || this;\n _this.emitter = createEventEmitter(_this.props.value);\n return _this;\n }\n\n var _proto = Provider.prototype;\n\n _proto.getChildContext = function getChildContext() {\n var _ref;\n\n return _ref = {}, _ref[contextProp] = this.emitter, _ref;\n };\n\n _proto.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (this.props.value !== nextProps.value) {\n var oldValue = this.props.value;\n var newValue = nextProps.value;\n var changedBits;\n\n if (objectIs(oldValue, newValue)) {\n changedBits = 0;\n } else {\n changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT;\n\n if (process.env.NODE_ENV !== 'production') {\n warning((changedBits & MAX_SIGNED_31_BIT_INT) === changedBits, 'calculateChangedBits: Expected the return value to be a ' + '31-bit integer. Instead received: ' + changedBits);\n }\n\n changedBits |= 0;\n\n if (changedBits !== 0) {\n this.emitter.set(nextProps.value, changedBits);\n }\n }\n }\n };\n\n _proto.render = function render() {\n return this.props.children;\n };\n\n return Provider;\n }(Component);\n\n Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[contextProp] = PropTypes.object.isRequired, _Provider$childContex);\n\n var Consumer = /*#__PURE__*/function (_Component2) {\n _inheritsLoose(Consumer, _Component2);\n\n function Consumer() {\n var _this2;\n\n _this2 = _Component2.apply(this, arguments) || this;\n _this2.state = {\n value: _this2.getValue()\n };\n\n _this2.onUpdate = function (newValue, changedBits) {\n var observedBits = _this2.observedBits | 0;\n\n if ((observedBits & changedBits) !== 0) {\n _this2.setState({\n value: _this2.getValue()\n });\n }\n };\n\n return _this2;\n }\n\n var _proto2 = Consumer.prototype;\n\n _proto2.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var observedBits = nextProps.observedBits;\n this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT : observedBits;\n };\n\n _proto2.componentDidMount = function componentDidMount() {\n if (this.context[contextProp]) {\n this.context[contextProp].on(this.onUpdate);\n }\n\n var observedBits = this.props.observedBits;\n this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT : observedBits;\n };\n\n _proto2.componentWillUnmount = function componentWillUnmount() {\n if (this.context[contextProp]) {\n this.context[contextProp].off(this.onUpdate);\n }\n };\n\n _proto2.getValue = function getValue() {\n if (this.context[contextProp]) {\n return this.context[contextProp].get();\n } else {\n return defaultValue;\n }\n };\n\n _proto2.render = function render() {\n return onlyChild(this.props.children)(this.state.value);\n };\n\n return Consumer;\n }(Component);\n\n Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = PropTypes.object, _Consumer$contextType);\n return {\n Provider: Provider,\n Consumer: Consumer\n };\n}\n\nvar index = React.createContext || createReactContext;\n\nexport default index;\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","module.exports = require('./lib/axios');","/**\n * The code was extracted from:\n * https://github.com/davidchambers/Base64.js\n */\n\nvar chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\nfunction InvalidCharacterError(message) {\n this.message = message;\n}\n\nInvalidCharacterError.prototype = new Error();\nInvalidCharacterError.prototype.name = \"InvalidCharacterError\";\n\nfunction polyfill(input) {\n var str = String(input).replace(/=+$/, \"\");\n if (str.length % 4 == 1) {\n throw new InvalidCharacterError(\n \"'atob' failed: The string to be decoded is not correctly encoded.\"\n );\n }\n for (\n // initialize result and counters\n var bc = 0, bs, buffer, idx = 0, output = \"\";\n // get next character\n (buffer = str.charAt(idx++));\n // character found in table? initialize bit storage and add its ascii value;\n ~buffer &&\n ((bs = bc % 4 ? bs * 64 + buffer : buffer),\n // and if not first of each 4 characters,\n // convert the first 8 bits to one ascii character\n bc++ % 4) ?\n (output += String.fromCharCode(255 & (bs >> ((-2 * bc) & 6)))) :\n 0\n ) {\n // try to find character in table (0-63, not found => -1)\n buffer = chars.indexOf(buffer);\n }\n return output;\n}\n\nexport default (typeof window !== \"undefined\" &&\n window.atob &&\n window.atob.bind(window)) ||\npolyfill;","import atob from \"./atob\";\n\nfunction b64DecodeUnicode(str) {\n return decodeURIComponent(\n atob(str).replace(/(.)/g, function(m, p) {\n var code = p.charCodeAt(0).toString(16).toUpperCase();\n if (code.length < 2) {\n code = \"0\" + code;\n }\n return \"%\" + code;\n })\n );\n}\n\nexport default function(str) {\n var output = str.replace(/-/g, \"+\").replace(/_/g, \"/\");\n switch (output.length % 4) {\n case 0:\n break;\n case 2:\n output += \"==\";\n break;\n case 3:\n output += \"=\";\n break;\n default:\n throw \"Illegal base64url string!\";\n }\n\n try {\n return b64DecodeUnicode(output);\n } catch (err) {\n return atob(output);\n }\n}","\"use strict\";\n\nimport base64_url_decode from \"./base64_url_decode\";\n\nexport function InvalidTokenError(message) {\n this.message = message;\n}\n\nInvalidTokenError.prototype = new Error();\nInvalidTokenError.prototype.name = \"InvalidTokenError\";\n\nexport default function(token, options) {\n if (typeof token !== \"string\") {\n throw new InvalidTokenError(\"Invalid token specified\");\n }\n\n options = options || {};\n var pos = options.header === true ? 0 : 1;\n try {\n return JSON.parse(base64_url_decode(token.split(\".\")[pos]));\n } catch (e) {\n throw new InvalidTokenError(\"Invalid token specified: \" + e.message);\n }\n}","/*!\n * mime-types\n * Copyright(c) 2014 Jonathan Ong\n * Copyright(c) 2015 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict'\n\n/**\n * Module dependencies.\n * @private\n */\n\nvar db = require('mime-db')\nvar extname = require('path').extname\n\n/**\n * Module variables.\n * @private\n */\n\nvar EXTRACT_TYPE_REGEXP = /^\\s*([^;\\s]*)(?:;|\\s|$)/\nvar TEXT_TYPE_REGEXP = /^text\\//i\n\n/**\n * Module exports.\n * @public\n */\n\nexports.charset = charset\nexports.charsets = { lookup: charset }\nexports.contentType = contentType\nexports.extension = extension\nexports.extensions = Object.create(null)\nexports.lookup = lookup\nexports.types = Object.create(null)\n\n// Populate the extensions/types maps\npopulateMaps(exports.extensions, exports.types)\n\n/**\n * Get the default charset for a MIME type.\n *\n * @param {string} type\n * @return {boolean|string}\n */\n\nfunction charset (type) {\n if (!type || typeof type !== 'string') {\n return false\n }\n\n // TODO: use media-typer\n var match = EXTRACT_TYPE_REGEXP.exec(type)\n var mime = match && db[match[1].toLowerCase()]\n\n if (mime && mime.charset) {\n return mime.charset\n }\n\n // default text/* to utf-8\n if (match && TEXT_TYPE_REGEXP.test(match[1])) {\n return 'UTF-8'\n }\n\n return false\n}\n\n/**\n * Create a full Content-Type header given a MIME type or extension.\n *\n * @param {string} str\n * @return {boolean|string}\n */\n\nfunction contentType (str) {\n // TODO: should this even be in this module?\n if (!str || typeof str !== 'string') {\n return false\n }\n\n var mime = str.indexOf('/') === -1\n ? exports.lookup(str)\n : str\n\n if (!mime) {\n return false\n }\n\n // TODO: use content-type or other module\n if (mime.indexOf('charset') === -1) {\n var charset = exports.charset(mime)\n if (charset) mime += '; charset=' + charset.toLowerCase()\n }\n\n return mime\n}\n\n/**\n * Get the default extension for a MIME type.\n *\n * @param {string} type\n * @return {boolean|string}\n */\n\nfunction extension (type) {\n if (!type || typeof type !== 'string') {\n return false\n }\n\n // TODO: use media-typer\n var match = EXTRACT_TYPE_REGEXP.exec(type)\n\n // get extensions\n var exts = match && exports.extensions[match[1].toLowerCase()]\n\n if (!exts || !exts.length) {\n return false\n }\n\n return exts[0]\n}\n\n/**\n * Lookup the MIME type for a file path/extension.\n *\n * @param {string} path\n * @return {boolean|string}\n */\n\nfunction lookup (path) {\n if (!path || typeof path !== 'string') {\n return false\n }\n\n // get the extension (\"ext\" or \".ext\" or full path)\n var extension = extname('x.' + path)\n .toLowerCase()\n .substr(1)\n\n if (!extension) {\n return false\n }\n\n return exports.types[extension] || false\n}\n\n/**\n * Populate the extensions and types maps.\n * @private\n */\n\nfunction populateMaps (extensions, types) {\n // source preference (least -> most)\n var preference = ['nginx', 'apache', undefined, 'iana']\n\n Object.keys(db).forEach(function forEachMimeType (type) {\n var mime = db[type]\n var exts = mime.extensions\n\n if (!exts || !exts.length) {\n return\n }\n\n // mime -> extensions\n extensions[type] = exts\n\n // extension -> mime\n for (var i = 0; i < exts.length; i++) {\n var extension = exts[i]\n\n if (types[extension]) {\n var from = preference.indexOf(db[types[extension]].source)\n var to = preference.indexOf(mime.source)\n\n if (types[extension] !== 'application/octet-stream' &&\n (from > to || (from === to && types[extension].substr(0, 12) === 'application/'))) {\n // skip the remapping\n continue\n }\n }\n\n // set the extension -> mime\n types[extension] = type\n }\n })\n}\n","import _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\n\nvar arr = [];\nvar each = arr.forEach;\nvar slice = arr.slice;\nfunction defaults(obj) {\n each.call(slice.call(arguments, 1), function (source) {\n if (source) {\n for (var prop in source) {\n if (obj[prop] === undefined) obj[prop] = source[prop];\n }\n }\n });\n return obj;\n}\n\n// eslint-disable-next-line no-control-regex\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\n\nvar serializeCookie = function serializeCookie(name, val, options) {\n var opt = options || {};\n opt.path = opt.path || '/';\n var value = encodeURIComponent(val);\n var str = name + '=' + value;\n\n if (opt.maxAge > 0) {\n var maxAge = opt.maxAge - 0;\n if (isNaN(maxAge)) throw new Error('maxAge should be a Number');\n str += '; Max-Age=' + Math.floor(maxAge);\n }\n\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n\n str += '; Domain=' + opt.domain;\n }\n\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n\n str += '; Path=' + opt.path;\n }\n\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n\n str += '; Expires=' + opt.expires.toUTCString();\n }\n\n if (opt.httpOnly) str += '; HttpOnly';\n if (opt.secure) str += '; Secure';\n\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string' ? opt.sameSite.toLowerCase() : opt.sameSite;\n\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n\n case 'lax':\n str += '; SameSite=Lax';\n break;\n\n case 'strict':\n str += '; SameSite=Strict';\n break;\n\n case 'none':\n str += '; SameSite=None';\n break;\n\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n\n return str;\n};\n\nvar cookie = {\n create: function create(name, value, minutes, domain) {\n var cookieOptions = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n path: '/',\n sameSite: 'strict'\n };\n\n if (minutes) {\n cookieOptions.expires = new Date();\n cookieOptions.expires.setTime(cookieOptions.expires.getTime() + minutes * 60 * 1000);\n }\n\n if (domain) cookieOptions.domain = domain;\n document.cookie = serializeCookie(name, encodeURIComponent(value), cookieOptions);\n },\n read: function read(name) {\n var nameEQ = name + '=';\n var ca = document.cookie.split(';');\n\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n\n while (c.charAt(0) === ' ') {\n c = c.substring(1, c.length);\n }\n\n if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);\n }\n\n return null;\n },\n remove: function remove(name) {\n this.create(name, '', -1);\n }\n};\nvar cookie$1 = {\n name: 'cookie',\n lookup: function lookup(options) {\n var found;\n\n if (options.lookupCookie && typeof document !== 'undefined') {\n var c = cookie.read(options.lookupCookie);\n if (c) found = c;\n }\n\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupCookie && typeof document !== 'undefined') {\n cookie.create(options.lookupCookie, lng, options.cookieMinutes, options.cookieDomain, options.cookieOptions);\n }\n }\n};\n\nvar querystring = {\n name: 'querystring',\n lookup: function lookup(options) {\n var found;\n\n if (typeof window !== 'undefined') {\n var search = window.location.search;\n\n if (!window.location.search && window.location.hash && window.location.hash.indexOf('?') > -1) {\n search = window.location.hash.substring(window.location.hash.indexOf('?'));\n }\n\n var query = search.substring(1);\n var params = query.split('&');\n\n for (var i = 0; i < params.length; i++) {\n var pos = params[i].indexOf('=');\n\n if (pos > 0) {\n var key = params[i].substring(0, pos);\n\n if (key === options.lookupQuerystring) {\n found = params[i].substring(pos + 1);\n }\n }\n }\n }\n\n return found;\n }\n};\n\nvar hasLocalStorageSupport = null;\n\nvar localStorageAvailable = function localStorageAvailable() {\n if (hasLocalStorageSupport !== null) return hasLocalStorageSupport;\n\n try {\n hasLocalStorageSupport = window !== 'undefined' && window.localStorage !== null;\n var testKey = 'i18next.translate.boo';\n window.localStorage.setItem(testKey, 'foo');\n window.localStorage.removeItem(testKey);\n } catch (e) {\n hasLocalStorageSupport = false;\n }\n\n return hasLocalStorageSupport;\n};\n\nvar localStorage = {\n name: 'localStorage',\n lookup: function lookup(options) {\n var found;\n\n if (options.lookupLocalStorage && localStorageAvailable()) {\n var lng = window.localStorage.getItem(options.lookupLocalStorage);\n if (lng) found = lng;\n }\n\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupLocalStorage && localStorageAvailable()) {\n window.localStorage.setItem(options.lookupLocalStorage, lng);\n }\n }\n};\n\nvar hasSessionStorageSupport = null;\n\nvar sessionStorageAvailable = function sessionStorageAvailable() {\n if (hasSessionStorageSupport !== null) return hasSessionStorageSupport;\n\n try {\n hasSessionStorageSupport = window !== 'undefined' && window.sessionStorage !== null;\n var testKey = 'i18next.translate.boo';\n window.sessionStorage.setItem(testKey, 'foo');\n window.sessionStorage.removeItem(testKey);\n } catch (e) {\n hasSessionStorageSupport = false;\n }\n\n return hasSessionStorageSupport;\n};\n\nvar sessionStorage = {\n name: 'sessionStorage',\n lookup: function lookup(options) {\n var found;\n\n if (options.lookupSessionStorage && sessionStorageAvailable()) {\n var lng = window.sessionStorage.getItem(options.lookupSessionStorage);\n if (lng) found = lng;\n }\n\n return found;\n },\n cacheUserLanguage: function cacheUserLanguage(lng, options) {\n if (options.lookupSessionStorage && sessionStorageAvailable()) {\n window.sessionStorage.setItem(options.lookupSessionStorage, lng);\n }\n }\n};\n\nvar navigator$1 = {\n name: 'navigator',\n lookup: function lookup(options) {\n var found = [];\n\n if (typeof navigator !== 'undefined') {\n if (navigator.languages) {\n // chrome only; not an array, so can't use .push.apply instead of iterating\n for (var i = 0; i < navigator.languages.length; i++) {\n found.push(navigator.languages[i]);\n }\n }\n\n if (navigator.userLanguage) {\n found.push(navigator.userLanguage);\n }\n\n if (navigator.language) {\n found.push(navigator.language);\n }\n }\n\n return found.length > 0 ? found : undefined;\n }\n};\n\nvar htmlTag = {\n name: 'htmlTag',\n lookup: function lookup(options) {\n var found;\n var htmlTag = options.htmlTag || (typeof document !== 'undefined' ? document.documentElement : null);\n\n if (htmlTag && typeof htmlTag.getAttribute === 'function') {\n found = htmlTag.getAttribute('lang');\n }\n\n return found;\n }\n};\n\nvar path = {\n name: 'path',\n lookup: function lookup(options) {\n var found;\n\n if (typeof window !== 'undefined') {\n var language = window.location.pathname.match(/\\/([a-zA-Z-]*)/g);\n\n if (language instanceof Array) {\n if (typeof options.lookupFromPathIndex === 'number') {\n if (typeof language[options.lookupFromPathIndex] !== 'string') {\n return undefined;\n }\n\n found = language[options.lookupFromPathIndex].replace('/', '');\n } else {\n found = language[0].replace('/', '');\n }\n }\n }\n\n return found;\n }\n};\n\nvar subdomain = {\n name: 'subdomain',\n lookup: function lookup(options) {\n var found;\n\n if (typeof window !== 'undefined') {\n var language = window.location.href.match(/(?:http[s]*\\:\\/\\/)*(.*?)\\.(?=[^\\/]*\\..{2,5})/gi);\n\n if (language instanceof Array) {\n if (typeof options.lookupFromSubdomainIndex === 'number') {\n found = language[options.lookupFromSubdomainIndex].replace('http://', '').replace('https://', '').replace('.', '');\n } else {\n found = language[0].replace('http://', '').replace('https://', '').replace('.', '');\n }\n }\n }\n\n return found;\n }\n};\n\nfunction getDefaults() {\n return {\n order: ['querystring', 'cookie', 'localStorage', 'sessionStorage', 'navigator', 'htmlTag'],\n lookupQuerystring: 'lng',\n lookupCookie: 'i18next',\n lookupLocalStorage: 'i18nextLng',\n lookupSessionStorage: 'i18nextLng',\n // cache user language\n caches: ['localStorage'],\n excludeCacheFor: ['cimode'] //cookieMinutes: 10,\n //cookieDomain: 'myDomain'\n\n };\n}\n\nvar Browser = /*#__PURE__*/function () {\n function Browser(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Browser);\n\n this.type = 'languageDetector';\n this.detectors = {};\n this.init(services, options);\n }\n\n _createClass(Browser, [{\n key: \"init\",\n value: function init(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var i18nOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n this.services = services;\n this.options = defaults(options, this.options || {}, getDefaults()); // backwards compatibility\n\n if (this.options.lookupFromUrlIndex) this.options.lookupFromPathIndex = this.options.lookupFromUrlIndex;\n this.i18nOptions = i18nOptions;\n this.addDetector(cookie$1);\n this.addDetector(querystring);\n this.addDetector(localStorage);\n this.addDetector(sessionStorage);\n this.addDetector(navigator$1);\n this.addDetector(htmlTag);\n this.addDetector(path);\n this.addDetector(subdomain);\n }\n }, {\n key: \"addDetector\",\n value: function addDetector(detector) {\n this.detectors[detector.name] = detector;\n }\n }, {\n key: \"detect\",\n value: function detect(detectionOrder) {\n var _this = this;\n\n if (!detectionOrder) detectionOrder = this.options.order;\n var detected = [];\n detectionOrder.forEach(function (detectorName) {\n if (_this.detectors[detectorName]) {\n var lookup = _this.detectors[detectorName].lookup(_this.options);\n\n if (lookup && typeof lookup === 'string') lookup = [lookup];\n if (lookup) detected = detected.concat(lookup);\n }\n });\n if (this.services.languageUtils.getBestMatchFromCodes) return detected; // new i18next v19.5.0\n\n return detected.length > 0 ? detected[0] : null; // a little backward compatibility\n }\n }, {\n key: \"cacheUserLanguage\",\n value: function cacheUserLanguage(lng, caches) {\n var _this2 = this;\n\n if (!caches) caches = this.options.caches;\n if (!caches) return;\n if (this.options.excludeCacheFor && this.options.excludeCacheFor.indexOf(lng) > -1) return;\n caches.forEach(function (cacheName) {\n if (_this2.detectors[cacheName]) _this2.detectors[cacheName].cacheUserLanguage(lng, _this2.options);\n });\n }\n }]);\n\n return Browser;\n}();\n\nBrowser.type = 'languageDetector';\n\nexport { Browser as default };\n","// Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport { IIconOptions, IIconSubset, registerIcons } from '@fluentui/style-utilities';\n\nexport function initializeIcons(baseUrl: string = '', options?: IIconOptions): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none',\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons\"`,\n src: `url('${baseUrl}fabric-icons-a13498cf.woff') format('woff')`,\n },\n icons: {\n GlobalNavButton: '\\uE700',\n ChevronDown: '\\uE70D',\n ChevronUp: '\\uE70E',\n Edit: '\\uE70F',\n Add: '\\uE710',\n Cancel: '\\uE711',\n More: '\\uE712',\n Settings: '\\uE713',\n Mail: '\\uE715',\n Filter: '\\uE71C',\n Search: '\\uE721',\n Share: '\\uE72D',\n BlockedSite: '\\uE72F',\n FavoriteStar: '\\uE734',\n FavoriteStarFill: '\\uE735',\n CheckMark: '\\uE73E',\n Delete: '\\uE74D',\n ChevronLeft: '\\uE76B',\n ChevronRight: '\\uE76C',\n Calendar: '\\uE787',\n Megaphone: '\\uE789',\n Undo: '\\uE7A7',\n Flag: '\\uE7C1',\n Page: '\\uE7C3',\n Pinned: '\\uE840',\n View: '\\uE890',\n Clear: '\\uE894',\n Download: '\\uE896',\n Upload: '\\uE898',\n Folder: '\\uE8B7',\n Sort: '\\uE8CB',\n AlignRight: '\\uE8E2',\n AlignLeft: '\\uE8E4',\n Tag: '\\uE8EC',\n AddFriend: '\\uE8FA',\n Info: '\\uE946',\n SortLines: '\\uE9D0',\n List: '\\uEA37',\n CircleRing: '\\uEA3A',\n Heart: '\\uEB51',\n HeartFill: '\\uEB52',\n Tiles: '\\uECA5',\n Embed: '\\uECCE',\n Glimmer: '\\uECF4',\n Ascending: '\\uEDC0',\n Descending: '\\uEDC1',\n SortUp: '\\uEE68',\n SortDown: '\\uEE69',\n SyncToPC: '\\uEE6E',\n LargeGrid: '\\uEECB',\n SkypeCheck: '\\uEF80',\n SkypeClock: '\\uEF81',\n SkypeMinus: '\\uEF82',\n ClearFilter: '\\uEF8F',\n Flow: '\\uEF90',\n StatusCircleCheckmark: '\\uF13E',\n MoreVertical: '\\uF2BC',\n },\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-0\"`,\n src: `url('${baseUrl}fabric-icons-0-467ee27f.woff') format('woff')`\n },\n icons: {\n 'PageLink': '\\uE302',\n 'CommentSolid': '\\uE30E',\n 'ChangeEntitlements': '\\uE310',\n 'Installation': '\\uE311',\n 'WebAppBuilderModule': '\\uE313',\n 'WebAppBuilderFragment': '\\uE314',\n 'WebAppBuilderSlot': '\\uE315',\n 'BullseyeTargetEdit': '\\uE319',\n 'WebAppBuilderFragmentCreate': '\\uE31B',\n 'PageData': '\\uE31C',\n 'PageHeaderEdit': '\\uE31D',\n 'ProductList': '\\uE31E',\n 'UnpublishContent': '\\uE31F',\n 'DependencyAdd': '\\uE344',\n 'DependencyRemove': '\\uE345',\n 'EntitlementPolicy': '\\uE346',\n 'EntitlementRedemption': '\\uE347',\n 'SchoolDataSyncLogo': '\\uE34C',\n 'PinSolid12': '\\uE352',\n 'PinSolidOff12': '\\uE353',\n 'AddLink': '\\uE35E',\n 'SharepointAppIcon16': '\\uE365',\n 'DataflowsLink': '\\uE366',\n 'TimePicker': '\\uE367',\n 'UserWarning': '\\uE368',\n 'ComplianceAudit': '\\uE369',\n 'InternetSharing': '\\uE704',\n 'Brightness': '\\uE706',\n 'MapPin': '\\uE707',\n 'Airplane': '\\uE709',\n 'Tablet': '\\uE70A',\n 'QuickNote': '\\uE70B',\n 'Video': '\\uE714',\n 'People': '\\uE716',\n 'Phone': '\\uE717',\n 'Pin': '\\uE718',\n 'Shop': '\\uE719',\n 'Stop': '\\uE71A',\n 'Link': '\\uE71B',\n 'AllApps': '\\uE71D',\n 'Zoom': '\\uE71E',\n 'ZoomOut': '\\uE71F',\n 'Microphone': '\\uE720',\n 'Camera': '\\uE722',\n 'Attach': '\\uE723',\n 'Send': '\\uE724',\n 'FavoriteList': '\\uE728',\n 'PageSolid': '\\uE729',\n 'Forward': '\\uE72A',\n 'Back': '\\uE72B',\n 'Refresh': '\\uE72C',\n 'Lock': '\\uE72E',\n 'ReportHacked': '\\uE730',\n 'EMI': '\\uE731',\n 'MiniLink': '\\uE732',\n 'Blocked': '\\uE733',\n 'ReadingMode': '\\uE736',\n 'Favicon': '\\uE737',\n 'Remove': '\\uE738',\n 'Checkbox': '\\uE739',\n 'CheckboxComposite': '\\uE73A',\n 'CheckboxFill': '\\uE73B',\n 'CheckboxIndeterminate': '\\uE73C',\n 'CheckboxCompositeReversed': '\\uE73D',\n 'BackToWindow': '\\uE73F',\n 'FullScreen': '\\uE740',\n 'Print': '\\uE749',\n 'Up': '\\uE74A',\n 'Down': '\\uE74B',\n 'OEM': '\\uE74C',\n 'Save': '\\uE74E',\n 'ReturnKey': '\\uE751',\n 'Cloud': '\\uE753',\n 'Flashlight': '\\uE754',\n 'CommandPrompt': '\\uE756',\n 'Sad': '\\uE757',\n 'RealEstate': '\\uE758',\n 'SIPMove': '\\uE759',\n 'EraseTool': '\\uE75C',\n 'GripperTool': '\\uE75E',\n 'Dialpad': '\\uE75F',\n 'PageLeft': '\\uE760',\n 'PageRight': '\\uE761',\n 'MultiSelect': '\\uE762',\n 'KeyboardClassic': '\\uE765',\n 'Play': '\\uE768',\n 'Pause': '\\uE769',\n 'InkingTool': '\\uE76D',\n 'Emoji2': '\\uE76E',\n 'GripperBarHorizontal': '\\uE76F',\n 'System': '\\uE770',\n 'Personalize': '\\uE771',\n 'SearchAndApps': '\\uE773',\n 'Globe': '\\uE774',\n 'EaseOfAccess': '\\uE776',\n 'ContactInfo': '\\uE779',\n 'Unpin': '\\uE77A',\n 'Contact': '\\uE77B',\n 'Memo': '\\uE77C',\n 'IncomingCall': '\\uE77E'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-1\"`,\n src: `url('${baseUrl}fabric-icons-1-4d521695.woff') format('woff')`\n },\n icons: {\n 'Paste': '\\uE77F',\n 'WindowsLogo': '\\uE782',\n 'Error': '\\uE783',\n 'GripperBarVertical': '\\uE784',\n 'Unlock': '\\uE785',\n 'Slideshow': '\\uE786',\n 'Trim': '\\uE78A',\n 'AutoEnhanceOn': '\\uE78D',\n 'AutoEnhanceOff': '\\uE78E',\n 'Color': '\\uE790',\n 'SaveAs': '\\uE792',\n 'Light': '\\uE793',\n 'Filters': '\\uE795',\n 'AspectRatio': '\\uE799',\n 'Contrast': '\\uE7A1',\n 'Redo': '\\uE7A6',\n 'Crop': '\\uE7A8',\n 'PhotoCollection': '\\uE7AA',\n 'Album': '\\uE7AB',\n 'Rotate': '\\uE7AD',\n 'PanoIndicator': '\\uE7B0',\n 'Translate': '\\uE7B2',\n 'RedEye': '\\uE7B3',\n 'ViewOriginal': '\\uE7B4',\n 'ThumbnailView': '\\uE7B6',\n 'Package': '\\uE7B8',\n 'Telemarketer': '\\uE7B9',\n 'Warning': '\\uE7BA',\n 'Financial': '\\uE7BB',\n 'Education': '\\uE7BE',\n 'ShoppingCart': '\\uE7BF',\n 'Train': '\\uE7C0',\n 'Move': '\\uE7C2',\n 'TouchPointer': '\\uE7C9',\n 'Merge': '\\uE7D5',\n 'TurnRight': '\\uE7DB',\n 'Ferry': '\\uE7E3',\n 'Highlight': '\\uE7E6',\n 'PowerButton': '\\uE7E8',\n 'Tab': '\\uE7E9',\n 'Admin': '\\uE7EF',\n 'TVMonitor': '\\uE7F4',\n 'Speakers': '\\uE7F5',\n 'Game': '\\uE7FC',\n 'HorizontalTabKey': '\\uE7FD',\n 'UnstackSelected': '\\uE7FE',\n 'StackIndicator': '\\uE7FF',\n 'Nav2DMapView': '\\uE800',\n 'StreetsideSplitMinimize': '\\uE802',\n 'Car': '\\uE804',\n 'Bus': '\\uE806',\n 'EatDrink': '\\uE807',\n 'SeeDo': '\\uE808',\n 'LocationCircle': '\\uE80E',\n 'Home': '\\uE80F',\n 'SwitcherStartEnd': '\\uE810',\n 'ParkingLocation': '\\uE811',\n 'IncidentTriangle': '\\uE814',\n 'Touch': '\\uE815',\n 'MapDirections': '\\uE816',\n 'CaretHollow': '\\uE817',\n 'CaretSolid': '\\uE818',\n 'History': '\\uE81C',\n 'Location': '\\uE81D',\n 'MapLayers': '\\uE81E',\n 'SearchNearby': '\\uE820',\n 'Work': '\\uE821',\n 'Recent': '\\uE823',\n 'Hotel': '\\uE824',\n 'Bank': '\\uE825',\n 'LocationDot': '\\uE827',\n 'Dictionary': '\\uE82D',\n 'ChromeBack': '\\uE830',\n 'FolderOpen': '\\uE838',\n 'PinnedFill': '\\uE842',\n 'RevToggleKey': '\\uE845',\n 'USB': '\\uE88E',\n 'Previous': '\\uE892',\n 'Next': '\\uE893',\n 'Sync': '\\uE895',\n 'Help': '\\uE897',\n 'Emoji': '\\uE899',\n 'MailForward': '\\uE89C',\n 'ClosePane': '\\uE89F',\n 'OpenPane': '\\uE8A0',\n 'PreviewLink': '\\uE8A1',\n 'ZoomIn': '\\uE8A3',\n 'Bookmarks': '\\uE8A4',\n 'Document': '\\uE8A5',\n 'ProtectedDocument': '\\uE8A6',\n 'OpenInNewWindow': '\\uE8A7',\n 'MailFill': '\\uE8A8',\n 'ViewAll': '\\uE8A9',\n 'Switch': '\\uE8AB',\n 'Rename': '\\uE8AC',\n 'Go': '\\uE8AD',\n 'Remote': '\\uE8AF',\n 'SelectAll': '\\uE8B3',\n 'Orientation': '\\uE8B4',\n 'Import': '\\uE8B5'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-2\"`,\n src: `url('${baseUrl}fabric-icons-2-63c99abf.woff') format('woff')`\n },\n icons: {\n 'Picture': '\\uE8B9',\n 'ChromeClose': '\\uE8BB',\n 'ShowResults': '\\uE8BC',\n 'Message': '\\uE8BD',\n 'CalendarDay': '\\uE8BF',\n 'CalendarWeek': '\\uE8C0',\n 'MailReplyAll': '\\uE8C2',\n 'Read': '\\uE8C3',\n 'Cut': '\\uE8C6',\n 'PaymentCard': '\\uE8C7',\n 'Copy': '\\uE8C8',\n 'Important': '\\uE8C9',\n 'MailReply': '\\uE8CA',\n 'GotoToday': '\\uE8D1',\n 'Font': '\\uE8D2',\n 'FontColor': '\\uE8D3',\n 'FolderFill': '\\uE8D5',\n 'Permissions': '\\uE8D7',\n 'DisableUpdates': '\\uE8D8',\n 'Unfavorite': '\\uE8D9',\n 'Italic': '\\uE8DB',\n 'Underline': '\\uE8DC',\n 'Bold': '\\uE8DD',\n 'MoveToFolder': '\\uE8DE',\n 'Dislike': '\\uE8E0',\n 'Like': '\\uE8E1',\n 'AlignCenter': '\\uE8E3',\n 'OpenFile': '\\uE8E5',\n 'ClearSelection': '\\uE8E6',\n 'FontDecrease': '\\uE8E7',\n 'FontIncrease': '\\uE8E8',\n 'FontSize': '\\uE8E9',\n 'CellPhone': '\\uE8EA',\n 'RepeatOne': '\\uE8ED',\n 'RepeatAll': '\\uE8EE',\n 'Calculator': '\\uE8EF',\n 'Library': '\\uE8F1',\n 'PostUpdate': '\\uE8F3',\n 'NewFolder': '\\uE8F4',\n 'CalendarReply': '\\uE8F5',\n 'UnsyncFolder': '\\uE8F6',\n 'SyncFolder': '\\uE8F7',\n 'BlockContact': '\\uE8F8',\n 'Accept': '\\uE8FB',\n 'BulletedList': '\\uE8FD',\n 'Preview': '\\uE8FF',\n 'News': '\\uE900',\n 'Chat': '\\uE901',\n 'Group': '\\uE902',\n 'World': '\\uE909',\n 'Comment': '\\uE90A',\n 'DockLeft': '\\uE90C',\n 'DockRight': '\\uE90D',\n 'Repair': '\\uE90F',\n 'Accounts': '\\uE910',\n 'Street': '\\uE913',\n 'RadioBullet': '\\uE915',\n 'Stopwatch': '\\uE916',\n 'Clock': '\\uE917',\n 'WorldClock': '\\uE918',\n 'AlarmClock': '\\uE919',\n 'Photo': '\\uE91B',\n 'ActionCenter': '\\uE91C',\n 'Hospital': '\\uE91D',\n 'Timer': '\\uE91E',\n 'FullCircleMask': '\\uE91F',\n 'LocationFill': '\\uE920',\n 'ChromeMinimize': '\\uE921',\n 'ChromeRestore': '\\uE923',\n 'Annotation': '\\uE924',\n 'Fingerprint': '\\uE928',\n 'Handwriting': '\\uE929',\n 'ChromeFullScreen': '\\uE92D',\n 'Completed': '\\uE930',\n 'Label': '\\uE932',\n 'FlickDown': '\\uE935',\n 'FlickUp': '\\uE936',\n 'FlickLeft': '\\uE937',\n 'FlickRight': '\\uE938',\n 'MiniExpand': '\\uE93A',\n 'MiniContract': '\\uE93B',\n 'Streaming': '\\uE93E',\n 'MusicInCollection': '\\uE940',\n 'OneDriveLogo': '\\uE941',\n 'CompassNW': '\\uE942',\n 'Code': '\\uE943',\n 'LightningBolt': '\\uE945',\n 'CalculatorMultiply': '\\uE947',\n 'CalculatorAddition': '\\uE948',\n 'CalculatorSubtract': '\\uE949',\n 'CalculatorPercentage': '\\uE94C',\n 'CalculatorEqualTo': '\\uE94E',\n 'PrintfaxPrinterFile': '\\uE956',\n 'StorageOptical': '\\uE958',\n 'Communications': '\\uE95A',\n 'Headset': '\\uE95B',\n 'Health': '\\uE95E',\n 'Webcam2': '\\uE960',\n 'FrontCamera': '\\uE96B',\n 'ChevronUpSmall': '\\uE96D'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-3\"`,\n src: `url('${baseUrl}fabric-icons-3-089e217a.woff') format('woff')`\n },\n icons: {\n 'ChevronDownSmall': '\\uE96E',\n 'ChevronLeftSmall': '\\uE96F',\n 'ChevronRightSmall': '\\uE970',\n 'ChevronUpMed': '\\uE971',\n 'ChevronDownMed': '\\uE972',\n 'ChevronLeftMed': '\\uE973',\n 'ChevronRightMed': '\\uE974',\n 'Devices2': '\\uE975',\n 'PC1': '\\uE977',\n 'PresenceChickletVideo': '\\uE979',\n 'Reply': '\\uE97A',\n 'HalfAlpha': '\\uE97E',\n 'ConstructionCone': '\\uE98F',\n 'DoubleChevronLeftMed': '\\uE991',\n 'Volume0': '\\uE992',\n 'Volume1': '\\uE993',\n 'Volume2': '\\uE994',\n 'Volume3': '\\uE995',\n 'Chart': '\\uE999',\n 'Robot': '\\uE99A',\n 'Manufacturing': '\\uE99C',\n 'LockSolid': '\\uE9A2',\n 'FitPage': '\\uE9A6',\n 'FitWidth': '\\uE9A7',\n 'BidiLtr': '\\uE9AA',\n 'BidiRtl': '\\uE9AB',\n 'RightDoubleQuote': '\\uE9B1',\n 'Sunny': '\\uE9BD',\n 'CloudWeather': '\\uE9BE',\n 'Cloudy': '\\uE9BF',\n 'PartlyCloudyDay': '\\uE9C0',\n 'PartlyCloudyNight': '\\uE9C1',\n 'ClearNight': '\\uE9C2',\n 'RainShowersDay': '\\uE9C3',\n 'Rain': '\\uE9C4',\n 'Thunderstorms': '\\uE9C6',\n 'RainSnow': '\\uE9C7',\n 'Snow': '\\uE9C8',\n 'BlowingSnow': '\\uE9C9',\n 'Frigid': '\\uE9CA',\n 'Fog': '\\uE9CB',\n 'Squalls': '\\uE9CC',\n 'Duststorm': '\\uE9CD',\n 'Unknown': '\\uE9CE',\n 'Precipitation': '\\uE9CF',\n 'Ribbon': '\\uE9D1',\n 'AreaChart': '\\uE9D2',\n 'Assign': '\\uE9D3',\n 'FlowChart': '\\uE9D4',\n 'CheckList': '\\uE9D5',\n 'Diagnostic': '\\uE9D9',\n 'Generate': '\\uE9DA',\n 'LineChart': '\\uE9E6',\n 'Equalizer': '\\uE9E9',\n 'BarChartHorizontal': '\\uE9EB',\n 'BarChartVertical': '\\uE9EC',\n 'Freezing': '\\uE9EF',\n 'FunnelChart': '\\uE9F1',\n 'Processing': '\\uE9F5',\n 'Quantity': '\\uE9F8',\n 'ReportDocument': '\\uE9F9',\n 'StackColumnChart': '\\uE9FC',\n 'SnowShowerDay': '\\uE9FD',\n 'HailDay': '\\uEA00',\n 'WorkFlow': '\\uEA01',\n 'HourGlass': '\\uEA03',\n 'StoreLogoMed20': '\\uEA04',\n 'TimeSheet': '\\uEA05',\n 'TriangleSolid': '\\uEA08',\n 'UpgradeAnalysis': '\\uEA0B',\n 'VideoSolid': '\\uEA0C',\n 'RainShowersNight': '\\uEA0F',\n 'SnowShowerNight': '\\uEA11',\n 'Teamwork': '\\uEA12',\n 'HailNight': '\\uEA13',\n 'PeopleAdd': '\\uEA15',\n 'Glasses': '\\uEA16',\n 'DateTime2': '\\uEA17',\n 'Shield': '\\uEA18',\n 'Header1': '\\uEA19',\n 'PageAdd': '\\uEA1A',\n 'NumberedList': '\\uEA1C',\n 'PowerBILogo': '\\uEA1E',\n 'Info2': '\\uEA1F',\n 'MusicInCollectionFill': '\\uEA36',\n 'Asterisk': '\\uEA38',\n 'ErrorBadge': '\\uEA39',\n 'CircleFill': '\\uEA3B',\n 'Record2': '\\uEA3F',\n 'AllAppsMirrored': '\\uEA40',\n 'BookmarksMirrored': '\\uEA41',\n 'BulletedListMirrored': '\\uEA42',\n 'CaretHollowMirrored': '\\uEA45',\n 'CaretSolidMirrored': '\\uEA46',\n 'ChromeBackMirrored': '\\uEA47',\n 'ClearSelectionMirrored': '\\uEA48',\n 'ClosePaneMirrored': '\\uEA49',\n 'DockLeftMirrored': '\\uEA4C',\n 'DoubleChevronLeftMedMirrored': '\\uEA4D',\n 'GoMirrored': '\\uEA4F'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-4\"`,\n src: `url('${baseUrl}fabric-icons-4-a656cc0a.woff') format('woff')`\n },\n icons: {\n 'HelpMirrored': '\\uEA51',\n 'ImportMirrored': '\\uEA52',\n 'ImportAllMirrored': '\\uEA53',\n 'ListMirrored': '\\uEA55',\n 'MailForwardMirrored': '\\uEA56',\n 'MailReplyMirrored': '\\uEA57',\n 'MailReplyAllMirrored': '\\uEA58',\n 'MiniContractMirrored': '\\uEA59',\n 'MiniExpandMirrored': '\\uEA5A',\n 'OpenPaneMirrored': '\\uEA5B',\n 'ParkingLocationMirrored': '\\uEA5E',\n 'SendMirrored': '\\uEA63',\n 'ShowResultsMirrored': '\\uEA65',\n 'ThumbnailViewMirrored': '\\uEA67',\n 'Media': '\\uEA69',\n 'Devices3': '\\uEA6C',\n 'Focus': '\\uEA6F',\n 'VideoLightOff': '\\uEA74',\n 'Lightbulb': '\\uEA80',\n 'StatusTriangle': '\\uEA82',\n 'VolumeDisabled': '\\uEA85',\n 'Puzzle': '\\uEA86',\n 'EmojiNeutral': '\\uEA87',\n 'EmojiDisappointed': '\\uEA88',\n 'HomeSolid': '\\uEA8A',\n 'Ringer': '\\uEA8F',\n 'PDF': '\\uEA90',\n 'HeartBroken': '\\uEA92',\n 'StoreLogo16': '\\uEA96',\n 'MultiSelectMirrored': '\\uEA98',\n 'Broom': '\\uEA99',\n 'AddToShoppingList': '\\uEA9A',\n 'Cocktails': '\\uEA9D',\n 'Wines': '\\uEABF',\n 'Articles': '\\uEAC1',\n 'Cycling': '\\uEAC7',\n 'DietPlanNotebook': '\\uEAC8',\n 'Pill': '\\uEACB',\n 'ExerciseTracker': '\\uEACC',\n 'HandsFree': '\\uEAD0',\n 'Medical': '\\uEAD4',\n 'Running': '\\uEADA',\n 'Weights': '\\uEADB',\n 'Trackers': '\\uEADF',\n 'AddNotes': '\\uEAE3',\n 'AllCurrency': '\\uEAE4',\n 'BarChart4': '\\uEAE7',\n 'CirclePlus': '\\uEAEE',\n 'Coffee': '\\uEAEF',\n 'Cotton': '\\uEAF3',\n 'Market': '\\uEAFC',\n 'Money': '\\uEAFD',\n 'PieDouble': '\\uEB04',\n 'PieSingle': '\\uEB05',\n 'RemoveFilter': '\\uEB08',\n 'Savings': '\\uEB0B',\n 'Sell': '\\uEB0C',\n 'StockDown': '\\uEB0F',\n 'StockUp': '\\uEB11',\n 'Lamp': '\\uEB19',\n 'Source': '\\uEB1B',\n 'MSNVideos': '\\uEB1C',\n 'Cricket': '\\uEB1E',\n 'Golf': '\\uEB1F',\n 'Baseball': '\\uEB20',\n 'Soccer': '\\uEB21',\n 'MoreSports': '\\uEB22',\n 'AutoRacing': '\\uEB24',\n 'CollegeHoops': '\\uEB25',\n 'CollegeFootball': '\\uEB26',\n 'ProFootball': '\\uEB27',\n 'ProHockey': '\\uEB28',\n 'Rugby': '\\uEB2D',\n 'SubstitutionsIn': '\\uEB31',\n 'Tennis': '\\uEB33',\n 'Arrivals': '\\uEB34',\n 'Design': '\\uEB3C',\n 'Website': '\\uEB41',\n 'Drop': '\\uEB42',\n 'HistoricalWeather': '\\uEB43',\n 'SkiResorts': '\\uEB45',\n 'Snowflake': '\\uEB46',\n 'BusSolid': '\\uEB47',\n 'FerrySolid': '\\uEB48',\n 'AirplaneSolid': '\\uEB4C',\n 'TrainSolid': '\\uEB4D',\n 'Ticket': '\\uEB54',\n 'WifiWarning4': '\\uEB63',\n 'Devices4': '\\uEB66',\n 'AzureLogo': '\\uEB6A',\n 'BingLogo': '\\uEB6B',\n 'MSNLogo': '\\uEB6C',\n 'OutlookLogoInverse': '\\uEB6D',\n 'OfficeLogo': '\\uEB6E',\n 'SkypeLogo': '\\uEB6F',\n 'Door': '\\uEB75',\n 'EditMirrored': '\\uEB7E',\n 'GiftCard': '\\uEB8E',\n 'DoubleBookmark': '\\uEB8F',\n 'StatusErrorFull': '\\uEB90'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-5\"`,\n src: `url('${baseUrl}fabric-icons-5-f95ba260.woff') format('woff')`\n },\n icons: {\n 'Certificate': '\\uEB95',\n 'FastForward': '\\uEB9D',\n 'Rewind': '\\uEB9E',\n 'Photo2': '\\uEB9F',\n 'OpenSource': '\\uEBC2',\n 'Movers': '\\uEBCD',\n 'CloudDownload': '\\uEBD3',\n 'Family': '\\uEBDA',\n 'WindDirection': '\\uEBE6',\n 'Bug': '\\uEBE8',\n 'SiteScan': '\\uEBEC',\n 'BrowserScreenShot': '\\uEBED',\n 'F12DevTools': '\\uEBEE',\n 'CSS': '\\uEBEF',\n 'JS': '\\uEBF0',\n 'DeliveryTruck': '\\uEBF4',\n 'ReminderPerson': '\\uEBF7',\n 'ReminderGroup': '\\uEBF8',\n 'ReminderTime': '\\uEBF9',\n 'TabletMode': '\\uEBFC',\n 'Umbrella': '\\uEC04',\n 'NetworkTower': '\\uEC05',\n 'CityNext': '\\uEC06',\n 'CityNext2': '\\uEC07',\n 'Section': '\\uEC0C',\n 'OneNoteLogoInverse': '\\uEC0D',\n 'ToggleFilled': '\\uEC11',\n 'ToggleBorder': '\\uEC12',\n 'SliderThumb': '\\uEC13',\n 'ToggleThumb': '\\uEC14',\n 'Documentation': '\\uEC17',\n 'Badge': '\\uEC1B',\n 'Giftbox': '\\uEC1F',\n 'VisualStudioLogo': '\\uEC22',\n 'HomeGroup': '\\uEC26',\n 'ExcelLogoInverse': '\\uEC28',\n 'WordLogoInverse': '\\uEC29',\n 'PowerPointLogoInverse': '\\uEC2A',\n 'Cafe': '\\uEC32',\n 'SpeedHigh': '\\uEC4A',\n 'Commitments': '\\uEC4D',\n 'ThisPC': '\\uEC4E',\n 'MusicNote': '\\uEC4F',\n 'MicOff': '\\uEC54',\n 'PlaybackRate1x': '\\uEC57',\n 'EdgeLogo': '\\uEC60',\n 'CompletedSolid': '\\uEC61',\n 'AlbumRemove': '\\uEC62',\n 'MessageFill': '\\uEC70',\n 'TabletSelected': '\\uEC74',\n 'MobileSelected': '\\uEC75',\n 'LaptopSelected': '\\uEC76',\n 'TVMonitorSelected': '\\uEC77',\n 'DeveloperTools': '\\uEC7A',\n 'Shapes': '\\uEC7C',\n 'InsertTextBox': '\\uEC7D',\n 'LowerBrightness': '\\uEC8A',\n 'WebComponents': '\\uEC8B',\n 'OfflineStorage': '\\uEC8C',\n 'DOM': '\\uEC8D',\n 'CloudUpload': '\\uEC8E',\n 'ScrollUpDown': '\\uEC8F',\n 'DateTime': '\\uEC92',\n 'Event': '\\uECA3',\n 'Cake': '\\uECA4',\n 'Org': '\\uECA6',\n 'PartyLeader': '\\uECA7',\n 'DRM': '\\uECA8',\n 'CloudAdd': '\\uECA9',\n 'AppIconDefault': '\\uECAA',\n 'Photo2Add': '\\uECAB',\n 'Photo2Remove': '\\uECAC',\n 'Calories': '\\uECAD',\n 'POI': '\\uECAF',\n 'AddTo': '\\uECC8',\n 'RadioBtnOff': '\\uECCA',\n 'RadioBtnOn': '\\uECCB',\n 'ExploreContent': '\\uECCD',\n 'Product': '\\uECDC',\n 'ProgressLoopInner': '\\uECDE',\n 'ProgressLoopOuter': '\\uECDF',\n 'Blocked2': '\\uECE4',\n 'FangBody': '\\uECEB',\n 'Toolbox': '\\uECED',\n 'PageHeader': '\\uECEE',\n 'ChatInviteFriend': '\\uECFE',\n 'Brush': '\\uECFF',\n 'Shirt': '\\uED00',\n 'Crown': '\\uED01',\n 'Diamond': '\\uED02',\n 'ScaleUp': '\\uED09',\n 'QRCode': '\\uED14',\n 'Feedback': '\\uED15',\n 'SharepointLogoInverse': '\\uED18',\n 'YammerLogo': '\\uED19',\n 'Hide': '\\uED1A',\n 'Uneditable': '\\uED1D',\n 'ReturnToSession': '\\uED24',\n 'OpenFolderHorizontal': '\\uED25',\n 'CalendarMirrored': '\\uED28'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-6\"`,\n src: `url('${baseUrl}fabric-icons-6-ef6fd590.woff') format('woff')`\n },\n icons: {\n 'SwayLogoInverse': '\\uED29',\n 'OutOfOffice': '\\uED34',\n 'Trophy': '\\uED3F',\n 'ReopenPages': '\\uED50',\n 'EmojiTabSymbols': '\\uED58',\n 'AADLogo': '\\uED68',\n 'AccessLogo': '\\uED69',\n 'AdminALogoInverse32': '\\uED6A',\n 'AdminCLogoInverse32': '\\uED6B',\n 'AdminDLogoInverse32': '\\uED6C',\n 'AdminELogoInverse32': '\\uED6D',\n 'AdminLLogoInverse32': '\\uED6E',\n 'AdminMLogoInverse32': '\\uED6F',\n 'AdminOLogoInverse32': '\\uED70',\n 'AdminPLogoInverse32': '\\uED71',\n 'AdminSLogoInverse32': '\\uED72',\n 'AdminYLogoInverse32': '\\uED73',\n 'DelveLogoInverse': '\\uED76',\n 'ExchangeLogoInverse': '\\uED78',\n 'LyncLogo': '\\uED79',\n 'OfficeVideoLogoInverse': '\\uED7A',\n 'SocialListeningLogo': '\\uED7C',\n 'VisioLogoInverse': '\\uED7D',\n 'Balloons': '\\uED7E',\n 'Cat': '\\uED7F',\n 'MailAlert': '\\uED80',\n 'MailCheck': '\\uED81',\n 'MailLowImportance': '\\uED82',\n 'MailPause': '\\uED83',\n 'MailRepeat': '\\uED84',\n 'SecurityGroup': '\\uED85',\n 'Table': '\\uED86',\n 'VoicemailForward': '\\uED87',\n 'VoicemailReply': '\\uED88',\n 'Waffle': '\\uED89',\n 'RemoveEvent': '\\uED8A',\n 'EventInfo': '\\uED8B',\n 'ForwardEvent': '\\uED8C',\n 'WipePhone': '\\uED8D',\n 'AddOnlineMeeting': '\\uED8E',\n 'JoinOnlineMeeting': '\\uED8F',\n 'RemoveLink': '\\uED90',\n 'PeopleBlock': '\\uED91',\n 'PeopleRepeat': '\\uED92',\n 'PeopleAlert': '\\uED93',\n 'PeoplePause': '\\uED94',\n 'TransferCall': '\\uED95',\n 'AddPhone': '\\uED96',\n 'UnknownCall': '\\uED97',\n 'NoteReply': '\\uED98',\n 'NoteForward': '\\uED99',\n 'NotePinned': '\\uED9A',\n 'RemoveOccurrence': '\\uED9B',\n 'Timeline': '\\uED9C',\n 'EditNote': '\\uED9D',\n 'CircleHalfFull': '\\uED9E',\n 'Room': '\\uED9F',\n 'Unsubscribe': '\\uEDA0',\n 'Subscribe': '\\uEDA1',\n 'HardDrive': '\\uEDA2',\n 'RecurringTask': '\\uEDB2',\n 'TaskManager': '\\uEDB7',\n 'TaskManagerMirrored': '\\uEDB8',\n 'Combine': '\\uEDBB',\n 'Split': '\\uEDBC',\n 'DoubleChevronUp': '\\uEDBD',\n 'DoubleChevronLeft': '\\uEDBE',\n 'DoubleChevronRight': '\\uEDBF',\n 'TextBox': '\\uEDC2',\n 'TextField': '\\uEDC3',\n 'NumberField': '\\uEDC4',\n 'Dropdown': '\\uEDC5',\n 'PenWorkspace': '\\uEDC6',\n 'BookingsLogo': '\\uEDC7',\n 'ClassNotebookLogoInverse': '\\uEDC8',\n 'DelveAnalyticsLogo': '\\uEDCA',\n 'DocsLogoInverse': '\\uEDCB',\n 'Dynamics365Logo': '\\uEDCC',\n 'DynamicSMBLogo': '\\uEDCD',\n 'OfficeAssistantLogo': '\\uEDCE',\n 'OfficeStoreLogo': '\\uEDCF',\n 'OneNoteEduLogoInverse': '\\uEDD0',\n 'PlannerLogo': '\\uEDD1',\n 'PowerApps': '\\uEDD2',\n 'Suitcase': '\\uEDD3',\n 'ProjectLogoInverse': '\\uEDD4',\n 'CaretLeft8': '\\uEDD5',\n 'CaretRight8': '\\uEDD6',\n 'CaretUp8': '\\uEDD7',\n 'CaretDown8': '\\uEDD8',\n 'CaretLeftSolid8': '\\uEDD9',\n 'CaretRightSolid8': '\\uEDDA',\n 'CaretUpSolid8': '\\uEDDB',\n 'CaretDownSolid8': '\\uEDDC',\n 'ClearFormatting': '\\uEDDD',\n 'Superscript': '\\uEDDE',\n 'Subscript': '\\uEDDF',\n 'Strikethrough': '\\uEDE0',\n 'Export': '\\uEDE1',\n 'ExportMirrored': '\\uEDE2'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-7\"`,\n src: `url('${baseUrl}fabric-icons-7-2b97bb99.woff') format('woff')`\n },\n icons: {\n 'SingleBookmark': '\\uEDFF',\n 'SingleBookmarkSolid': '\\uEE00',\n 'DoubleChevronDown': '\\uEE04',\n 'FollowUser': '\\uEE05',\n 'ReplyAll': '\\uEE0A',\n 'WorkforceManagement': '\\uEE0F',\n 'RecruitmentManagement': '\\uEE12',\n 'Questionnaire': '\\uEE19',\n 'ManagerSelfService': '\\uEE23',\n 'ProductionFloorManagement': '\\uEE29',\n 'ProductRelease': '\\uEE2E',\n 'ProductVariant': '\\uEE30',\n 'ReplyMirrored': '\\uEE35',\n 'ReplyAllMirrored': '\\uEE36',\n 'Medal': '\\uEE38',\n 'AddGroup': '\\uEE3D',\n 'QuestionnaireMirrored': '\\uEE4B',\n 'CloudImportExport': '\\uEE55',\n 'TemporaryUser': '\\uEE58',\n 'CaretSolid16': '\\uEE62',\n 'GroupedDescending': '\\uEE66',\n 'GroupedAscending': '\\uEE67',\n 'AwayStatus': '\\uEE6A',\n 'MyMoviesTV': '\\uEE6C',\n 'GenericScan': '\\uEE6F',\n 'AustralianRules': '\\uEE70',\n 'WifiEthernet': '\\uEE77',\n 'TrackersMirrored': '\\uEE92',\n 'DateTimeMirrored': '\\uEE93',\n 'StopSolid': '\\uEE95',\n 'DoubleChevronUp12': '\\uEE96',\n 'DoubleChevronDown12': '\\uEE97',\n 'DoubleChevronLeft12': '\\uEE98',\n 'DoubleChevronRight12': '\\uEE99',\n 'CalendarAgenda': '\\uEE9A',\n 'ConnectVirtualMachine': '\\uEE9D',\n 'AddEvent': '\\uEEB5',\n 'AssetLibrary': '\\uEEB6',\n 'DataConnectionLibrary': '\\uEEB7',\n 'DocLibrary': '\\uEEB8',\n 'FormLibrary': '\\uEEB9',\n 'FormLibraryMirrored': '\\uEEBA',\n 'ReportLibrary': '\\uEEBB',\n 'ReportLibraryMirrored': '\\uEEBC',\n 'ContactCard': '\\uEEBD',\n 'CustomList': '\\uEEBE',\n 'CustomListMirrored': '\\uEEBF',\n 'IssueTracking': '\\uEEC0',\n 'IssueTrackingMirrored': '\\uEEC1',\n 'PictureLibrary': '\\uEEC2',\n 'OfficeAddinsLogo': '\\uEEC7',\n 'OfflineOneDriveParachute': '\\uEEC8',\n 'OfflineOneDriveParachuteDisabled': '\\uEEC9',\n 'TriangleSolidUp12': '\\uEECC',\n 'TriangleSolidDown12': '\\uEECD',\n 'TriangleSolidLeft12': '\\uEECE',\n 'TriangleSolidRight12': '\\uEECF',\n 'TriangleUp12': '\\uEED0',\n 'TriangleDown12': '\\uEED1',\n 'TriangleLeft12': '\\uEED2',\n 'TriangleRight12': '\\uEED3',\n 'ArrowUpRight8': '\\uEED4',\n 'ArrowDownRight8': '\\uEED5',\n 'DocumentSet': '\\uEED6',\n 'GoToDashboard': '\\uEEED',\n 'DelveAnalytics': '\\uEEEE',\n 'ArrowUpRightMirrored8': '\\uEEEF',\n 'ArrowDownRightMirrored8': '\\uEEF0',\n 'CompanyDirectory': '\\uEF0D',\n 'OpenEnrollment': '\\uEF1C',\n 'CompanyDirectoryMirrored': '\\uEF2B',\n 'OneDriveAdd': '\\uEF32',\n 'ProfileSearch': '\\uEF35',\n 'Header2': '\\uEF36',\n 'Header3': '\\uEF37',\n 'Header4': '\\uEF38',\n 'RingerSolid': '\\uEF3A',\n 'Eyedropper': '\\uEF3C',\n 'MarketDown': '\\uEF42',\n 'CalendarWorkWeek': '\\uEF51',\n 'SidePanel': '\\uEF52',\n 'GlobeFavorite': '\\uEF53',\n 'CaretTopLeftSolid8': '\\uEF54',\n 'CaretTopRightSolid8': '\\uEF55',\n 'ViewAll2': '\\uEF56',\n 'DocumentReply': '\\uEF57',\n 'PlayerSettings': '\\uEF58',\n 'ReceiptForward': '\\uEF59',\n 'ReceiptReply': '\\uEF5A',\n 'ReceiptCheck': '\\uEF5B',\n 'Fax': '\\uEF5C',\n 'RecurringEvent': '\\uEF5D',\n 'ReplyAlt': '\\uEF5E',\n 'ReplyAllAlt': '\\uEF5F',\n 'EditStyle': '\\uEF60',\n 'EditMail': '\\uEF61',\n 'Lifesaver': '\\uEF62',\n 'LifesaverLock': '\\uEF63',\n 'InboxCheck': '\\uEF64',\n 'FolderSearch': '\\uEF65'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-8\"`,\n src: `url('${baseUrl}fabric-icons-8-6fdf1528.woff') format('woff')`\n },\n icons: {\n 'CollapseMenu': '\\uEF66',\n 'ExpandMenu': '\\uEF67',\n 'Boards': '\\uEF68',\n 'SunAdd': '\\uEF69',\n 'SunQuestionMark': '\\uEF6A',\n 'LandscapeOrientation': '\\uEF6B',\n 'DocumentSearch': '\\uEF6C',\n 'PublicCalendar': '\\uEF6D',\n 'PublicContactCard': '\\uEF6E',\n 'PublicEmail': '\\uEF6F',\n 'PublicFolder': '\\uEF70',\n 'WordDocument': '\\uEF71',\n 'PowerPointDocument': '\\uEF72',\n 'ExcelDocument': '\\uEF73',\n 'GroupedList': '\\uEF74',\n 'ClassroomLogo': '\\uEF75',\n 'Sections': '\\uEF76',\n 'EditPhoto': '\\uEF77',\n 'Starburst': '\\uEF78',\n 'ShareiOS': '\\uEF79',\n 'AirTickets': '\\uEF7A',\n 'PencilReply': '\\uEF7B',\n 'Tiles2': '\\uEF7C',\n 'SkypeCircleCheck': '\\uEF7D',\n 'SkypeCircleClock': '\\uEF7E',\n 'SkypeCircleMinus': '\\uEF7F',\n 'SkypeMessage': '\\uEF83',\n 'ClosedCaption': '\\uEF84',\n 'ATPLogo': '\\uEF85',\n 'OfficeFormsLogoInverse': '\\uEF86',\n 'RecycleBin': '\\uEF87',\n 'EmptyRecycleBin': '\\uEF88',\n 'Hide2': '\\uEF89',\n 'Breadcrumb': '\\uEF8C',\n 'BirthdayCake': '\\uEF8D',\n 'TimeEntry': '\\uEF95',\n 'CRMProcesses': '\\uEFB1',\n 'PageEdit': '\\uEFB6',\n 'PageArrowRight': '\\uEFB8',\n 'PageRemove': '\\uEFBA',\n 'Database': '\\uEFC7',\n 'DataManagementSettings': '\\uEFC8',\n 'CRMServices': '\\uEFD2',\n 'EditContact': '\\uEFD3',\n 'ConnectContacts': '\\uEFD4',\n 'AppIconDefaultAdd': '\\uEFDA',\n 'AppIconDefaultList': '\\uEFDE',\n 'ActivateOrders': '\\uEFE0',\n 'DeactivateOrders': '\\uEFE1',\n 'ProductCatalog': '\\uEFE8',\n 'ScatterChart': '\\uEFEB',\n 'AccountActivity': '\\uEFF4',\n 'DocumentManagement': '\\uEFFC',\n 'CRMReport': '\\uEFFE',\n 'KnowledgeArticle': '\\uF000',\n 'Relationship': '\\uF003',\n 'HomeVerify': '\\uF00E',\n 'ZipFolder': '\\uF012',\n 'SurveyQuestions': '\\uF01B',\n 'TextDocument': '\\uF029',\n 'TextDocumentShared': '\\uF02B',\n 'PageCheckedOut': '\\uF02C',\n 'PageShared': '\\uF02D',\n 'SaveAndClose': '\\uF038',\n 'Script': '\\uF03A',\n 'Archive': '\\uF03F',\n 'ActivityFeed': '\\uF056',\n 'Compare': '\\uF057',\n 'EventDate': '\\uF059',\n 'ArrowUpRight': '\\uF069',\n 'CaretRight': '\\uF06B',\n 'SetAction': '\\uF071',\n 'ChatBot': '\\uF08B',\n 'CaretSolidLeft': '\\uF08D',\n 'CaretSolidDown': '\\uF08E',\n 'CaretSolidRight': '\\uF08F',\n 'CaretSolidUp': '\\uF090',\n 'PowerAppsLogo': '\\uF091',\n 'PowerApps2Logo': '\\uF092',\n 'SearchIssue': '\\uF09A',\n 'SearchIssueMirrored': '\\uF09B',\n 'FabricAssetLibrary': '\\uF09C',\n 'FabricDataConnectionLibrary': '\\uF09D',\n 'FabricDocLibrary': '\\uF09E',\n 'FabricFormLibrary': '\\uF09F',\n 'FabricFormLibraryMirrored': '\\uF0A0',\n 'FabricReportLibrary': '\\uF0A1',\n 'FabricReportLibraryMirrored': '\\uF0A2',\n 'FabricPublicFolder': '\\uF0A3',\n 'FabricFolderSearch': '\\uF0A4',\n 'FabricMovetoFolder': '\\uF0A5',\n 'FabricUnsyncFolder': '\\uF0A6',\n 'FabricSyncFolder': '\\uF0A7',\n 'FabricOpenFolderHorizontal': '\\uF0A8',\n 'FabricFolder': '\\uF0A9',\n 'FabricFolderFill': '\\uF0AA',\n 'FabricNewFolder': '\\uF0AB',\n 'FabricPictureLibrary': '\\uF0AC',\n 'PhotoVideoMedia': '\\uF0B1',\n 'AddFavorite': '\\uF0C8'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-9\"`,\n src: `url('${baseUrl}fabric-icons-9-c6162b42.woff') format('woff')`\n },\n icons: {\n 'AddFavoriteFill': '\\uF0C9',\n 'BufferTimeBefore': '\\uF0CF',\n 'BufferTimeAfter': '\\uF0D0',\n 'BufferTimeBoth': '\\uF0D1',\n 'PublishContent': '\\uF0D4',\n 'ClipboardList': '\\uF0E3',\n 'ClipboardListMirrored': '\\uF0E4',\n 'CannedChat': '\\uF0F2',\n 'SkypeForBusinessLogo': '\\uF0FC',\n 'TabCenter': '\\uF100',\n 'PageCheckedin': '\\uF104',\n 'PageList': '\\uF106',\n 'ReadOutLoud': '\\uF112',\n 'CaretBottomLeftSolid8': '\\uF121',\n 'CaretBottomRightSolid8': '\\uF122',\n 'FolderHorizontal': '\\uF12B',\n 'MicrosoftStaffhubLogo': '\\uF130',\n 'GiftboxOpen': '\\uF133',\n 'StatusCircleOuter': '\\uF136',\n 'StatusCircleInner': '\\uF137',\n 'StatusCircleRing': '\\uF138',\n 'StatusTriangleOuter': '\\uF139',\n 'StatusTriangleInner': '\\uF13A',\n 'StatusTriangleExclamation': '\\uF13B',\n 'StatusCircleExclamation': '\\uF13C',\n 'StatusCircleErrorX': '\\uF13D',\n 'StatusCircleInfo': '\\uF13F',\n 'StatusCircleBlock': '\\uF140',\n 'StatusCircleBlock2': '\\uF141',\n 'StatusCircleQuestionMark': '\\uF142',\n 'StatusCircleSync': '\\uF143',\n 'Toll': '\\uF160',\n 'ExploreContentSingle': '\\uF164',\n 'CollapseContent': '\\uF165',\n 'CollapseContentSingle': '\\uF166',\n 'InfoSolid': '\\uF167',\n 'GroupList': '\\uF168',\n 'ProgressRingDots': '\\uF16A',\n 'CaloriesAdd': '\\uF172',\n 'BranchFork': '\\uF173',\n 'MuteChat': '\\uF17A',\n 'AddHome': '\\uF17B',\n 'AddWork': '\\uF17C',\n 'MobileReport': '\\uF18A',\n 'ScaleVolume': '\\uF18C',\n 'HardDriveGroup': '\\uF18F',\n 'FastMode': '\\uF19A',\n 'ToggleLeft': '\\uF19E',\n 'ToggleRight': '\\uF19F',\n 'TriangleShape': '\\uF1A7',\n 'RectangleShape': '\\uF1A9',\n 'CubeShape': '\\uF1AA',\n 'Trophy2': '\\uF1AE',\n 'BucketColor': '\\uF1B6',\n 'BucketColorFill': '\\uF1B7',\n 'Taskboard': '\\uF1C2',\n 'SingleColumn': '\\uF1D3',\n 'DoubleColumn': '\\uF1D4',\n 'TripleColumn': '\\uF1D5',\n 'ColumnLeftTwoThirds': '\\uF1D6',\n 'ColumnRightTwoThirds': '\\uF1D7',\n 'AccessLogoFill': '\\uF1DB',\n 'AnalyticsLogo': '\\uF1DE',\n 'AnalyticsQuery': '\\uF1DF',\n 'NewAnalyticsQuery': '\\uF1E0',\n 'AnalyticsReport': '\\uF1E1',\n 'WordLogo': '\\uF1E3',\n 'WordLogoFill': '\\uF1E4',\n 'ExcelLogo': '\\uF1E5',\n 'ExcelLogoFill': '\\uF1E6',\n 'OneNoteLogo': '\\uF1E7',\n 'OneNoteLogoFill': '\\uF1E8',\n 'OutlookLogo': '\\uF1E9',\n 'OutlookLogoFill': '\\uF1EA',\n 'PowerPointLogo': '\\uF1EB',\n 'PowerPointLogoFill': '\\uF1EC',\n 'PublisherLogo': '\\uF1ED',\n 'PublisherLogoFill': '\\uF1EE',\n 'ScheduleEventAction': '\\uF1EF',\n 'FlameSolid': '\\uF1F3',\n 'ServerProcesses': '\\uF1FE',\n 'Server': '\\uF201',\n 'SaveAll': '\\uF203',\n 'LinkedInLogo': '\\uF20A',\n 'Decimals': '\\uF218',\n 'SidePanelMirrored': '\\uF221',\n 'ProtectRestrict': '\\uF22A',\n 'Blog': '\\uF22B',\n 'UnknownMirrored': '\\uF22E',\n 'PublicContactCardMirrored': '\\uF230',\n 'GridViewSmall': '\\uF232',\n 'GridViewMedium': '\\uF233',\n 'GridViewLarge': '\\uF234',\n 'Step': '\\uF241',\n 'StepInsert': '\\uF242',\n 'StepShared': '\\uF243',\n 'StepSharedAdd': '\\uF244',\n 'StepSharedInsert': '\\uF245',\n 'ViewDashboard': '\\uF246',\n 'ViewList': '\\uF247'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-10\"`,\n src: `url('${baseUrl}fabric-icons-10-c4ded8e4.woff') format('woff')`\n },\n icons: {\n 'ViewListGroup': '\\uF248',\n 'ViewListTree': '\\uF249',\n 'TriggerAuto': '\\uF24A',\n 'TriggerUser': '\\uF24B',\n 'PivotChart': '\\uF24C',\n 'StackedBarChart': '\\uF24D',\n 'StackedLineChart': '\\uF24E',\n 'BuildQueue': '\\uF24F',\n 'BuildQueueNew': '\\uF250',\n 'UserFollowed': '\\uF25C',\n 'ContactLink': '\\uF25F',\n 'Stack': '\\uF26F',\n 'Bullseye': '\\uF272',\n 'VennDiagram': '\\uF273',\n 'FiveTileGrid': '\\uF274',\n 'FocalPoint': '\\uF277',\n 'Insert': '\\uF278',\n 'RingerRemove': '\\uF279',\n 'TeamsLogoInverse': '\\uF27A',\n 'TeamsLogo': '\\uF27B',\n 'TeamsLogoFill': '\\uF27C',\n 'SkypeForBusinessLogoFill': '\\uF27D',\n 'SharepointLogo': '\\uF27E',\n 'SharepointLogoFill': '\\uF27F',\n 'DelveLogo': '\\uF280',\n 'DelveLogoFill': '\\uF281',\n 'OfficeVideoLogo': '\\uF282',\n 'OfficeVideoLogoFill': '\\uF283',\n 'ExchangeLogo': '\\uF284',\n 'ExchangeLogoFill': '\\uF285',\n 'Signin': '\\uF286',\n 'DocumentApproval': '\\uF28B',\n 'CloneToDesktop': '\\uF28C',\n 'InstallToDrive': '\\uF28D',\n 'Blur': '\\uF28E',\n 'Build': '\\uF28F',\n 'ProcessMetaTask': '\\uF290',\n 'BranchFork2': '\\uF291',\n 'BranchLocked': '\\uF292',\n 'BranchCommit': '\\uF293',\n 'BranchCompare': '\\uF294',\n 'BranchMerge': '\\uF295',\n 'BranchPullRequest': '\\uF296',\n 'BranchSearch': '\\uF297',\n 'BranchShelveset': '\\uF298',\n 'RawSource': '\\uF299',\n 'MergeDuplicate': '\\uF29A',\n 'RowsGroup': '\\uF29B',\n 'RowsChild': '\\uF29C',\n 'Deploy': '\\uF29D',\n 'Redeploy': '\\uF29E',\n 'ServerEnviroment': '\\uF29F',\n 'VisioDiagram': '\\uF2A0',\n 'HighlightMappedShapes': '\\uF2A1',\n 'TextCallout': '\\uF2A2',\n 'IconSetsFlag': '\\uF2A4',\n 'VisioLogo': '\\uF2A7',\n 'VisioLogoFill': '\\uF2A8',\n 'VisioDocument': '\\uF2A9',\n 'TimelineProgress': '\\uF2AA',\n 'TimelineDelivery': '\\uF2AB',\n 'Backlog': '\\uF2AC',\n 'TeamFavorite': '\\uF2AD',\n 'TaskGroup': '\\uF2AE',\n 'TaskGroupMirrored': '\\uF2AF',\n 'ScopeTemplate': '\\uF2B0',\n 'AssessmentGroupTemplate': '\\uF2B1',\n 'NewTeamProject': '\\uF2B2',\n 'CommentAdd': '\\uF2B3',\n 'CommentNext': '\\uF2B4',\n 'CommentPrevious': '\\uF2B5',\n 'ShopServer': '\\uF2B6',\n 'LocaleLanguage': '\\uF2B7',\n 'QueryList': '\\uF2B8',\n 'UserSync': '\\uF2B9',\n 'UserPause': '\\uF2BA',\n 'StreamingOff': '\\uF2BB',\n 'ArrowTallUpLeft': '\\uF2BD',\n 'ArrowTallUpRight': '\\uF2BE',\n 'ArrowTallDownLeft': '\\uF2BF',\n 'ArrowTallDownRight': '\\uF2C0',\n 'FieldEmpty': '\\uF2C1',\n 'FieldFilled': '\\uF2C2',\n 'FieldChanged': '\\uF2C3',\n 'FieldNotChanged': '\\uF2C4',\n 'RingerOff': '\\uF2C5',\n 'PlayResume': '\\uF2C6',\n 'BulletedList2': '\\uF2C7',\n 'BulletedList2Mirrored': '\\uF2C8',\n 'ImageCrosshair': '\\uF2C9',\n 'GitGraph': '\\uF2CA',\n 'Repo': '\\uF2CB',\n 'RepoSolid': '\\uF2CC',\n 'FolderQuery': '\\uF2CD',\n 'FolderList': '\\uF2CE',\n 'FolderListMirrored': '\\uF2CF',\n 'LocationOutline': '\\uF2D0',\n 'POISolid': '\\uF2D1',\n 'CalculatorNotEqualTo': '\\uF2D2',\n 'BoxSubtractSolid': '\\uF2D3'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-11\"`,\n src: `url('${baseUrl}fabric-icons-11-2a8393d6.woff') format('woff')`\n },\n icons: {\n 'BoxAdditionSolid': '\\uF2D4',\n 'BoxMultiplySolid': '\\uF2D5',\n 'BoxPlaySolid': '\\uF2D6',\n 'BoxCheckmarkSolid': '\\uF2D7',\n 'CirclePauseSolid': '\\uF2D8',\n 'CirclePause': '\\uF2D9',\n 'MSNVideosSolid': '\\uF2DA',\n 'CircleStopSolid': '\\uF2DB',\n 'CircleStop': '\\uF2DC',\n 'NavigateBack': '\\uF2DD',\n 'NavigateBackMirrored': '\\uF2DE',\n 'NavigateForward': '\\uF2DF',\n 'NavigateForwardMirrored': '\\uF2E0',\n 'UnknownSolid': '\\uF2E1',\n 'UnknownMirroredSolid': '\\uF2E2',\n 'CircleAddition': '\\uF2E3',\n 'CircleAdditionSolid': '\\uF2E4',\n 'FilePDB': '\\uF2E5',\n 'FileTemplate': '\\uF2E6',\n 'FileSQL': '\\uF2E7',\n 'FileJAVA': '\\uF2E8',\n 'FileASPX': '\\uF2E9',\n 'FileCSS': '\\uF2EA',\n 'FileSass': '\\uF2EB',\n 'FileLess': '\\uF2EC',\n 'FileHTML': '\\uF2ED',\n 'JavaScriptLanguage': '\\uF2EE',\n 'CSharpLanguage': '\\uF2EF',\n 'CSharp': '\\uF2F0',\n 'VisualBasicLanguage': '\\uF2F1',\n 'VB': '\\uF2F2',\n 'CPlusPlusLanguage': '\\uF2F3',\n 'CPlusPlus': '\\uF2F4',\n 'FSharpLanguage': '\\uF2F5',\n 'FSharp': '\\uF2F6',\n 'TypeScriptLanguage': '\\uF2F7',\n 'PythonLanguage': '\\uF2F8',\n 'PY': '\\uF2F9',\n 'CoffeeScript': '\\uF2FA',\n 'MarkDownLanguage': '\\uF2FB',\n 'FullWidth': '\\uF2FE',\n 'FullWidthEdit': '\\uF2FF',\n 'Plug': '\\uF300',\n 'PlugSolid': '\\uF301',\n 'PlugConnected': '\\uF302',\n 'PlugDisconnected': '\\uF303',\n 'UnlockSolid': '\\uF304',\n 'Variable': '\\uF305',\n 'Parameter': '\\uF306',\n 'CommentUrgent': '\\uF307',\n 'Storyboard': '\\uF308',\n 'DiffInline': '\\uF309',\n 'DiffSideBySide': '\\uF30A',\n 'ImageDiff': '\\uF30B',\n 'ImagePixel': '\\uF30C',\n 'FileBug': '\\uF30D',\n 'FileCode': '\\uF30E',\n 'FileComment': '\\uF30F',\n 'BusinessHoursSign': '\\uF310',\n 'FileImage': '\\uF311',\n 'FileSymlink': '\\uF312',\n 'AutoFillTemplate': '\\uF313',\n 'WorkItem': '\\uF314',\n 'WorkItemBug': '\\uF315',\n 'LogRemove': '\\uF316',\n 'ColumnOptions': '\\uF317',\n 'Packages': '\\uF318',\n 'BuildIssue': '\\uF319',\n 'AssessmentGroup': '\\uF31A',\n 'VariableGroup': '\\uF31B',\n 'FullHistory': '\\uF31C',\n 'Wheelchair': '\\uF31F',\n 'SingleColumnEdit': '\\uF321',\n 'DoubleColumnEdit': '\\uF322',\n 'TripleColumnEdit': '\\uF323',\n 'ColumnLeftTwoThirdsEdit': '\\uF324',\n 'ColumnRightTwoThirdsEdit': '\\uF325',\n 'StreamLogo': '\\uF329',\n 'PassiveAuthentication': '\\uF32A',\n 'AlertSolid': '\\uF331',\n 'MegaphoneSolid': '\\uF332',\n 'TaskSolid': '\\uF333',\n 'ConfigurationSolid': '\\uF334',\n 'BugSolid': '\\uF335',\n 'CrownSolid': '\\uF336',\n 'Trophy2Solid': '\\uF337',\n 'QuickNoteSolid': '\\uF338',\n 'ConstructionConeSolid': '\\uF339',\n 'PageListSolid': '\\uF33A',\n 'PageListMirroredSolid': '\\uF33B',\n 'StarburstSolid': '\\uF33C',\n 'ReadingModeSolid': '\\uF33D',\n 'SadSolid': '\\uF33E',\n 'HealthSolid': '\\uF33F',\n 'ShieldSolid': '\\uF340',\n 'GiftBoxSolid': '\\uF341',\n 'ShoppingCartSolid': '\\uF342',\n 'MailSolid': '\\uF343',\n 'ChatSolid': '\\uF344',\n 'RibbonSolid': '\\uF345'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-12\"`,\n src: `url('${baseUrl}fabric-icons-12-7e945a1e.woff') format('woff')`\n },\n icons: {\n 'FinancialSolid': '\\uF346',\n 'FinancialMirroredSolid': '\\uF347',\n 'HeadsetSolid': '\\uF348',\n 'PermissionsSolid': '\\uF349',\n 'ParkingSolid': '\\uF34A',\n 'ParkingMirroredSolid': '\\uF34B',\n 'DiamondSolid': '\\uF34C',\n 'AsteriskSolid': '\\uF34D',\n 'OfflineStorageSolid': '\\uF34E',\n 'BankSolid': '\\uF34F',\n 'DecisionSolid': '\\uF350',\n 'Parachute': '\\uF351',\n 'ParachuteSolid': '\\uF352',\n 'FiltersSolid': '\\uF353',\n 'ColorSolid': '\\uF354',\n 'ReviewSolid': '\\uF355',\n 'ReviewRequestSolid': '\\uF356',\n 'ReviewRequestMirroredSolid': '\\uF357',\n 'ReviewResponseSolid': '\\uF358',\n 'FeedbackRequestSolid': '\\uF359',\n 'FeedbackRequestMirroredSolid': '\\uF35A',\n 'FeedbackResponseSolid': '\\uF35B',\n 'WorkItemBar': '\\uF35C',\n 'WorkItemBarSolid': '\\uF35D',\n 'Separator': '\\uF35E',\n 'NavigateExternalInline': '\\uF35F',\n 'PlanView': '\\uF360',\n 'TimelineMatrixView': '\\uF361',\n 'EngineeringGroup': '\\uF362',\n 'ProjectCollection': '\\uF363',\n 'CaretBottomRightCenter8': '\\uF364',\n 'CaretBottomLeftCenter8': '\\uF365',\n 'CaretTopRightCenter8': '\\uF366',\n 'CaretTopLeftCenter8': '\\uF367',\n 'DonutChart': '\\uF368',\n 'ChevronUnfold10': '\\uF369',\n 'ChevronFold10': '\\uF36A',\n 'DoubleChevronDown8': '\\uF36B',\n 'DoubleChevronUp8': '\\uF36C',\n 'DoubleChevronLeft8': '\\uF36D',\n 'DoubleChevronRight8': '\\uF36E',\n 'ChevronDownEnd6': '\\uF36F',\n 'ChevronUpEnd6': '\\uF370',\n 'ChevronLeftEnd6': '\\uF371',\n 'ChevronRightEnd6': '\\uF372',\n 'ContextMenu': '\\uF37C',\n 'AzureAPIManagement': '\\uF37F',\n 'AzureServiceEndpoint': '\\uF380',\n 'VSTSLogo': '\\uF381',\n 'VSTSAltLogo1': '\\uF382',\n 'VSTSAltLogo2': '\\uF383',\n 'FileTypeSolution': '\\uF387',\n 'WordLogoInverse16': '\\uF390',\n 'WordLogo16': '\\uF391',\n 'WordLogoFill16': '\\uF392',\n 'PowerPointLogoInverse16': '\\uF393',\n 'PowerPointLogo16': '\\uF394',\n 'PowerPointLogoFill16': '\\uF395',\n 'ExcelLogoInverse16': '\\uF396',\n 'ExcelLogo16': '\\uF397',\n 'ExcelLogoFill16': '\\uF398',\n 'OneNoteLogoInverse16': '\\uF399',\n 'OneNoteLogo16': '\\uF39A',\n 'OneNoteLogoFill16': '\\uF39B',\n 'OutlookLogoInverse16': '\\uF39C',\n 'OutlookLogo16': '\\uF39D',\n 'OutlookLogoFill16': '\\uF39E',\n 'PublisherLogoInverse16': '\\uF39F',\n 'PublisherLogo16': '\\uF3A0',\n 'PublisherLogoFill16': '\\uF3A1',\n 'VisioLogoInverse16': '\\uF3A2',\n 'VisioLogo16': '\\uF3A3',\n 'VisioLogoFill16': '\\uF3A4',\n 'TestBeaker': '\\uF3A5',\n 'TestBeakerSolid': '\\uF3A6',\n 'TestExploreSolid': '\\uF3A7',\n 'TestAutoSolid': '\\uF3A8',\n 'TestUserSolid': '\\uF3A9',\n 'TestImpactSolid': '\\uF3AA',\n 'TestPlan': '\\uF3AB',\n 'TestStep': '\\uF3AC',\n 'TestParameter': '\\uF3AD',\n 'TestSuite': '\\uF3AE',\n 'TestCase': '\\uF3AF',\n 'Sprint': '\\uF3B0',\n 'SignOut': '\\uF3B1',\n 'TriggerApproval': '\\uF3B2',\n 'Rocket': '\\uF3B3',\n 'AzureKeyVault': '\\uF3B4',\n 'Onboarding': '\\uF3BA',\n 'Transition': '\\uF3BC',\n 'LikeSolid': '\\uF3BF',\n 'DislikeSolid': '\\uF3C0',\n 'CRMCustomerInsightsApp': '\\uF3C8',\n 'EditCreate': '\\uF3C9',\n 'PlayReverseResume': '\\uF3E4',\n 'PlayReverse': '\\uF3E5',\n 'SearchData': '\\uF3F1',\n 'UnSetColor': '\\uF3F9',\n 'DeclineCall': '\\uF405'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-13\"`,\n src: `url('${baseUrl}fabric-icons-13-c3989a02.woff') format('woff')`\n },\n icons: {\n 'RectangularClipping': '\\uF407',\n 'TeamsLogo16': '\\uF40A',\n 'TeamsLogoFill16': '\\uF40B',\n 'Spacer': '\\uF40D',\n 'SkypeLogo16': '\\uF40E',\n 'SkypeForBusinessLogo16': '\\uF40F',\n 'SkypeForBusinessLogoFill16': '\\uF410',\n 'FilterSolid': '\\uF412',\n 'MailUndelivered': '\\uF415',\n 'MailTentative': '\\uF416',\n 'MailTentativeMirrored': '\\uF417',\n 'MailReminder': '\\uF418',\n 'ReceiptUndelivered': '\\uF419',\n 'ReceiptTentative': '\\uF41A',\n 'ReceiptTentativeMirrored': '\\uF41B',\n 'Inbox': '\\uF41C',\n 'IRMReply': '\\uF41D',\n 'IRMReplyMirrored': '\\uF41E',\n 'IRMForward': '\\uF41F',\n 'IRMForwardMirrored': '\\uF420',\n 'VoicemailIRM': '\\uF421',\n 'EventAccepted': '\\uF422',\n 'EventTentative': '\\uF423',\n 'EventTentativeMirrored': '\\uF424',\n 'EventDeclined': '\\uF425',\n 'IDBadge': '\\uF427',\n 'BackgroundColor': '\\uF42B',\n 'OfficeFormsLogoInverse16': '\\uF433',\n 'OfficeFormsLogo': '\\uF434',\n 'OfficeFormsLogoFill': '\\uF435',\n 'OfficeFormsLogo16': '\\uF436',\n 'OfficeFormsLogoFill16': '\\uF437',\n 'OfficeFormsLogoInverse24': '\\uF43A',\n 'OfficeFormsLogo24': '\\uF43B',\n 'OfficeFormsLogoFill24': '\\uF43C',\n 'PageLock': '\\uF43F',\n 'NotExecuted': '\\uF440',\n 'NotImpactedSolid': '\\uF441',\n 'FieldReadOnly': '\\uF442',\n 'FieldRequired': '\\uF443',\n 'BacklogBoard': '\\uF444',\n 'ExternalBuild': '\\uF445',\n 'ExternalTFVC': '\\uF446',\n 'ExternalXAML': '\\uF447',\n 'IssueSolid': '\\uF448',\n 'DefectSolid': '\\uF449',\n 'LadybugSolid': '\\uF44A',\n 'NugetLogo': '\\uF44C',\n 'TFVCLogo': '\\uF44D',\n 'ProjectLogo32': '\\uF47E',\n 'ProjectLogoFill32': '\\uF47F',\n 'ProjectLogo16': '\\uF480',\n 'ProjectLogoFill16': '\\uF481',\n 'SwayLogo32': '\\uF482',\n 'SwayLogoFill32': '\\uF483',\n 'SwayLogo16': '\\uF484',\n 'SwayLogoFill16': '\\uF485',\n 'ClassNotebookLogo32': '\\uF486',\n 'ClassNotebookLogoFill32': '\\uF487',\n 'ClassNotebookLogo16': '\\uF488',\n 'ClassNotebookLogoFill16': '\\uF489',\n 'ClassNotebookLogoInverse32': '\\uF48A',\n 'ClassNotebookLogoInverse16': '\\uF48B',\n 'StaffNotebookLogo32': '\\uF48C',\n 'StaffNotebookLogoFill32': '\\uF48D',\n 'StaffNotebookLogo16': '\\uF48E',\n 'StaffNotebookLogoFill16': '\\uF48F',\n 'StaffNotebookLogoInverted32': '\\uF490',\n 'StaffNotebookLogoInverted16': '\\uF491',\n 'KaizalaLogo': '\\uF492',\n 'TaskLogo': '\\uF493',\n 'ProtectionCenterLogo32': '\\uF494',\n 'GallatinLogo': '\\uF496',\n 'Globe2': '\\uF49A',\n 'Guitar': '\\uF49B',\n 'Breakfast': '\\uF49C',\n 'Brunch': '\\uF49D',\n 'BeerMug': '\\uF49E',\n 'Vacation': '\\uF49F',\n 'Teeth': '\\uF4A0',\n 'Taxi': '\\uF4A1',\n 'Chopsticks': '\\uF4A2',\n 'SyncOccurence': '\\uF4A3',\n 'UnsyncOccurence': '\\uF4A4',\n 'GIF': '\\uF4A9',\n 'PrimaryCalendar': '\\uF4AE',\n 'SearchCalendar': '\\uF4AF',\n 'VideoOff': '\\uF4B0',\n 'MicrosoftFlowLogo': '\\uF4B1',\n 'BusinessCenterLogo': '\\uF4B2',\n 'ToDoLogoBottom': '\\uF4B3',\n 'ToDoLogoTop': '\\uF4B4',\n 'EditSolid12': '\\uF4B5',\n 'EditSolidMirrored12': '\\uF4B6',\n 'UneditableSolid12': '\\uF4B7',\n 'UneditableSolidMirrored12': '\\uF4B8',\n 'UneditableMirrored': '\\uF4B9',\n 'AdminALogo32': '\\uF4BA',\n 'AdminALogoFill32': '\\uF4BB',\n 'ToDoLogoInverse': '\\uF4BC'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-14\"`,\n src: `url('${baseUrl}fabric-icons-14-5cf58db8.woff') format('woff')`\n },\n icons: {\n 'Snooze': '\\uF4BD',\n 'WaffleOffice365': '\\uF4E0',\n 'ImageSearch': '\\uF4E8',\n 'NewsSearch': '\\uF4E9',\n 'VideoSearch': '\\uF4EA',\n 'R': '\\uF4EB',\n 'FontColorA': '\\uF4EC',\n 'FontColorSwatch': '\\uF4ED',\n 'LightWeight': '\\uF4EE',\n 'NormalWeight': '\\uF4EF',\n 'SemiboldWeight': '\\uF4F0',\n 'GroupObject': '\\uF4F1',\n 'UngroupObject': '\\uF4F2',\n 'AlignHorizontalLeft': '\\uF4F3',\n 'AlignHorizontalCenter': '\\uF4F4',\n 'AlignHorizontalRight': '\\uF4F5',\n 'AlignVerticalTop': '\\uF4F6',\n 'AlignVerticalCenter': '\\uF4F7',\n 'AlignVerticalBottom': '\\uF4F8',\n 'HorizontalDistributeCenter': '\\uF4F9',\n 'VerticalDistributeCenter': '\\uF4FA',\n 'Ellipse': '\\uF4FB',\n 'Line': '\\uF4FC',\n 'Octagon': '\\uF4FD',\n 'Hexagon': '\\uF4FE',\n 'Pentagon': '\\uF4FF',\n 'RightTriangle': '\\uF500',\n 'HalfCircle': '\\uF501',\n 'QuarterCircle': '\\uF502',\n 'ThreeQuarterCircle': '\\uF503',\n '6PointStar': '\\uF504',\n '12PointStar': '\\uF505',\n 'ArrangeBringToFront': '\\uF506',\n 'ArrangeSendToBack': '\\uF507',\n 'ArrangeSendBackward': '\\uF508',\n 'ArrangeBringForward': '\\uF509',\n 'BorderDash': '\\uF50A',\n 'BorderDot': '\\uF50B',\n 'LineStyle': '\\uF50C',\n 'LineThickness': '\\uF50D',\n 'WindowEdit': '\\uF50E',\n 'HintText': '\\uF50F',\n 'MediaAdd': '\\uF510',\n 'AnchorLock': '\\uF511',\n 'AutoHeight': '\\uF512',\n 'ChartSeries': '\\uF513',\n 'ChartXAngle': '\\uF514',\n 'ChartYAngle': '\\uF515',\n 'Combobox': '\\uF516',\n 'LineSpacing': '\\uF517',\n 'Padding': '\\uF518',\n 'PaddingTop': '\\uF519',\n 'PaddingBottom': '\\uF51A',\n 'PaddingLeft': '\\uF51B',\n 'PaddingRight': '\\uF51C',\n 'NavigationFlipper': '\\uF51D',\n 'AlignJustify': '\\uF51E',\n 'TextOverflow': '\\uF51F',\n 'VisualsFolder': '\\uF520',\n 'VisualsStore': '\\uF521',\n 'PictureCenter': '\\uF522',\n 'PictureFill': '\\uF523',\n 'PicturePosition': '\\uF524',\n 'PictureStretch': '\\uF525',\n 'PictureTile': '\\uF526',\n 'Slider': '\\uF527',\n 'SliderHandleSize': '\\uF528',\n 'DefaultRatio': '\\uF529',\n 'NumberSequence': '\\uF52A',\n 'GUID': '\\uF52B',\n 'ReportAdd': '\\uF52C',\n 'DashboardAdd': '\\uF52D',\n 'MapPinSolid': '\\uF52E',\n 'WebPublish': '\\uF52F',\n 'PieSingleSolid': '\\uF530',\n 'BlockedSolid': '\\uF531',\n 'DrillDown': '\\uF532',\n 'DrillDownSolid': '\\uF533',\n 'DrillExpand': '\\uF534',\n 'DrillShow': '\\uF535',\n 'SpecialEvent': '\\uF536',\n 'OneDriveFolder16': '\\uF53B',\n 'FunctionalManagerDashboard': '\\uF542',\n 'BIDashboard': '\\uF543',\n 'CodeEdit': '\\uF544',\n 'RenewalCurrent': '\\uF545',\n 'RenewalFuture': '\\uF546',\n 'SplitObject': '\\uF547',\n 'BulkUpload': '\\uF548',\n 'DownloadDocument': '\\uF549',\n 'GreetingCard': '\\uF54B',\n 'Flower': '\\uF54E',\n 'WaitlistConfirm': '\\uF550',\n 'WaitlistConfirmMirrored': '\\uF551',\n 'LaptopSecure': '\\uF552',\n 'DragObject': '\\uF553',\n 'EntryView': '\\uF554',\n 'EntryDecline': '\\uF555',\n 'ContactCardSettings': '\\uF556',\n 'ContactCardSettingsMirrored': '\\uF557'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-15\"`,\n src: `url('${baseUrl}fabric-icons-15-3807251b.woff') format('woff')`\n },\n icons: {\n 'CalendarSettings': '\\uF558',\n 'CalendarSettingsMirrored': '\\uF559',\n 'HardDriveLock': '\\uF55A',\n 'HardDriveUnlock': '\\uF55B',\n 'AccountManagement': '\\uF55C',\n 'ReportWarning': '\\uF569',\n 'TransitionPop': '\\uF5B2',\n 'TransitionPush': '\\uF5B3',\n 'TransitionEffect': '\\uF5B4',\n 'LookupEntities': '\\uF5B5',\n 'ExploreData': '\\uF5B6',\n 'AddBookmark': '\\uF5B7',\n 'SearchBookmark': '\\uF5B8',\n 'DrillThrough': '\\uF5B9',\n 'MasterDatabase': '\\uF5BA',\n 'CertifiedDatabase': '\\uF5BB',\n 'MaximumValue': '\\uF5BC',\n 'MinimumValue': '\\uF5BD',\n 'VisualStudioIDELogo32': '\\uF5D0',\n 'PasteAsText': '\\uF5D5',\n 'PasteAsCode': '\\uF5D6',\n 'BrowserTab': '\\uF5D7',\n 'BrowserTabScreenshot': '\\uF5D8',\n 'DesktopScreenshot': '\\uF5D9',\n 'FileYML': '\\uF5DA',\n 'ClipboardSolid': '\\uF5DC',\n 'FabricUserFolder': '\\uF5E5',\n 'FabricNetworkFolder': '\\uF5E6',\n 'BullseyeTarget': '\\uF5F0',\n 'AnalyticsView': '\\uF5F1',\n 'Video360Generic': '\\uF609',\n 'Untag': '\\uF60B',\n 'Leave': '\\uF627',\n 'Trending12': '\\uF62D',\n 'Blocked12': '\\uF62E',\n 'Warning12': '\\uF62F',\n 'CheckedOutByOther12': '\\uF630',\n 'CheckedOutByYou12': '\\uF631',\n 'CircleShapeSolid': '\\uF63C',\n 'SquareShapeSolid': '\\uF63D',\n 'TriangleShapeSolid': '\\uF63E',\n 'DropShapeSolid': '\\uF63F',\n 'RectangleShapeSolid': '\\uF640',\n 'ZoomToFit': '\\uF649',\n 'InsertColumnsLeft': '\\uF64A',\n 'InsertColumnsRight': '\\uF64B',\n 'InsertRowsAbove': '\\uF64C',\n 'InsertRowsBelow': '\\uF64D',\n 'DeleteColumns': '\\uF64E',\n 'DeleteRows': '\\uF64F',\n 'DeleteRowsMirrored': '\\uF650',\n 'DeleteTable': '\\uF651',\n 'AccountBrowser': '\\uF652',\n 'VersionControlPush': '\\uF664',\n 'StackedColumnChart2': '\\uF666',\n 'TripleColumnWide': '\\uF66E',\n 'QuadColumn': '\\uF66F',\n 'WhiteBoardApp16': '\\uF673',\n 'WhiteBoardApp32': '\\uF674',\n 'PinnedSolid': '\\uF676',\n 'InsertSignatureLine': '\\uF677',\n 'ArrangeByFrom': '\\uF678',\n 'Phishing': '\\uF679',\n 'CreateMailRule': '\\uF67A',\n 'PublishCourse': '\\uF699',\n 'DictionaryRemove': '\\uF69A',\n 'UserRemove': '\\uF69B',\n 'UserEvent': '\\uF69C',\n 'Encryption': '\\uF69D',\n 'PasswordField': '\\uF6AA',\n 'OpenInNewTab': '\\uF6AB',\n 'Hide3': '\\uF6AC',\n 'VerifiedBrandSolid': '\\uF6AD',\n 'MarkAsProtected': '\\uF6AE',\n 'AuthenticatorApp': '\\uF6B1',\n 'WebTemplate': '\\uF6B2',\n 'DefenderTVM': '\\uF6B3',\n 'MedalSolid': '\\uF6B9',\n 'D365TalentLearn': '\\uF6BB',\n 'D365TalentInsight': '\\uF6BC',\n 'D365TalentHRCore': '\\uF6BD',\n 'BacklogList': '\\uF6BF',\n 'ButtonControl': '\\uF6C0',\n 'TableGroup': '\\uF6D9',\n 'MountainClimbing': '\\uF6DB',\n 'TagUnknown': '\\uF6DF',\n 'TagUnknownMirror': '\\uF6E0',\n 'TagUnknown12': '\\uF6E1',\n 'TagUnknown12Mirror': '\\uF6E2',\n 'Link12': '\\uF6E3',\n 'Presentation': '\\uF6E4',\n 'Presentation12': '\\uF6E5',\n 'Lock12': '\\uF6E6',\n 'BuildDefinition': '\\uF6E9',\n 'ReleaseDefinition': '\\uF6EA',\n 'SaveTemplate': '\\uF6EC',\n 'UserGauge': '\\uF6ED',\n 'BlockedSiteSolid12': '\\uF70A',\n 'TagSolid': '\\uF70E',\n 'OfficeChat': '\\uF70F'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-16\"`,\n src: `url('${baseUrl}fabric-icons-16-9cf93f3b.woff') format('woff')`\n },\n icons: {\n 'OfficeChatSolid': '\\uF710',\n 'MailSchedule': '\\uF72E',\n 'WarningSolid': '\\uF736',\n 'Blocked2Solid': '\\uF737',\n 'SkypeCircleArrow': '\\uF747',\n 'SkypeArrow': '\\uF748',\n 'SyncStatus': '\\uF751',\n 'SyncStatusSolid': '\\uF752',\n 'ProjectDocument': '\\uF759',\n 'ToDoLogoOutline': '\\uF75B',\n 'VisioOnlineLogoFill32': '\\uF75F',\n 'VisioOnlineLogo32': '\\uF760',\n 'VisioOnlineLogoCloud32': '\\uF761',\n 'VisioDiagramSync': '\\uF762',\n 'Event12': '\\uF763',\n 'EventDateMissed12': '\\uF764',\n 'UserOptional': '\\uF767',\n 'ResponsesMenu': '\\uF768',\n 'DoubleDownArrow': '\\uF769',\n 'DistributeDown': '\\uF76A',\n 'BookmarkReport': '\\uF76B',\n 'FilterSettings': '\\uF76C',\n 'GripperDotsVertical': '\\uF772',\n 'MailAttached': '\\uF774',\n 'AddIn': '\\uF775',\n 'LinkedDatabase': '\\uF779',\n 'TableLink': '\\uF77A',\n 'PromotedDatabase': '\\uF77D',\n 'BarChartVerticalFilter': '\\uF77E',\n 'BarChartVerticalFilterSolid': '\\uF77F',\n 'MicOff2': '\\uF781',\n 'MicrosoftTranslatorLogo': '\\uF782',\n 'ShowTimeAs': '\\uF787',\n 'FileRequest': '\\uF789',\n 'WorkItemAlert': '\\uF78F',\n 'PowerBILogo16': '\\uF790',\n 'PowerBILogoBackplate16': '\\uF791',\n 'BulletedListText': '\\uF792',\n 'BulletedListBullet': '\\uF793',\n 'BulletedListTextMirrored': '\\uF794',\n 'BulletedListBulletMirrored': '\\uF795',\n 'NumberedListText': '\\uF796',\n 'NumberedListNumber': '\\uF797',\n 'NumberedListTextMirrored': '\\uF798',\n 'NumberedListNumberMirrored': '\\uF799',\n 'RemoveLinkChain': '\\uF79A',\n 'RemoveLinkX': '\\uF79B',\n 'FabricTextHighlight': '\\uF79C',\n 'ClearFormattingA': '\\uF79D',\n 'ClearFormattingEraser': '\\uF79E',\n 'Photo2Fill': '\\uF79F',\n 'IncreaseIndentText': '\\uF7A0',\n 'IncreaseIndentArrow': '\\uF7A1',\n 'DecreaseIndentText': '\\uF7A2',\n 'DecreaseIndentArrow': '\\uF7A3',\n 'IncreaseIndentTextMirrored': '\\uF7A4',\n 'IncreaseIndentArrowMirrored': '\\uF7A5',\n 'DecreaseIndentTextMirrored': '\\uF7A6',\n 'DecreaseIndentArrowMirrored': '\\uF7A7',\n 'CheckListText': '\\uF7A8',\n 'CheckListCheck': '\\uF7A9',\n 'CheckListTextMirrored': '\\uF7AA',\n 'CheckListCheckMirrored': '\\uF7AB',\n 'NumberSymbol': '\\uF7AC',\n 'Coupon': '\\uF7BC',\n 'VerifiedBrand': '\\uF7BD',\n 'ReleaseGate': '\\uF7BE',\n 'ReleaseGateCheck': '\\uF7BF',\n 'ReleaseGateError': '\\uF7C0',\n 'M365InvoicingLogo': '\\uF7C1',\n 'RemoveFromShoppingList': '\\uF7D5',\n 'ShieldAlert': '\\uF7D7',\n 'FabricTextHighlightComposite': '\\uF7DA',\n 'Dataflows': '\\uF7DD',\n 'GenericScanFilled': '\\uF7DE',\n 'DiagnosticDataBarTooltip': '\\uF7DF',\n 'SaveToMobile': '\\uF7E0',\n 'Orientation2': '\\uF7E1',\n 'ScreenCast': '\\uF7E2',\n 'ShowGrid': '\\uF7E3',\n 'SnapToGrid': '\\uF7E4',\n 'ContactList': '\\uF7E5',\n 'NewMail': '\\uF7EA',\n 'EyeShadow': '\\uF7EB',\n 'FabricFolderConfirm': '\\uF7FF',\n 'InformationBarriers': '\\uF803',\n 'CommentActive': '\\uF804',\n 'ColumnVerticalSectionEdit': '\\uF806',\n 'WavingHand': '\\uF807',\n 'ShakeDevice': '\\uF80A',\n 'SmartGlassRemote': '\\uF80B',\n 'Rotate90Clockwise': '\\uF80D',\n 'Rotate90CounterClockwise': '\\uF80E',\n 'CampaignTemplate': '\\uF811',\n 'ChartTemplate': '\\uF812',\n 'PageListFilter': '\\uF813',\n 'SecondaryNav': '\\uF814',\n 'ColumnVerticalSection': '\\uF81E',\n 'SkypeCircleSlash': '\\uF825',\n 'SkypeSlash': '\\uF826'\n }\n };\n\n registerIcons(subset, options);\n}\n"," // Your use of the content in the files referenced here is subject to the terms of the license at https://aka.ms/fluentui-assets-license\n\nimport {\n IIconOptions,\n IIconSubset,\n registerIcons\n} from '@fluentui/style-utilities';\n\nexport function initializeIcons(\n baseUrl: string = '',\n options?: IIconOptions\n): void {\n const subset: IIconSubset = {\n style: {\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontStyle: 'normal',\n fontWeight: 'normal',\n speak: 'none'\n },\n fontFace: {\n fontFamily: `\"FabricMDL2Icons-17\"`,\n src: `url('${baseUrl}fabric-icons-17-0c4ed701.woff') format('woff')`\n },\n icons: {\n 'CustomizeToolbar': '\\uF828',\n 'DuplicateRow': '\\uF82A',\n 'RemoveFromTrash': '\\uF82B',\n 'MailOptions': '\\uF82C',\n 'Childof': '\\uF82D',\n 'Footer': '\\uF82E',\n 'Header': '\\uF82F',\n 'BarChartVerticalFill': '\\uF830',\n 'StackedColumnChart2Fill': '\\uF831',\n 'PlainText': '\\uF834',\n 'AccessibiltyChecker': '\\uF835',\n 'DatabaseSync': '\\uF842',\n 'ReservationOrders': '\\uF845',\n 'TabOneColumn': '\\uF849',\n 'TabTwoColumn': '\\uF84A',\n 'TabThreeColumn': '\\uF84B',\n 'BulletedTreeList': '\\uF84C',\n 'MicrosoftTranslatorLogoGreen': '\\uF852',\n 'MicrosoftTranslatorLogoBlue': '\\uF853',\n 'InternalInvestigation': '\\uF854',\n 'AddReaction': '\\uF85D',\n 'ContactHeart': '\\uF862',\n 'VisuallyImpaired': '\\uF866',\n 'EventToDoLogo': '\\uF869',\n 'Variable2': '\\uF86D',\n 'ModelingView': '\\uF871',\n 'DisconnectVirtualMachine': '\\uF873',\n 'ReportLock': '\\uF875',\n 'Uneditable2': '\\uF876',\n 'Uneditable2Mirrored': '\\uF877',\n 'BarChartVerticalEdit': '\\uF89D',\n 'GlobalNavButtonActive': '\\uF89F',\n 'PollResults': '\\uF8A0',\n 'Rerun': '\\uF8A1',\n 'QandA': '\\uF8A2',\n 'QandAMirror': '\\uF8A3',\n 'BookAnswers': '\\uF8A4',\n 'AlertSettings': '\\uF8B6',\n 'TrimStart': '\\uF8BB',\n 'TrimEnd': '\\uF8BC',\n 'TableComputed': '\\uF8F5',\n 'DecreaseIndentLegacy': '\\uE290',\n 'IncreaseIndentLegacy': '\\uE291',\n 'SizeLegacy': '\\uE2B2'\n }\n };\n\n registerIcons(subset, options);\n}\n","import { registerIconAlias } from '@fluentui/style-utilities';\n\nexport const registerIconAliases = () => {\n registerIconAlias('trash', 'delete');\n registerIconAlias('onedrive', 'onedrivelogo');\n registerIconAlias('alertsolid12', 'eventdatemissed12');\n registerIconAlias('sixpointstar', '6pointstar');\n registerIconAlias('twelvepointstar', '12pointstar');\n registerIconAlias('toggleon', 'toggleleft');\n registerIconAlias('toggleoff', 'toggleright');\n};\n\nexport default registerIconAliases;\n","import * as React from 'react';\nimport type { IImageProps } from '../Image/Image.types';\nimport type { IStyle, ITheme } from '../../Styling';\nimport type { IBaseProps, IStyleFunctionOrObject } from '../../Utilities';\n\n/**\n * @deprecated Icon type is inferred based on presence of `IIconProps.imageProps`\n * {@docCategory Icon}\n */\nexport enum IconType {\n /**\n * Render using the fabric icon font.\n * @deprecated Icon type is inferred based on presence of `IIconProps.imageProps`\n */\n default = 0,\n\n /**\n * Render using an image, where imageProps would be used.\n * @deprecated Icon type is inferred based on presence of `IIconProps.imageProps`\n */\n image = 1,\n\n /**\n * @deprecated Icon type is inferred based on presence of `IIconProps.imageProps`\n */\n Default = 100000,\n\n /**\n * @deprecated Icon type is inferred based on presence of `IIconProps.imageProps`\n */\n Image = 100001,\n}\n\n/**\n * {@docCategory Icon}\n */\nexport interface IIconProps extends IBaseProps, React.HTMLAttributes {\n /**\n * The name of the icon to use from the icon font.\n * If string is empty, a placeholder icon will be rendered the same width as an icon.\n */\n iconName?: string;\n\n /**\n * The aria label of the icon for the benefit of screen readers.\n * @deprecated Use the native prop `aria-label`\n */\n ariaLabel?: string;\n\n /**\n * The type of icon to render (image or icon font).\n * @deprecated Inferred based on the presence of `imageProps`\n */\n // eslint-disable-next-line deprecation/deprecation\n iconType?: IconType;\n\n /**\n * If rendering an image icon, these props will be passed to the Image component.\n */\n imageProps?: IImageProps;\n\n /**\n * If rendering an image icon, this component will be rendered in the event that loading the image fails.\n */\n imageErrorAs?: React.ComponentType;\n\n /**\n * Gets the styles for an Icon.\n */\n styles?: IStyleFunctionOrObject;\n theme?: ITheme;\n}\n\n/**\n * {@docCategory Icon}\n */\nexport interface IIconStyleProps {\n className?: string;\n iconClassName?: string;\n isPlaceholder: boolean;\n isImage: boolean;\n styles?: Partial;\n theme?: ITheme;\n}\n\n/**\n * {@docCategory Icon}\n */\nexport interface IIconStyles {\n root?: IStyle;\n\n /**\n * @deprecated Use `root`.\n */\n imageContainer?: IStyle;\n}\n\n/**\n * Props for a basic icon component which only supports font glyphs and can't be targeted by customizations.\n * {@docCategory Icon}\n */\nexport interface IFontIconProps extends React.HTMLAttributes {\n /**\n * The name of the icon to use from the icon font.\n * If string is empty, a placeholder icon will be rendered the same width as an icon.\n */\n iconName?: string;\n\n /**\n * Custom class to style the icon.\n */\n className?: string;\n}\n\n/**\n * Props for a basic image icon component which doesn't directly provide image load error handling\n * and can't be targeted by customizations.\n * {@docCategory Icon}\n */\nexport interface IImageIconProps extends React.HTMLAttributes {\n /**\n * Props passed to the Image component.\n */\n imageProps: IImageProps;\n\n /**\n * Custom class to style the icon.\n */\n className?: string;\n}\n","import * as React from 'react';\n\nimport { IconType } from './Icon.types';\nimport { Image } from '../Image/Image';\nimport { ImageLoadState } from '../Image/Image.types';\nimport { getNativeProps, htmlElementProperties, classNamesFunction } from '../../Utilities';\nimport { getIconContent } from './FontIcon';\nimport type { IIconProps, IIconStyleProps, IIconStyles } from './Icon.types';\nimport type { IImageProps } from '../Image/Image.types';\n\nexport interface IIconState {\n imageLoadError: boolean;\n}\n\nconst getClassNames = classNamesFunction({\n // Icon is used a lot by other components.\n // It's likely to see expected cases which pass different className to the Icon.\n // Therefore setting a larger cache size.\n cacheSize: 100,\n});\n\nexport class IconBase extends React.Component {\n constructor(props: IIconProps) {\n super(props);\n this.state = {\n imageLoadError: false,\n };\n }\n\n public render() {\n const { children, className, styles, iconName, imageErrorAs, theme } = this.props;\n const isPlaceholder = typeof iconName === 'string' && iconName.length === 0;\n const isImage =\n // eslint-disable-next-line deprecation/deprecation\n !!this.props.imageProps || this.props.iconType === IconType.image || this.props.iconType === IconType.Image;\n const iconContent = getIconContent(iconName) || {};\n const { iconClassName, children: iconContentChildren, mergeImageProps } = iconContent;\n\n const classNames = getClassNames(styles, {\n theme: theme!,\n className,\n iconClassName,\n isImage,\n isPlaceholder,\n });\n\n const RootType = isImage ? 'span' : 'i';\n const nativeProps = getNativeProps>(this.props, htmlElementProperties, [\n 'aria-label',\n ]);\n const { imageLoadError } = this.state;\n const imageProps: IImageProps = {\n ...this.props.imageProps,\n onLoadingStateChange: this._onImageLoadingStateChange,\n };\n const ImageType = (imageLoadError && imageErrorAs) || Image;\n\n // eslint-disable-next-line deprecation/deprecation\n const ariaLabel = this.props['aria-label'] || this.props.ariaLabel;\n const accessibleName = imageProps.alt || ariaLabel || this.props.title;\n const hasName = !!(\n accessibleName ||\n this.props['aria-labelledby'] ||\n imageProps['aria-label'] ||\n imageProps['aria-labelledby']\n );\n const containerProps = hasName\n ? {\n role: isImage || mergeImageProps ? undefined : 'img',\n 'aria-label': isImage || mergeImageProps ? undefined : accessibleName,\n }\n : {\n 'aria-hidden': true,\n };\n\n let finalIconContentChildren = iconContentChildren;\n\n if (mergeImageProps && iconContentChildren && typeof iconContentChildren === 'object' && accessibleName) {\n finalIconContentChildren = React.cloneElement(iconContentChildren, {\n alt: accessibleName,\n });\n }\n\n return (\n \n {isImage ? : children || finalIconContentChildren}\n \n );\n }\n\n private _onImageLoadingStateChange = (state: ImageLoadState): void => {\n if (this.props.imageProps && this.props.imageProps.onLoadingStateChange) {\n this.props.imageProps.onLoadingStateChange(state);\n }\n if (state === ImageLoadState.error) {\n this.setState({ imageLoadError: true });\n }\n };\n}\n","import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport { IconBase } from './Icon.base';\nimport { getStyles } from './Icon.styles';\nimport type { IIconProps, IIconStyleProps, IIconStyles } from './Icon.types';\n\n/**\n * Legacy Icon component which can be targeted by customization. It's recommended to use `FontIcon`\n * or `ImageIcon` instead, especially in scenarios where rendering performance is important.\n * {@docCategory Icon}\n */\nexport const Icon: React.FunctionComponent = styled(\n IconBase,\n getStyles,\n undefined,\n {\n scope: 'Icon',\n },\n true,\n);\nIcon.displayName = 'Icon';\n","import { concatStyleSets, FontWeights } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nimport { getStyles as getBaseButtonStyles } from '../BaseButton.styles';\nimport { getStyles as getSplitButtonStyles } from '../SplitButton/SplitButton.styles';\n\nimport { primaryStyles, standardStyles } from '../ButtonThemes';\nimport type { IButtonStyles } from '../Button.types';\nimport type { ITheme } from '../../../Styling';\n\nconst DEFAULT_BUTTON_HEIGHT = '32px';\nconst DEFAULT_BUTTON_MIN_WIDTH = '80px';\n\nexport const getStyles = memoizeFunction(\n (theme: ITheme, customStyles?: IButtonStyles, primary?: boolean): IButtonStyles => {\n const baseButtonStyles: IButtonStyles = getBaseButtonStyles(theme);\n const splitButtonStyles: IButtonStyles = getSplitButtonStyles(theme);\n const defaultButtonStyles: IButtonStyles = {\n root: {\n minWidth: DEFAULT_BUTTON_MIN_WIDTH,\n height: DEFAULT_BUTTON_HEIGHT,\n },\n label: {\n fontWeight: FontWeights.semibold,\n },\n };\n\n return concatStyleSets(\n baseButtonStyles,\n defaultButtonStyles,\n primary ? primaryStyles(theme) : standardStyles(theme),\n splitButtonStyles,\n customStyles,\n )!;\n },\n);\n","import { HighContrastSelector, getHighContrastNoAdjustStyle } from '../../Styling';\nimport { IsFocusVisibleClassName } from '../../Utilities';\nimport type { IButtonStyles } from './Button.types';\nimport type { ITheme, IRawStyle } from '../../Styling';\n\nconst splitButtonDividerBaseStyles = (): IRawStyle => {\n return {\n position: 'absolute',\n width: 1,\n right: 31,\n top: 8,\n bottom: 8,\n };\n};\n\nexport function standardStyles(theme: ITheme): IButtonStyles {\n const { semanticColors: s, palette: p } = theme;\n\n const buttonBackground = s.buttonBackground;\n const buttonBackgroundPressed = s.buttonBackgroundPressed;\n const buttonBackgroundHovered = s.buttonBackgroundHovered;\n const buttonBackgroundDisabled = s.buttonBackgroundDisabled;\n\n const buttonText = s.buttonText;\n const buttonTextHovered = s.buttonTextHovered;\n const buttonTextDisabled = s.buttonTextDisabled;\n const buttonTextChecked = s.buttonTextChecked;\n const buttonTextCheckedHovered = s.buttonTextCheckedHovered;\n\n return {\n root: {\n backgroundColor: buttonBackground,\n color: buttonText,\n },\n\n rootHovered: {\n backgroundColor: buttonBackgroundHovered,\n color: buttonTextHovered,\n selectors: {\n [HighContrastSelector]: {\n borderColor: 'Highlight',\n color: 'Highlight',\n },\n },\n },\n\n rootPressed: {\n backgroundColor: buttonBackgroundPressed,\n color: buttonTextChecked,\n },\n\n rootExpanded: {\n backgroundColor: buttonBackgroundPressed,\n color: buttonTextChecked,\n },\n\n rootChecked: {\n backgroundColor: buttonBackgroundPressed,\n color: buttonTextChecked,\n },\n\n rootCheckedHovered: {\n backgroundColor: buttonBackgroundPressed,\n color: buttonTextCheckedHovered,\n },\n\n rootDisabled: {\n color: buttonTextDisabled,\n backgroundColor: buttonBackgroundDisabled,\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n borderColor: 'GrayText',\n backgroundColor: 'Window',\n },\n },\n },\n\n // Split button styles\n splitButtonContainer: {\n selectors: {\n [HighContrastSelector]: {\n border: 'none',\n },\n },\n },\n\n splitButtonMenuButton: {\n color: p.white,\n backgroundColor: 'transparent',\n selectors: {\n ':hover': {\n backgroundColor: p.neutralLight,\n selectors: {\n [HighContrastSelector]: {\n color: 'Highlight',\n },\n },\n },\n },\n },\n\n splitButtonMenuButtonDisabled: {\n backgroundColor: s.buttonBackgroundDisabled,\n selectors: {\n ':hover': {\n backgroundColor: s.buttonBackgroundDisabled,\n },\n },\n },\n\n splitButtonDivider: {\n ...splitButtonDividerBaseStyles(),\n backgroundColor: p.neutralTertiaryAlt,\n selectors: {\n [HighContrastSelector]: {\n backgroundColor: 'WindowText',\n },\n },\n },\n\n splitButtonDividerDisabled: {\n backgroundColor: theme.palette.neutralTertiaryAlt,\n },\n\n splitButtonMenuButtonChecked: {\n backgroundColor: p.neutralQuaternaryAlt,\n selectors: {\n ':hover': {\n backgroundColor: p.neutralQuaternaryAlt,\n },\n },\n },\n\n splitButtonMenuButtonExpanded: {\n backgroundColor: p.neutralQuaternaryAlt,\n selectors: {\n ':hover': {\n backgroundColor: p.neutralQuaternaryAlt,\n },\n },\n },\n\n splitButtonMenuIcon: {\n color: s.buttonText,\n },\n\n splitButtonMenuIconDisabled: {\n color: s.buttonTextDisabled,\n },\n };\n}\n\nexport function primaryStyles(theme: ITheme): IButtonStyles {\n const { palette: p, semanticColors: s } = theme;\n\n return {\n root: {\n backgroundColor: s.primaryButtonBackground,\n border: `1px solid ${s.primaryButtonBackground}`,\n color: s.primaryButtonText,\n selectors: {\n [HighContrastSelector]: {\n color: 'Window',\n backgroundColor: 'WindowText',\n borderColor: 'WindowText',\n ...getHighContrastNoAdjustStyle(),\n },\n [`.${IsFocusVisibleClassName} &:focus`]: {\n selectors: {\n ':after': {\n border: `none`,\n outlineColor: p.white,\n },\n },\n },\n },\n },\n\n rootHovered: {\n backgroundColor: s.primaryButtonBackgroundHovered,\n border: `1px solid ${s.primaryButtonBackgroundHovered}`,\n color: s.primaryButtonTextHovered,\n selectors: {\n [HighContrastSelector]: {\n color: 'Window',\n backgroundColor: 'Highlight',\n borderColor: 'Highlight',\n },\n },\n },\n\n rootPressed: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n border: `1px solid ${s.primaryButtonBackgroundPressed}`,\n color: s.primaryButtonTextPressed,\n selectors: {\n [HighContrastSelector]: {\n color: 'Window',\n backgroundColor: 'WindowText',\n borderColor: 'WindowText',\n ...getHighContrastNoAdjustStyle(),\n },\n },\n },\n\n rootExpanded: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n color: s.primaryButtonTextPressed,\n },\n\n rootChecked: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n color: s.primaryButtonTextPressed,\n },\n\n rootCheckedHovered: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n color: s.primaryButtonTextPressed,\n },\n\n rootDisabled: {\n color: s.primaryButtonTextDisabled,\n backgroundColor: s.primaryButtonBackgroundDisabled,\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n borderColor: 'GrayText',\n backgroundColor: 'Window',\n },\n },\n },\n\n // Split button styles\n splitButtonContainer: {\n selectors: {\n [HighContrastSelector]: {\n border: 'none',\n },\n },\n },\n\n splitButtonDivider: {\n ...splitButtonDividerBaseStyles(),\n backgroundColor: p.white,\n selectors: {\n [HighContrastSelector]: {\n backgroundColor: 'Window',\n },\n },\n },\n\n splitButtonMenuButton: {\n backgroundColor: s.primaryButtonBackground,\n color: s.primaryButtonText,\n selectors: {\n [HighContrastSelector]: {\n backgroundColor: 'WindowText',\n },\n ':hover': {\n backgroundColor: s.primaryButtonBackgroundHovered,\n selectors: {\n [HighContrastSelector]: {\n color: 'Highlight',\n },\n },\n },\n },\n },\n\n splitButtonMenuButtonDisabled: {\n backgroundColor: s.primaryButtonBackgroundDisabled,\n selectors: {\n ':hover': {\n backgroundColor: s.primaryButtonBackgroundDisabled,\n },\n },\n },\n\n splitButtonMenuButtonChecked: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n selectors: {\n ':hover': {\n backgroundColor: s.primaryButtonBackgroundPressed,\n },\n },\n },\n\n splitButtonMenuButtonExpanded: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n selectors: {\n ':hover': {\n backgroundColor: s.primaryButtonBackgroundPressed,\n },\n },\n },\n\n splitButtonMenuIcon: {\n color: s.primaryButtonText,\n },\n\n splitButtonMenuIconDisabled: {\n color: p.neutralTertiary,\n\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n },\n },\n },\n };\n}\n","import * as React from 'react';\nimport { BaseButton } from '../BaseButton';\nimport { customizable, nullRender } from '../../../Utilities';\nimport { getStyles } from './DefaultButton.styles';\nimport type { IButtonProps } from '../Button.types';\n\n/**\n * {@docCategory Button}\n */\n@customizable('DefaultButton', ['theme', 'styles'], true)\nexport class DefaultButton extends React.Component {\n public render(): JSX.Element {\n const { primary = false, styles, theme } = this.props;\n\n return (\n \n );\n }\n}\n","import * as React from 'react';\nimport { classNamesFunction, initializeComponentRef } from '../../Utilities';\nimport type { IDialogFooterProps, IDialogFooterStyleProps, IDialogFooterStyles } from './DialogFooter.types';\nimport type { IProcessedStyleSet } from '../../Styling';\n\nconst getClassNames = classNamesFunction();\n\nexport class DialogFooterBase extends React.Component {\n private _classNames: IProcessedStyleSet;\n\n constructor(props: IDialogFooterProps) {\n super(props);\n\n initializeComponentRef(this);\n }\n\n public render(): JSX.Element {\n const { className, styles, theme } = this.props;\n\n this._classNames = getClassNames(styles!, {\n theme: theme!,\n className,\n });\n\n return (\n

    \n
    {this._renderChildrenAsActions()}
    \n
    \n );\n }\n\n private _renderChildrenAsActions(): (JSX.Element | null)[] | null | undefined {\n return React.Children.map(this.props.children, child =>\n child ? {child} : null,\n );\n }\n}\n","import { getGlobalClassNames } from '../../Styling';\nimport type { IDialogFooterStyleProps, IDialogFooterStyles } from './DialogFooter.types';\n\nconst GlobalClassNames = {\n actions: 'ms-Dialog-actions',\n action: 'ms-Dialog-action',\n actionsRight: 'ms-Dialog-actionsRight',\n};\n\nexport const getStyles = (props: IDialogFooterStyleProps): IDialogFooterStyles => {\n const { className, theme } = props;\n\n const classNames = getGlobalClassNames(GlobalClassNames, theme);\n\n return {\n actions: [\n classNames.actions,\n {\n position: 'relative',\n width: '100%',\n minHeight: '24px',\n lineHeight: '24px',\n margin: '16px 0 0',\n fontSize: '0',\n\n selectors: {\n '.ms-Button': {\n lineHeight: 'normal',\n },\n },\n },\n className,\n ],\n\n action: [\n classNames.action,\n {\n margin: '0 4px',\n },\n ],\n\n actionsRight: [\n classNames.actionsRight,\n {\n textAlign: 'right',\n marginRight: '-4px',\n fontSize: '0',\n },\n ],\n };\n};\n","import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport { DialogFooterBase } from './DialogFooter.base';\nimport { getStyles } from './DialogFooter.styles';\nimport type { IDialogFooterProps, IDialogFooterStyleProps, IDialogFooterStyles } from './DialogFooter.types';\n\nexport const DialogFooter: React.FunctionComponent = styled<\n IDialogFooterProps,\n IDialogFooterStyleProps,\n IDialogFooterStyles\n>(DialogFooterBase, getStyles, undefined, { scope: 'DialogFooter' });\n","import * as React from 'react';\nimport { composeRenderFunction, css } from '../../Utilities';\nimport { DEFAULT_CELL_STYLE_PROPS } from './DetailsRow.styles';\nimport type { IColumn } from './DetailsList.types';\nimport type { IDetailsRowFieldsProps } from './DetailsRowFields.types';\nimport type { IDetailsColumnFieldProps } from './DetailsColumn.types';\n\nconst getCellText = (item: any, column: IColumn): string => {\n let value = item && column && column.fieldName ? item[column.fieldName] : '';\n\n if (value === null || value === undefined) {\n value = '';\n }\n\n if (typeof value === 'boolean') {\n return value.toString();\n }\n\n return value;\n};\n\n/**\n * Component for rendering a row's cells in a `DetailsList`.\n *\n * {@docCategory DetailsList}\n */\nexport const DetailsRowFields: React.FunctionComponent = props => {\n const {\n columns,\n rowClassNames,\n cellStyleProps = DEFAULT_CELL_STYLE_PROPS,\n item,\n itemIndex,\n isSelected,\n onRenderItemColumn,\n getCellValueKey,\n onRenderField: propsOnRenderField,\n cellsByColumn,\n enableUpdateAnimations,\n rowHeaderId,\n } = props;\n\n const cellValueKeysRef = React.useRef<{\n [columnKey: string]: string | undefined;\n }>();\n\n const cellValueKeys = cellValueKeysRef.current || (cellValueKeysRef.current = {});\n\n const defaultOnRenderField = React.useCallback(\n (fieldProps: IDetailsColumnFieldProps): JSX.Element | null => {\n const { column, cellValueKey, className, onRender, item: fieldItem, itemIndex: fieldItemIndex } = fieldProps;\n\n const width: string | number =\n typeof column.calculatedWidth === 'undefined'\n ? 'auto'\n : column.calculatedWidth +\n cellStyleProps.cellLeftPadding +\n cellStyleProps.cellRightPadding +\n (column.isPadded ? cellStyleProps.cellExtraRightPadding : 0);\n\n const key = `${column.key}${cellValueKey !== undefined ? `-${cellValueKey}` : ''}`;\n\n return (\n \n {onRender(fieldItem, fieldItemIndex, column)}\n
    \n );\n },\n [rowClassNames, cellStyleProps, rowHeaderId],\n );\n\n return (\n
    \n {columns.map(column => {\n const { getValueKey = getCellValueKey } = column;\n\n const onRender =\n (cellsByColumn && column.key in cellsByColumn && (() => cellsByColumn[column.key])) ||\n column.onRender ||\n onRenderItemColumn ||\n defaultOnRender;\n\n let onRenderField = defaultOnRenderField;\n\n if (column.onRenderField) {\n onRenderField = composeRenderFunction(column.onRenderField, onRenderField);\n }\n\n if (propsOnRenderField) {\n onRenderField = composeRenderFunction(propsOnRenderField, onRenderField);\n }\n\n const previousValueKey = cellValueKeys[column.key];\n\n const cellValueKey = enableUpdateAnimations && getValueKey ? getValueKey(item, itemIndex, column) : undefined;\n\n let showAnimation = false;\n\n if (cellValueKey !== undefined && previousValueKey !== undefined && cellValueKey !== previousValueKey) {\n showAnimation = true;\n }\n\n cellValueKeys[column.key] = cellValueKey;\n\n return onRenderField({\n item,\n itemIndex,\n isSelected,\n column,\n cellValueKey,\n className: showAnimation ? rowClassNames.cellAnimation : undefined,\n onRender,\n });\n })}\n
    \n );\n};\n\nfunction defaultOnRender(item?: any, index?: number, column?: IColumn): React.ReactNode {\n if (!item || !column) {\n return null;\n }\n\n return getCellText(item, column);\n}\n","import * as React from 'react';\nimport {\n initializeComponentRef,\n EventGroup,\n css,\n shallowCompare,\n getNativeProps,\n divProperties,\n composeComponentAs,\n} from '../../Utilities';\nimport { CheckboxVisibility } from './DetailsList.types';\nimport { DetailsRowCheck } from './DetailsRowCheck';\nimport { GroupSpacer } from '../GroupedList/GroupSpacer';\nimport { DetailsRowFields } from './DetailsRowFields';\nimport { FocusZone, FocusZoneDirection } from '../../FocusZone';\nimport { SelectionMode, SELECTION_CHANGE } from '../../Selection';\nimport { CollapseAllVisibility } from '../../GroupedList';\nimport { classNamesFunction } from '../../Utilities';\nimport type { IDisposable } from '../../Utilities';\nimport type { IColumn } from './DetailsList.types';\nimport type { IFocusZone } from '../../FocusZone';\nimport type { IDragDropOptions } from '../../DragDrop';\nimport type { IDetailsRowBaseProps, IDetailsRowStyleProps, IDetailsRowStyles } from './DetailsRow.types';\nimport type { IDetailsRowCheckProps } from './DetailsRowCheck.types';\nimport type { IDetailsRowFieldsProps } from './DetailsRowFields.types';\nimport type { IProcessedStyleSet } from '../../Styling';\nimport { getId } from '../../Utilities';\n\nconst getClassNames = classNamesFunction();\n\nexport interface IDetailsRowSelectionState {\n isSelected: boolean;\n isSelectionModal: boolean;\n}\n\nexport interface IDetailsRowState {\n selectionState: IDetailsRowSelectionState;\n columnMeasureInfo?: {\n index: number;\n column: IColumn;\n onMeasureDone: (measuredWidth: number) => void;\n };\n isDropping?: boolean;\n}\n\nconst DEFAULT_DROPPING_CSS_CLASS = 'is-dropping';\n\nconst NO_COLUMNS: IColumn[] = [];\n\nexport class DetailsRowBase extends React.Component {\n private _events: EventGroup;\n private _root = React.createRef();\n private _cellMeasurer = React.createRef();\n private _focusZone = React.createRef();\n private _droppingClassNames: string;\n /** Whether this.props.onDidMount has been called */\n private _onDidMountCalled: boolean;\n private _dragDropSubscription?: IDisposable;\n\n private _classNames: IProcessedStyleSet;\n private _rowClassNames: IDetailsRowFieldsProps['rowClassNames'];\n private _ariaRowDescriptionId: string;\n\n public static getDerivedStateFromProps(\n nextProps: IDetailsRowBaseProps,\n previousState: IDetailsRowState,\n ): IDetailsRowState {\n return {\n ...previousState,\n selectionState: getSelectionState(nextProps),\n };\n }\n\n constructor(props: IDetailsRowBaseProps) {\n super(props);\n\n initializeComponentRef(this);\n this._events = new EventGroup(this);\n\n this.state = {\n selectionState: getSelectionState(props),\n columnMeasureInfo: undefined,\n isDropping: false,\n };\n\n this._droppingClassNames = '';\n }\n public componentDidMount(): void {\n const { dragDropHelper, selection, item, onDidMount } = this.props;\n\n if (dragDropHelper && this._root.current) {\n this._dragDropSubscription = dragDropHelper.subscribe(\n this._root.current,\n this._events,\n this._getRowDragDropOptions(),\n );\n }\n\n if (selection) {\n this._events.on(selection, SELECTION_CHANGE, this._onSelectionChanged);\n }\n\n if (onDidMount && item) {\n // If the item appears later, we should wait for it before calling this method.\n this._onDidMountCalled = true;\n onDidMount(this);\n }\n }\n\n public componentDidUpdate(previousProps: IDetailsRowBaseProps) {\n const state = this.state;\n const { item, onDidMount } = this.props;\n const { columnMeasureInfo } = state;\n\n if (\n this.props.itemIndex !== previousProps.itemIndex ||\n this.props.item !== previousProps.item ||\n this.props.dragDropHelper !== previousProps.dragDropHelper\n ) {\n if (this._dragDropSubscription) {\n this._dragDropSubscription.dispose();\n delete this._dragDropSubscription;\n }\n\n if (this.props.dragDropHelper && this._root.current) {\n this._dragDropSubscription = this.props.dragDropHelper.subscribe(\n this._root.current,\n this._events,\n this._getRowDragDropOptions(),\n );\n }\n }\n\n if (columnMeasureInfo && columnMeasureInfo.index >= 0 && this._cellMeasurer.current) {\n const newWidth = this._cellMeasurer.current.getBoundingClientRect().width;\n\n columnMeasureInfo.onMeasureDone(newWidth);\n\n this.setState({\n columnMeasureInfo: undefined,\n });\n }\n\n if (item && onDidMount && !this._onDidMountCalled) {\n this._onDidMountCalled = true;\n onDidMount(this);\n }\n }\n\n public componentWillUnmount(): void {\n const { item, onWillUnmount } = this.props;\n\n // Only call the onWillUnmount callback if we have an item.\n if (onWillUnmount && item) {\n onWillUnmount(this);\n }\n\n if (this._dragDropSubscription) {\n this._dragDropSubscription.dispose();\n delete this._dragDropSubscription;\n }\n\n this._events.dispose();\n }\n\n public shouldComponentUpdate(nextProps: IDetailsRowBaseProps, nextState: IDetailsRowState): boolean {\n if (this.props.useReducedRowRenderer) {\n const newSelectionState = getSelectionState(nextProps);\n if (this.state.selectionState.isSelected !== newSelectionState.isSelected) {\n return true;\n }\n return !shallowCompare(this.props, nextProps);\n } else {\n return true;\n }\n }\n\n public render(): JSX.Element {\n const {\n className,\n columns = NO_COLUMNS,\n dragDropEvents,\n item,\n itemIndex,\n id,\n flatIndexOffset = 2,\n onRenderCheck = this._onRenderCheck,\n onRenderDetailsCheckbox,\n onRenderItemColumn,\n onRenderField,\n getCellValueKey,\n selectionMode,\n rowWidth = 0,\n checkboxVisibility,\n getRowAriaLabel,\n getRowAriaDescription,\n getRowAriaDescribedBy,\n checkButtonAriaLabel,\n checkboxCellClassName,\n /** Alias rowFieldsAs as RowFields and default to DetailsRowFields if rowFieldsAs does not exist */\n rowFieldsAs,\n selection,\n indentWidth,\n enableUpdateAnimations,\n compact,\n theme,\n styles,\n cellsByColumn,\n groupNestingDepth,\n useFastIcons = true,\n cellStyleProps,\n group,\n focusZoneProps,\n disabled = false,\n } = this.props;\n const { columnMeasureInfo, isDropping } = this.state;\n const { isSelected = false, isSelectionModal = false } = this.state.selectionState;\n const isDraggable = dragDropEvents ? !!(dragDropEvents.canDrag && dragDropEvents.canDrag(item)) : undefined;\n const droppingClassName = isDropping ? this._droppingClassNames || DEFAULT_DROPPING_CSS_CLASS : '';\n const ariaLabel = getRowAriaLabel ? getRowAriaLabel(item) : undefined;\n const ariaRowDescription = getRowAriaDescription ? getRowAriaDescription(item) : undefined;\n const ariaDescribedBy = getRowAriaDescribedBy ? getRowAriaDescribedBy(item) : undefined;\n const canSelect = !!selection && selection.canSelectItem(item, itemIndex) && !disabled;\n const isContentUnselectable = selectionMode === SelectionMode.multiple;\n const showCheckbox = selectionMode !== SelectionMode.none && checkboxVisibility !== CheckboxVisibility.hidden;\n const ariaSelected = selectionMode === SelectionMode.none ? undefined : isSelected;\n const ariaPositionInSet = group ? itemIndex - group.startIndex + 1 : undefined;\n const ariaSetSize = group ? group.count : undefined;\n const focusZoneDirection = focusZoneProps ? focusZoneProps.direction : FocusZoneDirection.horizontal;\n\n this._classNames = {\n ...this._classNames,\n ...getClassNames(styles, {\n theme: theme!,\n isSelected,\n canSelect: !isContentUnselectable,\n anySelected: isSelectionModal,\n checkboxCellClassName,\n droppingClassName,\n className,\n compact,\n enableUpdateAnimations,\n cellStyleProps,\n disabled,\n }),\n };\n\n const rowClassNames: IDetailsRowFieldsProps['rowClassNames'] = {\n isMultiline: this._classNames.isMultiline,\n isRowHeader: this._classNames.isRowHeader,\n cell: this._classNames.cell,\n cellAnimation: this._classNames.cellAnimation,\n cellPadded: this._classNames.cellPadded,\n cellUnpadded: this._classNames.cellUnpadded,\n fields: this._classNames.fields,\n };\n\n // Only re-assign rowClassNames when classNames have changed.\n // Otherwise, they will cause DetailsRowFields to unnecessarily\n // re-render, see https://github.com/microsoft/fluentui/pull/8799.\n // Refactor DetailsRowFields to generate own styles to remove need for this.\n if (!shallowCompare(this._rowClassNames || {}, rowClassNames)) {\n this._rowClassNames = rowClassNames;\n }\n\n const RowFields = rowFieldsAs ? composeComponentAs(rowFieldsAs, DetailsRowFields) : DetailsRowFields;\n\n const rowFields = (\n \n );\n\n const defaultRole = 'row';\n const role = this.props.role ? this.props.role : defaultRole;\n this._ariaRowDescriptionId = getId('DetailsRow-description');\n\n // When the user does not specify any column is a row-header in the columns props,\n // The aria-labelledby of the checkbox does not specify {id}-header.\n const hasRowHeader = columns.some(column => {\n return !!column.isRowHeader;\n });\n const ariaLabelledby = `${id}-checkbox` + (hasRowHeader ? ` ${id}-header` : '');\n\n return (\n \n {ariaRowDescription ? (\n \n ) : null}\n {showCheckbox && (\n
    \n {onRenderCheck({\n id: id ? `${id}-checkbox` : undefined,\n selected: isSelected,\n selectionMode,\n anySelected: isSelectionModal,\n 'aria-label': checkButtonAriaLabel,\n 'aria-labelledby': id ? ariaLabelledby : undefined,\n canSelect,\n compact,\n className: this._classNames.check,\n theme,\n isVisible: checkboxVisibility === CheckboxVisibility.always,\n onRenderDetailsCheckbox: onRenderDetailsCheckbox,\n useFastIcons,\n })}\n
    \n )}\n\n \n\n {item && rowFields}\n {columnMeasureInfo && (\n \n \n \n )}\n\n \n \n );\n }\n\n /**\n * measure cell at index. and call the call back with the measured cell width when finish measure\n *\n * @param index - The cell index\n * @param onMeasureDone - The call back function when finish measure\n */\n public measureCell(index: number, onMeasureDone: (width: number) => void): void {\n const { columns = NO_COLUMNS } = this.props;\n const column: IColumn = { ...columns[index] };\n\n column.minWidth = 0;\n column.maxWidth = 999999;\n\n delete column.calculatedWidth;\n\n this.setState({\n columnMeasureInfo: {\n index,\n column,\n onMeasureDone,\n },\n });\n }\n\n public focus(forceIntoFirstElement: boolean = false): boolean {\n return !!this._focusZone.current?.focus(forceIntoFirstElement);\n }\n\n protected _onRenderCheck(props: IDetailsRowCheckProps) {\n return ;\n }\n\n private _onSelectionChanged = (): void => {\n const selectionState = getSelectionState(this.props);\n\n if (!shallowCompare(selectionState, this.state.selectionState)) {\n this.setState({\n selectionState: selectionState,\n });\n }\n };\n\n private _getRowDragDropOptions(): IDragDropOptions {\n const { item, itemIndex, dragDropEvents, eventsToRegister } = this.props;\n const options = {\n eventMap: eventsToRegister,\n selectionIndex: itemIndex,\n context: { data: item, index: itemIndex },\n canDrag: dragDropEvents!.canDrag,\n canDrop: dragDropEvents!.canDrop,\n onDragStart: dragDropEvents!.onDragStart,\n updateDropState: this._updateDroppingState,\n onDrop: dragDropEvents!.onDrop,\n onDragEnd: dragDropEvents!.onDragEnd,\n onDragOver: dragDropEvents!.onDragOver,\n };\n\n return options;\n }\n\n /**\n * update isDropping state based on the input value, which is used to change style during drag and drop\n *\n * when change to true, that means drag enter. we will add default dropping class name\n * or the custom dropping class name (return result from onDragEnter) to the root elemet.\n *\n * when change to false, that means drag leave. we will remove the dropping class name from root element.\n *\n * @param newValue - New isDropping state value\n * @param event - The event trigger dropping state change which can be dragenter, dragleave etc\n */\n private _updateDroppingState = (newValue: boolean, event: DragEvent): void => {\n const { isDropping } = this.state;\n const { dragDropEvents, item } = this.props;\n\n if (!newValue) {\n if (dragDropEvents!.onDragLeave) {\n dragDropEvents!.onDragLeave(item, event);\n }\n } else if (dragDropEvents!.onDragEnter) {\n this._droppingClassNames = dragDropEvents!.onDragEnter(item, event);\n }\n\n if (isDropping !== newValue) {\n this.setState({ isDropping: newValue });\n }\n };\n}\n\nfunction getSelectionState(props: IDetailsRowBaseProps): IDetailsRowSelectionState {\n const { itemIndex, selection } = props;\n\n return {\n isSelected: !!selection?.isIndexSelected(itemIndex),\n isSelectionModal: !!selection?.isModal?.(),\n };\n}\n","import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport { DetailsRowBase } from './DetailsRow.base';\nimport { getDetailsRowStyles } from './DetailsRow.styles';\nimport type {\n IDetailsRowProps,\n IDetailsRowBaseProps,\n IDetailsRowStyleProps,\n IDetailsRowStyles,\n} from './DetailsRow.types';\n\nexport const DetailsRow: React.FunctionComponent = styled<\n IDetailsRowBaseProps,\n IDetailsRowStyleProps,\n IDetailsRowStyles\n>(DetailsRowBase, getDetailsRowStyles, undefined, {\n scope: 'DetailsRow',\n});\n\nexport type { IDetailsRowProps, IDetailsRowBaseProps };\n","/**\n * Simple deep merge function. Takes all arguments and returns a deep copy of the objects merged\n * together in the order provided. If an object creates a circular reference, it will assign the\n * original reference.\n */\nexport function merge(target: Partial, ...args: (Partial | null | undefined | false)[]): T {\n for (const arg of args) {\n _merge(target || {}, arg as Partial);\n }\n\n return target as T;\n}\n\n/**\n * The _merge helper iterates through all props on source and assigns them to target.\n * When the value is an object, we will create a deep clone of the object. However if\n * there is a circular reference, the value will not be deep cloned and will persist\n * the reference.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _merge(target: T, source: T, circularReferences: any[] = []): T {\n circularReferences.push(source);\n\n for (let name in source) {\n if (source.hasOwnProperty(name)) {\n if (name !== '__proto__' && name !== 'constructor' && name !== 'prototype') {\n const value: T[Extract] = source[name];\n if (typeof value === 'object' && value !== null && !Array.isArray(value)) {\n const isCircularReference = circularReferences.indexOf(value) > -1;\n target[name] = (isCircularReference\n ? value\n : _merge(target[name] || {}, value, circularReferences)) as T[Extract];\n } else {\n target[name] = value;\n }\n }\n }\n }\n\n circularReferences.pop();\n\n return target;\n}\n","import { merge } from '@fluentui/utilities';\nimport { getSemanticColors } from './utilities/makeSemanticColors';\nimport type { IFontStyles, PartialTheme, Theme } from './types/index';\n\n/**\n * Merge a partial/full theme into a full theme and returns a merged full theme.\n */\nexport function mergeThemes(theme: Theme, partialTheme: PartialTheme = {}): Theme {\n const mergedTheme = merge({}, theme, partialTheme, {\n semanticColors: getSemanticColors(\n partialTheme.palette,\n partialTheme.effects,\n partialTheme.semanticColors,\n partialTheme.isInverted === undefined ? theme.isInverted : partialTheme.isInverted,\n ),\n }) as Theme;\n\n if (partialTheme.palette?.themePrimary && !partialTheme.palette?.accent) {\n mergedTheme.palette.accent = partialTheme.palette.themePrimary;\n }\n\n if (partialTheme.defaultFontStyle) {\n for (const fontStyle of Object.keys(mergedTheme.fonts) as (keyof IFontStyles)[]) {\n mergedTheme.fonts[fontStyle] = merge(\n mergedTheme.fonts[fontStyle],\n partialTheme.defaultFontStyle,\n partialTheme?.fonts?.[fontStyle],\n );\n }\n }\n\n return mergedTheme;\n}\n","import { concatStyleSets, HighContrastSelector } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nimport { getStyles as getBaseButtonStyles } from '../BaseButton.styles';\nimport type { IButtonStyles } from '../Button.types';\nimport type { ITheme } from '../../../Styling';\n\nconst DEFAULT_BUTTON_HEIGHT = '40px';\nconst DEFAULT_PADDING = '0 4px';\n\nexport const getStyles = memoizeFunction(\n (theme: ITheme, customStyles?: IButtonStyles): IButtonStyles => {\n const baseButtonStyles: IButtonStyles = getBaseButtonStyles(theme);\n const actionButtonStyles: IButtonStyles = {\n root: {\n padding: DEFAULT_PADDING,\n height: DEFAULT_BUTTON_HEIGHT,\n color: theme.palette.neutralPrimary,\n backgroundColor: 'transparent',\n border: '1px solid transparent',\n selectors: {\n [HighContrastSelector]: {\n borderColor: 'Window',\n },\n },\n },\n\n rootHovered: {\n color: theme.palette.themePrimary,\n selectors: {\n [HighContrastSelector]: {\n color: 'Highlight',\n },\n },\n },\n\n iconHovered: {\n color: theme.palette.themePrimary,\n },\n\n rootPressed: {\n color: theme.palette.black,\n },\n\n rootExpanded: {\n color: theme.palette.themePrimary,\n },\n\n iconPressed: {\n color: theme.palette.themeDarker,\n },\n\n rootDisabled: {\n color: theme.palette.neutralTertiary,\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n selectors: {\n [HighContrastSelector]: {\n color: 'GrayText',\n },\n },\n },\n\n rootChecked: {\n color: theme.palette.black,\n },\n\n iconChecked: {\n color: theme.palette.themeDarker,\n },\n\n flexContainer: {\n justifyContent: 'flex-start',\n },\n\n icon: {\n color: theme.palette.themeDarkAlt,\n },\n\n iconDisabled: {\n color: 'inherit',\n },\n\n menuIcon: {\n color: theme.palette.neutralSecondary,\n },\n\n textContainer: {\n flexGrow: 0,\n },\n };\n\n return concatStyleSets(baseButtonStyles, actionButtonStyles, customStyles)!;\n },\n);\n","import * as React from 'react';\nimport { BaseButton } from '../BaseButton';\nimport { customizable, nullRender } from '../../../Utilities';\nimport { getStyles } from './ActionButton.styles';\nimport type { IButtonProps } from '../Button.types';\n\n/**\n * {@docCategory Button}\n */\n@customizable('ActionButton', ['theme', 'styles'], true)\nexport class ActionButton extends React.Component {\n public render(): JSX.Element {\n const { styles, theme } = this.props;\n\n return (\n \n );\n }\n}\n","import * as React from 'react';\nimport { extendComponent } from './extendComponent';\nimport type { IBaseProps } from './BaseComponent.types';\n\n/**\n * Helper to manage componentRef resolution. Internally appends logic to\n * lifetime methods to resolve componentRef to the passed in object.\n *\n * Usage: call initializeComponentRef(this) in the constructor,\n */\nexport function initializeComponentRef(obj: React.Component): void {\n extendComponent(obj, {\n componentDidMount: _onMount,\n componentDidUpdate: _onUpdate,\n componentWillUnmount: _onUnmount,\n });\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _onMount(this: any): void {\n _setComponentRef(this.props.componentRef, this);\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _onUpdate(this: any, prevProps: IBaseProps): void {\n if (prevProps.componentRef !== this.props.componentRef) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _setComponentRef((prevProps as any).componentRef, null);\n _setComponentRef(this.props.componentRef, this);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _onUnmount(this: any): void {\n _setComponentRef(this.props.componentRef, null);\n}\n\nfunction _setComponentRef(componentRef: React.RefObject, value: TInterface | null): void {\n if (componentRef) {\n if (typeof componentRef === 'object') {\n (componentRef as { current: TInterface | null }).current = value;\n } else if (typeof componentRef === 'function') {\n (componentRef as Function)(value);\n }\n }\n}\n","import { getDocument } from './dom/getDocument';\nimport { mergeStyles } from '@fluentui/merge-styles';\nimport { EventGroup } from './EventGroup';\nimport { getWindow } from './dom/getWindow';\n\nlet _scrollbarWidth: number;\nlet _bodyScrollDisabledCount = 0;\n\nconst DisabledScrollClassName = mergeStyles({\n overflow: 'hidden !important' as 'hidden',\n});\n\n/**\n * Placing this attribute on scrollable divs optimizes detection to know\n * if the div is scrollable or not (given we can avoid expensive operations\n * like getComputedStyle.)\n *\n * @public\n */\nexport const DATA_IS_SCROLLABLE_ATTRIBUTE = 'data-is-scrollable';\n\n/**\n * Allows the user to scroll within a element,\n * while preventing the user from scrolling the body\n */\nexport const allowScrollOnElement = (element: HTMLElement | null, events: EventGroup): void => {\n if (!element) {\n return;\n }\n\n let _previousClientY = 0;\n let _element: Element | null = null;\n\n // remember the clientY for future calls of _preventOverscrolling\n const _saveClientY = (event: TouchEvent): void => {\n if (event.targetTouches.length === 1) {\n _previousClientY = event.targetTouches[0].clientY;\n }\n };\n\n // prevent the body from scrolling when the user attempts\n // to scroll past the top or bottom of the element\n const _preventOverscrolling = (event: TouchEvent): void => {\n // only respond to a single-finger touch\n if (event.targetTouches.length !== 1) {\n return;\n }\n\n // prevent the body touchmove handler from firing\n // so that scrolling is allowed within the element\n event.stopPropagation();\n\n if (!_element) {\n return;\n }\n\n const clientY = event.targetTouches[0].clientY - _previousClientY;\n\n const scrollableParent = findScrollableParent(event.target as HTMLElement) as HTMLElement;\n if (scrollableParent) {\n _element = scrollableParent;\n }\n\n // if the element is scrolled to the top,\n // prevent the user from scrolling up\n if (_element.scrollTop === 0 && clientY > 0) {\n event.preventDefault();\n }\n\n // if the element is scrolled to the bottom,\n // prevent the user from scrolling down\n if (_element.scrollHeight - Math.ceil(_element.scrollTop) <= _element.clientHeight && clientY < 0) {\n event.preventDefault();\n }\n };\n\n events.on(element, 'touchstart', _saveClientY, { passive: false });\n events.on(element, 'touchmove', _preventOverscrolling, { passive: false });\n\n _element = element;\n};\n\n/**\n * Same as allowScrollOnElement but does not prevent overscrolling.\n */\nexport const allowOverscrollOnElement = (element: HTMLElement | null, events: EventGroup): void => {\n if (!element) {\n return;\n }\n const _allowElementScroll = (event: TouchEvent) => {\n event.stopPropagation();\n };\n events.on(element, 'touchmove', _allowElementScroll, { passive: false });\n};\n\nconst _disableIosBodyScroll = (event: TouchEvent) => {\n event.preventDefault();\n};\n\n/**\n * Disables the body scrolling.\n *\n * @public\n */\nexport function disableBodyScroll(): void {\n let doc = getDocument();\n\n if (doc && doc.body && !_bodyScrollDisabledCount) {\n doc.body.classList.add(DisabledScrollClassName);\n doc.body.addEventListener('touchmove', _disableIosBodyScroll, { passive: false, capture: false });\n }\n\n _bodyScrollDisabledCount++;\n}\n\n/**\n * Enables the body scrolling.\n *\n * @public\n */\nexport function enableBodyScroll(): void {\n if (_bodyScrollDisabledCount > 0) {\n let doc = getDocument();\n\n if (doc && doc.body && _bodyScrollDisabledCount === 1) {\n doc.body.classList.remove(DisabledScrollClassName);\n doc.body.removeEventListener('touchmove', _disableIosBodyScroll);\n }\n\n _bodyScrollDisabledCount--;\n }\n}\n\n/**\n * Calculates the width of a scrollbar for the browser/os.\n *\n * @public\n */\nexport function getScrollbarWidth(): number {\n if (_scrollbarWidth === undefined) {\n let scrollDiv: HTMLElement = document.createElement('div');\n scrollDiv.style.setProperty('width', '100px');\n scrollDiv.style.setProperty('height', '100px');\n scrollDiv.style.setProperty('overflow', 'scroll');\n scrollDiv.style.setProperty('position', 'absolute');\n scrollDiv.style.setProperty('top', '-9999px');\n document.body.appendChild(scrollDiv);\n // Get the scrollbar width\n _scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n\n // Delete the DIV\n document.body.removeChild(scrollDiv);\n }\n\n return _scrollbarWidth;\n}\n\n/**\n * Traverses up the DOM for the element with the data-is-scrollable=true attribute, or returns\n * document.body.\n *\n * @public\n */\nexport function findScrollableParent(startingElement: HTMLElement | null): HTMLElement | Window | undefined | null {\n let el: HTMLElement | Window | undefined | null = startingElement;\n const doc = getDocument(startingElement)!;\n\n // First do a quick scan for the scrollable attribute.\n while (el && el !== doc.body) {\n if (el.getAttribute(DATA_IS_SCROLLABLE_ATTRIBUTE) === 'true') {\n return el;\n }\n el = el.parentElement;\n }\n\n // If we haven't found it, the use the slower method: compute styles to evaluate if overflow is set.\n el = startingElement;\n\n while (el && el !== doc.body) {\n if (el.getAttribute(DATA_IS_SCROLLABLE_ATTRIBUTE) !== 'false') {\n const computedStyles = getComputedStyle(el);\n let overflowY = computedStyles ? computedStyles.getPropertyValue('overflow-y') : '';\n\n if (overflowY && (overflowY === 'scroll' || overflowY === 'auto')) {\n return el;\n }\n }\n\n el = el.parentElement;\n }\n\n // Fall back to window scroll.\n if (!el || el === doc.body) {\n el = getWindow(startingElement);\n }\n\n return el;\n}\n","import * as React from 'react';\nimport { Icon, FontIcon } from '../../Icon';\nimport { classNamesFunction } from '../../Utilities';\nimport type { ICheckProps, ICheckStyleProps, ICheckStyles } from './Check.types';\n\nconst getClassNames = classNamesFunction();\n\nexport const CheckBase: React.FunctionComponent = React.forwardRef(\n (props, ref) => {\n const { checked = false, className, theme, styles, useFastIcons = true } = props;\n\n const classNames = getClassNames(styles!, { theme: theme!, className, checked });\n const IconComponent = useFastIcons ? FontIcon : Icon;\n\n return (\n
    \n \n \n
    \n );\n },\n);\nCheckBase.displayName = 'CheckBase';\n","import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport { CheckBase } from './Check.base';\nimport { getStyles } from './Check.styles';\nimport type { ICheckProps, ICheckStyleProps, ICheckStyles } from './Check.types';\n\nexport const Check: React.FunctionComponent = styled(\n CheckBase,\n getStyles,\n undefined,\n {\n scope: 'Check',\n },\n true,\n);\n","/** @license React v17.0.2\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),m=require(\"object-assign\"),r=require(\"scheduler\");function y(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;cb}return!1}function B(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var D={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){D[a]=new B(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];D[b]=new B(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){D[a]=new B(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){D[a]=new B(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){D[a]=new B(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){D[a]=new B(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){D[a]=new B(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){D[a]=new B(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){D[a]=new B(a,5,!1,a.toLowerCase(),null,!1,!1)});var oa=/[\\-:]([a-z])/g;function pa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(oa,\npa);D[b]=new B(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!1,!1)});\nD.xlinkHref=new B(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction qa(a,b,c,d){var e=D.hasOwnProperty(b)?D[b]:null;var f=null!==e?0===e.type:d?!1:!(2h||e[g]!==f[h])return\"\\n\"+e[g].replace(\" at new \",\" at \");while(1<=g&&0<=h)}break}}}finally{Oa=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Na(a):\"\"}\nfunction Qa(a){switch(a.tag){case 5:return Na(a.type);case 16:return Na(\"Lazy\");case 13:return Na(\"Suspense\");case 19:return Na(\"SuspenseList\");case 0:case 2:case 15:return a=Pa(a.type,!1),a;case 11:return a=Pa(a.type.render,!1),a;case 22:return a=Pa(a.type._render,!1),a;case 1:return a=Pa(a.type,!0),a;default:return\"\"}}\nfunction Ra(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ua:return\"Fragment\";case ta:return\"Portal\";case xa:return\"Profiler\";case wa:return\"StrictMode\";case Ba:return\"Suspense\";case Ca:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case za:return(a.displayName||\"Context\")+\".Consumer\";case ya:return(a._context.displayName||\"Context\")+\".Provider\";case Aa:var b=a.render;b=b.displayName||b.name||\"\";\nreturn a.displayName||(\"\"!==b?\"ForwardRef(\"+b+\")\":\"ForwardRef\");case Da:return Ra(a.type);case Fa:return Ra(a._render);case Ea:b=a._payload;a=a._init;try{return Ra(a(b))}catch(c){}}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"object\":case \"string\":case \"undefined\":return a;default:return\"\"}}function Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return m({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function $a(a,b){b=b.checked;null!=b&&qa(a,\"checked\",b,!1)}\nfunction ab(a,b){$a(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?bb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&bb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction cb(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction bb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}function db(a){var b=\"\";aa.Children.forEach(a,function(a){null!=a&&(b+=a)});return b}function eb(a,b){a=m({children:void 0},b);if(b=db(b.children))a.children=b;return a}\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e=c.length))throw Error(y(93));c=c[0]}b=c}null==b&&(b=\"\");c=b}a._wrapperState={initialValue:Sa(c)}}\nfunction ib(a,b){var c=Sa(b.value),d=Sa(b.defaultValue);null!=c&&(c=\"\"+c,c!==a.value&&(a.value=c),null==b.defaultValue&&a.defaultValue!==c&&(a.defaultValue=c));null!=d&&(a.defaultValue=\"\"+d)}function jb(a){var b=a.textContent;b===a._wrapperState.initialValue&&\"\"!==b&&null!==b&&(a.value=b)}var kb={html:\"http://www.w3.org/1999/xhtml\",mathml:\"http://www.w3.org/1998/Math/MathML\",svg:\"http://www.w3.org/2000/svg\"};\nfunction lb(a){switch(a){case \"svg\":return\"http://www.w3.org/2000/svg\";case \"math\":return\"http://www.w3.org/1998/Math/MathML\";default:return\"http://www.w3.org/1999/xhtml\"}}function mb(a,b){return null==a||\"http://www.w3.org/1999/xhtml\"===a?lb(b):\"http://www.w3.org/2000/svg\"===a&&\"foreignObject\"===b?\"http://www.w3.org/1999/xhtml\":a}\nvar nb,ob=function(a){return\"undefined\"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(b,c,d,e){MSApp.execUnsafeLocalFunction(function(){return a(b,c,d,e)})}:a}(function(a,b){if(a.namespaceURI!==kb.svg||\"innerHTML\"in a)a.innerHTML=b;else{nb=nb||document.createElement(\"div\");nb.innerHTML=\"\"+b.valueOf().toString()+\"\";for(b=nb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction pb(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar qb={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,\nfloodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},rb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(qb).forEach(function(a){rb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);qb[b]=qb[a]})});function sb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||qb.hasOwnProperty(a)&&qb[a]?(\"\"+b).trim():b+\"px\"}\nfunction tb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=sb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var ub=m({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction vb(a,b){if(b){if(ub[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(y(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(y(60));if(!(\"object\"===typeof b.dangerouslySetInnerHTML&&\"__html\"in b.dangerouslySetInnerHTML))throw Error(y(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(y(62));}}\nfunction wb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(y(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;ad?0:1<c;c++)b.push(a);return b}\nfunction $c(a,b,c){a.pendingLanes|=b;var d=b-1;a.suspendedLanes&=d;a.pingedLanes&=d;a=a.eventTimes;b=31-Vc(b);a[b]=c}var Vc=Math.clz32?Math.clz32:ad,bd=Math.log,cd=Math.LN2;function ad(a){return 0===a?32:31-(bd(a)/cd|0)|0}var dd=r.unstable_UserBlockingPriority,ed=r.unstable_runWithPriority,fd=!0;function gd(a,b,c,d){Kb||Ib();var e=hd,f=Kb;Kb=!0;try{Hb(e,a,b,c,d)}finally{(Kb=f)||Mb()}}function id(a,b,c,d){ed(dd,hd.bind(null,a,b,c,d))}\nfunction hd(a,b,c,d){if(fd){var e;if((e=0===(b&4))&&0=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Ke(c)}}function Me(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Me(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Ne(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Oe(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nvar Pe=fa&&\"documentMode\"in document&&11>=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Oe(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Je(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0Af||(a.current=zf[Af],zf[Af]=null,Af--)}function I(a,b){Af++;zf[Af]=a.current;a.current=b}var Cf={},M=Bf(Cf),N=Bf(!1),Df=Cf;\nfunction Ef(a,b){var c=a.type.contextTypes;if(!c)return Cf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}function Ff(a){a=a.childContextTypes;return null!==a&&void 0!==a}function Gf(){H(N);H(M)}function Hf(a,b,c){if(M.current!==Cf)throw Error(y(168));I(M,b);I(N,c)}\nfunction If(a,b,c){var d=a.stateNode;a=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in a))throw Error(y(108,Ra(b)||\"Unknown\",e));return m({},c,d)}function Jf(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Cf;Df=M.current;I(M,a);I(N,N.current);return!0}function Kf(a,b,c){var d=a.stateNode;if(!d)throw Error(y(169));c?(a=If(a,b,Df),d.__reactInternalMemoizedMergedChildContext=a,H(N),H(M),I(M,a)):H(N);I(N,c)}\nvar Lf=null,Mf=null,Nf=r.unstable_runWithPriority,Of=r.unstable_scheduleCallback,Pf=r.unstable_cancelCallback,Qf=r.unstable_shouldYield,Rf=r.unstable_requestPaint,Sf=r.unstable_now,Tf=r.unstable_getCurrentPriorityLevel,Uf=r.unstable_ImmediatePriority,Vf=r.unstable_UserBlockingPriority,Wf=r.unstable_NormalPriority,Xf=r.unstable_LowPriority,Yf=r.unstable_IdlePriority,Zf={},$f=void 0!==Rf?Rf:function(){},ag=null,bg=null,cg=!1,dg=Sf(),O=1E4>dg?Sf:function(){return Sf()-dg};\nfunction eg(){switch(Tf()){case Uf:return 99;case Vf:return 98;case Wf:return 97;case Xf:return 96;case Yf:return 95;default:throw Error(y(332));}}function fg(a){switch(a){case 99:return Uf;case 98:return Vf;case 97:return Wf;case 96:return Xf;case 95:return Yf;default:throw Error(y(332));}}function gg(a,b){a=fg(a);return Nf(a,b)}function hg(a,b,c){a=fg(a);return Of(a,b,c)}function ig(){if(null!==bg){var a=bg;bg=null;Pf(a)}jg()}\nfunction jg(){if(!cg&&null!==ag){cg=!0;var a=0;try{var b=ag;gg(99,function(){for(;az?(q=u,u=null):q=u.sibling;var n=p(e,u,h[z],k);if(null===n){null===u&&(u=q);break}a&&u&&null===\nn.alternate&&b(e,u);g=f(n,g,z);null===t?l=n:t.sibling=n;t=n;u=q}if(z===h.length)return c(e,u),l;if(null===u){for(;zz?(q=u,u=null):q=u.sibling;var w=p(e,u,n.value,k);if(null===w){null===u&&(u=q);break}a&&u&&null===w.alternate&&b(e,u);g=f(w,g,z);null===t?l=w:t.sibling=w;t=w;u=q}if(n.done)return c(e,u),l;if(null===u){for(;!n.done;z++,n=h.next())n=A(e,n.value,k),null!==n&&(g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);return l}for(u=d(e,u);!n.done;z++,n=h.next())n=C(u,e,z,n.value,k),null!==n&&(a&&null!==n.alternate&&\nu.delete(null===n.key?z:n.key),g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);a&&u.forEach(function(a){return b(e,a)});return l}return function(a,d,f,h){var k=\"object\"===typeof f&&null!==f&&f.type===ua&&null===f.key;k&&(f=f.props.children);var l=\"object\"===typeof f&&null!==f;if(l)switch(f.$$typeof){case sa:a:{l=f.key;for(k=d;null!==k;){if(k.key===l){switch(k.tag){case 7:if(f.type===ua){c(a,k.sibling);d=e(k,f.props.children);d.return=a;a=d;break a}break;default:if(k.elementType===f.type){c(a,k.sibling);\nd=e(k,f.props);d.ref=Qg(a,k,f);d.return=a;a=d;break a}}c(a,k);break}else b(a,k);k=k.sibling}f.type===ua?(d=Xg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Vg(f.type,f.key,f.props,null,a.mode,h),h.ref=Qg(a,d,f),h.return=a,a=h)}return g(a);case ta:a:{for(k=f.key;null!==d;){if(d.key===k)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=\nWg(f,a.mode,h);d.return=a;a=d}return g(a)}if(\"string\"===typeof f||\"number\"===typeof f)return f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):(c(a,d),d=Ug(f,a.mode,h),d.return=a,a=d),g(a);if(Pg(f))return x(a,d,f,h);if(La(f))return w(a,d,f,h);l&&Rg(a,f);if(\"undefined\"===typeof f&&!k)switch(a.tag){case 1:case 22:case 0:case 11:case 15:throw Error(y(152,Ra(a.type)||\"Component\"));}return c(a,d)}}var Yg=Sg(!0),Zg=Sg(!1),$g={},ah=Bf($g),bh=Bf($g),ch=Bf($g);\nfunction dh(a){if(a===$g)throw Error(y(174));return a}function eh(a,b){I(ch,b);I(bh,a);I(ah,$g);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:mb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=mb(b,a)}H(ah);I(ah,b)}function fh(){H(ah);H(bh);H(ch)}function gh(a){dh(ch.current);var b=dh(ah.current);var c=mb(b,a.type);b!==c&&(I(bh,a),I(ah,c))}function hh(a){bh.current===a&&(H(ah),H(bh))}var P=Bf(0);\nfunction ih(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&64))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var jh=null,kh=null,lh=!1;\nfunction mh(a,b){var c=nh(5,null,null,0);c.elementType=\"DELETED\";c.type=\"DELETED\";c.stateNode=b;c.return=a;c.flags=8;null!==a.lastEffect?(a.lastEffect.nextEffect=c,a.lastEffect=c):a.firstEffect=a.lastEffect=c}function oh(a,b){switch(a.tag){case 5:var c=a.type;b=1!==b.nodeType||c.toLowerCase()!==b.nodeName.toLowerCase()?null:b;return null!==b?(a.stateNode=b,!0):!1;case 6:return b=\"\"===a.pendingProps||3!==b.nodeType?null:b,null!==b?(a.stateNode=b,!0):!1;case 13:return!1;default:return!1}}\nfunction ph(a){if(lh){var b=kh;if(b){var c=b;if(!oh(a,b)){b=rf(c.nextSibling);if(!b||!oh(a,b)){a.flags=a.flags&-1025|2;lh=!1;jh=a;return}mh(jh,c)}jh=a;kh=rf(b.firstChild)}else a.flags=a.flags&-1025|2,lh=!1,jh=a}}function qh(a){for(a=a.return;null!==a&&5!==a.tag&&3!==a.tag&&13!==a.tag;)a=a.return;jh=a}\nfunction rh(a){if(a!==jh)return!1;if(!lh)return qh(a),lh=!0,!1;var b=a.type;if(5!==a.tag||\"head\"!==b&&\"body\"!==b&&!nf(b,a.memoizedProps))for(b=kh;b;)mh(a,b),b=rf(b.nextSibling);qh(a);if(13===a.tag){a=a.memoizedState;a=null!==a?a.dehydrated:null;if(!a)throw Error(y(317));a:{a=a.nextSibling;for(b=0;a;){if(8===a.nodeType){var c=a.data;if(\"/$\"===c){if(0===b){kh=rf(a.nextSibling);break a}b--}else\"$\"!==c&&\"$!\"!==c&&\"$?\"!==c||b++}a=a.nextSibling}kh=null}}else kh=jh?rf(a.stateNode.nextSibling):null;return!0}\nfunction sh(){kh=jh=null;lh=!1}var th=[];function uh(){for(var a=0;af))throw Error(y(301));f+=1;T=S=null;b.updateQueue=null;vh.current=Fh;a=c(d,e)}while(zh)}vh.current=Gh;b=null!==S&&null!==S.next;xh=0;T=S=R=null;yh=!1;if(b)throw Error(y(300));return a}function Hh(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};null===T?R.memoizedState=T=a:T=T.next=a;return T}\nfunction Ih(){if(null===S){var a=R.alternate;a=null!==a?a.memoizedState:null}else a=S.next;var b=null===T?R.memoizedState:T.next;if(null!==b)T=b,S=a;else{if(null===a)throw Error(y(310));S=a;a={memoizedState:S.memoizedState,baseState:S.baseState,baseQueue:S.baseQueue,queue:S.queue,next:null};null===T?R.memoizedState=T=a:T=T.next=a}return T}function Jh(a,b){return\"function\"===typeof b?b(a):b}\nfunction Kh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=S,e=d.baseQueue,f=c.pending;if(null!==f){if(null!==e){var g=e.next;e.next=f.next;f.next=g}d.baseQueue=e=f;c.pending=null}if(null!==e){e=e.next;d=d.baseState;var h=g=f=null,k=e;do{var l=k.lane;if((xh&l)===l)null!==h&&(h=h.next={lane:0,action:k.action,eagerReducer:k.eagerReducer,eagerState:k.eagerState,next:null}),d=k.eagerReducer===a?k.eagerState:a(d,k.action);else{var n={lane:l,action:k.action,eagerReducer:k.eagerReducer,\neagerState:k.eagerState,next:null};null===h?(g=h=n,f=d):h=h.next=n;R.lanes|=l;Dg|=l}k=k.next}while(null!==k&&k!==e);null===h?f=d:h.next=g;He(d,b.memoizedState)||(ug=!0);b.memoizedState=d;b.baseState=f;b.baseQueue=h;c.lastRenderedState=d}return[b.memoizedState,c.dispatch]}\nfunction Lh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=c.dispatch,e=c.pending,f=b.memoizedState;if(null!==e){c.pending=null;var g=e=e.next;do f=a(f,g.action),g=g.next;while(g!==e);He(f,b.memoizedState)||(ug=!0);b.memoizedState=f;null===b.baseQueue&&(b.baseState=f);c.lastRenderedState=f}return[f,d]}\nfunction Mh(a,b,c){var d=b._getVersion;d=d(b._source);var e=b._workInProgressVersionPrimary;if(null!==e)a=e===d;else if(a=a.mutableReadLanes,a=(xh&a)===a)b._workInProgressVersionPrimary=d,th.push(b);if(a)return c(b._source);th.push(b);throw Error(y(350));}\nfunction Nh(a,b,c,d){var e=U;if(null===e)throw Error(y(349));var f=b._getVersion,g=f(b._source),h=vh.current,k=h.useState(function(){return Mh(e,b,c)}),l=k[1],n=k[0];k=T;var A=a.memoizedState,p=A.refs,C=p.getSnapshot,x=A.source;A=A.subscribe;var w=R;a.memoizedState={refs:p,source:b,subscribe:d};h.useEffect(function(){p.getSnapshot=c;p.setSnapshot=l;var a=f(b._source);if(!He(g,a)){a=c(b._source);He(n,a)||(l(a),a=Ig(w),e.mutableReadLanes|=a&e.pendingLanes);a=e.mutableReadLanes;e.entangledLanes|=a;for(var d=\ne.entanglements,h=a;0c?98:c,function(){a(!0)});gg(97\\x3c/script>\",a=a.removeChild(a.firstChild)):\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[wf]=b;a[xf]=d;Bi(a,b,!1,!1);b.stateNode=a;g=wb(c,d);switch(c){case \"dialog\":G(\"cancel\",a);G(\"close\",a);\ne=d;break;case \"iframe\":case \"object\":case \"embed\":G(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;eJi&&(b.flags|=64,f=!0,Fi(d,!1),b.lanes=33554432)}else{if(!f)if(a=ih(g),null!==a){if(b.flags|=64,f=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Fi(d,!0),null===d.tail&&\"hidden\"===d.tailMode&&!g.alternate&&!lh)return b=b.lastEffect=d.lastEffect,null!==b&&(b.nextEffect=null),null}else 2*O()-d.renderingStartTime>Ji&&1073741824!==c&&(b.flags|=\n64,f=!0,Fi(d,!1),b.lanes=33554432);d.isBackwards?(g.sibling=b.child,b.child=g):(c=d.last,null!==c?c.sibling=g:b.child=g,d.last=g)}return null!==d.tail?(c=d.tail,d.rendering=c,d.tail=c.sibling,d.lastEffect=b.lastEffect,d.renderingStartTime=O(),c.sibling=null,b=P.current,I(P,f?b&1|2:b&1),c):null;case 23:case 24:return Ki(),null!==a&&null!==a.memoizedState!==(null!==b.memoizedState)&&\"unstable-defer-without-hiding\"!==d.mode&&(b.flags|=4),null}throw Error(y(156,b.tag));}\nfunction Li(a){switch(a.tag){case 1:Ff(a.type)&&Gf();var b=a.flags;return b&4096?(a.flags=b&-4097|64,a):null;case 3:fh();H(N);H(M);uh();b=a.flags;if(0!==(b&64))throw Error(y(285));a.flags=b&-4097|64;return a;case 5:return hh(a),null;case 13:return H(P),b=a.flags,b&4096?(a.flags=b&-4097|64,a):null;case 19:return H(P),null;case 4:return fh(),null;case 10:return rg(a),null;case 23:case 24:return Ki(),null;default:return null}}\nfunction Mi(a,b){try{var c=\"\",d=b;do c+=Qa(d),d=d.return;while(d);var e=c}catch(f){e=\"\\nError generating stack: \"+f.message+\"\\n\"+f.stack}return{value:a,source:b,stack:e}}function Ni(a,b){try{console.error(b.value)}catch(c){setTimeout(function(){throw c;})}}var Oi=\"function\"===typeof WeakMap?WeakMap:Map;function Pi(a,b,c){c=zg(-1,c);c.tag=3;c.payload={element:null};var d=b.value;c.callback=function(){Qi||(Qi=!0,Ri=d);Ni(a,b)};return c}\nfunction Si(a,b,c){c=zg(-1,c);c.tag=3;var d=a.type.getDerivedStateFromError;if(\"function\"===typeof d){var e=b.value;c.payload=function(){Ni(a,b);return d(e)}}var f=a.stateNode;null!==f&&\"function\"===typeof f.componentDidCatch&&(c.callback=function(){\"function\"!==typeof d&&(null===Ti?Ti=new Set([this]):Ti.add(this),Ni(a,b));var c=b.stack;this.componentDidCatch(b.value,{componentStack:null!==c?c:\"\"})});return c}var Ui=\"function\"===typeof WeakSet?WeakSet:Set;\nfunction Vi(a){var b=a.ref;if(null!==b)if(\"function\"===typeof b)try{b(null)}catch(c){Wi(a,c)}else b.current=null}function Xi(a,b){switch(b.tag){case 0:case 11:case 15:case 22:return;case 1:if(b.flags&256&&null!==a){var c=a.memoizedProps,d=a.memoizedState;a=b.stateNode;b=a.getSnapshotBeforeUpdate(b.elementType===b.type?c:lg(b.type,c),d);a.__reactInternalSnapshotBeforeUpdate=b}return;case 3:b.flags&256&&qf(b.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(y(163));}\nfunction Yi(a,b,c){switch(c.tag){case 0:case 11:case 15:case 22:b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{if(3===(a.tag&3)){var d=a.create;a.destroy=d()}a=a.next}while(a!==b)}b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{var e=a;d=e.next;e=e.tag;0!==(e&4)&&0!==(e&1)&&(Zi(c,a),$i(c,a));a=d}while(a!==b)}return;case 1:a=c.stateNode;c.flags&4&&(null===b?a.componentDidMount():(d=c.elementType===c.type?b.memoizedProps:lg(c.type,b.memoizedProps),a.componentDidUpdate(d,\nb.memoizedState,a.__reactInternalSnapshotBeforeUpdate)));b=c.updateQueue;null!==b&&Eg(c,b,a);return;case 3:b=c.updateQueue;if(null!==b){a=null;if(null!==c.child)switch(c.child.tag){case 5:a=c.child.stateNode;break;case 1:a=c.child.stateNode}Eg(c,b,a)}return;case 5:a=c.stateNode;null===b&&c.flags&4&&mf(c.type,c.memoizedProps)&&a.focus();return;case 6:return;case 4:return;case 12:return;case 13:null===c.memoizedState&&(c=c.alternate,null!==c&&(c=c.memoizedState,null!==c&&(c=c.dehydrated,null!==c&&Cc(c))));\nreturn;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(y(163));}\nfunction aj(a,b){for(var c=a;;){if(5===c.tag){var d=c.stateNode;if(b)d=d.style,\"function\"===typeof d.setProperty?d.setProperty(\"display\",\"none\",\"important\"):d.display=\"none\";else{d=c.stateNode;var e=c.memoizedProps.style;e=void 0!==e&&null!==e&&e.hasOwnProperty(\"display\")?e.display:null;d.style.display=sb(\"display\",e)}}else if(6===c.tag)c.stateNode.nodeValue=b?\"\":c.memoizedProps;else if((23!==c.tag&&24!==c.tag||null===c.memoizedState||c===a)&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===\na)break;for(;null===c.sibling;){if(null===c.return||c.return===a)return;c=c.return}c.sibling.return=c.return;c=c.sibling}}\nfunction bj(a,b){if(Mf&&\"function\"===typeof Mf.onCommitFiberUnmount)try{Mf.onCommitFiberUnmount(Lf,b)}catch(f){}switch(b.tag){case 0:case 11:case 14:case 15:case 22:a=b.updateQueue;if(null!==a&&(a=a.lastEffect,null!==a)){var c=a=a.next;do{var d=c,e=d.destroy;d=d.tag;if(void 0!==e)if(0!==(d&4))Zi(b,c);else{d=b;try{e()}catch(f){Wi(d,f)}}c=c.next}while(c!==a)}break;case 1:Vi(b);a=b.stateNode;if(\"function\"===typeof a.componentWillUnmount)try{a.props=b.memoizedProps,a.state=b.memoizedState,a.componentWillUnmount()}catch(f){Wi(b,\nf)}break;case 5:Vi(b);break;case 4:cj(a,b)}}function dj(a){a.alternate=null;a.child=null;a.dependencies=null;a.firstEffect=null;a.lastEffect=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.return=null;a.updateQueue=null}function ej(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction fj(a){a:{for(var b=a.return;null!==b;){if(ej(b))break a;b=b.return}throw Error(y(160));}var c=b;b=c.stateNode;switch(c.tag){case 5:var d=!1;break;case 3:b=b.containerInfo;d=!0;break;case 4:b=b.containerInfo;d=!0;break;default:throw Error(y(161));}c.flags&16&&(pb(b,\"\"),c.flags&=-17);a:b:for(c=a;;){for(;null===c.sibling;){if(null===c.return||ej(c.return)){c=null;break a}c=c.return}c.sibling.return=c.return;for(c=c.sibling;5!==c.tag&&6!==c.tag&&18!==c.tag;){if(c.flags&2)continue b;if(null===\nc.child||4===c.tag)continue b;else c.child.return=c,c=c.child}if(!(c.flags&2)){c=c.stateNode;break a}}d?gj(a,c,b):hj(a,c,b)}\nfunction gj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=jf));else if(4!==d&&(a=a.child,null!==a))for(gj(a,b,c),a=a.sibling;null!==a;)gj(a,b,c),a=a.sibling}\nfunction hj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(hj(a,b,c),a=a.sibling;null!==a;)hj(a,b,c),a=a.sibling}\nfunction cj(a,b){for(var c=b,d=!1,e,f;;){if(!d){d=c.return;a:for(;;){if(null===d)throw Error(y(160));e=d.stateNode;switch(d.tag){case 5:f=!1;break a;case 3:e=e.containerInfo;f=!0;break a;case 4:e=e.containerInfo;f=!0;break a}d=d.return}d=!0}if(5===c.tag||6===c.tag){a:for(var g=a,h=c,k=h;;)if(bj(g,k),null!==k.child&&4!==k.tag)k.child.return=k,k=k.child;else{if(k===h)break a;for(;null===k.sibling;){if(null===k.return||k.return===h)break a;k=k.return}k.sibling.return=k.return;k=k.sibling}f?(g=e,h=c.stateNode,\n8===g.nodeType?g.parentNode.removeChild(h):g.removeChild(h)):e.removeChild(c.stateNode)}else if(4===c.tag){if(null!==c.child){e=c.stateNode.containerInfo;f=!0;c.child.return=c;c=c.child;continue}}else if(bj(a,c),null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return;4===c.tag&&(d=!1)}c.sibling.return=c.return;c=c.sibling}}\nfunction ij(a,b){switch(b.tag){case 0:case 11:case 14:case 15:case 22:var c=b.updateQueue;c=null!==c?c.lastEffect:null;if(null!==c){var d=c=c.next;do 3===(d.tag&3)&&(a=d.destroy,d.destroy=void 0,void 0!==a&&a()),d=d.next;while(d!==c)}return;case 1:return;case 5:c=b.stateNode;if(null!=c){d=b.memoizedProps;var e=null!==a?a.memoizedProps:d;a=b.type;var f=b.updateQueue;b.updateQueue=null;if(null!==f){c[xf]=d;\"input\"===a&&\"radio\"===d.type&&null!=d.name&&$a(c,d);wb(a,e);b=wb(a,d);for(e=0;ee&&(e=g);c&=~f}c=e;c=O()-c;c=(120>c?120:480>c?480:1080>c?1080:1920>c?1920:3E3>c?3E3:4320>\nc?4320:1960*nj(c/1960))-c;if(10 component higher in the tree to provide a loading indicator or placeholder to display.\")}5!==V&&(V=2);k=Mi(k,h);p=\ng;do{switch(p.tag){case 3:f=k;p.flags|=4096;b&=-b;p.lanes|=b;var J=Pi(p,f,b);Bg(p,J);break a;case 1:f=k;var K=p.type,Q=p.stateNode;if(0===(p.flags&64)&&(\"function\"===typeof K.getDerivedStateFromError||null!==Q&&\"function\"===typeof Q.componentDidCatch&&(null===Ti||!Ti.has(Q)))){p.flags|=4096;b&=-b;p.lanes|=b;var L=Si(p,f,b);Bg(p,L);break a}}p=p.return}while(null!==p)}Zj(c)}catch(va){b=va;Y===c&&null!==c&&(Y=c=c.return);continue}break}while(1)}\nfunction Pj(){var a=oj.current;oj.current=Gh;return null===a?Gh:a}function Tj(a,b){var c=X;X|=16;var d=Pj();U===a&&W===b||Qj(a,b);do try{ak();break}catch(e){Sj(a,e)}while(1);qg();X=c;oj.current=d;if(null!==Y)throw Error(y(261));U=null;W=0;return V}function ak(){for(;null!==Y;)bk(Y)}function Rj(){for(;null!==Y&&!Qf();)bk(Y)}function bk(a){var b=ck(a.alternate,a,qj);a.memoizedProps=a.pendingProps;null===b?Zj(a):Y=b;pj.current=null}\nfunction Zj(a){var b=a;do{var c=b.alternate;a=b.return;if(0===(b.flags&2048)){c=Gi(c,b,qj);if(null!==c){Y=c;return}c=b;if(24!==c.tag&&23!==c.tag||null===c.memoizedState||0!==(qj&1073741824)||0===(c.mode&4)){for(var d=0,e=c.child;null!==e;)d|=e.lanes|e.childLanes,e=e.sibling;c.childLanes=d}null!==a&&0===(a.flags&2048)&&(null===a.firstEffect&&(a.firstEffect=b.firstEffect),null!==b.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=b.firstEffect),a.lastEffect=b.lastEffect),1g&&(h=g,g=J,J=h),h=Le(t,J),f=Le(t,g),h&&f&&(1!==v.rangeCount||v.anchorNode!==h.node||v.anchorOffset!==h.offset||v.focusNode!==f.node||v.focusOffset!==f.offset)&&(q=q.createRange(),q.setStart(h.node,h.offset),v.removeAllRanges(),J>g?(v.addRange(q),v.extend(f.node,f.offset)):(q.setEnd(f.node,f.offset),v.addRange(q))))));q=[];for(v=t;v=v.parentNode;)1===v.nodeType&&q.push({element:v,left:v.scrollLeft,top:v.scrollTop});\"function\"===typeof t.focus&&t.focus();for(t=\n0;tO()-jj?Qj(a,0):uj|=c);Mj(a,b)}function lj(a,b){var c=a.stateNode;null!==c&&c.delete(b);b=0;0===b&&(b=a.mode,0===(b&2)?b=1:0===(b&4)?b=99===eg()?1:2:(0===Gj&&(Gj=tj),b=Yc(62914560&~Gj),0===b&&(b=4194304)));c=Hg();a=Kj(a,b);null!==a&&($c(a,b,c),Mj(a,c))}var ck;\nck=function(a,b,c){var d=b.lanes;if(null!==a)if(a.memoizedProps!==b.pendingProps||N.current)ug=!0;else if(0!==(c&d))ug=0!==(a.flags&16384)?!0:!1;else{ug=!1;switch(b.tag){case 3:ri(b);sh();break;case 5:gh(b);break;case 1:Ff(b.type)&&Jf(b);break;case 4:eh(b,b.stateNode.containerInfo);break;case 10:d=b.memoizedProps.value;var e=b.type._context;I(mg,e._currentValue);e._currentValue=d;break;case 13:if(null!==b.memoizedState){if(0!==(c&b.child.childLanes))return ti(a,b,c);I(P,P.current&1);b=hi(a,b,c);return null!==\nb?b.sibling:null}I(P,P.current&1);break;case 19:d=0!==(c&b.childLanes);if(0!==(a.flags&64)){if(d)return Ai(a,b,c);b.flags|=64}e=b.memoizedState;null!==e&&(e.rendering=null,e.tail=null,e.lastEffect=null);I(P,P.current);if(d)break;else return null;case 23:case 24:return b.lanes=0,mi(a,b,c)}return hi(a,b,c)}else ug=!1;b.lanes=0;switch(b.tag){case 2:d=b.type;null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);a=b.pendingProps;e=Ef(b,M.current);tg(b,c);e=Ch(null,b,d,a,e,c);b.flags|=1;if(\"object\"===\ntypeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof){b.tag=1;b.memoizedState=null;b.updateQueue=null;if(Ff(d)){var f=!0;Jf(b)}else f=!1;b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null;xg(b);var g=d.getDerivedStateFromProps;\"function\"===typeof g&&Gg(b,d,g,a);e.updater=Kg;b.stateNode=e;e._reactInternals=b;Og(b,d,a,c);b=qi(null,b,d,!0,f,c)}else b.tag=0,fi(null,b,e,c),b=b.child;return b;case 16:e=b.elementType;a:{null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);\na=b.pendingProps;f=e._init;e=f(e._payload);b.type=e;f=b.tag=hk(e);a=lg(e,a);switch(f){case 0:b=li(null,b,e,a,c);break a;case 1:b=pi(null,b,e,a,c);break a;case 11:b=gi(null,b,e,a,c);break a;case 14:b=ii(null,b,e,lg(e.type,a),d,c);break a}throw Error(y(306,e,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),li(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),pi(a,b,d,e,c);case 3:ri(b);d=b.updateQueue;if(null===a||null===d)throw Error(y(282));\nd=b.pendingProps;e=b.memoizedState;e=null!==e?e.element:null;yg(a,b);Cg(b,d,null,c);d=b.memoizedState.element;if(d===e)sh(),b=hi(a,b,c);else{e=b.stateNode;if(f=e.hydrate)kh=rf(b.stateNode.containerInfo.firstChild),jh=b,f=lh=!0;if(f){a=e.mutableSourceEagerHydrationData;if(null!=a)for(e=0;e=\nE};k=function(){};exports.unstable_forceFrameRate=function(a){0>a||125>>1,e=a[d];if(void 0!==e&&0I(n,c))void 0!==r&&0>I(r,n)?(a[d]=r,a[v]=c,d=v):(a[d]=n,a[m]=c,d=m);else if(void 0!==r&&0>I(r,c))a[d]=r,a[v]=c,d=v;else break a}}return b}return null}function I(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}var L=[],M=[],N=1,O=null,P=3,Q=!1,R=!1,S=!1;\nfunction T(a){for(var b=J(M);null!==b;){if(null===b.callback)K(M);else if(b.startTime<=a)K(M),b.sortIndex=b.expirationTime,H(L,b);else break;b=J(M)}}function U(a){S=!1;T(a);if(!R)if(null!==J(L))R=!0,f(V);else{var b=J(M);null!==b&&g(U,b.startTime-a)}}\nfunction V(a,b){R=!1;S&&(S=!1,h());Q=!0;var c=P;try{T(b);for(O=J(L);null!==O&&(!(O.expirationTime>b)||a&&!exports.unstable_shouldYield());){var d=O.callback;if(\"function\"===typeof d){O.callback=null;P=O.priorityLevel;var e=d(O.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?O.callback=e:O===J(L)&&K(L);T(b)}else K(L);O=J(L)}if(null!==O)var m=!0;else{var n=J(M);null!==n&&g(U,n.startTime-b);m=!1}return m}finally{O=null,P=c,Q=!1}}var W=k;exports.unstable_IdlePriority=5;\nexports.unstable_ImmediatePriority=1;exports.unstable_LowPriority=4;exports.unstable_NormalPriority=3;exports.unstable_Profiling=null;exports.unstable_UserBlockingPriority=2;exports.unstable_cancelCallback=function(a){a.callback=null};exports.unstable_continueExecution=function(){R||Q||(R=!0,f(V))};exports.unstable_getCurrentPriorityLevel=function(){return P};exports.unstable_getFirstCallbackNode=function(){return J(L)};\nexports.unstable_next=function(a){switch(P){case 1:case 2:case 3:var b=3;break;default:b=P}var c=P;P=b;try{return a()}finally{P=c}};exports.unstable_pauseExecution=function(){};exports.unstable_requestPaint=W;exports.unstable_runWithPriority=function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=P;P=a;try{return b()}finally{P=c}};\nexports.unstable_scheduleCallback=function(a,b,c){var d=exports.unstable_now();\"object\"===typeof c&&null!==c?(c=c.delay,c=\"number\"===typeof c&&0d?(a.sortIndex=c,H(M,a),null===J(L)&&a===J(M)&&(S?h():S=!0,g(U,c-d))):(a.sortIndex=e,H(L,a),R||Q||(R=!0,f(V)));return a};\nexports.unstable_wrapCallback=function(a){var b=P;return function(){var c=P;P=b;try{return a.apply(this,arguments)}finally{P=c}}};\n","/** @license React v17.0.2\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';require(\"object-assign\");var f=require(\"react\"),g=60103;exports.Fragment=60107;if(\"function\"===typeof Symbol&&Symbol.for){var h=Symbol.for;g=h(\"react.element\");exports.Fragment=h(\"react.fragment\")}var m=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,n=Object.prototype.hasOwnProperty,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,k){var b,d={},e=null,l=null;void 0!==k&&(e=\"\"+k);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(l=a.ref);for(b in a)n.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:g,type:c,key:e,ref:l,props:d,_owner:m.current}}exports.jsx=q;exports.jsxs=q;\n","import { useRef, useEffect } from 'react';\n\n/**\n * Hook keeping track of a given value from a previous execution of the component the Hook is used in.\n *\n * See [React Hooks FAQ](https://reactjs.org/docs/hooks-faq.html#how-to-get-the-previous-props-or-state)\n */\nexport function usePrevious(value: T): T | undefined {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n}\n","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","module.exports = Array.isArray || function (arr) {\n return Object.prototype.toString.call(arr) == '[object Array]';\n};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(mergeConfig(axios.defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\n// Expose isAxiosError\naxios.isAxiosError = require('./helpers/isAxiosError');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean, '1.0.0'),\n forcedJSONParsing: validators.transitional(validators.boolean, '1.0.0'),\n clarifyTimeoutError: validators.transitional(validators.boolean, '1.0.0')\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar defaults = require('./../defaults');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n var context = this || defaults;\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn.call(context, data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n","'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar pkg = require('./../../package.json');\n\nvar validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nvar deprecatedWarnings = {};\nvar currentVerArr = pkg.version.split('.');\n\n/**\n * Compare package versions\n * @param {string} version\n * @param {string?} thanVersion\n * @returns {boolean}\n */\nfunction isOlderVersion(version, thanVersion) {\n var pkgVersionArr = thanVersion ? thanVersion.split('.') : currentVerArr;\n var destVer = version.split('.');\n for (var i = 0; i < 3; i++) {\n if (pkgVersionArr[i] > destVer[i]) {\n return true;\n } else if (pkgVersionArr[i] < destVer[i]) {\n return false;\n }\n }\n return false;\n}\n\n/**\n * Transitional option validator\n * @param {function|boolean?} validator\n * @param {string?} version\n * @param {string} message\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n var isDeprecated = version && isOlderVersion(version);\n\n function formatMessage(opt, desc) {\n return '[Axios v' + pkg.version + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return function(value, opt, opts) {\n if (validator === false) {\n throw new Error(formatMessage(opt, ' has been removed in ' + version));\n }\n\n if (isDeprecated && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new TypeError('options must be an object');\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new TypeError('option ' + opt + ' must be ' + result);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw Error('Unknown option ' + opt);\n }\n }\n}\n\nmodule.exports = {\n isOlderVersion: isOlderVersion,\n assertOptions: assertOptions,\n validators: validators\n};\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","'use strict';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return (typeof payload === 'object') && (payload.isAxiosError === true);\n};\n","/*!\n * mime-db\n * Copyright(c) 2014 Jonathan Ong\n * Copyright(c) 2015-2022 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n/**\n * Module exports.\n */\n\nmodule.exports = require('./db.json')\n","// .dirname, .basename, and .extname methods are extracted from Node.js v8.11.1,\n// backported and transplited with Babel, with backwards-compat fixes\n\n// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// resolves . and .. elements in a path array with directory names there\n// must be no slashes, empty elements, or device names (c:\\) in the array\n// (so also no leading and trailing slashes - it does not distinguish\n// relative and absolute paths)\nfunction normalizeArray(parts, allowAboveRoot) {\n // if the path tries to go above the root, `up` ends up > 0\n var up = 0;\n for (var i = parts.length - 1; i >= 0; i--) {\n var last = parts[i];\n if (last === '.') {\n parts.splice(i, 1);\n } else if (last === '..') {\n parts.splice(i, 1);\n up++;\n } else if (up) {\n parts.splice(i, 1);\n up--;\n }\n }\n\n // if the path is allowed to go above the root, restore leading ..s\n if (allowAboveRoot) {\n for (; up--; up) {\n parts.unshift('..');\n }\n }\n\n return parts;\n}\n\n// path.resolve([from ...], to)\n// posix version\nexports.resolve = function() {\n var resolvedPath = '',\n resolvedAbsolute = false;\n\n for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n var path = (i >= 0) ? arguments[i] : process.cwd();\n\n // Skip empty and invalid entries\n if (typeof path !== 'string') {\n throw new TypeError('Arguments to path.resolve must be strings');\n } else if (!path) {\n continue;\n }\n\n resolvedPath = path + '/' + resolvedPath;\n resolvedAbsolute = path.charAt(0) === '/';\n }\n\n // At this point the path should be resolved to a full absolute path, but\n // handle relative paths to be safe (might happen when process.cwd() fails)\n\n // Normalize the path\n resolvedPath = normalizeArray(filter(resolvedPath.split('/'), function(p) {\n return !!p;\n }), !resolvedAbsolute).join('/');\n\n return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.';\n};\n\n// path.normalize(path)\n// posix version\nexports.normalize = function(path) {\n var isAbsolute = exports.isAbsolute(path),\n trailingSlash = substr(path, -1) === '/';\n\n // Normalize the path\n path = normalizeArray(filter(path.split('/'), function(p) {\n return !!p;\n }), !isAbsolute).join('/');\n\n if (!path && !isAbsolute) {\n path = '.';\n }\n if (path && trailingSlash) {\n path += '/';\n }\n\n return (isAbsolute ? '/' : '') + path;\n};\n\n// posix version\nexports.isAbsolute = function(path) {\n return path.charAt(0) === '/';\n};\n\n// posix version\nexports.join = function() {\n var paths = Array.prototype.slice.call(arguments, 0);\n return exports.normalize(filter(paths, function(p, index) {\n if (typeof p !== 'string') {\n throw new TypeError('Arguments to path.join must be strings');\n }\n return p;\n }).join('/'));\n};\n\n\n// path.relative(from, to)\n// posix version\nexports.relative = function(from, to) {\n from = exports.resolve(from).substr(1);\n to = exports.resolve(to).substr(1);\n\n function trim(arr) {\n var start = 0;\n for (; start < arr.length; start++) {\n if (arr[start] !== '') break;\n }\n\n var end = arr.length - 1;\n for (; end >= 0; end--) {\n if (arr[end] !== '') break;\n }\n\n if (start > end) return [];\n return arr.slice(start, end - start + 1);\n }\n\n var fromParts = trim(from.split('/'));\n var toParts = trim(to.split('/'));\n\n var length = Math.min(fromParts.length, toParts.length);\n var samePartsLength = length;\n for (var i = 0; i < length; i++) {\n if (fromParts[i] !== toParts[i]) {\n samePartsLength = i;\n break;\n }\n }\n\n var outputParts = [];\n for (var i = samePartsLength; i < fromParts.length; i++) {\n outputParts.push('..');\n }\n\n outputParts = outputParts.concat(toParts.slice(samePartsLength));\n\n return outputParts.join('/');\n};\n\nexports.sep = '/';\nexports.delimiter = ':';\n\nexports.dirname = function (path) {\n if (typeof path !== 'string') path = path + '';\n if (path.length === 0) return '.';\n var code = path.charCodeAt(0);\n var hasRoot = code === 47 /*/*/;\n var end = -1;\n var matchedSlash = true;\n for (var i = path.length - 1; i >= 1; --i) {\n code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n if (!matchedSlash) {\n end = i;\n break;\n }\n } else {\n // We saw the first non-path separator\n matchedSlash = false;\n }\n }\n\n if (end === -1) return hasRoot ? '/' : '.';\n if (hasRoot && end === 1) {\n // return '//';\n // Backwards-compat fix:\n return '/';\n }\n return path.slice(0, end);\n};\n\nfunction basename(path) {\n if (typeof path !== 'string') path = path + '';\n\n var start = 0;\n var end = -1;\n var matchedSlash = true;\n var i;\n\n for (i = path.length - 1; i >= 0; --i) {\n if (path.charCodeAt(i) === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n start = i + 1;\n break;\n }\n } else if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // path component\n matchedSlash = false;\n end = i + 1;\n }\n }\n\n if (end === -1) return '';\n return path.slice(start, end);\n}\n\n// Uses a mixed approach for backwards-compatibility, as ext behavior changed\n// in new Node.js versions, so only basename() above is backported here\nexports.basename = function (path, ext) {\n var f = basename(path);\n if (ext && f.substr(-1 * ext.length) === ext) {\n f = f.substr(0, f.length - ext.length);\n }\n return f;\n};\n\nexports.extname = function (path) {\n if (typeof path !== 'string') path = path + '';\n var startDot = -1;\n var startPart = 0;\n var end = -1;\n var matchedSlash = true;\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find\n var preDotState = 0;\n for (var i = path.length - 1; i >= 0; --i) {\n var code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n startPart = i + 1;\n break;\n }\n continue;\n }\n if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // extension\n matchedSlash = false;\n end = i + 1;\n }\n if (code === 46 /*.*/) {\n // If this is our first dot, mark it as the start of our extension\n if (startDot === -1)\n startDot = i;\n else if (preDotState !== 1)\n preDotState = 1;\n } else if (startDot !== -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension\n preDotState = -1;\n }\n }\n\n if (startDot === -1 || end === -1 ||\n // We saw a non-dot character immediately before the dot\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly '..'\n preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n return '';\n }\n return path.slice(startDot, end);\n};\n\nfunction filter (xs, f) {\n if (xs.filter) return xs.filter(f);\n var res = [];\n for (var i = 0; i < xs.length; i++) {\n if (f(xs[i], i, xs)) res.push(xs[i]);\n }\n return res;\n}\n\n// String.prototype.substr - negative index don't work in IE8\nvar substr = 'ab'.substr(-1) === 'b'\n ? function (str, start, len) { return str.substr(start, len) }\n : function (str, start, len) {\n if (start < 0) start = str.length + start;\n return str.substr(start, len);\n }\n;\n","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a