{"version":3,"file":"static/js/main.22e26d9a.js","mappings":"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","sources":["../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/react-device-detect/dist/lib.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/client.js","../node_modules/react-dom/index.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/ua-parser-js/dist/ua-parser.min.js","../webpack/bootstrap","../webpack/runtime/amd options","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","logo.svg","App.js","reportWebVitals.js","../node_modules/@fortawesome/fontawesome-svg-core/index.mjs","../node_modules/@fortawesome/react-fontawesome/index.es.js","../node_modules/@fortawesome/free-brands-svg-icons/index.mjs","../node_modules/@remix-run/router/history.ts","../node_modules/@remix-run/router/utils.ts","../node_modules/@remix-run/router/router.ts","../node_modules/react-router/lib/context.ts","../node_modules/react-router/lib/hooks.tsx","../node_modules/react-router/lib/components.tsx","../node_modules/react-router/index.ts","../node_modules/react-router-dom/dom.ts","../node_modules/react-router-dom/index.tsx","components/Common/Sidebar.jsx","../node_modules/gsap/gsap-core.js","../node_modules/gsap/CSSPlugin.js","../node_modules/gsap/index.js","../node_modules/gsap/Observer.js","../node_modules/gsap/ScrollTrigger.js","../node_modules/swiper/shared/ssr-window.esm.mjs","../node_modules/swiper/shared/utils.mjs","../node_modules/swiper/shared/create-element-if-not-defined.mjs","../node_modules/swiper/modules/navigation.mjs","../node_modules/swiper/shared/classes-to-selector.mjs","../node_modules/swiper/modules/pagination.mjs","../node_modules/swiper/modules/scrollbar.mjs","../node_modules/swiper/modules/a11y.mjs","../node_modules/swiper/shared/swiper-core.mjs","../node_modules/swiper/shared/update-swiper.mjs","../node_modules/swiper/swiper-react.mjs","../node_modules/swiper/shared/update-on-virtual-data.mjs","components/Common/Slider.jsx","components/Common/Client.jsx","components/Common/Clientes.jsx","components/Common/Navbar.jsx","components/Common/LoadingUI.jsx","components/Common/ClientsMob.jsx","../node_modules/@fortawesome/free-solid-svg-icons/index.mjs","components/Home.jsx","../node_modules/split-type/dist/index.js","components/Common/AboutSection.jsx","components/About.jsx","index.js"],"sourcesContent":["/**\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\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","/**\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","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar React = require('react');\nvar React__default = _interopDefault(React);\n\nvar UAParser = require('ua-parser-js/dist/ua-parser.min');\n\nvar ClientUAInstance = new UAParser();\nvar browser = ClientUAInstance.getBrowser();\nvar cpu = ClientUAInstance.getCPU();\nvar device = ClientUAInstance.getDevice();\nvar engine = ClientUAInstance.getEngine();\nvar os = ClientUAInstance.getOS();\nvar ua = ClientUAInstance.getUA();\nvar setUa = function setUa(userAgentString) {\n return ClientUAInstance.setUA(userAgentString);\n};\nvar parseUserAgent = function parseUserAgent(userAgent) {\n if (!userAgent) {\n console.error('No userAgent string was provided');\n return;\n }\n\n var UserAgentInstance = new UAParser(userAgent);\n return {\n UA: UserAgentInstance,\n browser: UserAgentInstance.getBrowser(),\n cpu: UserAgentInstance.getCPU(),\n device: UserAgentInstance.getDevice(),\n engine: UserAgentInstance.getEngine(),\n os: UserAgentInstance.getOS(),\n ua: UserAgentInstance.getUA(),\n setUserAgent: function setUserAgent(userAgentString) {\n return UserAgentInstance.setUA(userAgentString);\n }\n };\n};\n\nvar UAHelper = /*#__PURE__*/Object.freeze({\n ClientUAInstance: ClientUAInstance,\n browser: browser,\n cpu: cpu,\n device: device,\n engine: engine,\n os: os,\n ua: ua,\n setUa: setUa,\n parseUserAgent: parseUserAgent\n});\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n\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 = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\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 _extends() {\n _extends = Object.assign || 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\n return _extends.apply(this, arguments);\n}\n\nfunction _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 if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\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 _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}\n\nfunction _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}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _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\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 _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\nvar DeviceTypes = {\n Mobile: 'mobile',\n Tablet: 'tablet',\n SmartTv: 'smarttv',\n Console: 'console',\n Wearable: 'wearable',\n Embedded: 'embedded',\n Browser: undefined\n};\nvar BrowserTypes = {\n Chrome: 'Chrome',\n Firefox: 'Firefox',\n Opera: 'Opera',\n Yandex: 'Yandex',\n Safari: 'Safari',\n InternetExplorer: 'Internet Explorer',\n Edge: 'Edge',\n Chromium: 'Chromium',\n Ie: 'IE',\n MobileSafari: 'Mobile Safari',\n EdgeChromium: 'Edge Chromium',\n MIUI: 'MIUI Browser',\n SamsungBrowser: 'Samsung Browser'\n};\nvar OsTypes = {\n IOS: 'iOS',\n Android: 'Android',\n WindowsPhone: 'Windows Phone',\n Windows: 'Windows',\n MAC_OS: 'Mac OS'\n};\nvar InitialDeviceTypes = {\n isMobile: false,\n isTablet: false,\n isBrowser: false,\n isSmartTV: false,\n isConsole: false,\n isWearable: false\n};\n\nvar checkDeviceType = function checkDeviceType(type) {\n switch (type) {\n case DeviceTypes.Mobile:\n return {\n isMobile: true\n };\n\n case DeviceTypes.Tablet:\n return {\n isTablet: true\n };\n\n case DeviceTypes.SmartTv:\n return {\n isSmartTV: true\n };\n\n case DeviceTypes.Console:\n return {\n isConsole: true\n };\n\n case DeviceTypes.Wearable:\n return {\n isWearable: true\n };\n\n case DeviceTypes.Browser:\n return {\n isBrowser: true\n };\n\n case DeviceTypes.Embedded:\n return {\n isEmbedded: true\n };\n\n default:\n return InitialDeviceTypes;\n }\n};\nvar setUserAgent = function setUserAgent(userAgent) {\n return setUa(userAgent);\n};\nvar setDefaults = function setDefaults(p) {\n var d = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'none';\n return p ? p : d;\n};\nvar getNavigatorInstance = function getNavigatorInstance() {\n if (typeof window !== 'undefined') {\n if (window.navigator || navigator) {\n return window.navigator || navigator;\n }\n }\n\n return false;\n};\nvar isIOS13Check = function isIOS13Check(type) {\n var nav = getNavigatorInstance();\n return nav && nav.platform && (nav.platform.indexOf(type) !== -1 || nav.platform === 'MacIntel' && nav.maxTouchPoints > 1 && !window.MSStream);\n};\n\nvar browserPayload = function browserPayload(isBrowser, browser, engine, os, ua) {\n return {\n isBrowser: isBrowser,\n browserMajorVersion: setDefaults(browser.major),\n browserFullVersion: setDefaults(browser.version),\n browserName: setDefaults(browser.name),\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\nvar mobilePayload = function mobilePayload(type, device, os, ua) {\n return _objectSpread2({}, type, {\n vendor: setDefaults(device.vendor),\n model: setDefaults(device.model),\n os: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n ua: setDefaults(ua)\n });\n};\nvar smartTvPayload = function smartTvPayload(isSmartTV, engine, os, ua) {\n return {\n isSmartTV: isSmartTV,\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\nvar consolePayload = function consolePayload(isConsole, engine, os, ua) {\n return {\n isConsole: isConsole,\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\nvar wearablePayload = function wearablePayload(isWearable, engine, os, ua) {\n return {\n isWearable: isWearable,\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\nvar embeddedPayload = function embeddedPayload(isEmbedded, device, engine, os, ua) {\n return {\n isEmbedded: isEmbedded,\n vendor: setDefaults(device.vendor),\n model: setDefaults(device.model),\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\n\nfunction deviceDetect(userAgent) {\n var _ref = userAgent ? parseUserAgent(userAgent) : UAHelper,\n device = _ref.device,\n browser = _ref.browser,\n engine = _ref.engine,\n os = _ref.os,\n ua = _ref.ua;\n\n var type = checkDeviceType(device.type);\n var isBrowser = type.isBrowser,\n isMobile = type.isMobile,\n isTablet = type.isTablet,\n isSmartTV = type.isSmartTV,\n isConsole = type.isConsole,\n isWearable = type.isWearable,\n isEmbedded = type.isEmbedded;\n\n if (isBrowser) {\n return browserPayload(isBrowser, browser, engine, os, ua);\n }\n\n if (isSmartTV) {\n return smartTvPayload(isSmartTV, engine, os, ua);\n }\n\n if (isConsole) {\n return consolePayload(isConsole, engine, os, ua);\n }\n\n if (isMobile) {\n return mobilePayload(type, device, os, ua);\n }\n\n if (isTablet) {\n return mobilePayload(type, device, os, ua);\n }\n\n if (isWearable) {\n return wearablePayload(isWearable, engine, os, ua);\n }\n\n if (isEmbedded) {\n return embeddedPayload(isEmbedded, device, engine, os, ua);\n }\n}\n\nvar isMobileType = function isMobileType(_ref) {\n var type = _ref.type;\n return type === DeviceTypes.Mobile;\n};\nvar isTabletType = function isTabletType(_ref2) {\n var type = _ref2.type;\n return type === DeviceTypes.Tablet;\n};\nvar isMobileAndTabletType = function isMobileAndTabletType(_ref3) {\n var type = _ref3.type;\n return type === DeviceTypes.Mobile || type === DeviceTypes.Tablet;\n};\nvar isSmartTVType = function isSmartTVType(_ref4) {\n var type = _ref4.type;\n return type === DeviceTypes.SmartTv;\n};\nvar isBrowserType = function isBrowserType(_ref5) {\n var type = _ref5.type;\n return type === DeviceTypes.Browser;\n};\nvar isWearableType = function isWearableType(_ref6) {\n var type = _ref6.type;\n return type === DeviceTypes.Wearable;\n};\nvar isConsoleType = function isConsoleType(_ref7) {\n var type = _ref7.type;\n return type === DeviceTypes.Console;\n};\nvar isEmbeddedType = function isEmbeddedType(_ref8) {\n var type = _ref8.type;\n return type === DeviceTypes.Embedded;\n};\nvar getMobileVendor = function getMobileVendor(_ref9) {\n var vendor = _ref9.vendor;\n return setDefaults(vendor);\n};\nvar getMobileModel = function getMobileModel(_ref10) {\n var model = _ref10.model;\n return setDefaults(model);\n};\nvar getDeviceType = function getDeviceType(_ref11) {\n var type = _ref11.type;\n return setDefaults(type, 'browser');\n}; // os types\n\nvar isAndroidType = function isAndroidType(_ref12) {\n var name = _ref12.name;\n return name === OsTypes.Android;\n};\nvar isWindowsType = function isWindowsType(_ref13) {\n var name = _ref13.name;\n return name === OsTypes.Windows;\n};\nvar isMacOsType = function isMacOsType(_ref14) {\n var name = _ref14.name;\n return name === OsTypes.MAC_OS;\n};\nvar isWinPhoneType = function isWinPhoneType(_ref15) {\n var name = _ref15.name;\n return name === OsTypes.WindowsPhone;\n};\nvar isIOSType = function isIOSType(_ref16) {\n var name = _ref16.name;\n return name === OsTypes.IOS;\n};\nvar getOsVersion = function getOsVersion(_ref17) {\n var version = _ref17.version;\n return setDefaults(version);\n};\nvar getOsName = function getOsName(_ref18) {\n var name = _ref18.name;\n return setDefaults(name);\n}; // browser types\n\nvar isChromeType = function isChromeType(_ref19) {\n var name = _ref19.name;\n return name === BrowserTypes.Chrome;\n};\nvar isFirefoxType = function isFirefoxType(_ref20) {\n var name = _ref20.name;\n return name === BrowserTypes.Firefox;\n};\nvar isChromiumType = function isChromiumType(_ref21) {\n var name = _ref21.name;\n return name === BrowserTypes.Chromium;\n};\nvar isEdgeType = function isEdgeType(_ref22) {\n var name = _ref22.name;\n return name === BrowserTypes.Edge;\n};\nvar isYandexType = function isYandexType(_ref23) {\n var name = _ref23.name;\n return name === BrowserTypes.Yandex;\n};\nvar isSafariType = function isSafariType(_ref24) {\n var name = _ref24.name;\n return name === BrowserTypes.Safari || name === BrowserTypes.MobileSafari;\n};\nvar isMobileSafariType = function isMobileSafariType(_ref25) {\n var name = _ref25.name;\n return name === BrowserTypes.MobileSafari;\n};\nvar isOperaType = function isOperaType(_ref26) {\n var name = _ref26.name;\n return name === BrowserTypes.Opera;\n};\nvar isIEType = function isIEType(_ref27) {\n var name = _ref27.name;\n return name === BrowserTypes.InternetExplorer || name === BrowserTypes.Ie;\n};\nvar isMIUIType = function isMIUIType(_ref28) {\n var name = _ref28.name;\n return name === BrowserTypes.MIUI;\n};\nvar isSamsungBrowserType = function isSamsungBrowserType(_ref29) {\n var name = _ref29.name;\n return name === BrowserTypes.SamsungBrowser;\n};\nvar getBrowserFullVersion = function getBrowserFullVersion(_ref30) {\n var version = _ref30.version;\n return setDefaults(version);\n};\nvar getBrowserVersion = function getBrowserVersion(_ref31) {\n var major = _ref31.major;\n return setDefaults(major);\n};\nvar getBrowserName = function getBrowserName(_ref32) {\n var name = _ref32.name;\n return setDefaults(name);\n}; // engine types\n\nvar getEngineName = function getEngineName(_ref33) {\n var name = _ref33.name;\n return setDefaults(name);\n};\nvar getEngineVersion = function getEngineVersion(_ref34) {\n var version = _ref34.version;\n return setDefaults(version);\n};\nvar isElectronType = function isElectronType() {\n var nav = getNavigatorInstance();\n var ua = nav && nav.userAgent && nav.userAgent.toLowerCase();\n return typeof ua === 'string' ? /electron/.test(ua) : false;\n};\nvar isEdgeChromiumType = function isEdgeChromiumType(ua) {\n return typeof ua === 'string' && ua.indexOf('Edg/') !== -1;\n};\nvar getIOS13 = function getIOS13() {\n var nav = getNavigatorInstance();\n return nav && (/iPad|iPhone|iPod/.test(nav.platform) || nav.platform === 'MacIntel' && nav.maxTouchPoints > 1) && !window.MSStream;\n};\nvar getIPad13 = function getIPad13() {\n return isIOS13Check('iPad');\n};\nvar getIphone13 = function getIphone13() {\n return isIOS13Check('iPhone');\n};\nvar getIPod13 = function getIPod13() {\n return isIOS13Check('iPod');\n};\nvar getUseragent = function getUseragent(userAg) {\n return setDefaults(userAg);\n};\n\nfunction buildSelectorsObject(options) {\n var _ref = options ? options : UAHelper,\n device = _ref.device,\n browser = _ref.browser,\n os = _ref.os,\n engine = _ref.engine,\n ua = _ref.ua;\n\n return {\n isSmartTV: isSmartTVType(device),\n isConsole: isConsoleType(device),\n isWearable: isWearableType(device),\n isEmbedded: isEmbeddedType(device),\n isMobileSafari: isMobileSafariType(browser) || getIPad13(),\n isChromium: isChromiumType(browser),\n isMobile: isMobileAndTabletType(device) || getIPad13(),\n isMobileOnly: isMobileType(device),\n isTablet: isTabletType(device) || getIPad13(),\n isBrowser: isBrowserType(device),\n isDesktop: isBrowserType(device),\n isAndroid: isAndroidType(os),\n isWinPhone: isWinPhoneType(os),\n isIOS: isIOSType(os) || getIPad13(),\n isChrome: isChromeType(browser),\n isFirefox: isFirefoxType(browser),\n isSafari: isSafariType(browser),\n isOpera: isOperaType(browser),\n isIE: isIEType(browser),\n osVersion: getOsVersion(os),\n osName: getOsName(os),\n fullBrowserVersion: getBrowserFullVersion(browser),\n browserVersion: getBrowserVersion(browser),\n browserName: getBrowserName(browser),\n mobileVendor: getMobileVendor(device),\n mobileModel: getMobileModel(device),\n engineName: getEngineName(engine),\n engineVersion: getEngineVersion(engine),\n getUA: getUseragent(ua),\n isEdge: isEdgeType(browser) || isEdgeChromiumType(ua),\n isYandex: isYandexType(browser),\n deviceType: getDeviceType(device),\n isIOS13: getIOS13(),\n isIPad13: getIPad13(),\n isIPhone13: getIphone13(),\n isIPod13: getIPod13(),\n isElectron: isElectronType(),\n isEdgeChromium: isEdgeChromiumType(ua),\n isLegacyEdge: isEdgeType(browser) && !isEdgeChromiumType(ua),\n isWindows: isWindowsType(os),\n isMacOs: isMacOsType(os),\n isMIUI: isMIUIType(browser),\n isSamsungBrowser: isSamsungBrowserType(browser)\n };\n}\n\nvar isSmartTV = isSmartTVType(device);\nvar isConsole = isConsoleType(device);\nvar isWearable = isWearableType(device);\nvar isEmbedded = isEmbeddedType(device);\nvar isMobileSafari = isMobileSafariType(browser) || getIPad13();\nvar isChromium = isChromiumType(browser);\nvar isMobile = isMobileAndTabletType(device) || getIPad13();\nvar isMobileOnly = isMobileType(device);\nvar isTablet = isTabletType(device) || getIPad13();\nvar isBrowser = isBrowserType(device);\nvar isDesktop = isBrowserType(device);\nvar isAndroid = isAndroidType(os);\nvar isWinPhone = isWinPhoneType(os);\nvar isIOS = isIOSType(os) || getIPad13();\nvar isChrome = isChromeType(browser);\nvar isFirefox = isFirefoxType(browser);\nvar isSafari = isSafariType(browser);\nvar isOpera = isOperaType(browser);\nvar isIE = isIEType(browser);\nvar osVersion = getOsVersion(os);\nvar osName = getOsName(os);\nvar fullBrowserVersion = getBrowserFullVersion(browser);\nvar browserVersion = getBrowserVersion(browser);\nvar browserName = getBrowserName(browser);\nvar mobileVendor = getMobileVendor(device);\nvar mobileModel = getMobileModel(device);\nvar engineName = getEngineName(engine);\nvar engineVersion = getEngineVersion(engine);\nvar getUA = getUseragent(ua);\nvar isEdge = isEdgeType(browser) || isEdgeChromiumType(ua);\nvar isYandex = isYandexType(browser);\nvar deviceType = getDeviceType(device);\nvar isIOS13 = getIOS13();\nvar isIPad13 = getIPad13();\nvar isIPhone13 = getIphone13();\nvar isIPod13 = getIPod13();\nvar isElectron = isElectronType();\nvar isEdgeChromium = isEdgeChromiumType(ua);\nvar isLegacyEdge = isEdgeType(browser) && !isEdgeChromiumType(ua);\nvar isWindows = isWindowsType(os);\nvar isMacOs = isMacOsType(os);\nvar isMIUI = isMIUIType(browser);\nvar isSamsungBrowser = isSamsungBrowserType(browser);\nvar getSelectorsByUserAgent = function getSelectorsByUserAgent(userAgent) {\n if (!userAgent || typeof userAgent !== 'string') {\n console.error('No valid user agent string was provided');\n return;\n }\n\n var _UAHelper$parseUserAg = parseUserAgent(userAgent),\n device = _UAHelper$parseUserAg.device,\n browser = _UAHelper$parseUserAg.browser,\n os = _UAHelper$parseUserAg.os,\n engine = _UAHelper$parseUserAg.engine,\n ua = _UAHelper$parseUserAg.ua;\n\n return buildSelectorsObject({\n device: device,\n browser: browser,\n os: os,\n engine: engine,\n ua: ua\n });\n};\n\nvar AndroidView = function AndroidView(_ref) {\n var renderWithFragment = _ref.renderWithFragment,\n children = _ref.children,\n props = _objectWithoutProperties(_ref, [\"renderWithFragment\", \"children\"]);\n\n return isAndroid ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar BrowserView = function BrowserView(_ref2) {\n var renderWithFragment = _ref2.renderWithFragment,\n children = _ref2.children,\n props = _objectWithoutProperties(_ref2, [\"renderWithFragment\", \"children\"]);\n\n return isBrowser ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar IEView = function IEView(_ref3) {\n var renderWithFragment = _ref3.renderWithFragment,\n children = _ref3.children,\n props = _objectWithoutProperties(_ref3, [\"renderWithFragment\", \"children\"]);\n\n return isIE ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar IOSView = function IOSView(_ref4) {\n var renderWithFragment = _ref4.renderWithFragment,\n children = _ref4.children,\n props = _objectWithoutProperties(_ref4, [\"renderWithFragment\", \"children\"]);\n\n return isIOS ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar MobileView = function MobileView(_ref5) {\n var renderWithFragment = _ref5.renderWithFragment,\n children = _ref5.children,\n props = _objectWithoutProperties(_ref5, [\"renderWithFragment\", \"children\"]);\n\n return isMobile ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar TabletView = function TabletView(_ref6) {\n var renderWithFragment = _ref6.renderWithFragment,\n children = _ref6.children,\n props = _objectWithoutProperties(_ref6, [\"renderWithFragment\", \"children\"]);\n\n return isTablet ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar WinPhoneView = function WinPhoneView(_ref7) {\n var renderWithFragment = _ref7.renderWithFragment,\n children = _ref7.children,\n props = _objectWithoutProperties(_ref7, [\"renderWithFragment\", \"children\"]);\n\n return isWinPhone ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar MobileOnlyView = function MobileOnlyView(_ref8) {\n var renderWithFragment = _ref8.renderWithFragment,\n children = _ref8.children,\n viewClassName = _ref8.viewClassName,\n style = _ref8.style,\n props = _objectWithoutProperties(_ref8, [\"renderWithFragment\", \"children\", \"viewClassName\", \"style\"]);\n\n return isMobileOnly ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar SmartTVView = function SmartTVView(_ref9) {\n var renderWithFragment = _ref9.renderWithFragment,\n children = _ref9.children,\n props = _objectWithoutProperties(_ref9, [\"renderWithFragment\", \"children\"]);\n\n return isSmartTV ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar ConsoleView = function ConsoleView(_ref10) {\n var renderWithFragment = _ref10.renderWithFragment,\n children = _ref10.children,\n props = _objectWithoutProperties(_ref10, [\"renderWithFragment\", \"children\"]);\n\n return isConsole ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar WearableView = function WearableView(_ref11) {\n var renderWithFragment = _ref11.renderWithFragment,\n children = _ref11.children,\n props = _objectWithoutProperties(_ref11, [\"renderWithFragment\", \"children\"]);\n\n return isWearable ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar CustomView = function CustomView(_ref12) {\n var renderWithFragment = _ref12.renderWithFragment,\n children = _ref12.children,\n viewClassName = _ref12.viewClassName,\n style = _ref12.style,\n condition = _ref12.condition,\n props = _objectWithoutProperties(_ref12, [\"renderWithFragment\", \"children\", \"viewClassName\", \"style\", \"condition\"]);\n\n return condition ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\n\nfunction withOrientationChange(WrappedComponent) {\n return /*#__PURE__*/function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n var _this;\n\n _classCallCheck(this, _class);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(_class).call(this, props));\n _this.isEventListenerAdded = false;\n _this.handleOrientationChange = _this.handleOrientationChange.bind(_assertThisInitialized(_this));\n _this.onOrientationChange = _this.onOrientationChange.bind(_assertThisInitialized(_this));\n _this.onPageLoad = _this.onPageLoad.bind(_assertThisInitialized(_this));\n _this.state = {\n isLandscape: false,\n isPortrait: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: \"handleOrientationChange\",\n value: function handleOrientationChange() {\n if (!this.isEventListenerAdded) {\n this.isEventListenerAdded = true;\n }\n\n var orientation = window.innerWidth > window.innerHeight ? 90 : 0;\n this.setState({\n isPortrait: orientation === 0,\n isLandscape: orientation === 90\n });\n }\n }, {\n key: \"onOrientationChange\",\n value: function onOrientationChange() {\n this.handleOrientationChange();\n }\n }, {\n key: \"onPageLoad\",\n value: function onPageLoad() {\n this.handleOrientationChange();\n }\n }, {\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if ((typeof window === \"undefined\" ? \"undefined\" : _typeof(window)) !== undefined && isMobile) {\n if (!this.isEventListenerAdded) {\n this.handleOrientationChange();\n window.addEventListener(\"load\", this.onPageLoad, false);\n } else {\n window.removeEventListener(\"load\", this.onPageLoad, false);\n }\n\n window.addEventListener(\"resize\", this.onOrientationChange, false);\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n window.removeEventListener(\"resize\", this.onOrientationChange, false);\n }\n }, {\n key: \"render\",\n value: function render() {\n return React__default.createElement(WrappedComponent, _extends({}, this.props, {\n isLandscape: this.state.isLandscape,\n isPortrait: this.state.isPortrait\n }));\n }\n }]);\n\n return _class;\n }(React__default.Component);\n}\n\nfunction useMobileOrientation() {\n var _useState = React.useState(function () {\n var orientation = window.innerWidth > window.innerHeight ? 90 : 0;\n return {\n isPortrait: orientation === 0,\n isLandscape: orientation === 90,\n orientation: orientation === 0 ? 'portrait' : 'landscape'\n };\n }),\n _useState2 = _slicedToArray(_useState, 2),\n state = _useState2[0],\n setState = _useState2[1];\n\n var handleOrientationChange = React.useCallback(function () {\n var orientation = window.innerWidth > window.innerHeight ? 90 : 0;\n var next = {\n isPortrait: orientation === 0,\n isLandscape: orientation === 90,\n orientation: orientation === 0 ? 'portrait' : 'landscape'\n };\n state.orientation !== next.orientation && setState(next);\n }, [state.orientation]);\n React.useEffect(function () {\n if ((typeof window === \"undefined\" ? \"undefined\" : _typeof(window)) !== undefined && isMobile) {\n handleOrientationChange();\n window.addEventListener(\"load\", handleOrientationChange, false);\n window.addEventListener(\"resize\", handleOrientationChange, false);\n }\n\n return function () {\n window.removeEventListener(\"resize\", handleOrientationChange, false);\n window.removeEventListener(\"load\", handleOrientationChange, false);\n };\n }, [handleOrientationChange]);\n return state;\n}\n\nfunction useDeviceData(userAgent) {\n var hookUserAgent = userAgent ? userAgent : window.navigator.userAgent;\n return parseUserAgent(hookUserAgent);\n}\n\nfunction useDeviceSelectors(userAgent) {\n var hookUserAgent = userAgent ? userAgent : window.navigator.userAgent;\n var deviceData = useDeviceData(hookUserAgent);\n var selectors = buildSelectorsObject(deviceData);\n return [selectors, deviceData];\n}\n\nexports.AndroidView = AndroidView;\nexports.BrowserTypes = BrowserTypes;\nexports.BrowserView = BrowserView;\nexports.ConsoleView = ConsoleView;\nexports.CustomView = CustomView;\nexports.IEView = IEView;\nexports.IOSView = IOSView;\nexports.MobileOnlyView = MobileOnlyView;\nexports.MobileView = MobileView;\nexports.OsTypes = OsTypes;\nexports.SmartTVView = SmartTVView;\nexports.TabletView = TabletView;\nexports.WearableView = WearableView;\nexports.WinPhoneView = WinPhoneView;\nexports.browserName = browserName;\nexports.browserVersion = browserVersion;\nexports.deviceDetect = deviceDetect;\nexports.deviceType = deviceType;\nexports.engineName = engineName;\nexports.engineVersion = engineVersion;\nexports.fullBrowserVersion = fullBrowserVersion;\nexports.getSelectorsByUserAgent = getSelectorsByUserAgent;\nexports.getUA = getUA;\nexports.isAndroid = isAndroid;\nexports.isBrowser = isBrowser;\nexports.isChrome = isChrome;\nexports.isChromium = isChromium;\nexports.isConsole = isConsole;\nexports.isDesktop = isDesktop;\nexports.isEdge = isEdge;\nexports.isEdgeChromium = isEdgeChromium;\nexports.isElectron = isElectron;\nexports.isEmbedded = isEmbedded;\nexports.isFirefox = isFirefox;\nexports.isIE = isIE;\nexports.isIOS = isIOS;\nexports.isIOS13 = isIOS13;\nexports.isIPad13 = isIPad13;\nexports.isIPhone13 = isIPhone13;\nexports.isIPod13 = isIPod13;\nexports.isLegacyEdge = isLegacyEdge;\nexports.isMIUI = isMIUI;\nexports.isMacOs = isMacOs;\nexports.isMobile = isMobile;\nexports.isMobileOnly = isMobileOnly;\nexports.isMobileSafari = isMobileSafari;\nexports.isOpera = isOpera;\nexports.isSafari = isSafari;\nexports.isSamsungBrowser = isSamsungBrowser;\nexports.isSmartTV = isSmartTV;\nexports.isTablet = isTablet;\nexports.isWearable = isWearable;\nexports.isWinPhone = isWinPhone;\nexports.isWindows = isWindows;\nexports.isYandex = isYandex;\nexports.mobileModel = mobileModel;\nexports.mobileVendor = mobileVendor;\nexports.osName = osName;\nexports.osVersion = osVersion;\nexports.parseUserAgent = parseUserAgent;\nexports.setUserAgent = setUserAgent;\nexports.useDeviceData = useDeviceData;\nexports.useDeviceSelectors = useDeviceSelectors;\nexports.useMobileOrientation = useMobileOrientation;\nexports.withOrientationChange = withOrientationChange;\n","/**\n * @license React\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\"),ca=require(\"scheduler\");function p(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;cb}return!1}function v(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 z={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){z[a]=new v(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];z[b]=new v(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){z[a]=new v(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){z[a]=new v(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){z[a]=new v(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){z[a]=new v(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){z[a]=new v(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){z[a]=new v(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){z[a]=new v(a,5,!1,a.toLowerCase(),null,!1,!1)});var ra=/[\\-:]([a-z])/g;function sa(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(ra,\nsa);z[b]=new v(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(ra,sa);z[b]=new v(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(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!1,!1)});\nz.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction ta(a,b,c,d){var e=z.hasOwnProperty(b)?z[b]:null;if(null!==e?0!==e.type:d||!(2h||e[g]!==f[h]){var k=\"\\n\"+e[g].replace(\" at new \",\" at \");a.displayName&&k.includes(\"\")&&(k=k.replace(\"\",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{Na=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Ma(a):\"\"}\nfunction Pa(a){switch(a.tag){case 5:return Ma(a.type);case 16:return Ma(\"Lazy\");case 13:return Ma(\"Suspense\");case 19:return Ma(\"SuspenseList\");case 0:case 2:case 15:return a=Oa(a.type,!1),a;case 11:return a=Oa(a.type.render,!1),a;case 1:return a=Oa(a.type,!0),a;default:return\"\"}}\nfunction Qa(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 ya:return\"Fragment\";case wa:return\"Portal\";case Aa:return\"Profiler\";case za:return\"StrictMode\";case Ea:return\"Suspense\";case Fa:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case Ca:return(a.displayName||\"Context\")+\".Consumer\";case Ba:return(a._context.displayName||\"Context\")+\".Provider\";case Da:var b=a.render;a=a.displayName;a||(a=b.displayName||\nb.name||\"\",a=\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");return a;case Ga:return b=a.displayName||null,null!==b?b:Qa(a.type)||\"Memo\";case Ha:b=a._payload;a=a._init;try{return Qa(a(b))}catch(c){}}return null}\nfunction Ra(a){var b=a.type;switch(a.tag){case 24:return\"Cache\";case 9:return(b.displayName||\"Context\")+\".Consumer\";case 10:return(b._context.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return a=b.render,a=a.displayName||a.name||\"\",b.displayName||(\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 5:return b;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return Qa(b);case 8:return b===za?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";\ncase 12:return\"Profiler\";case 21:return\"Scope\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 25:return\"TracingMarker\";case 1:case 0:case 17:case 2:case 14:case 15:if(\"function\"===typeof b)return b.displayName||b.name||null;if(\"string\"===typeof b)return b}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"string\":case \"undefined\":return a;case \"object\":return a;default:return\"\"}}\nfunction 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 A({},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 ab(a,b){b=b.checked;null!=b&&ta(a,\"checked\",b,!1)}\nfunction bb(a,b){ab(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\")?cb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&cb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction db(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 cb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}var eb=Array.isArray;\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e\"+b.valueOf().toString()+\"\";for(b=mb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction ob(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar pb={animationIterationCount:!0,aspectRatio:!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,\nzoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(pb).forEach(function(a){qb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);pb[b]=pb[a]})});function rb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||pb.hasOwnProperty(a)&&pb[a]?(\"\"+b).trim():b+\"px\"}\nfunction sb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=rb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var tb=A({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 ub(a,b){if(b){if(tb[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(p(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(p(60));if(\"object\"!==typeof b.dangerouslySetInnerHTML||!(\"__html\"in b.dangerouslySetInnerHTML))throw Error(p(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(p(62));}}\nfunction vb(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}}var wb=null;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(p(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;a>>=0;return 0===a?32:31-(pc(a)/qc|0)|0}var rc=64,sc=4194304;\nfunction tc(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;\ndefault:return a}}function uc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=tc(h):(f&=g,0!==f&&(d=tc(f)))}else g=c&~e,0!==g?d=tc(g):0!==f&&(d=tc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0c;c++)b.push(a);return b}\nfunction Ac(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-oc(b);a[b]=c}function Bc(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;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=Je(c)}}function Le(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Le(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Me(){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 Ne(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)}\nfunction Oe(a){var b=Me(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Le(c.ownerDocument.documentElement,c)){if(null!==d&&Ne(c))if(b=d.start,a=d.end,void 0===a&&(a=b),\"selectionStart\"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Ke(c,f);var g=Ke(c,\nd);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});\"function\"===typeof c.focus&&c.focus();for(c=0;c=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&&Ne(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&&Ie(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0Tf||(a.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(a,b){Tf++;Sf[Tf]=a.current;a.current=b}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(a,b){var c=a.type.contextTypes;if(!c)return Vf;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}\nfunction Zf(a){a=a.childContextTypes;return null!==a&&void 0!==a}function $f(){E(Wf);E(H)}function ag(a,b,c){if(H.current!==Vf)throw Error(p(168));G(H,b);G(Wf,c)}function bg(a,b,c){var d=a.stateNode;b=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(p(108,Ra(a)||\"Unknown\",e));return A({},c,d)}\nfunction cg(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Vf;Xf=H.current;G(H,a);G(Wf,Wf.current);return!0}function dg(a,b,c){var d=a.stateNode;if(!d)throw Error(p(169));c?(a=bg(a,b,Xf),d.__reactInternalMemoizedMergedChildContext=a,E(Wf),E(H),G(H,a)):E(Wf);G(Wf,c)}var eg=null,fg=!1,gg=!1;function hg(a){null===eg?eg=[a]:eg.push(a)}function ig(a){fg=!0;hg(a)}\nfunction jg(){if(!gg&&null!==eg){gg=!0;var a=0,b=C;try{var c=eg;for(C=1;a>=g;e-=g;rg=1<<32-oc(b)+e|c<w?(x=u,u=null):x=u.sibling;var n=r(e,u,h[w],k);if(null===n){null===u&&(u=x);break}a&&u&&null===n.alternate&&b(e,u);g=f(n,g,w);null===m?l=n:m.sibling=n;m=n;u=x}if(w===h.length)return c(e,u),I&&tg(e,w),l;if(null===u){for(;ww?(x=m,m=null):x=m.sibling;var t=r(e,m,n.value,k);if(null===t){null===m&&(m=x);break}a&&m&&null===t.alternate&&b(e,m);g=f(t,g,w);null===u?l=t:u.sibling=t;u=t;m=x}if(n.done)return c(e,\nm),I&&tg(e,w),l;if(null===m){for(;!n.done;w++,n=h.next())n=q(e,n.value,k),null!==n&&(g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);I&&tg(e,w);return l}for(m=d(e,m);!n.done;w++,n=h.next())n=y(m,e,w,n.value,k),null!==n&&(a&&null!==n.alternate&&m.delete(null===n.key?w:n.key),g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);a&&m.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function J(a,d,f,h){\"object\"===typeof f&&null!==f&&f.type===ya&&null===f.key&&(f=f.props.children);if(\"object\"===typeof f&&null!==f){switch(f.$$typeof){case va:a:{for(var k=\nf.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===ya){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||\"object\"===typeof k&&null!==k&&k.$$typeof===Ha&&Ng(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=Lg(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===ya?(d=Tg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Rg(f.type,f.key,f.props,null,a.mode,h),h.ref=Lg(a,d,f),h.return=a,a=h)}return g(a);case wa:a:{for(l=f.key;null!==\nd;){if(d.key===l)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=Sg(f,a.mode,h);d.return=a;a=d}return g(a);case Ha:return l=f._init,J(a,d,l(f._payload),h)}if(eb(f))return n(a,d,f,h);if(Ka(f))return t(a,d,f,h);Mg(a,f)}return\"string\"===typeof f&&\"\"!==f||\"number\"===typeof f?(f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):\n(c(a,d),d=Qg(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return J}var Ug=Og(!0),Vg=Og(!1),Wg=Uf(null),Xg=null,Yg=null,Zg=null;function $g(){Zg=Yg=Xg=null}function ah(a){var b=Wg.current;E(Wg);a._currentValue=b}function bh(a,b,c){for(;null!==a;){var d=a.alternate;(a.childLanes&b)!==b?(a.childLanes|=b,null!==d&&(d.childLanes|=b)):null!==d&&(d.childLanes&b)!==b&&(d.childLanes|=b);if(a===c)break;a=a.return}}\nfunction ch(a,b){Xg=a;Zg=Yg=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(0!==(a.lanes&b)&&(dh=!0),a.firstContext=null)}function eh(a){var b=a._currentValue;if(Zg!==a)if(a={context:a,memoizedValue:b,next:null},null===Yg){if(null===Xg)throw Error(p(308));Yg=a;Xg.dependencies={lanes:0,firstContext:a}}else Yg=Yg.next=a;return b}var fh=null;function gh(a){null===fh?fh=[a]:fh.push(a)}\nfunction hh(a,b,c,d){var e=b.interleaved;null===e?(c.next=c,gh(b)):(c.next=e.next,e.next=c);b.interleaved=c;return ih(a,d)}function ih(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);c=a;for(a=a.return;null!==a;)a.childLanes|=b,c=a.alternate,null!==c&&(c.childLanes|=b),c=a,a=a.return;return 3===c.tag?c.stateNode:null}var jh=!1;function kh(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}\nfunction lh(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function mh(a,b){return{eventTime:a,lane:b,tag:0,payload:null,callback:null,next:null}}\nfunction nh(a,b,c){var d=a.updateQueue;if(null===d)return null;d=d.shared;if(0!==(K&2)){var e=d.pending;null===e?b.next=b:(b.next=e.next,e.next=b);d.pending=b;return ih(a,c)}e=d.interleaved;null===e?(b.next=b,gh(d)):(b.next=e.next,e.next=b);d.interleaved=b;return ih(a,c)}function oh(a,b,c){b=b.updateQueue;if(null!==b&&(b=b.shared,0!==(c&4194240))){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nfunction ph(a,b){var c=a.updateQueue,d=a.alternate;if(null!==d&&(d=d.updateQueue,c===d)){var e=null,f=null;c=c.firstBaseUpdate;if(null!==c){do{var g={eventTime:c.eventTime,lane:c.lane,tag:c.tag,payload:c.payload,callback:c.callback,next:null};null===f?e=f=g:f=f.next=g;c=c.next}while(null!==c);null===f?e=f=b:f=f.next=b}else e=f=b;c={baseState:d.baseState,firstBaseUpdate:e,lastBaseUpdate:f,shared:d.shared,effects:d.effects};a.updateQueue=c;return}a=c.lastBaseUpdate;null===a?c.firstBaseUpdate=b:a.next=\nb;c.lastBaseUpdate=b}\nfunction qh(a,b,c,d){var e=a.updateQueue;jh=!1;var f=e.firstBaseUpdate,g=e.lastBaseUpdate,h=e.shared.pending;if(null!==h){e.shared.pending=null;var k=h,l=k.next;k.next=null;null===g?f=l:g.next=l;g=k;var m=a.alternate;null!==m&&(m=m.updateQueue,h=m.lastBaseUpdate,h!==g&&(null===h?m.firstBaseUpdate=l:h.next=l,m.lastBaseUpdate=k))}if(null!==f){var q=e.baseState;g=0;m=l=k=null;h=f;do{var r=h.lane,y=h.eventTime;if((d&r)===r){null!==m&&(m=m.next={eventTime:y,lane:0,tag:h.tag,payload:h.payload,callback:h.callback,\nnext:null});a:{var n=a,t=h;r=b;y=c;switch(t.tag){case 1:n=t.payload;if(\"function\"===typeof n){q=n.call(y,q,r);break a}q=n;break a;case 3:n.flags=n.flags&-65537|128;case 0:n=t.payload;r=\"function\"===typeof n?n.call(y,q,r):n;if(null===r||void 0===r)break a;q=A({},q,r);break a;case 2:jh=!0}}null!==h.callback&&0!==h.lane&&(a.flags|=64,r=e.effects,null===r?e.effects=[h]:r.push(h))}else y={eventTime:y,lane:r,tag:h.tag,payload:h.payload,callback:h.callback,next:null},null===m?(l=m=y,k=q):m=m.next=y,g|=r;\nh=h.next;if(null===h)if(h=e.shared.pending,null===h)break;else r=h,h=r.next,r.next=null,e.lastBaseUpdate=r,e.shared.pending=null}while(1);null===m&&(k=q);e.baseState=k;e.firstBaseUpdate=l;e.lastBaseUpdate=m;b=e.shared.interleaved;if(null!==b){e=b;do g|=e.lane,e=e.next;while(e!==b)}else null===f&&(e.shared.lanes=0);rh|=g;a.lanes=g;a.memoizedState=q}}\nfunction sh(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;bc?c:4;a(!0);var d=Gh.transition;Gh.transition={};try{a(!1),b()}finally{C=c,Gh.transition=d}}function wi(){return Uh().memoizedState}\nfunction xi(a,b,c){var d=yi(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,c);else if(c=hh(a,b,c,d),null!==c){var e=R();gi(c,a,d,e);Bi(c,b,d)}}\nfunction ii(a,b,c){var d=yi(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,e);else{var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(He(h,g)){var k=b.interleaved;null===k?(e.next=e,gh(b)):(e.next=k.next,k.next=e);b.interleaved=e;return}}catch(l){}finally{}c=hh(a,b,e,d);null!==c&&(e=R(),gi(c,a,d,e),Bi(c,b,d))}}\nfunction zi(a){var b=a.alternate;return a===M||null!==b&&b===M}function Ai(a,b){Jh=Ih=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function Bi(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nvar Rh={readContext:eh,useCallback:P,useContext:P,useEffect:P,useImperativeHandle:P,useInsertionEffect:P,useLayoutEffect:P,useMemo:P,useReducer:P,useRef:P,useState:P,useDebugValue:P,useDeferredValue:P,useTransition:P,useMutableSource:P,useSyncExternalStore:P,useId:P,unstable_isNewReconciler:!1},Oh={readContext:eh,useCallback:function(a,b){Th().memoizedState=[a,void 0===b?null:b];return a},useContext:eh,useEffect:mi,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return ki(4194308,\n4,pi.bind(null,b,a),c)},useLayoutEffect:function(a,b){return ki(4194308,4,a,b)},useInsertionEffect:function(a,b){return ki(4,2,a,b)},useMemo:function(a,b){var c=Th();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=Th();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=xi.bind(null,M,a);return[d.memoizedState,a]},useRef:function(a){var b=\nTh();a={current:a};return b.memoizedState=a},useState:hi,useDebugValue:ri,useDeferredValue:function(a){return Th().memoizedState=a},useTransition:function(){var a=hi(!1),b=a[0];a=vi.bind(null,a[1]);Th().memoizedState=a;return[b,a]},useMutableSource:function(){},useSyncExternalStore:function(a,b,c){var d=M,e=Th();if(I){if(void 0===c)throw Error(p(407));c=c()}else{c=b();if(null===Q)throw Error(p(349));0!==(Hh&30)||di(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;mi(ai.bind(null,d,\nf,a),[a]);d.flags|=2048;bi(9,ci.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=Th(),b=Q.identifierPrefix;if(I){var c=sg;var d=rg;c=(d&~(1<<32-oc(d)-1)).toString(32)+c;b=\":\"+b+\"R\"+c;c=Kh++;0\\x3c/script>\",a=a.removeChild(a.firstChild)):\n\"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[Of]=b;a[Pf]=d;zj(a,b,!1,!1);b.stateNode=a;a:{g=vb(c,d);switch(c){case \"dialog\":D(\"cancel\",a);D(\"close\",a);e=d;break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;eGj&&(b.flags|=128,d=!0,Dj(f,!1),b.lanes=4194304)}else{if(!d)if(a=Ch(g),null!==a){if(b.flags|=128,d=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Dj(f,!0),null===f.tail&&\"hidden\"===f.tailMode&&!g.alternate&&!I)return S(b),null}else 2*B()-f.renderingStartTime>Gj&&1073741824!==c&&(b.flags|=128,d=!0,Dj(f,!1),b.lanes=4194304);f.isBackwards?(g.sibling=b.child,b.child=g):(c=f.last,null!==c?c.sibling=g:b.child=g,f.last=g)}if(null!==f.tail)return b=f.tail,f.rendering=\nb,f.tail=b.sibling,f.renderingStartTime=B(),b.sibling=null,c=L.current,G(L,d?c&1|2:c&1),b;S(b);return null;case 22:case 23:return Hj(),d=null!==b.memoizedState,null!==a&&null!==a.memoizedState!==d&&(b.flags|=8192),d&&0!==(b.mode&1)?0!==(fj&1073741824)&&(S(b),b.subtreeFlags&6&&(b.flags|=8192)):S(b),null;case 24:return null;case 25:return null}throw Error(p(156,b.tag));}\nfunction Ij(a,b){wg(b);switch(b.tag){case 1:return Zf(b.type)&&$f(),a=b.flags,a&65536?(b.flags=a&-65537|128,b):null;case 3:return zh(),E(Wf),E(H),Eh(),a=b.flags,0!==(a&65536)&&0===(a&128)?(b.flags=a&-65537|128,b):null;case 5:return Bh(b),null;case 13:E(L);a=b.memoizedState;if(null!==a&&null!==a.dehydrated){if(null===b.alternate)throw Error(p(340));Ig()}a=b.flags;return a&65536?(b.flags=a&-65537|128,b):null;case 19:return E(L),null;case 4:return zh(),null;case 10:return ah(b.type._context),null;case 22:case 23:return Hj(),\nnull;case 24:return null;default:return null}}var Jj=!1,U=!1,Kj=\"function\"===typeof WeakSet?WeakSet:Set,V=null;function Lj(a,b){var c=a.ref;if(null!==c)if(\"function\"===typeof c)try{c(null)}catch(d){W(a,b,d)}else c.current=null}function Mj(a,b,c){try{c()}catch(d){W(a,b,d)}}var Nj=!1;\nfunction Oj(a,b){Cf=dd;a=Me();if(Ne(a)){if(\"selectionStart\"in a)var c={start:a.selectionStart,end:a.selectionEnd};else a:{c=(c=a.ownerDocument)&&c.defaultView||window;var d=c.getSelection&&c.getSelection();if(d&&0!==d.rangeCount){c=d.anchorNode;var e=d.anchorOffset,f=d.focusNode;d=d.focusOffset;try{c.nodeType,f.nodeType}catch(F){c=null;break a}var g=0,h=-1,k=-1,l=0,m=0,q=a,r=null;b:for(;;){for(var y;;){q!==c||0!==e&&3!==q.nodeType||(h=g+e);q!==f||0!==d&&3!==q.nodeType||(k=g+d);3===q.nodeType&&(g+=\nq.nodeValue.length);if(null===(y=q.firstChild))break;r=q;q=y}for(;;){if(q===a)break b;r===c&&++l===e&&(h=g);r===f&&++m===d&&(k=g);if(null!==(y=q.nextSibling))break;q=r;r=q.parentNode}q=y}c=-1===h||-1===k?null:{start:h,end:k}}else c=null}c=c||{start:0,end:0}}else c=null;Df={focusedElem:a,selectionRange:c};dd=!1;for(V=b;null!==V;)if(b=V,a=b.child,0!==(b.subtreeFlags&1028)&&null!==a)a.return=b,V=a;else for(;null!==V;){b=V;try{var n=b.alternate;if(0!==(b.flags&1024))switch(b.tag){case 0:case 11:case 15:break;\ncase 1:if(null!==n){var t=n.memoizedProps,J=n.memoizedState,x=b.stateNode,w=x.getSnapshotBeforeUpdate(b.elementType===b.type?t:Ci(b.type,t),J);x.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var u=b.stateNode.containerInfo;1===u.nodeType?u.textContent=\"\":9===u.nodeType&&u.documentElement&&u.removeChild(u.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p(163));}}catch(F){W(b,b.return,F)}a=b.sibling;if(null!==a){a.return=b.return;V=a;break}V=b.return}n=Nj;Nj=!1;return n}\nfunction Pj(a,b,c){var d=b.updateQueue;d=null!==d?d.lastEffect:null;if(null!==d){var e=d=d.next;do{if((e.tag&a)===a){var f=e.destroy;e.destroy=void 0;void 0!==f&&Mj(b,c,f)}e=e.next}while(e!==d)}}function Qj(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}function Rj(a){var b=a.ref;if(null!==b){var c=a.stateNode;switch(a.tag){case 5:a=c;break;default:a=c}\"function\"===typeof b?b(a):b.current=a}}\nfunction Sj(a){var b=a.alternate;null!==b&&(a.alternate=null,Sj(b));a.child=null;a.deletions=null;a.sibling=null;5===a.tag&&(b=a.stateNode,null!==b&&(delete b[Of],delete b[Pf],delete b[of],delete b[Qf],delete b[Rf]));a.stateNode=null;a.return=null;a.dependencies=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.stateNode=null;a.updateQueue=null}function Tj(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction Uj(a){a:for(;;){for(;null===a.sibling;){if(null===a.return||Tj(a.return))return null;a=a.return}a.sibling.return=a.return;for(a=a.sibling;5!==a.tag&&6!==a.tag&&18!==a.tag;){if(a.flags&2)continue a;if(null===a.child||4===a.tag)continue a;else a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}\nfunction Vj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,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=Bf));else if(4!==d&&(a=a.child,null!==a))for(Vj(a,b,c),a=a.sibling;null!==a;)Vj(a,b,c),a=a.sibling}\nfunction Wj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Wj(a,b,c),a=a.sibling;null!==a;)Wj(a,b,c),a=a.sibling}var X=null,Xj=!1;function Yj(a,b,c){for(c=c.child;null!==c;)Zj(a,b,c),c=c.sibling}\nfunction Zj(a,b,c){if(lc&&\"function\"===typeof lc.onCommitFiberUnmount)try{lc.onCommitFiberUnmount(kc,c)}catch(h){}switch(c.tag){case 5:U||Lj(c,b);case 6:var d=X,e=Xj;X=null;Yj(a,b,c);X=d;Xj=e;null!==X&&(Xj?(a=X,c=c.stateNode,8===a.nodeType?a.parentNode.removeChild(c):a.removeChild(c)):X.removeChild(c.stateNode));break;case 18:null!==X&&(Xj?(a=X,c=c.stateNode,8===a.nodeType?Kf(a.parentNode,c):1===a.nodeType&&Kf(a,c),bd(a)):Kf(X,c.stateNode));break;case 4:d=X;e=Xj;X=c.stateNode.containerInfo;Xj=!0;\nYj(a,b,c);X=d;Xj=e;break;case 0:case 11:case 14:case 15:if(!U&&(d=c.updateQueue,null!==d&&(d=d.lastEffect,null!==d))){e=d=d.next;do{var f=e,g=f.destroy;f=f.tag;void 0!==g&&(0!==(f&2)?Mj(c,b,g):0!==(f&4)&&Mj(c,b,g));e=e.next}while(e!==d)}Yj(a,b,c);break;case 1:if(!U&&(Lj(c,b),d=c.stateNode,\"function\"===typeof d.componentWillUnmount))try{d.props=c.memoizedProps,d.state=c.memoizedState,d.componentWillUnmount()}catch(h){W(c,b,h)}Yj(a,b,c);break;case 21:Yj(a,b,c);break;case 22:c.mode&1?(U=(d=U)||null!==\nc.memoizedState,Yj(a,b,c),U=d):Yj(a,b,c);break;default:Yj(a,b,c)}}function ak(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Kj);b.forEach(function(b){var d=bk.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction ck(a,b){var c=b.deletions;if(null!==c)for(var d=0;de&&(e=g);d&=~f}d=e;d=B()-d;d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*lk(d/1960))-d;if(10a?16:a;if(null===wk)var d=!1;else{a=wk;wk=null;xk=0;if(0!==(K&6))throw Error(p(331));var e=K;K|=4;for(V=a.current;null!==V;){var f=V,g=f.child;if(0!==(V.flags&16)){var h=f.deletions;if(null!==h){for(var k=0;kB()-fk?Kk(a,0):rk|=c);Dk(a,b)}function Yk(a,b){0===b&&(0===(a.mode&1)?b=1:(b=sc,sc<<=1,0===(sc&130023424)&&(sc=4194304)));var c=R();a=ih(a,b);null!==a&&(Ac(a,b,c),Dk(a,c))}function uj(a){var b=a.memoizedState,c=0;null!==b&&(c=b.retryLane);Yk(a,c)}\nfunction bk(a,b){var c=0;switch(a.tag){case 13:var d=a.stateNode;var e=a.memoizedState;null!==e&&(c=e.retryLane);break;case 19:d=a.stateNode;break;default:throw Error(p(314));}null!==d&&d.delete(b);Yk(a,c)}var Vk;\nVk=function(a,b,c){if(null!==a)if(a.memoizedProps!==b.pendingProps||Wf.current)dh=!0;else{if(0===(a.lanes&c)&&0===(b.flags&128))return dh=!1,yj(a,b,c);dh=0!==(a.flags&131072)?!0:!1}else dh=!1,I&&0!==(b.flags&1048576)&&ug(b,ng,b.index);b.lanes=0;switch(b.tag){case 2:var d=b.type;ij(a,b);a=b.pendingProps;var e=Yf(b,H.current);ch(b,c);e=Nh(null,b,d,a,e,c);var f=Sh();b.flags|=1;\"object\"===typeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof?(b.tag=1,b.memoizedState=null,b.updateQueue=\nnull,Zf(d)?(f=!0,cg(b)):f=!1,b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,kh(b),e.updater=Ei,b.stateNode=e,e._reactInternals=b,Ii(b,d,a,c),b=jj(null,b,d,!0,f,c)):(b.tag=0,I&&f&&vg(b),Xi(null,b,e,c),b=b.child);return b;case 16:d=b.elementType;a:{ij(a,b);a=b.pendingProps;e=d._init;d=e(d._payload);b.type=d;e=b.tag=Zk(d);a=Ci(d,a);switch(e){case 0:b=cj(null,b,d,a,c);break a;case 1:b=hj(null,b,d,a,c);break a;case 11:b=Yi(null,b,d,a,c);break a;case 14:b=$i(null,b,d,Ci(d.type,a),c);break a}throw Error(p(306,\nd,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),cj(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),hj(a,b,d,e,c);case 3:a:{kj(b);if(null===a)throw Error(p(387));d=b.pendingProps;f=b.memoizedState;e=f.element;lh(a,b);qh(b,d,null,c);var g=b.memoizedState;d=g.element;if(f.isDehydrated)if(f={element:d,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},b.updateQueue.baseState=\nf,b.memoizedState=f,b.flags&256){e=Ji(Error(p(423)),b);b=lj(a,b,d,c,e);break a}else if(d!==e){e=Ji(Error(p(424)),b);b=lj(a,b,d,c,e);break a}else for(yg=Lf(b.stateNode.containerInfo.firstChild),xg=b,I=!0,zg=null,c=Vg(b,null,d,c),b.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{Ig();if(d===e){b=Zi(a,b,c);break a}Xi(a,b,d,c)}b=b.child}return b;case 5:return Ah(b),null===a&&Eg(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,Ef(d,e)?g=null:null!==f&&Ef(d,f)&&(b.flags|=32),\ngj(a,b),Xi(a,b,g,c),b.child;case 6:return null===a&&Eg(b),null;case 13:return oj(a,b,c);case 4:return yh(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Ug(b,null,d,c):Xi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),Yi(a,b,d,e,c);case 7:return Xi(a,b,b.pendingProps,c),b.child;case 8:return Xi(a,b,b.pendingProps.children,c),b.child;case 12:return Xi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;f=b.memoizedProps;\ng=e.value;G(Wg,d._currentValue);d._currentValue=g;if(null!==f)if(He(f.value,g)){if(f.children===e.children&&!Wf.current){b=Zi(a,b,c);break a}}else for(f=b.child,null!==f&&(f.return=b);null!==f;){var h=f.dependencies;if(null!==h){g=f.child;for(var k=h.firstContext;null!==k;){if(k.context===d){if(1===f.tag){k=mh(-1,c&-c);k.tag=2;var l=f.updateQueue;if(null!==l){l=l.shared;var m=l.pending;null===m?k.next=k:(k.next=m.next,m.next=k);l.pending=k}}f.lanes|=c;k=f.alternate;null!==k&&(k.lanes|=c);bh(f.return,\nc,b);h.lanes|=c;break}k=k.next}}else if(10===f.tag)g=f.type===b.type?null:f.child;else if(18===f.tag){g=f.return;if(null===g)throw Error(p(341));g.lanes|=c;h=g.alternate;null!==h&&(h.lanes|=c);bh(g,c,b);g=f.sibling}else g=f.child;if(null!==g)g.return=f;else for(g=f;null!==g;){if(g===b){g=null;break}f=g.sibling;if(null!==f){f.return=g.return;g=f;break}g=g.return}f=g}Xi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,d=b.pendingProps.children,ch(b,c),e=eh(e),d=d(e),b.flags|=1,Xi(a,b,d,c),\nb.child;case 14:return d=b.type,e=Ci(d,b.pendingProps),e=Ci(d.type,e),$i(a,b,d,e,c);case 15:return bj(a,b,b.type,b.pendingProps,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),ij(a,b),b.tag=1,Zf(d)?(a=!0,cg(b)):a=!1,ch(b,c),Gi(b,d,e),Ii(b,d,e,c),jj(null,b,d,!0,a,c);case 19:return xj(a,b,c);case 22:return dj(a,b,c)}throw Error(p(156,b.tag));};function Fk(a,b){return ac(a,b)}\nfunction $k(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.subtreeFlags=this.flags=0;this.deletions=null;this.childLanes=this.lanes=0;this.alternate=null}function Bg(a,b,c,d){return new $k(a,b,c,d)}function aj(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction Zk(a){if(\"function\"===typeof a)return aj(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Da)return 11;if(a===Ga)return 14}return 2}\nfunction Pg(a,b){var c=a.alternate;null===c?(c=Bg(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.subtreeFlags=0,c.deletions=null);c.flags=a.flags&14680064;c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction Rg(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)aj(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ya:return Tg(c.children,e,f,b);case za:g=8;e|=8;break;case Aa:return a=Bg(12,c,b,e|2),a.elementType=Aa,a.lanes=f,a;case Ea:return a=Bg(13,c,b,e),a.elementType=Ea,a.lanes=f,a;case Fa:return a=Bg(19,c,b,e),a.elementType=Fa,a.lanes=f,a;case Ia:return pj(c,e,f,b);default:if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case Ba:g=10;break a;case Ca:g=9;break a;case Da:g=11;\nbreak a;case Ga:g=14;break a;case Ha:g=16;d=null;break a}throw Error(p(130,null==a?a:typeof a,\"\"));}b=Bg(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Tg(a,b,c,d){a=Bg(7,a,d,b);a.lanes=c;return a}function pj(a,b,c,d){a=Bg(22,a,d,b);a.elementType=Ia;a.lanes=c;a.stateNode={isHidden:!1};return a}function Qg(a,b,c){a=Bg(6,a,null,b);a.lanes=c;return a}\nfunction Sg(a,b,c){b=Bg(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction al(a,b,c,d,e){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.callbackNode=this.pendingContext=this.context=null;this.callbackPriority=0;this.eventTimes=zc(0);this.expirationTimes=zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=zc(0);this.identifierPrefix=d;this.onRecoverableError=e;this.mutableSourceEagerHydrationData=\nnull}function bl(a,b,c,d,e,f,g,h,k){a=new al(a,b,c,h,k);1===b?(b=1,!0===f&&(b|=8)):b=0;f=Bg(3,null,null,b);a.current=f;f.stateNode=a;f.memoizedState={element:d,isDehydrated:c,cache:null,transitions:null,pendingSuspenseBoundaries:null};kh(f);return a}function cl(a,b,c){var d=3>>1,e=a[d];if(0>>1;dg(C,c))ng(x,C)?(a[d]=x,a[n]=c,d=n):(a[d]=C,a[m]=c,d=m);else if(ng(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Qa||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","/* UAParser.js v1.0.38\n Copyright © 2012-2021 Faisal Salman \n MIT License */\n(function(window,undefined){\"use strict\";var LIBVERSION=\"1.0.38\",EMPTY=\"\",UNKNOWN=\"?\",FUNC_TYPE=\"function\",UNDEF_TYPE=\"undefined\",OBJ_TYPE=\"object\",STR_TYPE=\"string\",MAJOR=\"major\",MODEL=\"model\",NAME=\"name\",TYPE=\"type\",VENDOR=\"vendor\",VERSION=\"version\",ARCHITECTURE=\"architecture\",CONSOLE=\"console\",MOBILE=\"mobile\",TABLET=\"tablet\",SMARTTV=\"smarttv\",WEARABLE=\"wearable\",EMBEDDED=\"embedded\",UA_MAX_LENGTH=500;var AMAZON=\"Amazon\",APPLE=\"Apple\",ASUS=\"ASUS\",BLACKBERRY=\"BlackBerry\",BROWSER=\"Browser\",CHROME=\"Chrome\",EDGE=\"Edge\",FIREFOX=\"Firefox\",GOOGLE=\"Google\",HUAWEI=\"Huawei\",LG=\"LG\",MICROSOFT=\"Microsoft\",MOTOROLA=\"Motorola\",OPERA=\"Opera\",SAMSUNG=\"Samsung\",SHARP=\"Sharp\",SONY=\"Sony\",XIAOMI=\"Xiaomi\",ZEBRA=\"Zebra\",FACEBOOK=\"Facebook\",CHROMIUM_OS=\"Chromium OS\",MAC_OS=\"Mac OS\";var extend=function(regexes,extensions){var mergedRegexes={};for(var i in regexes){if(extensions[i]&&extensions[i].length%2===0){mergedRegexes[i]=extensions[i].concat(regexes[i])}else{mergedRegexes[i]=regexes[i]}}return mergedRegexes},enumerize=function(arr){var enums={};for(var i=0;i0){if(q.length===2){if(typeof q[1]==FUNC_TYPE){this[q[0]]=q[1].call(this,match)}else{this[q[0]]=q[1]}}else if(q.length===3){if(typeof q[1]===FUNC_TYPE&&!(q[1].exec&&q[1].test)){this[q[0]]=match?q[1].call(this,match,q[2]):undefined}else{this[q[0]]=match?match.replace(q[1],q[2]):undefined}}else if(q.length===4){this[q[0]]=match?q[3].call(this,match.replace(q[1],q[2])):undefined}}else{this[q]=match?match:undefined}}}}i+=2}},strMapper=function(str,map){for(var i in map){if(typeof map[i]===OBJ_TYPE&&map[i].length>0){for(var j=0;j2){_device[MODEL]=\"iPad\";_device[TYPE]=TABLET}return _device};this.getEngine=function(){var _engine={};_engine[NAME]=undefined;_engine[VERSION]=undefined;rgxMapper.call(_engine,_ua,_rgxmap.engine);return _engine};this.getOS=function(){var _os={};_os[NAME]=undefined;_os[VERSION]=undefined;rgxMapper.call(_os,_ua,_rgxmap.os);if(_isSelfNav&&!_os[NAME]&&_uach&&_uach.platform&&_uach.platform!=\"Unknown\"){_os[NAME]=_uach.platform.replace(/chrome os/i,CHROMIUM_OS).replace(/macos/i,MAC_OS)}return _os};this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}};this.getUA=function(){return _ua};this.setUA=function(ua){_ua=typeof ua===STR_TYPE&&ua.length>UA_MAX_LENGTH?trim(ua,UA_MAX_LENGTH):ua;return this};this.setUA(_ua);return this};UAParser.VERSION=LIBVERSION;UAParser.BROWSER=enumerize([NAME,VERSION,MAJOR]);UAParser.CPU=enumerize([ARCHITECTURE]);UAParser.DEVICE=enumerize([MODEL,VENDOR,TYPE,CONSOLE,MOBILE,SMARTTV,TABLET,WEARABLE,EMBEDDED]);UAParser.ENGINE=UAParser.OS=enumerize([NAME,VERSION]);if(typeof exports!==UNDEF_TYPE){if(typeof module!==UNDEF_TYPE&&module.exports){exports=module.exports=UAParser}exports.UAParser=UAParser}else{if(typeof define===FUNC_TYPE&&define.amd){define(function(){return UAParser})}else if(typeof window!==UNDEF_TYPE){window.UAParser=UAParser}}var $=typeof window!==UNDEF_TYPE&&(window.jQuery||window.Zepto);if($&&!$.ua){var parser=new UAParser;$.ua=parser.getResult();$.ua.get=function(){return parser.getUA()};$.ua.set=function(ua){parser.setUA(ua);var result=parser.getResult();for(var prop in result){$.ua[prop]=result[prop]}}}})(typeof window===\"object\"?window:this);","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));\n\t}\n\tdef['default'] = () => (value);\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"static/js/\" + chunkId + \".\" + \"c07a1838\" + \".chunk.js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","var inProgress = {};\nvar dataWebpackPrefix = \"uppout:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t792: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkuppout\"] = self[\"webpackChunkuppout\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","var _g;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nfunction SvgLogo(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 841.9 595.3\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#61DAFB\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M666.3 296.5c0-32.5-40.7-63.3-103.1-82.4 14.4-63.6 8-114.2-20.2-130.4-6.5-3.8-14.1-5.6-22.4-5.6v22.3c4.6 0 8.3.9 11.4 2.6 13.6 7.8 19.5 37.5 14.9 75.7-1.1 9.4-2.9 19.3-5.1 29.4-19.6-4.8-41-8.5-63.5-10.9-13.5-18.5-27.5-35.3-41.6-50 32.6-30.3 63.2-46.9 84-46.9V78c-27.5 0-63.5 19.6-99.9 53.6-36.4-33.8-72.4-53.2-99.9-53.2v22.3c20.7 0 51.4 16.5 84 46.6-14 14.7-28 31.4-41.3 49.9-22.6 2.4-44 6.1-63.6 11-2.3-10-4-19.7-5.2-29-4.7-38.2 1.1-67.9 14.6-75.8 3-1.8 6.9-2.6 11.5-2.6V78.5c-8.4 0-16 1.8-22.6 5.6-28.1 16.2-34.4 66.7-19.9 130.1-62.2 19.2-102.7 49.9-102.7 82.3 0 32.5 40.7 63.3 103.1 82.4-14.4 63.6-8 114.2 20.2 130.4 6.5 3.8 14.1 5.6 22.5 5.6 27.5 0 63.5-19.6 99.9-53.6 36.4 33.8 72.4 53.2 99.9 53.2 8.4 0 16-1.8 22.6-5.6 28.1-16.2 34.4-66.7 19.9-130.1 62-19.1 102.5-49.9 102.5-82.3zm-130.2-66.7c-3.7 12.9-8.3 26.2-13.5 39.5-4.1-8-8.4-16-13.1-24-4.6-8-9.5-15.8-14.4-23.4 14.2 2.1 27.9 4.7 41 7.9zm-45.8 106.5c-7.8 13.5-15.8 26.3-24.1 38.2-14.9 1.3-30 2-45.2 2-15.1 0-30.2-.7-45-1.9-8.3-11.9-16.4-24.6-24.2-38-7.6-13.1-14.5-26.4-20.8-39.8 6.2-13.4 13.2-26.8 20.7-39.9 7.8-13.5 15.8-26.3 24.1-38.2 14.9-1.3 30-2 45.2-2 15.1 0 30.2.7 45 1.9 8.3 11.9 16.4 24.6 24.2 38 7.6 13.1 14.5 26.4 20.8 39.8-6.3 13.4-13.2 26.8-20.7 39.9zm32.3-13c5.4 13.4 10 26.8 13.8 39.8-13.1 3.2-26.9 5.9-41.2 8 4.9-7.7 9.8-15.6 14.4-23.7 4.6-8 8.9-16.1 13-24.1zM421.2 430c-9.3-9.6-18.6-20.3-27.8-32 9 .4 18.2.7 27.5.7 9.4 0 18.7-.2 27.8-.7-9 11.7-18.3 22.4-27.5 32zm-74.4-58.9c-14.2-2.1-27.9-4.7-41-7.9 3.7-12.9 8.3-26.2 13.5-39.5 4.1 8 8.4 16 13.1 24 4.7 8 9.5 15.8 14.4 23.4zM420.7 163c9.3 9.6 18.6 20.3 27.8 32-9-.4-18.2-.7-27.5-.7-9.4 0-18.7.2-27.8.7 9-11.7 18.3-22.4 27.5-32zm-74 58.9c-4.9 7.7-9.8 15.6-14.4 23.7-4.6 8-8.9 16-13 24-5.4-13.4-10-26.8-13.8-39.8 13.1-3.1 26.9-5.8 41.2-7.9zm-90.5 125.2c-35.4-15.1-58.3-34.9-58.3-50.6 0-15.7 22.9-35.6 58.3-50.6 8.6-3.7 18-7 27.7-10.1 5.7 19.6 13.2 40 22.5 60.9-9.2 20.8-16.6 41.1-22.2 60.6-9.9-3.1-19.3-6.5-28-10.2zM310 490c-13.6-7.8-19.5-37.5-14.9-75.7 1.1-9.4 2.9-19.3 5.1-29.4 19.6 4.8 41 8.5 63.5 10.9 13.5 18.5 27.5 35.3 41.6 50-32.6 30.3-63.2 46.9-84 46.9-4.5-.1-8.3-1-11.3-2.7zm237.2-76.2c4.7 38.2-1.1 67.9-14.6 75.8-3 1.8-6.9 2.6-11.5 2.6-20.7 0-51.4-16.5-84-46.6 14-14.7 28-31.4 41.3-49.9 22.6-2.4 44-6.1 63.6-11 2.3 10.1 4.1 19.8 5.2 29.1zm38.5-66.7c-8.6 3.7-18 7-27.7 10.1-5.7-19.6-13.2-40-22.5-60.9 9.2-20.8 16.6-41.1 22.2-60.6 9.9 3.1 19.3 6.5 28.1 10.2 35.4 15.1 58.3 34.9 58.3 50.6-.1 15.7-23 35.6-58.4 50.6zM320.8 78.4z\"\n }), /*#__PURE__*/React.createElement(\"circle\", {\n cx: 420.9,\n cy: 296.5,\n r: 45.7\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M520.5 78.1z\"\n }))));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogo);\nexport default __webpack_public_path__ + \"static/media/logo.6ce24c58023cc2f8fd88fe9d219db6c6.svg\";\nexport { ForwardRef as ReactComponent };","import logo from './logo.svg';\nimport './App.css';\n\nfunction App() {\n return (\n
\n sds\n \n
\n );\n}\n\nexport default App;\n","const reportWebVitals = onPerfEntry => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","const noop = () => {};\n\nlet _WINDOW = {};\nlet _DOCUMENT = {};\nlet _MUTATION_OBSERVER = null;\nlet _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\nconst {\n userAgent = ''\n} = _WINDOW.navigator || {};\nconst WINDOW = _WINDOW;\nconst DOCUMENT = _DOCUMENT;\nconst MUTATION_OBSERVER = _MUTATION_OBSERVER;\nconst PERFORMANCE = _PERFORMANCE;\nconst IS_BROWSER = !!WINDOW.document;\nconst IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';\nconst IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');\n\nvar a = \"classic\",\n t = \"duotone\",\n r = \"sharp\",\n o = \"sharp-duotone\",\n c = [a, t, r, o];\n\nvar et$1 = {\n classic: {\n 900: \"fas\",\n 400: \"far\",\n normal: \"far\",\n 300: \"fal\",\n 100: \"fat\"\n },\n sharp: {\n 900: \"fass\",\n 400: \"fasr\",\n 300: \"fasl\",\n 100: \"fast\"\n },\n \"sharp-duotone\": {\n 900: \"fasds\"\n }\n};\nvar bt = {\n kit: {\n fak: \"kit\",\n \"fa-kit\": \"kit\"\n },\n \"kit-duotone\": {\n fakd: \"kit-duotone\",\n \"fa-kit-duotone\": \"kit-duotone\"\n }\n},\n Ct = [\"kit\"];\nvar Dt = /fa(s|r|l|t|d|b|k|kd|ss|sr|sl|st|sds)?[\\-\\ ]/,\n Kt = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i;\nvar ao = {\n \"Font Awesome 5 Free\": {\n 900: \"fas\",\n 400: \"far\"\n },\n \"Font Awesome 5 Pro\": {\n 900: \"fas\",\n 400: \"far\",\n normal: \"far\",\n 300: \"fal\"\n },\n \"Font Awesome 5 Brands\": {\n 400: \"fab\",\n normal: \"fab\"\n },\n \"Font Awesome 5 Duotone\": {\n 900: \"fad\"\n }\n};\nvar eo = {\n \"Font Awesome 6 Free\": {\n 900: \"fas\",\n 400: \"far\"\n },\n \"Font Awesome 6 Pro\": {\n 900: \"fas\",\n 400: \"far\",\n normal: \"far\",\n 300: \"fal\",\n 100: \"fat\"\n },\n \"Font Awesome 6 Brands\": {\n 400: \"fab\",\n normal: \"fab\"\n },\n \"Font Awesome 6 Duotone\": {\n 900: \"fad\"\n },\n \"Font Awesome 6 Sharp\": {\n 900: \"fass\",\n 400: \"fasr\",\n normal: \"fasr\",\n 300: \"fasl\",\n 100: \"fast\"\n },\n \"Font Awesome 6 Sharp Duotone\": {\n 900: \"fasds\"\n }\n},\n lo = {\n classic: {\n \"fa-brands\": \"fab\",\n \"fa-duotone\": \"fad\",\n \"fa-light\": \"fal\",\n \"fa-regular\": \"far\",\n \"fa-solid\": \"fas\",\n \"fa-thin\": \"fat\"\n },\n sharp: {\n \"fa-solid\": \"fass\",\n \"fa-regular\": \"fasr\",\n \"fa-light\": \"fasl\",\n \"fa-thin\": \"fast\"\n },\n \"sharp-duotone\": {\n \"fa-solid\": \"fasds\"\n }\n},\n y = {\n classic: [\"fas\", \"far\", \"fal\", \"fat\"],\n sharp: [\"fass\", \"fasr\", \"fasl\", \"fast\"],\n \"sharp-duotone\": [\"fasds\"]\n},\n no = {\n classic: {\n fab: \"fa-brands\",\n fad: \"fa-duotone\",\n fal: \"fa-light\",\n far: \"fa-regular\",\n fas: \"fa-solid\",\n fat: \"fa-thin\"\n },\n sharp: {\n fass: \"fa-solid\",\n fasr: \"fa-regular\",\n fasl: \"fa-light\",\n fast: \"fa-thin\"\n },\n \"sharp-duotone\": {\n fasds: \"fa-solid\"\n }\n},\n fo = {\n classic: {\n solid: \"fas\",\n regular: \"far\",\n light: \"fal\",\n thin: \"fat\",\n duotone: \"fad\",\n brands: \"fab\"\n },\n sharp: {\n solid: \"fass\",\n regular: \"fasr\",\n light: \"fasl\",\n thin: \"fast\"\n },\n \"sharp-duotone\": {\n solid: \"fasds\"\n }\n},\n ho = {\n classic: {\n fa: \"solid\",\n fas: \"solid\",\n \"fa-solid\": \"solid\",\n far: \"regular\",\n \"fa-regular\": \"regular\",\n fal: \"light\",\n \"fa-light\": \"light\",\n fat: \"thin\",\n \"fa-thin\": \"thin\",\n fad: \"duotone\",\n \"fa-duotone\": \"duotone\",\n fab: \"brands\",\n \"fa-brands\": \"brands\"\n },\n sharp: {\n fa: \"solid\",\n fass: \"solid\",\n \"fa-solid\": \"solid\",\n fasr: \"regular\",\n \"fa-regular\": \"regular\",\n fasl: \"light\",\n \"fa-light\": \"light\",\n fast: \"thin\",\n \"fa-thin\": \"thin\"\n },\n \"sharp-duotone\": {\n fa: \"solid\",\n fasds: \"solid\",\n \"fa-solid\": \"solid\"\n }\n},\n x$1 = [\"solid\", \"regular\", \"light\", \"thin\", \"duotone\", \"brands\"],\n u$1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],\n m$1 = u$1.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]),\n t$1 = {\n GROUP: \"duotone-group\",\n SWAP_OPACITY: \"swap-opacity\",\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\"\n},\n yo = [...Object.keys(y), ...x$1, \"2xs\", \"xs\", \"sm\", \"lg\", \"xl\", \"2xl\", \"beat\", \"border\", \"fade\", \"beat-fade\", \"bounce\", \"flip-both\", \"flip-horizontal\", \"flip-vertical\", \"flip\", \"fw\", \"inverse\", \"layers-counter\", \"layers-text\", \"layers\", \"li\", \"pull-left\", \"pull-right\", \"pulse\", \"rotate-180\", \"rotate-270\", \"rotate-90\", \"rotate-by\", \"shake\", \"spin-pulse\", \"spin-reverse\", \"spin\", \"stack-1x\", \"stack-2x\", \"stack\", \"ul\", t$1.GROUP, t$1.SWAP_OPACITY, t$1.PRIMARY, t$1.SECONDARY].concat(u$1.map(o => \"\".concat(o, \"x\"))).concat(m$1.map(o => \"w-\".concat(o)));\nvar mo = {\n \"Font Awesome Kit\": {\n 400: \"fak\",\n normal: \"fak\"\n },\n \"Font Awesome Kit Duotone\": {\n 400: \"fakd\",\n normal: \"fakd\"\n }\n},\n Io = {\n kit: {\n \"fa-kit\": \"fak\"\n },\n \"kit-duotone\": {\n \"fa-kit-duotone\": \"fakd\"\n }\n},\n Fo = {\n kit: {\n fak: \"fa-kit\"\n },\n \"kit-duotone\": {\n fakd: \"fa-kit-duotone\"\n }\n},\n So = {\n kit: {\n kit: \"fak\"\n },\n \"kit-duotone\": {\n \"kit-duotone\": \"fakd\"\n }\n};\n\nconst NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';\nconst UNITS_IN_GRID = 16;\nconst DEFAULT_CSS_PREFIX = 'fa';\nconst DEFAULT_REPLACEMENT_CLASS = 'svg-inline--fa';\nconst DATA_FA_I2SVG = 'data-fa-i2svg';\nconst DATA_FA_PSEUDO_ELEMENT = 'data-fa-pseudo-element';\nconst DATA_FA_PSEUDO_ELEMENT_PENDING = 'data-fa-pseudo-element-pending';\nconst DATA_PREFIX = 'data-prefix';\nconst DATA_ICON = 'data-icon';\nconst HTML_CLASS_I2SVG_BASE_CLASS = 'fontawesome-i2svg';\nconst MUTATION_APPROACH_ASYNC = 'async';\nconst TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ['HTML', 'HEAD', 'STYLE', 'SCRIPT'];\nconst PRODUCTION = (() => {\n try {\n return process.env.NODE_ENV === 'production';\n } catch (e$$1) {\n return false;\n }\n})();\nconst FAMILIES = [a, r, o];\n\nfunction familyProxy(obj) {\n // Defaults to the classic family if family is not available\n return new Proxy(obj, {\n get(target, prop) {\n return prop in target ? target[prop] : target[a];\n }\n\n });\n}\n\nconst _PREFIX_TO_STYLE = { ...ho\n};\n_PREFIX_TO_STYLE[a] = { ...ho[a],\n ...bt['kit'],\n ...bt['kit-duotone']\n};\nconst PREFIX_TO_STYLE = familyProxy(_PREFIX_TO_STYLE);\nconst _STYLE_TO_PREFIX = { ...fo\n};\n_STYLE_TO_PREFIX[a] = { ..._STYLE_TO_PREFIX[a],\n ...So['kit'],\n ...So['kit-duotone']\n};\nconst STYLE_TO_PREFIX = familyProxy(_STYLE_TO_PREFIX);\nconst _PREFIX_TO_LONG_STYLE = { ...no\n};\n_PREFIX_TO_LONG_STYLE[a] = { ..._PREFIX_TO_LONG_STYLE[a],\n ...Fo['kit']\n};\nconst PREFIX_TO_LONG_STYLE = familyProxy(_PREFIX_TO_LONG_STYLE);\nconst _LONG_STYLE_TO_PREFIX = { ...lo\n};\n_LONG_STYLE_TO_PREFIX[a] = { ..._LONG_STYLE_TO_PREFIX[a],\n ...Io['kit']\n};\nconst LONG_STYLE_TO_PREFIX = familyProxy(_LONG_STYLE_TO_PREFIX);\nconst ICON_SELECTION_SYNTAX_PATTERN = Dt; // eslint-disable-line no-useless-escape\n\nconst LAYERS_TEXT_CLASSNAME = 'fa-layers-text';\nconst FONT_FAMILY_PATTERN = Kt;\nconst _FONT_WEIGHT_TO_PREFIX = { ...et$1\n};\nconst FONT_WEIGHT_TO_PREFIX = familyProxy(_FONT_WEIGHT_TO_PREFIX);\nconst ATTRIBUTES_WATCHED_FOR_MUTATION = ['class', 'data-prefix', 'data-icon', 'data-fa-transform', 'data-fa-mask'];\nconst DUOTONE_CLASSES = t$1;\nconst prefixes = new Set();\nObject.keys(STYLE_TO_PREFIX[a]).map(prefixes.add.bind(prefixes));\nObject.keys(STYLE_TO_PREFIX[r]).map(prefixes.add.bind(prefixes));\nObject.keys(STYLE_TO_PREFIX[o]).map(prefixes.add.bind(prefixes));\nconst RESERVED_CLASSES = [...Ct, ...yo];\n\nconst 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 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 const attrs = [['data-family-prefix', 'familyPrefix'], ['data-css-prefix', 'cssPrefix'], ['data-family-default', 'familyDefault'], ['data-style-default', 'styleDefault'], ['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(_ref => {\n let [attr, key] = _ref;\n const val = coerce(getAttrConfig(attr));\n\n if (val !== undefined && val !== null) {\n initial[key] = val;\n }\n });\n}\n\nconst _default = {\n styleDefault: 'solid',\n familyDefault: 'classic',\n cssPrefix: DEFAULT_CSS_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}; // familyPrefix is deprecated but we must still support it if present\n\nif (initial.familyPrefix) {\n initial.cssPrefix = initial.familyPrefix;\n}\n\nconst _config = { ..._default,\n ...initial\n};\nif (!_config.autoReplaceSvg) _config.observeMutations = false;\nconst config = {};\nObject.keys(_default).forEach(key => {\n Object.defineProperty(config, key, {\n enumerable: true,\n set: function (val) {\n _config[key] = val;\n\n _onChangeCb.forEach(cb => cb(config));\n },\n get: function () {\n return _config[key];\n }\n });\n}); // familyPrefix is deprecated as of 6.2.0 and should be removed in 7.0.0\n\nObject.defineProperty(config, 'familyPrefix', {\n enumerable: true,\n set: function (val) {\n _config.cssPrefix = val;\n\n _onChangeCb.forEach(cb => cb(config));\n },\n get: function () {\n return _config.cssPrefix;\n }\n});\nWINDOW.FontAwesomeConfig = config;\nconst _onChangeCb = [];\nfunction onChange(cb) {\n _onChangeCb.push(cb);\n\n return () => {\n _onChangeCb.splice(_onChangeCb.indexOf(cb), 1);\n };\n}\n\nconst d$2 = UNITS_IN_GRID;\nconst meaninglessTransform = {\n size: 16,\n x: 0,\n y: 0,\n rotate: 0,\n flipX: false,\n flipY: false\n};\nfunction insertCss(css) {\n if (!css || !IS_DOM) {\n return;\n }\n\n const style = DOCUMENT.createElement('style');\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n const headChildren = DOCUMENT.head.childNodes;\n let beforeChild = null;\n\n for (let i = headChildren.length - 1; i > -1; i--) {\n const child = headChildren[i];\n const 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}\nconst idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\nfunction nextUniqueId() {\n let size = 12;\n let id = '';\n\n while (size-- > 0) {\n id += idPool[Math.random() * 62 | 0];\n }\n\n return id;\n}\nfunction toArray(obj) {\n const array = [];\n\n for (let 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(i => i);\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((acc, attributeName) => {\n return acc + \"\".concat(attributeName, \"=\\\"\").concat(htmlEscape(attributes[attributeName]), \"\\\" \");\n }, '').trim();\n}\nfunction joinStyles(styles) {\n return Object.keys(styles || {}).reduce((acc, styleName) => {\n return acc + \"\".concat(styleName, \": \").concat(styles[styleName].trim(), \";\");\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 let {\n transform,\n containerWidth,\n iconWidth\n } = _ref;\n const outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n const innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n const innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n const innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n const inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n const path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n return {\n outer,\n inner,\n path\n };\n}\nfunction transformForCss(_ref2) {\n let {\n transform,\n width = UNITS_IN_GRID,\n height = UNITS_IN_GRID,\n startCentered = false\n } = _ref2;\n let val = '';\n\n if (startCentered && IS_IE) {\n val += \"translate(\".concat(transform.x / d$2 - width / 2, \"em, \").concat(transform.y / d$2 - height / 2, \"em) \");\n } else if (startCentered) {\n val += \"translate(calc(-50% + \".concat(transform.x / d$2, \"em), calc(-50% + \").concat(transform.y / d$2, \"em)) \");\n } else {\n val += \"translate(\".concat(transform.x / d$2, \"em, \").concat(transform.y / d$2, \"em) \");\n }\n\n val += \"scale(\".concat(transform.size / d$2 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / d$2 * (transform.flipY ? -1 : 1), \") \");\n val += \"rotate(\".concat(transform.rotate, \"deg) \");\n return val;\n}\n\nvar baseStyles = \":root, :host {\\n --fa-font-solid: normal 900 1em/1 \\\"Font Awesome 6 Free\\\";\\n --fa-font-regular: normal 400 1em/1 \\\"Font Awesome 6 Free\\\";\\n --fa-font-light: normal 300 1em/1 \\\"Font Awesome 6 Pro\\\";\\n --fa-font-thin: normal 100 1em/1 \\\"Font Awesome 6 Pro\\\";\\n --fa-font-duotone: normal 900 1em/1 \\\"Font Awesome 6 Duotone\\\";\\n --fa-font-brands: normal 400 1em/1 \\\"Font Awesome 6 Brands\\\";\\n --fa-font-sharp-solid: normal 900 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-regular: normal 400 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-light: normal 300 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-thin: normal 100 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-duotone-solid: normal 900 1em/1 \\\"Font Awesome 6 Sharp Duotone\\\";\\n}\\n\\nsvg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {\\n overflow: visible;\\n box-sizing: content-box;\\n}\\n\\n.svg-inline--fa {\\n display: var(--fa-display, inline-block);\\n height: 1em;\\n overflow: visible;\\n vertical-align: -0.125em;\\n}\\n.svg-inline--fa.fa-2xs {\\n vertical-align: 0.1em;\\n}\\n.svg-inline--fa.fa-xs {\\n vertical-align: 0em;\\n}\\n.svg-inline--fa.fa-sm {\\n vertical-align: -0.0714285705em;\\n}\\n.svg-inline--fa.fa-lg {\\n vertical-align: -0.2em;\\n}\\n.svg-inline--fa.fa-xl {\\n vertical-align: -0.25em;\\n}\\n.svg-inline--fa.fa-2xl {\\n vertical-align: -0.3125em;\\n}\\n.svg-inline--fa.fa-pull-left {\\n margin-right: var(--fa-pull-margin, 0.3em);\\n width: auto;\\n}\\n.svg-inline--fa.fa-pull-right {\\n margin-left: var(--fa-pull-margin, 0.3em);\\n width: auto;\\n}\\n.svg-inline--fa.fa-li {\\n width: var(--fa-li-width, 2em);\\n top: 0.25em;\\n}\\n.svg-inline--fa.fa-fw {\\n width: var(--fa-fw-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-counter, .fa-layers-text {\\n display: inline-block;\\n position: absolute;\\n text-align: center;\\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 transform-origin: center center;\\n}\\n\\n.fa-layers-text {\\n left: 50%;\\n top: 50%;\\n transform: translate(-50%, -50%);\\n transform-origin: center center;\\n}\\n\\n.fa-layers-counter {\\n background-color: var(--fa-counter-background-color, #ff253a);\\n border-radius: var(--fa-counter-border-radius, 1em);\\n box-sizing: border-box;\\n color: var(--fa-inverse, #fff);\\n line-height: var(--fa-counter-line-height, 1);\\n max-width: var(--fa-counter-max-width, 5em);\\n min-width: var(--fa-counter-min-width, 1.5em);\\n overflow: hidden;\\n padding: var(--fa-counter-padding, 0.25em 0.5em);\\n right: var(--fa-right, 0);\\n text-overflow: ellipsis;\\n top: var(--fa-top, 0);\\n transform: scale(var(--fa-counter-scale, 0.25));\\n transform-origin: top right;\\n}\\n\\n.fa-layers-bottom-right {\\n bottom: var(--fa-bottom, 0);\\n right: var(--fa-right, 0);\\n top: auto;\\n transform: scale(var(--fa-layers-scale, 0.25));\\n transform-origin: bottom right;\\n}\\n\\n.fa-layers-bottom-left {\\n bottom: var(--fa-bottom, 0);\\n left: var(--fa-left, 0);\\n right: auto;\\n top: auto;\\n transform: scale(var(--fa-layers-scale, 0.25));\\n transform-origin: bottom left;\\n}\\n\\n.fa-layers-top-right {\\n top: var(--fa-top, 0);\\n right: var(--fa-right, 0);\\n transform: scale(var(--fa-layers-scale, 0.25));\\n transform-origin: top right;\\n}\\n\\n.fa-layers-top-left {\\n left: var(--fa-left, 0);\\n right: auto;\\n top: var(--fa-top, 0);\\n transform: scale(var(--fa-layers-scale, 0.25));\\n transform-origin: top left;\\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-2xs {\\n font-size: 0.625em;\\n line-height: 0.1em;\\n vertical-align: 0.225em;\\n}\\n\\n.fa-xs {\\n font-size: 0.75em;\\n line-height: 0.0833333337em;\\n vertical-align: 0.125em;\\n}\\n\\n.fa-sm {\\n font-size: 0.875em;\\n line-height: 0.0714285718em;\\n vertical-align: 0.0535714295em;\\n}\\n\\n.fa-lg {\\n font-size: 1.25em;\\n line-height: 0.05em;\\n vertical-align: -0.075em;\\n}\\n\\n.fa-xl {\\n font-size: 1.5em;\\n line-height: 0.0416666682em;\\n vertical-align: -0.125em;\\n}\\n\\n.fa-2xl {\\n font-size: 2em;\\n line-height: 0.03125em;\\n vertical-align: -0.1875em;\\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: var(--fa-li-margin, 2.5em);\\n padding-left: 0;\\n}\\n.fa-ul > li {\\n position: relative;\\n}\\n\\n.fa-li {\\n left: calc(-1 * var(--fa-li-width, 2em));\\n position: absolute;\\n text-align: center;\\n width: var(--fa-li-width, 2em);\\n line-height: inherit;\\n}\\n\\n.fa-border {\\n border-color: var(--fa-border-color, #eee);\\n border-radius: var(--fa-border-radius, 0.1em);\\n border-style: var(--fa-border-style, solid);\\n border-width: var(--fa-border-width, 0.08em);\\n padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);\\n}\\n\\n.fa-pull-left {\\n float: left;\\n margin-right: var(--fa-pull-margin, 0.3em);\\n}\\n\\n.fa-pull-right {\\n float: right;\\n margin-left: var(--fa-pull-margin, 0.3em);\\n}\\n\\n.fa-beat {\\n animation-name: fa-beat;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-bounce {\\n animation-name: fa-bounce;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\\n}\\n\\n.fa-fade {\\n animation-name: fa-fade;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-beat-fade {\\n animation-name: fa-beat-fade;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-flip {\\n animation-name: fa-flip;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-shake {\\n animation-name: fa-shake;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, linear);\\n}\\n\\n.fa-spin {\\n animation-name: fa-spin;\\n animation-delay: var(--fa-animation-delay, 0s);\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 2s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, linear);\\n}\\n\\n.fa-spin-reverse {\\n --fa-animation-direction: reverse;\\n}\\n\\n.fa-pulse,\\n.fa-spin-pulse {\\n animation-name: fa-spin;\\n animation-direction: var(--fa-animation-direction, normal);\\n animation-duration: var(--fa-animation-duration, 1s);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-timing-function: var(--fa-animation-timing, steps(8));\\n}\\n\\n@media (prefers-reduced-motion: reduce) {\\n .fa-beat,\\n.fa-bounce,\\n.fa-fade,\\n.fa-beat-fade,\\n.fa-flip,\\n.fa-pulse,\\n.fa-shake,\\n.fa-spin,\\n.fa-spin-pulse {\\n animation-delay: -1ms;\\n animation-duration: 1ms;\\n animation-iteration-count: 1;\\n transition-delay: 0s;\\n transition-duration: 0s;\\n }\\n}\\n@keyframes fa-beat {\\n 0%, 90% {\\n transform: scale(1);\\n }\\n 45% {\\n transform: scale(var(--fa-beat-scale, 1.25));\\n }\\n}\\n@keyframes fa-bounce {\\n 0% {\\n transform: scale(1, 1) translateY(0);\\n }\\n 10% {\\n transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n }\\n 30% {\\n transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n }\\n 50% {\\n transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n }\\n 57% {\\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n }\\n 64% {\\n transform: scale(1, 1) translateY(0);\\n }\\n 100% {\\n transform: scale(1, 1) translateY(0);\\n }\\n}\\n@keyframes fa-fade {\\n 50% {\\n opacity: var(--fa-fade-opacity, 0.4);\\n }\\n}\\n@keyframes fa-beat-fade {\\n 0%, 100% {\\n opacity: var(--fa-beat-fade-opacity, 0.4);\\n transform: scale(1);\\n }\\n 50% {\\n opacity: 1;\\n transform: scale(var(--fa-beat-fade-scale, 1.125));\\n }\\n}\\n@keyframes fa-flip {\\n 50% {\\n transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n }\\n}\\n@keyframes fa-shake {\\n 0% {\\n transform: rotate(-15deg);\\n }\\n 4% {\\n transform: rotate(15deg);\\n }\\n 8%, 24% {\\n transform: rotate(-18deg);\\n }\\n 12%, 28% {\\n transform: rotate(18deg);\\n }\\n 16% {\\n transform: rotate(-22deg);\\n }\\n 20% {\\n transform: rotate(22deg);\\n }\\n 32% {\\n transform: rotate(-12deg);\\n }\\n 36% {\\n transform: rotate(12deg);\\n }\\n 40%, 100% {\\n transform: rotate(0deg);\\n }\\n}\\n@keyframes fa-spin {\\n 0% {\\n transform: rotate(0deg);\\n }\\n 100% {\\n transform: rotate(360deg);\\n }\\n}\\n.fa-rotate-90 {\\n transform: rotate(90deg);\\n}\\n\\n.fa-rotate-180 {\\n transform: rotate(180deg);\\n}\\n\\n.fa-rotate-270 {\\n transform: rotate(270deg);\\n}\\n\\n.fa-flip-horizontal {\\n transform: scale(-1, 1);\\n}\\n\\n.fa-flip-vertical {\\n transform: scale(1, -1);\\n}\\n\\n.fa-flip-both,\\n.fa-flip-horizontal.fa-flip-vertical {\\n transform: scale(-1, -1);\\n}\\n\\n.fa-rotate-by {\\n transform: rotate(var(--fa-rotate-angle, 0));\\n}\\n\\n.fa-stack {\\n display: inline-block;\\n vertical-align: middle;\\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 z-index: var(--fa-stack-z-index, auto);\\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: var(--fa-inverse, #fff);\\n}\\n\\n.sr-only,\\n.fa-sr-only {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n margin: -1px;\\n overflow: hidden;\\n clip: rect(0, 0, 0, 0);\\n white-space: nowrap;\\n border-width: 0;\\n}\\n\\n.sr-only-focusable:not(:focus),\\n.fa-sr-only-focusable:not(:focus) {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n margin: -1px;\\n overflow: hidden;\\n clip: rect(0, 0, 0, 0);\\n white-space: nowrap;\\n border-width: 0;\\n}\\n\\n.svg-inline--fa .fa-primary {\\n fill: var(--fa-primary-color, currentColor);\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa .fa-secondary {\\n fill: var(--fa-secondary-color, currentColor);\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-primary {\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\\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.fa-duotone.fa-inverse {\\n color: var(--fa-inverse, #fff);\\n}\";\n\nfunction css() {\n const dcp = DEFAULT_CSS_PREFIX;\n const drc = DEFAULT_REPLACEMENT_CLASS;\n const fp = config.cssPrefix;\n const rc = config.replacementClass;\n let s = baseStyles;\n\n if (fp !== dcp || rc !== drc) {\n const dPatt = new RegExp(\"\\\\.\".concat(dcp, \"\\\\-\"), 'g');\n const customPropPatt = new RegExp(\"\\\\--\".concat(dcp, \"\\\\-\"), 'g');\n const 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\nlet _cssInserted = false;\n\nfunction ensureCss() {\n if (config.autoAddCss && !_cssInserted) {\n insertCss(css());\n _cssInserted = true;\n }\n}\n\nvar InjectCSS = {\n mixout() {\n return {\n dom: {\n css,\n insertCss: ensureCss\n }\n };\n },\n\n hooks() {\n return {\n beforeDOMElementCreation() {\n ensureCss();\n },\n\n beforeI2svg() {\n ensureCss();\n }\n\n };\n }\n\n};\n\nconst w$1 = WINDOW || {};\nif (!w$1[NAMESPACE_IDENTIFIER]) w$1[NAMESPACE_IDENTIFIER] = {};\nif (!w$1[NAMESPACE_IDENTIFIER].styles) w$1[NAMESPACE_IDENTIFIER].styles = {};\nif (!w$1[NAMESPACE_IDENTIFIER].hooks) w$1[NAMESPACE_IDENTIFIER].hooks = {};\nif (!w$1[NAMESPACE_IDENTIFIER].shims) w$1[NAMESPACE_IDENTIFIER].shims = [];\nvar namespace = w$1[NAMESPACE_IDENTIFIER];\n\nconst functions = [];\n\nconst listener = function () {\n DOCUMENT.removeEventListener('DOMContentLoaded', listener);\n loaded = 1;\n functions.map(fn => fn());\n};\n\nlet 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\nfunction toHtml(abstractNodes) {\n const {\n tag,\n attributes = {},\n children = []\n } = abstractNodes;\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\nfunction iconFromMapping(mapping, prefix, iconName) {\n if (mapping && mapping[prefix] && mapping[prefix][iconName]) {\n return {\n prefix,\n iconName,\n icon: mapping[prefix][iconName]\n };\n }\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\n/**\n * ucs2decode() and codePointAt() are both works of Mathias Bynens and licensed under MIT\n *\n * Copyright Mathias Bynens \n\n * Permission is hereby granted, free of charge, to any person obtaining\n * a 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\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\nfunction ucs2decode(string) {\n const output = [];\n let counter = 0;\n const length = string.length;\n\n while (counter < length) {\n const value = string.charCodeAt(counter++);\n\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n const extra = string.charCodeAt(counter++);\n\n if ((extra & 0xFC00) == 0xDC00) {\n // eslint-disable-line eqeqeq\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n\n return output;\n}\n\nfunction toHex(unicode) {\n const decoded = ucs2decode(unicode);\n return decoded.length === 1 ? decoded[0].toString(16) : null;\n}\nfunction codePointAt(string, index) {\n const size = string.length;\n let first = string.charCodeAt(index);\n let second;\n\n if (first >= 0xD800 && first <= 0xDBFF && size > index + 1) {\n second = string.charCodeAt(index + 1);\n\n if (second >= 0xDC00 && second <= 0xDFFF) {\n return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;\n }\n }\n\n return first;\n}\n\nfunction normalizeIcons(icons) {\n return Object.keys(icons).reduce((acc, iconName) => {\n const icon = icons[iconName];\n const 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\nfunction defineIcons(prefix, icons) {\n let params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n const {\n skipHooks = false\n } = params;\n const normalized = normalizeIcons(icons);\n\n if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {\n namespace.hooks.addPack(prefix, normalizeIcons(icons));\n } else {\n namespace.styles[prefix] = { ...(namespace.styles[prefix] || {}),\n ...normalized\n };\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 ease 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\nconst {\n styles,\n shims\n} = namespace;\nconst LONG_STYLE = {\n [a]: Object.values(PREFIX_TO_LONG_STYLE[a]),\n [r]: Object.values(PREFIX_TO_LONG_STYLE[r]),\n [o]: Object.values(PREFIX_TO_LONG_STYLE[o])\n};\nlet _defaultUsablePrefix = null;\nlet _byUnicode = {};\nlet _byLigature = {};\nlet _byOldName = {};\nlet _byOldUnicode = {};\nlet _byAlias = {};\nconst PREFIXES = {\n [a]: Object.keys(PREFIX_TO_STYLE[a]),\n [r]: Object.keys(PREFIX_TO_STYLE[r]),\n [o]: Object.keys(PREFIX_TO_STYLE[o])\n};\n\nfunction isReserved(name) {\n return ~RESERVED_CLASSES.indexOf(name);\n}\n\nfunction getIconName(cssPrefix, cls) {\n const parts = cls.split('-');\n const prefix = parts[0];\n const iconName = parts.slice(1).join('-');\n\n if (prefix === cssPrefix && iconName !== '' && !isReserved(iconName)) {\n return iconName;\n } else {\n return null;\n }\n}\nconst build = () => {\n const lookup = reducer => {\n return reduce(styles, (o$$1, style, prefix) => {\n o$$1[prefix] = reduce(style, reducer, {});\n return o$$1;\n }, {});\n };\n\n _byUnicode = lookup((acc, icon, iconName) => {\n if (icon[3]) {\n acc[icon[3]] = iconName;\n }\n\n if (icon[2]) {\n const aliases = icon[2].filter(a$$1 => {\n return typeof a$$1 === 'number';\n });\n aliases.forEach(alias => {\n acc[alias.toString(16)] = iconName;\n });\n }\n\n return acc;\n });\n _byLigature = lookup((acc, icon, iconName) => {\n acc[iconName] = iconName;\n\n if (icon[2]) {\n const aliases = icon[2].filter(a$$1 => {\n return typeof a$$1 === 'string';\n });\n aliases.forEach(alias => {\n acc[alias] = iconName;\n });\n }\n\n return acc;\n });\n _byAlias = lookup((acc, icon, iconName) => {\n const aliases = icon[2];\n acc[iconName] = iconName;\n aliases.forEach(alias => {\n acc[alias] = iconName;\n });\n return acc;\n }); // If we have a Kit, we can't determine if regular is available since we\n // could be auto-fetching it. We'll have to assume that it is available.\n\n const hasRegular = 'far' in styles || config.autoFetchSvg;\n const shimLookups = reduce(shims, (acc, shim) => {\n const maybeNameMaybeUnicode = shim[0];\n let prefix = shim[1];\n const iconName = shim[2];\n\n if (prefix === 'far' && !hasRegular) {\n prefix = 'fas';\n }\n\n if (typeof maybeNameMaybeUnicode === 'string') {\n acc.names[maybeNameMaybeUnicode] = {\n prefix,\n iconName\n };\n }\n\n if (typeof maybeNameMaybeUnicode === 'number') {\n acc.unicodes[maybeNameMaybeUnicode.toString(16)] = {\n prefix,\n iconName\n };\n }\n\n return acc;\n }, {\n names: {},\n unicodes: {}\n });\n _byOldName = shimLookups.names;\n _byOldUnicode = shimLookups.unicodes;\n _defaultUsablePrefix = getCanonicalPrefix(config.styleDefault, {\n family: config.familyDefault\n });\n};\nonChange(c$$1 => {\n _defaultUsablePrefix = getCanonicalPrefix(c$$1.styleDefault, {\n family: config.familyDefault\n });\n});\nbuild();\nfunction byUnicode(prefix, unicode) {\n return (_byUnicode[prefix] || {})[unicode];\n}\nfunction byLigature(prefix, ligature) {\n return (_byLigature[prefix] || {})[ligature];\n}\nfunction byAlias(prefix, alias) {\n return (_byAlias[prefix] || {})[alias];\n}\nfunction byOldName(name) {\n return _byOldName[name] || {\n prefix: null,\n iconName: null\n };\n}\nfunction byOldUnicode(unicode) {\n const oldUnicode = _byOldUnicode[unicode];\n const newUnicode = byUnicode('fas', unicode);\n return oldUnicode || (newUnicode ? {\n prefix: 'fas',\n iconName: newUnicode\n } : null) || {\n prefix: null,\n iconName: null\n };\n}\nfunction getDefaultUsablePrefix() {\n return _defaultUsablePrefix;\n}\nconst emptyCanonicalIcon = () => {\n return {\n prefix: null,\n iconName: null,\n rest: []\n };\n};\nfunction getCanonicalPrefix(styleOrPrefix) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n family = a\n } = params;\n const style = PREFIX_TO_STYLE[family][styleOrPrefix];\n const prefix = STYLE_TO_PREFIX[family][styleOrPrefix] || STYLE_TO_PREFIX[family][style];\n const defined = styleOrPrefix in namespace.styles ? styleOrPrefix : null;\n const result = prefix || defined || null;\n return result;\n}\nconst PREFIXES_FOR_FAMILY = {\n [a]: Object.keys(PREFIX_TO_LONG_STYLE[a]),\n [r]: Object.keys(PREFIX_TO_LONG_STYLE[r]),\n [o]: Object.keys(PREFIX_TO_LONG_STYLE[o])\n};\nfunction getCanonicalIcon(values) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n skipLookups = false\n } = params;\n const famProps = {\n [a]: \"\".concat(config.cssPrefix, \"-\").concat(a),\n [r]: \"\".concat(config.cssPrefix, \"-\").concat(r),\n [o]: \"\".concat(config.cssPrefix, \"-\").concat(o)\n };\n let givenPrefix = null;\n let family = a;\n const nonDuotoneFamilyIds = c.filter(familyId => familyId !== t);\n nonDuotoneFamilyIds.forEach(familyId => {\n if (values.includes(famProps[familyId]) || values.some(v$$1 => PREFIXES_FOR_FAMILY[familyId].includes(v$$1))) {\n family = familyId;\n }\n });\n const canonical = values.reduce((acc, cls) => {\n const iconName = getIconName(config.cssPrefix, cls);\n\n if (styles[cls]) {\n cls = LONG_STYLE[family].includes(cls) ? LONG_STYLE_TO_PREFIX[family][cls] : cls;\n givenPrefix = cls;\n acc.prefix = cls;\n } else if (PREFIXES[family].indexOf(cls) > -1) {\n givenPrefix = cls;\n acc.prefix = getCanonicalPrefix(cls, {\n family\n });\n } else if (iconName) {\n acc.iconName = iconName;\n } else if (cls !== config.replacementClass && !nonDuotoneFamilyIds.some(familyName => cls === famProps[familyName])) {\n acc.rest.push(cls);\n }\n\n if (!skipLookups && acc.prefix && acc.iconName) {\n const shim = givenPrefix === 'fa' ? byOldName(acc.iconName) : {};\n const aliasIconName = byAlias(acc.prefix, acc.iconName);\n\n if (shim.prefix) {\n givenPrefix = null;\n }\n\n acc.iconName = shim.iconName || aliasIconName || acc.iconName;\n acc.prefix = shim.prefix || acc.prefix;\n\n if (acc.prefix === 'far' && !styles['far'] && styles['fas'] && !config.autoFetchSvg) {\n // Allow a fallback from the regular style to solid if regular is not available\n // but only if we aren't auto-fetching SVGs\n acc.prefix = 'fas';\n }\n }\n\n return acc;\n }, emptyCanonicalIcon());\n\n if (values.includes('fa-brands') || values.includes('fab')) {\n canonical.prefix = 'fab';\n }\n\n if (values.includes('fa-duotone') || values.includes('fad')) {\n canonical.prefix = 'fad';\n }\n\n if (!canonical.prefix && family === r && (styles['fass'] || config.autoFetchSvg)) {\n canonical.prefix = 'fass';\n canonical.iconName = byAlias(canonical.prefix, canonical.iconName) || canonical.iconName;\n }\n\n if (!canonical.prefix && family === o && (styles['fasds'] || config.autoFetchSvg)) {\n canonical.prefix = 'fasds';\n canonical.iconName = byAlias(canonical.prefix, canonical.iconName) || canonical.iconName;\n }\n\n if (canonical.prefix === 'fa' || givenPrefix === 'fa') {\n // The fa prefix is not canonical. So if it has made it through until this point\n // we will shift it to the correct prefix.\n canonical.prefix = getDefaultUsablePrefix() || 'fas';\n }\n\n return canonical;\n}\n\nclass Library {\n constructor() {\n this.definitions = {};\n }\n\n add() {\n for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {\n definitions[_key] = arguments[_key];\n }\n\n const additions = definitions.reduce(this._pullDefinitions, {});\n Object.keys(additions).forEach(key => {\n this.definitions[key] = { ...(this.definitions[key] || {}),\n ...additions[key]\n };\n defineIcons(key, additions[key]); // TODO can we stop doing this? We can't get the icons by 'fa-solid' any longer so this probably needs to change\n\n const longPrefix = PREFIX_TO_LONG_STYLE[a][key];\n if (longPrefix) defineIcons(longPrefix, additions[key]);\n build();\n });\n }\n\n reset() {\n this.definitions = {};\n }\n\n _pullDefinitions(additions, definition) {\n const normalized = definition.prefix && definition.iconName && definition.icon ? {\n 0: definition\n } : definition;\n Object.keys(normalized).map(key => {\n const {\n prefix,\n iconName,\n icon\n } = normalized[key];\n const aliases = icon[2];\n if (!additions[prefix]) additions[prefix] = {};\n\n if (aliases.length > 0) {\n aliases.forEach(alias => {\n if (typeof alias === 'string') {\n additions[prefix][alias] = icon;\n }\n });\n }\n\n additions[prefix][iconName] = icon;\n });\n return additions;\n }\n\n}\n\nlet _plugins = [];\nlet _hooks = {};\nconst providers = {};\nconst defaultProviderKeys = Object.keys(providers);\nfunction registerPlugins(nextPlugins, _ref) {\n let {\n mixoutsTo: obj\n } = _ref;\n _plugins = nextPlugins;\n _hooks = {};\n Object.keys(providers).forEach(k => {\n if (defaultProviderKeys.indexOf(k) === -1) {\n delete providers[k];\n }\n });\n\n _plugins.forEach(plugin => {\n const mixout = plugin.mixout ? plugin.mixout() : {};\n Object.keys(mixout).forEach(tk => {\n if (typeof mixout[tk] === 'function') {\n obj[tk] = mixout[tk];\n }\n\n if (typeof mixout[tk] === 'object') {\n Object.keys(mixout[tk]).forEach(sk => {\n if (!obj[tk]) {\n obj[tk] = {};\n }\n\n obj[tk][sk] = mixout[tk][sk];\n });\n }\n });\n\n if (plugin.hooks) {\n const hooks = plugin.hooks();\n Object.keys(hooks).forEach(hook => {\n if (!_hooks[hook]) {\n _hooks[hook] = [];\n }\n\n _hooks[hook].push(hooks[hook]);\n });\n }\n\n if (plugin.provides) {\n plugin.provides(providers);\n }\n });\n\n return obj;\n}\nfunction chainHooks(hook, accumulator) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n const hookFns = _hooks[hook] || [];\n hookFns.forEach(hookFn => {\n accumulator = hookFn.apply(null, [accumulator, ...args]); // eslint-disable-line no-useless-call\n });\n return accumulator;\n}\nfunction callHooks(hook) {\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 const hookFns = _hooks[hook] || [];\n hookFns.forEach(hookFn => {\n hookFn.apply(null, args);\n });\n return undefined;\n}\nfunction callProvided() {\n const hook = arguments[0];\n const args = Array.prototype.slice.call(arguments, 1);\n return providers[hook] ? providers[hook].apply(null, args) : undefined;\n}\n\nfunction findIconDefinition(iconLookup) {\n if (iconLookup.prefix === 'fa') {\n iconLookup.prefix = 'fas';\n }\n\n let {\n iconName\n } = iconLookup;\n const prefix = iconLookup.prefix || getDefaultUsablePrefix();\n if (!iconName) return;\n iconName = byAlias(prefix, iconName) || iconName;\n return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);\n}\nconst library = new Library();\nconst noAuto = () => {\n config.autoReplaceSvg = false;\n config.observeMutations = false;\n callHooks('noAuto');\n};\nconst dom = {\n i2svg: function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (IS_DOM) {\n callHooks('beforeI2svg', params);\n callProvided('pseudoElements2svg', params);\n return callProvided('i2svg', params);\n } else {\n return Promise.reject(new Error('Operation requires a DOM of some kind.'));\n }\n },\n watch: function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const {\n autoReplaceSvgRoot\n } = params;\n\n if (config.autoReplaceSvg === false) {\n config.autoReplaceSvg = true;\n }\n\n config.observeMutations = true;\n domready(() => {\n autoReplace({\n autoReplaceSvgRoot\n });\n callHooks('watch', params);\n });\n }\n};\nconst parse = {\n icon: icon => {\n if (icon === null) {\n return null;\n }\n\n if (typeof icon === 'object' && icon.prefix && icon.iconName) {\n return {\n prefix: icon.prefix,\n iconName: byAlias(icon.prefix, icon.iconName) || icon.iconName\n };\n }\n\n if (Array.isArray(icon) && icon.length === 2) {\n const iconName = icon[1].indexOf('fa-') === 0 ? icon[1].slice(3) : icon[1];\n const prefix = getCanonicalPrefix(icon[0]);\n return {\n prefix,\n iconName: byAlias(prefix, iconName) || iconName\n };\n }\n\n if (typeof icon === 'string' && (icon.indexOf(\"\".concat(config.cssPrefix, \"-\")) > -1 || icon.match(ICON_SELECTION_SYNTAX_PATTERN))) {\n const canonicalIcon = getCanonicalIcon(icon.split(' '), {\n skipLookups: true\n });\n return {\n prefix: canonicalIcon.prefix || getDefaultUsablePrefix(),\n iconName: byAlias(canonicalIcon.prefix, canonicalIcon.iconName) || canonicalIcon.iconName\n };\n }\n\n if (typeof icon === 'string') {\n const prefix = getDefaultUsablePrefix();\n return {\n prefix,\n iconName: byAlias(prefix, icon) || icon\n };\n }\n }\n};\nconst api = {\n noAuto,\n config,\n dom,\n parse,\n library,\n findIconDefinition,\n toHtml\n};\n\nconst autoReplace = function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const {\n autoReplaceSvgRoot = DOCUMENT\n } = params;\n if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({\n node: autoReplaceSvgRoot\n });\n};\n\nfunction domVariants(val, abstractCreator) {\n Object.defineProperty(val, 'abstract', {\n get: abstractCreator\n });\n Object.defineProperty(val, 'html', {\n get: function () {\n return val.abstract.map(a => toHtml(a));\n }\n });\n Object.defineProperty(val, 'node', {\n get: function () {\n if (!IS_DOM) return;\n const container = DOCUMENT.createElement('div');\n container.innerHTML = val.html;\n return container.children;\n }\n });\n return val;\n}\n\nfunction asIcon (_ref) {\n let {\n children,\n main,\n mask,\n attributes,\n styles,\n transform\n } = _ref;\n\n if (transformIsMeaningful(transform) && main.found && !mask.found) {\n const {\n width,\n height\n } = main;\n const offset = {\n x: width / height / 2,\n y: 0.5\n };\n attributes['style'] = joinStyles({ ...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,\n children\n }];\n}\n\nfunction asSymbol (_ref) {\n let {\n prefix,\n iconName,\n children,\n attributes,\n symbol\n } = _ref;\n const id = symbol === true ? \"\".concat(prefix, \"-\").concat(config.cssPrefix, \"-\").concat(iconName) : symbol;\n return [{\n tag: 'svg',\n attributes: {\n style: 'display: none;'\n },\n children: [{\n tag: 'symbol',\n attributes: { ...attributes,\n id\n },\n children\n }]\n }];\n}\n\nfunction makeInlineSvgAbstract(params) {\n const {\n icons: {\n main,\n mask\n },\n prefix,\n iconName,\n transform,\n symbol,\n title,\n maskId,\n titleId,\n extra,\n watchable = false\n } = params;\n const {\n width,\n height\n } = mask.found ? mask : main;\n const isUploadedIcon = prefix === 'fak';\n const attrClass = [config.replacementClass, iconName ? \"\".concat(config.cssPrefix, \"-\").concat(iconName) : ''].filter(c => extra.classes.indexOf(c) === -1).filter(c => c !== '' || !!c).concat(extra.classes).join(' ');\n let content = {\n children: [],\n attributes: { ...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 const 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) {\n content.children.push({\n tag: 'title',\n attributes: {\n id: content.attributes['aria-labelledby'] || \"title-\".concat(titleId || nextUniqueId())\n },\n children: [title]\n });\n delete content.attributes.title;\n }\n\n const args = { ...content,\n prefix,\n iconName,\n main,\n mask,\n maskId,\n transform,\n symbol,\n styles: { ...uploadedIconWidthStyle,\n ...extra.styles\n }\n };\n const {\n children,\n attributes\n } = mask.found && main.found ? callProvided('generateAbstractMask', args) || {\n children: [],\n attributes: {}\n } : callProvided('generateAbstractIcon', args) || {\n children: [],\n 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 const {\n content,\n width,\n height,\n transform,\n title,\n extra,\n watchable = false\n } = params;\n const attributes = { ...extra.attributes,\n ...(title ? {\n 'title': title\n } : {}),\n 'class': extra.classes.join(' ')\n };\n\n if (watchable) {\n attributes[DATA_FA_I2SVG] = '';\n }\n\n const styles = { ...extra.styles\n };\n\n if (transformIsMeaningful(transform)) {\n styles['transform'] = transformForCss({\n transform,\n startCentered: true,\n width,\n height\n });\n styles['-webkit-transform'] = styles['transform'];\n }\n\n const styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n const val = [];\n val.push({\n tag: 'span',\n 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 const {\n content,\n title,\n extra\n } = params;\n const attributes = { ...extra.attributes,\n ...(title ? {\n 'title': title\n } : {}),\n 'class': extra.classes.join(' ')\n };\n const styleString = joinStyles(extra.styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n const val = [];\n val.push({\n tag: 'span',\n 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\nconst {\n styles: styles$1\n} = namespace;\nfunction asFoundIcon(icon) {\n const width = icon[0];\n const height = icon[1];\n const [vectorData] = icon.slice(4);\n let element = null;\n\n if (Array.isArray(vectorData)) {\n element = {\n tag: 'g',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.GROUP)\n },\n children: [{\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.SECONDARY),\n fill: 'currentColor',\n d: vectorData[0]\n }\n }, {\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").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,\n height,\n icon: element\n };\n}\nconst missingIconResolutionMixin = {\n found: false,\n width: 512,\n height: 512\n};\n\nfunction maybeNotifyMissing(iconName, prefix) {\n if (!PRODUCTION && !config.showMissingIcons && iconName) {\n console.error(\"Icon with name \\\"\".concat(iconName, \"\\\" and prefix \\\"\").concat(prefix, \"\\\" is missing.\"));\n }\n}\n\nfunction findIcon(iconName, prefix) {\n let givenPrefix = prefix;\n\n if (prefix === 'fa' && config.styleDefault !== null) {\n prefix = getDefaultUsablePrefix();\n }\n\n return new Promise((resolve, reject) => {\n if (givenPrefix === 'fa') {\n const shim = byOldName(iconName) || {};\n iconName = shim.iconName || iconName;\n prefix = shim.prefix || prefix;\n }\n\n if (iconName && prefix && styles$1[prefix] && styles$1[prefix][iconName]) {\n const icon = styles$1[prefix][iconName];\n return resolve(asFoundIcon(icon));\n }\n\n maybeNotifyMissing(iconName, prefix);\n resolve({ ...missingIconResolutionMixin,\n icon: config.showMissingIcons && iconName ? callProvided('missingIconAbstract') || {} : {}\n });\n });\n}\n\nconst noop$1 = () => {};\n\nconst p$2 = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {\n mark: noop$1,\n measure: noop$1\n};\nconst preamble = \"FA \\\"6.6.0\\\"\";\n\nconst begin = name => {\n p$2.mark(\"\".concat(preamble, \" \").concat(name, \" begins\"));\n return () => end(name);\n};\n\nconst end = name => {\n p$2.mark(\"\".concat(preamble, \" \").concat(name, \" ends\"));\n p$2.measure(\"\".concat(preamble, \" \").concat(name), \"\".concat(preamble, \" \").concat(name, \" begins\"), \"\".concat(preamble, \" \").concat(name, \" ends\"));\n};\n\nvar perf = {\n begin,\n end\n};\n\nconst noop$2 = () => {};\n\nfunction isWatched(node) {\n const i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;\n return typeof i2svg === 'string';\n}\n\nfunction hasPrefixAndIcon(node) {\n const prefix = node.getAttribute ? node.getAttribute(DATA_PREFIX) : null;\n const icon = node.getAttribute ? node.getAttribute(DATA_ICON) : null;\n return prefix && icon;\n}\n\nfunction hasBeenReplaced(node) {\n return node && node.classList && node.classList.contains && node.classList.contains(config.replacementClass);\n}\n\nfunction getMutator() {\n if (config.autoReplaceSvg === true) {\n return mutators.replace;\n }\n\n const mutator = mutators[config.autoReplaceSvg];\n return mutator || mutators.replace;\n}\n\nfunction createElementNS(tag) {\n return DOCUMENT.createElementNS('http://www.w3.org/2000/svg', tag);\n}\n\nfunction createElement(tag) {\n return DOCUMENT.createElement(tag);\n}\n\nfunction convertSVG(abstractObj) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n ceFn = abstractObj.tag === 'svg' ? createElementNS : createElement\n } = params;\n\n if (typeof abstractObj === 'string') {\n return DOCUMENT.createTextNode(abstractObj);\n }\n\n const tag = ceFn(abstractObj.tag);\n Object.keys(abstractObj.attributes || []).forEach(function (key) {\n tag.setAttribute(key, abstractObj.attributes[key]);\n });\n const children = abstractObj.children || [];\n children.forEach(function (child) {\n tag.appendChild(convertSVG(child, {\n ceFn\n }));\n });\n return tag;\n}\n\nfunction nodeAsComment(node) {\n let comment = \" \".concat(node.outerHTML, \" \");\n /* BEGIN.ATTRIBUTION */\n\n comment = \"\".concat(comment, \"Font Awesome fontawesome.com \");\n /* END.ATTRIBUTION */\n\n return comment;\n}\n\nconst mutators = {\n replace: function (mutation) {\n const node = mutation[0];\n\n if (node.parentNode) {\n mutation[1].forEach(abstract => {\n node.parentNode.insertBefore(convertSVG(abstract), node);\n });\n\n if (node.getAttribute(DATA_FA_I2SVG) === null && config.keepOriginalSource) {\n let comment = DOCUMENT.createComment(nodeAsComment(node));\n node.parentNode.replaceChild(comment, node);\n } else {\n node.remove();\n }\n }\n },\n nest: function (mutation) {\n const node = mutation[0];\n const 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 const forSvg = new RegExp(\"\".concat(config.cssPrefix, \"-.*\"));\n delete abstract[0].attributes.id;\n\n if (abstract[0].attributes.class) {\n const splitClasses = abstract[0].attributes.class.split(' ').reduce((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\n if (splitClasses.toNode.length === 0) {\n node.removeAttribute('class');\n } else {\n node.setAttribute('class', splitClasses.toNode.join(' '));\n }\n }\n\n const newInnerHTML = abstract.map(a => toHtml(a)).join('\\n');\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 const callbackFunction = typeof callback === 'function' ? callback : noop$2;\n\n if (mutations.length === 0) {\n callbackFunction();\n } else {\n let frame = performOperationSync;\n\n if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {\n frame = WINDOW.requestAnimationFrame || performOperationSync;\n }\n\n frame(() => {\n const mutator = getMutator();\n const mark = perf.begin('mutate');\n mutations.map(mutator);\n mark();\n callbackFunction();\n });\n }\n}\nlet disabled = false;\nfunction disableObservation() {\n disabled = true;\n}\nfunction enableObservation() {\n disabled = false;\n}\nlet mo$1 = null;\nfunction observe(options) {\n if (!MUTATION_OBSERVER) {\n return;\n }\n\n if (!config.observeMutations) {\n return;\n }\n\n const {\n treeCallback = noop$2,\n nodeCallback = noop$2,\n pseudoElementsCallback = noop$2,\n observeMutationsRoot = DOCUMENT\n } = options;\n mo$1 = new MUTATION_OBSERVER(objects => {\n if (disabled) return;\n const defaultPrefix = getDefaultUsablePrefix();\n toArray(objects).forEach(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' && hasPrefixAndIcon(mutationRecord.target)) {\n const {\n prefix,\n iconName\n } = getCanonicalIcon(classArray(mutationRecord.target));\n mutationRecord.target.setAttribute(DATA_PREFIX, prefix || defaultPrefix);\n if (iconName) mutationRecord.target.setAttribute(DATA_ICON, iconName);\n } else if (hasBeenReplaced(mutationRecord.target)) {\n nodeCallback(mutationRecord.target);\n }\n }\n });\n });\n if (!IS_DOM) return;\n mo$1.observe(observeMutationsRoot, {\n childList: true,\n attributes: true,\n characterData: true,\n subtree: true\n });\n}\nfunction disconnect() {\n if (!mo$1) return;\n mo$1.disconnect();\n}\n\nfunction styleParser (node) {\n const style = node.getAttribute('style');\n let val = [];\n\n if (style) {\n val = style.split(';').reduce((acc, style) => {\n const styles = style.split(':');\n const prop = styles[0];\n const 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 const existingPrefix = node.getAttribute('data-prefix');\n const existingIconName = node.getAttribute('data-icon');\n const innerText = node.innerText !== undefined ? node.innerText.trim() : '';\n let val = getCanonicalIcon(classArray(node));\n\n if (!val.prefix) {\n val.prefix = getDefaultUsablePrefix();\n }\n\n if (existingPrefix && existingIconName) {\n val.prefix = existingPrefix;\n val.iconName = existingIconName;\n }\n\n if (val.iconName && val.prefix) {\n return val;\n }\n\n if (val.prefix && innerText.length > 0) {\n val.iconName = byLigature(val.prefix, node.innerText) || byUnicode(val.prefix, toHex(node.innerText));\n }\n\n if (!val.iconName && config.autoFetchSvg && node.firstChild && node.firstChild.nodeType === Node.TEXT_NODE) {\n val.iconName = node.firstChild.data;\n }\n\n return val;\n}\n\nfunction attributesParser (node) {\n const extraAttributes = toArray(node.attributes).reduce((acc, attr) => {\n if (acc.name !== 'class' && acc.name !== 'style') {\n acc[attr.name] = attr.value;\n }\n\n return acc;\n }, {});\n const title = node.getAttribute('title');\n const 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 blankMeta() {\n return {\n iconName: null,\n title: null,\n titleId: null,\n prefix: null,\n transform: meaninglessTransform,\n symbol: false,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n extra: {\n classes: [],\n styles: {},\n attributes: {}\n }\n };\n}\nfunction parseMeta(node) {\n let parser = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n styleParser: true\n };\n const {\n iconName,\n prefix,\n rest: extraClasses\n } = classParser(node);\n const extraAttributes = attributesParser(node);\n const pluginMeta = chainHooks('parseNodeAttributes', {}, node);\n let extraStyles = parser.styleParser ? styleParser(node) : [];\n return {\n iconName,\n title: node.getAttribute('title'),\n titleId: node.getAttribute('data-fa-title-id'),\n prefix,\n transform: meaninglessTransform,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n symbol: false,\n extra: {\n classes: extraClasses,\n styles: extraStyles,\n attributes: extraAttributes\n },\n ...pluginMeta\n };\n}\n\nconst {\n styles: styles$2\n} = namespace;\n\nfunction generateMutation(node) {\n const nodeMeta = config.autoReplaceSvg === 'nest' ? parseMeta(node, {\n styleParser: false\n }) : parseMeta(node);\n\n if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {\n return callProvided('generateLayersText', node, nodeMeta);\n } else {\n return callProvided('generateSvgReplacementMutation', node, nodeMeta);\n }\n}\n\nlet knownPrefixes = new Set();\nFAMILIES.map(family => {\n knownPrefixes.add(\"fa-\".concat(family));\n});\nObject.keys(PREFIX_TO_STYLE[a]).map(knownPrefixes.add.bind(knownPrefixes));\nObject.keys(PREFIX_TO_STYLE[r]).map(knownPrefixes.add.bind(knownPrefixes));\nObject.keys(PREFIX_TO_STYLE[o]).map(knownPrefixes.add.bind(knownPrefixes));\nknownPrefixes = [...knownPrefixes];\n\nfunction onTree(root) {\n let callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!IS_DOM) return Promise.resolve();\n const htmlClassList = DOCUMENT.documentElement.classList;\n\n const hclAdd = suffix => htmlClassList.add(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n\n const hclRemove = suffix => htmlClassList.remove(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n\n const prefixes = config.autoFetchSvg ? knownPrefixes : FAMILIES.map(f$$1 => \"fa-\".concat(f$$1)).concat(Object.keys(styles$2));\n\n if (!prefixes.includes('fa')) {\n prefixes.push('fa');\n }\n\n const prefixesDomQuery = [\".\".concat(LAYERS_TEXT_CLASSNAME, \":not([\").concat(DATA_FA_I2SVG, \"])\")].concat(prefixes.map(p$$1 => \".\".concat(p$$1, \":not([\").concat(DATA_FA_I2SVG, \"])\"))).join(', ');\n\n if (prefixesDomQuery.length === 0) {\n return Promise.resolve();\n }\n\n let candidates = [];\n\n try {\n candidates = toArray(root.querySelectorAll(prefixesDomQuery));\n } catch (e$$1) {// noop\n }\n\n if (candidates.length > 0) {\n hclAdd('pending');\n hclRemove('complete');\n } else {\n return Promise.resolve();\n }\n\n const mark = perf.begin('onTree');\n const mutations = candidates.reduce((acc, node) => {\n try {\n const mutation = generateMutation(node);\n\n if (mutation) {\n acc.push(mutation);\n }\n } catch (e$$1) {\n if (!PRODUCTION) {\n if (e$$1.name === 'MissingIcon') {\n console.error(e$$1);\n }\n }\n }\n\n return acc;\n }, []);\n return new Promise((resolve, reject) => {\n Promise.all(mutations).then(resolvedMutations => {\n perform(resolvedMutations, () => {\n hclAdd('active');\n hclAdd('complete');\n hclRemove('pending');\n if (typeof callback === 'function') callback();\n mark();\n resolve();\n });\n }).catch(e$$1 => {\n mark();\n reject(e$$1);\n });\n });\n}\n\nfunction onNode(node) {\n let callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n generateMutation(node).then(mutation => {\n if (mutation) {\n perform([mutation], callback);\n }\n });\n}\n\nfunction resolveIcons(next) {\n return function (maybeIconDefinition) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});\n let {\n mask\n } = params;\n\n if (mask) {\n mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});\n }\n\n return next(iconDefinition, { ...params,\n mask\n });\n };\n}\n\nconst render = function (iconDefinition) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n transform = meaninglessTransform,\n symbol = false,\n mask = null,\n maskId = null,\n title = null,\n titleId = null,\n classes = [],\n attributes = {},\n styles = {}\n } = params;\n if (!iconDefinition) return;\n const {\n prefix,\n iconName,\n icon\n } = iconDefinition;\n return domVariants({\n type: 'icon',\n ...iconDefinition\n }, () => {\n callHooks('beforeDOMElementCreation', {\n iconDefinition,\n params\n });\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,\n iconName,\n transform: { ...meaninglessTransform,\n ...transform\n },\n symbol,\n title,\n maskId,\n titleId,\n extra: {\n attributes,\n styles,\n classes\n }\n });\n });\n};\nvar ReplaceElements = {\n mixout() {\n return {\n icon: resolveIcons(render)\n };\n },\n\n hooks() {\n return {\n mutationObserverCallbacks(accumulator) {\n accumulator.treeCallback = onTree;\n accumulator.nodeCallback = onNode;\n return accumulator;\n }\n\n };\n },\n\n provides(providers$$1) {\n providers$$1.i2svg = function (params) {\n const {\n node = DOCUMENT,\n callback = () => {}\n } = params;\n return onTree(node, callback);\n };\n\n providers$$1.generateSvgReplacementMutation = function (node, nodeMeta) {\n const {\n iconName,\n title,\n titleId,\n prefix,\n transform,\n symbol,\n mask,\n maskId,\n extra\n } = nodeMeta;\n return new Promise((resolve, reject) => {\n Promise.all([findIcon(iconName, prefix), mask.iconName ? findIcon(mask.iconName, mask.prefix) : Promise.resolve({\n found: false,\n width: 512,\n height: 512,\n icon: {}\n })]).then(_ref => {\n let [main, mask] = _ref;\n resolve([node, makeInlineSvgAbstract({\n icons: {\n main,\n mask\n },\n prefix,\n iconName,\n transform,\n symbol,\n maskId,\n title,\n titleId,\n extra,\n watchable: true\n })]);\n }).catch(reject);\n });\n };\n\n providers$$1.generateAbstractIcon = function (_ref2) {\n let {\n children,\n attributes,\n main,\n transform,\n styles\n } = _ref2;\n const styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n let nextChild;\n\n if (transformIsMeaningful(transform)) {\n nextChild = callProvided('generateAbstractTransformGrouping', {\n main,\n transform,\n containerWidth: main.width,\n iconWidth: main.width\n });\n }\n\n children.push(nextChild || main.icon);\n return {\n children,\n attributes\n };\n };\n }\n\n};\n\nvar Layers = {\n mixout() {\n return {\n layer(assembler) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n classes = []\n } = params;\n return domVariants({\n type: 'layer'\n }, () => {\n callHooks('beforeDOMElementCreation', {\n assembler,\n params\n });\n let children = [];\n assembler(args => {\n Array.isArray(args) ? args.map(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.cssPrefix, \"-layers\"), ...classes].join(' ')\n },\n children\n }];\n });\n }\n\n };\n }\n\n};\n\nvar LayersCounter = {\n mixout() {\n return {\n counter(content) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n title = null,\n classes = [],\n attributes = {},\n styles = {}\n } = params;\n return domVariants({\n type: 'counter',\n content\n }, () => {\n callHooks('beforeDOMElementCreation', {\n content,\n params\n });\n return makeLayersCounterAbstract({\n content: content.toString(),\n title,\n extra: {\n attributes,\n styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-counter\"), ...classes]\n }\n });\n });\n }\n\n };\n }\n\n};\n\nvar LayersText = {\n mixout() {\n return {\n text(content) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n transform = meaninglessTransform,\n title = null,\n classes = [],\n attributes = {},\n styles = {}\n } = params;\n return domVariants({\n type: 'text',\n content\n }, () => {\n callHooks('beforeDOMElementCreation', {\n content,\n params\n });\n return makeLayersTextAbstract({\n content,\n transform: { ...meaninglessTransform,\n ...transform\n },\n title,\n extra: {\n attributes,\n styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-text\"), ...classes]\n }\n });\n });\n }\n\n };\n },\n\n provides(providers$$1) {\n providers$$1.generateLayersText = function (node, nodeMeta) {\n const {\n title,\n transform,\n extra\n } = nodeMeta;\n let width = null;\n let height = null;\n\n if (IS_IE) {\n const computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);\n const 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 Promise.resolve([node, makeLayersTextAbstract({\n content: node.innerHTML,\n width,\n height,\n transform,\n title,\n extra,\n watchable: true\n })]);\n };\n }\n\n};\n\nconst CLEAN_CONTENT_PATTERN = new RegExp('\\u{22}', 'ug');\nconst SECONDARY_UNICODE_RANGE = [1105920, 1112319];\nconst _FONT_FAMILY_WEIGHT_TO_PREFIX = { ...{\n FontAwesome: {\n normal: 'fas',\n 400: 'fas'\n }\n },\n ...eo,\n ...ao,\n ...mo\n};\nconst FONT_FAMILY_WEIGHT_TO_PREFIX = Object.keys(_FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, key) => {\n acc[key.toLowerCase()] = _FONT_FAMILY_WEIGHT_TO_PREFIX[key];\n return acc;\n}, {});\nconst FONT_FAMILY_WEIGHT_FALLBACK = Object.keys(FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, fontFamily) => {\n const weights = FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamily];\n acc[fontFamily] = weights[900] || [...Object.entries(weights)][0][1];\n return acc;\n}, {});\nfunction hexValueFromContent(content) {\n const cleaned = content.replace(CLEAN_CONTENT_PATTERN, '');\n const codePoint = codePointAt(cleaned, 0);\n const isPrependTen = codePoint >= SECONDARY_UNICODE_RANGE[0] && codePoint <= SECONDARY_UNICODE_RANGE[1];\n const isDoubled = cleaned.length === 2 ? cleaned[0] === cleaned[1] : false;\n return {\n value: isDoubled ? toHex(cleaned[0]) : toHex(cleaned),\n isSecondary: isPrependTen || isDoubled\n };\n}\nfunction getPrefix(fontFamily, fontWeight) {\n const fontFamilySanitized = fontFamily.replace(/^['\"]|['\"]$/g, '').toLowerCase();\n const fontWeightInteger = parseInt(fontWeight);\n const fontWeightSanitized = isNaN(fontWeightInteger) ? 'normal' : fontWeightInteger;\n return (FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamilySanitized] || {})[fontWeightSanitized] || FONT_FAMILY_WEIGHT_FALLBACK[fontFamilySanitized];\n}\n\nfunction replaceForPosition(node, position) {\n const pendingAttribute = \"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));\n return new Promise((resolve, reject) => {\n if (node.getAttribute(pendingAttribute) !== null) {\n // This node is already being processed\n return resolve();\n }\n\n const children = toArray(node.children);\n const alreadyProcessedPseudoElement = children.filter(c => c.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position)[0];\n const styles = WINDOW.getComputedStyle(node, position);\n const fontFamily = styles.getPropertyValue('font-family');\n const fontFamilyMatch = fontFamily.match(FONT_FAMILY_PATTERN);\n const fontWeight = styles.getPropertyValue('font-weight');\n const content = styles.getPropertyValue('content');\n\n if (alreadyProcessedPseudoElement && !fontFamilyMatch) {\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 (fontFamilyMatch && content !== 'none' && content !== '') {\n const content = styles.getPropertyValue('content');\n let prefix = getPrefix(fontFamily, fontWeight);\n const {\n value: hexValue,\n isSecondary\n } = hexValueFromContent(content);\n const isV4 = fontFamilyMatch[0].startsWith('FontAwesome');\n let iconName = byUnicode(prefix, hexValue);\n let iconIdentifier = iconName;\n\n if (isV4) {\n const iconName4 = byOldUnicode(hexValue);\n\n if (iconName4.iconName && iconName4.prefix) {\n iconName = iconName4.iconName;\n prefix = iconName4.prefix;\n }\n } // 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\n if (iconName && !isSecondary && (!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 const meta = blankMeta();\n const {\n extra\n } = meta;\n extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;\n findIcon(iconName, prefix).then(main => {\n const abstract = makeInlineSvgAbstract({ ...meta,\n icons: {\n main,\n mask: emptyCanonicalIcon()\n },\n prefix,\n iconName: iconIdentifier,\n extra,\n watchable: true\n });\n const element = DOCUMENT.createElementNS('http://www.w3.org/2000/svg', '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(a => toHtml(a)).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 Promise.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 Promise((resolve, reject) => {\n const operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);\n const end = perf.begin('searchPseudoElements');\n disableObservation();\n Promise.all(operations).then(() => {\n end();\n enableObservation();\n resolve();\n }).catch(() => {\n end();\n enableObservation();\n reject();\n });\n });\n}\n\nvar PseudoElements = {\n hooks() {\n return {\n mutationObserverCallbacks(accumulator) {\n accumulator.pseudoElementsCallback = searchPseudoElements;\n return accumulator;\n }\n\n };\n },\n\n provides(providers) {\n providers.pseudoElements2svg = function (params) {\n const {\n node = DOCUMENT\n } = params;\n\n if (config.searchPseudoElements) {\n searchPseudoElements(node);\n }\n };\n }\n\n};\n\nlet _unwatched = false;\nvar MutationObserver$1 = {\n mixout() {\n return {\n dom: {\n unwatch() {\n disableObservation();\n _unwatched = true;\n }\n\n }\n };\n },\n\n hooks() {\n return {\n bootstrap() {\n observe(chainHooks('mutationObserverCallbacks', {}));\n },\n\n noAuto() {\n disconnect();\n },\n\n watch(params) {\n const {\n observeMutationsRoot\n } = params;\n\n if (_unwatched) {\n enableObservation();\n } else {\n observe(chainHooks('mutationObserverCallbacks', {\n observeMutationsRoot\n }));\n }\n }\n\n };\n }\n\n};\n\nconst parseTransformString = transformString => {\n let transform = {\n size: 16,\n x: 0,\n y: 0,\n flipX: false,\n flipY: false,\n rotate: 0\n };\n return transformString.toLowerCase().split(' ').reduce((acc, n) => {\n const parts = n.toLowerCase().split('-');\n const first = parts[0];\n let 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};\nvar PowerTransforms = {\n mixout() {\n return {\n parse: {\n transform: transformString => {\n return parseTransformString(transformString);\n }\n }\n };\n },\n\n hooks() {\n return {\n parseNodeAttributes(accumulator, node) {\n const transformString = node.getAttribute('data-fa-transform');\n\n if (transformString) {\n accumulator.transform = parseTransformString(transformString);\n }\n\n return accumulator;\n }\n\n };\n },\n\n provides(providers) {\n providers.generateAbstractTransformGrouping = function (_ref) {\n let {\n main,\n transform,\n containerWidth,\n iconWidth\n } = _ref;\n const outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n const innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n const innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n const innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n const inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n const path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n const operations = {\n outer,\n inner,\n path\n };\n return {\n tag: 'g',\n attributes: { ...operations.outer\n },\n children: [{\n tag: 'g',\n attributes: { ...operations.inner\n },\n children: [{\n tag: main.icon.tag,\n children: main.icon.children,\n attributes: { ...main.icon.attributes,\n ...operations.path\n }\n }]\n }]\n };\n };\n }\n\n};\n\nconst ALL_SPACE = {\n x: 0,\n y: 0,\n width: '100%',\n height: '100%'\n};\n\nfunction fillBlack(abstract) {\n let 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\nvar Masks = {\n hooks() {\n return {\n parseNodeAttributes(accumulator, node) {\n const maskData = node.getAttribute('data-fa-mask');\n const mask = !maskData ? emptyCanonicalIcon() : getCanonicalIcon(maskData.split(' ').map(i => i.trim()));\n\n if (!mask.prefix) {\n mask.prefix = getDefaultUsablePrefix();\n }\n\n accumulator.mask = mask;\n accumulator.maskId = node.getAttribute('data-fa-mask-id');\n return accumulator;\n }\n\n };\n },\n\n provides(providers) {\n providers.generateAbstractMask = function (_ref) {\n let {\n children,\n attributes,\n main,\n mask,\n maskId: explicitMaskId,\n transform\n } = _ref;\n const {\n width: mainWidth,\n icon: mainPath\n } = main;\n const {\n width: maskWidth,\n icon: maskPath\n } = mask;\n const trans = transformForSvg({\n transform,\n containerWidth: maskWidth,\n iconWidth: mainWidth\n });\n const maskRect = {\n tag: 'rect',\n attributes: { ...ALL_SPACE,\n fill: 'white'\n }\n };\n const maskInnerGroupChildrenMixin = mainPath.children ? {\n children: mainPath.children.map(fillBlack)\n } : {};\n const maskInnerGroup = {\n tag: 'g',\n attributes: { ...trans.inner\n },\n children: [fillBlack({\n tag: mainPath.tag,\n attributes: { ...mainPath.attributes,\n ...trans.path\n },\n ...maskInnerGroupChildrenMixin\n })]\n };\n const maskOuterGroup = {\n tag: 'g',\n attributes: { ...trans.outer\n },\n children: [maskInnerGroup]\n };\n const maskId = \"mask-\".concat(explicitMaskId || nextUniqueId());\n const clipId = \"clip-\".concat(explicitMaskId || nextUniqueId());\n const maskTag = {\n tag: 'mask',\n attributes: { ...ALL_SPACE,\n id: maskId,\n maskUnits: 'userSpaceOnUse',\n maskContentUnits: 'userSpaceOnUse'\n },\n children: [maskRect, maskOuterGroup]\n };\n const 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: {\n fill: 'currentColor',\n 'clip-path': \"url(#\".concat(clipId, \")\"),\n mask: \"url(#\".concat(maskId, \")\"),\n ...ALL_SPACE\n }\n });\n return {\n children,\n attributes\n };\n };\n }\n\n};\n\nvar MissingIconIndicator = {\n provides(providers) {\n let reduceMotion = false;\n\n if (WINDOW.matchMedia) {\n reduceMotion = WINDOW.matchMedia('(prefers-reduced-motion: reduce)').matches;\n }\n\n providers.missingIconAbstract = function () {\n const gChildren = [];\n const FILL = {\n fill: 'currentColor'\n };\n const ANIMATION_BASE = {\n attributeType: 'XML',\n repeatCount: 'indefinite',\n dur: '2s'\n }; // Ring\n\n gChildren.push({\n tag: 'path',\n attributes: { ...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 const OPACITY_ANIMATE = { ...ANIMATION_BASE,\n attributeName: 'opacity'\n };\n const dot = {\n tag: 'circle',\n attributes: { ...FILL,\n cx: '256',\n cy: '364',\n r: '28'\n },\n children: []\n };\n\n if (!reduceMotion) {\n dot.children.push({\n tag: 'animate',\n attributes: { ...ANIMATION_BASE,\n attributeName: 'r',\n values: '28;14;28;28;14;28;'\n }\n }, {\n tag: 'animate',\n attributes: { ...OPACITY_ANIMATE,\n values: '1;0;1;1;0;1;'\n }\n });\n }\n\n gChildren.push(dot);\n gChildren.push({\n tag: 'path',\n attributes: { ...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: reduceMotion ? [] : [{\n tag: 'animate',\n attributes: { ...OPACITY_ANIMATE,\n values: '1;0;0;0;0;1;'\n }\n }]\n });\n\n if (!reduceMotion) {\n // Exclamation\n gChildren.push({\n tag: 'path',\n attributes: { ...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: { ...OPACITY_ANIMATE,\n values: '0;0;1;1;0;0;'\n }\n }]\n });\n }\n\n return {\n tag: 'g',\n attributes: {\n 'class': 'missing'\n },\n children: gChildren\n };\n };\n }\n\n};\n\nvar SvgSymbols = {\n hooks() {\n return {\n parseNodeAttributes(accumulator, node) {\n const symbolData = node.getAttribute('data-fa-symbol');\n const symbol = symbolData === null ? false : symbolData === '' ? true : symbolData;\n accumulator['symbol'] = symbol;\n return accumulator;\n }\n\n };\n }\n\n};\n\nvar plugins = [InjectCSS, ReplaceElements, Layers, LayersCounter, LayersText, PseudoElements, MutationObserver$1, PowerTransforms, Masks, MissingIconIndicator, SvgSymbols];\n\nregisterPlugins(plugins, {\n mixoutsTo: api\n});\nconst noAuto$1 = api.noAuto;\nconst config$1 = api.config;\nconst library$1 = api.library;\nconst dom$1 = api.dom;\nconst parse$1 = api.parse;\nconst findIconDefinition$1 = api.findIconDefinition;\nconst toHtml$1 = api.toHtml;\nconst icon = api.icon;\nconst layer = api.layer;\nconst text = api.text;\nconst counter = api.counter;\n\nexport { noAuto$1 as noAuto, config$1 as config, library$1 as library, dom$1 as dom, parse$1 as parse, findIconDefinition$1 as findIconDefinition, toHtml$1 as toHtml, icon, layer, text, counter, api };\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': flip === true,\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 = [\"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);\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 defaultProps = {\n border: false,\n className: '',\n mask: null,\n maskId: null,\n fixedWidth: false,\n inverse: false,\n flip: false,\n icon: null,\n listItem: false,\n pull: null,\n pulse: false,\n rotation: null,\n size: null,\n spin: false,\n spinPulse: false,\n spinReverse: 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 FontAwesomeIcon = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var allProps = _objectSpread2(_objectSpread2({}, defaultProps), props);\n\n var iconArgs = allProps.icon,\n maskArgs = allProps.mask,\n symbol = allProps.symbol,\n className = allProps.className,\n title = allProps.title,\n titleId = allProps.titleId,\n maskId = allProps.maskId;\n var iconLookup = normalizeIconArgs(iconArgs);\n var classes = objectWithKey('classes', [].concat(_toConsumableArray(classList(allProps)), _toConsumableArray((className || '').split(' '))));\n var transform = objectWithKey('transform', typeof allProps.transform === 'string' ? parse.transform(allProps.transform) : allProps.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: ref\n };\n Object.keys(allProps).forEach(function (key) {\n // eslint-disable-next-line no-prototype-builtins\n if (!defaultProps.hasOwnProperty(key)) {\n extraProps[key] = allProps[key];\n }\n });\n return convertCurry(abstract[0], extraProps);\n});\nFontAwesomeIcon.displayName = 'FontAwesomeIcon';\nFontAwesomeIcon.propTypes = {\n beat: PropTypes.bool,\n border: PropTypes.bool,\n beatFade: 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([true, false, '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};\nvar convertCurry = convert.bind(null, React.createElement);\n\nexport { FontAwesomeIcon };\n","const prefix = \"fab\";\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faPixiv = {\n prefix: 'fab',\n iconName: 'pixiv',\n icon: [448, 512, [], \"e640\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm171.5 84c41 0 76.3 12.9 101.4 35.2l0 0c25.2 22.2 39.8 54.1 39.8 88.8c.1 35.3-16.6 66.3-42.4 87c-25.9 20.8-60.6 32.4-98.8 32.4c-43.5 0-83.8-16.1-83.8-16.1v51.8c7.4 2.2 19.7 7 11.9 14.8H104.8c-7.7-7.8 3.6-12.4 12.1-14.8V175.5C97.1 190.9 87 204.3 81.8 214.2c6 19.4-5.3 18.5-5.3 18.5L56 199.7s72.7-83.7 179.5-83.7zm-3.6 222.9c30 0 56-11.3 73.9-29.2c17.9-18.1 27.9-41.6 28-70.2c-.1-29.3-9.5-54.6-26.7-73.6c-17.2-18.9-42.7-31.3-75.2-31.4c-26.7-.1-59.8 9-80.2 23.7V323.1c18.6 9.3 46.8 15.9 80.2 15.8z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareJs = {\n prefix: 'fab',\n iconName: 'square-js',\n icon: [448, 512, [\"js-square\"], \"f3b9\", \"M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM180.9 444.9c-33.7 0-53.2-17.4-63.2-38.5L152 385.7c6.6 11.7 12.6 21.6 27.1 21.6c13.8 0 22.6-5.4 22.6-26.5V237.7h42.1V381.4c0 43.6-25.6 63.5-62.9 63.5zm85.8-43L301 382.1c9 14.7 20.8 25.6 41.5 25.6c17.4 0 28.6-8.7 28.6-20.8c0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5c0-31.6 24.1-55.6 61.6-55.6c26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18c-12.3 0-20.1 7.8-20.1 18c0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2c0 37.8-29.8 58.6-69.7 58.6c-39.1 0-64.4-18.6-76.7-43z\"]\n};\nconst faJsSquare = faSquareJs;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faDrupal = {\n prefix: 'fab',\n iconName: 'drupal',\n icon: [448, 512, [], \"f1a9\", \"M303.973,108.136C268.2,72.459,234.187,38.35,224.047,0c-9.957,38.35-44.25,72.459-80.019,108.136C90.467,161.7,29.716,222.356,29.716,313.436c-2.337,107.3,82.752,196.18,190.053,198.517S415.948,429.2,418.285,321.9q.091-4.231,0-8.464C418.285,222.356,357.534,161.7,303.973,108.136Zm-174.326,223a130.282,130.282,0,0,0-15.211,24.153,4.978,4.978,0,0,1-3.319,2.766h-1.659c-4.333,0-9.219-8.481-9.219-8.481h0c-1.29-2.028-2.489-4.149-3.687-6.361l-.83-1.752c-11.247-25.72-1.475-62.318-1.475-62.318h0a160.585,160.585,0,0,1,23.231-49.873A290.8,290.8,0,0,1,138.5,201.613l9.219,9.219,43.512,44.434a4.979,4.979,0,0,1,0,6.638L145.78,312.33h0Zm96.612,127.311a67.2,67.2,0,0,1-49.781-111.915c14.2-16.871,31.528-33.464,50.334-55.313,22.309,23.785,36.875,40.1,51.164,57.986a28.413,28.413,0,0,1,2.95,4.425,65.905,65.905,0,0,1,11.984,37.981,66.651,66.651,0,0,1-66.466,66.836ZM352.371,351.6h0a7.743,7.743,0,0,1-6.176,5.347H344.9a11.249,11.249,0,0,1-6.269-5.07h0a348.21,348.21,0,0,0-39.456-48.952L281.387,284.49,222.3,223.185a497.888,497.888,0,0,1-35.4-36.322,12.033,12.033,0,0,0-.922-1.382,35.4,35.4,0,0,1-4.7-9.219V174.51a31.346,31.346,0,0,1,9.218-27.656c11.432-11.431,22.955-22.954,33.833-34.939,11.984,13.275,24.8,26,37.428,38.627h0a530.991,530.991,0,0,1,69.6,79.1,147.494,147.494,0,0,1,27.011,83.8A134.109,134.109,0,0,1,352.371,351.6Z\"]\n};\nconst faJxl = {\n prefix: 'fab',\n iconName: 'jxl',\n icon: [448, 512, [], \"e67b\", \"M412.2 32H35.8C16 32 0 48 0 67.8V444.2C0 464 16 480 35.8 480H412.2c19.8 0 35.8-16 35.8-35.8V67.8C448 48 432 32 412.2 32zM378.6 333.7c0 40.2-32.6 72.8-72.8 72.8H70.2c0-40.2 32.6-72.8 72.8-72.8H378.6zm0-113.9c0 40.2-32.6 72.8-72.8 72.8H70.2c0-40.2 32.6-72.8 72.8-72.8H378.6zm0-113.9c0 40.2-32.6 72.8-72.8 72.8H70.2c0-40.2 32.6-72.8 72.8-72.8H378.6z\"]\n};\nconst faDartLang = {\n prefix: 'fab',\n iconName: 'dart-lang',\n icon: [512, 512, [], \"e693\", \"M378.6 78.9c-2.8-.1-5.6-.2-8.5-.2l-264.1 0 143.2-72C256.6 2.3 268 0 279.6 0c13.5 0 29.4 9.2 37 16.8l62 62zM107.3 96.5l262.8 0c16 0 25.4 1.4 35.4 9.3L512 212.2 512 421l-79.3 .7L107.3 96.5zM96.5 373l0-262.2L420.3 434.6l.7 77.4-212.2 0-98.1-98.2 0 0C99.4 402.5 96.5 398.5 96.5 373zM78.7 105.3l0 267.7c0 3.3 .1 6.3 .2 9.1l-62-62C6.5 309.3 0 294.3 0 279.6c0-6.8 3.9-17.5 6.7-23.6l72-150.7z\"]\n};\nconst 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};\nconst 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};\nconst faUnity = {\n prefix: 'fab',\n iconName: 'unity',\n icon: [448, 512, [], \"e049\", \"M243.583 91.6027L323.695 138.384C326.575 140.026 326.68 144.583 323.695 146.225L228.503 201.854C225.623 203.55 222.22 203.444 219.549 201.854L124.357 146.225C121.425 144.636 121.373 139.973 124.357 138.384L204.417 91.6027V0L0 119.417V358.252L78.3843 312.477V218.914C78.3319 215.576 82.2066 213.192 85.0865 214.993L180.279 270.622C183.159 272.318 184.782 275.338 184.782 278.464V389.669C184.834 393.007 180.959 395.391 178.079 393.589L97.9673 346.808L19.583 392.583L224 512L428.417 392.583L350.033 346.808L269.921 393.589C267.093 395.338 263.114 393.06 263.218 389.669V278.464C263.218 275.126 265.051 272.159 267.721 270.622L362.914 214.993C365.741 213.245 369.72 215.47 369.616 218.914V312.477L448 358.252V119.417L243.583 0V91.6027Z\"]\n};\nconst 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};\nconst 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};\nconst faVk = {\n prefix: 'fab',\n iconName: 'vk',\n icon: [448, 512, [], \"f189\", \"M31.4907 63.4907C0 94.9813 0 145.671 0 247.04V264.96C0 366.329 0 417.019 31.4907 448.509C62.9813 480 113.671 480 215.04 480H232.96C334.329 480 385.019 480 416.509 448.509C448 417.019 448 366.329 448 264.96V247.04C448 145.671 448 94.9813 416.509 63.4907C385.019 32 334.329 32 232.96 32H215.04C113.671 32 62.9813 32 31.4907 63.4907ZM75.6 168.267H126.747C128.427 253.76 166.133 289.973 196 297.44V168.267H244.16V242C273.653 238.827 304.64 205.227 315.093 168.267H363.253C359.313 187.435 351.46 205.583 340.186 221.579C328.913 237.574 314.461 251.071 297.733 261.227C316.41 270.499 332.907 283.63 346.132 299.751C359.357 315.873 369.01 334.618 374.453 354.747H321.44C316.555 337.262 306.614 321.61 292.865 309.754C279.117 297.899 262.173 290.368 244.16 288.107V354.747H238.373C136.267 354.747 78.0267 284.747 75.6 168.267Z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareReddit = {\n prefix: 'fab',\n iconName: 'square-reddit',\n icon: [448, 512, [\"reddit-square\"], \"f1a2\", \"M64 32l320 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32zM305.9 166.4c20.6 0 37.3-16.7 37.3-37.3s-16.7-37.3-37.3-37.3c-18 0-33.1 12.8-36.6 29.8c-30.2 3.2-53.8 28.8-53.8 59.9l0 .2c-32.8 1.4-62.8 10.7-86.6 25.5c-8.8-6.8-19.9-10.9-32-10.9c-28.9 0-52.3 23.4-52.3 52.3c0 21 12.3 39 30.1 47.4c1.7 60.7 67.9 109.6 149.3 109.6s147.6-48.9 149.3-109.7c17.7-8.4 29.9-26.4 29.9-47.3c0-28.9-23.4-52.3-52.3-52.3c-12 0-23 4-31.9 10.8c-24-14.9-54.3-24.2-87.5-25.4l0-.1c0-22.2 16.5-40.7 37.9-43.7l0 0c3.9 16.5 18.7 28.7 36.3 28.7zM155 248.1c14.6 0 25.8 15.4 25 34.4s-11.8 25.9-26.5 25.9s-27.5-7.7-26.6-26.7s13.5-33.5 28.1-33.5zm166.4 33.5c.9 19-12 26.7-26.6 26.7s-25.6-6.9-26.5-25.9c-.9-19 10.3-34.4 25-34.4s27.3 14.6 28.1 33.5zm-42.1 49.6c-9 21.5-30.3 36.7-55.1 36.7s-46.1-15.1-55.1-36.7c-1.1-2.6 .7-5.4 3.4-5.7c16.1-1.6 33.5-2.5 51.7-2.5s35.6 .9 51.7 2.5c2.7 .3 4.5 3.1 3.4 5.7z\"]\n};\nconst faRedditSquare = faSquareReddit;\nconst 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};\nconst 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};\nconst faSquareFontAwesome = {\n prefix: 'fab',\n iconName: 'square-font-awesome',\n icon: [448, 512, [], \"e5ad\", \"M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zm90 122c0 9.3-4.8 17.4-12.1 22l188.9 0c7.3 0 13.2 5.9 13.2 13.2c0 1.8-.4 3.7-1.1 5.4L312 264l30.9 69.4c.7 1.7 1.1 3.5 1.1 5.4c0 7.3-5.9 13.2-13.2 13.2L144 352l0 32-32 0 0-32 0-176 0-1.5c-6.1-4.8-10-12.2-10-20.5c0-14.4 11.6-26 26-26s26 11.6 26 26z\"]\n};\nconst 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};\nconst faBrave = {\n prefix: 'fab',\n iconName: 'brave',\n icon: [448, 512, [], \"e63c\", \"M145.5 0H224h78.5l44.7 50.8s39.3-10.9 57.8 7.6s33.8 34.9 33.8 34.9l-12 29.5 15.3 43.7s-44.9 170.2-50.1 191c-10.4 40.9-17.4 56.8-46.9 77.5s-82.9 56.8-91.6 62.2c-1.9 1.2-3.9 2.5-5.9 3.9c-7.5 5.1-15.8 10.8-23.5 10.8l0 0 0 0c-7.7 0-16.1-5.7-23.5-10.8c-2-1.4-4-2.8-5.9-3.9c-8.7-5.5-62.1-41.5-91.6-62.2s-36.5-36.6-46.9-77.5c-5.3-20.8-50.1-191-50.1-191l15.3-43.7L9.2 93.3s15.3-16.4 33.8-34.9s57.8-7.6 57.8-7.6L145.5 0zM224 407.6l0 0c3.7 0 8.9-4.7 13-8.4c.6-.5 1.2-1.1 1.7-1.5c4.2-3.7 47.8-37.5 51-39.8s5.4-6.5 1.9-8.7c-2.8-1.7-10-5.5-20.3-10.8c-3-1.6-6.3-3.2-9.7-5c-15.4-8-34.5-14.7-37.5-14.7l0 0 0 0c-3 0-22.1 6.8-37.5 14.7c-3.5 1.8-6.7 3.5-9.7 5c-10.3 5.3-17.6 9.1-20.3 10.8c-3.6 2.2-1.4 6.4 1.9 8.7s46.8 36.1 51 39.8c.5 .5 1.1 1 1.7 1.5c4.1 3.7 9.3 8.4 13 8.4l0 0zm0-165.7l0 0c4.7 0 17.6-3 26.4-5l0 0 2-.5c7.8-1.8 7.3-6.3 6.4-13c-.1-.8-.2-1.6-.3-2.4c-.6-6.1-5.8-33.1-9.1-50.3c-1.1-5.8-2-10.5-2.4-12.9c-1.5-8.1-.6-9.4 .7-11.3c.2-.3 .5-.7 .7-1.1c1.4-2.3 16-6.2 27.9-9.5l0 0c2.5-.7 4.8-1.3 6.9-1.9c10.6-3 32.4-.6 44.2 .6c1.8 .2 3.4 .4 4.7 .5c9.6 .9 10.4 2.3 7.2 3.8c-2.3 1.1-16.2 6.3-28.7 10.9l0 0 0 0c-4.7 1.8-9.2 3.5-12.8 4.8c-1.5 .5-3 1.1-4.5 1.7c-12.5 4.6-27.2 10-28.9 19.4c-1.5 8.3 5.2 19.9 11.3 30.3l0 0c1.6 2.8 3.2 5.5 4.6 8.1c6.3 11.9 6.5 13.3 6.1 18.1c-.4 3.9-14.5 12.7-22.4 17.6l0 0c-1.8 1.1-3.3 2.1-4.2 2.7c-.8 .5-2.1 1.4-3.8 2.4c-8.6 5.2-26.3 16-26.3 22.5c0 7.8 24.6 28.1 32.4 33.2s28.9 16.1 37.9 17.8s23-8.5 31.2-23.8c7.7-14.4 1.7-28.5-3.2-40l-.9-2.2c-4.5-10.6 1.9-17 6.2-21.3l0 0c.5-.5 1-1 1.4-1.4L377.7 194c1.3-1.3 2.5-2.6 3.7-3.8l0 0c5.8-5.7 10.8-10.5 10.8-22.8c0-14.9-57.5-84.5-57.5-84.5s-48.5 9.3-55.1 9.3c-5.2 0-15.3-3.5-25.8-7.1l0 0c-2.7-.9-5.4-1.9-8-2.7C232.8 78.1 224 78 224 78l0 0 0 0s-8.7 0-21.8 4.4c-2.7 .9-5.4 1.8-8 2.7l0 0c-10.5 3.6-20.6 7.1-25.8 7.1c-6.5 0-55.1-9.3-55.1-9.3s-57.5 69.6-57.5 84.5c0 12.3 4.9 17.1 10.8 22.8l0 0c1.2 1.2 2.5 2.4 3.7 3.8l43.1 45.8c.4 .5 .9 .9 1.4 1.4l0 0c4.3 4.3 10.6 10.7 6.2 21.3l-.9 2.2c-4.9 11.5-11 25.6-3.2 40c8.2 15.3 22.2 25.5 31.2 23.8s30.1-12.7 37.9-17.8s32.4-25.4 32.4-33.2c0-6.5-17.7-17.3-26.3-22.5c-1.7-1-3.1-1.9-3.8-2.4c-.9-.6-2.4-1.5-4.2-2.7c-7.9-4.9-22-13.7-22.4-17.6c-.4-4.8-.3-6.2 6.1-18.1c1.3-2.5 2.9-5.3 4.6-8.1c6-10.4 12.8-22 11.3-30.3c-1.7-9.4-16.4-14.8-28.9-19.4c-1.6-.6-3.1-1.1-4.5-1.7c-3.6-1.4-8.1-3.1-12.8-4.8l-.1 0c-12.5-4.7-26.4-9.9-28.7-10.9c-3.2-1.5-2.3-2.8 7.2-3.8c1.3-.1 2.9-.3 4.7-.5c11.8-1.3 33.6-3.6 44.2-.6c2.1 .6 4.4 1.2 6.9 1.9c11.9 3.2 26.5 7.2 27.9 9.5c.2 .4 .5 .7 .7 1.1c1.3 1.9 2.2 3.2 .7 11.3c-.4 2.4-1.3 7.1-2.4 12.9c-3.3 17.2-8.5 44.2-9.1 50.3c-.1 .8-.2 1.7-.3 2.4c-.8 6.7-1.4 11.2 6.4 13l2 .5 0 0c8.8 2 21.8 5 26.4 5l0 0z\"]\n};\nconst 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};\nconst faSquareInstagram = {\n prefix: 'fab',\n iconName: 'square-instagram',\n icon: [448, 512, [\"instagram-square\"], \"e055\", \"M194.4 211.7a53.3 53.3 0 1 0 59.3 88.7 53.3 53.3 0 1 0 -59.3-88.7zm142.3-68.4c-5.2-5.2-11.5-9.3-18.4-12c-18.1-7.1-57.6-6.8-83.1-6.5c-4.1 0-7.9 .1-11.2 .1c-3.3 0-7.2 0-11.4-.1c-25.5-.3-64.8-.7-82.9 6.5c-6.9 2.7-13.1 6.8-18.4 12s-9.3 11.5-12 18.4c-7.1 18.1-6.7 57.7-6.5 83.2c0 4.1 .1 7.9 .1 11.1s0 7-.1 11.1c-.2 25.5-.6 65.1 6.5 83.2c2.7 6.9 6.8 13.1 12 18.4s11.5 9.3 18.4 12c18.1 7.1 57.6 6.8 83.1 6.5c4.1 0 7.9-.1 11.2-.1c3.3 0 7.2 0 11.4 .1c25.5 .3 64.8 .7 82.9-6.5c6.9-2.7 13.1-6.8 18.4-12s9.3-11.5 12-18.4c7.2-18 6.8-57.4 6.5-83c0-4.2-.1-8.1-.1-11.4s0-7.1 .1-11.4c.3-25.5 .7-64.9-6.5-83l0 0c-2.7-6.9-6.8-13.1-12-18.4zm-67.1 44.5A82 82 0 1 1 178.4 324.2a82 82 0 1 1 91.1-136.4zm29.2-1.3c-3.1-2.1-5.6-5.1-7.1-8.6s-1.8-7.3-1.1-11.1s2.6-7.1 5.2-9.8s6.1-4.5 9.8-5.2s7.6-.4 11.1 1.1s6.5 3.9 8.6 7s3.2 6.8 3.2 10.6c0 2.5-.5 5-1.4 7.3s-2.4 4.4-4.1 6.2s-3.9 3.2-6.2 4.2s-4.8 1.5-7.3 1.5l0 0c-3.8 0-7.5-1.1-10.6-3.2zM448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM357 389c-18.7 18.7-41.4 24.6-67 25.9c-26.4 1.5-105.6 1.5-132 0c-25.6-1.3-48.3-7.2-67-25.9s-24.6-41.4-25.8-67c-1.5-26.4-1.5-105.6 0-132c1.3-25.6 7.1-48.3 25.8-67s41.5-24.6 67-25.8c26.4-1.5 105.6-1.5 132 0c25.6 1.3 48.3 7.1 67 25.8s24.6 41.4 25.8 67c1.5 26.3 1.5 105.4 0 131.9c-1.3 25.6-7.1 48.3-25.8 67z\"]\n};\nconst faInstagramSquare = faSquareInstagram;\nconst 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};\nconst 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};\nconst faSquareHackerNews = {\n prefix: 'fab',\n iconName: 'square-hacker-news',\n icon: [448, 512, [\"hacker-news-square\"], \"f3af\", \"M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM21 229.2c0 0 .1-.1 .1-.2s.1-.2 .2-.2c0 .1 0 .3-.1 .4H21zM239.2 384H207.8V281.3L128 128h37.3c41.5 77.7 48.1 95.8 54.1 112c1.6 4.3 3.1 8.5 5.2 13.6c3.2-7 5.1-11.9 7.1-17.3c5.9-15.3 12.8-33.2 53.5-108.3H320L239.2 283.1V384z\"]\n};\nconst faHackerNewsSquare = faSquareHackerNews;\nconst faEdge = {\n prefix: 'fab',\n iconName: 'edge',\n icon: [512, 512, [], \"f282\", \"M120.1 37.44C161.1 12.23 207.7-.7753 255 .0016C423 .0016 512 123.8 512 219.5C511.9 252.2 499 283.4 476.1 306.7C453.2 329.9 422.1 343.2 389.4 343.7C314.2 343.7 297.9 320.6 297.9 311.7C297.9 307.9 299.1 305.5 302.7 302.3L303.7 301.1L304.1 299.5C314.6 288 320 273.3 320 257.9C320 179.2 237.8 115.2 136 115.2C98.46 114.9 61.46 124.1 28.48 142.1C55.48 84.58 111.2 44.5 119.8 38.28C120.6 37.73 120.1 37.44 120.1 37.44V37.44zM135.7 355.5C134.3 385.5 140.3 415.5 152.1 442.7C165.7 469.1 184.8 493.7 208.6 512C149.1 500.5 97.11 468.1 59.2 422.7C21.12 376.3 0 318.4 0 257.9C0 206.7 62.4 163.5 136 163.5C172.6 162.9 208.4 174.4 237.8 196.2L234.2 197.4C182.7 215 135.7 288.1 135.7 355.5V355.5zM469.8 400L469.1 400.1C457.3 418.9 443.2 435.2 426.9 449.6C396.1 477.6 358.8 495.1 318.1 499.5C299.5 499.8 281.3 496.3 264.3 488.1C238.7 477.8 217.2 458.1 202.7 435.1C188.3 411.2 181.6 383.4 183.7 355.5C183.1 335.4 189.1 315.2 198.7 297.3C212.6 330.4 236.2 358.6 266.3 378.1C296.4 397.6 331.8 407.6 367.7 406.7C398.7 407 429.8 400 457.9 386.2L459.8 385.3C463.7 383 467.5 381.4 471.4 385.3C475.9 390.2 473.2 394.5 470.2 399.3C470 399.5 469.9 399.8 469.8 400V400z\"]\n};\nconst faThreads = {\n prefix: 'fab',\n iconName: 'threads',\n icon: [448, 512, [], \"e618\", \"M331.5 235.7c2.2 .9 4.2 1.9 6.3 2.8c29.2 14.1 50.6 35.2 61.8 61.4c15.7 36.5 17.2 95.8-30.3 143.2c-36.2 36.2-80.3 52.5-142.6 53h-.3c-70.2-.5-124.1-24.1-160.4-70.2c-32.3-41-48.9-98.1-49.5-169.6V256v-.2C17 184.3 33.6 127.2 65.9 86.2C102.2 40.1 156.2 16.5 226.4 16h.3c70.3 .5 124.9 24 162.3 69.9c18.4 22.7 32 50 40.6 81.7l-40.4 10.8c-7.1-25.8-17.8-47.8-32.2-65.4c-29.2-35.8-73-54.2-130.5-54.6c-57 .5-100.1 18.8-128.2 54.4C72.1 146.1 58.5 194.3 58 256c.5 61.7 14.1 109.9 40.3 143.3c28 35.6 71.2 53.9 128.2 54.4c51.4-.4 85.4-12.6 113.7-40.9c32.3-32.2 31.7-71.8 21.4-95.9c-6.1-14.2-17.1-26-31.9-34.9c-3.7 26.9-11.8 48.3-24.7 64.8c-17.1 21.8-41.4 33.6-72.7 35.3c-23.6 1.3-46.3-4.4-63.9-16c-20.8-13.8-33-34.8-34.3-59.3c-2.5-48.3 35.7-83 95.2-86.4c21.1-1.2 40.9-.3 59.2 2.8c-2.4-14.8-7.3-26.6-14.6-35.2c-10-11.7-25.6-17.7-46.2-17.8H227c-16.6 0-39 4.6-53.3 26.3l-34.4-23.6c19.2-29.1 50.3-45.1 87.8-45.1h.8c62.6 .4 99.9 39.5 103.7 107.7l-.2 .2zm-156 68.8c1.3 25.1 28.4 36.8 54.6 35.3c25.6-1.4 54.6-11.4 59.5-73.2c-13.2-2.9-27.8-4.4-43.4-4.4c-4.8 0-9.6 .1-14.4 .4c-42.9 2.4-57.2 23.2-56.2 41.8l-.1 .1z\"]\n};\nconst 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};\nconst faSquareSnapchat = {\n prefix: 'fab',\n iconName: 'square-snapchat',\n icon: [448, 512, [\"snapchat-square\"], \"f2ad\", \"M384,32H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H384a64,64,0,0,0,64-64V96A64,64,0,0,0,384,32Zm-3.907,319.309-.083.1a32.364,32.364,0,0,1-8.717,6.823,90.26,90.26,0,0,1-20.586,8.2,12.694,12.694,0,0,0-3.852,1.76c-2.158,1.909-2.1,4.64-4.4,8.55a23.137,23.137,0,0,1-6.84,7.471c-6.707,4.632-14.244,4.923-22.23,5.23-7.214.274-15.39.581-24.729,3.669-3.761,1.245-7.753,3.694-12.377,6.533-11.265,6.9-26.68,16.353-52.3,16.353s-40.925-9.4-52.106-16.279c-4.657-2.888-8.675-5.362-12.543-6.64-9.339-3.08-17.516-3.4-24.729-3.67-7.986-.307-15.523-.6-22.231-5.229a23.085,23.085,0,0,1-6.01-6.11c-3.2-4.632-2.855-7.8-5.254-9.895a13.428,13.428,0,0,0-4.1-1.834,89.986,89.986,0,0,1-20.313-8.127,32.905,32.905,0,0,1-8.3-6.284c-6.583-6.757-8.276-14.776-5.686-21.824,3.436-9.338,11.571-12.111,19.4-16.262,14.776-8.027,26.348-18.055,34.433-29.884a68.236,68.236,0,0,0,5.985-10.567c.789-2.158.772-3.329.241-4.416a7.386,7.386,0,0,0-2.208-2.217c-2.532-1.676-5.113-3.353-6.882-4.5-3.27-2.141-5.868-3.818-7.529-4.98-6.267-4.383-10.65-9.04-13.4-14.245a28.4,28.4,0,0,1-1.369-23.584c4.134-10.924,14.469-17.706,26.978-17.706a37.141,37.141,0,0,1,7.845.83c.689.15,1.37.307,2.042.482-.108-7.43.058-15.357.722-23.119,2.358-27.261,11.912-41.589,21.874-52.994a86.836,86.836,0,0,1,22.28-17.931C188.254,100.383,205.312,96,224,96s35.828,4.383,50.944,13.016a87.169,87.169,0,0,1,22.239,17.9c9.961,11.406,19.516,25.709,21.874,52.995a231.194,231.194,0,0,1,.713,23.118c.673-.174,1.362-.332,2.051-.481a37.131,37.131,0,0,1,7.844-.83c12.5,0,22.82,6.782,26.971,17.706a28.37,28.37,0,0,1-1.4,23.559c-2.74,5.2-7.123,9.861-13.39,14.244-1.668,1.187-4.258,2.864-7.529,4.981-1.835,1.187-4.541,2.947-7.164,4.682a6.856,6.856,0,0,0-1.951,2.034c-.506,1.046-.539,2.191.166,4.208a69.015,69.015,0,0,0,6.085,10.792c8.268,12.1,20.188,22.313,35.454,30.407,1.486.772,2.98,1.5,4.441,2.258.722.332,1.569.763,2.491,1.3,4.9,2.723,9.2,6.01,11.455,12.153C387.821,336.915,386.269,344.7,380.093,351.309Zm-16.719-18.461c-50.313-24.314-58.332-61.918-58.689-64.749-.431-3.379-.921-6.035,2.806-9.472,3.594-3.328,19.541-13.19,23.965-16.278,7.33-5.114,10.534-10.219,8.16-16.495-1.66-4.316-5.686-5.976-9.961-5.976a18.5,18.5,0,0,0-3.993.448c-8.035,1.743-15.838,5.769-20.354,6.857a7.1,7.1,0,0,1-1.66.224c-2.408,0-3.279-1.071-3.088-3.968.564-8.783,1.759-25.925.373-41.937-1.884-22.032-8.99-32.948-17.432-42.6-4.051-4.624-23.135-24.654-59.536-24.654S168.53,134.359,164.479,139c-8.434,9.654-15.531,20.57-17.432,42.6-1.386,16.013-.141,33.147.373,41.937.166,2.756-.68,3.968-3.088,3.968a7.1,7.1,0,0,1-1.66-.224c-4.507-1.087-12.31-5.113-20.346-6.856a18.494,18.494,0,0,0-3.993-.449c-4.25,0-8.3,1.636-9.961,5.977-2.374,6.276.847,11.381,8.168,16.494,4.425,3.088,20.371,12.958,23.966,16.279,3.719,3.437,3.237,6.093,2.805,9.471-.356,2.79-8.384,40.394-58.689,64.749-2.946,1.428-7.96,4.45.88,9.331,13.88,7.628,23.111,6.807,30.3,11.43,6.093,3.927,2.5,12.394,6.923,15.449,5.454,3.76,21.583-.266,42.335,6.6,17.433,5.744,28.116,22.015,58.963,22.015s41.788-16.3,58.938-21.973c20.795-6.865,36.89-2.839,42.336-6.6,4.433-3.055.822-11.522,6.923-15.448,7.181-4.624,16.411-3.8,30.3-11.472C371.36,337.355,366.346,334.333,363.374,332.848Z\"]\n};\nconst faSnapchatSquare = faSquareSnapchat;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faAlgolia = {\n prefix: 'fab',\n iconName: 'algolia',\n icon: [512, 512, [], \"f36c\", \"M256 0C116.1 0 2 112.7 0 252.1C-2 393.6 112.9 510.8 254.5 511.6c43.7 .3 85.9-10.4 123.3-30.7c3.6-2 4.2-7 1.1-9.7l-24-21.2c-4.9-4.3-11.8-5.5-17.8-3c-26.1 11.1-54.5 16.8-83.7 16.4C139 461.9 46.5 366.8 48.3 252.4C50.1 139.5 142.6 48.2 256 48.2H463.7V417.2L345.9 312.5c-3.8-3.4-9.7-2.7-12.7 1.3c-18.9 25-49.7 40.6-83.9 38.2c-47.5-3.3-85.9-41.5-89.5-88.9c-4.2-56.6 40.6-103.9 96.3-103.9c50.4 0 91.9 38.8 96.2 88c.4 4.4 2.4 8.5 5.7 11.4l30.7 27.2c3.5 3.1 9 1.2 9.9-3.4c2.2-11.8 3-24.2 2.1-36.8c-4.9-72-63.3-130-135.4-134.4c-82.7-5.1-151.8 59.5-154 140.6c-2.1 78.9 62.6 147 141.6 148.7c33 .7 63.6-9.6 88.3-27.6L495 509.4c6.6 5.8 17 1.2 17-7.7V9.7c0-5.4-4.4-9.7-9.7-9.7H256z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareFontAwesomeStroke = {\n prefix: 'fab',\n iconName: 'square-font-awesome-stroke',\n icon: [448, 512, [\"font-awesome-alt\"], \"f35c\", \"M64 64C46.3 64 32 78.3 32 96l0 320c0 17.7 14.3 32 32 32l320 0c17.7 0 32-14.3 32-32l0-320c0-17.7-14.3-32-32-32L64 64zM0 96C0 60.7 28.7 32 64 32l320 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zm154 58c0 9.3-4.8 17.4-12.1 22l188.9 0c7.3 0 13.2 5.9 13.2 13.2c0 1.8-.4 3.7-1.1 5.4L312 264l30.9 69.4c.8 1.7 1.1 3.5 1.1 5.4c0 7.3-5.9 13.2-13.2 13.2L144 352l0 32-32 0 0-32 0-176 0-1.5c-6.1-4.8-10-12.2-10-20.5c0-14.4 11.6-26 26-26s26 11.6 26 26z\"]\n};\nconst faFontAwesomeAlt = faSquareFontAwesomeStroke;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareViadeo = {\n prefix: 'fab',\n iconName: 'square-viadeo',\n icon: [448, 512, [\"viadeo-square\"], \"f2aa\", \"M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM118.3 381.2c-68-73.6-19.8-196.1 81.2-196.1c13.3 0 26.6 2.1 39.1 6.7c-4.3 8.4-7.3 17.6-8.4 27.1c-9.7-4.1-20.2-6-30.7-6c-48.8 0-84.6 41.7-84.6 88.9c0 43 28.5 78.7 69.5 85.9c61.5-24 72.9-117.6 72.9-175v0c0-7.3 0-14.8-.6-22.1c-11.2-32.9-26.6-64.6-44.2-94.5c27.1 18.3 41.9 62.5 44.2 94.1v.4c7.7 22.5 11.8 46.2 11.8 70c0 54.1-21.9 99-68.3 128.2l-2.4 .2c50 1 86.2-38.6 86.2-87.2c0-12.2-2.1-24.3-6.9-35.7c9.5-1.9 18.5-5.6 26.4-10.5c15.3 36.6 12.6 87.3-22.8 125.6c-42.4 46.2-120 46.6-162.4 0zM274.6 217.6c21.9-12 49.6-30.7 62.3-53c1.5-3 4.1-8.6 4.5-12c-12.5 27.9-44.2 49.8-73.9 56.7c-4.7-7.3-7.5-15.5-7.5-24.3c0-10.3 5.2-24.1 12.9-31.6c8.3-7.9 18-10.9 27.9-14.1c16-5.1 32.5-10.3 44.5-35.9c32.5 46.2 13.1 130.3-36.3 130.3c-13.3 0-25.1-7.1-34.4-16.1z\"]\n};\nconst faViadeoSquare = faSquareViadeo;\nconst 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};\nconst 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};\nconst 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};\nconst faCloudsmith = {\n prefix: 'fab',\n iconName: 'cloudsmith',\n icon: [512, 512, [], \"f384\", \"M512 227.6v56.9L284.4 512H227.6L0 284.4V227.6L227.6 0h56.9L512 227.6zm-256 162a133.6 133.6 0 1 0 0-267.1 133.6 133.6 0 1 0 0 267.1z\"]\n};\nconst faOpensuse = {\n prefix: 'fab',\n iconName: 'opensuse',\n icon: [640, 512, [], \"e62b\", \"M471.1 102.7s-.3 18.3-.3 20.3c-9.1-3-74.4-24.1-135.7-26.3c-51.9-1.8-122.8-4.3-223 57.3c-19.4 12.4-73.9 46.1-99.6 109.7C7 277-.1 307 7 335.1c3.3 12.8 8.9 24.9 16.5 35.7c17.4 25 46.6 41.6 78.1 44.4c44.4 3.9 78.1-16 90-53.3c8.2-25.8 0-63.6-31.5-82.9c-25.6-15.7-53.3-12.1-69.2-1.6c-13.9 9.2-21.8 23.5-21.6 39.2c.3 27.8 24.3 42.6 41.5 42.6c5.4 0 10.7-.9 15.8-2.7c6.5-1.8 13.3-6.5 13.3-14.9c0-12.1-11.6-14.8-16.8-13.9c-2.9 .5-4.5 2-11.8 2.4c-2-.2-12-3.1-12-14V316c.2-12.3 13.2-18 25.5-16.9c32.3 2.8 47.7 40.7 28.5 65.7C135 388.5 76.7 388 53.6 344.4c-26-49.2 12.7-111.2 87-98.4c33.2 5.7 83.6 35.5 102.4 104.3h45.9c-5.7-17.6-8.9-68.3 42.7-68.3c56.7 0 63.9 39.9 79.8 68.3H460c-12.8-18.3-21.7-38.7-18.9-55.8c5.6-33.8 39.7-18.4 82.4-17.4c66.5 .4 102.1-27 103.1-28c3.7-3.1 6.5-15.8 7-17.7c1.3-5.1-3.2-2.4-3.2-2.4c-8.7 5.2-30.5 15.2-50.9 15.6c-25.3 .5-76.2-25.4-81.6-28.2c-.3-.4 .1 1.2-11-25.5c88.4 58.3 118.3 40.5 145.2 21.7c.8-.6 4.3-2.9 3.6-5.7c-13.8-48.1-22.4-62.7-34.5-69.6c-37-21.6-125-34.7-129.2-35.3c.1-.1-.9-.3-.9 .7l0 0zm135.6 75.4a37.6 37.6 0 1 1 -75.2-2.6 37.6 37.6 0 1 1 75.2 2.6zm-36.6-27.9a26.3 26.3 0 1 0 -1.7 52.5 26.3 26.3 0 1 0 1.7-52.5zm4.3 28.8c-15.4 0-15.4-15.6 0-15.6s15.4 15.6 0 15.6v0z\"]\n};\nconst 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};\nconst faSquareDribbble = {\n prefix: 'fab',\n iconName: 'square-dribbble',\n icon: [448, 512, [\"dribbble-square\"], \"f397\", \"M165.9 132.5c-38.3 18-66.8 53.3-75.7 95.7c6.1 .1 62.4 .3 126.4-16.7c-22.7-40.2-47.1-74.1-50.7-79zm26.1-9.1c3.8 5.1 28.6 38.9 51 80c48.6-18.3 69.1-45.9 71.6-49.4C281 124.2 235.3 112.9 192 123.4zM277.4 382c-2-12-10-53.8-29.2-103.6c-55.1 18.8-93.8 56.4-108.1 85.6c40.5 31.6 93.3 36.7 137.3 18zM227.8 232.6C159.6 253 93.4 252.2 87.4 252c0 .7 0 1.4 0 2.1s0 1.4 0 2.1c0 35.1 13.3 67.1 35.1 91.4c22.2-37.9 67.1-77.9 116.5-91.8c-3.4-7.8-7.2-15.5-11.1-23.2zm72.5 136.9c30.7-20.7 52.5-53.6 58.6-91.6c-4.6-1.5-42.3-12.7-85.1-5.8c17.9 49.1 25.1 89.1 26.5 97.4zm-34.8-119c45.5-5.7 90.7 3.4 95.2 4.4c-.3-32.3-11.8-61.9-30.9-85.1c-2.9 3.9-25.8 33.2-76.3 53.9c4.8 9.8 8.3 17.8 12 26.8zM384 32H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64zM224 416a160 160 0 1 1 0-320 160 160 0 1 1 0 320z\"]\n};\nconst faDribbbleSquare = faSquareDribbble;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faDebian = {\n prefix: 'fab',\n iconName: 'debian',\n icon: [448, 512, [], \"e60b\", \"M380.2 245.6c3-7.6 5.5-14 5.2-24.4l-4.3 9c4.4-13.2 4-27.1 3.6-40.4c-.2-6-.3-11.8 0-17.4l-1.8-.5c-1.5-45.2-40.6-93.1-75.3-109.4c-30-13.8-76.1-16.2-97.3-5.8c1.3-1.1 4.2-2 6.8-2.7l.3-.1c3.3-1 6-1.7 4-2.9c-19.2 1.9-24.9 5.5-31.1 9.4l-.1 0c-4.6 2.9-9.5 6-20.3 8.7c-3.5 3.4 1.7 2 5.8 .9l0 0c4.1-1.1 7.2-1.9-.1 2.4c-3.5 1-6.6 1.3-9.6 1.6l-.1 0c-8.3 .8-15.8 1.6-30.7 17c.8 1.3 3.4-.2 5.3-1.3l.1-.1c2.3-1.4 3.4-2-1.7 4.4c-19.1-2.4-60.3 43.7-69.1 59l4.6 .8c-3.2 8-6.8 14.8-10 20.8c-4.3 8.1-7.9 14.9-8.7 21.3c-.3 5.1-1 11-1.7 17.3l0 0c-.1 1-.2 2-.3 3l-.1 .6c-3 27.3-6.7 60.8 3.9 73l-1.3 13c.6 1.2 1.1 2.3 1.6 3.5c.2 .4 .4 .8 .5 1.1l0 0 0 0 0 0 0 0 0 0 0 0 0 0c1 2.1 2 4.2 3.3 6.2l-3 .2c7 22.1 10.8 22.5 15.1 22.9l0 0c4.4 .4 9.3 .9 18.7 24.2c-2.7-.9-5.5-1.9-9.4-7.2c-.5 4.1 5.8 16.3 13.1 25.8l-3.1 3.6c2.1 3.7 4.8 6.2 7.6 8.8l0 0 0 0c1 .9 2.1 1.9 3.1 2.9c-11.9-6.5 3.2 13.7 11.9 25.2c.8 1.1 1.5 2 2.2 2.9l0 0 0 0 0 0 0 0 0 0c1.4 1.9 2.5 3.4 2.9 4.1l2.4-4.2c-.3 6.1 4.3 13.9 13.1 24.7l7.3-.3c3 6 14 16.7 20.7 17.2l-4.4 5.8c8.1 2.6 10.3 4.3 12.7 6.2c2.6 2.1 5.4 4.3 16.1 8.1l-4.2-7.4c3.5 3 6.2 5.9 8.8 8.7l.1 .1c5.2 5.6 9.9 10.6 19.7 15.3c10.7 3.7 16.6 4.7 22.7 5.8c.3 0 .6 .1 .9 .1c5.4 .8 11.2 1.8 20.8 4.5c-1.1-.1-2.2-.1-3.3-.1h0c-2.3-.1-4.7-.1-7-.1l0 0 0 0 0 0 0 0 0 0 0 0 0 0c-14.4-.2-29.2-.4-42.7-5.2C107.8 480.5 19.5 367.2 26 250.6c-.6-9.9-.3-20.9 0-30.7c.4-13.5 .7-24.8-1.6-28.3l1-3.1c5.3-17.4 11.7-38.2 23.8-62.8l-.1-.2v-.1c.4 .4 3.4 3.4 8.8-5.8c.8-1.8 1.6-3.7 2.4-5.6c.5-1.1 .9-2.2 1.4-3.2c2.5-6.1 5.1-12.3 8.4-17.9l2.6-.6c1.7-10.1 17-23.8 29.8-35.2l1.1-1c5.7-5.1 10.7-9.7 13.6-13.1l.7 4.4c17-15.9 44.6-27.5 65.6-36.4l.5-.2c4.8-2 9.3-3.9 13.3-5.7c-3.4 3.8 2.2 2.7 10 1c4.8-1 10.4-2.1 15.3-2.4l-3.9 2.1c-2.7 1.4-5.4 2.8-8 4.6c8.1-2 11.7-1.4 15.7-.8l.3 0c3.5 .6 7.3 1.2 14.6 .2c-5.6 .8-12.3 3-11.2 3.8c7.9 .9 12.8-.1 17.2-1l.2 0c5.5-1.1 10.3-2 19.3 .9l-1-4.8c7.3 2.6 12.7 4.3 17.5 5.8l.5 .1c10 3 17.6 5.3 34.2 14.1c3.2 .2 5.3-.5 7.4-1.2l.1 0c3.6-1.1 7-2.1 15.2 1.2c.3 .5 .5 1 .7 1.4c.1 .2 .2 .5 .3 .7l0 .1c1 2.6 1.8 4.6 14.6 12.1c1.7-.7-2.7-4.7-6.4-8.2c0 0 0 0-.1-.1c-.2-.1-.3-.3-.5-.4c32.2 17.3 67.3 54.1 78 93.5c-6-11.1-5.2-5.5-4.3 .5c.6 4 1.2 8.1-.2 7.5c4.5 12.1 8.1 24.5 10.4 37.4l-.8-2.9-.1-.3c-3.3-11.9-9.6-34.3-19.9-49.3c-.4 4.3-2.8 3.9-5.2 3.5l-.1 0 0 0c-3.3-.6-6.2-1.1-1.9 12.6c2.6 3.8 3.1 2.4 3.5 1.1l0 0c.5-1.5 .9-2.7 4.7 5.2c.1 4.1 1 8.2 2.1 12.7l0 0 0 0 .1 .6c.1 .3 .1 .5 .2 .8l.1 .6c.6 2.6 1.3 5.4 1.8 8.4c-1.1-.2-2.3-2.2-3.4-4.2c-1.4-2.4-2.8-4.7-3.7-3.2c2.4 11.5 6.5 17.4 8 18.3c-.3 .6-.6 .7-1.1 .7c-.8 0-1.8 .1-1.9 5.3c.7 13.7 3.3 12.5 5.3 11.6l0 0c.6-.3 1.2-.6 1.7-.4c-.6 2.5-1.6 5.1-2.7 7.9c-2.8 7.1-6 15.4-3.4 26.1c-.8-3-2-6-3.1-8.9l-.1-.4c-.2-.5-.4-1-.6-1.5l0 0c-.3-.8-.6-1.6-.9-2.3c-.6 4.4-.3 7.7-.1 10.6c0 .2 0 .5 0 .7c.4 5.3 .7 10-3 19.9c4.3-14.2 3.8-26.9-.2-20.8c1 10.9-3.7 20.4-8 28.9l-.1 .2c-3.6 7.1-6.8 13.5-5.9 19.3l-5.2-7.1c-7.5 10.9-7 13.3-6.5 15.5l0 .1c.5 1.9 1 3.8-3.4 10.8c1.7-2.9 1.3-3.6 1-4.2l0 0c-.4-.8-.7-1.5 1.7-5.1c-1.6 .1-5.5 3.9-10.1 8.5c-3.9 3.9-8.5 8.4-12.8 11.8c-37.5 30.1-82.3 34-125.6 17.8c.2-1-.2-2.1-3.1-4.1c-36.8-28.2-58.5-52.1-50.9-107.5c2.1-1.6 3.6-5.8 5.3-10.8l0 0 0 0 .2-.4 .1-.3 0-.1c2.9-8.4 6.5-18.8 14.3-23.8c7.8-17.3 31.3-33.3 56.4-33.7c25.6-1.4 47.2 13.7 58.1 27.9c-19.8-18.4-52.1-24-79.7-10.4c-28.2 12.7-45 43.8-42.5 74.7c.3-.4 .6-.6 .9-.8l0 0s0 0 0 0c0 0 .1-.1 .1-.1l.1-.1c.6-.5 1.1-.9 1.4-3.3c-.9 60.2 64.8 104.3 112.1 82l.6 1.3c12.7-3.5 15.9-6.5 20.3-10.7l.1-.1 0 0c2.2-2.1 4.7-4.5 8.9-7.3c-.3 .7-1.3 1.7-2.4 2.7c-2.2 2.1-4.6 4.5-1.6 4.6c5-1.3 18.5-13.4 28.5-22.3l0 0 0 0c.6-.5 1.2-1 1.7-1.5c1.5-1.3 2.8-2.5 4-3.6l0 0 .3-.3c1.9-4.2 1.6-5.6 1.3-7l0-.1c-.4-1.6-.8-3.3 2.4-9.6l7.3-3.7c.8-2.1 1.5-4.1 2.2-6c.2-.6 .5-1.2 .7-1.8l-.4-.2zM349.3 34.3l-.2-.1 .2 .1 0 0zM247.8 334.1c-6-3-13.7-8.9-14.8-11.4l-.4 .3c-.3 .6-.5 1.3-.2 2.2c-12.2-5.7-23.4-14.3-32.6-24.9c4.9 7.1 10.1 14.1 17 19.5c-6.9-2.3-15.1-11.8-21.6-19.3l-.1-.1c-4.3-5-7.9-9.1-9.7-9.5c19.8 35.5 80.5 62.3 112.3 49c-14.7 .5-33.4 .3-49.9-5.8zm79.3-119.7l-.1-.2c-.5-1.5-1.1-3.1-1.7-3.4c1.4-5.8 5.4-10.7 4.4 4.6c-1 3.8-1.8 1.5-2.6-1zm-4.2 22.2c-1.3 7.9-5 15.5-10.1 22.5c.2-2-1.2-2.4-2.6-2.8l0 0c-2.9-.8-5.9-1.6 5.6-16.1c-.5 1.9-2.1 4.6-3.7 7.3l0 0 0 0-.3 .4c-3.6 5.9-6.7 11 4 4.3l1-1.8c2.6-4.5 5-8.8 6-13.8h.1zm-55.6 33.9c7.1 .6 14.1 .6 21-1.1c-2.5 2.4-5.2 4.8-8.3 7.2c-11.1-1.7-21.2-6-12.7-6.1zm-92.6 11.6c3.6 7.1 6.4 11.5 9 15.7l.1 .2c2.3 3.7 4.4 7.1 6.8 11.7c-5.1-4.2-8.7-9.5-12.5-15l-.3-.5c-1.4-2.1-2.8-4.2-4.4-6.2l1.2-5.9h.1zm7.5-9.6c1.6 3.3 3.2 6.4 5.7 9.1l2.6 7.7-1.3-2.1c-3.2-5.3-6.3-10.6-8-16.7l.8 1.6 .2 .4zm238.9-41.6c-2.3 17.4-7.7 34.6-16 50.3c7.6-14.9 12.5-30.9 14.8-47.2l1.2-3.1zM35.6 110.6c.4 .8 1.4 .5 2.3 .3c1.9-.5 3.6-.9-.1 7.6c-.5 .3-1 .7-1.5 1l0 0 0 0c-1.4 .9-2.8 1.9-3.9 3c1.9-3.8 3.5-7.4 3.2-11.9zM25.3 152.3c-.7 3.7-1.5 7.9-3.4 13.9c.2-1.9 0-3.5-.2-4.9l0-.1c-.4-3.4-.7-6.3 4.3-12.8c-.3 1.2-.5 2.5-.7 3.8v.1z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareTwitter = {\n prefix: 'fab',\n iconName: 'square-twitter',\n icon: [448, 512, [\"twitter-square\"], \"f081\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM351.3 199.3v0c0 86.7-66 186.6-186.6 186.6c-37.2 0-71.7-10.8-100.7-29.4c5.3 .6 10.4 .8 15.8 .8c30.7 0 58.9-10.4 81.4-28c-28.8-.6-53-19.5-61.3-45.5c10.1 1.5 19.2 1.5 29.6-1.2c-30-6.1-52.5-32.5-52.5-64.4v-.8c8.7 4.9 18.9 7.9 29.6 8.3c-9-6-16.4-14.1-21.5-23.6s-7.8-20.2-7.7-31c0-12.2 3.2-23.4 8.9-33.1c32.3 39.8 80.8 65.8 135.2 68.6c-9.3-44.5 24-80.6 64-80.6c18.9 0 35.9 7.9 47.9 20.7c14.8-2.8 29-8.3 41.6-15.8c-4.9 15.2-15.2 28-28.8 36.1c13.2-1.4 26-5.1 37.8-10.2c-8.9 13.1-20.1 24.7-32.9 34c.2 2.8 .2 5.7 .2 8.5z\"]\n};\nconst faTwitterSquare = faSquareTwitter;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faGolang = {\n prefix: 'fab',\n iconName: 'golang',\n icon: [640, 512, [], \"e40f\", \"M400.1 194.8C389.2 197.6 380.2 199.1 371 202.4C363.7 204.3 356.3 206.3 347.8 208.5L347.2 208.6C343 209.8 342.6 209.9 338.7 205.4C334 200.1 330.6 196.7 324.1 193.5C304.4 183.9 285.4 186.7 267.7 198.2C246.5 211.9 235.6 232.2 235.9 257.4C236.2 282.4 253.3 302.9 277.1 306.3C299.1 309.1 316.9 301.7 330.9 285.8C333 283.2 334.9 280.5 337 277.5V277.5L337 277.5C337.8 276.5 338.5 275.4 339.3 274.2H279.2C272.7 274.2 271.1 270.2 273.3 264.9C277.3 255.2 284.8 239 289.2 230.9C290.1 229.1 292.3 225.1 296.1 225.1H397.2C401.7 211.7 409 198.2 418.8 185.4C441.5 155.5 468.1 139.9 506 133.4C537.8 127.8 567.7 130.9 594.9 149.3C619.5 166.1 634.7 188.9 638.8 218.8C644.1 260.9 631.9 295.1 602.1 324.4C582.4 345.3 557.2 358.4 528.2 364.3C522.6 365.3 517.1 365.8 511.7 366.3C508.8 366.5 506 366.8 503.2 367.1C474.9 366.5 449 358.4 427.2 339.7C411.9 326.4 401.3 310.1 396.1 291.2C392.4 298.5 388.1 305.6 382.1 312.3C360.5 341.9 331.2 360.3 294.2 365.2C263.6 369.3 235.3 363.4 210.3 344.7C187.3 327.2 174.2 304.2 170.8 275.5C166.7 241.5 176.7 210.1 197.2 184.2C219.4 155.2 248.7 136.8 284.5 130.3C313.8 124.1 341.8 128.4 367.1 145.6C383.6 156.5 395.4 171.4 403.2 189.5C405.1 192.3 403.8 193.9 400.1 194.8zM48.3 200.4C47.05 200.4 46.74 199.8 47.36 198.8L53.91 190.4C54.53 189.5 56.09 188.9 57.34 188.9H168.6C169.8 188.9 170.1 189.8 169.5 190.7L164.2 198.8C163.6 199.8 162 200.7 161.1 200.7L48.3 200.4zM1.246 229.1C0 229.1-.3116 228.4 .3116 227.5L6.855 219.1C7.479 218.2 9.037 217.5 10.28 217.5H152.4C153.6 217.5 154.2 218.5 153.9 219.4L151.4 226.9C151.1 228.1 149.9 228.8 148.6 228.8L1.246 229.1zM75.72 255.9C75.1 256.8 75.41 257.7 76.65 257.7L144.6 258C145.5 258 146.8 257.1 146.8 255.9L147.4 248.4C147.4 247.1 146.8 246.2 145.5 246.2H83.2C81.95 246.2 80.71 247.1 80.08 248.1L75.72 255.9zM577.2 237.9C577 235.3 576.9 233.1 576.5 230.9C570.9 200.1 542.5 182.6 512.9 189.5C483.9 196 465.2 214.4 458.4 243.7C452.8 268 464.6 292.6 487 302.6C504.2 310.1 521.3 309.2 537.8 300.7C562.4 287.1 575.8 268 577.4 241.2C577.3 240 577.3 238.9 577.2 237.9z\"]\n};\nconst faKickstarter = {\n prefix: 'fab',\n iconName: 'kickstarter',\n icon: [448, 512, [\"square-kickstarter\"], \"f3bb\", \"M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM320.8 233l-23.3 23.1L320.8 279c24.1 23.9 24.1 63 0 86.9s-63.4 23.9-87.6 0l-8.5-8.4c-11.3 16-29.7 26.5-50.9 26.5c-34.1 0-61.9-27.5-61.9-61.4l0-133.2c0-33.8 27.7-61.4 61.9-61.4c21.1 0 39.6 10.5 50.9 26.5l8.5-8.4c24.1-23.9 63.4-23.9 87.6 0s24.1 63 0 86.9z\"]\n};\nconst faSquareKickstarter = faKickstarter;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareYoutube = {\n prefix: 'fab',\n iconName: 'square-youtube',\n icon: [448, 512, [61798, \"youtube-square\"], \"f431\", \"M282 256.2l-95.2-54.1V310.3L282 256.2zM384 32H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64zm14.4 136.1c7.6 28.6 7.6 88.2 7.6 88.2s0 59.6-7.6 88.1c-4.2 15.8-16.5 27.7-32.2 31.9C337.9 384 224 384 224 384s-113.9 0-142.2-7.6c-15.7-4.2-28-16.1-32.2-31.9C42 315.9 42 256.3 42 256.3s0-59.7 7.6-88.2c4.2-15.8 16.5-28.2 32.2-32.4C110.1 128 224 128 224 128s113.9 0 142.2 7.7c15.7 4.2 28 16.6 32.2 32.4z\"]\n};\nconst faYoutubeSquare = faSquareYoutube;\nconst 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};\nconst faWpressr = {\n prefix: 'fab',\n iconName: 'wpressr',\n icon: [496, 512, [\"rendact\"], \"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};\nconst faRendact = faWpressr;\nconst 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};\nconst 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};\nconst faNfcDirectional = {\n prefix: 'fab',\n iconName: 'nfc-directional',\n icon: [512, 512, [], \"e530\", \"M211.8 488.6C213.4 491.1 213.9 494.2 213.2 497.1C212.6 500 210.8 502.6 208.3 504.2C205.7 505.8 202.7 506.3 199.7 505.7C138.3 491.8 84.1 455.8 47.53 404.5C10.97 353.2-5.395 290.3 1.57 227.7C8.536 165 38.34 107.2 85.29 65.21C132.2 23.2 193-.0131 256 0C257.5 0 258.1 .2931 260.3 .8627C261.7 1.432 262.1 2.267 264 3.319C265.1 4.371 265.9 5.619 266.5 6.993C267 8.367 267.3 9.839 267.3 11.32V112.3L291.8 86.39C292.8 85.31 294 84.44 295.4 83.84C296.7 83.23 298.2 82.9 299.7 82.86C301.2 82.81 302.6 83.06 304 83.59C305.4 84.12 306.7 84.92 307.8 85.94C308.8 86.96 309.7 88.18 310.3 89.54C310.9 90.89 311.3 92.35 311.3 93.84C311.3 95.32 311.1 96.8 310.6 98.18C310 99.57 309.2 100.8 308.2 101.9L264.2 148.5C263.1 149.6 261.9 150.5 260.5 151.1C259 151.7 257.5 152 255.1 152C254.5 152 252.9 151.7 251.5 151.1C250.1 150.5 248.8 149.6 247.8 148.5L203.7 101.9C201.7 99.74 200.6 96.83 200.7 93.84C200.7 90.84 202 87.1 204.2 85.94C206.4 83.88 209.3 82.77 212.3 82.86C215.3 82.94 218.1 84.21 220.2 86.39L244.7 112.4V22.89C188.3 25.64 134.9 48.73 94.23 87.87C53.58 127 28.49 179.6 23.61 235.8C18.73 292 34.38 348.1 67.68 393.7C100.1 439.2 149.7 471.2 204.7 483.6C207.6 484.3 210.2 486.1 211.8 488.6L211.8 488.6zM171.4 126.1C170.6 127.4 169.5 128.5 168.3 129.3C147.8 143.2 131.1 161.9 119.5 183.8C107.9 205.7 101.8 230.1 101.8 254.9C101.8 279.7 107.9 304.1 119.5 325.1C131.1 347.9 147.8 366.6 168.3 380.5C170.8 382.2 172.5 384.8 173 387.8C173.6 390.7 172.1 393.8 171.3 396.2C169.6 398.7 166.1 400.4 164 400.1C161.1 401.5 158 400.9 155.6 399.2C132 383.2 112.8 361.7 99.46 336.5C86.15 311.4 79.19 283.4 79.19 254.9C79.19 226.5 86.15 198.4 99.46 173.3C112.8 148.1 132 126.6 155.6 110.6C156.8 109.8 158.2 109.2 159.6 108.8C161.1 108.5 162.6 108.5 164.1 108.8C165.5 109 166.9 109.6 168.2 110.4C169.5 111.2 170.5 112.3 171.4 113.5C172.2 114.7 172.8 116.1 173.1 117.6C173.4 119.1 173.4 120.6 173.1 122C172.8 123.5 172.3 124.9 171.4 126.1H171.4zM340.9 383.5C341.7 382.3 342.8 381.2 343.1 380.4V380.3C364.4 366.3 381.1 347.6 392.7 325.7C404.2 303.9 410.2 279.5 410.2 254.8C410.2 230.1 404.2 205.7 392.7 183.8C381.1 161.1 364.4 143.3 343.1 129.3C342.8 128.5 341.7 127.4 340.9 126.2C340.1 124.9 339.5 123.5 339.3 122.1C338.1 120.6 339 119.1 339.3 117.7C339.6 116.2 340.2 114.8 341 113.6C341.9 112.4 342.1 111.3 344.2 110.5C345.4 109.7 346.8 109.2 348.3 108.9C349.8 108.6 351.2 108.6 352.7 108.9C354.2 109.2 355.5 109.8 356.8 110.7C380.2 126.7 399.5 148.2 412.7 173.3C426 198.4 432.1 226.4 432.1 254.8C432.1 283.3 426 311.3 412.7 336.4C399.5 361.5 380.2 383 356.8 399C355.5 399.9 354.2 400.5 352.7 400.8C351.2 401.1 349.8 401.1 348.3 400.8C346.8 400.5 345.4 399.1 344.2 399.2C342.1 398.4 341.9 397.3 341 396.1C340.2 394.9 339.6 393.5 339.3 392C339 390.6 338.1 389.1 339.3 387.6C339.5 386.2 340.1 384.8 340.9 383.5V383.5zM312.3 6.307C368.5 19.04 418.7 50.28 455 95.01C485.4 132.6 504.6 178 510.3 226C515.9 274 507.9 322.7 487.1 366.3C466.2 409.9 433.5 446.8 392.6 472.6C351.7 498.3 304.4 512 256 512C254.5 512 253.1 511.7 251.7 511.1C250.3 510.6 249.1 509.7 248 508.7C246.1 507.6 246.1 506.4 245.6 505C245 503.6 244.7 502.2 244.7 500.7V401.5L220.2 427.5C218.1 429.7 215.3 430.1 212.3 431.1C209.3 431.2 206.4 430 204.2 427.1C202 425.9 200.7 423.1 200.7 420.1C200.6 417.1 201.7 414.2 203.7 412L247.8 365.4C249.1 363.2 252.9 362 255.1 362C259.1 362 262 363.2 264.2 365.4L308.2 412C310.3 414.2 311.4 417.1 311.3 420.1C311.2 423.1 309.9 425.9 307.8 427.1C305.6 430 302.7 431.2 299.7 431.1C296.7 430.1 293.8 429.7 291.8 427.5L267.3 401.6V489.1C323.7 486.3 377.1 463.3 417.8 424.1C458.5 384.1 483.6 332.4 488.5 276.2C493.3 219.1 477.7 163.9 444.4 118.3C411.1 72.75 362.4 40.79 307.4 28.36C305.9 28.03 304.6 27.42 303.3 26.57C302.1 25.71 301.1 24.63 300.3 23.37C299.5 22.12 298.1 20.72 298.7 19.26C298.5 17.8 298.5 16.3 298.8 14.85C299.2 13.41 299.8 12.04 300.6 10.82C301.5 9.61 302.6 8.577 303.8 7.784C305.1 6.99 306.5 6.451 307.9 6.198C309.4 5.945 310.9 5.982 312.3 6.307L312.3 6.307zM353.1 256.1C353.1 287.5 335.6 317.2 303.8 339.6C301.7 341.1 299 341.9 296.4 341.6C293.7 341.4 291.2 340.3 289.4 338.4L219.3 268.6C217.1 266.5 215.1 263.6 215.9 260.6C215.9 257.6 217.1 254.7 219.2 252.6C221.4 250.5 224.2 249.3 227.2 249.3C230.2 249.3 233.1 250.5 235.2 252.6L298.3 315.4C319.1 298.3 330.5 277.5 330.5 256.1C330.5 232.2 316.4 209.1 290.8 191C288.3 189.3 286.7 186.7 286.2 183.7C285.7 180.8 286.3 177.7 288.1 175.3C289.8 172.8 292.4 171.2 295.4 170.7C298.3 170.2 301.4 170.8 303.8 172.6C335.6 195 353.1 224.7 353.1 256.1V256.1zM216.7 341.5C213.7 342 210.7 341.3 208.2 339.6C176.5 317.2 158.1 287.5 158.1 256.1C158.1 224.7 176.5 195 208.2 172.6C210.4 171 213.1 170.3 215.7 170.5C218.4 170.8 220.8 171.9 222.7 173.8L292.8 243.6C294.9 245.7 296.1 248.6 296.1 251.6C296.1 254.6 294.1 257.4 292.8 259.6C290.7 261.7 287.8 262.9 284.9 262.9C281.9 262.9 278.1 261.7 276.9 259.6L213.8 196.7C192.9 214 181.6 234.7 181.6 256.1C181.6 279.1 195.7 303.1 221.3 321.1C223.7 322.9 225.4 325.5 225.9 328.5C226.4 331.4 225.7 334.4 224 336.9C222.3 339.3 219.6 341 216.7 341.5L216.7 341.5z\"]\n};\nconst 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};\nconst 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};\nconst faFedora = {\n prefix: 'fab',\n iconName: 'fedora',\n icon: [448, 512, [], \"f798\", \"M.0413 255.8C.1219 132.2 100.3 32 224 32C347.7 32 448 132.3 448 256C448 379.7 347.8 479.9 224.1 480H50.93C22.84 480 .0832 457.3 .0416 429.2H0V255.8H.0413zM342.6 192.7C342.6 153 307 124.2 269.4 124.2C234.5 124.2 203.6 150.5 199.3 184.1C199.1 187.9 198.9 189.1 198.9 192.6C198.8 213.7 198.9 235.4 198.1 257C199 283.1 199.1 309.1 198.1 333.6C198.1 360.7 178.7 379.1 153.4 379.1C128.1 379.1 107.6 358.9 107.6 333.6C108.1 305.9 130.2 288.3 156.1 287.5H156.3L182.6 287.3V250L156.3 250.2C109.2 249.8 71.72 286.7 70.36 333.6C70.36 379.2 107.9 416.5 153.4 416.5C196.4 416.5 232.1 382.9 236 340.9L236.2 287.4L268.8 287.1C294.1 287.3 293.8 249.3 268.6 249.8L236.2 250.1C236.2 243.7 236.3 237.3 236.3 230.9C236.4 218.2 236.4 205.5 236.2 192.7C236.3 176.2 252 161.5 269.4 161.5C286.9 161.5 305.3 170.2 305.3 192.7C305.3 195.9 305.2 197.8 305 199C303.1 209.5 310.2 219.4 320.7 220.9C331.3 222.4 340.9 214.8 341.9 204.3C342.5 200.1 342.6 196.4 342.6 192.7H342.6z\"]\n};\nconst 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};\nconst faMeta = {\n prefix: 'fab',\n iconName: 'meta',\n icon: [640, 512, [], \"e49b\", \"M640 317.9C640 409.2 600.6 466.4 529.7 466.4C467.1 466.4 433.9 431.8 372.8 329.8L341.4 277.2C333.1 264.7 326.9 253 320.2 242.2C300.1 276 273.1 325.2 273.1 325.2C206.1 441.8 168.5 466.4 116.2 466.4C43.42 466.4 0 409.1 0 320.5C0 177.5 79.78 42.4 183.9 42.4C234.1 42.4 277.7 67.08 328.7 131.9C365.8 81.8 406.8 42.4 459.3 42.4C558.4 42.4 640 168.1 640 317.9H640zM287.4 192.2C244.5 130.1 216.5 111.7 183 111.7C121.1 111.7 69.22 217.8 69.22 321.7C69.22 370.2 87.7 397.4 118.8 397.4C149 397.4 167.8 378.4 222 293.6C222 293.6 246.7 254.5 287.4 192.2V192.2zM531.2 397.4C563.4 397.4 578.1 369.9 578.1 322.5C578.1 198.3 523.8 97.08 454.9 97.08C421.7 97.08 393.8 123 360 175.1C369.4 188.9 379.1 204.1 389.3 220.5L426.8 282.9C485.5 377 500.3 397.4 531.2 397.4L531.2 397.4z\"]\n};\nconst 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};\nconst faHotjar = {\n prefix: 'fab',\n iconName: 'hotjar',\n icon: [512, 512, [], \"f3b1\", \"M361.5 0c0 131.6-80.7 176.8-140.2 209.4c-.6 .3-1.1 .6-1.6 .9c-53.8 30.2-88.7 49.8-89.6 122H32C32 200.8 112.7 155.6 172.2 123C227 93.2 262.5 73 262.5 0h98.9zM301 302.6c54.8-29.8 90.3-50 90.3-123h98c0 131.6-80.7 176.7-140.2 209.4c-54.8 29.8-90.3 50-90.3 123h-98c0-131.6 80.7-176.8 140.2-209.4z\"]\n};\nconst 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};\nconst faSquareLetterboxd = {\n prefix: 'fab',\n iconName: 'square-letterboxd',\n icon: [448, 512, [], \"e62e\", \"M384 32c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96C0 60.7 28.7 32 64 32H384zM105.1 187C66.4 187 35 218.3 35 257s31.4 70 70.1 70c24.8 0 46.5-12.8 59-32.2l.5-.7-.4-.6c-6.5-10.6-10.2-23.1-10.2-36.5c0-13.6 3.9-26.3 10.6-37.1c-12.4-19.8-34.4-32.9-59.5-32.9zM224 187c-24.8 0-46.5 12.8-59 32.2l-.5 .7 .4 .6c6.5 10.6 10.2 23.1 10.2 36.5c0 13.6-3.9 26.3-10.6 37.1C176.9 313.8 198.9 327 224 327c24.8 0 46.5-12.8 59-32.2l.5-.7-.4-.6c-6.5-10.6-10.2-23.1-10.2-36.5c0-13.6 3.9-26.3 10.6-37.1C271.1 200.2 249.1 187 224 187zm118.9 0c-24.8 0-46.5 12.8-59 32.2l-.5 .7 .4 .6c6.5 10.6 10.2 23.1 10.2 36.5c0 13.6-3.9 26.3-10.6 37.1c12.4 19.8 34.4 32.9 59.5 32.9c38.7 0 70.1-31.3 70.1-70s-31.4-70-70.1-70z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faReddit = {\n prefix: 'fab',\n iconName: 'reddit',\n icon: [512, 512, [], \"f1a1\", \"M0 256C0 114.6 114.6 0 256 0S512 114.6 512 256s-114.6 256-256 256L37.1 512c-13.7 0-20.5-16.5-10.9-26.2L75 437C28.7 390.7 0 326.7 0 256zM349.6 153.6c23.6 0 42.7-19.1 42.7-42.7s-19.1-42.7-42.7-42.7c-20.6 0-37.8 14.6-41.8 34c-34.5 3.7-61.4 33-61.4 68.4l0 .2c-37.5 1.6-71.8 12.3-99 29.1c-10.1-7.8-22.8-12.5-36.5-12.5c-33 0-59.8 26.8-59.8 59.8c0 24 14.1 44.6 34.4 54.1c2 69.4 77.6 125.2 170.6 125.2s168.7-55.9 170.6-125.3c20.2-9.6 34.1-30.2 34.1-54c0-33-26.8-59.8-59.8-59.8c-13.7 0-26.3 4.6-36.4 12.4c-27.4-17-62.1-27.7-100-29.1l0-.2c0-25.4 18.9-46.5 43.4-49.9l0 0c4.4 18.8 21.3 32.8 41.5 32.8zM177.1 246.9c16.7 0 29.5 17.6 28.5 39.3s-13.5 29.6-30.3 29.6s-31.4-8.8-30.4-30.5s15.4-38.3 32.1-38.3zm190.1 38.3c1 21.7-13.7 30.5-30.4 30.5s-29.3-7.9-30.3-29.6c-1-21.7 11.8-39.3 28.5-39.3s31.2 16.6 32.1 38.3zm-48.1 56.7c-10.3 24.6-34.6 41.9-63 41.9s-52.7-17.3-63-41.9c-1.2-2.9 .8-6.2 3.9-6.5c18.4-1.9 38.3-2.9 59.1-2.9s40.7 1 59.1 2.9c3.1 .3 5.1 3.6 3.9 6.5z\"]\n};\nconst 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};\nconst faChrome = {\n prefix: 'fab',\n iconName: 'chrome',\n icon: [512, 512, [], \"f268\", \"M0 256C0 209.4 12.47 165.6 34.27 127.1L144.1 318.3C166 357.5 207.9 384 256 384C270.3 384 283.1 381.7 296.8 377.4L220.5 509.6C95.9 492.3 0 385.3 0 256zM365.1 321.6C377.4 302.4 384 279.1 384 256C384 217.8 367.2 183.5 340.7 160H493.4C505.4 189.6 512 222.1 512 256C512 397.4 397.4 511.1 256 512L365.1 321.6zM477.8 128H256C193.1 128 142.3 172.1 130.5 230.7L54.19 98.47C101 38.53 174 0 256 0C350.8 0 433.5 51.48 477.8 128V128zM168 256C168 207.4 207.4 168 256 168C304.6 168 344 207.4 344 256C344 304.6 304.6 344 256 344C207.4 344 168 304.6 168 256z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faShoelace = {\n prefix: 'fab',\n iconName: 'shoelace',\n icon: [512, 512, [], \"e60c\", \"M404.9 331c2.2-1.1 4.4-2.3 6.5-3.7l8.3-4.8c1.5-1.1 4.4-3.4 8.7-6.7l.5-.5c3.4-3.4 7.2-5 11.3-4.9c1.8 0 3.9 .5 6.4 1.5l31-27.5c.9-.7 1.7-1.3 2.6-1.8h.2c3.3-1.9 6-1.8 8.2 .4c3.9 2.1 4.2 5.6 .9 10.6L456.9 322c.2 .5 .4 1 .4 1.5c.5 2.2 .3 4.4-.5 6.6c-.7 1.5-1.8 2.9-3.1 4.2c-1.4 1.4-2.7 2.8-4.2 4.2l-18.8 13.7c-1.7 1.2-3.4 2.3-5.1 3.3c-2.1 1.3-4.3 2.5-6.6 3.6c-1 .4-1.9 .9-2.9 1.3c-5.9 2.5-11.9 4.2-18.2 5c-2.9 24.5-11.3 47.1-25.1 67.8c-17.5 25.7-41.4 45.4-71.8 58.8c-30.2 13.5-63 20.2-98.2 20.2c-48.6-.5-88-11.4-118.2-32.8C49.5 454.4 32 421.5 32 380.3v-5.6c1.2-28.1 9.5-54.6 24.8-79.8c15.1-24.9 37.1-41.7 66.1-50.5c14.9-4.4 29.9-6.6 45-6.6c15.5 0 31.6 2.9 48.1 8.6s35.2 15.5 55.9 29.5L326 312.2c15.1 9.8 28.8 16.5 41.2 20c-2.6-25.1-11.7-46.6-27.3-64.5c-15.7-18.1-35.6-31.3-59.9-39.7l-23.3-8c-21.4-7.5-37.3-14.9-47.7-22.2c-28.2-19.1-43.8-45.2-47-78.5l-.5-9.8c0-32.1 13-58.9 39-80.5C223.5 9.7 251.1 0 283 0c24 0 45.6 6.9 64.7 20.8c19.2 14 30.1 33.8 32.6 59.4l.5 10c0 18.6-4.8 34.5-14.4 47.7c-9.8 13.2-18.5 19.9-26 19.9c-1.6-.1-3.1-.3-4.5-.6l-34 32c-5.5 3-9.2 2.5-11.1-1.6c-1.9-2.2-1.8-4.9 .5-8.2l.2-.2c.5-.7 1.2-1.5 2-2.4l31.6-30c-.4-1.5-.6-3.1-.6-4.8c0-4.1 1.6-7.6 4.9-10.4c13.8-12.4 20.8-26.7 20.8-42.8c0-16-6.1-29.5-18.2-40.4s-28.7-16.5-49.7-16.8c-26.2 0-47.8 7.9-64.7 23.7S192.3 89.9 192.3 112c0 17.8 6.9 33.9 20.6 48.3c13.6 14.2 34.6 25.4 63 33.5c39.8 11.5 70.2 31 91.3 58.3c18.7 24.2 29.1 51.3 31.3 81.4c2.2-.7 4.3-1.5 6.5-2.6zM294.1 178.7c0 1.1 .6 1.6 1.8 1.6c.1 0 9.7-8.9 28.8-26.6c0-2.4-5.1 .9-15.3 10c-10.2 9.2-15.3 14.2-15.3 14.9zm8 6.4c0-1-.5-1.5-1.5-1.5c-1.1 0-2.1 .5-2.9 1.6c-1.9-.1-3.3 .1-4.2 .7c-.4 .2-.5 .5-.5 .7c0 .7 .5 1.3 1.5 1.6h3.3c2.9-1.1 4.4-2.2 4.4-3.3zm22.6-19.9c0-2.8-1.6-2.8-4.9 0c-1.6 1.5-3.6 3.5-6 6.2c-.8 .6-2.6 2.2-5.3 4.9c-2.8 2.9-4.2 4.7-4.2 5.3l.2 1.3c.7 .2 1.2 .4 1.5 .4c.1 0 3.3-2.9 9.5-8.7s9.3-8.9 9.3-9.3zm159.7 120l-30.6 27c1.8 1 3.2 2.4 4 4.2l30.2-27c.2-1.2 .1-2.2-.5-2.9c-.6-.5-1.6-.9-3.1-1.3zm-1.6-.9l-.7-.7-27 21.9 1.6 2 26-23.1zM366.6 363.9c-8-2.1-15.4-4.6-22.2-7.5c-15.3-6.2-34.3-17-57-32.4L250 298.7c-15.8-10.1-30.2-17.6-43.2-22.6c-13.1-4.9-26-7.3-38.6-7.3h-5.5c-32.2 1.7-57.2 13.8-75 36.2c-16.6 20.8-25 45.3-25 73.6c0 31.8 12.8 56.7 38.2 74.7c25.4 18.1 60.2 27.1 104.4 27.1c34.7 0 64-6.2 87.8-18.6c23.7-12.4 42.1-28.8 55.2-49.2c9.8-15.5 15.9-31.8 18.2-48.8z\"]\n};\nconst 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};\nconst 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};\nconst faAccessibleIcon = {\n prefix: 'fab',\n iconName: 'accessible-icon',\n icon: [448, 512, [62107], \"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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareSteam = {\n prefix: 'fab',\n iconName: 'square-steam',\n icon: [448, 512, [\"steam-square\"], \"f1b7\", \"M165.6 309.1c18.6 7.7 27.3 28.9 19.6 47.4s-29 27.2-47.6 19.4l-28.5-11.8c5 10.6 13.8 19.4 25.4 24.2c25.2 10.5 54.1-1.4 64.6-26.5c5.1-12.1 5.1-25.5 .1-37.7c-5.1-12.1-14.5-21.6-26.7-26.7c-12.1-5-25-4.8-36.4-.5l29.5 12.2zM448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V240.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.8c-31.8 0-58.5-22.7-64.5-52.7L0 319.2V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM241.9 196.2a58.4 58.4 0 1 0 116.8 0 58.4 58.4 0 1 0 -116.8 0zm14.6-.1a43.9 43.9 0 1 1 87.8 0 43.9 43.9 0 1 1 -87.8 0z\"]\n};\nconst faSteamSquare = faSquareSteam;\nconst 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};\nconst faSquareVimeo = {\n prefix: 'fab',\n iconName: 'square-vimeo',\n icon: [448, 512, [\"vimeo-square\"], \"f194\", \"M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM318.5 309.5C275 366 238.2 394.3 208.1 394.3c-18.7 0-34.4-17.2-47.3-51.6c-3.8-13.9-7.3-26.9-10.5-39c-18.2-68.3-28.6-107.4-46.2-107.4c-2.4 0-10.8 5-25.1 15.1L64 192c7-6.1 13.9-12.4 20.6-18.5c29.1-26.3 55.6-50.3 73.5-51.9c24.9-2.4 40.2 14.6 46 51.1c20.5 129.6 29.6 149.2 66.8 90.5c13.4-21.2 20.6-37.2 21.5-48.3c3.4-32.8-25.6-30.6-45.2-22.2c15.7-51.5 45.8-76.5 90.1-75.1c32.9 1 48.4 22.4 46.5 64c-1.4 31.1-23.2 73.8-65.3 127.9z\"]\n};\nconst faVimeoSquare = faSquareVimeo;\nconst 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};\nconst faFontAwesome = {\n prefix: 'fab',\n iconName: 'font-awesome',\n icon: [512, 512, [62501, 62694, \"font-awesome-flag\", \"font-awesome-logo-full\"], \"f2b4\", \"M91.7 96C106.3 86.8 116 70.5 116 52C116 23.3 92.7 0 64 0S12 23.3 12 52c0 16.7 7.8 31.5 20 41l0 3 0 352 0 64 64 0 0-64 373.6 0c14.6 0 26.4-11.8 26.4-26.4c0-3.7-.8-7.3-2.3-10.7L432 272l61.7-138.9c1.5-3.4 2.3-7 2.3-10.7c0-14.6-11.8-26.4-26.4-26.4L91.7 96z\"]\n};\nconst faFontAwesomeFlag = faFontAwesome;\nconst faFontAwesomeLogoFull = faFontAwesome;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faPadlet = {\n prefix: 'fab',\n iconName: 'padlet',\n icon: [640, 512, [], \"e4a0\", \"M297.9 0L298 .001C305.6 .1078 312.4 4.72 315.5 11.78L447.5 320.3L447.8 320.2L448 320.6L445.2 330.6L402.3 488.6C398.6 504.8 382.6 514.9 366.5 511.2L298.1 495.6L229.6 511.2C213.5 514.9 197.5 504.8 193.8 488.6L150.9 330.6L148.2 320.6L148.3 320.2L280.4 11.78C283.4 4.797 290.3 .1837 297.9 .0006L297.9 0zM160.1 322.1L291.1 361.2L298 483.7L305.9 362.2L436.5 322.9L436.7 322.8L305.7 347.9L297.1 27.72L291.9 347.9L160.1 322.1zM426 222.6L520.4 181.6H594.2L437.2 429.2L468.8 320.2L426 222.6zM597.5 181.4L638.9 257.6C642.9 265.1 635 273.5 627.3 269.8L579.7 247.1L597.5 181.4zM127.3 318.5L158.7 430L1.61 154.5C-4.292 144.1 7.128 132.5 17.55 138.3L169.4 222.5L127.3 318.5z\"]\n};\nconst 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};\nconst faSquareGithub = {\n prefix: 'fab',\n iconName: 'square-github',\n icon: [448, 512, [\"github-square\"], \"f092\", \"M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM265.8 407.7c0-1.8 0-6 .1-11.6c.1-11.4 .1-28.8 .1-43.7c0-15.6-5.2-25.5-11.3-30.7c37-4.1 76-9.2 76-73.1c0-18.2-6.5-27.3-17.1-39c1.7-4.3 7.4-22-1.7-45c-13.9-4.3-45.7 17.9-45.7 17.9c-13.2-3.7-27.5-5.6-41.6-5.6s-28.4 1.9-41.6 5.6c0 0-31.8-22.2-45.7-17.9c-9.1 22.9-3.5 40.6-1.7 45c-10.6 11.7-15.6 20.8-15.6 39c0 63.6 37.3 69 74.3 73.1c-4.8 4.3-9.1 11.7-10.6 22.3c-9.5 4.3-33.8 11.7-48.3-13.9c-9.1-15.8-25.5-17.1-25.5-17.1c-16.2-.2-1.1 10.2-1.1 10.2c10.8 5 18.4 24.2 18.4 24.2c9.7 29.7 56.1 19.7 56.1 19.7c0 9 .1 21.7 .1 30.6c0 4.8 .1 8.6 .1 10c0 4.3-3 9.5-11.5 8C106 393.6 59.8 330.8 59.8 257.4c0-91.8 70.2-161.5 162-161.5s166.2 69.7 166.2 161.5c.1 73.4-44.7 136.3-110.7 158.3c-8.4 1.5-11.5-3.7-11.5-8zm-90.5-54.8c-.2-1.5 1.1-2.8 3-3.2c1.9-.2 3.7 .6 3.9 1.9c.3 1.3-1 2.6-3 3c-1.9 .4-3.7-.4-3.9-1.7zm-9.1 3.2c-2.2 .2-3.7-.9-3.7-2.4c0-1.3 1.5-2.4 3.5-2.4c1.9-.2 3.7 .9 3.7 2.4c0 1.3-1.5 2.4-3.5 2.4zm-14.3-2.2c-1.9-.4-3.2-1.9-2.8-3.2s2.4-1.9 4.1-1.5c2 .6 3.3 2.1 2.8 3.4c-.4 1.3-2.4 1.9-4.1 1.3zm-12.5-7.3c-1.5-1.3-1.9-3.2-.9-4.1c.9-1.1 2.8-.9 4.3 .6c1.3 1.3 1.8 3.3 .9 4.1c-.9 1.1-2.8 .9-4.3-.6zm-8.5-10c-1.1-1.5-1.1-3.2 0-3.9c1.1-.9 2.8-.2 3.7 1.3c1.1 1.5 1.1 3.3 0 4.1c-.9 .6-2.6 0-3.7-1.5zm-6.3-8.8c-1.1-1.3-1.3-2.8-.4-3.5c.9-.9 2.4-.4 3.5 .6c1.1 1.3 1.3 2.8 .4 3.5c-.9 .9-2.4 .4-3.5-.6zm-6-6.4c-1.3-.6-1.9-1.7-1.5-2.6c.4-.6 1.5-.9 2.8-.4c1.3 .7 1.9 1.8 1.5 2.6c-.4 .9-1.7 1.1-2.8 .4z\"]\n};\nconst faGithubSquare = faSquareGithub;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareThreads = {\n prefix: 'fab',\n iconName: 'square-threads',\n icon: [448, 512, [], \"e619\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM294.2 244.3c19.5 9.3 33.7 23.5 41.2 40.9c10.4 24.3 11.4 63.9-20.2 95.4c-24.2 24.1-53.5 35-95.1 35.3h-.2c-46.8-.3-82.8-16.1-106.9-46.8C91.5 341.8 80.4 303.7 80 256v-.1-.1c.4-47.7 11.5-85.7 33-113.1c24.2-30.7 60.2-46.5 106.9-46.8h.2c46.9 .3 83.3 16 108.2 46.6c12.3 15.1 21.3 33.3 27 54.4l-26.9 7.2c-4.7-17.2-11.9-31.9-21.4-43.6c-19.4-23.9-48.7-36.1-87-36.4c-38 .3-66.8 12.5-85.5 36.2c-17.5 22.3-26.6 54.4-26.9 95.5c.3 41.1 9.4 73.3 26.9 95.5c18.7 23.8 47.4 36 85.5 36.2c34.3-.3 56.9-8.4 75.8-27.3c21.5-21.5 21.1-47.9 14.2-64c-4-9.4-11.4-17.3-21.3-23.3c-2.4 18-7.9 32.2-16.5 43.2c-11.4 14.5-27.7 22.4-48.4 23.5c-15.7 .9-30.8-2.9-42.6-10.7c-13.9-9.2-22-23.2-22.9-39.5c-1.7-32.2 23.8-55.3 63.5-57.6c14.1-.8 27.3-.2 39.5 1.9c-1.6-9.9-4.9-17.7-9.8-23.4c-6.7-7.8-17.1-11.8-30.8-11.9h-.4c-11 0-26 3.1-35.6 17.6l-23-15.8c12.8-19.4 33.6-30.1 58.5-30.1h.6c41.8 .3 66.6 26.3 69.1 71.8c1.4 .6 2.8 1.2 4.2 1.9l.1 .5zm-71.8 67.5c17-.9 36.4-7.6 39.7-48.8c-8.8-1.9-18.6-2.9-29-2.9c-3.2 0-6.4 .1-9.6 .3c-28.6 1.6-38.1 15.5-37.4 27.9c.9 16.7 19 24.5 36.4 23.6l-.1-.1z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faGoogleScholar = {\n prefix: 'fab',\n iconName: 'google-scholar',\n icon: [512, 512, [], \"e63b\", \"M390.9 298.5c0 0 0 .1 .1 .1c9.2 19.4 14.4 41.1 14.4 64C405.3 445.1 338.5 512 256 512s-149.3-66.9-149.3-149.3c0-22.9 5.2-44.6 14.4-64h0c1.7-3.6 3.6-7.2 5.6-10.7c4.4-7.6 9.4-14.7 15-21.3c27.4-32.6 68.5-53.3 114.4-53.3c33.6 0 64.6 11.1 89.6 29.9c9.1 6.9 17.4 14.7 24.8 23.5c5.6 6.6 10.6 13.8 15 21.3c2 3.4 3.8 7 5.5 10.5zm26.4-18.8c-30.1-58.4-91-98.4-161.3-98.4s-131.2 40-161.3 98.4L0 202.7 256 0 512 202.7l-94.7 77.1z\"]\n};\nconst faSquareGitlab = {\n prefix: 'fab',\n iconName: 'square-gitlab',\n icon: [448, 512, [\"gitlab-square\"], \"e5ae\", \"M0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96zm337.5 12.5l44.6 116.4 .4 1.2c5.6 16.8 7.2 35.2 2.3 52.5c-5 17.2-15.4 32.4-29.8 43.3l-.2 .1-68.4 51.2-54.1 40.9c-.5 .2-1.1 .5-1.7 .8c-2 1-4.4 2-6.7 2c-3 0-6.8-1.8-8.3-2.8l-54.2-40.9L93.5 322.3l-.4-.3-.2-.1c-14.3-10.8-24.8-26-29.7-43.3s-4.2-35.7 2.2-52.5l.5-1.2 44.7-116.4c.9-2.3 2.5-4.3 4.5-5.6c1.6-1 3.4-1.6 5.2-1.8c1.3-.7 2.1-.4 3.4 .1c.6 .2 1.2 .5 2 .7c1 .4 1.6 .9 2.4 1.5c.6 .4 1.2 1 2.1 1.5c1.2 1.4 2.2 3 2.7 4.8l29.2 92.2H285l30.2-92.2c.5-1.8 1.4-3.4 2.6-4.8s2.8-2.4 4.5-3.1c1.7-.6 3.6-.9 5.4-.7s3.6 .8 5.2 1.8c2 1.3 3.7 3.3 4.6 5.6z\"]\n};\nconst faGitlabSquare = faSquareGitlab;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faLinode = {\n prefix: 'fab',\n iconName: 'linode',\n icon: [448, 512, [], \"f2b8\", \"M366.036,186.867l-59.5,36.871-.838,36.871-29.329-19.273-39.384,24.3c2.238,55.211,2.483,59.271,2.51,59.5l-97.2,65.359L127.214,285.748l108.1-62.01L195.09,197.761l-75.417,38.547L98.723,93.015,227.771,43.574,136.432,0,10.737,39.385,38.39,174.3l41.9,32.681L48.445,222.062,69.394,323.457,98.723,351.11,77.774,363.679l16.76,78.769L160.733,512c-10.8-74.842-11.658-78.641-11.725-78.773l77.925-55.3c16.759-12.57,15.083-10.894,15.083-10.894l.838,24.3,33.519,28.491-.838-77.093,46.927-33.519,26.815-18.435-2.514,36.033,25.139,17.6,6.7-74.579,58.657-43.575Z\"]\n};\nconst 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};\nconst faSquareOdnoklassniki = {\n prefix: 'fab',\n iconName: 'square-odnoklassniki',\n icon: [448, 512, [\"odnoklassniki-square\"], \"f264\", \"M224 137.1a39.9 39.9 0 1 0 0 79.7 39.9 39.9 0 1 0 0-79.7zM384 32H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64zM224 95.9A81 81 0 1 1 224 258a81 81 0 1 1 0-162.1zm59.3 168.3c16.8-13.2 29.5-5.5 34.1 3.6c7.8 16-1.1 23.7-21.5 37c-17.1 10.9-40.7 15.2-56.2 16.8l13 12.9 47.7 47.7c17.4 17.9-11 45.8-28.6 28.6c-12-12.2-29.5-29.7-47.7-47.9l0 0-47.7 47.9c-17.7 17.2-46-11-28.4-28.6c3.7-3.7 7.9-7.9 12.5-12.5c10.4-10.4 22.6-22.7 35.2-35.2l12.9-12.9c-15.4-1.6-39.3-5.7-56.6-16.8c-20.3-13.3-29.3-20.9-21.4-37c4.6-9.1 17.3-16.8 34.1-3.6c0 0 22.7 18 59.3 18s59.3-18 59.3-18z\"]\n};\nconst faOdnoklassnikiSquare = faSquareOdnoklassniki;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faHashnode = {\n prefix: 'fab',\n iconName: 'hashnode',\n icon: [512, 512, [], \"e499\", \"M35.19 171.1C-11.72 217.1-11.72 294 35.19 340.9L171.1 476.8C217.1 523.7 294 523.7 340.9 476.8L476.8 340.9C523.7 294 523.7 217.1 476.8 171.1L340.9 35.19C294-11.72 217.1-11.72 171.1 35.19L35.19 171.1zM315.5 315.5C282.6 348.3 229.4 348.3 196.6 315.5C163.7 282.6 163.7 229.4 196.6 196.6C229.4 163.7 282.6 163.7 315.5 196.6C348.3 229.4 348.3 282.6 315.5 315.5z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faUbuntu = {\n prefix: 'fab',\n iconName: 'ubuntu',\n icon: [576, 512, [], \"f7df\", \"M469.2 75A75.6 75.6 0 1 0 317.9 75a75.6 75.6 0 1 0 151.2 0zM154.2 240.7A75.6 75.6 0 1 0 3 240.7a75.6 75.6 0 1 0 151.2 0zM57 346C75.6 392.9 108 433 150 461.1s91.5 42.6 142 41.7c-14.7-18.6-22.9-41.5-23.2-65.2c-6.8-.9-13.3-2.1-19.5-3.4c-26.8-5.7-51.9-17.3-73.6-34s-39.3-38.1-51.7-62.5c-20.9 9.9-44.5 12.8-67.1 8.2zm395.1 89.8a75.6 75.6 0 1 0 -151.2 0 75.6 75.6 0 1 0 151.2 0zM444 351.6c18.5 14.8 31.6 35.2 37.2 58.2c33.3-41.3 52.6-92.2 54.8-145.2s-12.5-105.4-42.2-149.4c-8.6 21.5-24 39.6-43.8 51.6c15.4 28.6 22.9 60.8 21.9 93.2s-10.7 64-28 91.6zM101.1 135.4c12.4 2.7 24.3 7.5 35.1 14.3c16.6-24.2 38.9-44.1 64.8-58S255.8 70.4 285.2 70c.2-5.9 .9-11.9 2-17.7c3.6-16.7 11.1-32.3 21.8-45.5c-47.7-3.8-95.4 6-137.6 28.5S94.3 91.7 70.8 133.4c2.7-.2 5.3-.3 8-.3c7.5 0 15 .8 22.4 2.3z\"]\n};\nconst 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};\nconst 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};\nconst faHouzz = {\n prefix: 'fab',\n iconName: 'houzz',\n icon: [448, 512, [], \"f27c\", \"M275.9 330.7H171.3V480H17V32h109.5v104.5l305.1 85.6V480H275.9z\"]\n};\nconst 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};\nconst 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};\nconst faSquarePinterest = {\n prefix: 'fab',\n iconName: 'square-pinterest',\n icon: [448, 512, [\"pinterest-square\"], \"f0d3\", \"M384 32H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64h72.6l-2.2-.8c-5.4-48.1-3.1-57.5 15.7-134.7c3.9-16 8.5-35 13.9-57.9c0 0-7.3-14.8-7.3-36.5c0-70.7 75.5-78 75.5-25c0 13.5-5.4 31.1-11.2 49.8c-3.3 10.6-6.6 21.5-9.1 32c-5.7 24.5 12.3 44.4 36.4 44.4c43.7 0 77.2-46 77.2-112.4c0-58.8-42.3-99.9-102.6-99.9C153 139 112 191.4 112 245.6c0 21.1 8.2 43.7 18.3 56c2 2.4 2.3 4.5 1.7 7c-1.1 4.7-3.1 12.9-4.7 19.2c-1 4-1.8 7.3-2.1 8.6c-1.1 4.5-3.5 5.5-8.2 3.3c-30.6-14.3-49.8-59.1-49.8-95.1C67.2 167.1 123.4 96 229.4 96c85.2 0 151.4 60.7 151.4 141.8c0 84.6-53.3 152.7-127.4 152.7c-24.9 0-48.3-12.9-56.3-28.2c0 0-12.3 46.9-15.3 58.4c-5 19.3-17.6 42.9-27.4 59.3H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64z\"]\n};\nconst faPinterestSquare = faSquarePinterest;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSignalMessenger = {\n prefix: 'fab',\n iconName: 'signal-messenger',\n icon: [512, 512, [], \"e663\", \"M194.6 7.5l5.8 23.3C177.7 36.3 156 45.3 136 57.4L123.7 36.8c22-13.3 45.9-23.2 70.9-29.3zm122.9 0l-5.8 23.3C334.3 36.3 356 45.3 376 57.4l12.4-20.6c-22-13.3-46-23.2-71-29.3zM36.8 123.7c-13.3 22-23.2 45.9-29.3 70.9l23.3 5.8C36.3 177.7 45.3 156 57.4 136L36.8 123.7zM24 256c0-11.6 .9-23.3 2.6-34.8L2.9 217.6c-3.8 25.4-3.8 51.3 0 76.7l23.7-3.6C24.9 279.3 24 267.6 24 256zM388.3 475.2L376 454.6c-20 12.1-41.6 21-64.2 26.6l5.8 23.3c24.9-6.2 48.8-16 70.8-29.3zM488 256c0 11.6-.9 23.3-2.6 34.8l23.7 3.6c3.8-25.4 3.8-51.3 0-76.7l-23.7 3.6c1.7 11.5 2.6 23.1 2.6 34.8zm16.5 61.4l-23.3-5.8c-5.6 22.7-14.5 44.3-26.6 64.3l20.6 12.4c13.3-22 23.2-46 29.3-71zm-213.8 168c-23 3.5-46.5 3.5-69.5 0l-3.6 23.7c25.4 3.8 51.3 3.8 76.7 0l-3.6-23.7zm152-91.8c-13.8 18.7-30.4 35.3-49.2 49.1l14.2 19.3c20.7-15.2 39-33.4 54.2-54.1l-19.3-14.4zM393.6 69.2c18.8 13.8 35.3 30.4 49.2 49.2L462.1 104C446.9 83.4 428.6 65.1 408 49.9L393.6 69.2zM69.2 118.4c13.8-18.8 30.4-35.3 49.2-49.2L104 49.9C83.4 65.1 65.1 83.4 49.9 104l19.3 14.4zm406 5.3L454.6 136c12.1 20 21 41.6 26.6 64.2l23.3-5.8c-6.2-24.9-16-48.8-29.3-70.8zm-254-97.1c23-3.5 46.5-3.5 69.5 0l3.6-23.7C268.9-1 243.1-1 217.6 2.9l3.6 23.7zM81.6 468.4L32 480l11.6-49.6L20.2 425 8.6 474.5c-.9 4-.8 8.1 .3 12.1s3.2 7.5 6.1 10.4s6.5 5 10.4 6.1s8.1 1.2 12.1 .3L87 492l-5.4-23.6zM25.2 403.6L48.6 409l8-34.4c-11.7-19.6-20.4-40.8-25.8-63L7.5 317.4c5.2 21.2 13.2 41.7 23.6 60.8l-5.9 25.3zm112 52l-34.4 8 5.4 23.4 25.3-5.9c19.2 10.4 39.6 18.4 60.8 23.6l5.8-23.3c-22.1-5.5-43.3-14.3-62.8-26l-.2 .2zM256 48c-37.2 0-73.6 10-105.6 28.9s-58.4 46-76.3 78.6s-26.9 69.3-25.8 106.4s12 73.3 31.8 104.8L60 452l85.3-20c27.3 17.2 58.2 27.8 90.3 31s64.5-1.1 94.6-12.6s57.2-29.8 79-53.6s37.8-52.2 46.8-83.2s10.5-63.6 4.7-95.3s-19-61.6-38.4-87.4s-44.5-46.7-73.4-61S288.3 48 256 48z\"]\n};\nconst 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};\nconst faGitlab = {\n prefix: 'fab',\n iconName: 'gitlab',\n icon: [512, 512, [], \"f296\", \"M503.5 204.6L502.8 202.8L433.1 21.02C431.7 17.45 429.2 14.43 425.9 12.38C423.5 10.83 420.8 9.865 417.9 9.57C415 9.275 412.2 9.653 409.5 10.68C406.8 11.7 404.4 13.34 402.4 15.46C400.5 17.58 399.1 20.13 398.3 22.9L351.3 166.9H160.8L113.7 22.9C112.9 20.13 111.5 17.59 109.6 15.47C107.6 13.35 105.2 11.72 102.5 10.7C99.86 9.675 96.98 9.295 94.12 9.587C91.26 9.878 88.51 10.83 86.08 12.38C82.84 14.43 80.33 17.45 78.92 21.02L9.267 202.8L8.543 204.6C-1.484 230.8-2.72 259.6 5.023 286.6C12.77 313.5 29.07 337.3 51.47 354.2L51.74 354.4L52.33 354.8L158.3 434.3L210.9 474L242.9 498.2C246.6 500.1 251.2 502.5 255.9 502.5C260.6 502.5 265.2 500.1 268.9 498.2L300.9 474L353.5 434.3L460.2 354.4L460.5 354.1C482.9 337.2 499.2 313.5 506.1 286.6C514.7 259.6 513.5 230.8 503.5 204.6z\"]\n};\nconst 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};\nconst faRedditAlien = {\n prefix: 'fab',\n iconName: 'reddit-alien',\n icon: [512, 512, [], \"f281\", \"M373 138.6c-25.2 0-46.3-17.5-51.9-41l0 0c-30.6 4.3-54.2 30.7-54.2 62.4l0 .2c47.4 1.8 90.6 15.1 124.9 36.3c12.6-9.7 28.4-15.5 45.5-15.5c41.3 0 74.7 33.4 74.7 74.7c0 29.8-17.4 55.5-42.7 67.5c-2.4 86.8-97 156.6-213.2 156.6S45.5 410.1 43 323.4C17.6 311.5 0 285.7 0 255.7c0-41.3 33.4-74.7 74.7-74.7c17.2 0 33 5.8 45.7 15.6c34-21.1 76.8-34.4 123.7-36.4l0-.3c0-44.3 33.7-80.9 76.8-85.5C325.8 50.2 347.2 32 373 32c29.4 0 53.3 23.9 53.3 53.3s-23.9 53.3-53.3 53.3zM157.5 255.3c-20.9 0-38.9 20.8-40.2 47.9s17.1 38.1 38 38.1s36.6-9.8 37.8-36.9s-14.7-49.1-35.7-49.1zM395 303.1c-1.2-27.1-19.2-47.9-40.2-47.9s-36.9 22-35.7 49.1c1.2 27.1 16.9 36.9 37.8 36.9s39.3-11 38-38.1zm-60.1 70.8c1.5-3.6-1-7.7-4.9-8.1c-23-2.3-47.9-3.6-73.8-3.6s-50.8 1.3-73.8 3.6c-3.9 .4-6.4 4.5-4.9 8.1c12.9 30.8 43.3 52.4 78.7 52.4s65.8-21.6 78.7-52.4z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faNfcSymbol = {\n prefix: 'fab',\n iconName: 'nfc-symbol',\n icon: [576, 512, [], \"e531\", \"M392.9 32.43C400.6 31.1 408.6 32.89 414.1 37.41C498.2 96.14 544 173.7 544 255.1C544 338.2 498.2 415.9 414.1 474.6C409.3 478.6 402.4 480.5 395.5 479.9C388.5 479.3 382 476.3 377.1 471.4L193.7 288.7C188.1 283.2 185 275.7 184.1 267.8C184.1 260 188.1 252.5 193.6 246.9C199.2 241.4 206.7 238.2 214.5 238.2C222.4 238.2 229.9 241.3 235.4 246.8L400.5 411.2C455.1 366.5 484.8 312 484.8 255.1C484.8 193.5 447.9 132.9 380.9 85.76C374.5 81.24 370.1 74.35 368.8 66.62C367.4 58.89 369.2 50.94 373.8 44.53C378.3 38.12 385.2 33.77 392.9 32.43V32.43zM186.9 479.6C179.2 480.9 171.3 479.1 164.8 474.6C81.67 415.9 35.84 338.2 35.84 255.1C35.84 173.7 81.67 96.14 164.8 37.41C170.5 33.4 177.4 31.53 184.4 32.12C191.3 32.71 197.8 35.72 202.7 40.63L386.1 223.3C391.7 228.8 394.8 236.3 394.8 244.2C394.9 251.1 391.8 259.5 386.2 265.1C380.7 270.6 373.2 273.8 365.3 273.8C357.5 273.8 349.1 270.7 344.4 265.2L179.3 100.7C124.7 145.9 95.03 199.9 95.03 255.1C95.03 318.5 131.9 379.1 198.1 426.2C205.4 430.8 209.7 437.6 211.1 445.4C212.4 453.1 210.6 461.1 206.1 467.5C201.6 473.9 194.7 478.2 186.9 479.6V479.6z\"]\n};\nconst faMintbit = {\n prefix: 'fab',\n iconName: 'mintbit',\n icon: [512, 512, [], \"e62f\", \"M73.2 512V438.9H365.7V365.7h73.2V219.4H512V0H292.6V73.1H146.3v73.2H73.2V438.9H0V512H73.2zm73.1-219.4h73.2v73.1H146.3V292.6zm73.2-73.1h73.1v73.1H219.4V219.4zm73.1 0V146.3h73.2v73.1H292.6zM365.7 73.1h73.2v73.2H365.7V73.1z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst faPatreon = {\n prefix: 'fab',\n iconName: 'patreon',\n icon: [512, 512, [], \"f3d9\", \"M489.7 153.8c-.1-65.4-51-119-110.7-138.3C304.8-8.5 207-5 136.1 28.4C50.3 68.9 23.3 157.7 22.3 246.2C21.5 319 28.7 510.6 136.9 512c80.3 1 92.3-102.5 129.5-152.3c26.4-35.5 60.5-45.5 102.4-55.9c72-17.8 121.1-74.7 121-150z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faBraveReverse = {\n prefix: 'fab',\n iconName: 'brave-reverse',\n icon: [448, 512, [], \"e63d\", \"M298 0c3 0 5.8 1.3 7.8 3.6l38.1 44c.5-.1 1-.2 1.5-.3c9.2-1.6 18.6-2.2 27.7-1.2c11.6 1.4 21.5 5.4 28.9 12.9c7.7 7.8 15.4 15.8 22.6 23.6c2.5 2.7 4.9 5.2 6.9 7.4c.7 .8 1.4 1.5 1.9 2c3.4 3.7 4.2 8.1 2.7 11.9l-9.8 24.6 13.1 38.1c.7 2 .8 4.1 .2 6.2c-.1 .4-.1 .4-.5 2.1c-.6 2.3-.6 2.3-1.5 5.8c-1.6 6.3-3.5 13.3-5.4 20.9c-5.6 21.6-11.2 43.2-16.4 63.4c-12.9 49.9-21.4 82.7-23.4 90.9c-11.1 44.5-19.9 60-48.3 80.3c-24.9 17.8-76.8 53.6-86.8 60c-1 .6-2 1.3-3.4 2.3c-.5 .4-3.2 2.2-3.9 2.7c-4.9 3.3-8.3 5.5-12.1 7.3c-4.7 2.2-9.3 3.5-13.9 3.5s-9.1-1.2-13.9-3.5c-3.7-1.8-7.2-3.9-12.1-7.3c-.8-.5-3.4-2.4-3.9-2.7c-1.4-1-2.5-1.7-3.4-2.3c-10-6.4-61.9-42.1-86.8-60c-28.4-20.4-37.2-35.8-48.3-80.3c-2-8.2-10.5-41-23.3-90.5c-5.3-20.6-10.9-42.2-16.5-63.8c-2-7.6-3.8-14.6-5.4-20.9c-.9-3.5-.9-3.5-1.5-5.8c-.4-1.7-.4-1.7-.5-2.1c-.5-2-.4-4.2 .2-6.2l13.1-38.1L11.8 104c-1.5-3.8-.7-8.2 2-11.2c1.2-1.3 1.8-2 2.6-2.8c2-2.2 4.4-4.7 6.9-7.4C30.6 74.9 38.3 66.9 46 59.1c7.4-7.5 17.3-11.6 28.9-12.9c9.1-1.1 18.5-.5 27.7 1.2c.5 .1 1 .2 1.5 .3l38.1-44C144.2 1.3 147 0 150 0H298zm-4.7 21.1H154.7L115.6 66.2c-2.6 3-6.7 4.3-10.6 3.2c-.2-.1-.7-.2-1.5-.4c-1.3-.3-2.9-.6-4.5-.9c-7.4-1.3-14.9-1.8-21.7-1C70 68 64.3 70.3 60.7 74c-7.6 7.7-15.2 15.6-22.3 23.3c-1.7 1.8-3.3 3.5-4.8 5.1l8.8 22c1 2.4 1 5 .2 7.5L29.2 170.6c.4 1.4 .5 1.9 1.2 4.8c1.6 6.3 3.5 13.3 5.4 20.9c5.6 21.6 11.2 43.2 16.4 63.4c12.9 50 21.4 82.8 23.4 91C85.7 390.8 92 402 115.8 419c24.6 17.6 76.3 53.2 85.9 59.3c1.2 .8 2.5 1.6 4 2.7c.6 .4 3.2 2.2 3.9 2.7c4 2.8 6.7 4.4 9.2 5.6c2.2 1 3.9 1.5 5.1 1.5s2.9-.5 5.1-1.5c2.5-1.2 5.2-2.8 9.2-5.6c.7-.5 3.3-2.3 3.9-2.7c1.6-1.1 2.8-1.9 4-2.7c9.6-6.1 61.3-41.7 85.9-59.3c23.8-17.1 30.2-28.2 40.1-68.3c2.1-8.3 10.5-41.1 23.3-90.7c5.3-20.6 10.9-42.2 16.5-63.8c2-7.6 3.8-14.6 5.4-20.9c.7-2.9 .9-3.4 1.2-4.8l-13.3-38.8c-.8-2.4-.8-5.1 .2-7.5l8.8-22c-1.5-1.6-3.1-3.3-4.8-5.1c-7.2-7.6-14.7-15.5-22.3-23.3c-3.7-3.7-9.3-6-16.6-6.9c-6.8-.8-14.4-.3-21.7 1c-1.7 .3-3.2 .6-4.5 .9c-.8 .2-1.3 .3-1.5 .4c-3.8 1.1-7.9-.2-10.6-3.2L293.3 21.1zM224 316c2.8 0 20.9 6.5 35.4 14.1s25 13 28.3 15.2s1.3 6.2-1.7 8.4s-44.1 34.6-48.1 38.2s-9.8 9.5-13.8 9.5s-9.8-5.9-13.8-9.5s-45.1-36-48.1-38.2s-5.1-6.2-1.7-8.4s13.9-7.5 28.3-15.2s32.5-14.1 35.4-14.1zm.1-230.7c.7 0 8.8 .2 20.5 4.2c12.3 4.2 25.7 9.4 31.9 9.4s51.9-8.9 51.9-8.9s54.2 66.7 54.2 81s-6.8 18-13.7 25.4s-36.8 39.8-40.7 43.9s-11.9 10.5-7.1 21.8s11.7 25.8 3.9 40.4s-21 24.4-29.4 22.8s-28.4-12.2-35.7-17.1s-30.5-24.3-30.5-31.8s24-20.8 28.4-23.9s24.7-14.8 25.1-19.4s.3-6-5.7-17.4s-16.7-26.7-14.9-36.8s19.1-15.4 31.5-20.2s36.2-13.7 39.2-15.1s2.2-2.7-6.8-3.6s-34.6-4.3-46.1-1.1s-31.2 8.2-32.8 10.9s-3 2.7-1.4 11.8s10.1 52.8 10.9 60.6s2.4 12.9-5.8 14.8s-22.1 5.2-26.8 5.2s-18.6-3.3-26.8-5.2s-6.6-7-5.8-14.8s9.3-51.5 10.9-60.6s.2-9.2-1.4-11.8s-21.3-7.6-32.8-10.9s-37.1 .2-46.1 1.1s-9.8 2.2-6.8 3.6s26.8 10.4 39.2 15.1s29.7 10 31.5 20.2s-9 25.4-14.9 36.8s-6.1 12.8-5.7 17.4s20.6 16.4 25.1 19.4s28.4 16.4 28.4 23.9s-23.2 27-30.5 31.8s-27.2 15.4-35.7 17.1s-21.7-8.2-29.4-22.8s-.8-29.1 3.9-40.4s-3.3-17.7-7.1-21.8s-33.8-36.5-40.7-43.9s-13.7-11.2-13.7-25.4s54.2-81 54.2-81s45.8 8.9 51.9 8.9s19.5-5.2 31.9-9.4s20.6-4.2 20.6-4.2l.1 0z\"]\n};\nconst faFacebookF = {\n prefix: 'fab',\n iconName: 'facebook-f',\n icon: [320, 512, [], \"f39e\", \"M80 299.3V512H196V299.3h86.5l18-97.8H196V166.9c0-51.7 20.3-71.5 72.7-71.5c16.3 0 29.4 .4 37 1.2V7.9C291.4 4 256.4 0 236.2 0C129.3 0 80 50.5 80 159.4v42.1H14v97.8H80z\"]\n};\nconst faSquareGooglePlus = {\n prefix: 'fab',\n iconName: 'square-google-plus',\n icon: [448, 512, [\"google-plus-square\"], \"f0d4\", \"M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM64 256c0-55.3 44.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.4c-34.1 0-61.9 28.2-61.9 63.2c0 34.9 27.8 63.2 61.9 63.2c39.6 0 54.4-28.5 56.8-43.1H164V241.8h94.4c1 5 1.6 10.1 1.6 16.6c0 57.1-38.3 97.6-96 97.6c-55.3 0-100-44.7-100-100zm291 18.2v29H325.8v-29h-29V245h29V216H355v29h29v29.2H355z\"]\n};\nconst faGooglePlusSquare = faSquareGooglePlus;\nconst faWebAwesome = {\n prefix: 'fab',\n iconName: 'web-awesome',\n icon: [640, 512, [], \"e682\", \"M372.2 52c0 20.9-12.4 39-30.2 47.2L448 192l104.4-20.9c-5.3-7.7-8.4-17.1-8.4-27.1c0-26.5 21.5-48 48-48s48 21.5 48 48c0 26-20.6 47.1-46.4 48L481 442.3c-10.3 23-33.2 37.7-58.4 37.7l-205.2 0c-25.2 0-48-14.8-58.4-37.7L46.4 192C20.6 191.1 0 170 0 144c0-26.5 21.5-48 48-48s48 21.5 48 48c0 10.1-3.1 19.4-8.4 27.1L192 192 298.1 99.1c-17.7-8.3-30-26.3-30-47.1c0-28.7 23.3-52 52-52s52 23.3 52 52z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareXing = {\n prefix: 'fab',\n iconName: 'square-xing',\n icon: [448, 512, [\"xing-square\"], \"f169\", \"M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM93.8 320.2c-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.2c-3.5 6.2-7.7 9.1-12.6 9.1H93.8zm163.5-33.4v.2l65.5 119c2.8 5.1 .1 10.1-6 10.1H270.2c-5.5 0-9.7-2.9-12.9-8.7l-66-120.3c1.8-3.2 22.9-40.4 63.3-111.6c11.7-20.7 25.1-44.3 40.1-70.8c3.3-5.8 7.4-8.7 12.5-8.7h46.9c5.7-.1 8.8 4.7 6 10L257.3 286.8z\"]\n};\nconst faXingSquare = faSquareXing;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSoundcloud = {\n prefix: 'fab',\n iconName: 'soundcloud',\n icon: [640, 512, [], \"f1be\", \"M639.8 298.6c-1.3 23.1-11.5 44.8-28.4 60.5s-39.2 24.4-62.3 24.1h-218c-4.8 0-9.4-2-12.8-5.4s-5.3-8-5.3-12.8V130.2c-.2-4 .9-8 3.1-11.4s5.3-6.1 9-7.7c0 0 20.1-13.9 62.3-13.9c25.8 0 51.1 6.9 73.3 20.1c17.3 10.2 32.3 23.8 44.1 40.1s20 34.8 24.2 54.4c7.5-2.1 15.3-3.2 23.1-3.2c11.7-.1 23.3 2.2 34.2 6.7S606.8 226.6 615 235s14.6 18.3 18.9 29.3s6.3 22.6 5.9 34.3zm-354-153.5c.1-1 0-2-.3-2.9s-.8-1.8-1.5-2.6s-1.5-1.3-2.4-1.7s-1.9-.6-2.9-.6s-2 .2-2.9 .6s-1.7 1-2.4 1.7s-1.2 1.6-1.5 2.6s-.4 1.9-.3 2.9c-6 78.9-10.6 152.9 0 231.6c.2 1.7 1 3.3 2.3 4.5s3 1.8 4.7 1.8s3.4-.6 4.7-1.8s2.1-2.8 2.3-4.5c11.3-79.4 6.6-152 0-231.6zm-44 27.3c-.2-1.8-1.1-3.5-2.4-4.7s-3.1-1.9-5-1.9s-3.6 .7-5 1.9s-2.2 2.9-2.4 4.7c-7.9 67.9-7.9 136.5 0 204.4c.3 1.8 1.2 3.4 2.5 4.5s3.1 1.8 4.8 1.8s3.5-.6 4.8-1.8s2.2-2.8 2.5-4.5c8.8-67.8 8.8-136.5 .1-204.4zm-44.3-6.9c-.2-1.8-1-3.4-2.3-4.6s-3-1.8-4.8-1.8s-3.5 .7-4.8 1.8s-2.1 2.8-2.3 4.6c-6.7 72-10.2 139.3 0 211.1c0 1.9 .7 3.7 2.1 5s3.1 2.1 5 2.1s3.7-.7 5-2.1s2.1-3.1 2.1-5c10.5-72.8 7.3-138.2 .1-211.1zm-44 20.6c0-1.9-.8-3.8-2.1-5.2s-3.2-2.1-5.2-2.1s-3.8 .8-5.2 2.1s-2.1 3.2-2.1 5.2c-8.1 63.3-8.1 127.5 0 190.8c.2 1.8 1 3.4 2.4 4.6s3.1 1.9 4.8 1.9s3.5-.7 4.8-1.9s2.2-2.8 2.4-4.6c8.8-63.3 8.9-127.5 .3-190.8zM109 233.7c0-1.9-.8-3.8-2.1-5.1s-3.2-2.1-5.1-2.1s-3.8 .8-5.1 2.1s-2.1 3.2-2.1 5.1c-10.5 49.2-5.5 93.9 .4 143.6c.3 1.6 1.1 3.1 2.3 4.2s2.8 1.7 4.5 1.7s3.2-.6 4.5-1.7s2.1-2.5 2.3-4.2c6.6-50.4 11.6-94.1 .4-143.6zm-44.1-7.5c-.2-1.8-1.1-3.5-2.4-4.8s-3.2-1.9-5-1.9s-3.6 .7-5 1.9s-2.2 2.9-2.4 4.8c-9.3 50.2-6.2 94.4 .3 144.5c.7 7.6 13.6 7.5 14.4 0c7.2-50.9 10.5-93.8 .3-144.5zM20.3 250.8c-.2-1.8-1.1-3.5-2.4-4.8s-3.2-1.9-5-1.9s-3.6 .7-5 1.9s-2.3 2.9-2.4 4.8c-8.5 33.7-5.9 61.6 .6 95.4c.2 1.7 1 3.3 2.3 4.4s2.9 1.8 4.7 1.8s3.4-.6 4.7-1.8s2.1-2.7 2.3-4.4c7.5-34.5 11.2-61.8 .4-95.4z\"]\n};\nconst 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};\nconst 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};\nconst faLetterboxd = {\n prefix: 'fab',\n iconName: 'letterboxd',\n icon: [640, 512, [], \"e62d\", \"M521.3 128C586.9 128 640 181.1 640 246.6s-53.1 118.6-118.7 118.6c-42.5 0-79.7-22.3-100.7-55.8c11.4-18.2 18-39.7 18-62.8s-6.6-44.6-18-62.8l0 0 .8-1.2c20.8-32.3 56.8-53.9 97.9-54.6l2 0zM320 128c42.5 0 79.7 22.3 100.7 55.8c-11.4 18.2-18 39.7-18 62.8s6.6 44.6 18 62.8l0 0-.8 1.2c-20.8 32.3-56.8 53.9-97.9 54.6l-2 0c-42.5 0-79.7-22.3-100.7-55.8c11.4-18.2 18-39.7 18-62.8s-6.6-44.6-18-62.8l0 0 .8-1.2c20.8-32.3 56.8-53.9 97.9-54.6l2 0zm-201.3 0c42.5 0 79.7 22.3 100.7 55.8c-11.4 18.2-18 39.7-18 62.8s6.6 44.6 18 62.8l0 0-.8 1.2c-20.8 32.3-56.8 53.9-97.9 54.6l-2 0C53.1 365.1 0 312.1 0 246.6S53.1 128 118.7 128z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faBilibili = {\n prefix: 'fab',\n iconName: 'bilibili',\n icon: [512, 512, [], \"e3d9\", \"M488.6 104.1C505.3 122.2 513 143.8 511.9 169.8V372.2C511.5 398.6 502.7 420.3 485.4 437.3C468.2 454.3 446.3 463.2 419.9 464H92.02C65.57 463.2 43.81 454.2 26.74 436.8C9.682 419.4 .7667 396.5 0 368.2V169.8C.7667 143.8 9.682 122.2 26.74 104.1C43.81 87.75 65.57 78.77 92.02 78H121.4L96.05 52.19C90.3 46.46 87.42 39.19 87.42 30.4C87.42 21.6 90.3 14.34 96.05 8.603C101.8 2.868 109.1 0 117.9 0C126.7 0 134 2.868 139.8 8.603L213.1 78H301.1L375.6 8.603C381.7 2.868 389.2 0 398 0C406.8 0 414.1 2.868 419.9 8.603C425.6 14.34 428.5 21.6 428.5 30.4C428.5 39.19 425.6 46.46 419.9 52.19L394.6 78L423.9 78C450.3 78.77 471.9 87.75 488.6 104.1H488.6zM449.8 173.8C449.4 164.2 446.1 156.4 439.1 150.3C433.9 144.2 425.1 140.9 416.4 140.5H96.05C86.46 140.9 78.6 144.2 72.47 150.3C66.33 156.4 63.07 164.2 62.69 173.8V368.2C62.69 377.4 65.95 385.2 72.47 391.7C78.99 398.2 86.85 401.5 96.05 401.5H416.4C425.6 401.5 433.4 398.2 439.7 391.7C446 385.2 449.4 377.4 449.8 368.2L449.8 173.8zM185.5 216.5C191.8 222.8 195.2 230.6 195.6 239.7V273C195.2 282.2 191.9 289.9 185.8 296.2C179.6 302.5 171.8 305.7 162.2 305.7C152.6 305.7 144.7 302.5 138.6 296.2C132.5 289.9 129.2 282.2 128.8 273V239.7C129.2 230.6 132.6 222.8 138.9 216.5C145.2 210.2 152.1 206.9 162.2 206.5C171.4 206.9 179.2 210.2 185.5 216.5H185.5zM377 216.5C383.3 222.8 386.7 230.6 387.1 239.7V273C386.7 282.2 383.4 289.9 377.3 296.2C371.2 302.5 363.3 305.7 353.7 305.7C344.1 305.7 336.3 302.5 330.1 296.2C323.1 289.9 320.7 282.2 320.4 273V239.7C320.7 230.6 324.1 222.8 330.4 216.5C336.7 210.2 344.5 206.9 353.7 206.5C362.9 206.9 370.7 210.2 377 216.5H377z\"]\n};\nconst 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};\nconst faXTwitter = {\n prefix: 'fab',\n iconName: 'x-twitter',\n icon: [512, 512, [], \"e61b\", \"M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z\"]\n};\nconst 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};\nconst 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};\nconst fa42Group = {\n prefix: 'fab',\n iconName: '42-group',\n icon: [640, 512, [\"innosoft\"], \"e080\", \"M320 96V416C341.011 416 361.818 411.861 381.23 403.821C400.641 395.78 418.28 383.995 433.138 369.138C447.995 354.28 459.78 336.641 467.821 317.23C475.861 297.818 480 277.011 480 256C480 234.989 475.861 214.182 467.821 194.771C459.78 175.359 447.995 157.72 433.138 142.863C418.28 128.005 400.641 116.22 381.23 108.179C361.818 100.139 341.011 96 320 96ZM0 256L160.002 416L320.003 256L160.002 96L0 256ZM480 256C480 277.011 484.138 297.818 492.179 317.23C500.219 336.643 512.005 354.28 526.862 369.138C541.72 383.995 559.357 395.781 578.77 403.821C598.182 411.862 618.989 416 640 416V96C597.565 96 556.869 112.858 526.862 142.863C496.857 172.869 480 213.565 480 256Z\"]\n};\nconst faInnosoft = fa42Group;\nconst 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};\nconst faElementor = {\n prefix: 'fab',\n iconName: 'elementor',\n icon: [512, 512, [], \"f430\", \"M.361 256C.361 397 114 511 255 511C397 511 511 397 511 256C511 116 397 2.05 255 2.05C114 2.05 .361 116 .361 256zM192 150V363H149V150H192zM234 150H362V193H234V150zM362 235V278H234V235H362zM234 320H362V363H234V320z\"]\n};\nconst faSquarePiedPiper = {\n prefix: 'fab',\n iconName: 'square-pied-piper',\n icon: [448, 512, [\"pied-piper-square\"], \"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};\nconst faPiedPiperSquare = faSquarePiedPiper;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareWebAwesomeStroke = {\n prefix: 'fab',\n iconName: 'square-web-awesome-stroke',\n icon: [448, 512, [], \"e684\", \"M64 64C46.3 64 32 78.3 32 96l0 320c0 17.7 14.3 32 32 32l320 0c17.7 0 32-14.3 32-32l0-320c0-17.7-14.3-32-32-32L64 64zM0 96C0 60.7 28.7 32 64 32l320 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zm235 81.6L288 224l52.2-10.4c-2.6-3.9-4.2-8.5-4.2-13.6c0-13.3 10.7-24 24-24s24 10.7 24 24c0 13-10.3 23.6-23.2 24L304.5 349.1c-5.2 11.5-16.6 18.9-29.2 18.9l-102.6 0c-12.6 0-24-7.4-29.2-18.9L87.2 224C74.3 223.6 64 213 64 200c0-13.3 10.7-24 24-24s24 10.7 24 24c0 5-1.5 9.7-4.2 13.6L160 224l53.1-46.4c-8.9-4.1-15-13.1-15-23.6c0-14.4 11.6-26 26-26s26 11.6 26 26c0 10.5-6.2 19.5-15.1 23.6z\"]\n};\nconst 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};\nconst 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};\nconst faSquareFacebook = {\n prefix: 'fab',\n iconName: 'square-facebook',\n icon: [448, 512, [\"facebook-square\"], \"f082\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64h98.2V334.2H109.4V256h52.8V222.3c0-87.1 39.4-127.5 125-127.5c16.2 0 44.2 3.2 55.7 6.4V172c-6-.6-16.5-1-29.6-1c-42 0-58.2 15.9-58.2 57.2V256h83.6l-14.4 78.2H255V480H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64z\"]\n};\nconst faFacebookSquare = faSquareFacebook;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faFlutter = {\n prefix: 'fab',\n iconName: 'flutter',\n icon: [448, 512, [], \"e694\", \"M429.5 236.3L291.7 374.1 429.5 512H272l-59.1-59.1-78.8-78.8L272 236.3H429.5zM272 0L16 256l78.8 78.8L429.5 0H272z\"]\n};\nconst 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};\nconst 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};\nconst faSquareLastfm = {\n prefix: 'fab',\n iconName: 'square-lastfm',\n icon: [448, 512, [\"lastfm-square\"], \"f203\", \"M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM210.7 280.8c-1.8-5.5-3.4-10.8-5-15.9c-12.9-41.9-21-68.4-58-68.4c-22.4 0-45.1 16.1-45.1 61.2c0 35.2 18 57.2 43.3 57.2c28.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.8c0-57.9 28.6-92 82.5-92c67.9 0 79.3 35.3 96.4 88.4c1.4 4.4 2.9 8.9 4.4 13.5c8.8 26.8 24.2 46.2 61.2 46.2c24.9 0 38.1-5.5 38.1-19.1c0-17.5-16.9-21.2-40-26.4c-3.2-.7-6.5-1.4-9.9-2.2c-30.4-7.3-42.5-23.1-42.5-48c0-40 32.3-52.4 65.2-52.4c37.4 0 60.1 13.6 63 46.6l-36.7 4.4c-1.5-15.8-11-22.4-28.6-22.4c-16.1 0-26 7.3-26 19.8c0 11 4.8 17.6 20.9 21.3c2.2 .5 4.5 1 6.7 1.4c31.1 6.5 65.1 13.7 65.1 56.1c.1 36.7-30.7 50.6-76.1 50.6c-63.4 0-85.4-28.6-97.1-64.1z\"]\n};\nconst faLastfmSquare = faSquareLastfm;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faCmplid = {\n prefix: 'fab',\n iconName: 'cmplid',\n icon: [640, 512, [], \"e360\", \"M226.119,388.165a3.816,3.816,0,0,0-2.294-3.5,3.946,3.946,0,0,0-1.629-.385L72.6,384.3a19.243,19.243,0,0,1-17.924-26.025L81.585,255.692a35.72,35.72,0,0,1,32.373-26H262.525a7.07,7.07,0,0,0,6.392-5.194l10.769-41.131a3.849,3.849,0,0,0-2.237-4.937,3.755,3.755,0,0,0-1.377-.261c-.063,0-.126,0-.189.005H127.38a106.8,106.8,0,0,0-96.99,77.1L3.483,358.824A57.469,57.469,0,0,0,57.314,436q1.43,0,2.86-.072H208.742a7.131,7.131,0,0,0,6.391-5.193L225.839,389.6A3.82,3.82,0,0,0,226.119,388.165ZM306.658,81.2a3.861,3.861,0,0,0,.251-1.367A3.813,3.813,0,0,0,303.079,76c-.064,0-.128,0-.192,0h-41A7.034,7.034,0,0,0,255.5,81.2l-21.347,80.915h51.131ZM180.364,368.249H231.5L263.452,245.69H212.321ZM511.853,79.723a3.809,3.809,0,0,0-3.8-3.661c-.058,0-.137,0-.23.007h-41a7.1,7.1,0,0,0-6.584,5.129L368.91,430.634a3.54,3.54,0,0,0-.262,1.335,3.873,3.873,0,0,0,3.864,3.863c.056,0,.112,0,.169,0h41a7.068,7.068,0,0,0,6.392-5.193L511.533,81.2A3.624,3.624,0,0,0,511.853,79.723ZM324.649,384.47h-41a7.2,7.2,0,0,0-6.392,5.194L266.52,430.8a3.662,3.662,0,0,0-.268,1.374A3.783,3.783,0,0,0,270.023,436c.06,0,.166,0,.3-.012h40.905a7.036,7.036,0,0,0,6.391-5.193l10.769-41.131a3.75,3.75,0,0,0-3.445-5.208c-.108,0-.217,0-.326.014Zm311.324-308.4h-41a7.066,7.066,0,0,0-6.392,5.129l-91.46,349.436a4.073,4.073,0,0,0-.229,1.347,3.872,3.872,0,0,0,3.863,3.851c.056,0,.112,0,.169,0h40.968a7.1,7.1,0,0,0,6.392-5.193L639.68,81.2a3.624,3.624,0,0,0,.32-1.475,3.841,3.841,0,0,0-3.821-3.564c-.068,0-.137,0-.206.006ZM371.562,225.236l10.8-41.1a4.369,4.369,0,0,0,.227-1.388,3.869,3.869,0,0,0-3.861-3.842c-.057,0-.113,0-.169,0h-41.1a7.292,7.292,0,0,0-6.391,5.226l-10.834,41.1a4.417,4.417,0,0,0-.26,1.493c0,.069,0,.138,0,.206a3.776,3.776,0,0,0,3.757,3.507c.076,0,.18,0,.3-.012h41.129A7.034,7.034,0,0,0,371.562,225.236Z\"]\n};\nconst faUpwork = {\n prefix: 'fab',\n iconName: 'upwork',\n icon: [641, 512, [], \"e641\", \"M494.7 295.6c-50.3 0-83.5-38.9-92.8-53.9c11.9-95.3 46.8-125.4 92.8-125.4c45.5 0 80.9 36.4 80.9 89.7s-35.4 89.7-80.9 89.7zm0-237.8c-81.9 0-127.8 53.4-141 108.4c-14.9-28-25.9-65.5-34.5-100.3H206v141c0 51.1-23.3 89-68.8 89s-71.6-37.8-71.6-89l.5-141H.8v141c0 41.1 13.3 78.4 37.6 105.1c25 27.5 59.2 41.8 98.8 41.8c78.8 0 133.8-60.4 133.8-146.9V112.1c8.2 31.2 27.8 91.1 65.3 143.6l-35 199.4h66.4l23.1-141.3c7.6 6.3 15.7 12 24.2 17c22.2 14 47.7 21.9 73.9 22.8c0 0 4 .2 6.1 .2c81.2 0 145.9-62.9 145.9-147.8s-64.8-148.1-146-148.1z\"]\n};\nconst faFacebook = {\n prefix: 'fab',\n iconName: 'facebook',\n icon: [512, 512, [62000], \"f09a\", \"M512 256C512 114.6 397.4 0 256 0S0 114.6 0 256C0 376 82.7 476.8 194.2 504.5V334.2H141.4V256h52.8V222.3c0-87.1 39.4-127.5 125-127.5c16.2 0 44.2 3.2 55.7 6.4V172c-6-.6-16.5-1-29.6-1c-42 0-58.2 15.9-58.2 57.2V256h83.6l-14.4 78.2H287V510.1C413.8 494.8 512 386.9 512 256h0z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faUssunnah = {\n prefix: 'fab',\n iconName: 'ussunnah',\n icon: [482, 512, [], \"f407\", \"M481.9 268.1A240.9 240.9 0 1 1 .1 268a240.9 240.9 0 1 1 481.9 0zM24.5 268a216.5 216.5 0 1 0 432.9 0A216.5 216.5 0 1 0 24.5 268zm385.9 63.3c-12.7 0-21.6-1.9-26.7-5.9c-5.5-4.3-8.2-12.3-8.2-23.8V205.1c0-6.5-5.2-20.2-15.7-41.2c7 0 17-9.1 30-27.2V284.5c0 11 2.4 19.4 7 25.3c3.7 4.7 10.1 8.9 19 12.6c1.2 .4 2.6 .9 4.1 1.4c2.9 .9 6.3 2.1 10.3 3.5c-1.8 2.7-8.3 4-19.9 4zm-219 0c-1.3 2.4-3.6 5.5-6.8 9.4l-18.5 22.5c-1-6.1-4-13-9.3-20.6s-9.7-11.4-13.4-11.4h-8.3H53.6c3.3-5.3 4.9-8.8 4.9-10.8c0-2-.8-5.3-2.4-9.7c-1.5-4.4-2.4-8.5-2.4-12.4c0-7.4 2.1-13.9 6.3-19.3L80 253.4l-7.1-17.7L89 215.9l6.7 16.8 8-10.3c-1.8 6.4-2.6 12.3-2.6 17.7c0 4.2 2.8 13.3 8.3 27.3l16.2 40.7H135h8 .3c2.8 .4 7.7 5 14.6 13.9c1.8 2.4 4.3 5.8 7.7 10.2c1.4 1.9 2.9 3.9 4.6 6.1c1.3-2.3 2-4.6 2-7.1c0-2-1.3-6.6-4-13.4L163 304.1c-4-10.6-6.1-17.7-6.1-21.3c0-6.3 1.9-12.3 5.8-17.9c.5-.6 1-1.3 1.5-1.9c4.4-5.6 8.8-11.1 13.3-16.5c-1.1 4.6-1.7 8.7-1.7 12c0 3.7 1.7 9.9 5.1 18.8l7.9 20.4c1.9 4.7 3 8.2 3.7 10.3h17.6 8.3l-.9-2.6c-1.4-3.9-4-7-7.7-9.3l15.6-20.1 12.3 32h13.4L245 292.2c-1.5-3.9-4-7-7.7-9.3L253 262.8 270.3 308h13.4l-11.4-29.4c-1.5-3.9-4-7-7.7-9.3l15.6-20L302.6 308h10.3 8.3 7.6c1.5 0 3-1.1 4.5-3.1s2.2-4.1 2.2-6.3V205.1c0-6.5-4.5-20.3-13.7-41.2c5.4 0 14.1-9.1 26.2-27.2V300.2c0 7.2 .6 12 1.7 14.6c1.6 3.4 5.3 6.2 11.1 8.2c-3.9 5.6-8.7 8.5-14.5 8.5H321.1h-8.3H210.5h-19zM93.4 287.3c-2.7-6.7-4-11.7-4-15c-.6 1.2-2.4 3.7-5.4 7.6c-1.4 1.9-2.2 3.7-2.2 5.3c0 2.6 .8 5.7 2.2 9.3l5.6 13.9h0c5 0 9 0 11.9-.1l-8.2-20.9zm13.5-72.4c-3-5.2-7-9.3-11.9-11.9c-3.5-1.9-5.3-4.3-5.3-7.4c0-2.4 4.6-8.6 14-18.3c.2 3.8 1.9 7.6 4.9 11.2c3.1 3.6 4.6 7 4.6 10.1c0 2.6-2.1 8-6.2 16.3zm-27.6 0c-3-5.2-7-9.3-11.9-11.9c-3.5-1.9-5.3-4.3-5.3-7.4c0-2.4 4.6-8.6 14-18.3c.2 3.8 1.9 7.6 4.9 11.2c3.1 3.6 4.6 7 4.6 10.1c0 2.6-2.1 8-6.2 16.3zm87 27.5c-3-5.2-7-9.3-11.9-11.9c-3.5-1.9-5.3-4.3-5.3-7.4c0-2.4 4.6-8.6 14-18.3c.2 3.8 1.9 7.6 4.9 11.2c3.1 3.6 4.6 7 4.6 10.1c0 2.6-2.1 8-6.2 16.3z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareUpwork = {\n prefix: 'fab',\n iconName: 'square-upwork',\n icon: [448, 512, [], \"e67c\", \"M56 32l336 0c30.9 0 56 25.1 56 56l0 336c0 30.9-25.1 56-56 56L56 480c-30.9 0-56-25.1-56-56L0 88C0 57.1 25.1 32 56 32zM270.9 274.2c6.6-52.9 25.9-69.5 51.4-69.5c25.3 0 44.9 20.2 44.9 49.7s-19.7 49.7-44.9 49.7c-27.9 0-46.3-21.5-51.4-29.9zm-26.7-41.8c-8.2-15.5-14.3-36.3-19.2-55.6l-29.7 0-33.2 0 0 78.1c0 28.4-12.9 49.4-38.2 49.4s-39.8-20.9-39.8-49.3l.3-78.1-36.2 0 0 78.1c0 22.8 7.4 43.5 20.9 58.2c13.9 15.2 32.8 23.2 54.8 23.2c43.7 0 74.2-33.5 74.2-81.5l0-52.5c4.6 17.3 15.4 50.5 36.2 79.7L215 392.6l36.8 0 12.8-78.4c4.2 3.5 8.7 6.6 13.4 9.4c12.3 7.8 26.4 12.2 40.9 12.6l.1 0c.5 0 1.1 0 1.6 0c.6 0 1.1 0 1.7 0c45.1 0 80.9-34.9 80.9-81.9s-35.9-82.2-80.9-82.2c-45.4 0-70.9 29.7-78.1 60.1z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst faLine = {\n prefix: 'fab',\n iconName: 'line',\n icon: [512, 512, [], \"f3c0\", \"M311 196.8v81.3c0 2.1-1.6 3.7-3.7 3.7h-13c-1.3 0-2.4-.7-3-1.5l-37.3-50.3v48.2c0 2.1-1.6 3.7-3.7 3.7h-13c-2.1 0-3.7-1.6-3.7-3.7V196.9c0-2.1 1.6-3.7 3.7-3.7h12.9c1.1 0 2.4 .6 3 1.6l37.3 50.3V196.9c0-2.1 1.6-3.7 3.7-3.7h13c2.1-.1 3.8 1.6 3.8 3.5zm-93.7-3.7h-13c-2.1 0-3.7 1.6-3.7 3.7v81.3c0 2.1 1.6 3.7 3.7 3.7h13c2.1 0 3.7-1.6 3.7-3.7V196.8c0-1.9-1.6-3.7-3.7-3.7zm-31.4 68.1H150.3V196.8c0-2.1-1.6-3.7-3.7-3.7h-13c-2.1 0-3.7 1.6-3.7 3.7v81.3c0 1 .3 1.8 1 2.5c.7 .6 1.5 1 2.5 1h52.2c2.1 0 3.7-1.6 3.7-3.7v-13c0-1.9-1.6-3.7-3.5-3.7zm193.7-68.1H327.3c-1.9 0-3.7 1.6-3.7 3.7v81.3c0 1.9 1.6 3.7 3.7 3.7h52.2c2.1 0 3.7-1.6 3.7-3.7V265c0-2.1-1.6-3.7-3.7-3.7H344V247.7h35.5c2.1 0 3.7-1.6 3.7-3.7V230.9c0-2.1-1.6-3.7-3.7-3.7H344V213.5h35.5c2.1 0 3.7-1.6 3.7-3.7v-13c-.1-1.9-1.7-3.7-3.7-3.7zM512 93.4V419.4c-.1 51.2-42.1 92.7-93.4 92.6H92.6C41.4 511.9-.1 469.8 0 418.6V92.6C.1 41.4 42.2-.1 93.4 0H419.4c51.2 .1 92.7 42.1 92.6 93.4zM441.6 233.5c0-83.4-83.7-151.3-186.4-151.3s-186.4 67.9-186.4 151.3c0 74.7 66.3 137.4 155.9 149.3c21.8 4.7 19.3 12.7 14.4 42.1c-.8 4.7-3.8 18.4 16.1 10.1s107.3-63.2 146.5-108.2c27-29.7 39.9-59.8 39.9-93.1z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst faBitbucket = {\n prefix: 'fab',\n iconName: 'bitbucket',\n icon: [512, 512, [61810], \"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};\nconst faImdb = {\n prefix: 'fab',\n iconName: 'imdb',\n icon: [448, 512, [], \"f2d8\", \"M89.5 323.6H53.93V186.2H89.5V323.6zM156.1 250.5L165.2 186.2H211.5V323.6H180.5V230.9L167.1 323.6H145.8L132.8 232.9L132.7 323.6H101.5V186.2H147.6C148.1 194.5 150.4 204.3 151.9 215.6L156.1 250.5zM223.7 323.6V186.2H250.3C267.3 186.2 277.3 187.1 283.3 188.6C289.4 190.3 294 192.8 297.2 196.5C300.3 199.8 302.3 203.1 303 208.5C303.9 212.9 304.4 221.6 304.4 234.7V282.9C304.4 295.2 303.7 303.4 302.5 307.6C301.4 311.7 299.4 315 296.5 317.3C293.7 319.7 290.1 321.4 285.8 322.3C281.6 323.1 275.2 323.6 266.7 323.6H223.7zM259.2 209.7V299.1C264.3 299.1 267.5 298.1 268.6 296.8C269.7 294.8 270.4 289.2 270.4 280.1V226.8C270.4 220.6 270.3 216.6 269.7 214.8C269.4 213 268.5 211.8 267.1 210.1C265.7 210.1 263 209.7 259.2 209.7V209.7zM316.5 323.6V186.2H350.6V230.1C353.5 227.7 356.7 225.2 360.1 223.5C363.7 222 368.9 221.1 372.9 221.1C377.7 221.1 381.8 221.9 385.2 223.3C388.6 224.8 391.2 226.8 393.2 229.5C394.9 232.1 395.9 234.8 396.3 237.3C396.7 239.9 396.1 245.3 396.1 253.5V292.1C396.1 300.3 396.3 306.4 395.3 310.5C394.2 314.5 391.5 318.1 387.5 320.1C383.4 324 378.6 325.4 372.9 325.4C368.9 325.4 363.7 324.5 360.2 322.9C356.7 321.1 353.5 318.4 350.6 314.9L348.5 323.6L316.5 323.6zM361.6 302.9C362.3 301.1 362.6 296.9 362.6 290.4V255C362.6 249.4 362.3 245.5 361.5 243.8C360.8 241.9 357.8 241.1 355.7 241.1C353.7 241.1 352.3 241.9 351.6 243.4C351 244.9 350.6 248.8 350.6 255V291.4C350.6 297.5 351 301.4 351.8 303C352.4 304.7 353.9 305.5 355.9 305.5C358.1 305.5 360.1 304.7 361.6 302.9L361.6 302.9zM418.4 32.04C434.1 33.27 447.1 47.28 447.1 63.92V448.1C447.1 464.5 435.2 478.5 418.9 479.1C418.6 479.1 418.4 480 418.1 480H29.88C29.6 480 29.32 479.1 29.04 479.9C13.31 478.5 1.093 466.1 0 449.7L.0186 61.78C1.081 45.88 13.82 33.09 30.26 31.1H417.7C417.9 31.1 418.2 32.01 418.4 32.04L418.4 32.04zM30.27 41.26C19 42.01 10.02 51.01 9.257 62.4V449.7C9.63 455.1 11.91 460.2 15.7 464C19.48 467.9 24.51 470.3 29.89 470.7H418.1C429.6 469.7 438.7 459.1 438.7 448.1V63.91C438.7 58.17 436.6 52.65 432.7 48.45C428.8 44.24 423.4 41.67 417.7 41.26L30.27 41.26z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faScreenpal = {\n prefix: 'fab',\n iconName: 'screenpal',\n icon: [512, 512, [], \"e570\", \"M233.5 22.49C233.5 10.07 243.6 0 256 0C268.4 0 278.5 10.07 278.5 22.49C278.5 34.91 268.4 44.98 256 44.98C243.6 44.98 233.5 34.91 233.5 22.49zM313.4 259C313.4 290.7 287.7 316.4 256 316.4C224.3 316.4 198.6 290.7 198.6 259C198.6 227.3 224.3 201.6 256 201.6C287.7 201.6 313.4 227.3 313.4 259zM337.2 350C359.5 330.1 373.7 302.7 377.1 273H496.6C493.1 334.4 466.2 392.2 421.4 434.4C376.7 476.6 317.5 500.2 256 500.2C194.5 500.2 135.3 476.6 90.56 434.4C45.83 392.2 18.94 334.4 15.39 273H135.1C138.5 302.7 152.7 330.1 175 350C197.3 369.9 226.2 380.9 256.1 380.9C285.1 380.9 314.8 369.9 337.2 350zM73.14 140.3C73.54 152.7 63.81 163.1 51.39 163.5C38.97 163.9 28.59 154.2 28.18 141.8C27.78 129.3 37.52 118.9 49.94 118.5C62.35 118.1 72.74 127.9 73.14 140.3zM438.9 141C438.9 128.6 448.9 118.5 461.4 118.5C473.8 118.5 483.8 128.6 483.8 141C483.8 153.5 473.8 163.5 461.4 163.5C448.9 163.5 438.9 153.5 438.9 141zM317.9 95.27C300.6 109.1 278.7 118.1 256 118.1C233.3 118.1 211.4 109.1 194.1 95.27C176.8 80.55 165.3 60.18 161.7 37.78C176.8 31.37 192.5 26.52 208.6 23.31C208.6 35.88 213.6 47.93 222.5 56.82C231.4 65.7 243.4 70.7 256 70.7C268.6 70.7 280.6 65.7 289.5 56.82C298.4 47.93 303.4 35.88 303.4 23.31C319.5 26.52 335.2 31.37 350.3 37.78C346.7 60.18 335.2 80.55 317.9 95.27H317.9zM82.78 231C61.42 238.6 38.06 238.4 16.86 230.4C18.82 214.1 22.46 198.1 27.71 182.5C33.1 185.6 39.05 187.6 45.22 188.5C51.39 189.3 57.67 188.9 63.68 187.3C69.69 185.6 75.33 182.9 80.27 179.1C85.21 175.3 89.36 170.6 92.47 165.2C95.58 159.8 97.61 153.8 98.42 147.7C99.23 141.5 98.83 135.2 97.22 129.2C95.61 123.2 92.83 117.6 89.04 112.6C85.25 107.7 80.53 103.5 75.14 100.4C85.96 88.11 98.01 76.94 111.1 67.07C128.7 81.42 140.6 101.6 144.7 123.9C148.8 146.2 144.8 169.3 133.5 188.9C122.1 208.5 104.1 223.4 82.78 231V231zM429.2 231.1C407.9 223.5 389.9 208.5 378.5 188.9C367.2 169.3 363.3 146.2 367.4 123.9C371.5 101.7 383.4 81.54 400.9 67.19C414 77.04 426.1 88.21 436.9 100.5C426.2 106.9 418.5 117.2 415.4 129.3C412.2 141.3 413.1 154.1 420.2 164.9C426.4 175.7 436.6 183.6 448.6 186.9C460.6 190.2 473.5 188.6 484.3 182.6C489.6 198.1 493.2 214.2 495.2 230.4C473.1 238.5 450.6 238.7 429.2 231.1L429.2 231.1z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faKickstarterK = {\n prefix: 'fab',\n iconName: 'kickstarter-k',\n icon: [448, 512, [], \"f3bc\", \"M356.6 256.2l40.8-40.5c42.2-41.9 42.2-110.3 0-152.1s-111-41.9-153.2 0L229.3 78.4C209.6 50.3 177.1 32 140.2 32C80.5 32 32 80.2 32 139.5V372.5C32 431.9 80.5 480 140.2 480c37.1 0 69.3-18.3 89-46.4l14.9 14.7c42.2 41.9 111 41.9 153.2 0s42.2-110.3 0-152.1l-40.8-40z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareWebAwesome = {\n prefix: 'fab',\n iconName: 'square-web-awesome',\n icon: [448, 512, [], \"e683\", \"M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM235 177.6L288 224l52.2-10.4c-2.6-3.9-4.2-8.5-4.2-13.6c0-13.3 10.7-24 24-24s24 10.7 24 24c0 13-10.3 23.6-23.2 24L304.5 349.1c-5.2 11.5-16.6 18.9-29.2 18.9l-102.6 0c-12.6 0-24-7.4-29.2-18.9L87.2 224C74.3 223.6 64 213 64 200c0-13.3 10.7-24 24-24s24 10.7 24 24c0 5-1.5 9.7-4.2 13.6L160 224l53.1-46.4c-8.9-4.1-15-13.1-15-23.6c0-14.4 11.6-26 26-26s26 11.6 26 26c0 10.5-6.2 19.5-15.1 23.6z\"]\n};\nconst 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};\nconst faWirsindhandwerk = {\n prefix: 'fab',\n iconName: 'wirsindhandwerk',\n icon: [512, 512, [\"wsh\"], \"e2d0\", \"M50.77161,479.81213h83.36071V367.84741l-83.36071,47.009Zm329.04675,0h82.35022V414.85645l-82.35022-47.009Zm.00568-448V251.568L256.1759,179.1861,134.50378,251.568V31.81213H50.77161V392.60565L256.1759,270.31909,462.16858,392.60565V31.81213Z\"]\n};\nconst faWsh = faWirsindhandwerk;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faBluesky = {\n prefix: 'fab',\n iconName: 'bluesky',\n icon: [576, 512, [], \"e671\", \"M407.8 294.7c-3.3-.4-6.7-.8-10-1.3c3.4 .4 6.7 .9 10 1.3zM288 227.1C261.9 176.4 190.9 81.9 124.9 35.3C61.6-9.4 37.5-1.7 21.6 5.5C3.3 13.8 0 41.9 0 58.4S9.1 194 15 213.9c19.5 65.7 89.1 87.9 153.2 80.7c3.3-.5 6.6-.9 10-1.4c-3.3 .5-6.6 1-10 1.4C74.3 308.6-9.1 342.8 100.3 464.5C220.6 589.1 265.1 437.8 288 361.1c22.9 76.7 49.2 222.5 185.6 103.4c102.4-103.4 28.1-156-65.8-169.9c-3.3-.4-6.7-.8-10-1.3c3.4 .4 6.7 .9 10 1.3c64.1 7.1 133.6-15.1 153.2-80.7C566.9 194 576 75 576 58.4s-3.3-44.7-21.6-52.9c-15.8-7.1-40-14.9-103.2 29.8C385.1 81.9 314.1 176.4 288 227.1z\"]\n};\nconst 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};\nconst faSnapchat = {\n prefix: 'fab',\n iconName: 'snapchat',\n icon: [512, 512, [62124, \"snapchat-ghost\"], \"f2ab\", \"M496.926,366.6c-3.373-9.176-9.8-14.086-17.112-18.153-1.376-.806-2.641-1.451-3.72-1.947-2.182-1.128-4.414-2.22-6.634-3.373-22.8-12.09-40.609-27.341-52.959-45.42a102.889,102.889,0,0,1-9.089-16.12c-1.054-3.013-1-4.724-.248-6.287a10.221,10.221,0,0,1,2.914-3.038c3.918-2.591,7.96-5.22,10.7-6.993,4.885-3.162,8.754-5.667,11.246-7.44,9.362-6.547,15.909-13.5,20-21.278a42.371,42.371,0,0,0,2.1-35.191c-6.2-16.318-21.613-26.449-40.287-26.449a55.543,55.543,0,0,0-11.718,1.24c-1.029.224-2.059.459-3.063.72.174-11.16-.074-22.94-1.066-34.534-3.522-40.758-17.794-62.123-32.674-79.16A130.167,130.167,0,0,0,332.1,36.443C309.515,23.547,283.91,17,256,17S202.6,23.547,180,36.443a129.735,129.735,0,0,0-33.281,26.783c-14.88,17.038-29.152,38.44-32.673,79.161-.992,11.594-1.24,23.435-1.079,34.533-1-.26-2.021-.5-3.051-.719a55.461,55.461,0,0,0-11.717-1.24c-18.687,0-34.125,10.131-40.3,26.449a42.423,42.423,0,0,0,2.046,35.228c4.105,7.774,10.652,14.731,20.014,21.278,2.48,1.736,6.361,4.24,11.246,7.44,2.641,1.711,6.5,4.216,10.28,6.72a11.054,11.054,0,0,1,3.3,3.311c.794,1.624.818,3.373-.36,6.6a102.02,102.02,0,0,1-8.94,15.785c-12.077,17.669-29.363,32.648-51.434,44.639C32.355,348.608,20.2,352.75,15.069,366.7c-3.868,10.528-1.339,22.506,8.494,32.6a49.137,49.137,0,0,0,12.4,9.387,134.337,134.337,0,0,0,30.342,12.139,20.024,20.024,0,0,1,6.126,2.741c3.583,3.137,3.075,7.861,7.849,14.78a34.468,34.468,0,0,0,8.977,9.127c10.019,6.919,21.278,7.353,33.207,7.811,10.776.41,22.989.881,36.939,5.481,5.778,1.91,11.78,5.605,18.736,9.92C194.842,480.951,217.707,495,255.973,495s61.292-14.123,78.118-24.428c6.907-4.24,12.872-7.9,18.489-9.758,13.949-4.613,26.163-5.072,36.939-5.481,11.928-.459,23.187-.893,33.206-7.812a34.584,34.584,0,0,0,10.218-11.16c3.434-5.84,3.348-9.919,6.572-12.771a18.971,18.971,0,0,1,5.753-2.629A134.893,134.893,0,0,0,476.02,408.71a48.344,48.344,0,0,0,13.019-10.193l.124-.149C498.389,388.5,500.708,376.867,496.926,366.6Zm-34.013,18.277c-20.745,11.458-34.533,10.23-45.259,17.137-9.114,5.865-3.72,18.513-10.342,23.076-8.134,5.617-32.177-.4-63.239,9.858-25.618,8.469-41.961,32.822-88.038,32.822s-62.036-24.3-88.076-32.884c-31-10.255-55.092-4.241-63.239-9.858-6.609-4.563-1.24-17.211-10.341-23.076-10.739-6.907-24.527-5.679-45.26-17.075-13.206-7.291-5.716-11.8-1.314-13.937,75.143-36.381,87.133-92.552,87.666-96.719.645-5.046,1.364-9.014-4.191-14.148-5.369-4.96-29.189-19.7-35.8-24.316-10.937-7.638-15.748-15.264-12.2-24.638,2.48-6.485,8.531-8.928,14.879-8.928a27.643,27.643,0,0,1,5.965.67c12,2.6,23.659,8.617,30.392,10.242a10.749,10.749,0,0,0,2.48.335c3.6,0,4.86-1.811,4.612-5.927-.768-13.132-2.628-38.725-.558-62.644,2.84-32.909,13.442-49.215,26.04-63.636,6.051-6.932,34.484-36.976,88.857-36.976s82.88,29.92,88.931,36.827c12.611,14.421,23.225,30.727,26.04,63.636,2.071,23.919.285,49.525-.558,62.644-.285,4.327,1.017,5.927,4.613,5.927a10.648,10.648,0,0,0,2.48-.335c6.745-1.624,18.4-7.638,30.4-10.242a27.641,27.641,0,0,1,5.964-.67c6.386,0,12.4,2.48,14.88,8.928,3.546,9.374-1.24,17-12.189,24.639-6.609,4.612-30.429,19.343-35.8,24.315-5.568,5.134-4.836,9.1-4.191,14.149.533,4.228,12.511,60.4,87.666,96.718C468.629,373.011,476.119,377.524,462.913,384.877Z\"]\n};\nconst faSnapchatGhost = faSnapchat;\nconst 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.99zm234.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};\nconst 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};\nconst 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};\nconst faSquareBehance = {\n prefix: 'fab',\n iconName: 'square-behance',\n icon: [448, 512, [\"behance-square\"], \"f1b5\", \"M155.3 318.4c17.2 0 31.2-6.1 31.2-25.4c0-19.7-11.7-27.4-30.3-27.5h-46v52.9h45.1zm-5.4-129.6H110.3v44.8H153c15.1 0 25.8-6.6 25.8-22.9c0-17.7-13.7-21.9-28.9-21.9zm129.5 74.8h62.2c-1.7-18.5-11.3-29.7-30.5-29.7c-18.3 0-30.5 11.4-31.7 29.7zM384 32H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64zM349.5 185H271.7V166.1h77.8V185zM193.7 243.7c23.6 6.7 35 27.5 35 51.6c0 39-32.7 55.7-67.6 55.9H68v-192h90.5c32.9 0 61.4 9.3 61.4 47.5c0 19.3-9 28.8-26.2 37zm118.7-38.6c43.5 0 67.6 34.3 67.6 75.4c0 1.6-.1 3.3-.2 5c0 .8-.1 1.5-.1 2.2H279.5c0 22.2 11.7 35.3 34.1 35.3c11.6 0 26.5-6.2 30.2-18.1h33.7c-10.4 31.9-31.9 46.8-65.1 46.8c-43.8 0-71.1-29.7-71.1-73c0-41.8 28.7-73.6 71.1-73.6z\"]\n};\nconst faBehanceSquare = faSquareBehance;\nconst 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};\nconst faWebflow = {\n prefix: 'fab',\n iconName: 'webflow',\n icon: [640, 512, [], \"e65c\", \"M640 64L435.8 463.2H244l85.5-165.5h-3.8C255.1 389.3 149.9 449.5 0 463.2V300.1s95.9-5.7 152.3-64.9H0V64H171.1V204.8l3.8 0L244.9 64H374.3V203.9l3.8 0L450.7 64H640z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSpaceAwesome = {\n prefix: 'fab',\n iconName: 'space-awesome',\n icon: [512, 512, [], \"e5ac\", \"M96 256H128V512H0V352H32V320H64V288H96V256zM512 352V512H384V256H416V288H448V320H480V352H512zM320 64H352V448H320V416H192V448H160V64H192V32H224V0H288V32H320V64zM288 128H224V192H288V128z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareGit = {\n prefix: 'fab',\n iconName: 'square-git',\n icon: [448, 512, [\"git-square\"], \"f1d2\", \"M120.8 335.5c-5.9-.4-12.6-.8-20.2-1.3c-3.3 4.1-6.6 8.4-6.6 13.5c0 18.5 65.5 18.5 65.5-1.5c0-8.3-7.4-8.7-38.8-10.7zm7.8-117.9c-32.3 0-33.7 44.5-.7 44.5c32.5 0 31.7-44.5 .7-44.5zM384 32H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64zM243.9 172.2c-14.5 0-22.9-8.4-22.9-22.9c0-14.5 8.4-22.3 22.9-22.3c14.7 0 23.1 7.8 23.1 22.3s-8.4 22.9-23.1 22.9zM149.6 195h49.5l0 21.6-23.4 1.8c4.6 5.8 9.4 14 9.4 25.7c0 48.7-57.2 47.2-74.2 42.4l-8.4 13.4c5 .3 9.8 .6 14.3 .8c56.3 3.2 80.5 4.6 80.5 38.5c0 29.2-25.7 45.7-69.9 45.7c-46 0-63.5-11.6-63.5-31.7c0-11.4 5.1-17.5 14-25.9c-8.4-3.5-11.2-9.9-11.2-16.8c0-9.6 7.4-16.3 23-30.6l.2-.2c-12.4-6.1-21.8-19.3-21.8-38.1c0-51.6 56.6-53.3 81.6-46.8zM270.5 303.1l13 1.8 0 20.1H211.1V304.9c2.7-.4 5-.7 6.9-.9c9.9-1.2 10.1-1.3 10.1-6V223.3c0-4.4-.9-4.7-10.1-7.8c-1.9-.7-4.2-1.4-6.9-2.4l2.8-20.6h52.6V298c0 4.1 .2 4.6 4.1 5.1zm106.6-10.4L384 315c-10.9 5.4-26.9 10.2-41.4 10.2c-30.2 0-41.7-12.2-41.7-40.9V217.7c0-.8 0-1.4-.2-1.8c-.8-1.2-4.2-.7-19.6-.7V192.6c22.3-2.5 31.2-13.7 34-41.4h24.2c0 33.3-.6 38 .7 38.6c.3 .1 .7 0 1.3 0h35.8v25.4H339.3v60.7c0 .2 0 .5 0 .9c-.2 6.3-.9 30.4 37.9 15.9z\"]\n};\nconst faGitSquare = faSquareGit;\nconst faSquareTumblr = {\n prefix: 'fab',\n iconName: 'square-tumblr',\n icon: [448, 512, [\"tumblr-square\"], \"f174\", \"M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM256.8 416c-75.5 0-91.9-55.5-91.9-87.9v-90H135.2c-3.4 0-6.2-2.8-6.2-6.2V189.4c0-4.5 2.8-8.5 7.1-10c38.8-13.7 50.9-47.5 52.7-73.2c.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.2H249.1V321c0 21.4 14.8 33.5 42.5 22.4c3-1.2 5.6-2 8-1.4c2.2 .5 3.6 2.1 4.6 4.9L318 387.1c1 3.2 2 6.7-.3 9.1c-8.5 9.1-31.2 19.8-60.9 19.8z\"]\n};\nconst faTumblrSquare = faSquareTumblr;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faBots = {\n prefix: 'fab',\n iconName: 'bots',\n icon: [640, 512, [], \"e340\", \"M86.344,197.834a51.767,51.767,0,0,0-41.57,20.058V156.018a8.19,8.19,0,0,0-8.19-8.19H8.19A8.19,8.19,0,0,0,0,156.018V333.551a8.189,8.189,0,0,0,8.19,8.189H36.584a8.189,8.189,0,0,0,8.19-8.189v-8.088c11.628,13.373,25.874,19.769,41.573,19.769,34.6,0,61.922-26.164,61.922-73.843C148.266,225.452,121.229,197.834,86.344,197.834ZM71.516,305.691c-9.593,0-21.221-4.942-26.745-12.5V250.164c5.528-7.558,17.152-12.791,26.745-12.791,17.734,0,31.107,13.082,31.107,34.013C102.623,292.609,89.25,305.691,71.516,305.691Zm156.372-59.032a17.4,17.4,0,1,0,17.4,17.4A17.4,17.4,0,0,0,227.888,246.659ZM273.956,156.7V112.039a13.308,13.308,0,1,0-10.237,0V156.7a107.49,107.49,0,1,0,10.237,0Zm85.993,107.367c0,30.531-40.792,55.281-91.112,55.281s-91.111-24.75-91.111-55.281,40.792-55.281,91.111-55.281S359.949,233.532,359.949,264.062Zm-50.163,17.4a17.4,17.4,0,1,0-17.4-17.4h0A17.4,17.4,0,0,0,309.786,281.466ZM580.7,250.455c-14.828-2.617-22.387-3.78-22.387-9.885,0-5.523,7.268-9.884,17.735-9.884a65.56,65.56,0,0,1,34.484,10.1,8.171,8.171,0,0,0,11.288-2.468c.07-.11.138-.221.2-.333l8.611-14.886a8.2,8.2,0,0,0-2.867-11.123,99.863,99.863,0,0,0-52.014-14.138c-38.956,0-60.179,21.514-60.179,46.225,0,36.342,33.725,41.864,57.563,45.642,13.373,2.326,24.13,4.361,24.13,11.048,0,6.4-5.523,10.757-18.9,10.757-13.552,0-30.994-6.222-42.623-13.579a8.206,8.206,0,0,0-11.335,2.491c-.035.054-.069.108-.1.164l-10.2,16.891a8.222,8.222,0,0,0,2.491,11.066c15.224,10.3,37.663,16.692,59.441,16.692,40.409,0,63.957-19.769,63.957-46.515C640,260.63,604.537,254.816,580.7,250.455Zm-95.928,60.787a8.211,8.211,0,0,0-9.521-5.938,23.168,23.168,0,0,1-4.155.387c-7.849,0-12.5-6.106-12.5-14.245V240.28h20.349a8.143,8.143,0,0,0,8.141-8.143V209.466a8.143,8.143,0,0,0-8.141-8.143H458.594V171.091a8.143,8.143,0,0,0-8.143-8.143H422.257a8.143,8.143,0,0,0-8.143,8.143h0v30.232H399a8.143,8.143,0,0,0-8.143,8.143h0v22.671A8.143,8.143,0,0,0,399,240.28h15.115v63.667c0,27.037,15.408,41.282,43.9,41.282,12.183,0,21.383-2.2,27.6-5.446a8.161,8.161,0,0,0,4.145-9.278Z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faCcAmex = {\n prefix: 'fab',\n iconName: 'cc-amex',\n icon: [576, 512, [], \"f1f3\", \"M0 432c0 26.5 21.5 48 48 48H528c26.5 0 48-21.5 48-48v-1.1H514.3l-31.9-35.1-31.9 35.1H246.8V267.1H181L262.7 82.4h78.6l28.1 63.2V82.4h97.2L483.5 130l17-47.6H576V80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80V432zm440.4-21.7L482.6 364l42 46.3H576l-68-72.1 68-72.1H525.4l-42 46.7-41.5-46.7H390.5L458 338.6l-67.4 71.6V377.1h-83V354.9h80.9V322.6H307.6V300.2h83V267.1h-122V410.3H440.4zm96.3-72L576 380.2V296.9l-39.3 41.4zm-36.3-92l36.9-100.6V246.3H576V103H515.8l-32.2 89.3L451.7 103H390.5V246.1L327.3 103H276.1L213.7 246.3h43l11.9-28.7h65.9l12 28.7h82.7V146L466 246.3h34.4zM282 185.4l19.5-46.9 19.4 46.9H282z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faYoutube = {\n prefix: 'fab',\n iconName: 'youtube',\n icon: [576, 512, [61802], \"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};\nconst 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};\nconst faFirefoxBrowser = {\n prefix: 'fab',\n iconName: 'firefox-browser',\n icon: [512, 512, [], \"e007\", \"M130.22 127.548C130.38 127.558 130.3 127.558 130.22 127.548V127.548ZM481.64 172.898C471.03 147.398 449.56 119.898 432.7 111.168C446.42 138.058 454.37 165.048 457.4 185.168C457.405 185.306 457.422 185.443 457.45 185.578C429.87 116.828 383.098 89.1089 344.9 28.7479C329.908 5.05792 333.976 3.51792 331.82 4.08792L331.7 4.15792C284.99 30.1109 256.365 82.5289 249.12 126.898C232.503 127.771 216.219 131.895 201.19 139.035C199.838 139.649 198.736 140.706 198.066 142.031C197.396 143.356 197.199 144.87 197.506 146.323C197.7 147.162 198.068 147.951 198.586 148.639C199.103 149.327 199.76 149.899 200.512 150.318C201.264 150.737 202.096 150.993 202.954 151.071C203.811 151.148 204.676 151.045 205.491 150.768L206.011 150.558C221.511 143.255 238.408 139.393 255.541 139.238C318.369 138.669 352.698 183.262 363.161 201.528C350.161 192.378 326.811 183.338 304.341 187.248C392.081 231.108 368.541 381.784 246.951 376.448C187.487 373.838 149.881 325.467 146.421 285.648C146.421 285.648 157.671 243.698 227.041 243.698C234.541 243.698 255.971 222.778 256.371 216.698C256.281 214.698 213.836 197.822 197.281 181.518C188.434 172.805 184.229 168.611 180.511 165.458C178.499 163.75 176.392 162.158 174.201 160.688C168.638 141.231 168.399 120.638 173.51 101.058C148.45 112.468 128.96 130.508 114.8 146.428H114.68C105.01 134.178 105.68 93.7779 106.25 85.3479C106.13 84.8179 99.022 89.0159 98.1 89.6579C89.5342 95.7103 81.5528 102.55 74.26 110.088C57.969 126.688 30.128 160.242 18.76 211.318C14.224 231.701 12 255.739 12 263.618C12 398.318 121.21 507.508 255.92 507.508C376.56 507.508 478.939 420.281 496.35 304.888C507.922 228.192 481.64 173.82 481.64 172.898Z\"]\n};\nconst 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};\nconst faSuse = {\n prefix: 'fab',\n iconName: 'suse',\n icon: [640, 512, [], \"f7d6\", \"M593.1 192.6A10.4 10.4 0 1 1 604.5 210a10.4 10.4 0 1 1 -11.4-17.4zm-47.1 12.2a38.5 38.5 0 1 1 75-17.6 38.5 38.5 0 1 1 -75 17.6zM433.7 336.7c3.2 4.6 5.8 9 7.3 13.4c1 3.1 2.4 7.3 5.5 8.9c.2 .1 .3 .2 .5 .2c5.7 2.1 20.3 1.7 20.3 1.7h26.8c2.3 0 22.4 0 21.9-2.3c-2.4-10.8-14.9-12.7-24.4-18.3c-8.7-5.2-17-11.1-20.8-21.3c-2-5.2-.8-17.4 2.6-21.8c2.5-3.2 6.1-5.3 10-6.2c4.3-.9 8.8-.1 13.1 .3c5.3 .5 10.6 1.5 15.9 2.2c10.3 1.3 20.6 1.9 31 1.6c17.1-.5 34.2-3.2 50.4-8.7c11.3-3.8 22.4-8.9 32-16.1c10.9-8.1 8.1-7.4-3-6.2c-13.3 1.4-26.6 1.6-39.9 .8c-12.4-.7-24.7-2.2-35.9-7.9c-8.8-4.6-16.4-9.1-23.4-16.2c-1-1.1-1.7-4.2 .2-6.2c1.9-1.9 5.8-.8 7 .2c12.2 10.2 30.5 18.6 49.3 19.5c10.2 .5 20.1 .7 30.4 .3c5.1-.2 12.8-.2 17.9-.3c2.6 0 9.8 .7 11.2-2.1c.4-.8 .4-1.8 .3-2.7c-1.5-40.9-4.5-86.9-47.3-106.5c-31.9-14.6-79.7-37.2-99.9-46.6c-4.7-2.2-10.2 1.3-10.2 6.5c0 13.6 .7 33.3 .7 51.1c-9.7-9.9-26-16.1-38.4-21.8c-14.1-6.5-28.7-12-43.5-16.6c-29.8-9.2-60.7-14.9-91.7-18c-35.2-3.5-71-1.8-105.7 5.3C147 115.1 90.8 142.6 48.2 182.7C22.1 207.3 1.6 242.4 .2 277.9c-2 50.3 12.1 77.3 38 105.2c41.3 44.4 130.2 50.6 166.2-2c16.2-23.7 19.7-55.8 8-82c-11.8-26.2-38.8-45.1-67.4-46c-22.2-.7-45.9 10.6-54.5 31.1c-6.5 15.7-2.8 35.1 9 47.3c4.6 4.8 10.9 8.7 17.7 7.1c4-.9 7.4-3.9 8-8c.9-6-4.4-9.9-7.6-14.5c-5.8-8.3-4.7-20.9 2.7-27.9c6.2-6 15.3-7.8 23.9-7.7c8 0 16.2 1.4 23.1 5.5c9.7 5.7 16.2 16.2 18.4 27.2c6.7 33-20.2 59.9-56.6 62c-18.6 1.1-37.6-3.8-52.1-15.5C40.1 329.9 31.1 269.4 73.2 237c40-30.7 90.4-22.8 120.2-6.8c23.8 12.8 41.5 33.6 55 56.7c6.7 11.6 12.5 23.7 17.8 36.1c5.1 11.8 9.9 23.8 20.2 32.5c6.8 5.8 15.2 5.6 24.1 5.6h50.8c6.9 0 5.2-4.6 2.2-7.7c-6.7-6.9-16.4-8.4-25.4-10.9c-20.5-5.6-18.4-32.8-12.7-32.8c18.3 0 18.9 .6 34.9 .3c23.2-.3 30.2-1.7 48.3 5c9.7 3.6 19 13.1 25.1 21.7z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faYammer = {\n prefix: 'fab',\n iconName: 'yammer',\n icon: [512, 512, [], \"f840\", \"M500.676,159.486a12.779,12.779,0,0,0-6.4-8.282,13.954,13.954,0,0,0-10.078-1.125L457.8,156.7l-.043-.2-22.3,5.785-1.243.333-.608-2.17A369.037,369.037,0,0,0,347.538,4.289a14.1,14.1,0,0,0-19.784-.463l-102.9,102.747H24.947A24.9,24.9,0,0,0,0,131.417V380.38a24.963,24.963,0,0,0,24.918,24.9H224.986L328.072,508a13.667,13.667,0,0,0,19.327,0c.126-.126.249-.255.37-.385a368.025,368.025,0,0,0,69.577-107.374,403.45,403.45,0,0,0,17.3-50.8v-.028l20.406,5.336.029-.073L483.345,362a20.253,20.253,0,0,0,2.619.5,13.359,13.359,0,0,0,4.139-.072,13.5,13.5,0,0,0,10.515-9.924,415.855,415.855,0,0,0,.058-193.013ZM337.125,24.65l.013.014h-.013Zm-110.2,165.161L174.311,281.1a11.338,11.338,0,0,0-1.489,5.655v46.189a22.04,22.04,0,0,1-22.041,22h-3.4A22.068,22.068,0,0,1,125.3,332.962V287.294a11.532,11.532,0,0,0-1.388-5.51l-51.6-92.2a21.988,21.988,0,0,1,19.264-32.726h3.268a22.059,22.059,0,0,1,19.611,11.916l36.357,70.281,37.515-70.512a22.066,22.066,0,0,1,38.556-.695,21.7,21.7,0,0,1,0,21.967ZM337.145,24.673a348.147,348.147,0,0,1,75.8,141.335l.564,1.952-114.134,29.6V131.417a25.006,25.006,0,0,0-24.947-24.9H255.067Zm60.5,367.305v-.043l-.014.014a347.19,347.19,0,0,1-60.177,95.227l-82.2-81.893h19.177a24.978,24.978,0,0,0,24.947-24.9v-66.2l114.6,29.862A385.191,385.191,0,0,1,397.648,391.978Zm84-52.45.015.014-50.618-13.131L299.379,292.1V219.572l119.746-30.99,4.468-1.157,39.54-10.253,18.511-4.816A393,393,0,0,1,481.644,339.528Z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faStubber = {\n prefix: 'fab',\n iconName: 'stubber',\n icon: [448, 512, [], \"e5c7\", \"M136.5 294.2l58.8 22.9c9.1-36.8 25.4-61.1 55-61.1c49.4 0 71.4 63.6 142.4 63.6c15.6 0 35.9-2.8 55.3-13.3V368c0 61.8-50.4 112-112.3 112H0l41.8-56L0 368l41.7-56L0 256.1l41.8-56L0 144.1 41.8 88 0 32H335.7C397.6 32 448 82.3 448 144.1v51.3c-9.2 36.3-25.9 60.6-55 60.6c-49.6 0-71.6-63.5-142.4-63.5c-35.9 0-95.2 14.6-114.1 101.6h0z\"]\n};\nconst faTelegram = {\n prefix: 'fab',\n iconName: 'telegram',\n icon: [496, 512, [62462, \"telegram-plane\"], \"f2c6\", \"M248,8C111.033,8,0,119.033,0,256S111.033,504,248,504,496,392.967,496,256,384.967,8,248,8ZM362.952,176.66c-3.732,39.215-19.881,134.378-28.1,178.3-3.476,18.584-10.322,24.816-16.948,25.425-14.4,1.326-25.338-9.517-39.287-18.661-21.827-14.308-34.158-23.215-55.346-37.177-24.485-16.135-8.612-25,5.342-39.5,3.652-3.793,67.107-61.51,68.335-66.746.153-.655.3-3.1-1.154-4.384s-3.59-.849-5.135-.5q-3.283.746-104.608,69.142-14.845,10.194-26.894,9.934c-8.855-.191-25.888-5.006-38.551-9.123-15.531-5.048-27.875-7.717-26.8-16.291q.84-6.7,18.45-13.7,108.446-47.248,144.628-62.3c68.872-28.647,83.183-33.623,92.511-33.789,2.052-.034,6.639.474,9.61,2.885a10.452,10.452,0,0,1,3.53,6.716A43.765,43.765,0,0,1,362.952,176.66Z\"]\n};\nconst faTelegramPlane = faTelegram;\nconst 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};\nconst faOdysee = {\n prefix: 'fab',\n iconName: 'odysee',\n icon: [512, 512, [], \"e5c6\", \"M406.7 463c-42.3 30.8-94.4 49-150.7 49C144.9 512 50.3 441.2 14.9 342.2c2.4 1.7 5.9 3.6 7.9 4.4c16.3 7.4 40.1-5.4 62.9-28.7c6.9-6.9 14.4-12.4 22.8-17.3c18.3-11.9 37.6-20.8 58.4-27.2c0 0 22.3 34.2 43.1 74.8s-22.3 54-27.2 54c-.3 0-.8 0-1.5-.1c-11-.5-70-3-56 51.1c14.9 57.4 97.5 36.6 139.6 8.9s31.7-118.3 31.7-118.3c41.1-6.4 54 37.1 57.9 59.4c.8 4.6 1.1 9.9 1.4 15.5c1.1 21.2 2.3 45.6 35.3 46.4c5.3 0 10.6-.8 15.5-2zm-95.3-23.7c-2-.5-3.5-2.5-3-5c1-2.5 3-3.5 5-3s3.5 3 3 5s-2.5 3.5-5 3zm-207-95.6c1.5-.5 3.5 1 4 3c0 2-1 4-3 4c-1.5 .5-3.5-1-4-3c-.5-1.5 1-3.5 3-4zM451.8 421C489.3 376.4 512 318.8 512 256c0-67.5-26.1-128.9-68.8-174.7c-.1 23.5-6.1 48.2-16.8 69.2c-11.9 20.3-49 58.9-69.8 78.7c-.7 .3-1.1 .9-1.5 1.4c-.2 .2-.3 .4-.5 .6c-5 6.9-4 16.8 3 21.8c21.3 15.8 56.4 45.6 59.4 72.8c3.5 34.9 27.9 75.6 34.2 86.2l0 0c.8 1.3 1.3 2.1 1.4 2.4c0 2.2-.4 4.3-.8 6.5zM390.7 251c-.5 3 1 5.9 4 6.4s5.9-1 6.4-4s-1-5.9-4-6.4c-3-1-5.9 1-6.4 4zm61.4-60.9l-11.4 5.4-3 12.9-5.4-11.4-12.9-3 11.4-5.4 3-12.9 5.4 11.4 12.9 3zM395.5 41.3c-16.2 8.2-22.1 32.8-29 61.4l0 0c-.3 1.4-.7 2.8-1 4.2c-9.5 38.5-30.6 37.6-41.7 37.2c-1.1 0-2-.1-2.9-.1c-5.1 0-6-4-8.9-17.1c-2.6-12.1-6.9-32-17.9-63.6C271.4-2.5 211.4 13.9 165.9 41.1C110.6 74.2 131.5 143 146.1 190.5c.7 2.2 1.4 4.4 2 6.6c-4 4-13.8 7.5-26 11.9c-12.1 4.3-26.6 9.5-40.3 16.9C47.9 243.9 11.5 274.9 2 288.5C.7 277.8 0 267 0 256C0 114.6 114.6 0 256 0c51.4 0 99.4 15.2 139.5 41.3zM58.9 189.6c-1.5-2-4.5-3-6.4-1.5s-3 4.5-1.5 6.4s4.5 3 6.4 1.5c2.5-1.5 3-4.5 1.5-6.4zM327.3 64.9c2-1.5 5-.5 6.4 1.5c1.5 2.5 1 5.4-1.5 6.4c-2 1.5-5 .5-6.4-1.5s-.5-5 1.5-6.4zM95.1 105c-.5 1.5 .5 3 2 3c1.5 .5 3-.5 3-2c.5-1.5-.5-3-2-3s-3 .5-3 2zm84.7-.5c-3.5-43.1 37.1-54 37.1-54c44.1-15.4 56 5.9 66.4 37.6s3 42.6-38.6 58.9s-61.9-4.5-64.9-42.6zm89.6 14.9h1c2.5 0 5-2 5-5c2-6.9 1-14.4-2-20.8c-1.5-2-4-3.5-6.4-2.5c-3 1-4.5 4-3.5 6.9c2 4.5 3 9.9 1.5 14.9c-.5 3 1.5 5.9 4.5 6.4zm-9.9-41.6c-2 0-4-1-5-3s-2-3.5-3-5c-2-2-2-5.4 0-7.4s5.4-2 7.4 0c2 2.5 3.5 5 5 7.4s.5 5.9-2.5 7.4c-.6 0-1 .2-1.3 .3c-.2 .1-.4 .2-.6 .2z\"]\n};\nconst faSquareWhatsapp = {\n prefix: 'fab',\n iconName: 'square-whatsapp',\n icon: [448, 512, [\"whatsapp-square\"], \"f40c\", \"M92.1 254.6c0 24.9 7 49.2 20.2 70.1l3.1 5-13.3 48.6L152 365.2l4.8 2.9c20.2 12 43.4 18.4 67.1 18.4h.1c72.6 0 133.3-59.1 133.3-131.8c0-35.2-15.2-68.3-40.1-93.2c-25-25-58-38.7-93.2-38.7c-72.7 0-131.8 59.1-131.9 131.8zM274.8 330c-12.6 1.9-22.4 .9-47.5-9.9c-36.8-15.9-61.8-51.5-66.9-58.7c-.4-.6-.7-.9-.8-1.1c-2-2.6-16.2-21.5-16.2-41c0-18.4 9-27.9 13.2-32.3c.3-.3 .5-.5 .7-.8c3.6-4 7.9-5 10.6-5c2.6 0 5.3 0 7.6 .1c.3 0 .5 0 .8 0c2.3 0 5.2 0 8.1 6.8c1.2 2.9 3 7.3 4.9 11.8c3.3 8 6.7 16.3 7.3 17.6c1 2 1.7 4.3 .3 6.9c-3.4 6.8-6.9 10.4-9.3 13c-3.1 3.2-4.5 4.7-2.3 8.6c15.3 26.3 30.6 35.4 53.9 47.1c4 2 6.3 1.7 8.6-1c2.3-2.6 9.9-11.6 12.5-15.5c2.6-4 5.3-3.3 8.9-2s23.1 10.9 27.1 12.9c.8 .4 1.5 .7 2.1 1c2.8 1.4 4.7 2.3 5.5 3.6c.9 1.9 .9 9.9-2.4 19.1c-3.3 9.3-19.1 17.7-26.7 18.8zM448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM148.1 393.9L64 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.5c29.9 30 47.9 69.8 47.9 112.2c0 87.4-72.7 158.5-160.1 158.5c-26.6 0-52.7-6.7-75.8-19.3z\"]\n};\nconst faWhatsappSquare = faSquareWhatsapp;\nconst 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};\nconst 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};\nconst faSlack = {\n prefix: 'fab',\n iconName: 'slack',\n icon: [448, 512, [62447, \"slack-hash\"], \"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};\nconst faSlackHash = faSlack;\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faSquareXTwitter = {\n prefix: 'fab',\n iconName: 'square-x-twitter',\n icon: [448, 512, [], \"e61a\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm297.1 84L257.3 234.6 379.4 396H283.8L209 298.1 123.3 396H75.8l111-126.9L69.7 116h98l67.7 89.5L313.6 116h47.5zM323.3 367.6L153.4 142.9H125.1L296.9 367.6h26.3z\"]\n};\nconst 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};\nconst faMedium = {\n prefix: 'fab',\n iconName: 'medium',\n icon: [640, 512, [62407, \"medium-m\"], \"f23a\", \"M180.5,74.262C80.813,74.262,0,155.633,0,256S80.819,437.738,180.5,437.738,361,356.373,361,256,280.191,74.262,180.5,74.262Zm288.25,10.646c-49.845,0-90.245,76.619-90.245,171.095s40.406,171.1,90.251,171.1,90.251-76.619,90.251-171.1H559C559,161.5,518.6,84.908,468.752,84.908Zm139.506,17.821c-17.526,0-31.735,68.628-31.735,153.274s14.2,153.274,31.735,153.274S640,340.631,640,256C640,171.351,625.785,102.729,608.258,102.729Z\"]\n};\nconst faMediumM = faMedium;\nconst 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};\nconst faMixcloud = {\n prefix: 'fab',\n iconName: 'mixcloud',\n icon: [640, 512, [], \"f289\", \"M212.98 346.566H179.789V195.114L185.973 173.47H175.262L137.127 346.566H76.1069L37.7323 173.47H27.276L33.1913 195.114V346.566H0V165H65.6506L102.248 338.096H110.747L147.329 165H212.98L212.98 346.566ZM544.459 283.589L458.434 345.655V307.534L531.329 255.776L458.434 204.017V165.896L544.459 228.231H553.721L640 165.896V204.017L566.866 255.776L640 307.549V345.655L553.721 283.589H544.459ZM430.157 272.311H248.113V239.255H430.157V272.311Z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst faSitrox = {\n prefix: 'fab',\n iconName: 'sitrox',\n icon: [448, 512, [], \"e44a\", \"M212.439 0.00846128V0H448V128H64C64 57.6008 141.755 0.475338 212.439 0.00846128ZM237.256 192V192.007C307.135 192.475 384 249.6 384 320H210.809V319.995C140.915 319.563 64 262.424 64 192H237.256ZM235.565 511.993C306.251 511.521 384 454.399 384 384H0V512H235.565V511.993Z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faTeamspeak = {\n prefix: 'fab',\n iconName: 'teamspeak',\n icon: [576, 512, [], \"f4f9\", \"M152.8 37.2c-32.2 38.1-56.1 82.6-69.9 130.5c0 .2-.1 .3-.1 .5C43.5 184.4 16 223 16 268c0 59.6 48.4 108 108 108s108-48.4 108-108c0-53.5-38.9-97.9-90-106.5c15.7-41.8 40.4-79.6 72.3-110.7c1.8-1.6 4-2.6 6.3-3.1c37.2-11.5 76.7-13.3 114.8-5.2C454.7 67.6 534 180.7 517.1 301.3c-8.4 62.6-38.6 112.7-87.7 151.4c-50.1 39.7-107.5 54.3-170.2 52.2l-24-1c12.4 2.8 25 4.9 37.6 6.3c40.7 4.2 81.4 2.1 120.1-12.5c94-35.5 149.3-102.3 162.9-202.5c4.8-52.6-5.8-105.4-30.8-152C454.6 11.3 290.8-38.4 159 32c-2.4 1.4-4.5 3.1-6.3 5.2zM309.4 433.9c-2.1 11.5-4.2 21.9-14.6 31.3c53.2-1 123.2-29.2 161.8-97.1c39.7-69.9 37.6-139.9-6.3-207.8C413.8 105 360.5 77.9 293.7 73.7c1.5 2.3 3.2 4.4 5.2 6.3l5.2 6.3c25.1 31.3 37.6 67.9 42.8 107.5c2.1 15.7-1 30.3-13.6 41.8c-4.2 3.1-5.2 6.3-4.2 10.4l7.3 17.7L365.7 318c5.2 11.5 4.2 19.8-6.3 28.2c-3.2 2.5-6.7 4.6-10.4 6.3l-18.8 8.4 3.1 13.6c3.1 6.3 1 12.5-3.1 17.7c-2.5 2.4-3.8 5.9-3.1 9.4c2.1 11.5-2.1 19.8-12.5 25.1c-2.1 1-4.2 5.2-5.2 7.3zm-133.6-3.1c16.7 11.5 34.5 20.9 53.2 26.1c24 5.2 41.8-6.3 44.9-30.3c1-8.4 5.2-14.6 12.5-17.7c7.3-4.2 8.4-7.3 2.1-13.6l-9.4-8.4 13.6-4.2c6.3-2.1 7.3-5.2 5.2-11.5c-1.4-3-2.4-6.2-3.1-9.4c-3.1-14.6-2.1-15.7 11.5-18.8c8.4-3.1 15.7-6.3 21.9-12.5c3.1-2.1 3.1-4.2 1-8.4l-16.7-30.3c-1-1.9-2.1-3.8-3.1-5.7c-6.4-11.7-13-23.6-15.7-37.1c-2.1-9.4-1-17.7 8.4-24c5.2-4.2 8.4-9.4 8.4-16.7c-.4-10.1-1.5-20.3-3.1-30.3c-6.3-37.6-23-68.9-51.2-95c-5.2-4.2-9.4-6.3-16.7-4.2L203.9 91.5c2 1.2 4 2.4 6 3.6l0 0c6.3 3.7 12.2 7.3 17 12.1c30.3 26.1 41.8 61.6 45.9 100.2c1 8.4 0 16.7-7.3 21.9c-8.4 5.2-10.4 12.5-7.3 20.9c4.9 13.2 10.4 26 16.7 38.6L291.6 318c-6.3 8.4-13.6 11.5-21.9 14.6c-12.5 3.1-14.6 7.3-10.4 20.9c.6 1.5 1.4 2.8 2.1 4.2c2.1 5.2 1 8.4-4.2 10.4l-12.5 3.1 5.2 4.2 4.2 4.2c4.2 5.2 4.2 8.4-2.1 10.4c-7.3 4.2-11.5 9.4-11.5 17.7c0 12.5-7.3 19.8-18.8 24c-3.8 1-7.6 1.5-11.5 1l-34.5-2.1z\"]\n};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst 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};\nconst faPix = {\n prefix: 'fab',\n iconName: 'pix',\n icon: [512, 512, [], \"e43a\", \"M242.4 292.5C247.8 287.1 257.1 287.1 262.5 292.5L339.5 369.5C353.7 383.7 372.6 391.5 392.6 391.5H407.7L310.6 488.6C280.3 518.1 231.1 518.1 200.8 488.6L103.3 391.2H112.6C132.6 391.2 151.5 383.4 165.7 369.2L242.4 292.5zM262.5 218.9C256.1 224.4 247.9 224.5 242.4 218.9L165.7 142.2C151.5 127.1 132.6 120.2 112.6 120.2H103.3L200.7 22.76C231.1-7.586 280.3-7.586 310.6 22.76L407.8 119.9H392.6C372.6 119.9 353.7 127.7 339.5 141.9L262.5 218.9zM112.6 142.7C126.4 142.7 139.1 148.3 149.7 158.1L226.4 234.8C233.6 241.1 243 245.6 252.5 245.6C261.9 245.6 271.3 241.1 278.5 234.8L355.5 157.8C365.3 148.1 378.8 142.5 392.6 142.5H430.3L488.6 200.8C518.9 231.1 518.9 280.3 488.6 310.6L430.3 368.9H392.6C378.8 368.9 365.3 363.3 355.5 353.5L278.5 276.5C264.6 262.6 240.3 262.6 226.4 276.6L149.7 353.2C139.1 363 126.4 368.6 112.6 368.6H80.78L22.76 310.6C-7.586 280.3-7.586 231.1 22.76 200.8L80.78 142.7H112.6z\"]\n};\nconst 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 icons = {\n faMonero,\n faHooli,\n faYelp,\n faCcVisa,\n faLastfm,\n faShopware,\n faCreativeCommonsNc,\n faAws,\n faRedhat,\n faYoast,\n faCloudflare,\n faUps,\n faPixiv,\n faWpexplorer,\n faDyalog,\n faBity,\n faStackpath,\n faBuysellads,\n faFirstOrder,\n faModx,\n faGuilded,\n faVnv,\n faSquareJs,\n faJsSquare,\n faMicrosoft,\n faQq,\n faOrcid,\n faJava,\n faInvision,\n faCreativeCommonsPdAlt,\n faCentercode,\n faGlideG,\n faDrupal,\n faJxl,\n faDartLang,\n faHireAHelper,\n faCreativeCommonsBy,\n faUnity,\n faWhmcs,\n faRocketchat,\n faVk,\n faUntappd,\n faMailchimp,\n faCss3Alt,\n faSquareReddit,\n faRedditSquare,\n faVimeoV,\n faContao,\n faSquareFontAwesome,\n faDeskpro,\n faBrave,\n faSistrix,\n faSquareInstagram,\n faInstagramSquare,\n faBattleNet,\n faTheRedYeti,\n faSquareHackerNews,\n faHackerNewsSquare,\n faEdge,\n faThreads,\n faNapster,\n faSquareSnapchat,\n faSnapchatSquare,\n faGooglePlusG,\n faArtstation,\n faMarkdown,\n faSourcetree,\n faGooglePlus,\n faDiaspora,\n faFoursquare,\n faStackOverflow,\n faGithubAlt,\n faPhoenixSquadron,\n faPagelines,\n faAlgolia,\n faRedRiver,\n faCreativeCommonsSa,\n faSafari,\n faGoogle,\n faSquareFontAwesomeStroke,\n faFontAwesomeAlt,\n faAtlassian,\n faLinkedinIn,\n faDigitalOcean,\n faNimblr,\n faChromecast,\n faEvernote,\n faHackerNews,\n faCreativeCommonsSampling,\n faAdversal,\n faCreativeCommons,\n faWatchmanMonitoring,\n faFonticons,\n faWeixin,\n faShirtsinbulk,\n faCodepen,\n faGitAlt,\n faLyft,\n faRev,\n faWindows,\n faWizardsOfTheCoast,\n faSquareViadeo,\n faViadeoSquare,\n faMeetup,\n faCentos,\n faAdn,\n faCloudsmith,\n faOpensuse,\n faPiedPiperAlt,\n faSquareDribbble,\n faDribbbleSquare,\n faCodiepie,\n faNode,\n faMix,\n faSteam,\n faCcApplePay,\n faScribd,\n faDebian,\n faOpenid,\n faInstalod,\n faExpeditedssl,\n faSellcast,\n faSquareTwitter,\n faTwitterSquare,\n faRProject,\n faDelicious,\n faFreebsd,\n faVuejs,\n faAccusoft,\n faIoxhost,\n faFonticonsFi,\n faAppStore,\n faCcMastercard,\n faItunesNote,\n faGolang,\n faKickstarter,\n faSquareKickstarter,\n faGrav,\n faWeibo,\n faUncharted,\n faFirstdraft,\n faSquareYoutube,\n faYoutubeSquare,\n faWikipediaW,\n faWpressr,\n faRendact,\n faAngellist,\n faGalacticRepublic,\n faNfcDirectional,\n faSkype,\n faJoget,\n faFedora,\n faStripeS,\n faMeta,\n faLaravel,\n faHotjar,\n faBluetoothB,\n faSquareLetterboxd,\n faStickerMule,\n faCreativeCommonsZero,\n faHips,\n faBehance,\n faReddit,\n faDiscord,\n faChrome,\n faAppStoreIos,\n faCcDiscover,\n faWpbeginner,\n faConfluence,\n faShoelace,\n faMdb,\n faDochub,\n faAccessibleIcon,\n faEbay,\n faAmazon,\n faUnsplash,\n faYarn,\n faSquareSteam,\n faSteamSquare,\n fa500px,\n faSquareVimeo,\n faVimeoSquare,\n faAsymmetrik,\n faFontAwesome,\n faFontAwesomeFlag,\n faFontAwesomeLogoFull,\n faGratipay,\n faApple,\n faHive,\n faGitkraken,\n faKeybase,\n faApplePay,\n faPadlet,\n faAmazonPay,\n faSquareGithub,\n faGithubSquare,\n faStumbleupon,\n faFedex,\n faPhoenixFramework,\n faShopify,\n faNeos,\n faSquareThreads,\n faHackerrank,\n faResearchgate,\n faSwift,\n faAngular,\n faSpeakap,\n faAngrycreative,\n faYCombinator,\n faEmpire,\n faEnvira,\n faGoogleScholar,\n faSquareGitlab,\n faGitlabSquare,\n faStudiovinari,\n faPiedPiper,\n faWordpress,\n faProductHunt,\n faFirefox,\n faLinode,\n faGoodreads,\n faSquareOdnoklassniki,\n faOdnoklassnikiSquare,\n faJsfiddle,\n faSith,\n faThemeisle,\n faPage4,\n faHashnode,\n faReact,\n faCcPaypal,\n faSquarespace,\n faCcStripe,\n faCreativeCommonsShare,\n faBitcoin,\n faKeycdn,\n faOpera,\n faItchIo,\n faUmbraco,\n faGalacticSenate,\n faUbuntu,\n faDraft2digital,\n faStripe,\n faHouzz,\n faGg,\n faDhl,\n faSquarePinterest,\n faPinterestSquare,\n faXing,\n faBlackberry,\n faCreativeCommonsPd,\n faPlaystation,\n faQuinscape,\n faLess,\n faBloggerB,\n faOpencart,\n faVine,\n faSignalMessenger,\n faPaypal,\n faGitlab,\n faTypo3,\n faRedditAlien,\n faYahoo,\n faDailymotion,\n faAffiliatetheme,\n faPiedPiperPp,\n faBootstrap,\n faOdnoklassniki,\n faNfcSymbol,\n faMintbit,\n faEthereum,\n faSpeakerDeck,\n faCreativeCommonsNcEu,\n faPatreon,\n faAvianex,\n faEllo,\n faGofore,\n faBimobject,\n faBraveReverse,\n faFacebookF,\n faSquareGooglePlus,\n faGooglePlusSquare,\n faWebAwesome,\n faMandalorian,\n faFirstOrderAlt,\n faOsi,\n faGoogleWallet,\n faDAndDBeyond,\n faPeriscope,\n faFulcrum,\n faCloudscale,\n faForumbee,\n faMizuni,\n faSchlix,\n faSquareXing,\n faXingSquare,\n faBandcamp,\n faWpforms,\n faCloudversify,\n faUsps,\n faMegaport,\n faMagento,\n faSpotify,\n faOptinMonster,\n faFly,\n faAviato,\n faItunes,\n faCuttlefish,\n faBlogger,\n faFlickr,\n faViber,\n faSoundcloud,\n faDigg,\n faTencentWeibo,\n faLetterboxd,\n faSymfony,\n faMaxcdn,\n faEtsy,\n faFacebookMessenger,\n faAudible,\n faThinkPeaks,\n faBilibili,\n faErlang,\n faXTwitter,\n faCottonBureau,\n faDashcube,\n fa42Group,\n faInnosoft,\n faStackExchange,\n faElementor,\n faSquarePiedPiper,\n faPiedPiperSquare,\n faCreativeCommonsNd,\n faPalfed,\n faSuperpowers,\n faResolving,\n faXbox,\n faSquareWebAwesomeStroke,\n faSearchengin,\n faTiktok,\n faSquareFacebook,\n faFacebookSquare,\n faRenren,\n faLinux,\n faGlide,\n faLinkedin,\n faHubspot,\n faDeploydog,\n faTwitch,\n faFlutter,\n faRavelry,\n faMixer,\n faSquareLastfm,\n faLastfmSquare,\n faVimeo,\n faMendeley,\n faUniregistry,\n faFigma,\n faCreativeCommonsRemix,\n faCcAmazonPay,\n faDropbox,\n faInstagram,\n faCmplid,\n faUpwork,\n faFacebook,\n faGripfire,\n faJediOrder,\n faUikit,\n faFortAwesomeAlt,\n faPhabricator,\n faUssunnah,\n faEarlybirds,\n faTradeFederation,\n faAutoprefixer,\n faWhatsapp,\n faSquareUpwork,\n faSlideshare,\n faGooglePlay,\n faViadeo,\n faLine,\n faGoogleDrive,\n faServicestack,\n faSimplybuilt,\n faBitbucket,\n faImdb,\n faDeezer,\n faRaspberryPi,\n faJira,\n faDocker,\n faScreenpal,\n faBluetooth,\n faGitter,\n faDAndD,\n faMicroblog,\n faCcDinersClub,\n faGgCircle,\n faPiedPiperHat,\n faKickstarterK,\n faYandex,\n faReadme,\n faHtml5,\n faSellsy,\n faSquareWebAwesome,\n faSass,\n faWirsindhandwerk,\n faWsh,\n faBuromobelexperte,\n faSalesforce,\n faOctopusDeploy,\n faMedapps,\n faNs8,\n faPinterestP,\n faApper,\n faFortAwesome,\n faWaze,\n faBluesky,\n faCcJcb,\n faSnapchat,\n faSnapchatGhost,\n faFantasyFlightGames,\n faRust,\n faWix,\n faSquareBehance,\n faBehanceSquare,\n faSupple,\n faWebflow,\n faRebel,\n faCss3,\n faStaylinked,\n faKaggle,\n faSpaceAwesome,\n faDeviantart,\n faCpanel,\n faGoodreadsG,\n faSquareGit,\n faGitSquare,\n faSquareTumblr,\n faTumblrSquare,\n faTrello,\n faCreativeCommonsNcJp,\n faGetPocket,\n faPerbyte,\n faGrunt,\n faWeebly,\n faConnectdevelop,\n faLeanpub,\n faBlackTie,\n faThemeco,\n faPython,\n faAndroid,\n faBots,\n faFreeCodeCamp,\n faHornbill,\n faJs,\n faIdeal,\n faGit,\n faDev,\n faSketch,\n faYandexInternational,\n faCcAmex,\n faUber,\n faGithub,\n faPhp,\n faAlipay,\n faYoutube,\n faSkyatlas,\n faFirefoxBrowser,\n faReplyd,\n faSuse,\n faJenkins,\n faTwitter,\n faRockrms,\n faPinterest,\n faBuffer,\n faNpm,\n faYammer,\n faBtc,\n faDribbble,\n faStumbleuponCircle,\n faInternetExplorer,\n faStubber,\n faTelegram,\n faTelegramPlane,\n faOldRepublic,\n faOdysee,\n faSquareWhatsapp,\n faWhatsappSquare,\n faNodeJs,\n faEdgeLegacy,\n faSlack,\n faSlackHash,\n faMedrt,\n faUsb,\n faTumblr,\n faVaadin,\n faQuora,\n faSquareXTwitter,\n faReacteurope,\n faMedium,\n faMediumM,\n faAmilia,\n faMixcloud,\n faFlipboard,\n faViacoin,\n faCriticalRole,\n faSitrox,\n faDiscourse,\n faJoomla,\n faMastodon,\n faAirbnb,\n faWolfPackBattalion,\n faBuyNLarge,\n faGulp,\n faCreativeCommonsSamplingPlus,\n faStrava,\n faEmber,\n faCanadianMapleLeaf,\n faTeamspeak,\n faPushed,\n faWordpressSimple,\n faNutritionix,\n faWodu,\n faGooglePay,\n faIntercom,\n faZhihu,\n faKorvue,\n faPix,\n faSteamSymbol\n};\n\nexport { icons as fab, prefix, faMonero, faHooli, faYelp, faCcVisa, faLastfm, faShopware, faCreativeCommonsNc, faAws, faRedhat, faYoast, faCloudflare, faUps, faPixiv, faWpexplorer, faDyalog, faBity, faStackpath, faBuysellads, faFirstOrder, faModx, faGuilded, faVnv, faSquareJs, faJsSquare, faMicrosoft, faQq, faOrcid, faJava, faInvision, faCreativeCommonsPdAlt, faCentercode, faGlideG, faDrupal, faJxl, faDartLang, faHireAHelper, faCreativeCommonsBy, faUnity, faWhmcs, faRocketchat, faVk, faUntappd, faMailchimp, faCss3Alt, faSquareReddit, faRedditSquare, faVimeoV, faContao, faSquareFontAwesome, faDeskpro, faBrave, faSistrix, faSquareInstagram, faInstagramSquare, faBattleNet, faTheRedYeti, faSquareHackerNews, faHackerNewsSquare, faEdge, faThreads, faNapster, faSquareSnapchat, faSnapchatSquare, faGooglePlusG, faArtstation, faMarkdown, faSourcetree, faGooglePlus, faDiaspora, faFoursquare, faStackOverflow, faGithubAlt, faPhoenixSquadron, faPagelines, faAlgolia, faRedRiver, faCreativeCommonsSa, faSafari, faGoogle, faSquareFontAwesomeStroke, faFontAwesomeAlt, faAtlassian, faLinkedinIn, faDigitalOcean, faNimblr, faChromecast, faEvernote, faHackerNews, faCreativeCommonsSampling, faAdversal, faCreativeCommons, faWatchmanMonitoring, faFonticons, faWeixin, faShirtsinbulk, faCodepen, faGitAlt, faLyft, faRev, faWindows, faWizardsOfTheCoast, faSquareViadeo, faViadeoSquare, faMeetup, faCentos, faAdn, faCloudsmith, faOpensuse, faPiedPiperAlt, faSquareDribbble, faDribbbleSquare, faCodiepie, faNode, faMix, faSteam, faCcApplePay, faScribd, faDebian, faOpenid, faInstalod, faExpeditedssl, faSellcast, faSquareTwitter, faTwitterSquare, faRProject, faDelicious, faFreebsd, faVuejs, faAccusoft, faIoxhost, faFonticonsFi, faAppStore, faCcMastercard, faItunesNote, faGolang, faKickstarter, faSquareKickstarter, faGrav, faWeibo, faUncharted, faFirstdraft, faSquareYoutube, faYoutubeSquare, faWikipediaW, faWpressr, faRendact, faAngellist, faGalacticRepublic, faNfcDirectional, faSkype, faJoget, faFedora, faStripeS, faMeta, faLaravel, faHotjar, faBluetoothB, faSquareLetterboxd, faStickerMule, faCreativeCommonsZero, faHips, faBehance, faReddit, faDiscord, faChrome, faAppStoreIos, faCcDiscover, faWpbeginner, faConfluence, faShoelace, faMdb, faDochub, faAccessibleIcon, faEbay, faAmazon, faUnsplash, faYarn, faSquareSteam, faSteamSquare, fa500px, faSquareVimeo, faVimeoSquare, faAsymmetrik, faFontAwesome, faFontAwesomeFlag, faFontAwesomeLogoFull, faGratipay, faApple, faHive, faGitkraken, faKeybase, faApplePay, faPadlet, faAmazonPay, faSquareGithub, faGithubSquare, faStumbleupon, faFedex, faPhoenixFramework, faShopify, faNeos, faSquareThreads, faHackerrank, faResearchgate, faSwift, faAngular, faSpeakap, faAngrycreative, faYCombinator, faEmpire, faEnvira, faGoogleScholar, faSquareGitlab, faGitlabSquare, faStudiovinari, faPiedPiper, faWordpress, faProductHunt, faFirefox, faLinode, faGoodreads, faSquareOdnoklassniki, faOdnoklassnikiSquare, faJsfiddle, faSith, faThemeisle, faPage4, faHashnode, faReact, faCcPaypal, faSquarespace, faCcStripe, faCreativeCommonsShare, faBitcoin, faKeycdn, faOpera, faItchIo, faUmbraco, faGalacticSenate, faUbuntu, faDraft2digital, faStripe, faHouzz, faGg, faDhl, faSquarePinterest, faPinterestSquare, faXing, faBlackberry, faCreativeCommonsPd, faPlaystation, faQuinscape, faLess, faBloggerB, faOpencart, faVine, faSignalMessenger, faPaypal, faGitlab, faTypo3, faRedditAlien, faYahoo, faDailymotion, faAffiliatetheme, faPiedPiperPp, faBootstrap, faOdnoklassniki, faNfcSymbol, faMintbit, faEthereum, faSpeakerDeck, faCreativeCommonsNcEu, faPatreon, faAvianex, faEllo, faGofore, faBimobject, faBraveReverse, faFacebookF, faSquareGooglePlus, faGooglePlusSquare, faWebAwesome, faMandalorian, faFirstOrderAlt, faOsi, faGoogleWallet, faDAndDBeyond, faPeriscope, faFulcrum, faCloudscale, faForumbee, faMizuni, faSchlix, faSquareXing, faXingSquare, faBandcamp, faWpforms, faCloudversify, faUsps, faMegaport, faMagento, faSpotify, faOptinMonster, faFly, faAviato, faItunes, faCuttlefish, faBlogger, faFlickr, faViber, faSoundcloud, faDigg, faTencentWeibo, faLetterboxd, faSymfony, faMaxcdn, faEtsy, faFacebookMessenger, faAudible, faThinkPeaks, faBilibili, faErlang, faXTwitter, faCottonBureau, faDashcube, fa42Group, faInnosoft, faStackExchange, faElementor, faSquarePiedPiper, faPiedPiperSquare, faCreativeCommonsNd, faPalfed, faSuperpowers, faResolving, faXbox, faSquareWebAwesomeStroke, faSearchengin, faTiktok, faSquareFacebook, faFacebookSquare, faRenren, faLinux, faGlide, faLinkedin, faHubspot, faDeploydog, faTwitch, faFlutter, faRavelry, faMixer, faSquareLastfm, faLastfmSquare, faVimeo, faMendeley, faUniregistry, faFigma, faCreativeCommonsRemix, faCcAmazonPay, faDropbox, faInstagram, faCmplid, faUpwork, faFacebook, faGripfire, faJediOrder, faUikit, faFortAwesomeAlt, faPhabricator, faUssunnah, faEarlybirds, faTradeFederation, faAutoprefixer, faWhatsapp, faSquareUpwork, faSlideshare, faGooglePlay, faViadeo, faLine, faGoogleDrive, faServicestack, faSimplybuilt, faBitbucket, faImdb, faDeezer, faRaspberryPi, faJira, faDocker, faScreenpal, faBluetooth, faGitter, faDAndD, faMicroblog, faCcDinersClub, faGgCircle, faPiedPiperHat, faKickstarterK, faYandex, faReadme, faHtml5, faSellsy, faSquareWebAwesome, faSass, faWirsindhandwerk, faWsh, faBuromobelexperte, faSalesforce, faOctopusDeploy, faMedapps, faNs8, faPinterestP, faApper, faFortAwesome, faWaze, faBluesky, faCcJcb, faSnapchat, faSnapchatGhost, faFantasyFlightGames, faRust, faWix, faSquareBehance, faBehanceSquare, faSupple, faWebflow, faRebel, faCss3, faStaylinked, faKaggle, faSpaceAwesome, faDeviantart, faCpanel, faGoodreadsG, faSquareGit, faGitSquare, faSquareTumblr, faTumblrSquare, faTrello, faCreativeCommonsNcJp, faGetPocket, faPerbyte, faGrunt, faWeebly, faConnectdevelop, faLeanpub, faBlackTie, faThemeco, faPython, faAndroid, faBots, faFreeCodeCamp, faHornbill, faJs, faIdeal, faGit, faDev, faSketch, faYandexInternational, faCcAmex, faUber, faGithub, faPhp, faAlipay, faYoutube, faSkyatlas, faFirefoxBrowser, faReplyd, faSuse, faJenkins, faTwitter, faRockrms, faPinterest, faBuffer, faNpm, faYammer, faBtc, faDribbble, faStumbleuponCircle, faInternetExplorer, faStubber, faTelegram, faTelegramPlane, faOldRepublic, faOdysee, faSquareWhatsapp, faWhatsappSquare, faNodeJs, faEdgeLegacy, faSlack, faSlackHash, faMedrt, faUsb, faTumblr, faVaadin, faQuora, faSquareXTwitter, faReacteurope, faMedium, faMediumM, faAmilia, faMixcloud, faFlipboard, faViacoin, faCriticalRole, faSitrox, faDiscourse, faJoomla, faMastodon, faAirbnb, faWolfPackBattalion, faBuyNLarge, faGulp, faCreativeCommonsSamplingPlus, faStrava, faEmber, faCanadianMapleLeaf, faTeamspeak, faPushed, faWordpressSimple, faNutritionix, faWodu, faGooglePay, faIntercom, faZhihu, faKorvue, faPix, faSteamSymbol };\n","////////////////////////////////////////////////////////////////////////////////\n//#region Types and Constants\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * Actions represent the type of change to a location value.\n */\nexport enum Action {\n /**\n * A POP indicates a change to an arbitrary index in the history stack, such\n * as a back or forward navigation. It does not describe the direction of the\n * navigation, only that the current index changed.\n *\n * Note: This is the default action for newly created history objects.\n */\n Pop = \"POP\",\n\n /**\n * A PUSH indicates a new entry being added to the history stack, such as when\n * a link is clicked and a new page loads. When this happens, all subsequent\n * entries in the stack are lost.\n */\n Push = \"PUSH\",\n\n /**\n * A REPLACE indicates the entry at the current index in the history stack\n * being replaced by a new one.\n */\n Replace = \"REPLACE\",\n}\n\n/**\n * The pathname, search, and hash values of a URL.\n */\nexport interface Path {\n /**\n * A URL pathname, beginning with a /.\n */\n pathname: string;\n\n /**\n * A URL search string, beginning with a ?.\n */\n search: string;\n\n /**\n * A URL fragment identifier, beginning with a #.\n */\n hash: string;\n}\n\n// TODO: (v7) Change the Location generic default from `any` to `unknown` and\n// remove Remix `useLocation` wrapper.\n\n/**\n * An entry in a history stack. A location contains information about the\n * URL path, as well as possibly some arbitrary state and a key.\n */\nexport interface Location extends Path {\n /**\n * A value of arbitrary data associated with this location.\n */\n state: State;\n\n /**\n * A unique string associated with this location. May be used to safely store\n * and retrieve data in some other storage API, like `localStorage`.\n *\n * Note: This value is always \"default\" on the initial location.\n */\n key: string;\n}\n\n/**\n * A change to the current location.\n */\nexport interface Update {\n /**\n * The action that triggered the change.\n */\n action: Action;\n\n /**\n * The new location.\n */\n location: Location;\n\n /**\n * The delta between this location and the former location in the history stack\n */\n delta: number | null;\n}\n\n/**\n * A function that receives notifications about location changes.\n */\nexport interface Listener {\n (update: Update): void;\n}\n\n/**\n * Describes a location that is the destination of some navigation, either via\n * `history.push` or `history.replace`. This may be either a URL or the pieces\n * of a URL path.\n */\nexport type To = string | Partial;\n\n/**\n * A history is an interface to the navigation stack. The history serves as the\n * source of truth for the current location, as well as provides a set of\n * methods that may be used to change it.\n *\n * It is similar to the DOM's `window.history` object, but with a smaller, more\n * focused API.\n */\nexport interface History {\n /**\n * The last action that modified the current location. This will always be\n * Action.Pop when a history instance is first created. This value is mutable.\n */\n readonly action: Action;\n\n /**\n * The current location. This value is mutable.\n */\n readonly location: Location;\n\n /**\n * Returns a valid href for the given `to` value that may be used as\n * the value of an attribute.\n *\n * @param to - The destination URL\n */\n createHref(to: To): string;\n\n /**\n * Returns a URL for the given `to` value\n *\n * @param to - The destination URL\n */\n createURL(to: To): URL;\n\n /**\n * Encode a location the same way window.history would do (no-op for memory\n * history) so we ensure our PUSH/REPLACE navigations for data routers\n * behave the same as POP\n *\n * @param to Unencoded path\n */\n encodeLocation(to: To): Path;\n\n /**\n * Pushes a new location onto the history stack, increasing its length by one.\n * If there were any entries in the stack after the current one, they are\n * lost.\n *\n * @param to - The new URL\n * @param state - Data to associate with the new location\n */\n push(to: To, state?: any): void;\n\n /**\n * Replaces the current location in the history stack with a new one. The\n * location that was replaced will no longer be available.\n *\n * @param to - The new URL\n * @param state - Data to associate with the new location\n */\n replace(to: To, state?: any): void;\n\n /**\n * Navigates `n` entries backward/forward in the history stack relative to the\n * current index. For example, a \"back\" navigation would use go(-1).\n *\n * @param delta - The delta in the stack index\n */\n go(delta: number): void;\n\n /**\n * Sets up a listener that will be called whenever the current location\n * changes.\n *\n * @param listener - A function that will be called when the location changes\n * @returns unlisten - A function that may be used to stop listening\n */\n listen(listener: Listener): () => void;\n}\n\ntype HistoryState = {\n usr: any;\n key?: string;\n idx: number;\n};\n\nconst PopStateEventType = \"popstate\";\n//#endregion\n\n////////////////////////////////////////////////////////////////////////////////\n//#region Memory History\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * A user-supplied object that describes a location. Used when providing\n * entries to `createMemoryHistory` via its `initialEntries` option.\n */\nexport type InitialEntry = string | Partial;\n\nexport type MemoryHistoryOptions = {\n initialEntries?: InitialEntry[];\n initialIndex?: number;\n v5Compat?: boolean;\n};\n\n/**\n * A memory history stores locations in memory. This is useful in stateful\n * environments where there is no web browser, such as node tests or React\n * Native.\n */\nexport interface MemoryHistory extends History {\n /**\n * The current index in the history stack.\n */\n readonly index: number;\n}\n\n/**\n * Memory history stores the current location in memory. It is designed for use\n * in stateful non-browser environments like tests and React Native.\n */\nexport function createMemoryHistory(\n options: MemoryHistoryOptions = {}\n): MemoryHistory {\n let { initialEntries = [\"/\"], initialIndex, v5Compat = false } = options;\n let entries: Location[]; // Declare so we can access from createMemoryLocation\n entries = initialEntries.map((entry, index) =>\n createMemoryLocation(\n entry,\n typeof entry === \"string\" ? null : entry.state,\n index === 0 ? \"default\" : undefined\n )\n );\n let index = clampIndex(\n initialIndex == null ? entries.length - 1 : initialIndex\n );\n let action = Action.Pop;\n let listener: Listener | null = null;\n\n function clampIndex(n: number): number {\n return Math.min(Math.max(n, 0), entries.length - 1);\n }\n function getCurrentLocation(): Location {\n return entries[index];\n }\n function createMemoryLocation(\n to: To,\n state: any = null,\n key?: string\n ): Location {\n let location = createLocation(\n entries ? getCurrentLocation().pathname : \"/\",\n to,\n state,\n key\n );\n warning(\n location.pathname.charAt(0) === \"/\",\n `relative pathnames are not supported in memory history: ${JSON.stringify(\n to\n )}`\n );\n return location;\n }\n\n function createHref(to: To) {\n return typeof to === \"string\" ? to : createPath(to);\n }\n\n let history: MemoryHistory = {\n get index() {\n return index;\n },\n get action() {\n return action;\n },\n get location() {\n return getCurrentLocation();\n },\n createHref,\n createURL(to) {\n return new URL(createHref(to), \"http://localhost\");\n },\n encodeLocation(to: To) {\n let path = typeof to === \"string\" ? parsePath(to) : to;\n return {\n pathname: path.pathname || \"\",\n search: path.search || \"\",\n hash: path.hash || \"\",\n };\n },\n push(to, state) {\n action = Action.Push;\n let nextLocation = createMemoryLocation(to, state);\n index += 1;\n entries.splice(index, entries.length, nextLocation);\n if (v5Compat && listener) {\n listener({ action, location: nextLocation, delta: 1 });\n }\n },\n replace(to, state) {\n action = Action.Replace;\n let nextLocation = createMemoryLocation(to, state);\n entries[index] = nextLocation;\n if (v5Compat && listener) {\n listener({ action, location: nextLocation, delta: 0 });\n }\n },\n go(delta) {\n action = Action.Pop;\n let nextIndex = clampIndex(index + delta);\n let nextLocation = entries[nextIndex];\n index = nextIndex;\n if (listener) {\n listener({ action, location: nextLocation, delta });\n }\n },\n listen(fn: Listener) {\n listener = fn;\n return () => {\n listener = null;\n };\n },\n };\n\n return history;\n}\n//#endregion\n\n////////////////////////////////////////////////////////////////////////////////\n//#region Browser History\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * A browser history stores the current location in regular URLs in a web\n * browser environment. This is the standard for most web apps and provides the\n * cleanest URLs the browser's address bar.\n *\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#browserhistory\n */\nexport interface BrowserHistory extends UrlHistory {}\n\nexport type BrowserHistoryOptions = UrlHistoryOptions;\n\n/**\n * Browser history stores the location in regular URLs. This is the standard for\n * most web apps, but it requires some configuration on the server to ensure you\n * serve the same app at multiple URLs.\n *\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#createbrowserhistory\n */\nexport function createBrowserHistory(\n options: BrowserHistoryOptions = {}\n): BrowserHistory {\n function createBrowserLocation(\n window: Window,\n globalHistory: Window[\"history\"]\n ) {\n let { pathname, search, hash } = window.location;\n return createLocation(\n \"\",\n { pathname, search, hash },\n // state defaults to `null` because `window.history.state` does\n (globalHistory.state && globalHistory.state.usr) || null,\n (globalHistory.state && globalHistory.state.key) || \"default\"\n );\n }\n\n function createBrowserHref(window: Window, to: To) {\n return typeof to === \"string\" ? to : createPath(to);\n }\n\n return getUrlBasedHistory(\n createBrowserLocation,\n createBrowserHref,\n null,\n options\n );\n}\n//#endregion\n\n////////////////////////////////////////////////////////////////////////////////\n//#region Hash History\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * A hash history stores the current location in the fragment identifier portion\n * of the URL in a web browser environment.\n *\n * This is ideal for apps that do not control the server for some reason\n * (because the fragment identifier is never sent to the server), including some\n * shared hosting environments that do not provide fine-grained controls over\n * which pages are served at which URLs.\n *\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#hashhistory\n */\nexport interface HashHistory extends UrlHistory {}\n\nexport type HashHistoryOptions = UrlHistoryOptions;\n\n/**\n * Hash history stores the location in window.location.hash. This makes it ideal\n * for situations where you don't want to send the location to the server for\n * some reason, either because you do cannot configure it or the URL space is\n * reserved for something else.\n *\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#createhashhistory\n */\nexport function createHashHistory(\n options: HashHistoryOptions = {}\n): HashHistory {\n function createHashLocation(\n window: Window,\n globalHistory: Window[\"history\"]\n ) {\n let {\n pathname = \"/\",\n search = \"\",\n hash = \"\",\n } = parsePath(window.location.hash.substr(1));\n\n // Hash URL should always have a leading / just like window.location.pathname\n // does, so if an app ends up at a route like /#something then we add a\n // leading slash so all of our path-matching behaves the same as if it would\n // in a browser router. This is particularly important when there exists a\n // root splat route () since that matches internally against\n // \"/*\" and we'd expect /#something to 404 in a hash router app.\n if (!pathname.startsWith(\"/\") && !pathname.startsWith(\".\")) {\n pathname = \"/\" + pathname;\n }\n\n return createLocation(\n \"\",\n { pathname, search, hash },\n // state defaults to `null` because `window.history.state` does\n (globalHistory.state && globalHistory.state.usr) || null,\n (globalHistory.state && globalHistory.state.key) || \"default\"\n );\n }\n\n function createHashHref(window: Window, to: To) {\n let base = window.document.querySelector(\"base\");\n let href = \"\";\n\n if (base && base.getAttribute(\"href\")) {\n let url = window.location.href;\n let hashIndex = url.indexOf(\"#\");\n href = hashIndex === -1 ? url : url.slice(0, hashIndex);\n }\n\n return href + \"#\" + (typeof to === \"string\" ? to : createPath(to));\n }\n\n function validateHashLocation(location: Location, to: To) {\n warning(\n location.pathname.charAt(0) === \"/\",\n `relative pathnames are not supported in hash history.push(${JSON.stringify(\n to\n )})`\n );\n }\n\n return getUrlBasedHistory(\n createHashLocation,\n createHashHref,\n validateHashLocation,\n options\n );\n}\n//#endregion\n\n////////////////////////////////////////////////////////////////////////////////\n//#region UTILS\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * @private\n */\nexport function invariant(value: boolean, message?: string): asserts value;\nexport function invariant(\n value: T | null | undefined,\n message?: string\n): asserts value is T;\nexport function invariant(value: any, message?: string) {\n if (value === false || value === null || typeof value === \"undefined\") {\n throw new Error(message);\n }\n}\n\nexport function warning(cond: any, message: string) {\n if (!cond) {\n // eslint-disable-next-line no-console\n if (typeof console !== \"undefined\") console.warn(message);\n\n try {\n // Welcome to debugging history!\n //\n // This error is thrown as a convenience, so you can more easily\n // find the source for a warning that appears in the console by\n // enabling \"pause on exceptions\" in your JavaScript debugger.\n throw new Error(message);\n // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n}\n\nfunction createKey() {\n return Math.random().toString(36).substr(2, 8);\n}\n\n/**\n * For browser-based histories, we combine the state and key into an object\n */\nfunction getHistoryState(location: Location, index: number): HistoryState {\n return {\n usr: location.state,\n key: location.key,\n idx: index,\n };\n}\n\n/**\n * Creates a Location object with a unique key from the given Path\n */\nexport function createLocation(\n current: string | Location,\n to: To,\n state: any = null,\n key?: string\n): Readonly {\n let location: Readonly = {\n pathname: typeof current === \"string\" ? current : current.pathname,\n search: \"\",\n hash: \"\",\n ...(typeof to === \"string\" ? parsePath(to) : to),\n state,\n // TODO: This could be cleaned up. push/replace should probably just take\n // full Locations now and avoid the need to run through this flow at all\n // But that's a pretty big refactor to the current test suite so going to\n // keep as is for the time being and just let any incoming keys take precedence\n key: (to && (to as Location).key) || key || createKey(),\n };\n return location;\n}\n\n/**\n * Creates a string URL path from the given pathname, search, and hash components.\n */\nexport function createPath({\n pathname = \"/\",\n search = \"\",\n hash = \"\",\n}: Partial) {\n if (search && search !== \"?\")\n pathname += search.charAt(0) === \"?\" ? search : \"?\" + search;\n if (hash && hash !== \"#\")\n pathname += hash.charAt(0) === \"#\" ? hash : \"#\" + hash;\n return pathname;\n}\n\n/**\n * Parses a string URL path into its separate pathname, search, and hash components.\n */\nexport function parsePath(path: string): Partial {\n let parsedPath: Partial = {};\n\n if (path) {\n let hashIndex = path.indexOf(\"#\");\n if (hashIndex >= 0) {\n parsedPath.hash = path.substr(hashIndex);\n path = path.substr(0, hashIndex);\n }\n\n let searchIndex = path.indexOf(\"?\");\n if (searchIndex >= 0) {\n parsedPath.search = path.substr(searchIndex);\n path = path.substr(0, searchIndex);\n }\n\n if (path) {\n parsedPath.pathname = path;\n }\n }\n\n return parsedPath;\n}\n\nexport interface UrlHistory extends History {}\n\nexport type UrlHistoryOptions = {\n window?: Window;\n v5Compat?: boolean;\n};\n\nfunction getUrlBasedHistory(\n getLocation: (window: Window, globalHistory: Window[\"history\"]) => Location,\n createHref: (window: Window, to: To) => string,\n validateLocation: ((location: Location, to: To) => void) | null,\n options: UrlHistoryOptions = {}\n): UrlHistory {\n let { window = document.defaultView!, v5Compat = false } = options;\n let globalHistory = window.history;\n let action = Action.Pop;\n let listener: Listener | null = null;\n\n let index = getIndex()!;\n // Index should only be null when we initialize. If not, it's because the\n // user called history.pushState or history.replaceState directly, in which\n // case we should log a warning as it will result in bugs.\n if (index == null) {\n index = 0;\n globalHistory.replaceState({ ...globalHistory.state, idx: index }, \"\");\n }\n\n function getIndex(): number {\n let state = globalHistory.state || { idx: null };\n return state.idx;\n }\n\n function handlePop() {\n action = Action.Pop;\n let nextIndex = getIndex();\n let delta = nextIndex == null ? null : nextIndex - index;\n index = nextIndex;\n if (listener) {\n listener({ action, location: history.location, delta });\n }\n }\n\n function push(to: To, state?: any) {\n action = Action.Push;\n let location = createLocation(history.location, to, state);\n if (validateLocation) validateLocation(location, to);\n\n index = getIndex() + 1;\n let historyState = getHistoryState(location, index);\n let url = history.createHref(location);\n\n // try...catch because iOS limits us to 100 pushState calls :/\n try {\n globalHistory.pushState(historyState, \"\", url);\n } catch (error) {\n // If the exception is because `state` can't be serialized, let that throw\n // outwards just like a replace call would so the dev knows the cause\n // https://html.spec.whatwg.org/multipage/nav-history-apis.html#shared-history-push/replace-state-steps\n // https://html.spec.whatwg.org/multipage/structured-data.html#structuredserializeinternal\n if (error instanceof DOMException && error.name === \"DataCloneError\") {\n throw error;\n }\n // They are going to lose state here, but there is no real\n // way to warn them about it since the page will refresh...\n window.location.assign(url);\n }\n\n if (v5Compat && listener) {\n listener({ action, location: history.location, delta: 1 });\n }\n }\n\n function replace(to: To, state?: any) {\n action = Action.Replace;\n let location = createLocation(history.location, to, state);\n if (validateLocation) validateLocation(location, to);\n\n index = getIndex();\n let historyState = getHistoryState(location, index);\n let url = history.createHref(location);\n globalHistory.replaceState(historyState, \"\", url);\n\n if (v5Compat && listener) {\n listener({ action, location: history.location, delta: 0 });\n }\n }\n\n function createURL(to: To): URL {\n // window.location.origin is \"null\" (the literal string value) in Firefox\n // under certain conditions, notably when serving from a local HTML file\n // See https://bugzilla.mozilla.org/show_bug.cgi?id=878297\n let base =\n window.location.origin !== \"null\"\n ? window.location.origin\n : window.location.href;\n\n let href = typeof to === \"string\" ? to : createPath(to);\n // Treating this as a full URL will strip any trailing spaces so we need to\n // pre-encode them since they might be part of a matching splat param from\n // an ancestor route\n href = href.replace(/ $/, \"%20\");\n invariant(\n base,\n `No window.location.(origin|href) available to create URL for href: ${href}`\n );\n return new URL(href, base);\n }\n\n let history: History = {\n get action() {\n return action;\n },\n get location() {\n return getLocation(window, globalHistory);\n },\n listen(fn: Listener) {\n if (listener) {\n throw new Error(\"A history only accepts one active listener\");\n }\n window.addEventListener(PopStateEventType, handlePop);\n listener = fn;\n\n return () => {\n window.removeEventListener(PopStateEventType, handlePop);\n listener = null;\n };\n },\n createHref(to) {\n return createHref(window, to);\n },\n createURL,\n encodeLocation(to) {\n // Encode a Location the same way window.location would\n let url = createURL(to);\n return {\n pathname: url.pathname,\n search: url.search,\n hash: url.hash,\n };\n },\n push,\n replace,\n go(n) {\n return globalHistory.go(n);\n },\n };\n\n return history;\n}\n\n//#endregion\n","import type { Location, Path, To } from \"./history\";\nimport { invariant, parsePath, warning } from \"./history\";\n\n/**\n * Map of routeId -> data returned from a loader/action/error\n */\nexport interface RouteData {\n [routeId: string]: any;\n}\n\nexport enum ResultType {\n data = \"data\",\n deferred = \"deferred\",\n redirect = \"redirect\",\n error = \"error\",\n}\n\n/**\n * Successful result from a loader or action\n */\nexport interface SuccessResult {\n type: ResultType.data;\n data: unknown;\n statusCode?: number;\n headers?: Headers;\n}\n\n/**\n * Successful defer() result from a loader or action\n */\nexport interface DeferredResult {\n type: ResultType.deferred;\n deferredData: DeferredData;\n statusCode?: number;\n headers?: Headers;\n}\n\n/**\n * Redirect result from a loader or action\n */\nexport interface RedirectResult {\n type: ResultType.redirect;\n // We keep the raw Response for redirects so we can return it verbatim\n response: Response;\n}\n\n/**\n * Unsuccessful result from a loader or action\n */\nexport interface ErrorResult {\n type: ResultType.error;\n error: unknown;\n statusCode?: number;\n headers?: Headers;\n}\n\n/**\n * Result from a loader or action - potentially successful or unsuccessful\n */\nexport type DataResult =\n | SuccessResult\n | DeferredResult\n | RedirectResult\n | ErrorResult;\n\n/**\n * Result from a loader or action called via dataStrategy\n */\nexport interface HandlerResult {\n type: \"data\" | \"error\";\n result: unknown; // data, Error, Response, DeferredData, DataWithResponseInit\n}\n\ntype LowerCaseFormMethod = \"get\" | \"post\" | \"put\" | \"patch\" | \"delete\";\ntype UpperCaseFormMethod = Uppercase;\n\n/**\n * Users can specify either lowercase or uppercase form methods on `
`,\n * useSubmit(), ``, etc.\n */\nexport type HTMLFormMethod = LowerCaseFormMethod | UpperCaseFormMethod;\n\n/**\n * Active navigation/fetcher form methods are exposed in lowercase on the\n * RouterState\n */\nexport type FormMethod = LowerCaseFormMethod;\nexport type MutationFormMethod = Exclude;\n\n/**\n * In v7, active navigation/fetcher form methods are exposed in uppercase on the\n * RouterState. This is to align with the normalization done via fetch().\n */\nexport type V7_FormMethod = UpperCaseFormMethod;\nexport type V7_MutationFormMethod = Exclude;\n\nexport type FormEncType =\n | \"application/x-www-form-urlencoded\"\n | \"multipart/form-data\"\n | \"application/json\"\n | \"text/plain\";\n\n// Thanks https://github.com/sindresorhus/type-fest!\ntype JsonObject = { [Key in string]: JsonValue } & {\n [Key in string]?: JsonValue | undefined;\n};\ntype JsonArray = JsonValue[] | readonly JsonValue[];\ntype JsonPrimitive = string | number | boolean | null;\ntype JsonValue = JsonPrimitive | JsonObject | JsonArray;\n\n/**\n * @private\n * Internal interface to pass around for action submissions, not intended for\n * external consumption\n */\nexport type Submission =\n | {\n formMethod: FormMethod | V7_FormMethod;\n formAction: string;\n formEncType: FormEncType;\n formData: FormData;\n json: undefined;\n text: undefined;\n }\n | {\n formMethod: FormMethod | V7_FormMethod;\n formAction: string;\n formEncType: FormEncType;\n formData: undefined;\n json: JsonValue;\n text: undefined;\n }\n | {\n formMethod: FormMethod | V7_FormMethod;\n formAction: string;\n formEncType: FormEncType;\n formData: undefined;\n json: undefined;\n text: string;\n };\n\n/**\n * @private\n * Arguments passed to route loader/action functions. Same for now but we keep\n * this as a private implementation detail in case they diverge in the future.\n */\ninterface DataFunctionArgs {\n request: Request;\n params: Params;\n context?: Context;\n}\n\n// TODO: (v7) Change the defaults from any to unknown in and remove Remix wrappers:\n// ActionFunction, ActionFunctionArgs, LoaderFunction, LoaderFunctionArgs\n// Also, make them a type alias instead of an interface\n\n/**\n * Arguments passed to loader functions\n */\nexport interface LoaderFunctionArgs\n extends DataFunctionArgs {}\n\n/**\n * Arguments passed to action functions\n */\nexport interface ActionFunctionArgs\n extends DataFunctionArgs {}\n\n/**\n * Loaders and actions can return anything except `undefined` (`null` is a\n * valid return value if there is no data to return). Responses are preferred\n * and will ease any future migration to Remix\n */\ntype DataFunctionValue = Response | NonNullable | null;\n\ntype DataFunctionReturnValue = Promise | DataFunctionValue;\n\n/**\n * Route loader function signature\n */\nexport type LoaderFunction = {\n (\n args: LoaderFunctionArgs,\n handlerCtx?: unknown\n ): DataFunctionReturnValue;\n} & { hydrate?: boolean };\n\n/**\n * Route action function signature\n */\nexport interface ActionFunction {\n (\n args: ActionFunctionArgs,\n handlerCtx?: unknown\n ): DataFunctionReturnValue;\n}\n\n/**\n * Arguments passed to shouldRevalidate function\n */\nexport interface ShouldRevalidateFunctionArgs {\n currentUrl: URL;\n currentParams: AgnosticDataRouteMatch[\"params\"];\n nextUrl: URL;\n nextParams: AgnosticDataRouteMatch[\"params\"];\n formMethod?: Submission[\"formMethod\"];\n formAction?: Submission[\"formAction\"];\n formEncType?: Submission[\"formEncType\"];\n text?: Submission[\"text\"];\n formData?: Submission[\"formData\"];\n json?: Submission[\"json\"];\n actionStatus?: number;\n actionResult?: any;\n defaultShouldRevalidate: boolean;\n}\n\n/**\n * Route shouldRevalidate function signature. This runs after any submission\n * (navigation or fetcher), so we flatten the navigation/fetcher submission\n * onto the arguments. It shouldn't matter whether it came from a navigation\n * or a fetcher, what really matters is the URLs and the formData since loaders\n * have to re-run based on the data models that were potentially mutated.\n */\nexport interface ShouldRevalidateFunction {\n (args: ShouldRevalidateFunctionArgs): boolean;\n}\n\n/**\n * Function provided by the framework-aware layers to set `hasErrorBoundary`\n * from the framework-aware `errorElement` prop\n *\n * @deprecated Use `mapRouteProperties` instead\n */\nexport interface DetectErrorBoundaryFunction {\n (route: AgnosticRouteObject): boolean;\n}\n\nexport interface DataStrategyMatch\n extends AgnosticRouteMatch {\n shouldLoad: boolean;\n resolve: (\n handlerOverride?: (\n handler: (ctx?: unknown) => DataFunctionReturnValue\n ) => Promise\n ) => Promise;\n}\n\nexport interface DataStrategyFunctionArgs\n extends DataFunctionArgs {\n matches: DataStrategyMatch[];\n}\n\nexport interface DataStrategyFunction {\n (args: DataStrategyFunctionArgs): Promise;\n}\n\nexport interface AgnosticPatchRoutesOnNavigationFunction<\n M extends AgnosticRouteMatch = AgnosticRouteMatch\n> {\n (opts: {\n path: string;\n matches: M[];\n patch: (routeId: string | null, children: AgnosticRouteObject[]) => void;\n }): void | Promise;\n}\n\n/**\n * Function provided by the framework-aware layers to set any framework-specific\n * properties from framework-agnostic properties\n */\nexport interface MapRoutePropertiesFunction {\n (route: AgnosticRouteObject): {\n hasErrorBoundary: boolean;\n } & Record;\n}\n\n/**\n * Keys we cannot change from within a lazy() function. We spread all other keys\n * onto the route. Either they're meaningful to the router, or they'll get\n * ignored.\n */\nexport type ImmutableRouteKey =\n | \"lazy\"\n | \"caseSensitive\"\n | \"path\"\n | \"id\"\n | \"index\"\n | \"children\";\n\nexport const immutableRouteKeys = new Set([\n \"lazy\",\n \"caseSensitive\",\n \"path\",\n \"id\",\n \"index\",\n \"children\",\n]);\n\ntype RequireOne = Exclude<\n {\n [K in keyof T]: K extends Key ? Omit & Required> : never;\n }[keyof T],\n undefined\n>;\n\n/**\n * lazy() function to load a route definition, which can add non-matching\n * related properties to a route\n */\nexport interface LazyRouteFunction {\n (): Promise>>;\n}\n\n/**\n * Base RouteObject with common props shared by all types of routes\n */\ntype AgnosticBaseRouteObject = {\n caseSensitive?: boolean;\n path?: string;\n id?: string;\n loader?: LoaderFunction | boolean;\n action?: ActionFunction | boolean;\n hasErrorBoundary?: boolean;\n shouldRevalidate?: ShouldRevalidateFunction;\n handle?: any;\n lazy?: LazyRouteFunction;\n};\n\n/**\n * Index routes must not have children\n */\nexport type AgnosticIndexRouteObject = AgnosticBaseRouteObject & {\n children?: undefined;\n index: true;\n};\n\n/**\n * Non-index routes may have children, but cannot have index\n */\nexport type AgnosticNonIndexRouteObject = AgnosticBaseRouteObject & {\n children?: AgnosticRouteObject[];\n index?: false;\n};\n\n/**\n * A route object represents a logical route, with (optionally) its child\n * routes organized in a tree-like structure.\n */\nexport type AgnosticRouteObject =\n | AgnosticIndexRouteObject\n | AgnosticNonIndexRouteObject;\n\nexport type AgnosticDataIndexRouteObject = AgnosticIndexRouteObject & {\n id: string;\n};\n\nexport type AgnosticDataNonIndexRouteObject = AgnosticNonIndexRouteObject & {\n children?: AgnosticDataRouteObject[];\n id: string;\n};\n\n/**\n * A data route object, which is just a RouteObject with a required unique ID\n */\nexport type AgnosticDataRouteObject =\n | AgnosticDataIndexRouteObject\n | AgnosticDataNonIndexRouteObject;\n\nexport type RouteManifest = Record;\n\n// Recursive helper for finding path parameters in the absence of wildcards\ntype _PathParam =\n // split path into individual path segments\n Path extends `${infer L}/${infer R}`\n ? _PathParam | _PathParam\n : // find params after `:`\n Path extends `:${infer Param}`\n ? Param extends `${infer Optional}?`\n ? Optional\n : Param\n : // otherwise, there aren't any params present\n never;\n\n/**\n * Examples:\n * \"/a/b/*\" -> \"*\"\n * \":a\" -> \"a\"\n * \"/a/:b\" -> \"b\"\n * \"/a/blahblahblah:b\" -> \"b\"\n * \"/:a/:b\" -> \"a\" | \"b\"\n * \"/:a/b/:c/*\" -> \"a\" | \"c\" | \"*\"\n */\nexport type PathParam =\n // check if path is just a wildcard\n Path extends \"*\" | \"/*\"\n ? \"*\"\n : // look for wildcard at the end of the path\n Path extends `${infer Rest}/*`\n ? \"*\" | _PathParam\n : // look for params in the absence of wildcards\n _PathParam;\n\n// Attempt to parse the given string segment. If it fails, then just return the\n// plain string type as a default fallback. Otherwise, return the union of the\n// parsed string literals that were referenced as dynamic segments in the route.\nexport type ParamParseKey =\n // if you could not find path params, fallback to `string`\n [PathParam] extends [never] ? string : PathParam;\n\n/**\n * The parameters that were parsed from the URL path.\n */\nexport type Params = {\n readonly [key in Key]: string | undefined;\n};\n\n/**\n * A RouteMatch contains info about how a route matched a URL.\n */\nexport interface AgnosticRouteMatch<\n ParamKey extends string = string,\n RouteObjectType extends AgnosticRouteObject = AgnosticRouteObject\n> {\n /**\n * The names and values of dynamic parameters in the URL.\n */\n params: Params;\n /**\n * The portion of the URL pathname that was matched.\n */\n pathname: string;\n /**\n * The portion of the URL pathname that was matched before child routes.\n */\n pathnameBase: string;\n /**\n * The route object that was used to match.\n */\n route: RouteObjectType;\n}\n\nexport interface AgnosticDataRouteMatch\n extends AgnosticRouteMatch {}\n\nfunction isIndexRoute(\n route: AgnosticRouteObject\n): route is AgnosticIndexRouteObject {\n return route.index === true;\n}\n\n// Walk the route tree generating unique IDs where necessary, so we are working\n// solely with AgnosticDataRouteObject's within the Router\nexport function convertRoutesToDataRoutes(\n routes: AgnosticRouteObject[],\n mapRouteProperties: MapRoutePropertiesFunction,\n parentPath: string[] = [],\n manifest: RouteManifest = {}\n): AgnosticDataRouteObject[] {\n return routes.map((route, index) => {\n let treePath = [...parentPath, String(index)];\n let id = typeof route.id === \"string\" ? route.id : treePath.join(\"-\");\n invariant(\n route.index !== true || !route.children,\n `Cannot specify children on an index route`\n );\n invariant(\n !manifest[id],\n `Found a route id collision on id \"${id}\". Route ` +\n \"id's must be globally unique within Data Router usages\"\n );\n\n if (isIndexRoute(route)) {\n let indexRoute: AgnosticDataIndexRouteObject = {\n ...route,\n ...mapRouteProperties(route),\n id,\n };\n manifest[id] = indexRoute;\n return indexRoute;\n } else {\n let pathOrLayoutRoute: AgnosticDataNonIndexRouteObject = {\n ...route,\n ...mapRouteProperties(route),\n id,\n children: undefined,\n };\n manifest[id] = pathOrLayoutRoute;\n\n if (route.children) {\n pathOrLayoutRoute.children = convertRoutesToDataRoutes(\n route.children,\n mapRouteProperties,\n treePath,\n manifest\n );\n }\n\n return pathOrLayoutRoute;\n }\n });\n}\n\n/**\n * Matches the given routes to a location and returns the match data.\n *\n * @see https://reactrouter.com/utils/match-routes\n */\nexport function matchRoutes<\n RouteObjectType extends AgnosticRouteObject = AgnosticRouteObject\n>(\n routes: RouteObjectType[],\n locationArg: Partial | string,\n basename = \"/\"\n): AgnosticRouteMatch[] | null {\n return matchRoutesImpl(routes, locationArg, basename, false);\n}\n\nexport function matchRoutesImpl<\n RouteObjectType extends AgnosticRouteObject = AgnosticRouteObject\n>(\n routes: RouteObjectType[],\n locationArg: Partial | string,\n basename: string,\n allowPartial: boolean\n): AgnosticRouteMatch[] | null {\n let location =\n typeof locationArg === \"string\" ? parsePath(locationArg) : locationArg;\n\n let pathname = stripBasename(location.pathname || \"/\", basename);\n\n if (pathname == null) {\n return null;\n }\n\n let branches = flattenRoutes(routes);\n rankRouteBranches(branches);\n\n let matches = null;\n for (let i = 0; matches == null && i < branches.length; ++i) {\n // Incoming pathnames are generally encoded from either window.location\n // or from router.navigate, but we want to match against the unencoded\n // paths in the route definitions. Memory router locations won't be\n // encoded here but there also shouldn't be anything to decode so this\n // should be a safe operation. This avoids needing matchRoutes to be\n // history-aware.\n let decoded = decodePath(pathname);\n matches = matchRouteBranch(\n branches[i],\n decoded,\n allowPartial\n );\n }\n\n return matches;\n}\n\nexport interface UIMatch {\n id: string;\n pathname: string;\n params: AgnosticRouteMatch[\"params\"];\n data: Data;\n handle: Handle;\n}\n\nexport function convertRouteMatchToUiMatch(\n match: AgnosticDataRouteMatch,\n loaderData: RouteData\n): UIMatch {\n let { route, pathname, params } = match;\n return {\n id: route.id,\n pathname,\n params,\n data: loaderData[route.id],\n handle: route.handle,\n };\n}\n\ninterface RouteMeta<\n RouteObjectType extends AgnosticRouteObject = AgnosticRouteObject\n> {\n relativePath: string;\n caseSensitive: boolean;\n childrenIndex: number;\n route: RouteObjectType;\n}\n\ninterface RouteBranch<\n RouteObjectType extends AgnosticRouteObject = AgnosticRouteObject\n> {\n path: string;\n score: number;\n routesMeta: RouteMeta[];\n}\n\nfunction flattenRoutes<\n RouteObjectType extends AgnosticRouteObject = AgnosticRouteObject\n>(\n routes: RouteObjectType[],\n branches: RouteBranch[] = [],\n parentsMeta: RouteMeta[] = [],\n parentPath = \"\"\n): RouteBranch[] {\n let flattenRoute = (\n route: RouteObjectType,\n index: number,\n relativePath?: string\n ) => {\n let meta: RouteMeta = {\n relativePath:\n relativePath === undefined ? route.path || \"\" : relativePath,\n caseSensitive: route.caseSensitive === true,\n childrenIndex: index,\n route,\n };\n\n if (meta.relativePath.startsWith(\"/\")) {\n invariant(\n meta.relativePath.startsWith(parentPath),\n `Absolute route path \"${meta.relativePath}\" nested under path ` +\n `\"${parentPath}\" is not valid. An absolute child route path ` +\n `must start with the combined path of all its parent routes.`\n );\n\n meta.relativePath = meta.relativePath.slice(parentPath.length);\n }\n\n let path = joinPaths([parentPath, meta.relativePath]);\n let routesMeta = parentsMeta.concat(meta);\n\n // Add the children before adding this route to the array, so we traverse the\n // route tree depth-first and child routes appear before their parents in\n // the \"flattened\" version.\n if (route.children && route.children.length > 0) {\n invariant(\n // Our types know better, but runtime JS may not!\n // @ts-expect-error\n route.index !== true,\n `Index routes must not have child routes. Please remove ` +\n `all child routes from route path \"${path}\".`\n );\n flattenRoutes(route.children, branches, routesMeta, path);\n }\n\n // Routes without a path shouldn't ever match by themselves unless they are\n // index routes, so don't add them to the list of possible branches.\n if (route.path == null && !route.index) {\n return;\n }\n\n branches.push({\n path,\n score: computeScore(path, route.index),\n routesMeta,\n });\n };\n routes.forEach((route, index) => {\n // coarse-grain check for optional params\n if (route.path === \"\" || !route.path?.includes(\"?\")) {\n flattenRoute(route, index);\n } else {\n for (let exploded of explodeOptionalSegments(route.path)) {\n flattenRoute(route, index, exploded);\n }\n }\n });\n\n return branches;\n}\n\n/**\n * Computes all combinations of optional path segments for a given path,\n * excluding combinations that are ambiguous and of lower priority.\n *\n * For example, `/one/:two?/three/:four?/:five?` explodes to:\n * - `/one/three`\n * - `/one/:two/three`\n * - `/one/three/:four`\n * - `/one/three/:five`\n * - `/one/:two/three/:four`\n * - `/one/:two/three/:five`\n * - `/one/three/:four/:five`\n * - `/one/:two/three/:four/:five`\n */\nfunction explodeOptionalSegments(path: string): string[] {\n let segments = path.split(\"/\");\n if (segments.length === 0) return [];\n\n let [first, ...rest] = segments;\n\n // Optional path segments are denoted by a trailing `?`\n let isOptional = first.endsWith(\"?\");\n // Compute the corresponding required segment: `foo?` -> `foo`\n let required = first.replace(/\\?$/, \"\");\n\n if (rest.length === 0) {\n // Intepret empty string as omitting an optional segment\n // `[\"one\", \"\", \"three\"]` corresponds to omitting `:two` from `/one/:two?/three` -> `/one/three`\n return isOptional ? [required, \"\"] : [required];\n }\n\n let restExploded = explodeOptionalSegments(rest.join(\"/\"));\n\n let result: string[] = [];\n\n // All child paths with the prefix. Do this for all children before the\n // optional version for all children, so we get consistent ordering where the\n // parent optional aspect is preferred as required. Otherwise, we can get\n // child sections interspersed where deeper optional segments are higher than\n // parent optional segments, where for example, /:two would explode _earlier_\n // then /:one. By always including the parent as required _for all children_\n // first, we avoid this issue\n result.push(\n ...restExploded.map((subpath) =>\n subpath === \"\" ? required : [required, subpath].join(\"/\")\n )\n );\n\n // Then, if this is an optional value, add all child versions without\n if (isOptional) {\n result.push(...restExploded);\n }\n\n // for absolute paths, ensure `/` instead of empty segment\n return result.map((exploded) =>\n path.startsWith(\"/\") && exploded === \"\" ? \"/\" : exploded\n );\n}\n\nfunction rankRouteBranches(branches: RouteBranch[]): void {\n branches.sort((a, b) =>\n a.score !== b.score\n ? b.score - a.score // Higher score first\n : compareIndexes(\n a.routesMeta.map((meta) => meta.childrenIndex),\n b.routesMeta.map((meta) => meta.childrenIndex)\n )\n );\n}\n\nconst paramRe = /^:[\\w-]+$/;\nconst dynamicSegmentValue = 3;\nconst indexRouteValue = 2;\nconst emptySegmentValue = 1;\nconst staticSegmentValue = 10;\nconst splatPenalty = -2;\nconst isSplat = (s: string) => s === \"*\";\n\nfunction computeScore(path: string, index: boolean | undefined): number {\n let segments = path.split(\"/\");\n let initialScore = segments.length;\n if (segments.some(isSplat)) {\n initialScore += splatPenalty;\n }\n\n if (index) {\n initialScore += indexRouteValue;\n }\n\n return segments\n .filter((s) => !isSplat(s))\n .reduce(\n (score, segment) =>\n score +\n (paramRe.test(segment)\n ? dynamicSegmentValue\n : segment === \"\"\n ? emptySegmentValue\n : staticSegmentValue),\n initialScore\n );\n}\n\nfunction compareIndexes(a: number[], b: number[]): number {\n let siblings =\n a.length === b.length && a.slice(0, -1).every((n, i) => n === b[i]);\n\n return siblings\n ? // If two routes are siblings, we should try to match the earlier sibling\n // first. This allows people to have fine-grained control over the matching\n // behavior by simply putting routes with identical paths in the order they\n // want them tried.\n a[a.length - 1] - b[b.length - 1]\n : // Otherwise, it doesn't really make sense to rank non-siblings by index,\n // so they sort equally.\n 0;\n}\n\nfunction matchRouteBranch<\n ParamKey extends string = string,\n RouteObjectType extends AgnosticRouteObject = AgnosticRouteObject\n>(\n branch: RouteBranch,\n pathname: string,\n allowPartial = false\n): AgnosticRouteMatch[] | null {\n let { routesMeta } = branch;\n\n let matchedParams = {};\n let matchedPathname = \"/\";\n let matches: AgnosticRouteMatch[] = [];\n for (let i = 0; i < routesMeta.length; ++i) {\n let meta = routesMeta[i];\n let end = i === routesMeta.length - 1;\n let remainingPathname =\n matchedPathname === \"/\"\n ? pathname\n : pathname.slice(matchedPathname.length) || \"/\";\n let match = matchPath(\n { path: meta.relativePath, caseSensitive: meta.caseSensitive, end },\n remainingPathname\n );\n\n let route = meta.route;\n\n if (\n !match &&\n end &&\n allowPartial &&\n !routesMeta[routesMeta.length - 1].route.index\n ) {\n match = matchPath(\n {\n path: meta.relativePath,\n caseSensitive: meta.caseSensitive,\n end: false,\n },\n remainingPathname\n );\n }\n\n if (!match) {\n return null;\n }\n\n Object.assign(matchedParams, match.params);\n\n matches.push({\n // TODO: Can this as be avoided?\n params: matchedParams as Params,\n pathname: joinPaths([matchedPathname, match.pathname]),\n pathnameBase: normalizePathname(\n joinPaths([matchedPathname, match.pathnameBase])\n ),\n route,\n });\n\n if (match.pathnameBase !== \"/\") {\n matchedPathname = joinPaths([matchedPathname, match.pathnameBase]);\n }\n }\n\n return matches;\n}\n\n/**\n * Returns a path with params interpolated.\n *\n * @see https://reactrouter.com/utils/generate-path\n */\nexport function generatePath(\n originalPath: Path,\n params: {\n [key in PathParam]: string | null;\n } = {} as any\n): string {\n let path: string = originalPath;\n if (path.endsWith(\"*\") && path !== \"*\" && !path.endsWith(\"/*\")) {\n warning(\n false,\n `Route path \"${path}\" will be treated as if it were ` +\n `\"${path.replace(/\\*$/, \"/*\")}\" because the \\`*\\` character must ` +\n `always follow a \\`/\\` in the pattern. To get rid of this warning, ` +\n `please change the route path to \"${path.replace(/\\*$/, \"/*\")}\".`\n );\n path = path.replace(/\\*$/, \"/*\") as Path;\n }\n\n // ensure `/` is added at the beginning if the path is absolute\n const prefix = path.startsWith(\"/\") ? \"/\" : \"\";\n\n const stringify = (p: any) =>\n p == null ? \"\" : typeof p === \"string\" ? p : String(p);\n\n const segments = path\n .split(/\\/+/)\n .map((segment, index, array) => {\n const isLastSegment = index === array.length - 1;\n\n // only apply the splat if it's the last segment\n if (isLastSegment && segment === \"*\") {\n const star = \"*\" as PathParam;\n // Apply the splat\n return stringify(params[star]);\n }\n\n const keyMatch = segment.match(/^:([\\w-]+)(\\??)$/);\n if (keyMatch) {\n const [, key, optional] = keyMatch;\n let param = params[key as PathParam];\n invariant(optional === \"?\" || param != null, `Missing \":${key}\" param`);\n return stringify(param);\n }\n\n // Remove any optional markers from optional static segments\n return segment.replace(/\\?$/g, \"\");\n })\n // Remove empty segments\n .filter((segment) => !!segment);\n\n return prefix + segments.join(\"/\");\n}\n\n/**\n * A PathPattern is used to match on some portion of a URL pathname.\n */\nexport interface PathPattern {\n /**\n * A string to match against a URL pathname. May contain `:id`-style segments\n * to indicate placeholders for dynamic parameters. May also end with `/*` to\n * indicate matching the rest of the URL pathname.\n */\n path: Path;\n /**\n * Should be `true` if the static portions of the `path` should be matched in\n * the same case.\n */\n caseSensitive?: boolean;\n /**\n * Should be `true` if this pattern should match the entire URL pathname.\n */\n end?: boolean;\n}\n\n/**\n * A PathMatch contains info about how a PathPattern matched on a URL pathname.\n */\nexport interface PathMatch {\n /**\n * The names and values of dynamic parameters in the URL.\n */\n params: Params;\n /**\n * The portion of the URL pathname that was matched.\n */\n pathname: string;\n /**\n * The portion of the URL pathname that was matched before child routes.\n */\n pathnameBase: string;\n /**\n * The pattern that was used to match.\n */\n pattern: PathPattern;\n}\n\ntype Mutable = {\n -readonly [P in keyof T]: T[P];\n};\n\n/**\n * Performs pattern matching on a URL pathname and returns information about\n * the match.\n *\n * @see https://reactrouter.com/utils/match-path\n */\nexport function matchPath<\n ParamKey extends ParamParseKey,\n Path extends string\n>(\n pattern: PathPattern | Path,\n pathname: string\n): PathMatch | null {\n if (typeof pattern === \"string\") {\n pattern = { path: pattern, caseSensitive: false, end: true };\n }\n\n let [matcher, compiledParams] = compilePath(\n pattern.path,\n pattern.caseSensitive,\n pattern.end\n );\n\n let match = pathname.match(matcher);\n if (!match) return null;\n\n let matchedPathname = match[0];\n let pathnameBase = matchedPathname.replace(/(.)\\/+$/, \"$1\");\n let captureGroups = match.slice(1);\n let params: Params = compiledParams.reduce>(\n (memo, { paramName, isOptional }, index) => {\n // We need to compute the pathnameBase here using the raw splat value\n // instead of using params[\"*\"] later because it will be decoded then\n if (paramName === \"*\") {\n let splatValue = captureGroups[index] || \"\";\n pathnameBase = matchedPathname\n .slice(0, matchedPathname.length - splatValue.length)\n .replace(/(.)\\/+$/, \"$1\");\n }\n\n const value = captureGroups[index];\n if (isOptional && !value) {\n memo[paramName] = undefined;\n } else {\n memo[paramName] = (value || \"\").replace(/%2F/g, \"/\");\n }\n return memo;\n },\n {}\n );\n\n return {\n params,\n pathname: matchedPathname,\n pathnameBase,\n pattern,\n };\n}\n\ntype CompiledPathParam = { paramName: string; isOptional?: boolean };\n\nfunction compilePath(\n path: string,\n caseSensitive = false,\n end = true\n): [RegExp, CompiledPathParam[]] {\n warning(\n path === \"*\" || !path.endsWith(\"*\") || path.endsWith(\"/*\"),\n `Route path \"${path}\" will be treated as if it were ` +\n `\"${path.replace(/\\*$/, \"/*\")}\" because the \\`*\\` character must ` +\n `always follow a \\`/\\` in the pattern. To get rid of this warning, ` +\n `please change the route path to \"${path.replace(/\\*$/, \"/*\")}\".`\n );\n\n let params: CompiledPathParam[] = [];\n let regexpSource =\n \"^\" +\n path\n .replace(/\\/*\\*?$/, \"\") // Ignore trailing / and /*, we'll handle it below\n .replace(/^\\/*/, \"/\") // Make sure it has a leading /\n .replace(/[\\\\.*+^${}|()[\\]]/g, \"\\\\$&\") // Escape special regex chars\n .replace(\n /\\/:([\\w-]+)(\\?)?/g,\n (_: string, paramName: string, isOptional) => {\n params.push({ paramName, isOptional: isOptional != null });\n return isOptional ? \"/?([^\\\\/]+)?\" : \"/([^\\\\/]+)\";\n }\n );\n\n if (path.endsWith(\"*\")) {\n params.push({ paramName: \"*\" });\n regexpSource +=\n path === \"*\" || path === \"/*\"\n ? \"(.*)$\" // Already matched the initial /, just match the rest\n : \"(?:\\\\/(.+)|\\\\/*)$\"; // Don't include the / in params[\"*\"]\n } else if (end) {\n // When matching to the end, ignore trailing slashes\n regexpSource += \"\\\\/*$\";\n } else if (path !== \"\" && path !== \"/\") {\n // If our path is non-empty and contains anything beyond an initial slash,\n // then we have _some_ form of path in our regex, so we should expect to\n // match only if we find the end of this path segment. Look for an optional\n // non-captured trailing slash (to match a portion of the URL) or the end\n // of the path (if we've matched to the end). We used to do this with a\n // word boundary but that gives false positives on routes like\n // /user-preferences since `-` counts as a word boundary.\n regexpSource += \"(?:(?=\\\\/|$))\";\n } else {\n // Nothing to match for \"\" or \"/\"\n }\n\n let matcher = new RegExp(regexpSource, caseSensitive ? undefined : \"i\");\n\n return [matcher, params];\n}\n\nexport function decodePath(value: string) {\n try {\n return value\n .split(\"/\")\n .map((v) => decodeURIComponent(v).replace(/\\//g, \"%2F\"))\n .join(\"/\");\n } catch (error) {\n warning(\n false,\n `The URL path \"${value}\" could not be decoded because it is is a ` +\n `malformed URL segment. This is probably due to a bad percent ` +\n `encoding (${error}).`\n );\n\n return value;\n }\n}\n\n/**\n * @private\n */\nexport function stripBasename(\n pathname: string,\n basename: string\n): string | null {\n if (basename === \"/\") return pathname;\n\n if (!pathname.toLowerCase().startsWith(basename.toLowerCase())) {\n return null;\n }\n\n // We want to leave trailing slash behavior in the user's control, so if they\n // specify a basename with a trailing slash, we should support it\n let startIndex = basename.endsWith(\"/\")\n ? basename.length - 1\n : basename.length;\n let nextChar = pathname.charAt(startIndex);\n if (nextChar && nextChar !== \"/\") {\n // pathname does not start with basename/\n return null;\n }\n\n return pathname.slice(startIndex) || \"/\";\n}\n\n/**\n * Returns a resolved path object relative to the given pathname.\n *\n * @see https://reactrouter.com/utils/resolve-path\n */\nexport function resolvePath(to: To, fromPathname = \"/\"): Path {\n let {\n pathname: toPathname,\n search = \"\",\n hash = \"\",\n } = typeof to === \"string\" ? parsePath(to) : to;\n\n let pathname = toPathname\n ? toPathname.startsWith(\"/\")\n ? toPathname\n : resolvePathname(toPathname, fromPathname)\n : fromPathname;\n\n return {\n pathname,\n search: normalizeSearch(search),\n hash: normalizeHash(hash),\n };\n}\n\nfunction resolvePathname(relativePath: string, fromPathname: string): string {\n let segments = fromPathname.replace(/\\/+$/, \"\").split(\"/\");\n let relativeSegments = relativePath.split(\"/\");\n\n relativeSegments.forEach((segment) => {\n if (segment === \"..\") {\n // Keep the root \"\" segment so the pathname starts at /\n if (segments.length > 1) segments.pop();\n } else if (segment !== \".\") {\n segments.push(segment);\n }\n });\n\n return segments.length > 1 ? segments.join(\"/\") : \"/\";\n}\n\nfunction getInvalidPathError(\n char: string,\n field: string,\n dest: string,\n path: Partial\n) {\n return (\n `Cannot include a '${char}' character in a manually specified ` +\n `\\`to.${field}\\` field [${JSON.stringify(\n path\n )}]. Please separate it out to the ` +\n `\\`to.${dest}\\` field. Alternatively you may provide the full path as ` +\n `a string in and the router will parse it for you.`\n );\n}\n\n/**\n * @private\n *\n * When processing relative navigation we want to ignore ancestor routes that\n * do not contribute to the path, such that index/pathless layout routes don't\n * interfere.\n *\n * For example, when moving a route element into an index route and/or a\n * pathless layout route, relative link behavior contained within should stay\n * the same. Both of the following examples should link back to the root:\n *\n * \n * \n * \n *\n * \n * \n * }> // <-- Does not contribute\n * // <-- Does not contribute\n * \n * \n */\nexport function getPathContributingMatches<\n T extends AgnosticRouteMatch = AgnosticRouteMatch\n>(matches: T[]) {\n return matches.filter(\n (match, index) =>\n index === 0 || (match.route.path && match.route.path.length > 0)\n );\n}\n\n// Return the array of pathnames for the current route matches - used to\n// generate the routePathnames input for resolveTo()\nexport function getResolveToMatches<\n T extends AgnosticRouteMatch = AgnosticRouteMatch\n>(matches: T[], v7_relativeSplatPath: boolean) {\n let pathMatches = getPathContributingMatches(matches);\n\n // When v7_relativeSplatPath is enabled, use the full pathname for the leaf\n // match so we include splat values for \".\" links. See:\n // https://github.com/remix-run/react-router/issues/11052#issuecomment-1836589329\n if (v7_relativeSplatPath) {\n return pathMatches.map((match, idx) =>\n idx === pathMatches.length - 1 ? match.pathname : match.pathnameBase\n );\n }\n\n return pathMatches.map((match) => match.pathnameBase);\n}\n\n/**\n * @private\n */\nexport function resolveTo(\n toArg: To,\n routePathnames: string[],\n locationPathname: string,\n isPathRelative = false\n): Path {\n let to: Partial;\n if (typeof toArg === \"string\") {\n to = parsePath(toArg);\n } else {\n to = { ...toArg };\n\n invariant(\n !to.pathname || !to.pathname.includes(\"?\"),\n getInvalidPathError(\"?\", \"pathname\", \"search\", to)\n );\n invariant(\n !to.pathname || !to.pathname.includes(\"#\"),\n getInvalidPathError(\"#\", \"pathname\", \"hash\", to)\n );\n invariant(\n !to.search || !to.search.includes(\"#\"),\n getInvalidPathError(\"#\", \"search\", \"hash\", to)\n );\n }\n\n let isEmptyPath = toArg === \"\" || to.pathname === \"\";\n let toPathname = isEmptyPath ? \"/\" : to.pathname;\n\n let from: string;\n\n // Routing is relative to the current pathname if explicitly requested.\n //\n // If a pathname is explicitly provided in `to`, it should be relative to the\n // route context. This is explained in `Note on `` values` in our\n // migration guide from v5 as a means of disambiguation between `to` values\n // that begin with `/` and those that do not. However, this is problematic for\n // `to` values that do not provide a pathname. `to` can simply be a search or\n // hash string, in which case we should assume that the navigation is relative\n // to the current location's pathname and *not* the route pathname.\n if (toPathname == null) {\n from = locationPathname;\n } else {\n let routePathnameIndex = routePathnames.length - 1;\n\n // With relative=\"route\" (the default), each leading .. segment means\n // \"go up one route\" instead of \"go up one URL segment\". This is a key\n // difference from how works and a major reason we call this a\n // \"to\" value instead of a \"href\".\n if (!isPathRelative && toPathname.startsWith(\"..\")) {\n let toSegments = toPathname.split(\"/\");\n\n while (toSegments[0] === \"..\") {\n toSegments.shift();\n routePathnameIndex -= 1;\n }\n\n to.pathname = toSegments.join(\"/\");\n }\n\n from = routePathnameIndex >= 0 ? routePathnames[routePathnameIndex] : \"/\";\n }\n\n let path = resolvePath(to, from);\n\n // Ensure the pathname has a trailing slash if the original \"to\" had one\n let hasExplicitTrailingSlash =\n toPathname && toPathname !== \"/\" && toPathname.endsWith(\"/\");\n // Or if this was a link to the current path which has a trailing slash\n let hasCurrentTrailingSlash =\n (isEmptyPath || toPathname === \".\") && locationPathname.endsWith(\"/\");\n if (\n !path.pathname.endsWith(\"/\") &&\n (hasExplicitTrailingSlash || hasCurrentTrailingSlash)\n ) {\n path.pathname += \"/\";\n }\n\n return path;\n}\n\n/**\n * @private\n */\nexport function getToPathname(to: To): string | undefined {\n // Empty strings should be treated the same as / paths\n return to === \"\" || (to as Path).pathname === \"\"\n ? \"/\"\n : typeof to === \"string\"\n ? parsePath(to).pathname\n : to.pathname;\n}\n\n/**\n * @private\n */\nexport const joinPaths = (paths: string[]): string =>\n paths.join(\"/\").replace(/\\/\\/+/g, \"/\");\n\n/**\n * @private\n */\nexport const normalizePathname = (pathname: string): string =>\n pathname.replace(/\\/+$/, \"\").replace(/^\\/*/, \"/\");\n\n/**\n * @private\n */\nexport const normalizeSearch = (search: string): string =>\n !search || search === \"?\"\n ? \"\"\n : search.startsWith(\"?\")\n ? search\n : \"?\" + search;\n\n/**\n * @private\n */\nexport const normalizeHash = (hash: string): string =>\n !hash || hash === \"#\" ? \"\" : hash.startsWith(\"#\") ? hash : \"#\" + hash;\n\nexport type JsonFunction = (\n data: Data,\n init?: number | ResponseInit\n) => Response;\n\n/**\n * This is a shortcut for creating `application/json` responses. Converts `data`\n * to JSON and sets the `Content-Type` header.\n */\nexport const json: JsonFunction = (data, init = {}) => {\n let responseInit = typeof init === \"number\" ? { status: init } : init;\n\n let headers = new Headers(responseInit.headers);\n if (!headers.has(\"Content-Type\")) {\n headers.set(\"Content-Type\", \"application/json; charset=utf-8\");\n }\n\n return new Response(JSON.stringify(data), {\n ...responseInit,\n headers,\n });\n};\n\nexport class DataWithResponseInit {\n type: string = \"DataWithResponseInit\";\n data: D;\n init: ResponseInit | null;\n\n constructor(data: D, init?: ResponseInit) {\n this.data = data;\n this.init = init || null;\n }\n}\n\n/**\n * Create \"responses\" that contain `status`/`headers` without forcing\n * serialization into an actual `Response` - used by Remix single fetch\n */\nexport function data(data: D, init?: number | ResponseInit) {\n return new DataWithResponseInit(\n data,\n typeof init === \"number\" ? { status: init } : init\n );\n}\n\nexport interface TrackedPromise extends Promise {\n _tracked?: boolean;\n _data?: any;\n _error?: any;\n}\n\nexport class AbortedDeferredError extends Error {}\n\nexport class DeferredData {\n private pendingKeysSet: Set = new Set();\n private controller: AbortController;\n private abortPromise: Promise;\n private unlistenAbortSignal: () => void;\n private subscribers: Set<(aborted: boolean, settledKey?: string) => void> =\n new Set();\n data: Record;\n init?: ResponseInit;\n deferredKeys: string[] = [];\n\n constructor(data: Record, responseInit?: ResponseInit) {\n invariant(\n data && typeof data === \"object\" && !Array.isArray(data),\n \"defer() only accepts plain objects\"\n );\n\n // Set up an AbortController + Promise we can race against to exit early\n // cancellation\n let reject: (e: AbortedDeferredError) => void;\n this.abortPromise = new Promise((_, r) => (reject = r));\n this.controller = new AbortController();\n let onAbort = () =>\n reject(new AbortedDeferredError(\"Deferred data aborted\"));\n this.unlistenAbortSignal = () =>\n this.controller.signal.removeEventListener(\"abort\", onAbort);\n this.controller.signal.addEventListener(\"abort\", onAbort);\n\n this.data = Object.entries(data).reduce(\n (acc, [key, value]) =>\n Object.assign(acc, {\n [key]: this.trackPromise(key, value),\n }),\n {}\n );\n\n if (this.done) {\n // All incoming values were resolved\n this.unlistenAbortSignal();\n }\n\n this.init = responseInit;\n }\n\n private trackPromise(\n key: string,\n value: Promise | unknown\n ): TrackedPromise | unknown {\n if (!(value instanceof Promise)) {\n return value;\n }\n\n this.deferredKeys.push(key);\n this.pendingKeysSet.add(key);\n\n // We store a little wrapper promise that will be extended with\n // _data/_error props upon resolve/reject\n let promise: TrackedPromise = Promise.race([value, this.abortPromise]).then(\n (data) => this.onSettle(promise, key, undefined, data as unknown),\n (error) => this.onSettle(promise, key, error as unknown)\n );\n\n // Register rejection listeners to avoid uncaught promise rejections on\n // errors or aborted deferred values\n promise.catch(() => {});\n\n Object.defineProperty(promise, \"_tracked\", { get: () => true });\n return promise;\n }\n\n private onSettle(\n promise: TrackedPromise,\n key: string,\n error: unknown,\n data?: unknown\n ): unknown {\n if (\n this.controller.signal.aborted &&\n error instanceof AbortedDeferredError\n ) {\n this.unlistenAbortSignal();\n Object.defineProperty(promise, \"_error\", { get: () => error });\n return Promise.reject(error);\n }\n\n this.pendingKeysSet.delete(key);\n\n if (this.done) {\n // Nothing left to abort!\n this.unlistenAbortSignal();\n }\n\n // If the promise was resolved/rejected with undefined, we'll throw an error as you\n // should always resolve with a value or null\n if (error === undefined && data === undefined) {\n let undefinedError = new Error(\n `Deferred data for key \"${key}\" resolved/rejected with \\`undefined\\`, ` +\n `you must resolve/reject with a value or \\`null\\`.`\n );\n Object.defineProperty(promise, \"_error\", { get: () => undefinedError });\n this.emit(false, key);\n return Promise.reject(undefinedError);\n }\n\n if (data === undefined) {\n Object.defineProperty(promise, \"_error\", { get: () => error });\n this.emit(false, key);\n return Promise.reject(error);\n }\n\n Object.defineProperty(promise, \"_data\", { get: () => data });\n this.emit(false, key);\n return data;\n }\n\n private emit(aborted: boolean, settledKey?: string) {\n this.subscribers.forEach((subscriber) => subscriber(aborted, settledKey));\n }\n\n subscribe(fn: (aborted: boolean, settledKey?: string) => void) {\n this.subscribers.add(fn);\n return () => this.subscribers.delete(fn);\n }\n\n cancel() {\n this.controller.abort();\n this.pendingKeysSet.forEach((v, k) => this.pendingKeysSet.delete(k));\n this.emit(true);\n }\n\n async resolveData(signal: AbortSignal) {\n let aborted = false;\n if (!this.done) {\n let onAbort = () => this.cancel();\n signal.addEventListener(\"abort\", onAbort);\n aborted = await new Promise((resolve) => {\n this.subscribe((aborted) => {\n signal.removeEventListener(\"abort\", onAbort);\n if (aborted || this.done) {\n resolve(aborted);\n }\n });\n });\n }\n return aborted;\n }\n\n get done() {\n return this.pendingKeysSet.size === 0;\n }\n\n get unwrappedData() {\n invariant(\n this.data !== null && this.done,\n \"Can only unwrap data on initialized and settled deferreds\"\n );\n\n return Object.entries(this.data).reduce(\n (acc, [key, value]) =>\n Object.assign(acc, {\n [key]: unwrapTrackedPromise(value),\n }),\n {}\n );\n }\n\n get pendingKeys() {\n return Array.from(this.pendingKeysSet);\n }\n}\n\nfunction isTrackedPromise(value: any): value is TrackedPromise {\n return (\n value instanceof Promise && (value as TrackedPromise)._tracked === true\n );\n}\n\nfunction unwrapTrackedPromise(value: any) {\n if (!isTrackedPromise(value)) {\n return value;\n }\n\n if (value._error) {\n throw value._error;\n }\n return value._data;\n}\n\nexport type DeferFunction = (\n data: Record,\n init?: number | ResponseInit\n) => DeferredData;\n\nexport const defer: DeferFunction = (data, init = {}) => {\n let responseInit = typeof init === \"number\" ? { status: init } : init;\n\n return new DeferredData(data, responseInit);\n};\n\nexport type RedirectFunction = (\n url: string,\n init?: number | ResponseInit\n) => Response;\n\n/**\n * A redirect response. Sets the status code and the `Location` header.\n * Defaults to \"302 Found\".\n */\nexport const redirect: RedirectFunction = (url, init = 302) => {\n let responseInit = init;\n if (typeof responseInit === \"number\") {\n responseInit = { status: responseInit };\n } else if (typeof responseInit.status === \"undefined\") {\n responseInit.status = 302;\n }\n\n let headers = new Headers(responseInit.headers);\n headers.set(\"Location\", url);\n\n return new Response(null, {\n ...responseInit,\n headers,\n });\n};\n\n/**\n * A redirect response that will force a document reload to the new location.\n * Sets the status code and the `Location` header.\n * Defaults to \"302 Found\".\n */\nexport const redirectDocument: RedirectFunction = (url, init) => {\n let response = redirect(url, init);\n response.headers.set(\"X-Remix-Reload-Document\", \"true\");\n return response;\n};\n\n/**\n * A redirect response that will perform a `history.replaceState` instead of a\n * `history.pushState` for client-side navigation redirects.\n * Sets the status code and the `Location` header.\n * Defaults to \"302 Found\".\n */\nexport const replace: RedirectFunction = (url, init) => {\n let response = redirect(url, init);\n response.headers.set(\"X-Remix-Replace\", \"true\");\n return response;\n};\n\nexport type ErrorResponse = {\n status: number;\n statusText: string;\n data: any;\n};\n\n/**\n * @private\n * Utility class we use to hold auto-unwrapped 4xx/5xx Response bodies\n *\n * We don't export the class for public use since it's an implementation\n * detail, but we export the interface above so folks can build their own\n * abstractions around instances via isRouteErrorResponse()\n */\nexport class ErrorResponseImpl implements ErrorResponse {\n status: number;\n statusText: string;\n data: any;\n private error?: Error;\n private internal: boolean;\n\n constructor(\n status: number,\n statusText: string | undefined,\n data: any,\n internal = false\n ) {\n this.status = status;\n this.statusText = statusText || \"\";\n this.internal = internal;\n if (data instanceof Error) {\n this.data = data.toString();\n this.error = data;\n } else {\n this.data = data;\n }\n }\n}\n\n/**\n * Check if the given error is an ErrorResponse generated from a 4xx/5xx\n * Response thrown from an action/loader\n */\nexport function isRouteErrorResponse(error: any): error is ErrorResponse {\n return (\n error != null &&\n typeof error.status === \"number\" &&\n typeof error.statusText === \"string\" &&\n typeof error.internal === \"boolean\" &&\n \"data\" in error\n );\n}\n","import type { History, Location, Path, To } from \"./history\";\nimport {\n Action as HistoryAction,\n createLocation,\n createPath,\n invariant,\n parsePath,\n warning,\n} from \"./history\";\nimport type {\n AgnosticDataRouteMatch,\n AgnosticDataRouteObject,\n DataStrategyMatch,\n AgnosticRouteObject,\n DataResult,\n DataStrategyFunction,\n DataStrategyFunctionArgs,\n DeferredData,\n DeferredResult,\n DetectErrorBoundaryFunction,\n ErrorResult,\n FormEncType,\n FormMethod,\n HTMLFormMethod,\n HandlerResult,\n ImmutableRouteKey,\n MapRoutePropertiesFunction,\n MutationFormMethod,\n RedirectResult,\n RouteData,\n RouteManifest,\n ShouldRevalidateFunctionArgs,\n Submission,\n SuccessResult,\n UIMatch,\n V7_FormMethod,\n V7_MutationFormMethod,\n AgnosticPatchRoutesOnNavigationFunction,\n DataWithResponseInit,\n} from \"./utils\";\nimport {\n ErrorResponseImpl,\n ResultType,\n convertRouteMatchToUiMatch,\n convertRoutesToDataRoutes,\n getPathContributingMatches,\n getResolveToMatches,\n immutableRouteKeys,\n isRouteErrorResponse,\n joinPaths,\n matchRoutes,\n matchRoutesImpl,\n resolveTo,\n stripBasename,\n} from \"./utils\";\n\n////////////////////////////////////////////////////////////////////////////////\n//#region Types and Constants\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * A Router instance manages all navigation and data loading/mutations\n */\nexport interface Router {\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Return the basename for the router\n */\n get basename(): RouterInit[\"basename\"];\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Return the future config for the router\n */\n get future(): FutureConfig;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Return the current state of the router\n */\n get state(): RouterState;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Return the routes for this router instance\n */\n get routes(): AgnosticDataRouteObject[];\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Return the window associated with the router\n */\n get window(): RouterInit[\"window\"];\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Initialize the router, including adding history listeners and kicking off\n * initial data fetches. Returns a function to cleanup listeners and abort\n * any in-progress loads\n */\n initialize(): Router;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Subscribe to router.state updates\n *\n * @param fn function to call with the new state\n */\n subscribe(fn: RouterSubscriber): () => void;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Enable scroll restoration behavior in the router\n *\n * @param savedScrollPositions Object that will manage positions, in case\n * it's being restored from sessionStorage\n * @param getScrollPosition Function to get the active Y scroll position\n * @param getKey Function to get the key to use for restoration\n */\n enableScrollRestoration(\n savedScrollPositions: Record,\n getScrollPosition: GetScrollPositionFunction,\n getKey?: GetScrollRestorationKeyFunction\n ): () => void;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Navigate forward/backward in the history stack\n * @param to Delta to move in the history stack\n */\n navigate(to: number): Promise;\n\n /**\n * Navigate to the given path\n * @param to Path to navigate to\n * @param opts Navigation options (method, submission, etc.)\n */\n navigate(to: To | null, opts?: RouterNavigateOptions): Promise;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Trigger a fetcher load/submission\n *\n * @param key Fetcher key\n * @param routeId Route that owns the fetcher\n * @param href href to fetch\n * @param opts Fetcher options, (method, submission, etc.)\n */\n fetch(\n key: string,\n routeId: string,\n href: string | null,\n opts?: RouterFetchOptions\n ): void;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Trigger a revalidation of all current route loaders and fetcher loads\n */\n revalidate(): void;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Utility function to create an href for the given location\n * @param location\n */\n createHref(location: Location | URL): string;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Utility function to URL encode a destination path according to the internal\n * history implementation\n * @param to\n */\n encodeLocation(to: To): Path;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Get/create a fetcher for the given key\n * @param key\n */\n getFetcher(key: string): Fetcher;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Delete the fetcher for a given key\n * @param key\n */\n deleteFetcher(key: string): void;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Cleanup listeners and abort any in-progress loads\n */\n dispose(): void;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Get a navigation blocker\n * @param key The identifier for the blocker\n * @param fn The blocker function implementation\n */\n getBlocker(key: string, fn: BlockerFunction): Blocker;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Delete a navigation blocker\n * @param key The identifier for the blocker\n */\n deleteBlocker(key: string): void;\n\n /**\n * @internal\n * PRIVATE DO NOT USE\n *\n * Patch additional children routes into an existing parent route\n * @param routeId The parent route id or a callback function accepting `patch`\n * to perform batch patching\n * @param children The additional children routes\n */\n patchRoutes(routeId: string | null, children: AgnosticRouteObject[]): void;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * HMR needs to pass in-flight route updates to React Router\n * TODO: Replace this with granular route update APIs (addRoute, updateRoute, deleteRoute)\n */\n _internalSetRoutes(routes: AgnosticRouteObject[]): void;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Internal fetch AbortControllers accessed by unit tests\n */\n _internalFetchControllers: Map;\n\n /**\n * @internal\n * PRIVATE - DO NOT USE\n *\n * Internal pending DeferredData instances accessed by unit tests\n */\n _internalActiveDeferreds: Map;\n}\n\n/**\n * State maintained internally by the router. During a navigation, all states\n * reflect the the \"old\" location unless otherwise noted.\n */\nexport interface RouterState {\n /**\n * The action of the most recent navigation\n */\n historyAction: HistoryAction;\n\n /**\n * The current location reflected by the router\n */\n location: Location;\n\n /**\n * The current set of route matches\n */\n matches: AgnosticDataRouteMatch[];\n\n /**\n * Tracks whether we've completed our initial data load\n */\n initialized: boolean;\n\n /**\n * Current scroll position we should start at for a new view\n * - number -> scroll position to restore to\n * - false -> do not restore scroll at all (used during submissions)\n * - null -> don't have a saved position, scroll to hash or top of page\n */\n restoreScrollPosition: number | false | null;\n\n /**\n * Indicate whether this navigation should skip resetting the scroll position\n * if we are unable to restore the scroll position\n */\n preventScrollReset: boolean;\n\n /**\n * Tracks the state of the current navigation\n */\n navigation: Navigation;\n\n /**\n * Tracks any in-progress revalidations\n */\n revalidation: RevalidationState;\n\n /**\n * Data from the loaders for the current matches\n */\n loaderData: RouteData;\n\n /**\n * Data from the action for the current matches\n */\n actionData: RouteData | null;\n\n /**\n * Errors caught from loaders for the current matches\n */\n errors: RouteData | null;\n\n /**\n * Map of current fetchers\n */\n fetchers: Map;\n\n /**\n * Map of current blockers\n */\n blockers: Map;\n}\n\n/**\n * Data that can be passed into hydrate a Router from SSR\n */\nexport type HydrationState = Partial<\n Pick\n>;\n\n/**\n * Future flags to toggle new feature behavior\n */\nexport interface FutureConfig {\n v7_fetcherPersist: boolean;\n v7_normalizeFormMethod: boolean;\n v7_partialHydration: boolean;\n v7_prependBasename: boolean;\n v7_relativeSplatPath: boolean;\n v7_skipActionErrorRevalidation: boolean;\n}\n\n/**\n * Initialization options for createRouter\n */\nexport interface RouterInit {\n routes: AgnosticRouteObject[];\n history: History;\n basename?: string;\n /**\n * @deprecated Use `mapRouteProperties` instead\n */\n detectErrorBoundary?: DetectErrorBoundaryFunction;\n mapRouteProperties?: MapRoutePropertiesFunction;\n future?: Partial;\n hydrationData?: HydrationState;\n window?: Window;\n unstable_patchRoutesOnNavigation?: AgnosticPatchRoutesOnNavigationFunction;\n unstable_dataStrategy?: DataStrategyFunction;\n}\n\n/**\n * State returned from a server-side query() call\n */\nexport interface StaticHandlerContext {\n basename: Router[\"basename\"];\n location: RouterState[\"location\"];\n matches: RouterState[\"matches\"];\n loaderData: RouterState[\"loaderData\"];\n actionData: RouterState[\"actionData\"];\n errors: RouterState[\"errors\"];\n statusCode: number;\n loaderHeaders: Record;\n actionHeaders: Record;\n activeDeferreds: Record | null;\n _deepestRenderedBoundaryId?: string | null;\n}\n\n/**\n * A StaticHandler instance manages a singular SSR navigation/fetch event\n */\nexport interface StaticHandler {\n dataRoutes: AgnosticDataRouteObject[];\n query(\n request: Request,\n opts?: {\n requestContext?: unknown;\n skipLoaderErrorBubbling?: boolean;\n unstable_dataStrategy?: DataStrategyFunction;\n }\n ): Promise;\n queryRoute(\n request: Request,\n opts?: {\n routeId?: string;\n requestContext?: unknown;\n unstable_dataStrategy?: DataStrategyFunction;\n }\n ): Promise;\n}\n\ntype ViewTransitionOpts = {\n currentLocation: Location;\n nextLocation: Location;\n};\n\n/**\n * Subscriber function signature for changes to router state\n */\nexport interface RouterSubscriber {\n (\n state: RouterState,\n opts: {\n deletedFetchers: string[];\n unstable_viewTransitionOpts?: ViewTransitionOpts;\n unstable_flushSync: boolean;\n }\n ): void;\n}\n\n/**\n * Function signature for determining the key to be used in scroll restoration\n * for a given location\n */\nexport interface GetScrollRestorationKeyFunction {\n (location: Location, matches: UIMatch[]): string | null;\n}\n\n/**\n * Function signature for determining the current scroll position\n */\nexport interface GetScrollPositionFunction {\n (): number;\n}\n\nexport type RelativeRoutingType = \"route\" | \"path\";\n\n// Allowed for any navigation or fetch\ntype BaseNavigateOrFetchOptions = {\n preventScrollReset?: boolean;\n relative?: RelativeRoutingType;\n unstable_flushSync?: boolean;\n};\n\n// Only allowed for navigations\ntype BaseNavigateOptions = BaseNavigateOrFetchOptions & {\n replace?: boolean;\n state?: any;\n fromRouteId?: string;\n unstable_viewTransition?: boolean;\n};\n\n// Only allowed for submission navigations\ntype BaseSubmissionOptions = {\n formMethod?: HTMLFormMethod;\n formEncType?: FormEncType;\n} & (\n | { formData: FormData; body?: undefined }\n | { formData?: undefined; body: any }\n);\n\n/**\n * Options for a navigate() call for a normal (non-submission) navigation\n */\ntype LinkNavigateOptions = BaseNavigateOptions;\n\n/**\n * Options for a navigate() call for a submission navigation\n */\ntype SubmissionNavigateOptions = BaseNavigateOptions & BaseSubmissionOptions;\n\n/**\n * Options to pass to navigate() for a navigation\n */\nexport type RouterNavigateOptions =\n | LinkNavigateOptions\n | SubmissionNavigateOptions;\n\n/**\n * Options for a fetch() load\n */\ntype LoadFetchOptions = BaseNavigateOrFetchOptions;\n\n/**\n * Options for a fetch() submission\n */\ntype SubmitFetchOptions = BaseNavigateOrFetchOptions & BaseSubmissionOptions;\n\n/**\n * Options to pass to fetch()\n */\nexport type RouterFetchOptions = LoadFetchOptions | SubmitFetchOptions;\n\n/**\n * Potential states for state.navigation\n */\nexport type NavigationStates = {\n Idle: {\n state: \"idle\";\n location: undefined;\n formMethod: undefined;\n formAction: undefined;\n formEncType: undefined;\n formData: undefined;\n json: undefined;\n text: undefined;\n };\n Loading: {\n state: \"loading\";\n location: Location;\n formMethod: Submission[\"formMethod\"] | undefined;\n formAction: Submission[\"formAction\"] | undefined;\n formEncType: Submission[\"formEncType\"] | undefined;\n formData: Submission[\"formData\"] | undefined;\n json: Submission[\"json\"] | undefined;\n text: Submission[\"text\"] | undefined;\n };\n Submitting: {\n state: \"submitting\";\n location: Location;\n formMethod: Submission[\"formMethod\"];\n formAction: Submission[\"formAction\"];\n formEncType: Submission[\"formEncType\"];\n formData: Submission[\"formData\"];\n json: Submission[\"json\"];\n text: Submission[\"text\"];\n };\n};\n\nexport type Navigation = NavigationStates[keyof NavigationStates];\n\nexport type RevalidationState = \"idle\" | \"loading\";\n\n/**\n * Potential states for fetchers\n */\ntype FetcherStates = {\n Idle: {\n state: \"idle\";\n formMethod: undefined;\n formAction: undefined;\n formEncType: undefined;\n text: undefined;\n formData: undefined;\n json: undefined;\n data: TData | undefined;\n };\n Loading: {\n state: \"loading\";\n formMethod: Submission[\"formMethod\"] | undefined;\n formAction: Submission[\"formAction\"] | undefined;\n formEncType: Submission[\"formEncType\"] | undefined;\n text: Submission[\"text\"] | undefined;\n formData: Submission[\"formData\"] | undefined;\n json: Submission[\"json\"] | undefined;\n data: TData | undefined;\n };\n Submitting: {\n state: \"submitting\";\n formMethod: Submission[\"formMethod\"];\n formAction: Submission[\"formAction\"];\n formEncType: Submission[\"formEncType\"];\n text: Submission[\"text\"];\n formData: Submission[\"formData\"];\n json: Submission[\"json\"];\n data: TData | undefined;\n };\n};\n\nexport type Fetcher =\n FetcherStates[keyof FetcherStates];\n\ninterface BlockerBlocked {\n state: \"blocked\";\n reset(): void;\n proceed(): void;\n location: Location;\n}\n\ninterface BlockerUnblocked {\n state: \"unblocked\";\n reset: undefined;\n proceed: undefined;\n location: undefined;\n}\n\ninterface BlockerProceeding {\n state: \"proceeding\";\n reset: undefined;\n proceed: undefined;\n location: Location;\n}\n\nexport type Blocker = BlockerUnblocked | BlockerBlocked | BlockerProceeding;\n\nexport type BlockerFunction = (args: {\n currentLocation: Location;\n nextLocation: Location;\n historyAction: HistoryAction;\n}) => boolean;\n\ninterface ShortCircuitable {\n /**\n * startNavigation does not need to complete the navigation because we\n * redirected or got interrupted\n */\n shortCircuited?: boolean;\n}\n\ntype PendingActionResult = [string, SuccessResult | ErrorResult];\n\ninterface HandleActionResult extends ShortCircuitable {\n /**\n * Route matches which may have been updated from fog of war discovery\n */\n matches?: RouterState[\"matches\"];\n /**\n * Tuple for the returned or thrown value from the current action. The routeId\n * is the action route for success and the bubbled boundary route for errors.\n */\n pendingActionResult?: PendingActionResult;\n}\n\ninterface HandleLoadersResult extends ShortCircuitable {\n /**\n * Route matches which may have been updated from fog of war discovery\n */\n matches?: RouterState[\"matches\"];\n /**\n * loaderData returned from the current set of loaders\n */\n loaderData?: RouterState[\"loaderData\"];\n /**\n * errors thrown from the current set of loaders\n */\n errors?: RouterState[\"errors\"];\n}\n\n/**\n * Cached info for active fetcher.load() instances so they can participate\n * in revalidation\n */\ninterface FetchLoadMatch {\n routeId: string;\n path: string;\n}\n\n/**\n * Identified fetcher.load() calls that need to be revalidated\n */\ninterface RevalidatingFetcher extends FetchLoadMatch {\n key: string;\n match: AgnosticDataRouteMatch | null;\n matches: AgnosticDataRouteMatch[] | null;\n controller: AbortController | null;\n}\n\nconst validMutationMethodsArr: MutationFormMethod[] = [\n \"post\",\n \"put\",\n \"patch\",\n \"delete\",\n];\nconst validMutationMethods = new Set(\n validMutationMethodsArr\n);\n\nconst validRequestMethodsArr: FormMethod[] = [\n \"get\",\n ...validMutationMethodsArr,\n];\nconst validRequestMethods = new Set(validRequestMethodsArr);\n\nconst redirectStatusCodes = new Set([301, 302, 303, 307, 308]);\nconst redirectPreserveMethodStatusCodes = new Set([307, 308]);\n\nexport const IDLE_NAVIGATION: NavigationStates[\"Idle\"] = {\n state: \"idle\",\n location: undefined,\n formMethod: undefined,\n formAction: undefined,\n formEncType: undefined,\n formData: undefined,\n json: undefined,\n text: undefined,\n};\n\nexport const IDLE_FETCHER: FetcherStates[\"Idle\"] = {\n state: \"idle\",\n data: undefined,\n formMethod: undefined,\n formAction: undefined,\n formEncType: undefined,\n formData: undefined,\n json: undefined,\n text: undefined,\n};\n\nexport const IDLE_BLOCKER: BlockerUnblocked = {\n state: \"unblocked\",\n proceed: undefined,\n reset: undefined,\n location: undefined,\n};\n\nconst ABSOLUTE_URL_REGEX = /^(?:[a-z][a-z0-9+.-]*:|\\/\\/)/i;\n\nconst defaultMapRouteProperties: MapRoutePropertiesFunction = (route) => ({\n hasErrorBoundary: Boolean(route.hasErrorBoundary),\n});\n\nconst TRANSITIONS_STORAGE_KEY = \"remix-router-transitions\";\n\n//#endregion\n\n////////////////////////////////////////////////////////////////////////////////\n//#region createRouter\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * Create a router and listen to history POP navigations\n */\nexport function createRouter(init: RouterInit): Router {\n const routerWindow = init.window\n ? init.window\n : typeof window !== \"undefined\"\n ? window\n : undefined;\n const isBrowser =\n typeof routerWindow !== \"undefined\" &&\n typeof routerWindow.document !== \"undefined\" &&\n typeof routerWindow.document.createElement !== \"undefined\";\n const isServer = !isBrowser;\n\n invariant(\n init.routes.length > 0,\n \"You must provide a non-empty routes array to createRouter\"\n );\n\n let mapRouteProperties: MapRoutePropertiesFunction;\n if (init.mapRouteProperties) {\n mapRouteProperties = init.mapRouteProperties;\n } else if (init.detectErrorBoundary) {\n // If they are still using the deprecated version, wrap it with the new API\n let detectErrorBoundary = init.detectErrorBoundary;\n mapRouteProperties = (route) => ({\n hasErrorBoundary: detectErrorBoundary(route),\n });\n } else {\n mapRouteProperties = defaultMapRouteProperties;\n }\n\n // Routes keyed by ID\n let manifest: RouteManifest = {};\n // Routes in tree format for matching\n let dataRoutes = convertRoutesToDataRoutes(\n init.routes,\n mapRouteProperties,\n undefined,\n manifest\n );\n let inFlightDataRoutes: AgnosticDataRouteObject[] | undefined;\n let basename = init.basename || \"/\";\n let dataStrategyImpl = init.unstable_dataStrategy || defaultDataStrategy;\n let patchRoutesOnNavigationImpl = init.unstable_patchRoutesOnNavigation;\n\n // Config driven behavior flags\n let future: FutureConfig = {\n v7_fetcherPersist: false,\n v7_normalizeFormMethod: false,\n v7_partialHydration: false,\n v7_prependBasename: false,\n v7_relativeSplatPath: false,\n v7_skipActionErrorRevalidation: false,\n ...init.future,\n };\n // Cleanup function for history\n let unlistenHistory: (() => void) | null = null;\n // Externally-provided functions to call on all state changes\n let subscribers = new Set();\n // FIFO queue of previously discovered routes to prevent re-calling on\n // subsequent navigations to the same path\n let discoveredRoutesMaxSize = 1000;\n let discoveredRoutes = new Set();\n // Externally-provided object to hold scroll restoration locations during routing\n let savedScrollPositions: Record | null = null;\n // Externally-provided function to get scroll restoration keys\n let getScrollRestorationKey: GetScrollRestorationKeyFunction | null = null;\n // Externally-provided function to get current scroll position\n let getScrollPosition: GetScrollPositionFunction | null = null;\n // One-time flag to control the initial hydration scroll restoration. Because\n // we don't get the saved positions from until _after_\n // the initial render, we need to manually trigger a separate updateState to\n // send along the restoreScrollPosition\n // Set to true if we have `hydrationData` since we assume we were SSR'd and that\n // SSR did the initial scroll restoration.\n let initialScrollRestored = init.hydrationData != null;\n\n let initialMatches = matchRoutes(dataRoutes, init.history.location, basename);\n let initialErrors: RouteData | null = null;\n\n if (initialMatches == null && !patchRoutesOnNavigationImpl) {\n // If we do not match a user-provided-route, fall back to the root\n // to allow the error boundary to take over\n let error = getInternalRouterError(404, {\n pathname: init.history.location.pathname,\n });\n let { matches, route } = getShortCircuitMatches(dataRoutes);\n initialMatches = matches;\n initialErrors = { [route.id]: error };\n }\n\n // In SPA apps, if the user provided a patchRoutesOnNavigation implementation and\n // our initial match is a splat route, clear them out so we run through lazy\n // discovery on hydration in case there's a more accurate lazy route match.\n // In SSR apps (with `hydrationData`), we expect that the server will send\n // up the proper matched routes so we don't want to run lazy discovery on\n // initial hydration and want to hydrate into the splat route.\n if (initialMatches && !init.hydrationData) {\n let fogOfWar = checkFogOfWar(\n initialMatches,\n dataRoutes,\n init.history.location.pathname\n );\n if (fogOfWar.active) {\n initialMatches = null;\n }\n }\n\n let initialized: boolean;\n if (!initialMatches) {\n initialized = false;\n initialMatches = [];\n\n // If partial hydration and fog of war is enabled, we will be running\n // `patchRoutesOnNavigation` during hydration so include any partial matches as\n // the initial matches so we can properly render `HydrateFallback`'s\n if (future.v7_partialHydration) {\n let fogOfWar = checkFogOfWar(\n null,\n dataRoutes,\n init.history.location.pathname\n );\n if (fogOfWar.active && fogOfWar.matches) {\n initialMatches = fogOfWar.matches;\n }\n }\n } else if (initialMatches.some((m) => m.route.lazy)) {\n // All initialMatches need to be loaded before we're ready. If we have lazy\n // functions around still then we'll need to run them in initialize()\n initialized = false;\n } else if (!initialMatches.some((m) => m.route.loader)) {\n // If we've got no loaders to run, then we're good to go\n initialized = true;\n } else if (future.v7_partialHydration) {\n // If partial hydration is enabled, we're initialized so long as we were\n // provided with hydrationData for every route with a loader, and no loaders\n // were marked for explicit hydration\n let loaderData = init.hydrationData ? init.hydrationData.loaderData : null;\n let errors = init.hydrationData ? init.hydrationData.errors : null;\n let isRouteInitialized = (m: AgnosticDataRouteMatch) => {\n // No loader, nothing to initialize\n if (!m.route.loader) {\n return true;\n }\n // Explicitly opting-in to running on hydration\n if (\n typeof m.route.loader === \"function\" &&\n m.route.loader.hydrate === true\n ) {\n return false;\n }\n // Otherwise, initialized if hydrated with data or an error\n return (\n (loaderData && loaderData[m.route.id] !== undefined) ||\n (errors && errors[m.route.id] !== undefined)\n );\n };\n\n // If errors exist, don't consider routes below the boundary\n if (errors) {\n let idx = initialMatches.findIndex(\n (m) => errors![m.route.id] !== undefined\n );\n initialized = initialMatches.slice(0, idx + 1).every(isRouteInitialized);\n } else {\n initialized = initialMatches.every(isRouteInitialized);\n }\n } else {\n // Without partial hydration - we're initialized if we were provided any\n // hydrationData - which is expected to be complete\n initialized = init.hydrationData != null;\n }\n\n let router: Router;\n let state: RouterState = {\n historyAction: init.history.action,\n location: init.history.location,\n matches: initialMatches,\n initialized,\n navigation: IDLE_NAVIGATION,\n // Don't restore on initial updateState() if we were SSR'd\n restoreScrollPosition: init.hydrationData != null ? false : null,\n preventScrollReset: false,\n revalidation: \"idle\",\n loaderData: (init.hydrationData && init.hydrationData.loaderData) || {},\n actionData: (init.hydrationData && init.hydrationData.actionData) || null,\n errors: (init.hydrationData && init.hydrationData.errors) || initialErrors,\n fetchers: new Map(),\n blockers: new Map(),\n };\n\n // -- Stateful internal variables to manage navigations --\n // Current navigation in progress (to be committed in completeNavigation)\n let pendingAction: HistoryAction = HistoryAction.Pop;\n\n // Should the current navigation prevent the scroll reset if scroll cannot\n // be restored?\n let pendingPreventScrollReset = false;\n\n // AbortController for the active navigation\n let pendingNavigationController: AbortController | null;\n\n // Should the current navigation enable document.startViewTransition?\n let pendingViewTransitionEnabled = false;\n\n // Store applied view transitions so we can apply them on POP\n let appliedViewTransitions: Map> = new Map<\n string,\n Set\n >();\n\n // Cleanup function for persisting applied transitions to sessionStorage\n let removePageHideEventListener: (() => void) | null = null;\n\n // We use this to avoid touching history in completeNavigation if a\n // revalidation is entirely uninterrupted\n let isUninterruptedRevalidation = false;\n\n // Use this internal flag to force revalidation of all loaders:\n // - submissions (completed or interrupted)\n // - useRevalidator()\n // - X-Remix-Revalidate (from redirect)\n let isRevalidationRequired = false;\n\n // Use this internal array to capture routes that require revalidation due\n // to a cancelled deferred on action submission\n let cancelledDeferredRoutes: string[] = [];\n\n // Use this internal array to capture fetcher loads that were cancelled by an\n // action navigation and require revalidation\n let cancelledFetcherLoads: Set = new Set();\n\n // AbortControllers for any in-flight fetchers\n let fetchControllers = new Map();\n\n // Track loads based on the order in which they started\n let incrementingLoadId = 0;\n\n // Track the outstanding pending navigation data load to be compared against\n // the globally incrementing load when a fetcher load lands after a completed\n // navigation\n let pendingNavigationLoadId = -1;\n\n // Fetchers that triggered data reloads as a result of their actions\n let fetchReloadIds = new Map();\n\n // Fetchers that triggered redirect navigations\n let fetchRedirectIds = new Set();\n\n // Most recent href/match for fetcher.load calls for fetchers\n let fetchLoadMatches = new Map();\n\n // Ref-count mounted fetchers so we know when it's ok to clean them up\n let activeFetchers = new Map();\n\n // Fetchers that have requested a delete when using v7_fetcherPersist,\n // they'll be officially removed after they return to idle\n let deletedFetchers = new Set();\n\n // Store DeferredData instances for active route matches. When a\n // route loader returns defer() we stick one in here. Then, when a nested\n // promise resolves we update loaderData. If a new navigation starts we\n // cancel active deferreds for eliminated routes.\n let activeDeferreds = new Map();\n\n // Store blocker functions in a separate Map outside of router state since\n // we don't need to update UI state if they change\n let blockerFunctions = new Map();\n\n // Map of pending patchRoutesOnNavigation() promises (keyed by path/matches) so\n // that we only kick them off once for a given combo\n let pendingPatchRoutes = new Map<\n string,\n ReturnType\n >();\n\n // Flag to ignore the next history update, so we can revert the URL change on\n // a POP navigation that was blocked by the user without touching router state\n let ignoreNextHistoryUpdate = false;\n\n // Initialize the router, all side effects should be kicked off from here.\n // Implemented as a Fluent API for ease of:\n // let router = createRouter(init).initialize();\n function initialize() {\n // If history informs us of a POP navigation, start the navigation but do not update\n // state. We'll update our own state once the navigation completes\n unlistenHistory = init.history.listen(\n ({ action: historyAction, location, delta }) => {\n // Ignore this event if it was just us resetting the URL from a\n // blocked POP navigation\n if (ignoreNextHistoryUpdate) {\n ignoreNextHistoryUpdate = false;\n return;\n }\n\n warning(\n blockerFunctions.size === 0 || delta != null,\n \"You are trying to use a blocker on a POP navigation to a location \" +\n \"that was not created by @remix-run/router. This will fail silently in \" +\n \"production. This can happen if you are navigating outside the router \" +\n \"via `window.history.pushState`/`window.location.hash` instead of using \" +\n \"router navigation APIs. This can also happen if you are using \" +\n \"createHashRouter and the user manually changes the URL.\"\n );\n\n let blockerKey = shouldBlockNavigation({\n currentLocation: state.location,\n nextLocation: location,\n historyAction,\n });\n\n if (blockerKey && delta != null) {\n // Restore the URL to match the current UI, but don't update router state\n ignoreNextHistoryUpdate = true;\n init.history.go(delta * -1);\n\n // Put the blocker into a blocked state\n updateBlocker(blockerKey, {\n state: \"blocked\",\n location,\n proceed() {\n updateBlocker(blockerKey!, {\n state: \"proceeding\",\n proceed: undefined,\n reset: undefined,\n location,\n });\n // Re-do the same POP navigation we just blocked\n init.history.go(delta);\n },\n reset() {\n let blockers = new Map(state.blockers);\n blockers.set(blockerKey!, IDLE_BLOCKER);\n updateState({ blockers });\n },\n });\n return;\n }\n\n return startNavigation(historyAction, location);\n }\n );\n\n if (isBrowser) {\n // FIXME: This feels gross. How can we cleanup the lines between\n // scrollRestoration/appliedTransitions persistance?\n restoreAppliedTransitions(routerWindow, appliedViewTransitions);\n let _saveAppliedTransitions = () =>\n persistAppliedTransitions(routerWindow, appliedViewTransitions);\n routerWindow.addEventListener(\"pagehide\", _saveAppliedTransitions);\n removePageHideEventListener = () =>\n routerWindow.removeEventListener(\"pagehide\", _saveAppliedTransitions);\n }\n\n // Kick off initial data load if needed. Use Pop to avoid modifying history\n // Note we don't do any handling of lazy here. For SPA's it'll get handled\n // in the normal navigation flow. For SSR it's expected that lazy modules are\n // resolved prior to router creation since we can't go into a fallbackElement\n // UI for SSR'd apps\n if (!state.initialized) {\n startNavigation(HistoryAction.Pop, state.location, {\n initialHydration: true,\n });\n }\n\n return router;\n }\n\n // Clean up a router and it's side effects\n function dispose() {\n if (unlistenHistory) {\n unlistenHistory();\n }\n if (removePageHideEventListener) {\n removePageHideEventListener();\n }\n subscribers.clear();\n pendingNavigationController && pendingNavigationController.abort();\n state.fetchers.forEach((_, key) => deleteFetcher(key));\n state.blockers.forEach((_, key) => deleteBlocker(key));\n }\n\n // Subscribe to state updates for the router\n function subscribe(fn: RouterSubscriber) {\n subscribers.add(fn);\n return () => subscribers.delete(fn);\n }\n\n // Update our state and notify the calling context of the change\n function updateState(\n newState: Partial,\n opts: {\n flushSync?: boolean;\n viewTransitionOpts?: ViewTransitionOpts;\n } = {}\n ): void {\n state = {\n ...state,\n ...newState,\n };\n\n // Prep fetcher cleanup so we can tell the UI which fetcher data entries\n // can be removed\n let completedFetchers: string[] = [];\n let deletedFetchersKeys: string[] = [];\n\n if (future.v7_fetcherPersist) {\n state.fetchers.forEach((fetcher, key) => {\n if (fetcher.state === \"idle\") {\n if (deletedFetchers.has(key)) {\n // Unmounted from the UI and can be totally removed\n deletedFetchersKeys.push(key);\n } else {\n // Returned to idle but still mounted in the UI, so semi-remains for\n // revalidations and such\n completedFetchers.push(key);\n }\n }\n });\n }\n\n // Iterate over a local copy so that if flushSync is used and we end up\n // removing and adding a new subscriber due to the useCallback dependencies,\n // we don't get ourselves into a loop calling the new subscriber immediately\n [...subscribers].forEach((subscriber) =>\n subscriber(state, {\n deletedFetchers: deletedFetchersKeys,\n unstable_viewTransitionOpts: opts.viewTransitionOpts,\n unstable_flushSync: opts.flushSync === true,\n })\n );\n\n // Remove idle fetchers from state since we only care about in-flight fetchers.\n if (future.v7_fetcherPersist) {\n completedFetchers.forEach((key) => state.fetchers.delete(key));\n deletedFetchersKeys.forEach((key) => deleteFetcher(key));\n }\n }\n\n // Complete a navigation returning the state.navigation back to the IDLE_NAVIGATION\n // and setting state.[historyAction/location/matches] to the new route.\n // - Location is a required param\n // - Navigation will always be set to IDLE_NAVIGATION\n // - Can pass any other state in newState\n function completeNavigation(\n location: Location,\n newState: Partial>,\n { flushSync }: { flushSync?: boolean } = {}\n ): void {\n // Deduce if we're in a loading/actionReload state:\n // - We have committed actionData in the store\n // - The current navigation was a mutation submission\n // - We're past the submitting state and into the loading state\n // - The location being loaded is not the result of a redirect\n let isActionReload =\n state.actionData != null &&\n state.navigation.formMethod != null &&\n isMutationMethod(state.navigation.formMethod) &&\n state.navigation.state === \"loading\" &&\n location.state?._isRedirect !== true;\n\n let actionData: RouteData | null;\n if (newState.actionData) {\n if (Object.keys(newState.actionData).length > 0) {\n actionData = newState.actionData;\n } else {\n // Empty actionData -> clear prior actionData due to an action error\n actionData = null;\n }\n } else if (isActionReload) {\n // Keep the current data if we're wrapping up the action reload\n actionData = state.actionData;\n } else {\n // Clear actionData on any other completed navigations\n actionData = null;\n }\n\n // Always preserve any existing loaderData from re-used routes\n let loaderData = newState.loaderData\n ? mergeLoaderData(\n state.loaderData,\n newState.loaderData,\n newState.matches || [],\n newState.errors\n )\n : state.loaderData;\n\n // On a successful navigation we can assume we got through all blockers\n // so we can start fresh\n let blockers = state.blockers;\n if (blockers.size > 0) {\n blockers = new Map(blockers);\n blockers.forEach((_, k) => blockers.set(k, IDLE_BLOCKER));\n }\n\n // Always respect the user flag. Otherwise don't reset on mutation\n // submission navigations unless they redirect\n let preventScrollReset =\n pendingPreventScrollReset === true ||\n (state.navigation.formMethod != null &&\n isMutationMethod(state.navigation.formMethod) &&\n location.state?._isRedirect !== true);\n\n // Commit any in-flight routes at the end of the HMR revalidation \"navigation\"\n if (inFlightDataRoutes) {\n dataRoutes = inFlightDataRoutes;\n inFlightDataRoutes = undefined;\n }\n\n if (isUninterruptedRevalidation) {\n // If this was an uninterrupted revalidation then do not touch history\n } else if (pendingAction === HistoryAction.Pop) {\n // Do nothing for POP - URL has already been updated\n } else if (pendingAction === HistoryAction.Push) {\n init.history.push(location, location.state);\n } else if (pendingAction === HistoryAction.Replace) {\n init.history.replace(location, location.state);\n }\n\n let viewTransitionOpts: ViewTransitionOpts | undefined;\n\n // On POP, enable transitions if they were enabled on the original navigation\n if (pendingAction === HistoryAction.Pop) {\n // Forward takes precedence so they behave like the original navigation\n let priorPaths = appliedViewTransitions.get(state.location.pathname);\n if (priorPaths && priorPaths.has(location.pathname)) {\n viewTransitionOpts = {\n currentLocation: state.location,\n nextLocation: location,\n };\n } else if (appliedViewTransitions.has(location.pathname)) {\n // If we don't have a previous forward nav, assume we're popping back to\n // the new location and enable if that location previously enabled\n viewTransitionOpts = {\n currentLocation: location,\n nextLocation: state.location,\n };\n }\n } else if (pendingViewTransitionEnabled) {\n // Store the applied transition on PUSH/REPLACE\n let toPaths = appliedViewTransitions.get(state.location.pathname);\n if (toPaths) {\n toPaths.add(location.pathname);\n } else {\n toPaths = new Set([location.pathname]);\n appliedViewTransitions.set(state.location.pathname, toPaths);\n }\n viewTransitionOpts = {\n currentLocation: state.location,\n nextLocation: location,\n };\n }\n\n updateState(\n {\n ...newState, // matches, errors, fetchers go through as-is\n actionData,\n loaderData,\n historyAction: pendingAction,\n location,\n initialized: true,\n navigation: IDLE_NAVIGATION,\n revalidation: \"idle\",\n restoreScrollPosition: getSavedScrollPosition(\n location,\n newState.matches || state.matches\n ),\n preventScrollReset,\n blockers,\n },\n {\n viewTransitionOpts,\n flushSync: flushSync === true,\n }\n );\n\n // Reset stateful navigation vars\n pendingAction = HistoryAction.Pop;\n pendingPreventScrollReset = false;\n pendingViewTransitionEnabled = false;\n isUninterruptedRevalidation = false;\n isRevalidationRequired = false;\n cancelledDeferredRoutes = [];\n }\n\n // Trigger a navigation event, which can either be a numerical POP or a PUSH\n // replace with an optional submission\n async function navigate(\n to: number | To | null,\n opts?: RouterNavigateOptions\n ): Promise {\n if (typeof to === \"number\") {\n init.history.go(to);\n return;\n }\n\n let normalizedPath = normalizeTo(\n state.location,\n state.matches,\n basename,\n future.v7_prependBasename,\n to,\n future.v7_relativeSplatPath,\n opts?.fromRouteId,\n opts?.relative\n );\n let { path, submission, error } = normalizeNavigateOptions(\n future.v7_normalizeFormMethod,\n false,\n normalizedPath,\n opts\n );\n\n let currentLocation = state.location;\n let nextLocation = createLocation(state.location, path, opts && opts.state);\n\n // When using navigate as a PUSH/REPLACE we aren't reading an already-encoded\n // URL from window.location, so we need to encode it here so the behavior\n // remains the same as POP and non-data-router usages. new URL() does all\n // the same encoding we'd get from a history.pushState/window.location read\n // without having to touch history\n nextLocation = {\n ...nextLocation,\n ...init.history.encodeLocation(nextLocation),\n };\n\n let userReplace = opts && opts.replace != null ? opts.replace : undefined;\n\n let historyAction = HistoryAction.Push;\n\n if (userReplace === true) {\n historyAction = HistoryAction.Replace;\n } else if (userReplace === false) {\n // no-op\n } else if (\n submission != null &&\n isMutationMethod(submission.formMethod) &&\n submission.formAction === state.location.pathname + state.location.search\n ) {\n // By default on submissions to the current location we REPLACE so that\n // users don't have to double-click the back button to get to the prior\n // location. If the user redirects to a different location from the\n // action/loader this will be ignored and the redirect will be a PUSH\n historyAction = HistoryAction.Replace;\n }\n\n let preventScrollReset =\n opts && \"preventScrollReset\" in opts\n ? opts.preventScrollReset === true\n : undefined;\n\n let flushSync = (opts && opts.unstable_flushSync) === true;\n\n let blockerKey = shouldBlockNavigation({\n currentLocation,\n nextLocation,\n historyAction,\n });\n\n if (blockerKey) {\n // Put the blocker into a blocked state\n updateBlocker(blockerKey, {\n state: \"blocked\",\n location: nextLocation,\n proceed() {\n updateBlocker(blockerKey!, {\n state: \"proceeding\",\n proceed: undefined,\n reset: undefined,\n location: nextLocation,\n });\n // Send the same navigation through\n navigate(to, opts);\n },\n reset() {\n let blockers = new Map(state.blockers);\n blockers.set(blockerKey!, IDLE_BLOCKER);\n updateState({ blockers });\n },\n });\n return;\n }\n\n return await startNavigation(historyAction, nextLocation, {\n submission,\n // Send through the formData serialization error if we have one so we can\n // render at the right error boundary after we match routes\n pendingError: error,\n preventScrollReset,\n replace: opts && opts.replace,\n enableViewTransition: opts && opts.unstable_viewTransition,\n flushSync,\n });\n }\n\n // Revalidate all current loaders. If a navigation is in progress or if this\n // is interrupted by a navigation, allow this to \"succeed\" by calling all\n // loaders during the next loader round\n function revalidate() {\n interruptActiveLoads();\n updateState({ revalidation: \"loading\" });\n\n // If we're currently submitting an action, we don't need to start a new\n // navigation, we'll just let the follow up loader execution call all loaders\n if (state.navigation.state === \"submitting\") {\n return;\n }\n\n // If we're currently in an idle state, start a new navigation for the current\n // action/location and mark it as uninterrupted, which will skip the history\n // update in completeNavigation\n if (state.navigation.state === \"idle\") {\n startNavigation(state.historyAction, state.location, {\n startUninterruptedRevalidation: true,\n });\n return;\n }\n\n // Otherwise, if we're currently in a loading state, just start a new\n // navigation to the navigation.location but do not trigger an uninterrupted\n // revalidation so that history correctly updates once the navigation completes\n startNavigation(\n pendingAction || state.historyAction,\n state.navigation.location,\n { overrideNavigation: state.navigation }\n );\n }\n\n // Start a navigation to the given action/location. Can optionally provide a\n // overrideNavigation which will override the normalLoad in the case of a redirect\n // navigation\n async function startNavigation(\n historyAction: HistoryAction,\n location: Location,\n opts?: {\n initialHydration?: boolean;\n submission?: Submission;\n fetcherSubmission?: Submission;\n overrideNavigation?: Navigation;\n pendingError?: ErrorResponseImpl;\n startUninterruptedRevalidation?: boolean;\n preventScrollReset?: boolean;\n replace?: boolean;\n enableViewTransition?: boolean;\n flushSync?: boolean;\n }\n ): Promise {\n // Abort any in-progress navigations and start a new one. Unset any ongoing\n // uninterrupted revalidations unless told otherwise, since we want this\n // new navigation to update history normally\n pendingNavigationController && pendingNavigationController.abort();\n pendingNavigationController = null;\n pendingAction = historyAction;\n isUninterruptedRevalidation =\n (opts && opts.startUninterruptedRevalidation) === true;\n\n // Save the current scroll position every time we start a new navigation,\n // and track whether we should reset scroll on completion\n saveScrollPosition(state.location, state.matches);\n pendingPreventScrollReset = (opts && opts.preventScrollReset) === true;\n\n pendingViewTransitionEnabled = (opts && opts.enableViewTransition) === true;\n\n let routesToUse = inFlightDataRoutes || dataRoutes;\n let loadingNavigation = opts && opts.overrideNavigation;\n let matches = matchRoutes(routesToUse, location, basename);\n let flushSync = (opts && opts.flushSync) === true;\n\n let fogOfWar = checkFogOfWar(matches, routesToUse, location.pathname);\n if (fogOfWar.active && fogOfWar.matches) {\n matches = fogOfWar.matches;\n }\n\n // Short circuit with a 404 on the root error boundary if we match nothing\n if (!matches) {\n let { error, notFoundMatches, route } = handleNavigational404(\n location.pathname\n );\n completeNavigation(\n location,\n {\n matches: notFoundMatches,\n loaderData: {},\n errors: {\n [route.id]: error,\n },\n },\n { flushSync }\n );\n return;\n }\n\n // Short circuit if it's only a hash change and not a revalidation or\n // mutation submission.\n //\n // Ignore on initial page loads because since the initial load will always\n // be \"same hash\". For example, on /page#hash and submit a \n // which will default to a navigation to /page\n if (\n state.initialized &&\n !isRevalidationRequired &&\n isHashChangeOnly(state.location, location) &&\n !(opts && opts.submission && isMutationMethod(opts.submission.formMethod))\n ) {\n completeNavigation(location, { matches }, { flushSync });\n return;\n }\n\n // Create a controller/Request for this navigation\n pendingNavigationController = new AbortController();\n let request = createClientSideRequest(\n init.history,\n location,\n pendingNavigationController.signal,\n opts && opts.submission\n );\n let pendingActionResult: PendingActionResult | undefined;\n\n if (opts && opts.pendingError) {\n // If we have a pendingError, it means the user attempted a GET submission\n // with binary FormData so assign here and skip to handleLoaders. That\n // way we handle calling loaders above the boundary etc. It's not really\n // different from an actionError in that sense.\n pendingActionResult = [\n findNearestBoundary(matches).route.id,\n { type: ResultType.error, error: opts.pendingError },\n ];\n } else if (\n opts &&\n opts.submission &&\n isMutationMethod(opts.submission.formMethod)\n ) {\n // Call action if we received an action submission\n let actionResult = await handleAction(\n request,\n location,\n opts.submission,\n matches,\n fogOfWar.active,\n { replace: opts.replace, flushSync }\n );\n\n if (actionResult.shortCircuited) {\n return;\n }\n\n // If we received a 404 from handleAction, it's because we couldn't lazily\n // discover the destination route so we don't want to call loaders\n if (actionResult.pendingActionResult) {\n let [routeId, result] = actionResult.pendingActionResult;\n if (\n isErrorResult(result) &&\n isRouteErrorResponse(result.error) &&\n result.error.status === 404\n ) {\n pendingNavigationController = null;\n\n completeNavigation(location, {\n matches: actionResult.matches,\n loaderData: {},\n errors: {\n [routeId]: result.error,\n },\n });\n return;\n }\n }\n\n matches = actionResult.matches || matches;\n pendingActionResult = actionResult.pendingActionResult;\n loadingNavigation = getLoadingNavigation(location, opts.submission);\n flushSync = false;\n // No need to do fog of war matching again on loader execution\n fogOfWar.active = false;\n\n // Create a GET request for the loaders\n request = createClientSideRequest(\n init.history,\n request.url,\n request.signal\n );\n }\n\n // Call loaders\n let {\n shortCircuited,\n matches: updatedMatches,\n loaderData,\n errors,\n } = await handleLoaders(\n request,\n location,\n matches,\n fogOfWar.active,\n loadingNavigation,\n opts && opts.submission,\n opts && opts.fetcherSubmission,\n opts && opts.replace,\n opts && opts.initialHydration === true,\n flushSync,\n pendingActionResult\n );\n\n if (shortCircuited) {\n return;\n }\n\n // Clean up now that the action/loaders have completed. Don't clean up if\n // we short circuited because pendingNavigationController will have already\n // been assigned to a new controller for the next navigation\n pendingNavigationController = null;\n\n completeNavigation(location, {\n matches: updatedMatches || matches,\n ...getActionDataForCommit(pendingActionResult),\n loaderData,\n errors,\n });\n }\n\n // Call the action matched by the leaf route for this navigation and handle\n // redirects/errors\n async function handleAction(\n request: Request,\n location: Location,\n submission: Submission,\n matches: AgnosticDataRouteMatch[],\n isFogOfWar: boolean,\n opts: { replace?: boolean; flushSync?: boolean } = {}\n ): Promise {\n interruptActiveLoads();\n\n // Put us in a submitting state\n let navigation = getSubmittingNavigation(location, submission);\n updateState({ navigation }, { flushSync: opts.flushSync === true });\n\n if (isFogOfWar) {\n let discoverResult = await discoverRoutes(\n matches,\n location.pathname,\n request.signal\n );\n if (discoverResult.type === \"aborted\") {\n return { shortCircuited: true };\n } else if (discoverResult.type === \"error\") {\n let { boundaryId, error } = handleDiscoverRouteError(\n location.pathname,\n discoverResult\n );\n return {\n matches: discoverResult.partialMatches,\n pendingActionResult: [\n boundaryId,\n {\n type: ResultType.error,\n error,\n },\n ],\n };\n } else if (!discoverResult.matches) {\n let { notFoundMatches, error, route } = handleNavigational404(\n location.pathname\n );\n return {\n matches: notFoundMatches,\n pendingActionResult: [\n route.id,\n {\n type: ResultType.error,\n error,\n },\n ],\n };\n } else {\n matches = discoverResult.matches;\n }\n }\n\n // Call our action and get the result\n let result: DataResult;\n let actionMatch = getTargetMatch(matches, location);\n\n if (!actionMatch.route.action && !actionMatch.route.lazy) {\n result = {\n type: ResultType.error,\n error: getInternalRouterError(405, {\n method: request.method,\n pathname: location.pathname,\n routeId: actionMatch.route.id,\n }),\n };\n } else {\n let results = await callDataStrategy(\n \"action\",\n request,\n [actionMatch],\n matches\n );\n result = results[0];\n\n if (request.signal.aborted) {\n return { shortCircuited: true };\n }\n }\n\n if (isRedirectResult(result)) {\n let replace: boolean;\n if (opts && opts.replace != null) {\n replace = opts.replace;\n } else {\n // If the user didn't explicity indicate replace behavior, replace if\n // we redirected to the exact same location we're currently at to avoid\n // double back-buttons\n let location = normalizeRedirectLocation(\n result.response.headers.get(\"Location\")!,\n new URL(request.url),\n basename\n );\n replace = location === state.location.pathname + state.location.search;\n }\n await startRedirectNavigation(request, result, {\n submission,\n replace,\n });\n return { shortCircuited: true };\n }\n\n if (isDeferredResult(result)) {\n throw getInternalRouterError(400, { type: \"defer-action\" });\n }\n\n if (isErrorResult(result)) {\n // Store off the pending error - we use it to determine which loaders\n // to call and will commit it when we complete the navigation\n let boundaryMatch = findNearestBoundary(matches, actionMatch.route.id);\n\n // By default, all submissions to the current location are REPLACE\n // navigations, but if the action threw an error that'll be rendered in\n // an errorElement, we fall back to PUSH so that the user can use the\n // back button to get back to the pre-submission form location to try\n // again\n if ((opts && opts.replace) !== true) {\n pendingAction = HistoryAction.Push;\n }\n\n return {\n matches,\n pendingActionResult: [boundaryMatch.route.id, result],\n };\n }\n\n return {\n matches,\n pendingActionResult: [actionMatch.route.id, result],\n };\n }\n\n // Call all applicable loaders for the given matches, handling redirects,\n // errors, etc.\n async function handleLoaders(\n request: Request,\n location: Location,\n matches: AgnosticDataRouteMatch[],\n isFogOfWar: boolean,\n overrideNavigation?: Navigation,\n submission?: Submission,\n fetcherSubmission?: Submission,\n replace?: boolean,\n initialHydration?: boolean,\n flushSync?: boolean,\n pendingActionResult?: PendingActionResult\n ): Promise {\n // Figure out the right navigation we want to use for data loading\n let loadingNavigation =\n overrideNavigation || getLoadingNavigation(location, submission);\n\n // If this was a redirect from an action we don't have a \"submission\" but\n // we have it on the loading navigation so use that if available\n let activeSubmission =\n submission ||\n fetcherSubmission ||\n getSubmissionFromNavigation(loadingNavigation);\n\n // If this is an uninterrupted revalidation, we remain in our current idle\n // state. If not, we need to switch to our loading state and load data,\n // preserving any new action data or existing action data (in the case of\n // a revalidation interrupting an actionReload)\n // If we have partialHydration enabled, then don't update the state for the\n // initial data load since it's not a \"navigation\"\n let shouldUpdateNavigationState =\n !isUninterruptedRevalidation &&\n (!future.v7_partialHydration || !initialHydration);\n\n // When fog of war is enabled, we enter our `loading` state earlier so we\n // can discover new routes during the `loading` state. We skip this if\n // we've already run actions since we would have done our matching already.\n // If the children() function threw then, we want to proceed with the\n // partial matches it discovered.\n if (isFogOfWar) {\n if (shouldUpdateNavigationState) {\n let actionData = getUpdatedActionData(pendingActionResult);\n updateState(\n {\n navigation: loadingNavigation,\n ...(actionData !== undefined ? { actionData } : {}),\n },\n {\n flushSync,\n }\n );\n }\n\n let discoverResult = await discoverRoutes(\n matches,\n location.pathname,\n request.signal\n );\n\n if (discoverResult.type === \"aborted\") {\n return { shortCircuited: true };\n } else if (discoverResult.type === \"error\") {\n let { boundaryId, error } = handleDiscoverRouteError(\n location.pathname,\n discoverResult\n );\n return {\n matches: discoverResult.partialMatches,\n loaderData: {},\n errors: {\n [boundaryId]: error,\n },\n };\n } else if (!discoverResult.matches) {\n let { error, notFoundMatches, route } = handleNavigational404(\n location.pathname\n );\n return {\n matches: notFoundMatches,\n loaderData: {},\n errors: {\n [route.id]: error,\n },\n };\n } else {\n matches = discoverResult.matches;\n }\n }\n\n let routesToUse = inFlightDataRoutes || dataRoutes;\n let [matchesToLoad, revalidatingFetchers] = getMatchesToLoad(\n init.history,\n state,\n matches,\n activeSubmission,\n location,\n future.v7_partialHydration && initialHydration === true,\n future.v7_skipActionErrorRevalidation,\n isRevalidationRequired,\n cancelledDeferredRoutes,\n cancelledFetcherLoads,\n deletedFetchers,\n fetchLoadMatches,\n fetchRedirectIds,\n routesToUse,\n basename,\n pendingActionResult\n );\n\n // Cancel pending deferreds for no-longer-matched routes or routes we're\n // about to reload. Note that if this is an action reload we would have\n // already cancelled all pending deferreds so this would be a no-op\n cancelActiveDeferreds(\n (routeId) =>\n !(matches && matches.some((m) => m.route.id === routeId)) ||\n (matchesToLoad && matchesToLoad.some((m) => m.route.id === routeId))\n );\n\n pendingNavigationLoadId = ++incrementingLoadId;\n\n // Short circuit if we have no loaders to run\n if (matchesToLoad.length === 0 && revalidatingFetchers.length === 0) {\n let updatedFetchers = markFetchRedirectsDone();\n completeNavigation(\n location,\n {\n matches,\n loaderData: {},\n // Commit pending error if we're short circuiting\n errors:\n pendingActionResult && isErrorResult(pendingActionResult[1])\n ? { [pendingActionResult[0]]: pendingActionResult[1].error }\n : null,\n ...getActionDataForCommit(pendingActionResult),\n ...(updatedFetchers ? { fetchers: new Map(state.fetchers) } : {}),\n },\n { flushSync }\n );\n return { shortCircuited: true };\n }\n\n if (shouldUpdateNavigationState) {\n let updates: Partial = {};\n if (!isFogOfWar) {\n // Only update navigation/actionNData if we didn't already do it above\n updates.navigation = loadingNavigation;\n let actionData = getUpdatedActionData(pendingActionResult);\n if (actionData !== undefined) {\n updates.actionData = actionData;\n }\n }\n if (revalidatingFetchers.length > 0) {\n updates.fetchers = getUpdatedRevalidatingFetchers(revalidatingFetchers);\n }\n updateState(updates, { flushSync });\n }\n\n revalidatingFetchers.forEach((rf) => {\n if (fetchControllers.has(rf.key)) {\n abortFetcher(rf.key);\n }\n if (rf.controller) {\n // Fetchers use an independent AbortController so that aborting a fetcher\n // (via deleteFetcher) does not abort the triggering navigation that\n // triggered the revalidation\n fetchControllers.set(rf.key, rf.controller);\n }\n });\n\n // Proxy navigation abort through to revalidation fetchers\n let abortPendingFetchRevalidations = () =>\n revalidatingFetchers.forEach((f) => abortFetcher(f.key));\n if (pendingNavigationController) {\n pendingNavigationController.signal.addEventListener(\n \"abort\",\n abortPendingFetchRevalidations\n );\n }\n\n let { loaderResults, fetcherResults } =\n await callLoadersAndMaybeResolveData(\n state.matches,\n matches,\n matchesToLoad,\n revalidatingFetchers,\n request\n );\n\n if (request.signal.aborted) {\n return { shortCircuited: true };\n }\n\n // Clean up _after_ loaders have completed. Don't clean up if we short\n // circuited because fetchControllers would have been aborted and\n // reassigned to new controllers for the next navigation\n if (pendingNavigationController) {\n pendingNavigationController.signal.removeEventListener(\n \"abort\",\n abortPendingFetchRevalidations\n );\n }\n revalidatingFetchers.forEach((rf) => fetchControllers.delete(rf.key));\n\n // If any loaders returned a redirect Response, start a new REPLACE navigation\n let redirect = findRedirect([...loaderResults, ...fetcherResults]);\n if (redirect) {\n if (redirect.idx >= matchesToLoad.length) {\n // If this redirect came from a fetcher make sure we mark it in\n // fetchRedirectIds so it doesn't get revalidated on the next set of\n // loader executions\n let fetcherKey =\n revalidatingFetchers[redirect.idx - matchesToLoad.length].key;\n fetchRedirectIds.add(fetcherKey);\n }\n await startRedirectNavigation(request, redirect.result, {\n replace,\n });\n return { shortCircuited: true };\n }\n\n // Process and commit output from loaders\n let { loaderData, errors } = processLoaderData(\n state,\n matches,\n matchesToLoad,\n loaderResults,\n pendingActionResult,\n revalidatingFetchers,\n fetcherResults,\n activeDeferreds\n );\n\n // Wire up subscribers to update loaderData as promises settle\n activeDeferreds.forEach((deferredData, routeId) => {\n deferredData.subscribe((aborted) => {\n // Note: No need to updateState here since the TrackedPromise on\n // loaderData is stable across resolve/reject\n // Remove this instance if we were aborted or if promises have settled\n if (aborted || deferredData.done) {\n activeDeferreds.delete(routeId);\n }\n });\n });\n\n // During partial hydration, preserve SSR errors for routes that don't re-run\n if (future.v7_partialHydration && initialHydration && state.errors) {\n Object.entries(state.errors)\n .filter(([id]) => !matchesToLoad.some((m) => m.route.id === id))\n .forEach(([routeId, error]) => {\n errors = Object.assign(errors || {}, { [routeId]: error });\n });\n }\n\n let updatedFetchers = markFetchRedirectsDone();\n let didAbortFetchLoads = abortStaleFetchLoads(pendingNavigationLoadId);\n let shouldUpdateFetchers =\n updatedFetchers || didAbortFetchLoads || revalidatingFetchers.length > 0;\n\n return {\n matches,\n loaderData,\n errors,\n ...(shouldUpdateFetchers ? { fetchers: new Map(state.fetchers) } : {}),\n };\n }\n\n function getUpdatedActionData(\n pendingActionResult: PendingActionResult | undefined\n ): Record | null | undefined {\n if (pendingActionResult && !isErrorResult(pendingActionResult[1])) {\n // This is cast to `any` currently because `RouteData`uses any and it\n // would be a breaking change to use any.\n // TODO: v7 - change `RouteData` to use `unknown` instead of `any`\n return {\n [pendingActionResult[0]]: pendingActionResult[1].data as any,\n };\n } else if (state.actionData) {\n if (Object.keys(state.actionData).length === 0) {\n return null;\n } else {\n return state.actionData;\n }\n }\n }\n\n function getUpdatedRevalidatingFetchers(\n revalidatingFetchers: RevalidatingFetcher[]\n ) {\n revalidatingFetchers.forEach((rf) => {\n let fetcher = state.fetchers.get(rf.key);\n let revalidatingFetcher = getLoadingFetcher(\n undefined,\n fetcher ? fetcher.data : undefined\n );\n state.fetchers.set(rf.key, revalidatingFetcher);\n });\n return new Map(state.fetchers);\n }\n\n // Trigger a fetcher load/submit for the given fetcher key\n function fetch(\n key: string,\n routeId: string,\n href: string | null,\n opts?: RouterFetchOptions\n ) {\n if (isServer) {\n throw new Error(\n \"router.fetch() was called during the server render, but it shouldn't be. \" +\n \"You are likely calling a useFetcher() method in the body of your component. \" +\n \"Try moving it to a useEffect or a callback.\"\n );\n }\n\n if (fetchControllers.has(key)) abortFetcher(key);\n let flushSync = (opts && opts.unstable_flushSync) === true;\n\n let routesToUse = inFlightDataRoutes || dataRoutes;\n let normalizedPath = normalizeTo(\n state.location,\n state.matches,\n basename,\n future.v7_prependBasename,\n href,\n future.v7_relativeSplatPath,\n routeId,\n opts?.relative\n );\n let matches = matchRoutes(routesToUse, normalizedPath, basename);\n\n let fogOfWar = checkFogOfWar(matches, routesToUse, normalizedPath);\n if (fogOfWar.active && fogOfWar.matches) {\n matches = fogOfWar.matches;\n }\n\n if (!matches) {\n setFetcherError(\n key,\n routeId,\n getInternalRouterError(404, { pathname: normalizedPath }),\n { flushSync }\n );\n return;\n }\n\n let { path, submission, error } = normalizeNavigateOptions(\n future.v7_normalizeFormMethod,\n true,\n normalizedPath,\n opts\n );\n\n if (error) {\n setFetcherError(key, routeId, error, { flushSync });\n return;\n }\n\n let match = getTargetMatch(matches, path);\n\n pendingPreventScrollReset = (opts && opts.preventScrollReset) === true;\n\n if (submission && isMutationMethod(submission.formMethod)) {\n handleFetcherAction(\n key,\n routeId,\n path,\n match,\n matches,\n fogOfWar.active,\n flushSync,\n submission\n );\n return;\n }\n\n // Store off the match so we can call it's shouldRevalidate on subsequent\n // revalidations\n fetchLoadMatches.set(key, { routeId, path });\n handleFetcherLoader(\n key,\n routeId,\n path,\n match,\n matches,\n fogOfWar.active,\n flushSync,\n submission\n );\n }\n\n // Call the action for the matched fetcher.submit(), and then handle redirects,\n // errors, and revalidation\n async function handleFetcherAction(\n key: string,\n routeId: string,\n path: string,\n match: AgnosticDataRouteMatch,\n requestMatches: AgnosticDataRouteMatch[],\n isFogOfWar: boolean,\n flushSync: boolean,\n submission: Submission\n ) {\n interruptActiveLoads();\n fetchLoadMatches.delete(key);\n\n function detectAndHandle405Error(m: AgnosticDataRouteMatch) {\n if (!m.route.action && !m.route.lazy) {\n let error = getInternalRouterError(405, {\n method: submission.formMethod,\n pathname: path,\n routeId: routeId,\n });\n setFetcherError(key, routeId, error, { flushSync });\n return true;\n }\n return false;\n }\n\n if (!isFogOfWar && detectAndHandle405Error(match)) {\n return;\n }\n\n // Put this fetcher into it's submitting state\n let existingFetcher = state.fetchers.get(key);\n updateFetcherState(key, getSubmittingFetcher(submission, existingFetcher), {\n flushSync,\n });\n\n let abortController = new AbortController();\n let fetchRequest = createClientSideRequest(\n init.history,\n path,\n abortController.signal,\n submission\n );\n\n if (isFogOfWar) {\n let discoverResult = await discoverRoutes(\n requestMatches,\n path,\n fetchRequest.signal\n );\n\n if (discoverResult.type === \"aborted\") {\n return;\n } else if (discoverResult.type === \"error\") {\n let { error } = handleDiscoverRouteError(path, discoverResult);\n setFetcherError(key, routeId, error, { flushSync });\n return;\n } else if (!discoverResult.matches) {\n setFetcherError(\n key,\n routeId,\n getInternalRouterError(404, { pathname: path }),\n { flushSync }\n );\n return;\n } else {\n requestMatches = discoverResult.matches;\n match = getTargetMatch(requestMatches, path);\n\n if (detectAndHandle405Error(match)) {\n return;\n }\n }\n }\n\n // Call the action for the fetcher\n fetchControllers.set(key, abortController);\n\n let originatingLoadId = incrementingLoadId;\n let actionResults = await callDataStrategy(\n \"action\",\n fetchRequest,\n [match],\n requestMatches\n );\n let actionResult = actionResults[0];\n\n if (fetchRequest.signal.aborted) {\n // We can delete this so long as we weren't aborted by our own fetcher\n // re-submit which would have put _new_ controller is in fetchControllers\n if (fetchControllers.get(key) === abortController) {\n fetchControllers.delete(key);\n }\n return;\n }\n\n // When using v7_fetcherPersist, we don't want errors bubbling up to the UI\n // or redirects processed for unmounted fetchers so we just revert them to\n // idle\n if (future.v7_fetcherPersist && deletedFetchers.has(key)) {\n if (isRedirectResult(actionResult) || isErrorResult(actionResult)) {\n updateFetcherState(key, getDoneFetcher(undefined));\n return;\n }\n // Let SuccessResult's fall through for revalidation\n } else {\n if (isRedirectResult(actionResult)) {\n fetchControllers.delete(key);\n if (pendingNavigationLoadId > originatingLoadId) {\n // A new navigation was kicked off after our action started, so that\n // should take precedence over this redirect navigation. We already\n // set isRevalidationRequired so all loaders for the new route should\n // fire unless opted out via shouldRevalidate\n updateFetcherState(key, getDoneFetcher(undefined));\n return;\n } else {\n fetchRedirectIds.add(key);\n updateFetcherState(key, getLoadingFetcher(submission));\n return startRedirectNavigation(fetchRequest, actionResult, {\n fetcherSubmission: submission,\n });\n }\n }\n\n // Process any non-redirect errors thrown\n if (isErrorResult(actionResult)) {\n setFetcherError(key, routeId, actionResult.error);\n return;\n }\n }\n\n if (isDeferredResult(actionResult)) {\n throw getInternalRouterError(400, { type: \"defer-action\" });\n }\n\n // Start the data load for current matches, or the next location if we're\n // in the middle of a navigation\n let nextLocation = state.navigation.location || state.location;\n let revalidationRequest = createClientSideRequest(\n init.history,\n nextLocation,\n abortController.signal\n );\n let routesToUse = inFlightDataRoutes || dataRoutes;\n let matches =\n state.navigation.state !== \"idle\"\n ? matchRoutes(routesToUse, state.navigation.location, basename)\n : state.matches;\n\n invariant(matches, \"Didn't find any matches after fetcher action\");\n\n let loadId = ++incrementingLoadId;\n fetchReloadIds.set(key, loadId);\n\n let loadFetcher = getLoadingFetcher(submission, actionResult.data);\n state.fetchers.set(key, loadFetcher);\n\n let [matchesToLoad, revalidatingFetchers] = getMatchesToLoad(\n init.history,\n state,\n matches,\n submission,\n nextLocation,\n false,\n future.v7_skipActionErrorRevalidation,\n isRevalidationRequired,\n cancelledDeferredRoutes,\n cancelledFetcherLoads,\n deletedFetchers,\n fetchLoadMatches,\n fetchRedirectIds,\n routesToUse,\n basename,\n [match.route.id, actionResult]\n );\n\n // Put all revalidating fetchers into the loading state, except for the\n // current fetcher which we want to keep in it's current loading state which\n // contains it's action submission info + action data\n revalidatingFetchers\n .filter((rf) => rf.key !== key)\n .forEach((rf) => {\n let staleKey = rf.key;\n let existingFetcher = state.fetchers.get(staleKey);\n let revalidatingFetcher = getLoadingFetcher(\n undefined,\n existingFetcher ? existingFetcher.data : undefined\n );\n state.fetchers.set(staleKey, revalidatingFetcher);\n if (fetchControllers.has(staleKey)) {\n abortFetcher(staleKey);\n }\n if (rf.controller) {\n fetchControllers.set(staleKey, rf.controller);\n }\n });\n\n updateState({ fetchers: new Map(state.fetchers) });\n\n let abortPendingFetchRevalidations = () =>\n revalidatingFetchers.forEach((rf) => abortFetcher(rf.key));\n\n abortController.signal.addEventListener(\n \"abort\",\n abortPendingFetchRevalidations\n );\n\n let { loaderResults, fetcherResults } =\n await callLoadersAndMaybeResolveData(\n state.matches,\n matches,\n matchesToLoad,\n revalidatingFetchers,\n revalidationRequest\n );\n\n if (abortController.signal.aborted) {\n return;\n }\n\n abortController.signal.removeEventListener(\n \"abort\",\n abortPendingFetchRevalidations\n );\n\n fetchReloadIds.delete(key);\n fetchControllers.delete(key);\n revalidatingFetchers.forEach((r) => fetchControllers.delete(r.key));\n\n let redirect = findRedirect([...loaderResults, ...fetcherResults]);\n if (redirect) {\n if (redirect.idx >= matchesToLoad.length) {\n // If this redirect came from a fetcher make sure we mark it in\n // fetchRedirectIds so it doesn't get revalidated on the next set of\n // loader executions\n let fetcherKey =\n revalidatingFetchers[redirect.idx - matchesToLoad.length].key;\n fetchRedirectIds.add(fetcherKey);\n }\n return startRedirectNavigation(revalidationRequest, redirect.result);\n }\n\n // Process and commit output from loaders\n let { loaderData, errors } = processLoaderData(\n state,\n state.matches,\n matchesToLoad,\n loaderResults,\n undefined,\n revalidatingFetchers,\n fetcherResults,\n activeDeferreds\n );\n\n // Since we let revalidations complete even if the submitting fetcher was\n // deleted, only put it back to idle if it hasn't been deleted\n if (state.fetchers.has(key)) {\n let doneFetcher = getDoneFetcher(actionResult.data);\n state.fetchers.set(key, doneFetcher);\n }\n\n abortStaleFetchLoads(loadId);\n\n // If we are currently in a navigation loading state and this fetcher is\n // more recent than the navigation, we want the newer data so abort the\n // navigation and complete it with the fetcher data\n if (\n state.navigation.state === \"loading\" &&\n loadId > pendingNavigationLoadId\n ) {\n invariant(pendingAction, \"Expected pending action\");\n pendingNavigationController && pendingNavigationController.abort();\n\n completeNavigation(state.navigation.location, {\n matches,\n loaderData,\n errors,\n fetchers: new Map(state.fetchers),\n });\n } else {\n // otherwise just update with the fetcher data, preserving any existing\n // loaderData for loaders that did not need to reload. We have to\n // manually merge here since we aren't going through completeNavigation\n updateState({\n errors,\n loaderData: mergeLoaderData(\n state.loaderData,\n loaderData,\n matches,\n errors\n ),\n fetchers: new Map(state.fetchers),\n });\n isRevalidationRequired = false;\n }\n }\n\n // Call the matched loader for fetcher.load(), handling redirects, errors, etc.\n async function handleFetcherLoader(\n key: string,\n routeId: string,\n path: string,\n match: AgnosticDataRouteMatch,\n matches: AgnosticDataRouteMatch[],\n isFogOfWar: boolean,\n flushSync: boolean,\n submission?: Submission\n ) {\n let existingFetcher = state.fetchers.get(key);\n updateFetcherState(\n key,\n getLoadingFetcher(\n submission,\n existingFetcher ? existingFetcher.data : undefined\n ),\n { flushSync }\n );\n\n let abortController = new AbortController();\n let fetchRequest = createClientSideRequest(\n init.history,\n path,\n abortController.signal\n );\n\n if (isFogOfWar) {\n let discoverResult = await discoverRoutes(\n matches,\n path,\n fetchRequest.signal\n );\n\n if (discoverResult.type === \"aborted\") {\n return;\n } else if (discoverResult.type === \"error\") {\n let { error } = handleDiscoverRouteError(path, discoverResult);\n setFetcherError(key, routeId, error, { flushSync });\n return;\n } else if (!discoverResult.matches) {\n setFetcherError(\n key,\n routeId,\n getInternalRouterError(404, { pathname: path }),\n { flushSync }\n );\n return;\n } else {\n matches = discoverResult.matches;\n match = getTargetMatch(matches, path);\n }\n }\n\n // Call the loader for this fetcher route match\n fetchControllers.set(key, abortController);\n\n let originatingLoadId = incrementingLoadId;\n let results = await callDataStrategy(\n \"loader\",\n fetchRequest,\n [match],\n matches\n );\n let result = results[0];\n\n // Deferred isn't supported for fetcher loads, await everything and treat it\n // as a normal load. resolveDeferredData will return undefined if this\n // fetcher gets aborted, so we just leave result untouched and short circuit\n // below if that happens\n if (isDeferredResult(result)) {\n result =\n (await resolveDeferredData(result, fetchRequest.signal, true)) ||\n result;\n }\n\n // We can delete this so long as we weren't aborted by our our own fetcher\n // re-load which would have put _new_ controller is in fetchControllers\n if (fetchControllers.get(key) === abortController) {\n fetchControllers.delete(key);\n }\n\n if (fetchRequest.signal.aborted) {\n return;\n }\n\n // We don't want errors bubbling up or redirects followed for unmounted\n // fetchers, so short circuit here if it was removed from the UI\n if (deletedFetchers.has(key)) {\n updateFetcherState(key, getDoneFetcher(undefined));\n return;\n }\n\n // If the loader threw a redirect Response, start a new REPLACE navigation\n if (isRedirectResult(result)) {\n if (pendingNavigationLoadId > originatingLoadId) {\n // A new navigation was kicked off after our loader started, so that\n // should take precedence over this redirect navigation\n updateFetcherState(key, getDoneFetcher(undefined));\n return;\n } else {\n fetchRedirectIds.add(key);\n await startRedirectNavigation(fetchRequest, result);\n return;\n }\n }\n\n // Process any non-redirect errors thrown\n if (isErrorResult(result)) {\n setFetcherError(key, routeId, result.error);\n return;\n }\n\n invariant(!isDeferredResult(result), \"Unhandled fetcher deferred data\");\n\n // Put the fetcher back into an idle state\n updateFetcherState(key, getDoneFetcher(result.data));\n }\n\n /**\n * Utility function to handle redirects returned from an action or loader.\n * Normally, a redirect \"replaces\" the navigation that triggered it. So, for\n * example:\n *\n * - user is on /a\n * - user clicks a link to /b\n * - loader for /b redirects to /c\n *\n * In a non-JS app the browser would track the in-flight navigation to /b and\n * then replace it with /c when it encountered the redirect response. In\n * the end it would only ever update the URL bar with /c.\n *\n * In client-side routing using pushState/replaceState, we aim to emulate\n * this behavior and we also do not update history until the end of the\n * navigation (including processed redirects). This means that we never\n * actually touch history until we've processed redirects, so we just use\n * the history action from the original navigation (PUSH or REPLACE).\n */\n async function startRedirectNavigation(\n request: Request,\n redirect: RedirectResult,\n {\n submission,\n fetcherSubmission,\n replace,\n }: {\n submission?: Submission;\n fetcherSubmission?: Submission;\n replace?: boolean;\n } = {}\n ) {\n if (redirect.response.headers.has(\"X-Remix-Revalidate\")) {\n isRevalidationRequired = true;\n }\n\n let location = redirect.response.headers.get(\"Location\");\n invariant(location, \"Expected a Location header on the redirect Response\");\n location = normalizeRedirectLocation(\n location,\n new URL(request.url),\n basename\n );\n let redirectLocation = createLocation(state.location, location, {\n _isRedirect: true,\n });\n\n if (isBrowser) {\n let isDocumentReload = false;\n\n if (redirect.response.headers.has(\"X-Remix-Reload-Document\")) {\n // Hard reload if the response contained X-Remix-Reload-Document\n isDocumentReload = true;\n } else if (ABSOLUTE_URL_REGEX.test(location)) {\n const url = init.history.createURL(location);\n isDocumentReload =\n // Hard reload if it's an absolute URL to a new origin\n url.origin !== routerWindow.location.origin ||\n // Hard reload if it's an absolute URL that does not match our basename\n stripBasename(url.pathname, basename) == null;\n }\n\n if (isDocumentReload) {\n if (replace) {\n routerWindow.location.replace(location);\n } else {\n routerWindow.location.assign(location);\n }\n return;\n }\n }\n\n // There's no need to abort on redirects, since we don't detect the\n // redirect until the action/loaders have settled\n pendingNavigationController = null;\n\n let redirectHistoryAction =\n replace === true || redirect.response.headers.has(\"X-Remix-Replace\")\n ? HistoryAction.Replace\n : HistoryAction.Push;\n\n // Use the incoming submission if provided, fallback on the active one in\n // state.navigation\n let { formMethod, formAction, formEncType } = state.navigation;\n if (\n !submission &&\n !fetcherSubmission &&\n formMethod &&\n formAction &&\n formEncType\n ) {\n submission = getSubmissionFromNavigation(state.navigation);\n }\n\n // If this was a 307/308 submission we want to preserve the HTTP method and\n // re-submit the GET/POST/PUT/PATCH/DELETE as a submission navigation to the\n // redirected location\n let activeSubmission = submission || fetcherSubmission;\n if (\n redirectPreserveMethodStatusCodes.has(redirect.response.status) &&\n activeSubmission &&\n isMutationMethod(activeSubmission.formMethod)\n ) {\n await startNavigation(redirectHistoryAction, redirectLocation, {\n submission: {\n ...activeSubmission,\n formAction: location,\n },\n // Preserve this flag across redirects\n preventScrollReset: pendingPreventScrollReset,\n });\n } else {\n // If we have a navigation submission, we will preserve it through the\n // redirect navigation\n let overrideNavigation = getLoadingNavigation(\n redirectLocation,\n submission\n );\n await startNavigation(redirectHistoryAction, redirectLocation, {\n overrideNavigation,\n // Send fetcher submissions through for shouldRevalidate\n fetcherSubmission,\n // Preserve this flag across redirects\n preventScrollReset: pendingPreventScrollReset,\n });\n }\n }\n\n // Utility wrapper for calling dataStrategy client-side without having to\n // pass around the manifest, mapRouteProperties, etc.\n async function callDataStrategy(\n type: \"loader\" | \"action\",\n request: Request,\n matchesToLoad: AgnosticDataRouteMatch[],\n matches: AgnosticDataRouteMatch[]\n ): Promise {\n try {\n let results = await callDataStrategyImpl(\n dataStrategyImpl,\n type,\n request,\n matchesToLoad,\n matches,\n manifest,\n mapRouteProperties\n );\n\n return await Promise.all(\n results.map((result, i) => {\n if (isRedirectHandlerResult(result)) {\n let response = result.result as Response;\n return {\n type: ResultType.redirect,\n response: normalizeRelativeRoutingRedirectResponse(\n response,\n request,\n matchesToLoad[i].route.id,\n matches,\n basename,\n future.v7_relativeSplatPath\n ),\n };\n }\n\n return convertHandlerResultToDataResult(result);\n })\n );\n } catch (e) {\n // If the outer dataStrategy method throws, just return the error for all\n // matches - and it'll naturally bubble to the root\n return matchesToLoad.map(() => ({\n type: ResultType.error,\n error: e,\n }));\n }\n }\n\n async function callLoadersAndMaybeResolveData(\n currentMatches: AgnosticDataRouteMatch[],\n matches: AgnosticDataRouteMatch[],\n matchesToLoad: AgnosticDataRouteMatch[],\n fetchersToLoad: RevalidatingFetcher[],\n request: Request\n ) {\n let [loaderResults, ...fetcherResults] = await Promise.all([\n matchesToLoad.length\n ? callDataStrategy(\"loader\", request, matchesToLoad, matches)\n : [],\n ...fetchersToLoad.map((f) => {\n if (f.matches && f.match && f.controller) {\n let fetcherRequest = createClientSideRequest(\n init.history,\n f.path,\n f.controller.signal\n );\n return callDataStrategy(\n \"loader\",\n fetcherRequest,\n [f.match],\n f.matches\n ).then((r) => r[0]);\n } else {\n return Promise.resolve({\n type: ResultType.error,\n error: getInternalRouterError(404, {\n pathname: f.path,\n }),\n });\n }\n }),\n ]);\n\n await Promise.all([\n resolveDeferredResults(\n currentMatches,\n matchesToLoad,\n loaderResults,\n loaderResults.map(() => request.signal),\n false,\n state.loaderData\n ),\n resolveDeferredResults(\n currentMatches,\n fetchersToLoad.map((f) => f.match),\n fetcherResults,\n fetchersToLoad.map((f) => (f.controller ? f.controller.signal : null)),\n true\n ),\n ]);\n\n return {\n loaderResults,\n fetcherResults,\n };\n }\n\n function interruptActiveLoads() {\n // Every interruption triggers a revalidation\n isRevalidationRequired = true;\n\n // Cancel pending route-level deferreds and mark cancelled routes for\n // revalidation\n cancelledDeferredRoutes.push(...cancelActiveDeferreds());\n\n // Abort in-flight fetcher loads\n fetchLoadMatches.forEach((_, key) => {\n if (fetchControllers.has(key)) {\n cancelledFetcherLoads.add(key);\n abortFetcher(key);\n }\n });\n }\n\n function updateFetcherState(\n key: string,\n fetcher: Fetcher,\n opts: { flushSync?: boolean } = {}\n ) {\n state.fetchers.set(key, fetcher);\n updateState(\n { fetchers: new Map(state.fetchers) },\n { flushSync: (opts && opts.flushSync) === true }\n );\n }\n\n function setFetcherError(\n key: string,\n routeId: string,\n error: any,\n opts: { flushSync?: boolean } = {}\n ) {\n let boundaryMatch = findNearestBoundary(state.matches, routeId);\n deleteFetcher(key);\n updateState(\n {\n errors: {\n [boundaryMatch.route.id]: error,\n },\n fetchers: new Map(state.fetchers),\n },\n { flushSync: (opts && opts.flushSync) === true }\n );\n }\n\n function getFetcher(key: string): Fetcher {\n if (future.v7_fetcherPersist) {\n activeFetchers.set(key, (activeFetchers.get(key) || 0) + 1);\n // If this fetcher was previously marked for deletion, unmark it since we\n // have a new instance\n if (deletedFetchers.has(key)) {\n deletedFetchers.delete(key);\n }\n }\n return state.fetchers.get(key) || IDLE_FETCHER;\n }\n\n function deleteFetcher(key: string): void {\n let fetcher = state.fetchers.get(key);\n // Don't abort the controller if this is a deletion of a fetcher.submit()\n // in it's loading phase since - we don't want to abort the corresponding\n // revalidation and want them to complete and land\n if (\n fetchControllers.has(key) &&\n !(fetcher && fetcher.state === \"loading\" && fetchReloadIds.has(key))\n ) {\n abortFetcher(key);\n }\n fetchLoadMatches.delete(key);\n fetchReloadIds.delete(key);\n fetchRedirectIds.delete(key);\n deletedFetchers.delete(key);\n cancelledFetcherLoads.delete(key);\n state.fetchers.delete(key);\n }\n\n function deleteFetcherAndUpdateState(key: string): void {\n if (future.v7_fetcherPersist) {\n let count = (activeFetchers.get(key) || 0) - 1;\n if (count <= 0) {\n activeFetchers.delete(key);\n deletedFetchers.add(key);\n } else {\n activeFetchers.set(key, count);\n }\n } else {\n deleteFetcher(key);\n }\n updateState({ fetchers: new Map(state.fetchers) });\n }\n\n function abortFetcher(key: string) {\n let controller = fetchControllers.get(key);\n invariant(controller, `Expected fetch controller: ${key}`);\n controller.abort();\n fetchControllers.delete(key);\n }\n\n function markFetchersDone(keys: string[]) {\n for (let key of keys) {\n let fetcher = getFetcher(key);\n let doneFetcher = getDoneFetcher(fetcher.data);\n state.fetchers.set(key, doneFetcher);\n }\n }\n\n function markFetchRedirectsDone(): boolean {\n let doneKeys = [];\n let updatedFetchers = false;\n for (let key of fetchRedirectIds) {\n let fetcher = state.fetchers.get(key);\n invariant(fetcher, `Expected fetcher: ${key}`);\n if (fetcher.state === \"loading\") {\n fetchRedirectIds.delete(key);\n doneKeys.push(key);\n updatedFetchers = true;\n }\n }\n markFetchersDone(doneKeys);\n return updatedFetchers;\n }\n\n function abortStaleFetchLoads(landedId: number): boolean {\n let yeetedKeys = [];\n for (let [key, id] of fetchReloadIds) {\n if (id < landedId) {\n let fetcher = state.fetchers.get(key);\n invariant(fetcher, `Expected fetcher: ${key}`);\n if (fetcher.state === \"loading\") {\n abortFetcher(key);\n fetchReloadIds.delete(key);\n yeetedKeys.push(key);\n }\n }\n }\n markFetchersDone(yeetedKeys);\n return yeetedKeys.length > 0;\n }\n\n function getBlocker(key: string, fn: BlockerFunction) {\n let blocker: Blocker = state.blockers.get(key) || IDLE_BLOCKER;\n\n if (blockerFunctions.get(key) !== fn) {\n blockerFunctions.set(key, fn);\n }\n\n return blocker;\n }\n\n function deleteBlocker(key: string) {\n state.blockers.delete(key);\n blockerFunctions.delete(key);\n }\n\n // Utility function to update blockers, ensuring valid state transitions\n function updateBlocker(key: string, newBlocker: Blocker) {\n let blocker = state.blockers.get(key) || IDLE_BLOCKER;\n\n // Poor mans state machine :)\n // https://mermaid.live/edit#pako:eNqVkc9OwzAMxl8l8nnjAYrEtDIOHEBIgwvKJTReGy3_lDpIqO27k6awMG0XcrLlnz87nwdonESogKXXBuE79rq75XZO3-yHds0RJVuv70YrPlUrCEe2HfrORS3rubqZfuhtpg5C9wk5tZ4VKcRUq88q9Z8RS0-48cE1iHJkL0ugbHuFLus9L6spZy8nX9MP2CNdomVaposqu3fGayT8T8-jJQwhepo_UtpgBQaDEUom04dZhAN1aJBDlUKJBxE1ceB2Smj0Mln-IBW5AFU2dwUiktt_2Qaq2dBfaKdEup85UV7Yd-dKjlnkabl2Pvr0DTkTreM\n invariant(\n (blocker.state === \"unblocked\" && newBlocker.state === \"blocked\") ||\n (blocker.state === \"blocked\" && newBlocker.state === \"blocked\") ||\n (blocker.state === \"blocked\" && newBlocker.state === \"proceeding\") ||\n (blocker.state === \"blocked\" && newBlocker.state === \"unblocked\") ||\n (blocker.state === \"proceeding\" && newBlocker.state === \"unblocked\"),\n `Invalid blocker state transition: ${blocker.state} -> ${newBlocker.state}`\n );\n\n let blockers = new Map(state.blockers);\n blockers.set(key, newBlocker);\n updateState({ blockers });\n }\n\n function shouldBlockNavigation({\n currentLocation,\n nextLocation,\n historyAction,\n }: {\n currentLocation: Location;\n nextLocation: Location;\n historyAction: HistoryAction;\n }): string | undefined {\n if (blockerFunctions.size === 0) {\n return;\n }\n\n // We ony support a single active blocker at the moment since we don't have\n // any compelling use cases for multi-blocker yet\n if (blockerFunctions.size > 1) {\n warning(false, \"A router only supports one blocker at a time\");\n }\n\n let entries = Array.from(blockerFunctions.entries());\n let [blockerKey, blockerFunction] = entries[entries.length - 1];\n let blocker = state.blockers.get(blockerKey);\n\n if (blocker && blocker.state === \"proceeding\") {\n // If the blocker is currently proceeding, we don't need to re-check\n // it and can let this navigation continue\n return;\n }\n\n // At this point, we know we're unblocked/blocked so we need to check the\n // user-provided blocker function\n if (blockerFunction({ currentLocation, nextLocation, historyAction })) {\n return blockerKey;\n }\n }\n\n function handleNavigational404(pathname: string) {\n let error = getInternalRouterError(404, { pathname });\n let routesToUse = inFlightDataRoutes || dataRoutes;\n let { matches, route } = getShortCircuitMatches(routesToUse);\n\n // Cancel all pending deferred on 404s since we don't keep any routes\n cancelActiveDeferreds();\n\n return { notFoundMatches: matches, route, error };\n }\n\n function handleDiscoverRouteError(\n pathname: string,\n discoverResult: DiscoverRoutesErrorResult\n ) {\n return {\n boundaryId: findNearestBoundary(discoverResult.partialMatches).route.id,\n error: getInternalRouterError(400, {\n type: \"route-discovery\",\n pathname,\n message:\n discoverResult.error != null && \"message\" in discoverResult.error\n ? discoverResult.error\n : String(discoverResult.error),\n }),\n };\n }\n\n function cancelActiveDeferreds(\n predicate?: (routeId: string) => boolean\n ): string[] {\n let cancelledRouteIds: string[] = [];\n activeDeferreds.forEach((dfd, routeId) => {\n if (!predicate || predicate(routeId)) {\n // Cancel the deferred - but do not remove from activeDeferreds here -\n // we rely on the subscribers to do that so our tests can assert proper\n // cleanup via _internalActiveDeferreds\n dfd.cancel();\n cancelledRouteIds.push(routeId);\n activeDeferreds.delete(routeId);\n }\n });\n return cancelledRouteIds;\n }\n\n // Opt in to capturing and reporting scroll positions during navigations,\n // used by the component\n function enableScrollRestoration(\n positions: Record,\n getPosition: GetScrollPositionFunction,\n getKey?: GetScrollRestorationKeyFunction\n ) {\n savedScrollPositions = positions;\n getScrollPosition = getPosition;\n getScrollRestorationKey = getKey || null;\n\n // Perform initial hydration scroll restoration, since we miss the boat on\n // the initial updateState() because we've not yet rendered \n // and therefore have no savedScrollPositions available\n if (!initialScrollRestored && state.navigation === IDLE_NAVIGATION) {\n initialScrollRestored = true;\n let y = getSavedScrollPosition(state.location, state.matches);\n if (y != null) {\n updateState({ restoreScrollPosition: y });\n }\n }\n\n return () => {\n savedScrollPositions = null;\n getScrollPosition = null;\n getScrollRestorationKey = null;\n };\n }\n\n function getScrollKey(location: Location, matches: AgnosticDataRouteMatch[]) {\n if (getScrollRestorationKey) {\n let key = getScrollRestorationKey(\n location,\n matches.map((m) => convertRouteMatchToUiMatch(m, state.loaderData))\n );\n return key || location.key;\n }\n return location.key;\n }\n\n function saveScrollPosition(\n location: Location,\n matches: AgnosticDataRouteMatch[]\n ): void {\n if (savedScrollPositions && getScrollPosition) {\n let key = getScrollKey(location, matches);\n savedScrollPositions[key] = getScrollPosition();\n }\n }\n\n function getSavedScrollPosition(\n location: Location,\n matches: AgnosticDataRouteMatch[]\n ): number | null {\n if (savedScrollPositions) {\n let key = getScrollKey(location, matches);\n let y = savedScrollPositions[key];\n if (typeof y === \"number\") {\n return y;\n }\n }\n return null;\n }\n\n function checkFogOfWar(\n matches: AgnosticDataRouteMatch[] | null,\n routesToUse: AgnosticDataRouteObject[],\n pathname: string\n ): { active: boolean; matches: AgnosticDataRouteMatch[] | null } {\n if (patchRoutesOnNavigationImpl) {\n // Don't bother re-calling patchRouteOnMiss for a path we've already\n // processed. the last execution would have patched the route tree\n // accordingly so `matches` here are already accurate.\n if (discoveredRoutes.has(pathname)) {\n return { active: false, matches };\n }\n\n if (!matches) {\n let fogMatches = matchRoutesImpl(\n routesToUse,\n pathname,\n basename,\n true\n );\n\n return { active: true, matches: fogMatches || [] };\n } else {\n if (Object.keys(matches[0].params).length > 0) {\n // If we matched a dynamic param or a splat, it might only be because\n // we haven't yet discovered other routes that would match with a\n // higher score. Call patchRoutesOnNavigation just to be sure\n let partialMatches = matchRoutesImpl(\n routesToUse,\n pathname,\n basename,\n true\n );\n return { active: true, matches: partialMatches };\n }\n }\n }\n\n return { active: false, matches: null };\n }\n\n type DiscoverRoutesSuccessResult = {\n type: \"success\";\n matches: AgnosticDataRouteMatch[] | null;\n };\n type DiscoverRoutesErrorResult = {\n type: \"error\";\n error: any;\n partialMatches: AgnosticDataRouteMatch[];\n };\n type DiscoverRoutesAbortedResult = { type: \"aborted\" };\n type DiscoverRoutesResult =\n | DiscoverRoutesSuccessResult\n | DiscoverRoutesErrorResult\n | DiscoverRoutesAbortedResult;\n\n async function discoverRoutes(\n matches: AgnosticDataRouteMatch[],\n pathname: string,\n signal: AbortSignal\n ): Promise {\n let partialMatches: AgnosticDataRouteMatch[] | null = matches;\n while (true) {\n let isNonHMR = inFlightDataRoutes == null;\n let routesToUse = inFlightDataRoutes || dataRoutes;\n try {\n await loadLazyRouteChildren(\n patchRoutesOnNavigationImpl!,\n pathname,\n partialMatches,\n routesToUse,\n manifest,\n mapRouteProperties,\n pendingPatchRoutes,\n signal\n );\n } catch (e) {\n return { type: \"error\", error: e, partialMatches };\n } finally {\n // If we are not in the middle of an HMR revalidation and we changed the\n // routes, provide a new identity so when we `updateState` at the end of\n // this navigation/fetch `router.routes` will be a new identity and\n // trigger a re-run of memoized `router.routes` dependencies.\n // HMR will already update the identity and reflow when it lands\n // `inFlightDataRoutes` in `completeNavigation`\n if (isNonHMR) {\n dataRoutes = [...dataRoutes];\n }\n }\n\n if (signal.aborted) {\n return { type: \"aborted\" };\n }\n\n let newMatches = matchRoutes(routesToUse, pathname, basename);\n if (newMatches) {\n addToFifoQueue(pathname, discoveredRoutes);\n return { type: \"success\", matches: newMatches };\n }\n\n let newPartialMatches = matchRoutesImpl(\n routesToUse,\n pathname,\n basename,\n true\n );\n\n // Avoid loops if the second pass results in the same partial matches\n if (\n !newPartialMatches ||\n (partialMatches.length === newPartialMatches.length &&\n partialMatches.every(\n (m, i) => m.route.id === newPartialMatches![i].route.id\n ))\n ) {\n addToFifoQueue(pathname, discoveredRoutes);\n return { type: \"success\", matches: null };\n }\n\n partialMatches = newPartialMatches;\n }\n }\n\n function addToFifoQueue(path: string, queue: Set) {\n if (queue.size >= discoveredRoutesMaxSize) {\n let first = queue.values().next().value;\n queue.delete(first);\n }\n queue.add(path);\n }\n\n function _internalSetRoutes(newRoutes: AgnosticDataRouteObject[]) {\n manifest = {};\n inFlightDataRoutes = convertRoutesToDataRoutes(\n newRoutes,\n mapRouteProperties,\n undefined,\n manifest\n );\n }\n\n function patchRoutes(\n routeId: string | null,\n children: AgnosticRouteObject[]\n ): void {\n let isNonHMR = inFlightDataRoutes == null;\n let routesToUse = inFlightDataRoutes || dataRoutes;\n patchRoutesImpl(\n routeId,\n children,\n routesToUse,\n manifest,\n mapRouteProperties\n );\n\n // If we are not in the middle of an HMR revalidation and we changed the\n // routes, provide a new identity and trigger a reflow via `updateState`\n // to re-run memoized `router.routes` dependencies.\n // HMR will already update the identity and reflow when it lands\n // `inFlightDataRoutes` in `completeNavigation`\n if (isNonHMR) {\n dataRoutes = [...dataRoutes];\n updateState({});\n }\n }\n\n router = {\n get basename() {\n return basename;\n },\n get future() {\n return future;\n },\n get state() {\n return state;\n },\n get routes() {\n return dataRoutes;\n },\n get window() {\n return routerWindow;\n },\n initialize,\n subscribe,\n enableScrollRestoration,\n navigate,\n fetch,\n revalidate,\n // Passthrough to history-aware createHref used by useHref so we get proper\n // hash-aware URLs in DOM paths\n createHref: (to: To) => init.history.createHref(to),\n encodeLocation: (to: To) => init.history.encodeLocation(to),\n getFetcher,\n deleteFetcher: deleteFetcherAndUpdateState,\n dispose,\n getBlocker,\n deleteBlocker,\n patchRoutes,\n _internalFetchControllers: fetchControllers,\n _internalActiveDeferreds: activeDeferreds,\n // TODO: Remove setRoutes, it's temporary to avoid dealing with\n // updating the tree while validating the update algorithm.\n _internalSetRoutes,\n };\n\n return router;\n}\n//#endregion\n\n////////////////////////////////////////////////////////////////////////////////\n//#region createStaticHandler\n////////////////////////////////////////////////////////////////////////////////\n\nexport const UNSAFE_DEFERRED_SYMBOL = Symbol(\"deferred\");\n\n/**\n * Future flags to toggle new feature behavior\n */\nexport interface StaticHandlerFutureConfig {\n v7_relativeSplatPath: boolean;\n v7_throwAbortReason: boolean;\n}\n\nexport interface CreateStaticHandlerOptions {\n basename?: string;\n /**\n * @deprecated Use `mapRouteProperties` instead\n */\n detectErrorBoundary?: DetectErrorBoundaryFunction;\n mapRouteProperties?: MapRoutePropertiesFunction;\n future?: Partial;\n}\n\nexport function createStaticHandler(\n routes: AgnosticRouteObject[],\n opts?: CreateStaticHandlerOptions\n): StaticHandler {\n invariant(\n routes.length > 0,\n \"You must provide a non-empty routes array to createStaticHandler\"\n );\n\n let manifest: RouteManifest = {};\n let basename = (opts ? opts.basename : null) || \"/\";\n let mapRouteProperties: MapRoutePropertiesFunction;\n if (opts?.mapRouteProperties) {\n mapRouteProperties = opts.mapRouteProperties;\n } else if (opts?.detectErrorBoundary) {\n // If they are still using the deprecated version, wrap it with the new API\n let detectErrorBoundary = opts.detectErrorBoundary;\n mapRouteProperties = (route) => ({\n hasErrorBoundary: detectErrorBoundary(route),\n });\n } else {\n mapRouteProperties = defaultMapRouteProperties;\n }\n // Config driven behavior flags\n let future: StaticHandlerFutureConfig = {\n v7_relativeSplatPath: false,\n v7_throwAbortReason: false,\n ...(opts ? opts.future : null),\n };\n\n let dataRoutes = convertRoutesToDataRoutes(\n routes,\n mapRouteProperties,\n undefined,\n manifest\n );\n\n /**\n * The query() method is intended for document requests, in which we want to\n * call an optional action and potentially multiple loaders for all nested\n * routes. It returns a StaticHandlerContext object, which is very similar\n * to the router state (location, loaderData, actionData, errors, etc.) and\n * also adds SSR-specific information such as the statusCode and headers\n * from action/loaders Responses.\n *\n * It _should_ never throw and should report all errors through the\n * returned context.errors object, properly associating errors to their error\n * boundary. Additionally, it tracks _deepestRenderedBoundaryId which can be\n * used to emulate React error boundaries during SSr by performing a second\n * pass only down to the boundaryId.\n *\n * The one exception where we do not return a StaticHandlerContext is when a\n * redirect response is returned or thrown from any action/loader. We\n * propagate that out and return the raw Response so the HTTP server can\n * return it directly.\n *\n * - `opts.requestContext` is an optional server context that will be passed\n * to actions/loaders in the `context` parameter\n * - `opts.skipLoaderErrorBubbling` is an optional parameter that will prevent\n * the bubbling of errors which allows single-fetch-type implementations\n * where the client will handle the bubbling and we may need to return data\n * for the handling route\n */\n async function query(\n request: Request,\n {\n requestContext,\n skipLoaderErrorBubbling,\n unstable_dataStrategy,\n }: {\n requestContext?: unknown;\n skipLoaderErrorBubbling?: boolean;\n unstable_dataStrategy?: DataStrategyFunction;\n } = {}\n ): Promise {\n let url = new URL(request.url);\n let method = request.method;\n let location = createLocation(\"\", createPath(url), null, \"default\");\n let matches = matchRoutes(dataRoutes, location, basename);\n\n // SSR supports HEAD requests while SPA doesn't\n if (!isValidMethod(method) && method !== \"HEAD\") {\n let error = getInternalRouterError(405, { method });\n let { matches: methodNotAllowedMatches, route } =\n getShortCircuitMatches(dataRoutes);\n return {\n basename,\n location,\n matches: methodNotAllowedMatches,\n loaderData: {},\n actionData: null,\n errors: {\n [route.id]: error,\n },\n statusCode: error.status,\n loaderHeaders: {},\n actionHeaders: {},\n activeDeferreds: null,\n };\n } else if (!matches) {\n let error = getInternalRouterError(404, { pathname: location.pathname });\n let { matches: notFoundMatches, route } =\n getShortCircuitMatches(dataRoutes);\n return {\n basename,\n location,\n matches: notFoundMatches,\n loaderData: {},\n actionData: null,\n errors: {\n [route.id]: error,\n },\n statusCode: error.status,\n loaderHeaders: {},\n actionHeaders: {},\n activeDeferreds: null,\n };\n }\n\n let result = await queryImpl(\n request,\n location,\n matches,\n requestContext,\n unstable_dataStrategy || null,\n skipLoaderErrorBubbling === true,\n null\n );\n if (isResponse(result)) {\n return result;\n }\n\n // When returning StaticHandlerContext, we patch back in the location here\n // since we need it for React Context. But this helps keep our submit and\n // loadRouteData operating on a Request instead of a Location\n return { location, basename, ...result };\n }\n\n /**\n * The queryRoute() method is intended for targeted route requests, either\n * for fetch ?_data requests or resource route requests. In this case, we\n * are only ever calling a single action or loader, and we are returning the\n * returned value directly. In most cases, this will be a Response returned\n * from the action/loader, but it may be a primitive or other value as well -\n * and in such cases the calling context should handle that accordingly.\n *\n * We do respect the throw/return differentiation, so if an action/loader\n * throws, then this method will throw the value. This is important so we\n * can do proper boundary identification in Remix where a thrown Response\n * must go to the Catch Boundary but a returned Response is happy-path.\n *\n * One thing to note is that any Router-initiated Errors that make sense\n * to associate with a status code will be thrown as an ErrorResponse\n * instance which include the raw Error, such that the calling context can\n * serialize the error as they see fit while including the proper response\n * code. Examples here are 404 and 405 errors that occur prior to reaching\n * any user-defined loaders.\n *\n * - `opts.routeId` allows you to specify the specific route handler to call.\n * If not provided the handler will determine the proper route by matching\n * against `request.url`\n * - `opts.requestContext` is an optional server context that will be passed\n * to actions/loaders in the `context` parameter\n */\n async function queryRoute(\n request: Request,\n {\n routeId,\n requestContext,\n unstable_dataStrategy,\n }: {\n requestContext?: unknown;\n routeId?: string;\n unstable_dataStrategy?: DataStrategyFunction;\n } = {}\n ): Promise {\n let url = new URL(request.url);\n let method = request.method;\n let location = createLocation(\"\", createPath(url), null, \"default\");\n let matches = matchRoutes(dataRoutes, location, basename);\n\n // SSR supports HEAD requests while SPA doesn't\n if (!isValidMethod(method) && method !== \"HEAD\" && method !== \"OPTIONS\") {\n throw getInternalRouterError(405, { method });\n } else if (!matches) {\n throw getInternalRouterError(404, { pathname: location.pathname });\n }\n\n let match = routeId\n ? matches.find((m) => m.route.id === routeId)\n : getTargetMatch(matches, location);\n\n if (routeId && !match) {\n throw getInternalRouterError(403, {\n pathname: location.pathname,\n routeId,\n });\n } else if (!match) {\n // This should never hit I don't think?\n throw getInternalRouterError(404, { pathname: location.pathname });\n }\n\n let result = await queryImpl(\n request,\n location,\n matches,\n requestContext,\n unstable_dataStrategy || null,\n false,\n match\n );\n\n if (isResponse(result)) {\n return result;\n }\n\n let error = result.errors ? Object.values(result.errors)[0] : undefined;\n if (error !== undefined) {\n // If we got back result.errors, that means the loader/action threw\n // _something_ that wasn't a Response, but it's not guaranteed/required\n // to be an `instanceof Error` either, so we have to use throw here to\n // preserve the \"error\" state outside of queryImpl.\n throw error;\n }\n\n // Pick off the right state value to return\n if (result.actionData) {\n return Object.values(result.actionData)[0];\n }\n\n if (result.loaderData) {\n let data = Object.values(result.loaderData)[0];\n if (result.activeDeferreds?.[match.route.id]) {\n data[UNSAFE_DEFERRED_SYMBOL] = result.activeDeferreds[match.route.id];\n }\n return data;\n }\n\n return undefined;\n }\n\n async function queryImpl(\n request: Request,\n location: Location,\n matches: AgnosticDataRouteMatch[],\n requestContext: unknown,\n unstable_dataStrategy: DataStrategyFunction | null,\n skipLoaderErrorBubbling: boolean,\n routeMatch: AgnosticDataRouteMatch | null\n ): Promise | Response> {\n invariant(\n request.signal,\n \"query()/queryRoute() requests must contain an AbortController signal\"\n );\n\n try {\n if (isMutationMethod(request.method.toLowerCase())) {\n let result = await submit(\n request,\n matches,\n routeMatch || getTargetMatch(matches, location),\n requestContext,\n unstable_dataStrategy,\n skipLoaderErrorBubbling,\n routeMatch != null\n );\n return result;\n }\n\n let result = await loadRouteData(\n request,\n matches,\n requestContext,\n unstable_dataStrategy,\n skipLoaderErrorBubbling,\n routeMatch\n );\n return isResponse(result)\n ? result\n : {\n ...result,\n actionData: null,\n actionHeaders: {},\n };\n } catch (e) {\n // If the user threw/returned a Response in callLoaderOrAction for a\n // `queryRoute` call, we throw the `HandlerResult` to bail out early\n // and then return or throw the raw Response here accordingly\n if (isHandlerResult(e) && isResponse(e.result)) {\n if (e.type === ResultType.error) {\n throw e.result;\n }\n return e.result;\n }\n // Redirects are always returned since they don't propagate to catch\n // boundaries\n if (isRedirectResponse(e)) {\n return e;\n }\n throw e;\n }\n }\n\n async function submit(\n request: Request,\n matches: AgnosticDataRouteMatch[],\n actionMatch: AgnosticDataRouteMatch,\n requestContext: unknown,\n unstable_dataStrategy: DataStrategyFunction | null,\n skipLoaderErrorBubbling: boolean,\n isRouteRequest: boolean\n ): Promise | Response> {\n let result: DataResult;\n\n if (!actionMatch.route.action && !actionMatch.route.lazy) {\n let error = getInternalRouterError(405, {\n method: request.method,\n pathname: new URL(request.url).pathname,\n routeId: actionMatch.route.id,\n });\n if (isRouteRequest) {\n throw error;\n }\n result = {\n type: ResultType.error,\n error,\n };\n } else {\n let results = await callDataStrategy(\n \"action\",\n request,\n [actionMatch],\n matches,\n isRouteRequest,\n requestContext,\n unstable_dataStrategy\n );\n result = results[0];\n\n if (request.signal.aborted) {\n throwStaticHandlerAbortedError(request, isRouteRequest, future);\n }\n }\n\n if (isRedirectResult(result)) {\n // Uhhhh - this should never happen, we should always throw these from\n // callLoaderOrAction, but the type narrowing here keeps TS happy and we\n // can get back on the \"throw all redirect responses\" train here should\n // this ever happen :/\n throw new Response(null, {\n status: result.response.status,\n headers: {\n Location: result.response.headers.get(\"Location\")!,\n },\n });\n }\n\n if (isDeferredResult(result)) {\n let error = getInternalRouterError(400, { type: \"defer-action\" });\n if (isRouteRequest) {\n throw error;\n }\n result = {\n type: ResultType.error,\n error,\n };\n }\n\n if (isRouteRequest) {\n // Note: This should only be non-Response values if we get here, since\n // isRouteRequest should throw any Response received in callLoaderOrAction\n if (isErrorResult(result)) {\n throw result.error;\n }\n\n return {\n matches: [actionMatch],\n loaderData: {},\n actionData: { [actionMatch.route.id]: result.data },\n errors: null,\n // Note: statusCode + headers are unused here since queryRoute will\n // return the raw Response or value\n statusCode: 200,\n loaderHeaders: {},\n actionHeaders: {},\n activeDeferreds: null,\n };\n }\n\n // Create a GET request for the loaders\n let loaderRequest = new Request(request.url, {\n headers: request.headers,\n redirect: request.redirect,\n signal: request.signal,\n });\n\n if (isErrorResult(result)) {\n // Store off the pending error - we use it to determine which loaders\n // to call and will commit it when we complete the navigation\n let boundaryMatch = skipLoaderErrorBubbling\n ? actionMatch\n : findNearestBoundary(matches, actionMatch.route.id);\n\n let context = await loadRouteData(\n loaderRequest,\n matches,\n requestContext,\n unstable_dataStrategy,\n skipLoaderErrorBubbling,\n null,\n [boundaryMatch.route.id, result]\n );\n\n // action status codes take precedence over loader status codes\n return {\n ...context,\n statusCode: isRouteErrorResponse(result.error)\n ? result.error.status\n : result.statusCode != null\n ? result.statusCode\n : 500,\n actionData: null,\n actionHeaders: {\n ...(result.headers ? { [actionMatch.route.id]: result.headers } : {}),\n },\n };\n }\n\n let context = await loadRouteData(\n loaderRequest,\n matches,\n requestContext,\n unstable_dataStrategy,\n skipLoaderErrorBubbling,\n null\n );\n\n return {\n ...context,\n actionData: {\n [actionMatch.route.id]: result.data,\n },\n // action status codes take precedence over loader status codes\n ...(result.statusCode ? { statusCode: result.statusCode } : {}),\n actionHeaders: result.headers\n ? { [actionMatch.route.id]: result.headers }\n : {},\n };\n }\n\n async function loadRouteData(\n request: Request,\n matches: AgnosticDataRouteMatch[],\n requestContext: unknown,\n unstable_dataStrategy: DataStrategyFunction | null,\n skipLoaderErrorBubbling: boolean,\n routeMatch: AgnosticDataRouteMatch | null,\n pendingActionResult?: PendingActionResult\n ): Promise<\n | Omit<\n StaticHandlerContext,\n \"location\" | \"basename\" | \"actionData\" | \"actionHeaders\"\n >\n | Response\n > {\n let isRouteRequest = routeMatch != null;\n\n // Short circuit if we have no loaders to run (queryRoute())\n if (\n isRouteRequest &&\n !routeMatch?.route.loader &&\n !routeMatch?.route.lazy\n ) {\n throw getInternalRouterError(400, {\n method: request.method,\n pathname: new URL(request.url).pathname,\n routeId: routeMatch?.route.id,\n });\n }\n\n let requestMatches = routeMatch\n ? [routeMatch]\n : pendingActionResult && isErrorResult(pendingActionResult[1])\n ? getLoaderMatchesUntilBoundary(matches, pendingActionResult[0])\n : matches;\n let matchesToLoad = requestMatches.filter(\n (m) => m.route.loader || m.route.lazy\n );\n\n // Short circuit if we have no loaders to run (query())\n if (matchesToLoad.length === 0) {\n return {\n matches,\n // Add a null for all matched routes for proper revalidation on the client\n loaderData: matches.reduce(\n (acc, m) => Object.assign(acc, { [m.route.id]: null }),\n {}\n ),\n errors:\n pendingActionResult && isErrorResult(pendingActionResult[1])\n ? {\n [pendingActionResult[0]]: pendingActionResult[1].error,\n }\n : null,\n statusCode: 200,\n loaderHeaders: {},\n activeDeferreds: null,\n };\n }\n\n let results = await callDataStrategy(\n \"loader\",\n request,\n matchesToLoad,\n matches,\n isRouteRequest,\n requestContext,\n unstable_dataStrategy\n );\n\n if (request.signal.aborted) {\n throwStaticHandlerAbortedError(request, isRouteRequest, future);\n }\n\n // Process and commit output from loaders\n let activeDeferreds = new Map();\n let context = processRouteLoaderData(\n matches,\n matchesToLoad,\n results,\n pendingActionResult,\n activeDeferreds,\n skipLoaderErrorBubbling\n );\n\n // Add a null for any non-loader matches for proper revalidation on the client\n let executedLoaders = new Set(\n matchesToLoad.map((match) => match.route.id)\n );\n matches.forEach((match) => {\n if (!executedLoaders.has(match.route.id)) {\n context.loaderData[match.route.id] = null;\n }\n });\n\n return {\n ...context,\n matches,\n activeDeferreds:\n activeDeferreds.size > 0\n ? Object.fromEntries(activeDeferreds.entries())\n : null,\n };\n }\n\n // Utility wrapper for calling dataStrategy server-side without having to\n // pass around the manifest, mapRouteProperties, etc.\n async function callDataStrategy(\n type: \"loader\" | \"action\",\n request: Request,\n matchesToLoad: AgnosticDataRouteMatch[],\n matches: AgnosticDataRouteMatch[],\n isRouteRequest: boolean,\n requestContext: unknown,\n unstable_dataStrategy: DataStrategyFunction | null\n ): Promise {\n let results = await callDataStrategyImpl(\n unstable_dataStrategy || defaultDataStrategy,\n type,\n request,\n matchesToLoad,\n matches,\n manifest,\n mapRouteProperties,\n requestContext\n );\n\n return await Promise.all(\n results.map((result, i) => {\n if (isRedirectHandlerResult(result)) {\n let response = result.result as Response;\n // Throw redirects and let the server handle them with an HTTP redirect\n throw normalizeRelativeRoutingRedirectResponse(\n response,\n request,\n matchesToLoad[i].route.id,\n matches,\n basename,\n future.v7_relativeSplatPath\n );\n }\n if (isResponse(result.result) && isRouteRequest) {\n // For SSR single-route requests, we want to hand Responses back\n // directly without unwrapping\n throw result;\n }\n\n return convertHandlerResultToDataResult(result);\n })\n );\n }\n\n return {\n dataRoutes,\n query,\n queryRoute,\n };\n}\n\n//#endregion\n\n////////////////////////////////////////////////////////////////////////////////\n//#region Helpers\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * Given an existing StaticHandlerContext and an error thrown at render time,\n * provide an updated StaticHandlerContext suitable for a second SSR render\n */\nexport function getStaticContextFromError(\n routes: AgnosticDataRouteObject[],\n context: StaticHandlerContext,\n error: any\n) {\n let newContext: StaticHandlerContext = {\n ...context,\n statusCode: isRouteErrorResponse(error) ? error.status : 500,\n errors: {\n [context._deepestRenderedBoundaryId || routes[0].id]: error,\n },\n };\n return newContext;\n}\n\nfunction throwStaticHandlerAbortedError(\n request: Request,\n isRouteRequest: boolean,\n future: StaticHandlerFutureConfig\n) {\n if (future.v7_throwAbortReason && request.signal.reason !== undefined) {\n throw request.signal.reason;\n }\n\n let method = isRouteRequest ? \"queryRoute\" : \"query\";\n throw new Error(`${method}() call aborted: ${request.method} ${request.url}`);\n}\n\nfunction isSubmissionNavigation(\n opts: BaseNavigateOrFetchOptions\n): opts is SubmissionNavigateOptions {\n return (\n opts != null &&\n ((\"formData\" in opts && opts.formData != null) ||\n (\"body\" in opts && opts.body !== undefined))\n );\n}\n\nfunction normalizeTo(\n location: Path,\n matches: AgnosticDataRouteMatch[],\n basename: string,\n prependBasename: boolean,\n to: To | null,\n v7_relativeSplatPath: boolean,\n fromRouteId?: string,\n relative?: RelativeRoutingType\n) {\n let contextualMatches: AgnosticDataRouteMatch[];\n let activeRouteMatch: AgnosticDataRouteMatch | undefined;\n if (fromRouteId) {\n // Grab matches up to the calling route so our route-relative logic is\n // relative to the correct source route\n contextualMatches = [];\n for (let match of matches) {\n contextualMatches.push(match);\n if (match.route.id === fromRouteId) {\n activeRouteMatch = match;\n break;\n }\n }\n } else {\n contextualMatches = matches;\n activeRouteMatch = matches[matches.length - 1];\n }\n\n // Resolve the relative path\n let path = resolveTo(\n to ? to : \".\",\n getResolveToMatches(contextualMatches, v7_relativeSplatPath),\n stripBasename(location.pathname, basename) || location.pathname,\n relative === \"path\"\n );\n\n // When `to` is not specified we inherit search/hash from the current\n // location, unlike when to=\".\" and we just inherit the path.\n // See https://github.com/remix-run/remix/issues/927\n if (to == null) {\n path.search = location.search;\n path.hash = location.hash;\n }\n\n // Add an ?index param for matched index routes if we don't already have one\n if (\n (to == null || to === \"\" || to === \".\") &&\n activeRouteMatch &&\n activeRouteMatch.route.index &&\n !hasNakedIndexQuery(path.search)\n ) {\n path.search = path.search\n ? path.search.replace(/^\\?/, \"?index&\")\n : \"?index\";\n }\n\n // If we're operating within a basename, prepend it to the pathname. If\n // this is a root navigation, then just use the raw basename which allows\n // the basename to have full control over the presence of a trailing slash\n // on root actions\n if (prependBasename && basename !== \"/\") {\n path.pathname =\n path.pathname === \"/\" ? basename : joinPaths([basename, path.pathname]);\n }\n\n return createPath(path);\n}\n\n// Normalize navigation options by converting formMethod=GET formData objects to\n// URLSearchParams so they behave identically to links with query params\nfunction normalizeNavigateOptions(\n normalizeFormMethod: boolean,\n isFetcher: boolean,\n path: string,\n opts?: BaseNavigateOrFetchOptions\n): {\n path: string;\n submission?: Submission;\n error?: ErrorResponseImpl;\n} {\n // Return location verbatim on non-submission navigations\n if (!opts || !isSubmissionNavigation(opts)) {\n return { path };\n }\n\n if (opts.formMethod && !isValidMethod(opts.formMethod)) {\n return {\n path,\n error: getInternalRouterError(405, { method: opts.formMethod }),\n };\n }\n\n let getInvalidBodyError = () => ({\n path,\n error: getInternalRouterError(400, { type: \"invalid-body\" }),\n });\n\n // Create a Submission on non-GET navigations\n let rawFormMethod = opts.formMethod || \"get\";\n let formMethod = normalizeFormMethod\n ? (rawFormMethod.toUpperCase() as V7_FormMethod)\n : (rawFormMethod.toLowerCase() as FormMethod);\n let formAction = stripHashFromPath(path);\n\n if (opts.body !== undefined) {\n if (opts.formEncType === \"text/plain\") {\n // text only support POST/PUT/PATCH/DELETE submissions\n if (!isMutationMethod(formMethod)) {\n return getInvalidBodyError();\n }\n\n let text =\n typeof opts.body === \"string\"\n ? opts.body\n : opts.body instanceof FormData ||\n opts.body instanceof URLSearchParams\n ? // https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#plain-text-form-data\n Array.from(opts.body.entries()).reduce(\n (acc, [name, value]) => `${acc}${name}=${value}\\n`,\n \"\"\n )\n : String(opts.body);\n\n return {\n path,\n submission: {\n formMethod,\n formAction,\n formEncType: opts.formEncType,\n formData: undefined,\n json: undefined,\n text,\n },\n };\n } else if (opts.formEncType === \"application/json\") {\n // json only supports POST/PUT/PATCH/DELETE submissions\n if (!isMutationMethod(formMethod)) {\n return getInvalidBodyError();\n }\n\n try {\n let json =\n typeof opts.body === \"string\" ? JSON.parse(opts.body) : opts.body;\n\n return {\n path,\n submission: {\n formMethod,\n formAction,\n formEncType: opts.formEncType,\n formData: undefined,\n json,\n text: undefined,\n },\n };\n } catch (e) {\n return getInvalidBodyError();\n }\n }\n }\n\n invariant(\n typeof FormData === \"function\",\n \"FormData is not available in this environment\"\n );\n\n let searchParams: URLSearchParams;\n let formData: FormData;\n\n if (opts.formData) {\n searchParams = convertFormDataToSearchParams(opts.formData);\n formData = opts.formData;\n } else if (opts.body instanceof FormData) {\n searchParams = convertFormDataToSearchParams(opts.body);\n formData = opts.body;\n } else if (opts.body instanceof URLSearchParams) {\n searchParams = opts.body;\n formData = convertSearchParamsToFormData(searchParams);\n } else if (opts.body == null) {\n searchParams = new URLSearchParams();\n formData = new FormData();\n } else {\n try {\n searchParams = new URLSearchParams(opts.body);\n formData = convertSearchParamsToFormData(searchParams);\n } catch (e) {\n return getInvalidBodyError();\n }\n }\n\n let submission: Submission = {\n formMethod,\n formAction,\n formEncType:\n (opts && opts.formEncType) || \"application/x-www-form-urlencoded\",\n formData,\n json: undefined,\n text: undefined,\n };\n\n if (isMutationMethod(submission.formMethod)) {\n return { path, submission };\n }\n\n // Flatten submission onto URLSearchParams for GET submissions\n let parsedPath = parsePath(path);\n // On GET navigation submissions we can drop the ?index param from the\n // resulting location since all loaders will run. But fetcher GET submissions\n // only run a single loader so we need to preserve any incoming ?index params\n if (isFetcher && parsedPath.search && hasNakedIndexQuery(parsedPath.search)) {\n searchParams.append(\"index\", \"\");\n }\n parsedPath.search = `?${searchParams}`;\n\n return { path: createPath(parsedPath), submission };\n}\n\n// Filter out all routes below any caught error as they aren't going to\n// render so we don't need to load them\nfunction getLoaderMatchesUntilBoundary(\n matches: AgnosticDataRouteMatch[],\n boundaryId: string\n) {\n let boundaryMatches = matches;\n if (boundaryId) {\n let index = matches.findIndex((m) => m.route.id === boundaryId);\n if (index >= 0) {\n boundaryMatches = matches.slice(0, index);\n }\n }\n return boundaryMatches;\n}\n\nfunction getMatchesToLoad(\n history: History,\n state: RouterState,\n matches: AgnosticDataRouteMatch[],\n submission: Submission | undefined,\n location: Location,\n isInitialLoad: boolean,\n skipActionErrorRevalidation: boolean,\n isRevalidationRequired: boolean,\n cancelledDeferredRoutes: string[],\n cancelledFetcherLoads: Set,\n deletedFetchers: Set,\n fetchLoadMatches: Map,\n fetchRedirectIds: Set,\n routesToUse: AgnosticDataRouteObject[],\n basename: string | undefined,\n pendingActionResult?: PendingActionResult\n): [AgnosticDataRouteMatch[], RevalidatingFetcher[]] {\n let actionResult = pendingActionResult\n ? isErrorResult(pendingActionResult[1])\n ? pendingActionResult[1].error\n : pendingActionResult[1].data\n : undefined;\n let currentUrl = history.createURL(state.location);\n let nextUrl = history.createURL(location);\n\n // Pick navigation matches that are net-new or qualify for revalidation\n let boundaryId =\n pendingActionResult && isErrorResult(pendingActionResult[1])\n ? pendingActionResult[0]\n : undefined;\n let boundaryMatches = boundaryId\n ? getLoaderMatchesUntilBoundary(matches, boundaryId)\n : matches;\n\n // Don't revalidate loaders by default after action 4xx/5xx responses\n // when the flag is enabled. They can still opt-into revalidation via\n // `shouldRevalidate` via `actionResult`\n let actionStatus = pendingActionResult\n ? pendingActionResult[1].statusCode\n : undefined;\n let shouldSkipRevalidation =\n skipActionErrorRevalidation && actionStatus && actionStatus >= 400;\n\n let navigationMatches = boundaryMatches.filter((match, index) => {\n let { route } = match;\n if (route.lazy) {\n // We haven't loaded this route yet so we don't know if it's got a loader!\n return true;\n }\n\n if (route.loader == null) {\n return false;\n }\n\n if (isInitialLoad) {\n if (typeof route.loader !== \"function\" || route.loader.hydrate) {\n return true;\n }\n return (\n state.loaderData[route.id] === undefined &&\n // Don't re-run if the loader ran and threw an error\n (!state.errors || state.errors[route.id] === undefined)\n );\n }\n\n // Always call the loader on new route instances and pending defer cancellations\n if (\n isNewLoader(state.loaderData, state.matches[index], match) ||\n cancelledDeferredRoutes.some((id) => id === match.route.id)\n ) {\n return true;\n }\n\n // This is the default implementation for when we revalidate. If the route\n // provides it's own implementation, then we give them full control but\n // provide this value so they can leverage it if needed after they check\n // their own specific use cases\n let currentRouteMatch = state.matches[index];\n let nextRouteMatch = match;\n\n return shouldRevalidateLoader(match, {\n currentUrl,\n currentParams: currentRouteMatch.params,\n nextUrl,\n nextParams: nextRouteMatch.params,\n ...submission,\n actionResult,\n actionStatus,\n defaultShouldRevalidate: shouldSkipRevalidation\n ? false\n : // Forced revalidation due to submission, useRevalidator, or X-Remix-Revalidate\n isRevalidationRequired ||\n currentUrl.pathname + currentUrl.search ===\n nextUrl.pathname + nextUrl.search ||\n // Search params affect all loaders\n currentUrl.search !== nextUrl.search ||\n isNewRouteInstance(currentRouteMatch, nextRouteMatch),\n });\n });\n\n // Pick fetcher.loads that need to be revalidated\n let revalidatingFetchers: RevalidatingFetcher[] = [];\n fetchLoadMatches.forEach((f, key) => {\n // Don't revalidate:\n // - on initial load (shouldn't be any fetchers then anyway)\n // - if fetcher won't be present in the subsequent render\n // - no longer matches the URL (v7_fetcherPersist=false)\n // - was unmounted but persisted due to v7_fetcherPersist=true\n if (\n isInitialLoad ||\n !matches.some((m) => m.route.id === f.routeId) ||\n deletedFetchers.has(key)\n ) {\n return;\n }\n\n let fetcherMatches = matchRoutes(routesToUse, f.path, basename);\n\n // If the fetcher path no longer matches, push it in with null matches so\n // we can trigger a 404 in callLoadersAndMaybeResolveData. Note this is\n // currently only a use-case for Remix HMR where the route tree can change\n // at runtime and remove a route previously loaded via a fetcher\n if (!fetcherMatches) {\n revalidatingFetchers.push({\n key,\n routeId: f.routeId,\n path: f.path,\n matches: null,\n match: null,\n controller: null,\n });\n return;\n }\n\n // Revalidating fetchers are decoupled from the route matches since they\n // load from a static href. They revalidate based on explicit revalidation\n // (submission, useRevalidator, or X-Remix-Revalidate)\n let fetcher = state.fetchers.get(key);\n let fetcherMatch = getTargetMatch(fetcherMatches, f.path);\n\n let shouldRevalidate = false;\n if (fetchRedirectIds.has(key)) {\n // Never trigger a revalidation of an actively redirecting fetcher\n shouldRevalidate = false;\n } else if (cancelledFetcherLoads.has(key)) {\n // Always mark for revalidation if the fetcher was cancelled\n cancelledFetcherLoads.delete(key);\n shouldRevalidate = true;\n } else if (\n fetcher &&\n fetcher.state !== \"idle\" &&\n fetcher.data === undefined\n ) {\n // If the fetcher hasn't ever completed loading yet, then this isn't a\n // revalidation, it would just be a brand new load if an explicit\n // revalidation is required\n shouldRevalidate = isRevalidationRequired;\n } else {\n // Otherwise fall back on any user-defined shouldRevalidate, defaulting\n // to explicit revalidations only\n shouldRevalidate = shouldRevalidateLoader(fetcherMatch, {\n currentUrl,\n currentParams: state.matches[state.matches.length - 1].params,\n nextUrl,\n nextParams: matches[matches.length - 1].params,\n ...submission,\n actionResult,\n actionStatus,\n defaultShouldRevalidate: shouldSkipRevalidation\n ? false\n : isRevalidationRequired,\n });\n }\n\n if (shouldRevalidate) {\n revalidatingFetchers.push({\n key,\n routeId: f.routeId,\n path: f.path,\n matches: fetcherMatches,\n match: fetcherMatch,\n controller: new AbortController(),\n });\n }\n });\n\n return [navigationMatches, revalidatingFetchers];\n}\n\nfunction isNewLoader(\n currentLoaderData: RouteData,\n currentMatch: AgnosticDataRouteMatch,\n match: AgnosticDataRouteMatch\n) {\n let isNew =\n // [a] -> [a, b]\n !currentMatch ||\n // [a, b] -> [a, c]\n match.route.id !== currentMatch.route.id;\n\n // Handle the case that we don't have data for a re-used route, potentially\n // from a prior error or from a cancelled pending deferred\n let isMissingData = currentLoaderData[match.route.id] === undefined;\n\n // Always load if this is a net-new route or we don't yet have data\n return isNew || isMissingData;\n}\n\nfunction isNewRouteInstance(\n currentMatch: AgnosticDataRouteMatch,\n match: AgnosticDataRouteMatch\n) {\n let currentPath = currentMatch.route.path;\n return (\n // param change for this match, /users/123 -> /users/456\n currentMatch.pathname !== match.pathname ||\n // splat param changed, which is not present in match.path\n // e.g. /files/images/avatar.jpg -> files/finances.xls\n (currentPath != null &&\n currentPath.endsWith(\"*\") &&\n currentMatch.params[\"*\"] !== match.params[\"*\"])\n );\n}\n\nfunction shouldRevalidateLoader(\n loaderMatch: AgnosticDataRouteMatch,\n arg: ShouldRevalidateFunctionArgs\n) {\n if (loaderMatch.route.shouldRevalidate) {\n let routeChoice = loaderMatch.route.shouldRevalidate(arg);\n if (typeof routeChoice === \"boolean\") {\n return routeChoice;\n }\n }\n\n return arg.defaultShouldRevalidate;\n}\n\n/**\n * Idempotent utility to execute patchRoutesOnNavigation() to lazily load route\n * definitions and update the routes/routeManifest\n */\nasync function loadLazyRouteChildren(\n patchRoutesOnNavigationImpl: AgnosticPatchRoutesOnNavigationFunction,\n path: string,\n matches: AgnosticDataRouteMatch[],\n routes: AgnosticDataRouteObject[],\n manifest: RouteManifest,\n mapRouteProperties: MapRoutePropertiesFunction,\n pendingRouteChildren: Map<\n string,\n ReturnType\n >,\n signal: AbortSignal\n) {\n let key = [path, ...matches.map((m) => m.route.id)].join(\"-\");\n try {\n let pending = pendingRouteChildren.get(key);\n if (!pending) {\n pending = patchRoutesOnNavigationImpl({\n path,\n matches,\n patch: (routeId, children) => {\n if (!signal.aborted) {\n patchRoutesImpl(\n routeId,\n children,\n routes,\n manifest,\n mapRouteProperties\n );\n }\n },\n });\n pendingRouteChildren.set(key, pending);\n }\n\n if (pending && isPromise(pending)) {\n await pending;\n }\n } finally {\n pendingRouteChildren.delete(key);\n }\n}\n\nfunction patchRoutesImpl(\n routeId: string | null,\n children: AgnosticRouteObject[],\n routesToUse: AgnosticDataRouteObject[],\n manifest: RouteManifest,\n mapRouteProperties: MapRoutePropertiesFunction\n) {\n if (routeId) {\n let route = manifest[routeId];\n invariant(\n route,\n `No route found to patch children into: routeId = ${routeId}`\n );\n let dataChildren = convertRoutesToDataRoutes(\n children,\n mapRouteProperties,\n [routeId, \"patch\", String(route.children?.length || \"0\")],\n manifest\n );\n if (route.children) {\n route.children.push(...dataChildren);\n } else {\n route.children = dataChildren;\n }\n } else {\n let dataChildren = convertRoutesToDataRoutes(\n children,\n mapRouteProperties,\n [\"patch\", String(routesToUse.length || \"0\")],\n manifest\n );\n routesToUse.push(...dataChildren);\n }\n}\n\n/**\n * Execute route.lazy() methods to lazily load route modules (loader, action,\n * shouldRevalidate) and update the routeManifest in place which shares objects\n * with dataRoutes so those get updated as well.\n */\nasync function loadLazyRouteModule(\n route: AgnosticDataRouteObject,\n mapRouteProperties: MapRoutePropertiesFunction,\n manifest: RouteManifest\n) {\n if (!route.lazy) {\n return;\n }\n\n let lazyRoute = await route.lazy();\n\n // If the lazy route function was executed and removed by another parallel\n // call then we can return - first lazy() to finish wins because the return\n // value of lazy is expected to be static\n if (!route.lazy) {\n return;\n }\n\n let routeToUpdate = manifest[route.id];\n invariant(routeToUpdate, \"No route found in manifest\");\n\n // Update the route in place. This should be safe because there's no way\n // we could yet be sitting on this route as we can't get there without\n // resolving lazy() first.\n //\n // This is different than the HMR \"update\" use-case where we may actively be\n // on the route being updated. The main concern boils down to \"does this\n // mutation affect any ongoing navigations or any current state.matches\n // values?\". If not, it should be safe to update in place.\n let routeUpdates: Record = {};\n for (let lazyRouteProperty in lazyRoute) {\n let staticRouteValue =\n routeToUpdate[lazyRouteProperty as keyof typeof routeToUpdate];\n\n let isPropertyStaticallyDefined =\n staticRouteValue !== undefined &&\n // This property isn't static since it should always be updated based\n // on the route updates\n lazyRouteProperty !== \"hasErrorBoundary\";\n\n warning(\n !isPropertyStaticallyDefined,\n `Route \"${routeToUpdate.id}\" has a static property \"${lazyRouteProperty}\" ` +\n `defined but its lazy function is also returning a value for this property. ` +\n `The lazy route property \"${lazyRouteProperty}\" will be ignored.`\n );\n\n if (\n !isPropertyStaticallyDefined &&\n !immutableRouteKeys.has(lazyRouteProperty as ImmutableRouteKey)\n ) {\n routeUpdates[lazyRouteProperty] =\n lazyRoute[lazyRouteProperty as keyof typeof lazyRoute];\n }\n }\n\n // Mutate the route with the provided updates. Do this first so we pass\n // the updated version to mapRouteProperties\n Object.assign(routeToUpdate, routeUpdates);\n\n // Mutate the `hasErrorBoundary` property on the route based on the route\n // updates and remove the `lazy` function so we don't resolve the lazy\n // route again.\n Object.assign(routeToUpdate, {\n // To keep things framework agnostic, we use the provided\n // `mapRouteProperties` (or wrapped `detectErrorBoundary`) function to\n // set the framework-aware properties (`element`/`hasErrorBoundary`) since\n // the logic will differ between frameworks.\n ...mapRouteProperties(routeToUpdate),\n lazy: undefined,\n });\n}\n\n// Default implementation of `dataStrategy` which fetches all loaders in parallel\nfunction defaultDataStrategy(\n opts: DataStrategyFunctionArgs\n): ReturnType {\n return Promise.all(opts.matches.map((m) => m.resolve()));\n}\n\nasync function callDataStrategyImpl(\n dataStrategyImpl: DataStrategyFunction,\n type: \"loader\" | \"action\",\n request: Request,\n matchesToLoad: AgnosticDataRouteMatch[],\n matches: AgnosticDataRouteMatch[],\n manifest: RouteManifest,\n mapRouteProperties: MapRoutePropertiesFunction,\n requestContext?: unknown\n): Promise {\n let routeIdsToLoad = matchesToLoad.reduce(\n (acc, m) => acc.add(m.route.id),\n new Set()\n );\n let loadedMatches = new Set();\n\n // Send all matches here to allow for a middleware-type implementation.\n // handler will be a no-op for unneeded routes and we filter those results\n // back out below.\n let results = await dataStrategyImpl({\n matches: matches.map((match) => {\n let shouldLoad = routeIdsToLoad.has(match.route.id);\n // `resolve` encapsulates the route.lazy, executing the\n // loader/action, and mapping return values/thrown errors to a\n // HandlerResult. Users can pass a callback to take fine-grained control\n // over the execution of the loader/action\n let resolve: DataStrategyMatch[\"resolve\"] = (handlerOverride) => {\n loadedMatches.add(match.route.id);\n return shouldLoad\n ? callLoaderOrAction(\n type,\n request,\n match,\n manifest,\n mapRouteProperties,\n handlerOverride,\n requestContext\n )\n : Promise.resolve({ type: ResultType.data, result: undefined });\n };\n\n return {\n ...match,\n shouldLoad,\n resolve,\n };\n }),\n request,\n params: matches[0].params,\n context: requestContext,\n });\n\n // Throw if any loadRoute implementations not called since they are what\n // ensures a route is fully loaded\n matches.forEach((m) =>\n invariant(\n loadedMatches.has(m.route.id),\n `\\`match.resolve()\\` was not called for route id \"${m.route.id}\". ` +\n \"You must call `match.resolve()` on every match passed to \" +\n \"`dataStrategy` to ensure all routes are properly loaded.\"\n )\n );\n\n // Filter out any middleware-only matches for which we didn't need to run handlers\n return results.filter((_, i) => routeIdsToLoad.has(matches[i].route.id));\n}\n\n// Default logic for calling a loader/action is the user has no specified a dataStrategy\nasync function callLoaderOrAction(\n type: \"loader\" | \"action\",\n request: Request,\n match: AgnosticDataRouteMatch,\n manifest: RouteManifest,\n mapRouteProperties: MapRoutePropertiesFunction,\n handlerOverride: Parameters[0],\n staticContext?: unknown\n): Promise {\n let result: HandlerResult;\n let onReject: (() => void) | undefined;\n\n let runHandler = (\n handler: AgnosticRouteObject[\"loader\"] | AgnosticRouteObject[\"action\"]\n ): Promise => {\n // Setup a promise we can race against so that abort signals short circuit\n let reject: () => void;\n // This will never resolve so safe to type it as Promise to\n // satisfy the function return value\n let abortPromise = new Promise((_, r) => (reject = r));\n onReject = () => reject();\n request.signal.addEventListener(\"abort\", onReject);\n\n let actualHandler = (ctx?: unknown) => {\n if (typeof handler !== \"function\") {\n return Promise.reject(\n new Error(\n `You cannot call the handler for a route which defines a boolean ` +\n `\"${type}\" [routeId: ${match.route.id}]`\n )\n );\n }\n return handler(\n {\n request,\n params: match.params,\n context: staticContext,\n },\n ...(ctx !== undefined ? [ctx] : [])\n );\n };\n\n let handlerPromise: Promise;\n if (handlerOverride) {\n handlerPromise = handlerOverride((ctx: unknown) => actualHandler(ctx));\n } else {\n handlerPromise = (async () => {\n try {\n let val = await actualHandler();\n return { type: \"data\", result: val };\n } catch (e) {\n return { type: \"error\", result: e };\n }\n })();\n }\n\n return Promise.race([handlerPromise, abortPromise]);\n };\n\n try {\n let handler = match.route[type];\n\n if (match.route.lazy) {\n if (handler) {\n // Run statically defined handler in parallel with lazy()\n let handlerError;\n let [value] = await Promise.all([\n // If the handler throws, don't let it immediately bubble out,\n // since we need to let the lazy() execution finish so we know if this\n // route has a boundary that can handle the error\n runHandler(handler).catch((e) => {\n handlerError = e;\n }),\n loadLazyRouteModule(match.route, mapRouteProperties, manifest),\n ]);\n if (handlerError !== undefined) {\n throw handlerError;\n }\n result = value!;\n } else {\n // Load lazy route module, then run any returned handler\n await loadLazyRouteModule(match.route, mapRouteProperties, manifest);\n\n handler = match.route[type];\n if (handler) {\n // Handler still runs even if we got interrupted to maintain consistency\n // with un-abortable behavior of handler execution on non-lazy or\n // previously-lazy-loaded routes\n result = await runHandler(handler);\n } else if (type === \"action\") {\n let url = new URL(request.url);\n let pathname = url.pathname + url.search;\n throw getInternalRouterError(405, {\n method: request.method,\n pathname,\n routeId: match.route.id,\n });\n } else {\n // lazy() route has no loader to run. Short circuit here so we don't\n // hit the invariant below that errors on returning undefined.\n return { type: ResultType.data, result: undefined };\n }\n }\n } else if (!handler) {\n let url = new URL(request.url);\n let pathname = url.pathname + url.search;\n throw getInternalRouterError(404, {\n pathname,\n });\n } else {\n result = await runHandler(handler);\n }\n\n invariant(\n result.result !== undefined,\n `You defined ${type === \"action\" ? \"an action\" : \"a loader\"} for route ` +\n `\"${match.route.id}\" but didn't return anything from your \\`${type}\\` ` +\n `function. Please return a value or \\`null\\`.`\n );\n } catch (e) {\n // We should already be catching and converting normal handler executions to\n // HandlerResults and returning them, so anything that throws here is an\n // unexpected error we still need to wrap\n return { type: ResultType.error, result: e };\n } finally {\n if (onReject) {\n request.signal.removeEventListener(\"abort\", onReject);\n }\n }\n\n return result;\n}\n\nasync function convertHandlerResultToDataResult(\n handlerResult: HandlerResult\n): Promise {\n let { result, type } = handlerResult;\n\n if (isResponse(result)) {\n let data: any;\n\n try {\n let contentType = result.headers.get(\"Content-Type\");\n // Check between word boundaries instead of startsWith() due to the last\n // paragraph of https://httpwg.org/specs/rfc9110.html#field.content-type\n if (contentType && /\\bapplication\\/json\\b/.test(contentType)) {\n if (result.body == null) {\n data = null;\n } else {\n data = await result.json();\n }\n } else {\n data = await result.text();\n }\n } catch (e) {\n return { type: ResultType.error, error: e };\n }\n\n if (type === ResultType.error) {\n return {\n type: ResultType.error,\n error: new ErrorResponseImpl(result.status, result.statusText, data),\n statusCode: result.status,\n headers: result.headers,\n };\n }\n\n return {\n type: ResultType.data,\n data,\n statusCode: result.status,\n headers: result.headers,\n };\n }\n\n if (type === ResultType.error) {\n if (isDataWithResponseInit(result)) {\n if (result.data instanceof Error) {\n return {\n type: ResultType.error,\n error: result.data,\n statusCode: result.init?.status,\n };\n }\n\n // Convert thrown unstable_data() to ErrorResponse instances\n result = new ErrorResponseImpl(\n result.init?.status || 500,\n undefined,\n result.data\n );\n }\n return {\n type: ResultType.error,\n error: result,\n statusCode: isRouteErrorResponse(result) ? result.status : undefined,\n };\n }\n\n if (isDeferredData(result)) {\n return {\n type: ResultType.deferred,\n deferredData: result,\n statusCode: result.init?.status,\n headers: result.init?.headers && new Headers(result.init.headers),\n };\n }\n\n if (isDataWithResponseInit(result)) {\n return {\n type: ResultType.data,\n data: result.data,\n statusCode: result.init?.status,\n headers: result.init?.headers\n ? new Headers(result.init.headers)\n : undefined,\n };\n }\n\n return { type: ResultType.data, data: result };\n}\n\n// Support relative routing in internal redirects\nfunction normalizeRelativeRoutingRedirectResponse(\n response: Response,\n request: Request,\n routeId: string,\n matches: AgnosticDataRouteMatch[],\n basename: string,\n v7_relativeSplatPath: boolean\n) {\n let location = response.headers.get(\"Location\");\n invariant(\n location,\n \"Redirects returned/thrown from loaders/actions must have a Location header\"\n );\n\n if (!ABSOLUTE_URL_REGEX.test(location)) {\n let trimmedMatches = matches.slice(\n 0,\n matches.findIndex((m) => m.route.id === routeId) + 1\n );\n location = normalizeTo(\n new URL(request.url),\n trimmedMatches,\n basename,\n true,\n location,\n v7_relativeSplatPath\n );\n response.headers.set(\"Location\", location);\n }\n\n return response;\n}\n\nfunction normalizeRedirectLocation(\n location: string,\n currentUrl: URL,\n basename: string\n): string {\n if (ABSOLUTE_URL_REGEX.test(location)) {\n // Strip off the protocol+origin for same-origin + same-basename absolute redirects\n let normalizedLocation = location;\n let url = normalizedLocation.startsWith(\"//\")\n ? new URL(currentUrl.protocol + normalizedLocation)\n : new URL(normalizedLocation);\n let isSameBasename = stripBasename(url.pathname, basename) != null;\n if (url.origin === currentUrl.origin && isSameBasename) {\n return url.pathname + url.search + url.hash;\n }\n }\n return location;\n}\n\n// Utility method for creating the Request instances for loaders/actions during\n// client-side navigations and fetches. During SSR we will always have a\n// Request instance from the static handler (query/queryRoute)\nfunction createClientSideRequest(\n history: History,\n location: string | Location,\n signal: AbortSignal,\n submission?: Submission\n): Request {\n let url = history.createURL(stripHashFromPath(location)).toString();\n let init: RequestInit = { signal };\n\n if (submission && isMutationMethod(submission.formMethod)) {\n let { formMethod, formEncType } = submission;\n // Didn't think we needed this but it turns out unlike other methods, patch\n // won't be properly normalized to uppercase and results in a 405 error.\n // See: https://fetch.spec.whatwg.org/#concept-method\n init.method = formMethod.toUpperCase();\n\n if (formEncType === \"application/json\") {\n init.headers = new Headers({ \"Content-Type\": formEncType });\n init.body = JSON.stringify(submission.json);\n } else if (formEncType === \"text/plain\") {\n // Content-Type is inferred (https://fetch.spec.whatwg.org/#dom-request)\n init.body = submission.text;\n } else if (\n formEncType === \"application/x-www-form-urlencoded\" &&\n submission.formData\n ) {\n // Content-Type is inferred (https://fetch.spec.whatwg.org/#dom-request)\n init.body = convertFormDataToSearchParams(submission.formData);\n } else {\n // Content-Type is inferred (https://fetch.spec.whatwg.org/#dom-request)\n init.body = submission.formData;\n }\n }\n\n return new Request(url, init);\n}\n\nfunction convertFormDataToSearchParams(formData: FormData): URLSearchParams {\n let searchParams = new URLSearchParams();\n\n for (let [key, value] of formData.entries()) {\n // https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#converting-an-entry-list-to-a-list-of-name-value-pairs\n searchParams.append(key, typeof value === \"string\" ? value : value.name);\n }\n\n return searchParams;\n}\n\nfunction convertSearchParamsToFormData(\n searchParams: URLSearchParams\n): FormData {\n let formData = new FormData();\n for (let [key, value] of searchParams.entries()) {\n formData.append(key, value);\n }\n return formData;\n}\n\nfunction processRouteLoaderData(\n matches: AgnosticDataRouteMatch[],\n matchesToLoad: AgnosticDataRouteMatch[],\n results: DataResult[],\n pendingActionResult: PendingActionResult | undefined,\n activeDeferreds: Map,\n skipLoaderErrorBubbling: boolean\n): {\n loaderData: RouterState[\"loaderData\"];\n errors: RouterState[\"errors\"] | null;\n statusCode: number;\n loaderHeaders: Record;\n} {\n // Fill in loaderData/errors from our loaders\n let loaderData: RouterState[\"loaderData\"] = {};\n let errors: RouterState[\"errors\"] | null = null;\n let statusCode: number | undefined;\n let foundError = false;\n let loaderHeaders: Record = {};\n let pendingError =\n pendingActionResult && isErrorResult(pendingActionResult[1])\n ? pendingActionResult[1].error\n : undefined;\n\n // Process loader results into state.loaderData/state.errors\n results.forEach((result, index) => {\n let id = matchesToLoad[index].route.id;\n invariant(\n !isRedirectResult(result),\n \"Cannot handle redirect results in processLoaderData\"\n );\n if (isErrorResult(result)) {\n let error = result.error;\n // If we have a pending action error, we report it at the highest-route\n // that throws a loader error, and then clear it out to indicate that\n // it was consumed\n if (pendingError !== undefined) {\n error = pendingError;\n pendingError = undefined;\n }\n\n errors = errors || {};\n\n if (skipLoaderErrorBubbling) {\n errors[id] = error;\n } else {\n // Look upwards from the matched route for the closest ancestor error\n // boundary, defaulting to the root match. Prefer higher error values\n // if lower errors bubble to the same boundary\n let boundaryMatch = findNearestBoundary(matches, id);\n if (errors[boundaryMatch.route.id] == null) {\n errors[boundaryMatch.route.id] = error;\n }\n }\n\n // Clear our any prior loaderData for the throwing route\n loaderData[id] = undefined;\n\n // Once we find our first (highest) error, we set the status code and\n // prevent deeper status codes from overriding\n if (!foundError) {\n foundError = true;\n statusCode = isRouteErrorResponse(result.error)\n ? result.error.status\n : 500;\n }\n if (result.headers) {\n loaderHeaders[id] = result.headers;\n }\n } else {\n if (isDeferredResult(result)) {\n activeDeferreds.set(id, result.deferredData);\n loaderData[id] = result.deferredData.data;\n // Error status codes always override success status codes, but if all\n // loaders are successful we take the deepest status code.\n if (\n result.statusCode != null &&\n result.statusCode !== 200 &&\n !foundError\n ) {\n statusCode = result.statusCode;\n }\n if (result.headers) {\n loaderHeaders[id] = result.headers;\n }\n } else {\n loaderData[id] = result.data;\n // Error status codes always override success status codes, but if all\n // loaders are successful we take the deepest status code.\n if (result.statusCode && result.statusCode !== 200 && !foundError) {\n statusCode = result.statusCode;\n }\n if (result.headers) {\n loaderHeaders[id] = result.headers;\n }\n }\n }\n });\n\n // If we didn't consume the pending action error (i.e., all loaders\n // resolved), then consume it here. Also clear out any loaderData for the\n // throwing route\n if (pendingError !== undefined && pendingActionResult) {\n errors = { [pendingActionResult[0]]: pendingError };\n loaderData[pendingActionResult[0]] = undefined;\n }\n\n return {\n loaderData,\n errors,\n statusCode: statusCode || 200,\n loaderHeaders,\n };\n}\n\nfunction processLoaderData(\n state: RouterState,\n matches: AgnosticDataRouteMatch[],\n matchesToLoad: AgnosticDataRouteMatch[],\n results: DataResult[],\n pendingActionResult: PendingActionResult | undefined,\n revalidatingFetchers: RevalidatingFetcher[],\n fetcherResults: DataResult[],\n activeDeferreds: Map\n): {\n loaderData: RouterState[\"loaderData\"];\n errors?: RouterState[\"errors\"];\n} {\n let { loaderData, errors } = processRouteLoaderData(\n matches,\n matchesToLoad,\n results,\n pendingActionResult,\n activeDeferreds,\n false // This method is only called client side so we always want to bubble\n );\n\n // Process results from our revalidating fetchers\n for (let index = 0; index < revalidatingFetchers.length; index++) {\n let { key, match, controller } = revalidatingFetchers[index];\n invariant(\n fetcherResults !== undefined && fetcherResults[index] !== undefined,\n \"Did not find corresponding fetcher result\"\n );\n let result = fetcherResults[index];\n\n // Process fetcher non-redirect errors\n if (controller && controller.signal.aborted) {\n // Nothing to do for aborted fetchers\n continue;\n } else if (isErrorResult(result)) {\n let boundaryMatch = findNearestBoundary(state.matches, match?.route.id);\n if (!(errors && errors[boundaryMatch.route.id])) {\n errors = {\n ...errors,\n [boundaryMatch.route.id]: result.error,\n };\n }\n state.fetchers.delete(key);\n } else if (isRedirectResult(result)) {\n // Should never get here, redirects should get processed above, but we\n // keep this to type narrow to a success result in the else\n invariant(false, \"Unhandled fetcher revalidation redirect\");\n } else if (isDeferredResult(result)) {\n // Should never get here, deferred data should be awaited for fetchers\n // in resolveDeferredResults\n invariant(false, \"Unhandled fetcher deferred data\");\n } else {\n let doneFetcher = getDoneFetcher(result.data);\n state.fetchers.set(key, doneFetcher);\n }\n }\n\n return { loaderData, errors };\n}\n\nfunction mergeLoaderData(\n loaderData: RouteData,\n newLoaderData: RouteData,\n matches: AgnosticDataRouteMatch[],\n errors: RouteData | null | undefined\n): RouteData {\n let mergedLoaderData = { ...newLoaderData };\n for (let match of matches) {\n let id = match.route.id;\n if (newLoaderData.hasOwnProperty(id)) {\n if (newLoaderData[id] !== undefined) {\n mergedLoaderData[id] = newLoaderData[id];\n } else {\n // No-op - this is so we ignore existing data if we have a key in the\n // incoming object with an undefined value, which is how we unset a prior\n // loaderData if we encounter a loader error\n }\n } else if (loaderData[id] !== undefined && match.route.loader) {\n // Preserve existing keys not included in newLoaderData and where a loader\n // wasn't removed by HMR\n mergedLoaderData[id] = loaderData[id];\n }\n\n if (errors && errors.hasOwnProperty(id)) {\n // Don't keep any loader data below the boundary\n break;\n }\n }\n return mergedLoaderData;\n}\n\nfunction getActionDataForCommit(\n pendingActionResult: PendingActionResult | undefined\n) {\n if (!pendingActionResult) {\n return {};\n }\n return isErrorResult(pendingActionResult[1])\n ? {\n // Clear out prior actionData on errors\n actionData: {},\n }\n : {\n actionData: {\n [pendingActionResult[0]]: pendingActionResult[1].data,\n },\n };\n}\n\n// Find the nearest error boundary, looking upwards from the leaf route (or the\n// route specified by routeId) for the closest ancestor error boundary,\n// defaulting to the root match\nfunction findNearestBoundary(\n matches: AgnosticDataRouteMatch[],\n routeId?: string\n): AgnosticDataRouteMatch {\n let eligibleMatches = routeId\n ? matches.slice(0, matches.findIndex((m) => m.route.id === routeId) + 1)\n : [...matches];\n return (\n eligibleMatches.reverse().find((m) => m.route.hasErrorBoundary === true) ||\n matches[0]\n );\n}\n\nfunction getShortCircuitMatches(routes: AgnosticDataRouteObject[]): {\n matches: AgnosticDataRouteMatch[];\n route: AgnosticDataRouteObject;\n} {\n // Prefer a root layout route if present, otherwise shim in a route object\n let route =\n routes.length === 1\n ? routes[0]\n : routes.find((r) => r.index || !r.path || r.path === \"/\") || {\n id: `__shim-error-route__`,\n };\n\n return {\n matches: [\n {\n params: {},\n pathname: \"\",\n pathnameBase: \"\",\n route,\n },\n ],\n route,\n };\n}\n\nfunction getInternalRouterError(\n status: number,\n {\n pathname,\n routeId,\n method,\n type,\n message,\n }: {\n pathname?: string;\n routeId?: string;\n method?: string;\n type?: \"defer-action\" | \"invalid-body\" | \"route-discovery\";\n message?: string;\n } = {}\n) {\n let statusText = \"Unknown Server Error\";\n let errorMessage = \"Unknown @remix-run/router error\";\n\n if (status === 400) {\n statusText = \"Bad Request\";\n if (type === \"route-discovery\") {\n errorMessage =\n `Unable to match URL \"${pathname}\" - the \\`unstable_patchRoutesOnNavigation()\\` ` +\n `function threw the following error:\\n${message}`;\n } else if (method && pathname && routeId) {\n errorMessage =\n `You made a ${method} request to \"${pathname}\" but ` +\n `did not provide a \\`loader\\` for route \"${routeId}\", ` +\n `so there is no way to handle the request.`;\n } else if (type === \"defer-action\") {\n errorMessage = \"defer() is not supported in actions\";\n } else if (type === \"invalid-body\") {\n errorMessage = \"Unable to encode submission body\";\n }\n } else if (status === 403) {\n statusText = \"Forbidden\";\n errorMessage = `Route \"${routeId}\" does not match URL \"${pathname}\"`;\n } else if (status === 404) {\n statusText = \"Not Found\";\n errorMessage = `No route matches URL \"${pathname}\"`;\n } else if (status === 405) {\n statusText = \"Method Not Allowed\";\n if (method && pathname && routeId) {\n errorMessage =\n `You made a ${method.toUpperCase()} request to \"${pathname}\" but ` +\n `did not provide an \\`action\\` for route \"${routeId}\", ` +\n `so there is no way to handle the request.`;\n } else if (method) {\n errorMessage = `Invalid request method \"${method.toUpperCase()}\"`;\n }\n }\n\n return new ErrorResponseImpl(\n status || 500,\n statusText,\n new Error(errorMessage),\n true\n );\n}\n\n// Find any returned redirect errors, starting from the lowest match\nfunction findRedirect(\n results: DataResult[]\n): { result: RedirectResult; idx: number } | undefined {\n for (let i = results.length - 1; i >= 0; i--) {\n let result = results[i];\n if (isRedirectResult(result)) {\n return { result, idx: i };\n }\n }\n}\n\nfunction stripHashFromPath(path: To) {\n let parsedPath = typeof path === \"string\" ? parsePath(path) : path;\n return createPath({ ...parsedPath, hash: \"\" });\n}\n\nfunction isHashChangeOnly(a: Location, b: Location): boolean {\n if (a.pathname !== b.pathname || a.search !== b.search) {\n return false;\n }\n\n if (a.hash === \"\") {\n // /page -> /page#hash\n return b.hash !== \"\";\n } else if (a.hash === b.hash) {\n // /page#hash -> /page#hash\n return true;\n } else if (b.hash !== \"\") {\n // /page#hash -> /page#other\n return true;\n }\n\n // If the hash is removed the browser will re-perform a request to the server\n // /page#hash -> /page\n return false;\n}\n\nfunction isPromise(val: unknown): val is Promise {\n return typeof val === \"object\" && val != null && \"then\" in val;\n}\n\nfunction isHandlerResult(result: unknown): result is HandlerResult {\n return (\n result != null &&\n typeof result === \"object\" &&\n \"type\" in result &&\n \"result\" in result &&\n (result.type === ResultType.data || result.type === ResultType.error)\n );\n}\n\nfunction isRedirectHandlerResult(result: HandlerResult) {\n return (\n isResponse(result.result) && redirectStatusCodes.has(result.result.status)\n );\n}\n\nfunction isDeferredResult(result: DataResult): result is DeferredResult {\n return result.type === ResultType.deferred;\n}\n\nfunction isErrorResult(result: DataResult): result is ErrorResult {\n return result.type === ResultType.error;\n}\n\nfunction isRedirectResult(result?: DataResult): result is RedirectResult {\n return (result && result.type) === ResultType.redirect;\n}\n\nexport function isDataWithResponseInit(\n value: any\n): value is DataWithResponseInit {\n return (\n typeof value === \"object\" &&\n value != null &&\n \"type\" in value &&\n \"data\" in value &&\n \"init\" in value &&\n value.type === \"DataWithResponseInit\"\n );\n}\n\nexport function isDeferredData(value: any): value is DeferredData {\n let deferred: DeferredData = value;\n return (\n deferred &&\n typeof deferred === \"object\" &&\n typeof deferred.data === \"object\" &&\n typeof deferred.subscribe === \"function\" &&\n typeof deferred.cancel === \"function\" &&\n typeof deferred.resolveData === \"function\"\n );\n}\n\nfunction isResponse(value: any): value is Response {\n return (\n value != null &&\n typeof value.status === \"number\" &&\n typeof value.statusText === \"string\" &&\n typeof value.headers === \"object\" &&\n typeof value.body !== \"undefined\"\n );\n}\n\nfunction isRedirectResponse(result: any): result is Response {\n if (!isResponse(result)) {\n return false;\n }\n\n let status = result.status;\n let location = result.headers.get(\"Location\");\n return status >= 300 && status <= 399 && location != null;\n}\n\nfunction isValidMethod(method: string): method is FormMethod | V7_FormMethod {\n return validRequestMethods.has(method.toLowerCase() as FormMethod);\n}\n\nfunction isMutationMethod(\n method: string\n): method is MutationFormMethod | V7_MutationFormMethod {\n return validMutationMethods.has(method.toLowerCase() as MutationFormMethod);\n}\n\nasync function resolveDeferredResults(\n currentMatches: AgnosticDataRouteMatch[],\n matchesToLoad: (AgnosticDataRouteMatch | null)[],\n results: DataResult[],\n signals: (AbortSignal | null)[],\n isFetcher: boolean,\n currentLoaderData?: RouteData\n) {\n for (let index = 0; index < results.length; index++) {\n let result = results[index];\n let match = matchesToLoad[index];\n // If we don't have a match, then we can have a deferred result to do\n // anything with. This is for revalidating fetchers where the route was\n // removed during HMR\n if (!match) {\n continue;\n }\n\n let currentMatch = currentMatches.find(\n (m) => m.route.id === match!.route.id\n );\n let isRevalidatingLoader =\n currentMatch != null &&\n !isNewRouteInstance(currentMatch, match) &&\n (currentLoaderData && currentLoaderData[match.route.id]) !== undefined;\n\n if (isDeferredResult(result) && (isFetcher || isRevalidatingLoader)) {\n // Note: we do not have to touch activeDeferreds here since we race them\n // against the signal in resolveDeferredData and they'll get aborted\n // there if needed\n let signal = signals[index];\n invariant(\n signal,\n \"Expected an AbortSignal for revalidating fetcher deferred result\"\n );\n await resolveDeferredData(result, signal, isFetcher).then((result) => {\n if (result) {\n results[index] = result || results[index];\n }\n });\n }\n }\n}\n\nasync function resolveDeferredData(\n result: DeferredResult,\n signal: AbortSignal,\n unwrap = false\n): Promise {\n let aborted = await result.deferredData.resolveData(signal);\n if (aborted) {\n return;\n }\n\n if (unwrap) {\n try {\n return {\n type: ResultType.data,\n data: result.deferredData.unwrappedData,\n };\n } catch (e) {\n // Handle any TrackedPromise._error values encountered while unwrapping\n return {\n type: ResultType.error,\n error: e,\n };\n }\n }\n\n return {\n type: ResultType.data,\n data: result.deferredData.data,\n };\n}\n\nfunction hasNakedIndexQuery(search: string): boolean {\n return new URLSearchParams(search).getAll(\"index\").some((v) => v === \"\");\n}\n\nfunction getTargetMatch(\n matches: AgnosticDataRouteMatch[],\n location: Location | string\n) {\n let search =\n typeof location === \"string\" ? parsePath(location).search : location.search;\n if (\n matches[matches.length - 1].route.index &&\n hasNakedIndexQuery(search || \"\")\n ) {\n // Return the leaf index route when index is present\n return matches[matches.length - 1];\n }\n // Otherwise grab the deepest \"path contributing\" match (ignoring index and\n // pathless layout routes)\n let pathMatches = getPathContributingMatches(matches);\n return pathMatches[pathMatches.length - 1];\n}\n\nfunction getSubmissionFromNavigation(\n navigation: Navigation\n): Submission | undefined {\n let { formMethod, formAction, formEncType, text, formData, json } =\n navigation;\n if (!formMethod || !formAction || !formEncType) {\n return;\n }\n\n if (text != null) {\n return {\n formMethod,\n formAction,\n formEncType,\n formData: undefined,\n json: undefined,\n text,\n };\n } else if (formData != null) {\n return {\n formMethod,\n formAction,\n formEncType,\n formData,\n json: undefined,\n text: undefined,\n };\n } else if (json !== undefined) {\n return {\n formMethod,\n formAction,\n formEncType,\n formData: undefined,\n json,\n text: undefined,\n };\n }\n}\n\nfunction getLoadingNavigation(\n location: Location,\n submission?: Submission\n): NavigationStates[\"Loading\"] {\n if (submission) {\n let navigation: NavigationStates[\"Loading\"] = {\n state: \"loading\",\n location,\n formMethod: submission.formMethod,\n formAction: submission.formAction,\n formEncType: submission.formEncType,\n formData: submission.formData,\n json: submission.json,\n text: submission.text,\n };\n return navigation;\n } else {\n let navigation: NavigationStates[\"Loading\"] = {\n state: \"loading\",\n location,\n formMethod: undefined,\n formAction: undefined,\n formEncType: undefined,\n formData: undefined,\n json: undefined,\n text: undefined,\n };\n return navigation;\n }\n}\n\nfunction getSubmittingNavigation(\n location: Location,\n submission: Submission\n): NavigationStates[\"Submitting\"] {\n let navigation: NavigationStates[\"Submitting\"] = {\n state: \"submitting\",\n location,\n formMethod: submission.formMethod,\n formAction: submission.formAction,\n formEncType: submission.formEncType,\n formData: submission.formData,\n json: submission.json,\n text: submission.text,\n };\n return navigation;\n}\n\nfunction getLoadingFetcher(\n submission?: Submission,\n data?: Fetcher[\"data\"]\n): FetcherStates[\"Loading\"] {\n if (submission) {\n let fetcher: FetcherStates[\"Loading\"] = {\n state: \"loading\",\n formMethod: submission.formMethod,\n formAction: submission.formAction,\n formEncType: submission.formEncType,\n formData: submission.formData,\n json: submission.json,\n text: submission.text,\n data,\n };\n return fetcher;\n } else {\n let fetcher: FetcherStates[\"Loading\"] = {\n state: \"loading\",\n formMethod: undefined,\n formAction: undefined,\n formEncType: undefined,\n formData: undefined,\n json: undefined,\n text: undefined,\n data,\n };\n return fetcher;\n }\n}\n\nfunction getSubmittingFetcher(\n submission: Submission,\n existingFetcher?: Fetcher\n): FetcherStates[\"Submitting\"] {\n let fetcher: FetcherStates[\"Submitting\"] = {\n state: \"submitting\",\n formMethod: submission.formMethod,\n formAction: submission.formAction,\n formEncType: submission.formEncType,\n formData: submission.formData,\n json: submission.json,\n text: submission.text,\n data: existingFetcher ? existingFetcher.data : undefined,\n };\n return fetcher;\n}\n\nfunction getDoneFetcher(data: Fetcher[\"data\"]): FetcherStates[\"Idle\"] {\n let fetcher: FetcherStates[\"Idle\"] = {\n state: \"idle\",\n formMethod: undefined,\n formAction: undefined,\n formEncType: undefined,\n formData: undefined,\n json: undefined,\n text: undefined,\n data,\n };\n return fetcher;\n}\n\nfunction restoreAppliedTransitions(\n _window: Window,\n transitions: Map>\n) {\n try {\n let sessionPositions = _window.sessionStorage.getItem(\n TRANSITIONS_STORAGE_KEY\n );\n if (sessionPositions) {\n let json = JSON.parse(sessionPositions);\n for (let [k, v] of Object.entries(json || {})) {\n if (v && Array.isArray(v)) {\n transitions.set(k, new Set(v || []));\n }\n }\n }\n } catch (e) {\n // no-op, use default empty object\n }\n}\n\nfunction persistAppliedTransitions(\n _window: Window,\n transitions: Map>\n) {\n if (transitions.size > 0) {\n let json: Record = {};\n for (let [k, v] of transitions) {\n json[k] = [...v];\n }\n try {\n _window.sessionStorage.setItem(\n TRANSITIONS_STORAGE_KEY,\n JSON.stringify(json)\n );\n } catch (error) {\n warning(\n false,\n `Failed to save applied view transitions in sessionStorage (${error}).`\n );\n }\n }\n}\n//#endregion\n","import * as React from \"react\";\nimport type {\n AgnosticIndexRouteObject,\n AgnosticNonIndexRouteObject,\n AgnosticRouteMatch,\n History,\n LazyRouteFunction,\n Location,\n Action as NavigationType,\n RelativeRoutingType,\n Router,\n StaticHandlerContext,\n To,\n TrackedPromise,\n} from \"@remix-run/router\";\n\n// Create react-specific types from the agnostic types in @remix-run/router to\n// export from react-router\nexport interface IndexRouteObject {\n caseSensitive?: AgnosticIndexRouteObject[\"caseSensitive\"];\n path?: AgnosticIndexRouteObject[\"path\"];\n id?: AgnosticIndexRouteObject[\"id\"];\n loader?: AgnosticIndexRouteObject[\"loader\"];\n action?: AgnosticIndexRouteObject[\"action\"];\n hasErrorBoundary?: AgnosticIndexRouteObject[\"hasErrorBoundary\"];\n shouldRevalidate?: AgnosticIndexRouteObject[\"shouldRevalidate\"];\n handle?: AgnosticIndexRouteObject[\"handle\"];\n index: true;\n children?: undefined;\n element?: React.ReactNode | null;\n hydrateFallbackElement?: React.ReactNode | null;\n errorElement?: React.ReactNode | null;\n Component?: React.ComponentType | null;\n HydrateFallback?: React.ComponentType | null;\n ErrorBoundary?: React.ComponentType | null;\n lazy?: LazyRouteFunction;\n}\n\nexport interface NonIndexRouteObject {\n caseSensitive?: AgnosticNonIndexRouteObject[\"caseSensitive\"];\n path?: AgnosticNonIndexRouteObject[\"path\"];\n id?: AgnosticNonIndexRouteObject[\"id\"];\n loader?: AgnosticNonIndexRouteObject[\"loader\"];\n action?: AgnosticNonIndexRouteObject[\"action\"];\n hasErrorBoundary?: AgnosticNonIndexRouteObject[\"hasErrorBoundary\"];\n shouldRevalidate?: AgnosticNonIndexRouteObject[\"shouldRevalidate\"];\n handle?: AgnosticNonIndexRouteObject[\"handle\"];\n index?: false;\n children?: RouteObject[];\n element?: React.ReactNode | null;\n hydrateFallbackElement?: React.ReactNode | null;\n errorElement?: React.ReactNode | null;\n Component?: React.ComponentType | null;\n HydrateFallback?: React.ComponentType | null;\n ErrorBoundary?: React.ComponentType | null;\n lazy?: LazyRouteFunction;\n}\n\nexport type RouteObject = IndexRouteObject | NonIndexRouteObject;\n\nexport type DataRouteObject = RouteObject & {\n children?: DataRouteObject[];\n id: string;\n};\n\nexport interface RouteMatch<\n ParamKey extends string = string,\n RouteObjectType extends RouteObject = RouteObject\n> extends AgnosticRouteMatch {}\n\nexport interface DataRouteMatch extends RouteMatch {}\n\nexport interface DataRouterContextObject\n // Omit `future` since those can be pulled from the `router`\n // `NavigationContext` needs future since it doesn't have a `router` in all cases\n extends Omit {\n router: Router;\n staticContext?: StaticHandlerContext;\n}\n\nexport const DataRouterContext =\n React.createContext(null);\nif (__DEV__) {\n DataRouterContext.displayName = \"DataRouter\";\n}\n\nexport const DataRouterStateContext = React.createContext<\n Router[\"state\"] | null\n>(null);\nif (__DEV__) {\n DataRouterStateContext.displayName = \"DataRouterState\";\n}\n\nexport const AwaitContext = React.createContext(null);\nif (__DEV__) {\n AwaitContext.displayName = \"Await\";\n}\n\nexport interface NavigateOptions {\n replace?: boolean;\n state?: any;\n preventScrollReset?: boolean;\n relative?: RelativeRoutingType;\n unstable_flushSync?: boolean;\n unstable_viewTransition?: boolean;\n}\n\n/**\n * A Navigator is a \"location changer\"; it's how you get to different locations.\n *\n * Every history instance conforms to the Navigator interface, but the\n * distinction is useful primarily when it comes to the low-level `` API\n * where both the location and a navigator must be provided separately in order\n * to avoid \"tearing\" that may occur in a suspense-enabled app if the action\n * and/or location were to be read directly from the history instance.\n */\nexport interface Navigator {\n createHref: History[\"createHref\"];\n // Optional for backwards-compat with Router/HistoryRouter usage (edge case)\n encodeLocation?: History[\"encodeLocation\"];\n go: History[\"go\"];\n push(to: To, state?: any, opts?: NavigateOptions): void;\n replace(to: To, state?: any, opts?: NavigateOptions): void;\n}\n\ninterface NavigationContextObject {\n basename: string;\n navigator: Navigator;\n static: boolean;\n future: {\n v7_relativeSplatPath: boolean;\n };\n}\n\nexport const NavigationContext = React.createContext(\n null!\n);\n\nif (__DEV__) {\n NavigationContext.displayName = \"Navigation\";\n}\n\ninterface LocationContextObject {\n location: Location;\n navigationType: NavigationType;\n}\n\nexport const LocationContext = React.createContext(\n null!\n);\n\nif (__DEV__) {\n LocationContext.displayName = \"Location\";\n}\n\nexport interface RouteContextObject {\n outlet: React.ReactElement | null;\n matches: RouteMatch[];\n isDataRoute: boolean;\n}\n\nexport const RouteContext = React.createContext({\n outlet: null,\n matches: [],\n isDataRoute: false,\n});\n\nif (__DEV__) {\n RouteContext.displayName = \"Route\";\n}\n\nexport const RouteErrorContext = React.createContext(null);\n\nif (__DEV__) {\n RouteErrorContext.displayName = \"RouteError\";\n}\n","import * as React from \"react\";\nimport type {\n Blocker,\n BlockerFunction,\n Location,\n ParamParseKey,\n Params,\n Path,\n PathMatch,\n PathPattern,\n RelativeRoutingType,\n Router as RemixRouter,\n RevalidationState,\n To,\n UIMatch,\n} from \"@remix-run/router\";\nimport {\n IDLE_BLOCKER,\n Action as NavigationType,\n UNSAFE_convertRouteMatchToUiMatch as convertRouteMatchToUiMatch,\n UNSAFE_decodePath as decodePath,\n UNSAFE_getResolveToMatches as getResolveToMatches,\n UNSAFE_invariant as invariant,\n isRouteErrorResponse,\n joinPaths,\n matchPath,\n matchRoutes,\n parsePath,\n resolveTo,\n stripBasename,\n UNSAFE_warning as warning,\n} from \"@remix-run/router\";\n\nimport type {\n DataRouteMatch,\n NavigateOptions,\n RouteContextObject,\n RouteMatch,\n RouteObject,\n} from \"./context\";\nimport {\n AwaitContext,\n DataRouterContext,\n DataRouterStateContext,\n LocationContext,\n NavigationContext,\n RouteContext,\n RouteErrorContext,\n} from \"./context\";\n\n/**\n * Returns the full href for the given \"to\" value. This is useful for building\n * custom links that are also accessible and preserve right-click behavior.\n *\n * @see https://reactrouter.com/hooks/use-href\n */\nexport function useHref(\n to: To,\n { relative }: { relative?: RelativeRoutingType } = {}\n): string {\n invariant(\n useInRouterContext(),\n // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n `useHref() may be used only in the context of a component.`\n );\n\n let { basename, navigator } = React.useContext(NavigationContext);\n let { hash, pathname, search } = useResolvedPath(to, { relative });\n\n let joinedPathname = pathname;\n\n // If we're operating within a basename, prepend it to the pathname prior\n // to creating the href. If this is a root navigation, then just use the raw\n // basename which allows the basename to have full control over the presence\n // of a trailing slash on root links\n if (basename !== \"/\") {\n joinedPathname =\n pathname === \"/\" ? basename : joinPaths([basename, pathname]);\n }\n\n return navigator.createHref({ pathname: joinedPathname, search, hash });\n}\n\n/**\n * Returns true if this component is a descendant of a ``.\n *\n * @see https://reactrouter.com/hooks/use-in-router-context\n */\nexport function useInRouterContext(): boolean {\n return React.useContext(LocationContext) != null;\n}\n\n/**\n * Returns the current location object, which represents the current URL in web\n * browsers.\n *\n * Note: If you're using this it may mean you're doing some of your own\n * \"routing\" in your app, and we'd like to know what your use case is. We may\n * be able to provide something higher-level to better suit your needs.\n *\n * @see https://reactrouter.com/hooks/use-location\n */\nexport function useLocation(): Location {\n invariant(\n useInRouterContext(),\n // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n `useLocation() may be used only in the context of a component.`\n );\n\n return React.useContext(LocationContext).location;\n}\n\n/**\n * Returns the current navigation action which describes how the router came to\n * the current location, either by a pop, push, or replace on the history stack.\n *\n * @see https://reactrouter.com/hooks/use-navigation-type\n */\nexport function useNavigationType(): NavigationType {\n return React.useContext(LocationContext).navigationType;\n}\n\n/**\n * Returns a PathMatch object if the given pattern matches the current URL.\n * This is useful for components that need to know \"active\" state, e.g.\n * ``.\n *\n * @see https://reactrouter.com/hooks/use-match\n */\nexport function useMatch<\n ParamKey extends ParamParseKey,\n Path extends string\n>(pattern: PathPattern | Path): PathMatch | null {\n invariant(\n useInRouterContext(),\n // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n `useMatch() may be used only in the context of a component.`\n );\n\n let { pathname } = useLocation();\n return React.useMemo(\n () => matchPath(pattern, decodePath(pathname)),\n [pathname, pattern]\n );\n}\n\n/**\n * The interface for the navigate() function returned from useNavigate().\n */\nexport interface NavigateFunction {\n (to: To, options?: NavigateOptions): void;\n (delta: number): void;\n}\n\nconst navigateEffectWarning =\n `You should call navigate() in a React.useEffect(), not when ` +\n `your component is first rendered.`;\n\n// Mute warnings for calls to useNavigate in SSR environments\nfunction useIsomorphicLayoutEffect(\n cb: Parameters[0]\n) {\n let isStatic = React.useContext(NavigationContext).static;\n if (!isStatic) {\n // We should be able to get rid of this once react 18.3 is released\n // See: https://github.com/facebook/react/pull/26395\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useLayoutEffect(cb);\n }\n}\n\n/**\n * Returns an imperative method for changing the location. Used by ``s, but\n * may also be used by other elements to change the location.\n *\n * @see https://reactrouter.com/hooks/use-navigate\n */\nexport function useNavigate(): NavigateFunction {\n let { isDataRoute } = React.useContext(RouteContext);\n // Conditional usage is OK here because the usage of a data router is static\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return isDataRoute ? useNavigateStable() : useNavigateUnstable();\n}\n\nfunction useNavigateUnstable(): NavigateFunction {\n invariant(\n useInRouterContext(),\n // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n `useNavigate() may be used only in the context of a component.`\n );\n\n let dataRouterContext = React.useContext(DataRouterContext);\n let { basename, future, navigator } = React.useContext(NavigationContext);\n let { matches } = React.useContext(RouteContext);\n let { pathname: locationPathname } = useLocation();\n\n let routePathnamesJson = JSON.stringify(\n getResolveToMatches(matches, future.v7_relativeSplatPath)\n );\n\n let activeRef = React.useRef(false);\n useIsomorphicLayoutEffect(() => {\n activeRef.current = true;\n });\n\n let navigate: NavigateFunction = React.useCallback(\n (to: To | number, options: NavigateOptions = {}) => {\n warning(activeRef.current, navigateEffectWarning);\n\n // Short circuit here since if this happens on first render the navigate\n // is useless because we haven't wired up our history listener yet\n if (!activeRef.current) return;\n\n if (typeof to === \"number\") {\n navigator.go(to);\n return;\n }\n\n let path = resolveTo(\n to,\n JSON.parse(routePathnamesJson),\n locationPathname,\n options.relative === \"path\"\n );\n\n // If we're operating within a basename, prepend it to the pathname prior\n // to handing off to history (but only if we're not in a data router,\n // otherwise it'll prepend the basename inside of the router).\n // If this is a root navigation, then we navigate to the raw basename\n // which allows the basename to have full control over the presence of a\n // trailing slash on root links\n if (dataRouterContext == null && basename !== \"/\") {\n path.pathname =\n path.pathname === \"/\"\n ? basename\n : joinPaths([basename, path.pathname]);\n }\n\n (!!options.replace ? navigator.replace : navigator.push)(\n path,\n options.state,\n options\n );\n },\n [\n basename,\n navigator,\n routePathnamesJson,\n locationPathname,\n dataRouterContext,\n ]\n );\n\n return navigate;\n}\n\nconst OutletContext = React.createContext(null);\n\n/**\n * Returns the context (if provided) for the child route at this level of the route\n * hierarchy.\n * @see https://reactrouter.com/hooks/use-outlet-context\n */\nexport function useOutletContext(): Context {\n return React.useContext(OutletContext) as Context;\n}\n\n/**\n * Returns the element for the child route at this level of the route\n * hierarchy. Used internally by `` to render child routes.\n *\n * @see https://reactrouter.com/hooks/use-outlet\n */\nexport function useOutlet(context?: unknown): React.ReactElement | null {\n let outlet = React.useContext(RouteContext).outlet;\n if (outlet) {\n return (\n {outlet}\n );\n }\n return outlet;\n}\n\n/**\n * Returns an object of key/value pairs of the dynamic params from the current\n * URL that were matched by the route path.\n *\n * @see https://reactrouter.com/hooks/use-params\n */\nexport function useParams<\n ParamsOrKey extends string | Record = string\n>(): Readonly<\n [ParamsOrKey] extends [string] ? Params : Partial\n> {\n let { matches } = React.useContext(RouteContext);\n let routeMatch = matches[matches.length - 1];\n return routeMatch ? (routeMatch.params as any) : {};\n}\n\n/**\n * Resolves the pathname of the given `to` value against the current location.\n *\n * @see https://reactrouter.com/hooks/use-resolved-path\n */\nexport function useResolvedPath(\n to: To,\n { relative }: { relative?: RelativeRoutingType } = {}\n): Path {\n let { future } = React.useContext(NavigationContext);\n let { matches } = React.useContext(RouteContext);\n let { pathname: locationPathname } = useLocation();\n let routePathnamesJson = JSON.stringify(\n getResolveToMatches(matches, future.v7_relativeSplatPath)\n );\n\n return React.useMemo(\n () =>\n resolveTo(\n to,\n JSON.parse(routePathnamesJson),\n locationPathname,\n relative === \"path\"\n ),\n [to, routePathnamesJson, locationPathname, relative]\n );\n}\n\n/**\n * Returns the element of the route that matched the current location, prepared\n * with the correct context to render the remainder of the route tree. Route\n * elements in the tree must render an `` to render their child route's\n * element.\n *\n * @see https://reactrouter.com/hooks/use-routes\n */\nexport function useRoutes(\n routes: RouteObject[],\n locationArg?: Partial | string\n): React.ReactElement | null {\n return useRoutesImpl(routes, locationArg);\n}\n\n// Internal implementation with accept optional param for RouterProvider usage\nexport function useRoutesImpl(\n routes: RouteObject[],\n locationArg?: Partial | string,\n dataRouterState?: RemixRouter[\"state\"],\n future?: RemixRouter[\"future\"]\n): React.ReactElement | null {\n invariant(\n useInRouterContext(),\n // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n `useRoutes() may be used only in the context of a component.`\n );\n\n let { navigator } = React.useContext(NavigationContext);\n let { matches: parentMatches } = React.useContext(RouteContext);\n let routeMatch = parentMatches[parentMatches.length - 1];\n let parentParams = routeMatch ? routeMatch.params : {};\n let parentPathname = routeMatch ? routeMatch.pathname : \"/\";\n let parentPathnameBase = routeMatch ? routeMatch.pathnameBase : \"/\";\n let parentRoute = routeMatch && routeMatch.route;\n\n if (__DEV__) {\n // You won't get a warning about 2 different under a \n // without a trailing *, but this is a best-effort warning anyway since we\n // cannot even give the warning unless they land at the parent route.\n //\n // Example:\n //\n // \n // {/* This route path MUST end with /* because otherwise\n // it will never match /blog/post/123 */}\n // } />\n // } />\n // \n //\n // function Blog() {\n // return (\n // \n // } />\n // \n // );\n // }\n let parentPath = (parentRoute && parentRoute.path) || \"\";\n warningOnce(\n parentPathname,\n !parentRoute || parentPath.endsWith(\"*\"),\n `You rendered descendant (or called \\`useRoutes()\\`) at ` +\n `\"${parentPathname}\" (under ) but the ` +\n `parent route path has no trailing \"*\". This means if you navigate ` +\n `deeper, the parent won't match anymore and therefore the child ` +\n `routes will never render.\\n\\n` +\n `Please change the parent to .`\n );\n }\n\n let locationFromContext = useLocation();\n\n let location;\n if (locationArg) {\n let parsedLocationArg =\n typeof locationArg === \"string\" ? parsePath(locationArg) : locationArg;\n\n invariant(\n parentPathnameBase === \"/\" ||\n parsedLocationArg.pathname?.startsWith(parentPathnameBase),\n `When overriding the location using \\`\\` or \\`useRoutes(routes, location)\\`, ` +\n `the location pathname must begin with the portion of the URL pathname that was ` +\n `matched by all parent routes. The current pathname base is \"${parentPathnameBase}\" ` +\n `but pathname \"${parsedLocationArg.pathname}\" was given in the \\`location\\` prop.`\n );\n\n location = parsedLocationArg;\n } else {\n location = locationFromContext;\n }\n\n let pathname = location.pathname || \"/\";\n\n let remainingPathname = pathname;\n if (parentPathnameBase !== \"/\") {\n // Determine the remaining pathname by removing the # of URL segments the\n // parentPathnameBase has, instead of removing based on character count.\n // This is because we can't guarantee that incoming/outgoing encodings/\n // decodings will match exactly.\n // We decode paths before matching on a per-segment basis with\n // decodeURIComponent(), but we re-encode pathnames via `new URL()` so they\n // match what `window.location.pathname` would reflect. Those don't 100%\n // align when it comes to encoded URI characters such as % and &.\n //\n // So we may end up with:\n // pathname: \"/descendant/a%25b/match\"\n // parentPathnameBase: \"/descendant/a%b\"\n //\n // And the direct substring removal approach won't work :/\n let parentSegments = parentPathnameBase.replace(/^\\//, \"\").split(\"/\");\n let segments = pathname.replace(/^\\//, \"\").split(\"/\");\n remainingPathname = \"/\" + segments.slice(parentSegments.length).join(\"/\");\n }\n\n let matches = matchRoutes(routes, { pathname: remainingPathname });\n\n if (__DEV__) {\n warning(\n parentRoute || matches != null,\n `No routes matched location \"${location.pathname}${location.search}${location.hash}\" `\n );\n\n warning(\n matches == null ||\n matches[matches.length - 1].route.element !== undefined ||\n matches[matches.length - 1].route.Component !== undefined ||\n matches[matches.length - 1].route.lazy !== undefined,\n `Matched leaf route at location \"${location.pathname}${location.search}${location.hash}\" ` +\n `does not have an element or Component. This means it will render an with a ` +\n `null value by default resulting in an \"empty\" page.`\n );\n }\n\n let renderedMatches = _renderMatches(\n matches &&\n matches.map((match) =>\n Object.assign({}, match, {\n params: Object.assign({}, parentParams, match.params),\n pathname: joinPaths([\n parentPathnameBase,\n // Re-encode pathnames that were decoded inside matchRoutes\n navigator.encodeLocation\n ? navigator.encodeLocation(match.pathname).pathname\n : match.pathname,\n ]),\n pathnameBase:\n match.pathnameBase === \"/\"\n ? parentPathnameBase\n : joinPaths([\n parentPathnameBase,\n // Re-encode pathnames that were decoded inside matchRoutes\n navigator.encodeLocation\n ? navigator.encodeLocation(match.pathnameBase).pathname\n : match.pathnameBase,\n ]),\n })\n ),\n parentMatches,\n dataRouterState,\n future\n );\n\n // When a user passes in a `locationArg`, the associated routes need to\n // be wrapped in a new `LocationContext.Provider` in order for `useLocation`\n // to use the scoped location instead of the global location.\n if (locationArg && renderedMatches) {\n return (\n \n {renderedMatches}\n \n );\n }\n\n return renderedMatches;\n}\n\nfunction DefaultErrorComponent() {\n let error = useRouteError();\n let message = isRouteErrorResponse(error)\n ? `${error.status} ${error.statusText}`\n : error instanceof Error\n ? error.message\n : JSON.stringify(error);\n let stack = error instanceof Error ? error.stack : null;\n let lightgrey = \"rgba(200,200,200, 0.5)\";\n let preStyles = { padding: \"0.5rem\", backgroundColor: lightgrey };\n let codeStyles = { padding: \"2px 4px\", backgroundColor: lightgrey };\n\n let devInfo = null;\n if (__DEV__) {\n console.error(\n \"Error handled by React Router default ErrorBoundary:\",\n error\n );\n\n devInfo = (\n <>\n

💿 Hey developer 👋

\n

\n You can provide a way better UX than this when your app throws errors\n by providing your own ErrorBoundary or{\" \"}\n errorElement prop on your route.\n

\n \n );\n }\n\n return (\n <>\n

Unexpected Application Error!

\n

{message}

\n {stack ?
{stack}
: null}\n {devInfo}\n \n );\n}\n\nconst defaultErrorElement = ;\n\ntype RenderErrorBoundaryProps = React.PropsWithChildren<{\n location: Location;\n revalidation: RevalidationState;\n error: any;\n component: React.ReactNode;\n routeContext: RouteContextObject;\n}>;\n\ntype RenderErrorBoundaryState = {\n location: Location;\n revalidation: RevalidationState;\n error: any;\n};\n\nexport class RenderErrorBoundary extends React.Component<\n RenderErrorBoundaryProps,\n RenderErrorBoundaryState\n> {\n constructor(props: RenderErrorBoundaryProps) {\n super(props);\n this.state = {\n location: props.location,\n revalidation: props.revalidation,\n error: props.error,\n };\n }\n\n static getDerivedStateFromError(error: any) {\n return { error: error };\n }\n\n static getDerivedStateFromProps(\n props: RenderErrorBoundaryProps,\n state: RenderErrorBoundaryState\n ) {\n // When we get into an error state, the user will likely click \"back\" to the\n // previous page that didn't have an error. Because this wraps the entire\n // application, that will have no effect--the error page continues to display.\n // This gives us a mechanism to recover from the error when the location changes.\n //\n // Whether we're in an error state or not, we update the location in state\n // so that when we are in an error state, it gets reset when a new location\n // comes in and the user recovers from the error.\n if (\n state.location !== props.location ||\n (state.revalidation !== \"idle\" && props.revalidation === \"idle\")\n ) {\n return {\n error: props.error,\n location: props.location,\n revalidation: props.revalidation,\n };\n }\n\n // If we're not changing locations, preserve the location but still surface\n // any new errors that may come through. We retain the existing error, we do\n // this because the error provided from the app state may be cleared without\n // the location changing.\n return {\n error: props.error !== undefined ? props.error : state.error,\n location: state.location,\n revalidation: props.revalidation || state.revalidation,\n };\n }\n\n componentDidCatch(error: any, errorInfo: any) {\n console.error(\n \"React Router caught the following error during render\",\n error,\n errorInfo\n );\n }\n\n render() {\n return this.state.error !== undefined ? (\n \n \n \n ) : (\n this.props.children\n );\n }\n}\n\ninterface RenderedRouteProps {\n routeContext: RouteContextObject;\n match: RouteMatch;\n children: React.ReactNode | null;\n}\n\nfunction RenderedRoute({ routeContext, match, children }: RenderedRouteProps) {\n let dataRouterContext = React.useContext(DataRouterContext);\n\n // Track how deep we got in our render pass to emulate SSR componentDidCatch\n // in a DataStaticRouter\n if (\n dataRouterContext &&\n dataRouterContext.static &&\n dataRouterContext.staticContext &&\n (match.route.errorElement || match.route.ErrorBoundary)\n ) {\n dataRouterContext.staticContext._deepestRenderedBoundaryId = match.route.id;\n }\n\n return (\n \n {children}\n \n );\n}\n\nexport function _renderMatches(\n matches: RouteMatch[] | null,\n parentMatches: RouteMatch[] = [],\n dataRouterState: RemixRouter[\"state\"] | null = null,\n future: RemixRouter[\"future\"] | null = null\n): React.ReactElement | null {\n if (matches == null) {\n if (!dataRouterState) {\n return null;\n }\n\n if (dataRouterState.errors) {\n // Don't bail if we have data router errors so we can render them in the\n // boundary. Use the pre-matched (or shimmed) matches\n matches = dataRouterState.matches as DataRouteMatch[];\n } else if (\n future?.v7_partialHydration &&\n parentMatches.length === 0 &&\n !dataRouterState.initialized &&\n dataRouterState.matches.length > 0\n ) {\n // Don't bail if we're initializing with partial hydration and we have\n // router matches. That means we're actively running `patchRoutesOnNavigation`\n // so we should render down the partial matches to the appropriate\n // `HydrateFallback`. We only do this if `parentMatches` is empty so it\n // only impacts the root matches for `RouterProvider` and no descendant\n // ``\n matches = dataRouterState.matches as DataRouteMatch[];\n } else {\n return null;\n }\n }\n\n let renderedMatches = matches;\n\n // If we have data errors, trim matches to the highest error boundary\n let errors = dataRouterState?.errors;\n if (errors != null) {\n let errorIndex = renderedMatches.findIndex(\n (m) => m.route.id && errors?.[m.route.id] !== undefined\n );\n invariant(\n errorIndex >= 0,\n `Could not find a matching route for errors on route IDs: ${Object.keys(\n errors\n ).join(\",\")}`\n );\n renderedMatches = renderedMatches.slice(\n 0,\n Math.min(renderedMatches.length, errorIndex + 1)\n );\n }\n\n // If we're in a partial hydration mode, detect if we need to render down to\n // a given HydrateFallback while we load the rest of the hydration data\n let renderFallback = false;\n let fallbackIndex = -1;\n if (dataRouterState && future && future.v7_partialHydration) {\n for (let i = 0; i < renderedMatches.length; i++) {\n let match = renderedMatches[i];\n // Track the deepest fallback up until the first route without data\n if (match.route.HydrateFallback || match.route.hydrateFallbackElement) {\n fallbackIndex = i;\n }\n\n if (match.route.id) {\n let { loaderData, errors } = dataRouterState;\n let needsToRunLoader =\n match.route.loader &&\n loaderData[match.route.id] === undefined &&\n (!errors || errors[match.route.id] === undefined);\n if (match.route.lazy || needsToRunLoader) {\n // We found the first route that's not ready to render (waiting on\n // lazy, or has a loader that hasn't run yet). Flag that we need to\n // render a fallback and render up until the appropriate fallback\n renderFallback = true;\n if (fallbackIndex >= 0) {\n renderedMatches = renderedMatches.slice(0, fallbackIndex + 1);\n } else {\n renderedMatches = [renderedMatches[0]];\n }\n break;\n }\n }\n }\n }\n\n return renderedMatches.reduceRight((outlet, match, index) => {\n // Only data routers handle errors/fallbacks\n let error: any;\n let shouldRenderHydrateFallback = false;\n let errorElement: React.ReactNode | null = null;\n let hydrateFallbackElement: React.ReactNode | null = null;\n if (dataRouterState) {\n error = errors && match.route.id ? errors[match.route.id] : undefined;\n errorElement = match.route.errorElement || defaultErrorElement;\n\n if (renderFallback) {\n if (fallbackIndex < 0 && index === 0) {\n warningOnce(\n \"route-fallback\",\n false,\n \"No `HydrateFallback` element provided to render during initial hydration\"\n );\n shouldRenderHydrateFallback = true;\n hydrateFallbackElement = null;\n } else if (fallbackIndex === index) {\n shouldRenderHydrateFallback = true;\n hydrateFallbackElement = match.route.hydrateFallbackElement || null;\n }\n }\n }\n\n let matches = parentMatches.concat(renderedMatches.slice(0, index + 1));\n let getChildren = () => {\n let children: React.ReactNode;\n if (error) {\n children = errorElement;\n } else if (shouldRenderHydrateFallback) {\n children = hydrateFallbackElement;\n } else if (match.route.Component) {\n // Note: This is a de-optimized path since React won't re-use the\n // ReactElement since it's identity changes with each new\n // React.createElement call. We keep this so folks can use\n // `` in `` but generally `Component`\n // usage is only advised in `RouterProvider` when we can convert it to\n // `element` ahead of time.\n children = ;\n } else if (match.route.element) {\n children = match.route.element;\n } else {\n children = outlet;\n }\n return (\n \n );\n };\n // Only wrap in an error boundary within data router usages when we have an\n // ErrorBoundary/errorElement on this route. Otherwise let it bubble up to\n // an ancestor ErrorBoundary/errorElement\n return dataRouterState &&\n (match.route.ErrorBoundary || match.route.errorElement || index === 0) ? (\n \n ) : (\n getChildren()\n );\n }, null as React.ReactElement | null);\n}\n\nenum DataRouterHook {\n UseBlocker = \"useBlocker\",\n UseRevalidator = \"useRevalidator\",\n UseNavigateStable = \"useNavigate\",\n}\n\nenum DataRouterStateHook {\n UseBlocker = \"useBlocker\",\n UseLoaderData = \"useLoaderData\",\n UseActionData = \"useActionData\",\n UseRouteError = \"useRouteError\",\n UseNavigation = \"useNavigation\",\n UseRouteLoaderData = \"useRouteLoaderData\",\n UseMatches = \"useMatches\",\n UseRevalidator = \"useRevalidator\",\n UseNavigateStable = \"useNavigate\",\n UseRouteId = \"useRouteId\",\n}\n\nfunction getDataRouterConsoleError(\n hookName: DataRouterHook | DataRouterStateHook\n) {\n return `${hookName} must be used within a data router. See https://reactrouter.com/routers/picking-a-router.`;\n}\n\nfunction useDataRouterContext(hookName: DataRouterHook) {\n let ctx = React.useContext(DataRouterContext);\n invariant(ctx, getDataRouterConsoleError(hookName));\n return ctx;\n}\n\nfunction useDataRouterState(hookName: DataRouterStateHook) {\n let state = React.useContext(DataRouterStateContext);\n invariant(state, getDataRouterConsoleError(hookName));\n return state;\n}\n\nfunction useRouteContext(hookName: DataRouterStateHook) {\n let route = React.useContext(RouteContext);\n invariant(route, getDataRouterConsoleError(hookName));\n return route;\n}\n\n// Internal version with hookName-aware debugging\nfunction useCurrentRouteId(hookName: DataRouterStateHook) {\n let route = useRouteContext(hookName);\n let thisRoute = route.matches[route.matches.length - 1];\n invariant(\n thisRoute.route.id,\n `${hookName} can only be used on routes that contain a unique \"id\"`\n );\n return thisRoute.route.id;\n}\n\n/**\n * Returns the ID for the nearest contextual route\n */\nexport function useRouteId() {\n return useCurrentRouteId(DataRouterStateHook.UseRouteId);\n}\n\n/**\n * Returns the current navigation, defaulting to an \"idle\" navigation when\n * no navigation is in progress\n */\nexport function useNavigation() {\n let state = useDataRouterState(DataRouterStateHook.UseNavigation);\n return state.navigation;\n}\n\n/**\n * Returns a revalidate function for manually triggering revalidation, as well\n * as the current state of any manual revalidations\n */\nexport function useRevalidator() {\n let dataRouterContext = useDataRouterContext(DataRouterHook.UseRevalidator);\n let state = useDataRouterState(DataRouterStateHook.UseRevalidator);\n return React.useMemo(\n () => ({\n revalidate: dataRouterContext.router.revalidate,\n state: state.revalidation,\n }),\n [dataRouterContext.router.revalidate, state.revalidation]\n );\n}\n\n/**\n * Returns the active route matches, useful for accessing loaderData for\n * parent/child routes or the route \"handle\" property\n */\nexport function useMatches(): UIMatch[] {\n let { matches, loaderData } = useDataRouterState(\n DataRouterStateHook.UseMatches\n );\n return React.useMemo(\n () => matches.map((m) => convertRouteMatchToUiMatch(m, loaderData)),\n [matches, loaderData]\n );\n}\n\n/**\n * Returns the loader data for the nearest ancestor Route loader\n */\nexport function useLoaderData(): unknown {\n let state = useDataRouterState(DataRouterStateHook.UseLoaderData);\n let routeId = useCurrentRouteId(DataRouterStateHook.UseLoaderData);\n\n if (state.errors && state.errors[routeId] != null) {\n console.error(\n `You cannot \\`useLoaderData\\` in an errorElement (routeId: ${routeId})`\n );\n return undefined;\n }\n return state.loaderData[routeId];\n}\n\n/**\n * Returns the loaderData for the given routeId\n */\nexport function useRouteLoaderData(routeId: string): unknown {\n let state = useDataRouterState(DataRouterStateHook.UseRouteLoaderData);\n return state.loaderData[routeId];\n}\n\n/**\n * Returns the action data for the nearest ancestor Route action\n */\nexport function useActionData(): unknown {\n let state = useDataRouterState(DataRouterStateHook.UseActionData);\n let routeId = useCurrentRouteId(DataRouterStateHook.UseLoaderData);\n return state.actionData ? state.actionData[routeId] : undefined;\n}\n\n/**\n * Returns the nearest ancestor Route error, which could be a loader/action\n * error or a render error. This is intended to be called from your\n * ErrorBoundary/errorElement to display a proper error message.\n */\nexport function useRouteError(): unknown {\n let error = React.useContext(RouteErrorContext);\n let state = useDataRouterState(DataRouterStateHook.UseRouteError);\n let routeId = useCurrentRouteId(DataRouterStateHook.UseRouteError);\n\n // If this was a render error, we put it in a RouteError context inside\n // of RenderErrorBoundary\n if (error !== undefined) {\n return error;\n }\n\n // Otherwise look for errors from our data router state\n return state.errors?.[routeId];\n}\n\n/**\n * Returns the happy-path data from the nearest ancestor `` value\n */\nexport function useAsyncValue(): unknown {\n let value = React.useContext(AwaitContext);\n return value?._data;\n}\n\n/**\n * Returns the error from the nearest ancestor `` value\n */\nexport function useAsyncError(): unknown {\n let value = React.useContext(AwaitContext);\n return value?._error;\n}\n\nlet blockerId = 0;\n\n/**\n * Allow the application to block navigations within the SPA and present the\n * user a confirmation dialog to confirm the navigation. Mostly used to avoid\n * using half-filled form data. This does not handle hard-reloads or\n * cross-origin navigations.\n */\nexport function useBlocker(shouldBlock: boolean | BlockerFunction): Blocker {\n let { router, basename } = useDataRouterContext(DataRouterHook.UseBlocker);\n let state = useDataRouterState(DataRouterStateHook.UseBlocker);\n\n let [blockerKey, setBlockerKey] = React.useState(\"\");\n let blockerFunction = React.useCallback(\n (arg) => {\n if (typeof shouldBlock !== \"function\") {\n return !!shouldBlock;\n }\n if (basename === \"/\") {\n return shouldBlock(arg);\n }\n\n // If they provided us a function and we've got an active basename, strip\n // it from the locations we expose to the user to match the behavior of\n // useLocation\n let { currentLocation, nextLocation, historyAction } = arg;\n return shouldBlock({\n currentLocation: {\n ...currentLocation,\n pathname:\n stripBasename(currentLocation.pathname, basename) ||\n currentLocation.pathname,\n },\n nextLocation: {\n ...nextLocation,\n pathname:\n stripBasename(nextLocation.pathname, basename) ||\n nextLocation.pathname,\n },\n historyAction,\n });\n },\n [basename, shouldBlock]\n );\n\n // This effect is in charge of blocker key assignment and deletion (which is\n // tightly coupled to the key)\n React.useEffect(() => {\n let key = String(++blockerId);\n setBlockerKey(key);\n return () => router.deleteBlocker(key);\n }, [router]);\n\n // This effect handles assigning the blockerFunction. This is to handle\n // unstable blocker function identities, and happens only after the prior\n // effect so we don't get an orphaned blockerFunction in the router with a\n // key of \"\". Until then we just have the IDLE_BLOCKER.\n React.useEffect(() => {\n if (blockerKey !== \"\") {\n router.getBlocker(blockerKey, blockerFunction);\n }\n }, [router, blockerKey, blockerFunction]);\n\n // Prefer the blocker from `state` not `router.state` since DataRouterContext\n // is memoized so this ensures we update on blocker state updates\n return blockerKey && state.blockers.has(blockerKey)\n ? state.blockers.get(blockerKey)!\n : IDLE_BLOCKER;\n}\n\n/**\n * Stable version of useNavigate that is used when we are in the context of\n * a RouterProvider.\n */\nfunction useNavigateStable(): NavigateFunction {\n let { router } = useDataRouterContext(DataRouterHook.UseNavigateStable);\n let id = useCurrentRouteId(DataRouterStateHook.UseNavigateStable);\n\n let activeRef = React.useRef(false);\n useIsomorphicLayoutEffect(() => {\n activeRef.current = true;\n });\n\n let navigate: NavigateFunction = React.useCallback(\n (to: To | number, options: NavigateOptions = {}) => {\n warning(activeRef.current, navigateEffectWarning);\n\n // Short circuit here since if this happens on first render the navigate\n // is useless because we haven't wired up our router subscriber yet\n if (!activeRef.current) return;\n\n if (typeof to === \"number\") {\n router.navigate(to);\n } else {\n router.navigate(to, { fromRouteId: id, ...options });\n }\n },\n [router, id]\n );\n\n return navigate;\n}\n\nconst alreadyWarned: Record = {};\n\nfunction warningOnce(key: string, cond: boolean, message: string) {\n if (!cond && !alreadyWarned[key]) {\n alreadyWarned[key] = true;\n warning(false, message);\n }\n}\n","import type {\n InitialEntry,\n LazyRouteFunction,\n Location,\n MemoryHistory,\n RelativeRoutingType,\n Router as RemixRouter,\n RouterState,\n RouterSubscriber,\n To,\n TrackedPromise,\n} from \"@remix-run/router\";\nimport {\n AbortedDeferredError,\n Action as NavigationType,\n createMemoryHistory,\n UNSAFE_getResolveToMatches as getResolveToMatches,\n UNSAFE_invariant as invariant,\n parsePath,\n resolveTo,\n stripBasename,\n UNSAFE_warning as warning,\n} from \"@remix-run/router\";\nimport * as React from \"react\";\n\nimport type {\n DataRouteObject,\n IndexRouteObject,\n Navigator,\n NonIndexRouteObject,\n RouteMatch,\n RouteObject,\n} from \"./context\";\nimport {\n AwaitContext,\n DataRouterContext,\n DataRouterStateContext,\n LocationContext,\n NavigationContext,\n RouteContext,\n} from \"./context\";\nimport {\n _renderMatches,\n useAsyncValue,\n useInRouterContext,\n useLocation,\n useNavigate,\n useOutlet,\n useRoutes,\n useRoutesImpl,\n} from \"./hooks\";\n\nexport interface FutureConfig {\n v7_relativeSplatPath: boolean;\n v7_startTransition: boolean;\n}\n\nexport interface RouterProviderProps {\n fallbackElement?: React.ReactNode;\n router: RemixRouter;\n // Only accept future flags relevant to rendering behavior\n // routing flags should be accessed via router.future\n future?: Partial>;\n}\n\n/**\n Webpack + React 17 fails to compile on any of the following because webpack\n complains that `startTransition` doesn't exist in `React`:\n * import { startTransition } from \"react\"\n * import * as React from from \"react\";\n \"startTransition\" in React ? React.startTransition(() => setState()) : setState()\n * import * as React from from \"react\";\n \"startTransition\" in React ? React[\"startTransition\"](() => setState()) : setState()\n\n Moving it to a constant such as the following solves the Webpack/React 17 issue:\n * import * as React from from \"react\";\n const START_TRANSITION = \"startTransition\";\n START_TRANSITION in React ? React[START_TRANSITION](() => setState()) : setState()\n\n However, that introduces webpack/terser minification issues in production builds\n in React 18 where minification/obfuscation ends up removing the call of\n React.startTransition entirely from the first half of the ternary. Grabbing\n this exported reference once up front resolves that issue.\n\n See https://github.com/remix-run/react-router/issues/10579\n*/\nconst START_TRANSITION = \"startTransition\";\nconst startTransitionImpl = React[START_TRANSITION];\n\n/**\n * Given a Remix Router instance, render the appropriate UI\n */\nexport function RouterProvider({\n fallbackElement,\n router,\n future,\n}: RouterProviderProps): React.ReactElement {\n let [state, setStateImpl] = React.useState(router.state);\n let { v7_startTransition } = future || {};\n\n let setState = React.useCallback(\n (newState: RouterState) => {\n if (v7_startTransition && startTransitionImpl) {\n startTransitionImpl(() => setStateImpl(newState));\n } else {\n setStateImpl(newState);\n }\n },\n [setStateImpl, v7_startTransition]\n );\n\n // Need to use a layout effect here so we are subscribed early enough to\n // pick up on any render-driven redirects/navigations (useEffect/)\n React.useLayoutEffect(() => router.subscribe(setState), [router, setState]);\n\n React.useEffect(() => {\n warning(\n fallbackElement == null || !router.future.v7_partialHydration,\n \"`` is deprecated when using \" +\n \"`v7_partialHydration`, use a `HydrateFallback` component instead\"\n );\n // Only log this once on initial mount\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n let navigator = React.useMemo((): Navigator => {\n return {\n createHref: router.createHref,\n encodeLocation: router.encodeLocation,\n go: (n) => router.navigate(n),\n push: (to, state, opts) =>\n router.navigate(to, {\n state,\n preventScrollReset: opts?.preventScrollReset,\n }),\n replace: (to, state, opts) =>\n router.navigate(to, {\n replace: true,\n state,\n preventScrollReset: opts?.preventScrollReset,\n }),\n };\n }, [router]);\n\n let basename = router.basename || \"/\";\n\n let dataRouterContext = React.useMemo(\n () => ({\n router,\n navigator,\n static: false,\n basename,\n }),\n [router, navigator, basename]\n );\n\n // The fragment and {null} here are important! We need them to keep React 18's\n // useId happy when we are server-rendering since we may have a